AWC | { nptgrids { () print name ==ns ([) print 2 index 1 index 1 REORDER .nchunk ==ns (] ) print pop } forall pop } | ||||
---|---|---|---|---|---|
AWC | { /combinationproc combinationdict ! combinationdict mark 4 2 roll combinations0 pop pop } | ||||
AWC | { (plaincolorwithscalepage) htmlprint } | ||||
AWC | { optionalREORDER toreal getscale_factor getadd_offset RESCALE chunksize dup writei4 nchunk writei4 datar4 DoTasks } | ||||
AWC | { boundingbox tojpg linex.ps } | ||||
AWC | { oneline .pnm } | ||||
AWC | { (HTTP/1.0 301 Moved content-type: text/html ) print (Location: ) print dup type /stringtype eq { dup urlprint addleftmenuinfo ( Please look here. ) print false /sendmimeheader WWWinfo ! } | ||||
AWC | { /map getimageinput { click? { (You have chosen [) print clickpoint 0 get dup null ne { value printunits pop } { == } ifelse (, ) print clickpoint 1 get dup null ne { value printunits pop } { == } ifelse (]. ) print clickpoint 0 get null ne clickpoint 1 get null ne and { ( ) print (The nearest station is) print 1 index 5 object lon clickpoint 0 get .units unitconvert clickpoint 0 get a: .plotfirst :a: .plotlast :a masknotrange clickpoint 0 get .value sub dup mul lat clickpoint 1 get .units unitconvert clickpoint 1 get .value sub dup mul add dup nptgrids minover maskgt /name /maskgt def [ 2 index DATASETbot ==noprintdataset { nip datasethandlemaplistCases caseexec } forsome counttomark namearray astore namesort 3 -1 roll exch /long_name () def /units () def lon lat 2 null MATCH pop .streamgridarray 0 get exch { cvx counttomark 1 add index 1 index get exch /relativename exch def } forall table: terse [ /maskgt ] skipon hidecolumn boxlinkedunits units etc :table .html pop } if } if pop } { (Click on map to select data; change the Zoom menu to zoom in as well.) print } ifelse } | ||||
AWC | { PS2 exch newaxis pop } | ||||
AWC | { true /printheader? HTMLwords ! /theheader HTMLwords ! } | ||||
AWC | { leftmenulevel 0 2 copy get 1 add put addleftmenuinfodir leftmenulevel 0 2 copy get 1 sub put } | ||||
AWC | { ( | ) print }||||
AWC | { } | ||||
AWC | { true /expert? HTMLwords ! currentobject HTMLwords eq not { (/) redirectto flush stop } if } | ||||
AWC | { boundingbox togif contour.ps } | ||||
AWC | { PNM 4 1 roll plaincolorwithscale pop DoTasks } | ||||
AWC | { /X lon .get_scale_min null eq { -180 180 } { lon .get_scale_min lon .get_scale_max } ifelse plotrange lat .get_scale_min null eq { /Y -90 90 } { /Y lat .get_scale_min lat .get_scale_max } ifelse plotrange } | ||||
AWC | { Ingrid: /GoogleAnalyticsDone known not { Ingrid: /GoogleAnalyticsID getknown { 1160491916 set_code_last_modified ( ) print ( ) print } if } if } | ||||
AWC | { Ingrid: /GoogleAnalyticsID getknown { ( ) print Ingrid: /GoogleAnalyticsDone true put } if } | ||||
AWC | { nobots ( ) print alternateLanguageLinks maybeGoogleAnalyticsHead } | ||||
AWC | { WWWinfo .FORMinfo dup null eq { pop pop false } { exch known } ifelse } | ||||
AWC | 0 11 object 0 (OK) def 1 (No Such User) def 2 (user not authorized to access this dataset) def 3 (Digest password for user not yet set -- access not allowed) def 4 (dataset has no allowed access) def 5 (Bad Password) def 6 (Stale nonce) def 10 (Basic Authentication is not accepted -- must use a Browser than handles Digest Authentication) def | ||||
AWC | { PICT 5 1 roll plainvector pop DoTasks } | ||||
AWC | { PICT 6 1 roll vectorcolor pop DoTasks } | ||||
AWC | { null 1 object exch /functionname exch def nptgrids 1 1 2 index length { 1 index exch { () print { .name == } forall ( ) print } combinations (| ) print } for pop pop } | ||||
AWC | { leftmenulevel 0 get 1 le } | ||||
AWC | { ( | ||||
) print 2 index 0 get 0 5 getinterval (http:) eq { () print 1 index cvntos dup dup length dup 5 gt { 5 sub 5 getinterval (.html) eq } { pop pop false } ifelse { 0 1 index length 5 sub getinterval cvn } if printno_ ( | |||||
AWC | { SOURCES .WORLDBATH .bath Y low high RANGEEDGES exch lon (degree_east) unitconvert ndim RECHUNK exch lat (degree_north) unitconvert ndim RECHUNK exch 3 index X exch .Y fig: /color_smoothing null def /plotaxislength 432 def colors coasts PGSQL? { lakes } if scattersized :fig datasetselectplotrange } | ||||
AWC | { /leftmenuinfotop? true def } | ||||
AWC | { GIF 4 1 roll plaincolorwithscale pop DoTasks } | ||||
AWC | [ null ] | ||||
AWC | { WWWinfo url-q length url length eq showmenu? not or { false } { url url-q length 1 add url length 1 index sub getinterval (&) search { pop pop pop true } { pop false } ifelse } ifelse nip { ( ) print } if } | ||||
AWC | { PS2 6 1 roll vectoramplitudecolor pop DoTasks } | ||||
AWC | { dup /dataset_documentation.html known { () print } if () print dup /myproc known { dup /myprocds getknown { type /arraytype eq { false } { dup dataset exch .myprocds .dataset eq } ifelse } { dup /dataset knownnotnull not } ifelse { myproc { == } forall () print } { allparentlinks01 } ifelse } { allparentlinks00 } ifelse pop } | ||||
AWC | { boundingbox tojpg scatter.ps } | ||||
AWC | { WWWinfo /digesterrorcode null put (Basic ) search { pop pop decodebase64 (:) search { nip checkauthorization } { pop false } ifelse } { pop false } ifelse } | ||||
AWC | { 2 copy exch cvx (
| ||||
AWC | { mark exch DATASETbot ==noprintdataset { pop } forsome counttomark namearray astore nip namesort } | ||||
AWC | { nptgrids dup { 2 copy ne { () print 1 index .name ==ns ( ) print name ==ns ([) print 3 index 2 index 2 index 2 REORDER .nchunk ==ns (] ) print } if pop pop } forall2 pop } | ||||
AWC | { GIF showcolors pop } | ||||
AWC | (iri.columbia.edu) | ||||
AWC | { GIF 6 1 roll vectorcolor pop DoTasks } | ||||
AWC | { ParseDigestAuthentication { null false authorization-realms { nip username exch askldap dup /digesterrorcode WWWinfo ! 0 eq 4 2 roll pop pop dup not { leave } if } forall { checkMD5response dup /checkMD5R WWWinfo ! response eq { nonce Digest-nonce eq { WWWinfo .authorization-realms /DataLibraryAccess known { ValidUsers username cvn known dup not { 2 /digesterrorcode WWWinfo ! } if } { true } ifelse nip } { 6 /digesterrorcode WWWinfo ! pop false } ifelse } { 5 /digesterrorcode WWWinfo ! pop false } ifelse } { pop false } ifelse } { false } ifelse } | ||||
AWC | { wwwcopylastmod WWWinfo doauthorizedata sendmimeheader { doifmodified? { mimesuffix /act eq { (HTTP/1.0 301 Moved ) print } { (HTTP/1.0 200 OK ) print } ifelse } if mimeheaderinfo (Content-Type: ) print mimetype print ( ) print dolastmodified /filename FORMgetknownnotnull { (Content-Disposition: attachment; filename=") print print (" ) print } if flush } if pop } | ||||
AWC | { (%%BoundingBox: 0 0 288 50 startPSplot 0 35 moveto startplot 4 inch 15 area2d ) print (/axisinset 0 def) print low step abs 0.5 mul sub == high step abs 0.5 mul add == ( 0 1 setlimits axis: bottom /units ) print units cvntos == ( def nicetics ticlabels :axis endplot endPSplot ) print } | ||||
AWC | { SOURCES .WORLDBATH .bath () /labeltype parameter (Color) eq () /ptlbls parameter () ne and { halfgreyscale } if lon (degree_east) unitconvert ndim RECHUNK lat (degree_north) unitconvert ndim RECHUNK lon .npts 40000 gt { dup dataflag 2 index X exch .Y fig: /color_smoothing null def /plotaxislength 432 def colors coasts PGSQL? { lakes } if regridmask :fig } { nptgrids length 1 gt { nptgrids 1 get 3 index X exch .Y fig: /color_smoothing null def /plotaxislength 432 def colors coasts PGSQL? { lakes } if /labeltype get_parameter () eq /ptlbls get_parameter () eq or { scatterlines } { /labeltype get_parameter (Color) eq { ||colorareas } { scatterlines } ifelse } ifelse :fig } { 2 index X exch .Y /labeltype get_parameter () ne /ptlbls get_parameter () ne and { /ptlbls get_parameter cvn cvx exec 3 1 roll } if fig: /color_smoothing null def /plotaxislength 432 def colors coasts PGSQL? { lakes } if /labeltype get_parameter () eq /ptlbls get_parameter () eq or { scatter } { /labeltype get_parameter (Label) eq { scatterlabel } if /labeltype get_parameter (Color) eq { || scattercolor } if /labeltype get_parameter (Size) eq { scattersized } if } ifelse :fig } ifelse } ifelse datasetselectplotrange } | ||||
AWC | { (vectorcontourtogapage) htmlprint } | ||||
AWC | { optionalREORDER mimeheader printstreamunits } | ||||
AWC | { GIF 4 1 roll autocontour pop DoTasks } | ||||
AWC | { (_) search { print pop ( ) print printno_ } { print } ifelse } | ||||
AWC | { 2 copy exch cvx ( | ||||
) print dup cvntos 2 index /long_name known { pop long_name } { dup dup length dup 4 gt { 4 sub 4 getinterval (.cdf) eq } { pop pop false } ifelse { 0 1 index length 4 sub getinterval cvn } if } ifelse print htmlpathpush () print dup /standard_name getknown { cvntos == } if ( | ) print nice== htmlpathpop ( | ||||
AWC | false | ||||
AWC | { 0 allparentlinkcount astore pop mark 1 index follow counttomark array rastore nip rendercnt } | ||||
AWC | { WWWinfo .leftmenuinfo? { leftmenutoplevel 0 get leftmenulevel 0 get ge { (?) exch { 3 -1 roll print (&) 3 1 roll exch cvntos print (=) print dup type /stringtype ne { s== } if urlprint } forall pop } { pop } ifelse } { leftmenutoplevel 0 get leftmenulevel 0 get ge { WWWinfo url-q length url length ne { (?) print url url-q length 1 add url length 1 index sub getinterval urlprint } if pop } if } ifelse } | ||||
AWC | { (portaldlscript) htmlprint } | ||||
AWC | CaseListpops1 | ||||
AWC | FORMwords /test.act 0 23 object /formaction { ( ) print dup /map known { /x map .x cvi def /y map .y cvi def } { /x x cvi def /y y cvi def } ifelse /pointX x 38.0 sub xh xl sub mul 432 div xl add def /pointY 225.0 y sub yh yl sub mul 215 div yl add def (test) htmlprint } def /yl -90 def /xh 180 def /xl -180 def /yh 90 def def | ||||
AWC | { boundingbox togif linex.ps } | ||||
AWC | { 0 0 288 50 togif axis.ps } | ||||
AWC | { oneline .gif } | ||||
AWC | { 1 index /selectname Ingrid: ! false /selectoptionfound Ingrid: ! ( | ||||
AWC | { PS2 6 1 roll vectorcontour pop DoTasks } | ||||
AWC | { dup 0 get length 1 index { length imin } forall 1 sub dup 0 ge { 0 countcommonbeginning0 nip } if } | ||||
AWC | { boundingbox togif scatter.ps } | ||||
AWC | { SOURCES .WORLDBATH .bath lat .get_scale_min null eq { Y low high RANGEEDGES } { Y lat .get_scale_min lat .get_scale_max RANGEEDGES } ifelse Y low high RANGEEDGES exch lon (degree_east) unitconvert ndim RECHUNK exch lat exch 3 index X exch .Y fig: /color_smoothing null def /plotaxislength 432 def colors scatterlabel :fig datasetselectplotrange } | ||||
AWC | { (search) htmlprint } | ||||
AWC | { mycoach } | ||||
AWC | { ( ) print } | ||||
AWC | { /r8 /mimesuffix WWWinfo ! optionalREORDER streamrescale todouble chunksize npts 8 mul mimeheaderwithlength datar8 DoTasks } | ||||
AWC | { (parent) htmlpathpush } | ||||
AWC | { (Digest) search { pop pop null 5 object exch null { deleteleadingspaces (=) search { nip exch dup 0 1 getinterval (") eq { deletefirstchar (") search { nip } if exch deletefirstchar exch } { (,) search { nip } { () exch } ifelse } ifelse 3 2 roll exch def } { pop leave } ifelse } repeat true } { pop false WWWinfo /digesterrorcode 10 put } ifelse } | ||||
AWC | { 1 index FORMgetknown { 1 index getknown not { null } if } { null } ifelse ( ) print formcnt++ pop pop } | ||||
AWC | { PNM 4 1 roll autocontour pop DoTasks } | ||||
AWC | { nptgrids dup { 2 copy ne { () print 1 index .name ==ns ( ) print name ==ns ([) print 3 index 2 index 2 index 2 REORDER .nchunk ==ns (] ) print } if pop pop } forall2 pop } | ||||
AWC | { decompress nptgridsREORDER toNaN nptgrids aload length 1 add dup 4 le { gtable.tsv } { table.tsv } ifelse } | ||||
AWC | { PSmode true store ifpream pop } | ||||
AWC | { PICT 4 1 roll colorscale pop DoTasks } | ||||
AWC | { dataset type /objecttype eq { allparentlinkcount 0 get 7 lt { allparentlinkcount 0 get 1 add allparentlinkcount astore pop dataset allparentlinks1 allparentlinkcount 0 get 1 sub allparentlinkcount astore pop } { ( | ... | ) print } ifelse } { dataset type /arraytype eq { dataset 0 get dup totype /datasettype eq { dataset null eq { /myproc getknown { length 1 eq } { false } ifelse } { pop false } ifelse } { pop false } ifelse { dataset 0 get () print .myproc 0 get cvntos print ( | ) print dataset 1 1 index length 1 sub getinterval } { dataset } ifelse ifshortlink { 1 1 getinterval } if dup length 1 eq { 0 get allparentlinks1 } { (||
AWC | { dup /dataset_documentation.html known { true } { dup /dataset_documentation known } ifelse { true } { dup /dataset known { .dataset dup type /objecttype ne { pop false } { docavailable? } ifelse } { pop false } ifelse } ifelse } | ||||
AWC | { leftmenulevel 0 2 copy get 1 add put leftmenuinfotop? { leftmenutoplevel 0 leftmenulevel 0 get put } if leftmenusub? { dataset null ne { dataset leftmenu0 } if } if true /printheader? HTMLwords ! printheader? not { leftmenusubtrail } if pop leftmenulevel 0 2 copy get 1 sub put } | ||||
AWC | { 1066077372 set_code_last_modified optionalREORDER toreal streamrescaleonlyifnecessary chunksize npts 4 mul nchunk 8 mul add mimeheaderwithlength datas4 DoTasks } | ||||
AWC | { 1 index /responseobject WWWinfo ! currentobject /algorithm getknown { (md5-sess) eq } { false } ifelse { hex2string MD5_Init exch MD5_Update (:) MD5_Update nonce MD5_Update (:) MD5_Update cnonce MD5_Update MD5_Final string2hex } if MD5_Init exch MD5_Update (:) MD5_Update nonce MD5_Update (:) MD5_Update currentobject /qop getknown { length 0 gt } { false } ifelse { nc MD5_Update (:) MD5_Update cnonce MD5_Update (:) MD5_Update qop MD5_Update (:) MD5_Update } if MD5_Init WWWinfo .method MD5_Update (:) MD5_Update uri MD5_Update MD5_Final string2hex MD5_Update MD5_Final string2hex } | ||||
AWC | { (WWW-Authenticate: Digest realm=") print DigestAuthorization-realm print (", qop="auth", nonce=") print Digest-nonce print (", opaque=") print Digest-opaque print (" ) print WWWinfo /digesterrorcode getknownnotnull { 6 eq { (stale="true" ) print } if } if } | ||||
AWC | { skipcache? { exec } { flush pushstdout URLrootprint (/) print 2 index dataseturl (/skipcache/) print 1 index cvpops ==ns (/dods) print flush popgetstdout DATASET 5 object exch { continuedataset: :datasetnostore } readdods0 2 index cvpops exec 5 object /dataset 4 index def /myprocds 2 index def /myproc { } cvlit def nip } ifelse } | ||||
AWC | { boundingboxc topict color.ps } | ||||
AWC | { countstack 2 sub array astore dup { dup totype /streamtype eq { decompress } if } forall countstack 3 sub array astore null 11 object 1 index { dup totype /streamtype eq { .streamgridarray { name exch def } forall } { pop } ifelse } forall (
| ||||
AWC | FORMwords | ||||
AWC | -operator- | ||||
AWC | { PICT 4 1 roll plaincolorwithscale pop DoTasks } | ||||
AWC | { === } | ||||
AWC | { PS2 5 1 roll plainvector pop DoTasks } | ||||
AWC | { PICT 6 1 roll vectoramplitude pop DoTasks } | ||||
AWC | { PNM 5 1 roll autovector pop DoTasks } | ||||
AWC | { (plaincolorpage) htmlprint } | ||||
AWC | { mimeheader /ntable HTMLwords ! ntable 0 MATCH ntable NtoNaN ntable array astore dup dup 0 get .longname print dup length 1 gt { dup 1 1 index length 1 sub getinterval { tab print .longname print } forall } if ( ) print aload pop 1 { datatsv datatsv2 datatsv3 datatsv4 datatsv5 datatsv6 datatsv7 datatsv8 datatsv9 datatsv10 } ntable 1 sub get exec DoTasks } | ||||
AWC | { PS2 showcolors pop } | ||||
AWC | { 2 copy exch cvx (
| ||||
AWC | { 1 index /selectname Ingrid: ! false /selectoptionfound Ingrid: ! ( | ||||
AWC | { (&) search { (=) search { cvn nip exch nullify pdefappend } { cvn true def } ifelse pop parseurlvars } { dup length 0 gt { (=) search { cvn nip exch nullify pdefappend } { cvn true def } ifelse } { pop } ifelse } ifelse } | ||||
AWC | { 2 copy exch cvx ( | ||||
) print () print pop 2 index /long_name known { pop long_name cvntos } { dup dup length dup 4 gt { 4 sub 4 getinterval dup (.cdf) eq exch (.cuf) eq or } { pop pop false } ifelse { 0 1 index length 4 sub getinterval cvn } if } ifelse htmlformulaprint htmlpathpush () print RestrictMetaData? { ( (restricted)) print } if ( | ) print dup /description getknown { dup type /arraytype eq { ( ) print { print } forall } { ( ) print print (.) print } ifelse } { dup nice== } ifelse pop htmlpathpop ( | ||||
AWC | { dup 2 index eq { ( | ||||
AWC | { JPG 4 1 roll colorscale pop DoTasks } | ||||
AWC | { (+) search { interp pop urlinterp } { interp } ifelse } | ||||
AWC | { leftmenulevel 0 2 copy get 1 add put currentobject /leftmenuinfotop? getknown not { false } if { leftmenutoplevel 0 leftmenulevel 0 get put } if leftmenusub? { dataset null ne { dataset leftmenu0 } if } if true /printheader? HTMLwords ! mark 1 index DATASETbot ==noprintdataset { pop } forsome counttomark namearray astore nip namesort { 2 copy get leftmenucase caseexec pop pop } forall printheader? not { leftmenusubtrail } if pop leftmenulevel 0 2 copy get 1 sub put } | ||||
AWC | CaseList /datasettype { dup pushdataset dup makesortednamelist { 2 copy get variablemenucase 1 index totype get exec dropitem } forall popdataset } def /pendingdatasettype { dup xcheck { nip exec name exch variablemenucase 1 index totype get exec } if } def /arraytype { dup xcheck { nip exec name exch variablemenucase 1 index totype get exec } if } def /streamtype { chunksize nchunk mul 1 gt datatype /stringtype eq bufferwordsize 1 gt and not and { datasetcount 0 gt { [ datasetstack 0 datasetcount getinterval { .name cvntos ( .) } forall name cvntos ] concat } { name cvntos } ifelse dup variable eq { ( ) print } if } def | ||||
AWC | { showmenu? { leftmenuhead null 1 index leftmenu0 pop leftmenutrailer } if } | ||||
AWC | { WWWinfo .FORMinfo dup null eq { pop WWWinfo /FORMinfo null 5 object put WWWinfo .FORMinfo } if ! } | ||||
AWC | { currentreadfilename cvntos dup length 5 gt { dup length 5 sub 5 getinterval (.html) eq } { pop false } ifelse } | ||||
AWC | { (plaincontourpage) htmlprint } | ||||
AWC | { 1066077372 set_code_last_modified optionalREORDER toreal streamrescaleonlyifnecessary chunksize npts 4 mul mimeheaderwithlength datar4 DoTasks } | ||||
AWC | { GRIDParent 3 1 roll /map FORMgetknown { exch [ 3 1 roll { 2 copy getknown { dup /plotfirst getknown { (map.) 3 index cvntos (.plotfirst) 3array astore concat counttomark 1 add index ! } if dup /plotlast getknown { (map.) 3 index cvntos (.plotlast) 3array astore concat counttomark 1 add index ! } if dup /plotvalue getknown { (map.) 3 index cvntos (.plotvalue) 3array astore concat counttomark 1 add index ! } if dup /units getknown { true } { false 2 index /X eq { pop /degree_east true } if 2 index /Y eq { pop /degree_north true } if } ifelse { (map.) 3 index cvntos (.units) 3array astore concat counttomark 1 add index ! } if pop pop } { pop } ifelse } forall pop pop } { pop } ifelse nip } | ||||
AWC | { boundingbox tojpg contour.ps } | ||||
AWC | { PS2 6 1 roll vectoramplitude pop DoTasks } | ||||
AWC | { PNM 4 1 roll plaincolor pop DoTasks } | ||||
AWC | { PNM 6 1 roll vectoramplitude pop DoTasks } | ||||
AWC | { 0 sortednames { currentobject exch get totype /gridtype eq { 1 add } if } forall 2 ge { ( ) print ( ) print } if false sortednames { currentobject exch get dup totype /gridtype eq { .gridtype 2 ne or } { pop } ifelse } forall { () print } if } | ||||
AWC | { currentobject /zoom known { zoom zoomvalues 1 index cvn known { zoomvalues exch cvn get } { interp } ifelse } { 1 } ifelse } | ||||
AWC | { true exch 3 index dup 0 get exch 1 1 index length 1 sub getinterval { 2 index get 1 index 3 index get eq not { 3 -1 roll pop false 3 1 roll } if } forall pop exch { 2 copy gt { 1 add countcommonbeginning0 } { 1 add } ifelse } if } | ||||
AWC | { RESTRICTIONSprint? pop } | ||||
AWC | { skipcache? { exec } { flush pushstdout URLrootprint (/) print 2 index dataseturl (/skipcache/) print 1 index cvpops ==ns (/dods) print flush popgetstdout DATASET 5 object exch { continuedataset: :datasetnostore } readdods0 5 object /dataset 4 index def /myprocds 2 index def /myproc { } cvlit def nip } ifelse } | ||||
AWC | { GIF 4 1 roll plaincontour pop DoTasks } | ||||
AWC | { pop pop } | ||||
AWC | { dup type /objecttype eq { dup /myproc known { dup /myprocds getknown { type /arraytype eq { true } { dup dataset exch .myprocds .dataset eq not } ifelse } { false } ifelse } { false } ifelse } { false } ifelse } | ||||
AWC | { PICT 6 1 roll vectoramplitudecolor pop DoTasks } | ||||
AWC | { nptgrids { () print name ==ns ([) print 2 index 1 index 1 REORDER .nchunk ==ns (] ) print pop } forall pop } | ||||
AWC | { WWWinfo exch /content-length exch def sendmimeheader { content-length null ne { (Content-Length: ) print content-length ==ns ( ) print } if } if pop } | ||||
AWC | { (vectorcolortogapage) htmlprint } | ||||
AWC | { last_modified null ne { (Last-Modified: ) print last_modified code_last_modified imax current_last_modified null ne { current_last_modified imax } if cvi timetostring print ( ) print } if expires dup null eq { pop } { (Expires: ) print cvi timetostring print ( ) print } ifelse WWWinfo /Vary_List known { (Vary:) print mark Vary_List { pop } forall counttomark namearray astore nip namesort { space print cvntos print } forall ( ) print } if WWWinfo /Content-Language known { (Content-Language: ) print WWWinfo .Content-Language print ( ) print } if } | ||||
AWC | 0 5 object /formaction { (HTTP/1.0 301 Moved content-type: text/html ) print (Location: ) print command toproc dup procasurl ( ) print (OK ) print } def | ||||
AWC | { pop MD5Users 1 index getknown { exch ValidUsers exch cvn known { 0 } { 2 } ifelse } { pop 0 1 } ifelse } | ||||
AWC | { boundingbox topict vector.ps } | ||||
AWC | { wwwcopylastmod WWWinfo doauthorize sendmimeheader { doifmodified? { mimesuffix /act eq { (HTTP/1.0 301 Moved ) print } { (HTTP/1.0 200 OK ) print } ifelse } if mimeheaderinfo (Content-Type: ) print mimetype print ( ) print dolastmodified /filename FORMgetknownnotnull { (Content-Disposition: attachment; filename=") print print (" ) print } if flush } if pop } | ||||
AWC | { GIF 6 1 roll vectorcontour pop DoTasks } | ||||
AWC | { 3 copy pop eq { ( ) print } | ||||
AWC | { JPG exch newaxis pop } | ||||
AWC | { useDLAuthAuthentication? { DLAuthAuthenticationOK? } { false } ifelse { true } { WWWinfo /Authorization known { WWWinfo .Authorization useDigestAuthentication? { DigestAuthenticationOK? } { BasicAuthenticationOK? } ifelse } { false } ifelse } ifelse { false /ObeyRestrictions? Ingrid: ! } { (HTTP/1.0 401 Unauthorized
) print (Cache-Control: public
) print (Access-Control-Allow-Origin: *
) print (Vary: Authorization
) print useDigestAuthentication? { DigestAuthenticationChallenge } { BasicAuthenticationChallenge } ifelse (Content-Type: text/html
) print (401 Unauthorized) print WWWinfo /Authorization known { (Authorization failed for this dataset. ) print WWWinfo /digesterrorcode getknownnotnull { (error code ) print dup == (: ) print DigestErrorCodes exch getknown { print } if } if } { (User/password is required. ) print } ifelse ( ) print flush stop } ifelse } | ||||
AWC | { boundingbox topict scatter.ps } | ||||
AWC | { allparentlinkcount 0 get ( cnt=) print dup == allparentbgcolors length lt { ( bgcolor=") print allparentbgcolors allparentlinkcount 0 get get print (") print } if } | ||||
AWC | { /map getimageinput { click? zoom (Click for Info) eq and { .clickpoint leftmenuinfo: exch { dup null eq { (Please click on the map) print stop } { value dup subgrid first cvsunits (map.) 3 -1 roll .name cvntos (.plotvalue) 3array astore concat exch def } ifelse } forall :leftmenuinfo true } { pop false } ifelse } { false } ifelse } | ||||
AWC | { PS2 4 1 roll plaincontour pop DoTasks } | ||||
AWC | { JPG 6 1 roll vectorcolor pop DoTasks } | ||||
AWC | { PS2 4 1 roll autocontour pop DoTasks } | ||||
AWC | { /Set-Language FORMgetknown { /Set-Language exch def } if pop } | ||||
AWC | { checkpassword { ValidUsers exch cvn known } { false } ifelse } | ||||
AWC | 0 5 object /formaction { ( ) print == } def | ||||
AWC | { /content-length WWWinfo ! wwwcopylastmod WWWinfo doauthorizedata RestrictData? { 2 (data restricted) DODSerror } if sendmimeheader { doifmodified? { (HTTP/1.0 200 OK ) print } if (XDODS-Server: Ingrid/2.15 ) print mimeheaderinfo DODScontentdescription (Content-Type: ) print mimetype print ( ) print dolastmodified content-length null ne { (Content-Length: ) print content-length ==ns ( ) print } if ( ) print flush false /sendmimeheader WWWinfo ! method /HEAD eq { stop } if } if pop } | ||||
AWC | { nptgrids dup { 2 copy ne { () print 1 index .name ==ns ( ) print name ==ns ([) print 3 index 2 index 2 index 2 REORDER .nchunk ==ns (] ) print } if pop pop } forall2 pop } | ||||
AWC | { boundingbox tojpg vector.ps } | ||||
AWC | { (plainvectorpage) htmlprint } | ||||
AWC | { PICT showcolors pop } | ||||
AWC | { mark WWWinfo .currenturldir urls== (/) /args FORMget interp { FORMget lpar exch urls== rpar (/) } forall /function FORMget (/) ] concat redirectto } | ||||
AWC | { GIF 6 1 roll vectoramplitudecolor pop DoTasks } | ||||
AWC | { 2 copy exch cvx ( | ||||
) print () print pop 2 index /long_name known { pop long_name } { dup dup length dup 4 gt { 4 sub 4 getinterval dup (.cdf) eq exch (.cuf) eq or } { pop pop false } ifelse { 0 1 index length 4 sub getinterval cvn } if } ifelse htmlformulaprint htmlpathpush () print RestrictMetaData? { ( (restricted)) print } if ( | ) print npts 1 eq ndim 1 eq { datatype /stringtype eq bufferwordsize 1 eq and currentobject /CLIST known not and unitless? and or } if { () print pop } { nice== } ifelse htmlpathpop ( | ||||
AWC | [ (#FEFEFF) (#EEEEEE) (#E7E7E7) (#DEDEDE) (#D7D7D7) (#CECECE) (#C7C7C7) (#BEBEBE) (#B7B7B7) (#AAAAAA) (#999999) (#888888) (#777777) ] | ||||
AWC | { false currentobject /myproc known { currentobject /myprocds getknown { nip type /arraytype eq { true } { currentobject dataset exch .myprocds .dataset ne } ifelse } if } if } | ||||
AWC | { dup /lat known 1 index /lon known and { lat totype /streamtype eq lon totype /streamtype eq and { lat .npts dup 1 gt exch 100000 lt and lon /degree_east unitconvert message? { pop pop false } { pop true } ifelse lat /degree_north unitconvert message? { pop pop false } { pop true } ifelse and and { lat .nptgrids 0 get .gridid lon .nptgrids 0 get .gridid eq } { false } ifelse } { false } ifelse } { false } ifelse } | ||||
AWC | { FORMget null ne } | ||||
AWC | { (HTTP/1.0 301 Moved content-type: text/html ) print (Cache-Control: no-cache ) print (Location: ) print dup type /stringtype eq { dup print ( Please look here. ) print false /sendmimeheader WWWinfo ! } | ||||
AWC | { boundingboxc tojpg color.ps } | ||||
AWC | { JPG 5 1 roll plainvector pop DoTasks } | ||||
AWC | { JPG showcolors pop } | ||||
AWC | { currentobject /dataset_documentation.html getknown not { currentobject /dataset_documentation get } if dup totype /linktype eq { .href print } { pop dup (/) print dataseturl (/.dataset_documentation.html) print } ifelse pop } | ||||
AWC | { legalclientcheck getneedauthorizationdata { true /authorization? WWWinfo ! httpauthenticate } if } | ||||
AWC | { exch 3 -1 roll MD5_Init exch MD5_Update (:) MD5_Update exch MD5_Update (:) MD5_Update exch MD5_Update MD5_Final string2hex } | ||||
AWC | CaseListpops1 /datasettype { follow } def /arraytype { [ exch { [ exch follow counttomark array rastore nip } forall ] countcommonbeginning dup 0 gt { 2 copy exch 0 get exch 0 exch getinterval 3 1 roll mark 3 1 roll exch { 1 index 1 index length 1 index sub getinterval exch } forall pop ] mark 3 1 roll exch aload length 1 add -1 roll ] aload rastore aload pop } { pop } ifelse cvx } def /streamtype { follow } def | ||||
AWC | { /i2 /mimesuffix WWWinfo ! optionalREORDER toi2 chunksize npts 2 mul mimeheaderwithlength datai2 DoTasks } | ||||
AWC | 0 5 object | ||||
AWC | { ( ) print } | ||||
AWC | { PS2 4 1 roll colorscale pop DoTasks } | ||||
AWC | { ( | ) print allparentlinks0a ( | ) print }|||
AWC | { dup /long_name known { long_name } { cleanname } ifelse htmlformulaprint () print dup /myprocds getknownnotnull { ( ) print (*) print pop } if datasetlocmap? { ( [map]) print } if } | ||||
AWC | { directoryredirect mimeheader } | ||||
AWC | { boundingboxc togif color.ps } | ||||
AWC | { exch ( ) (xxxx) search pop print pop htmlroot (http://) search { pop pop } if print printport print } | ||||
AWC | { PS2 4 1 roll plaincolorwithscale pop DoTasks } | ||||
AWC | [ 6 ] | ||||
AWC | { dup type /arraytype eq { (
| ||||
AWC | 0 11 object /response (6629fae49393a05397450978507c4ef1) def /uri (/dir/index.html) def /nc (00000001) def /opaque (5ccc069c403ebaf9f0171e9517f40e41) def /nonce (dcd98b7102dd2f0e8b11d0f600bfb0c093) def /qop (auth) def /username (Mufasa) def /realm (testrealm@host.com) def /cnonce (0a4f113b) def | ||||
AWC | { 2 copy exch cvx (
| ||||
AWC | { WWWinfo exch /last_modified exch def /expires null def sendmimeheader { mimesuffix /act eq { (HTTP/1.0 301 Moved ) print } { (HTTP/1.0 200 OK ) print } ifelse mimeheaderinfo (Content-Type: ) print mimetype print ( ) print dolastmodified mimesuffix /act ne { ( ) print } if flush method /HEAD eq { stop } if false /sendmimeheader WWWinfo ! } if pop } | ||||
AWC | { JPG 6 1 roll vectorcontour pop DoTasks } | ||||
AWC | { WWWinfo exch /map FORMgetknown { dup /X getknown { plotfirst readunits exch plotlast readunits nip 3 -1 roll dup /Y getknown { plotfirst readunits exch plotlast readunits nip 3 -1 roll pop 4 1 roll exch 4 -1 roll georect .iridl:geoId /bbox FORM! } { pop pop pop } ifelse } { pop } ifelse } if /bbox FORMgetknown { (?bbox=) exch 3array astore concat } if nip redirectto } | ||||
AWC | { nptgrids dup { 2 copy ne { () print 1 index .name ==ns ( ) print name ==ns ([) print 3 index 2 index 2 index 2 REORDER .nchunk ==ns (] ) print } if pop pop } forall2 pop } | ||||
AWC | { (
| ||||
AWC | CaseList /arraytype { dup xcheck { 3 -1 roll exch exec exch 3 1 roll viewerdatasetcase caseexec } if } def /streamtype { npts 1 eq { exch 1 index } if } def | ||||
AWC | { printheader? { theheader print false /printheader? HTMLwords ! } if } | ||||
AWC | { /showmenu? false store } | ||||
AWC | { mimeheader loadavg 0 get nproc 0 get div dup 8.0 lt { pop (OK) print } { (load ) print == ( is too high) print } ifelse ( ) print stop } | ||||
AWC | { dup null eq { false } { .dataset dup type /arraytype eq { ifshortlink { 1 get } { 0 get } ifelse } if 2 copy eq { true } { ifshortlink0 } ifelse } ifelse } | ||||
AWC | { dup /served_from known { true } { dup /dataset known { .dataset dup type /objecttype ne { pop false } { serveravailable? } ifelse } { pop false } ifelse } ifelse } | ||||
AWC | { npts 1 gt { nptgrids } { [ 1 index .streamgrids ] } ifelse dup length 1 sub get } | ||||
AWC | { GIF 6 1 roll vectoramplitude pop DoTasks } | ||||
AWC | { [ nptgrids { units /degree_east eq units /degree_north eq or { pop } if } forall ] } | ||||
AWC | { 1066077372 set_code_last_modified optionalREORDER toreal streamrescaleonlyifnecessary swapbytes chunksize npts 4 mul mimeheaderwithlength datar4 DoTasks } | ||||
AWC | { PICT 4 1 roll plaincontour pop DoTasks } | ||||
AWC | { JPG 4 1 roll plaincolor pop DoTasks } | ||||
AWC | { PNM 4 1 roll colorscale pop DoTasks } | ||||
AWC | { wwwcopylastmod WWWinfo doauthorize sendmimeheader { doifmodified? { (HTTP/1.0 200 OK ) print } if mimeheaderinfo (Content-Type: ) print mimetype print ( ) print dolastmodified /filename FORMgetknownnotnull { (Content-Disposition: attachment; filename=") print print (" ) print } if ( ) print flush false /sendmimeheader WWWinfo ! method /HEAD eq { stop } if } if pop } | ||||
AWC | { needauthorization { countstack 2 sub array astore aload false exch { dup type /objecttype eq { /RestrictedMetaData? getknown { or } if } { pop } ifelse } forall } { false } ifelse } | ||||
AWC | { (&) search { (=) search { cvn nip exch urlunescape nullify pdefappend } { cvn true def } ifelse pop parseurlvarsunescape } { dup length 0 gt { (=) search { cvn nip exch urlunescape nullify pdefappend } { cvn true def } ifelse } { pop } ifelse } ifelse } | ||||
AWC | { PNM 5 1 roll plainvector pop DoTasks } | ||||
AWC | { dup serveravailable? { .served_from } { served_from } ifelse } | ||||
AWC | { expert? { (experthome) htmlprint } { doc .index.html } ifelse } | ||||
AWC | { (vectorcolorpage) htmlprint } | ||||
AWC | { (contourpage) htmlprint } | ||||
AWC | { oneline .ps } | ||||
AWC | { WWWinfo /url-q known { () print print () print } { pop } ifelse } | ||||
AWC | { dup 5 object decompress datatype /geometrytype eq { ( | ||||
AWC | { JPG 4 1 roll autocontour pop DoTasks } | ||||
AWC | { PNM 6 1 roll vectorcolor pop DoTasks } | ||||
AWC | { dup type /arraytype eq { (
| ||||
AWC | { mark 1 index interpurl counttomark 2 add -1 roll imagelink pop } | ||||
AWC | { () print } | ||||
AWC | { mimetypes WWWinfo .mimesuffix get } | ||||
AWC | true | ||||
AWC | { ( ) search { nip exch (%20) exch urls== } if } | ||||
AWC | { showmenu? { leftmenuhead null 1 index leftmenu0asbottom pop leftmenutrailer } if } | ||||
AWC | { false /donttrust Ingrid: ! false /ObeyRestrictions? Ingrid: ! true /LDEOurl? Ingrid: ! } | ||||
AWC | { needauthorization { countstack 2 sub array astore aload false exch { dup type /objecttype eq { /RestrictedData? getknown { or } if } { pop } ifelse } forall } { false } ifelse } | ||||
AWC | { PNM exch newaxis pop } | ||||
AWC | { ( | ) print dup type /arraytype eq { { render } forall } { allparentlinks0a } ifelse ( | ) print }|||
AWC | { () print } | ||||
AWC | { WWWinfo .leftmenuinfo? not { null 5 object dup /leftmenuinfo WWWinfo ! } if } | ||||
AWC | { pop ( ) print } | ||||
AWC | { datasetlocmap? { lat lon 2 null MATCH tablegridselect /tablegrid WWWinfo ! pop pop ( ) print } if } | ||||
AWC | { legalclientcheck getneedauthorization { true /authorization? WWWinfo ! httpauthenticate } if } | ||||
AWC | { 1 index FORMgetknown { 1 index getknown not { null } if } { null } ifelse ( ) print formcnt++ pop pop } | ||||
AWC | { boundingbox topict line.ps } | ||||
AWC | false | ||||
AWC | { PS 5 1 roll VECTOR pop DoTasks } | ||||
AWC | { (vectoramplitudepage) htmlprint } | ||||
AWC | { authorization-realms { nip leave } forall false dlauthCredGetRedirectX nip } | ||||
AWC | { (onelinepage) htmlprint } | ||||
AWC | { GIF 4 1 roll colorscale pop DoTasks } | ||||
AWC | { () print htmlformulaprint () print } | ||||
AWC | { JPG 4 1 roll plaincolorwithscale pop DoTasks } | ||||
AWC | { PNM 6 1 roll vectoramplitudecolor pop DoTasks } | ||||
AWC | { datasetlocmap? { true } { .dataset dup type /objecttype ne { pop false } { mapavailable? } ifelse } ifelse } | ||||
AWC | 0 23 object /x8 8.0 def (Zoom x4)cvn 4.0 def (x1/4)cvn 0.25 def /x2 2.0 def (Zoom x1)cvn 1.0 def /x4 4.0 def /center 1.0 def /Zoom 1.0 def (Click for Info)cvn null def /x1 1.0 def /x16 16 def (Zoom x1/4)cvn 0.25 def (same scale)cvn 1.0 def (x1/2)cvn 0.5 def (Zoom x2)cvn 2.0 def (Zoom x1/2)cvn 0.5 def | ||||
AWC | { nobots ( ) print () print leftmenu } | ||||
AWC | CaseList /htmlfiletype { printheader? { 2 index leftmenusubhead pop false /printheader? HTMLwords ! } if ( | ) print } def /linktype { printheader? { 2 index leftmenusubhead pop false /printheader? HTMLwords ! } if ( ) print } def /datasettype { printheader? { 2 index leftmenusubhead pop false /printheader? HTMLwords ! } if ( ) print } def /arraytype { dup xcheck { 3 -1 roll exch exec exch 3 1 roll leftmenucase caseexec } if } def /pendingdatasettype { dup xcheck { 3 -1 roll exch exec exch 3 1 roll leftmenucase caseexec } if } def||||
AWC | { GIF 5 1 roll autovector pop DoTasks } | ||||
AWC | [ 0 ] | ||||
AWC | { portaldlscript ( | ||||
AWC | { /ntable HTMLwords ! ntable NtoNaN mimeheader ntable array astore dup dup length 1 gt { dup 1 1 index length 1 sub getinterval { .longname print tab print } forall } if 0 get .longname print ( ) print dup dup length 1 gt { dup 1 1 index length 1 sub getinterval { dup /units known { units cvntos print pop } { pop } ifelse tab print } forall } if 0 get dup /units known { units cvntos print pop } { pop } ifelse ( ) print aload pop { gtable1 gtable2 gtable3 gtable4 } ntable 1 sub get exec DoTasks } | ||||
AWC | { (WWW-Authenticate: Basic realm=") print authorization-realm print (" ) print } | ||||
AWC | { MD5_Init systemtime 3600 idiv 3600 mul s== MD5_Update (:) MD5_Update (dcd98b7102dd2f0e8b11d0f600bfb0c093) MD5_Update MD5_Final string2hex } | ||||
AWC | (5ccc069c403ebaf9f0171e9517f40e41) | ||||
AWC | { boundingbox togif vector.ps } | ||||
AWC | { WWWinfo /If-Modified-Since known { last_modified null ne { WWWinfo .If-Modified-Since stringtotime last_modified code_last_modified imax current_last_modified null ne { current_last_modified imax } if ge { (HTTP/1.0 304 Not Modified ) print /HEAD /method WWWinfo ! false } { true } ifelse } { true } ifelse } { true } ifelse } | ||||
AWC | { exch 1 index cvn passwords exch 2 copy known { get exch 1 index 0 2 getinterval crypt eq { true } { pop false } ifelse } { pop pop pop pop false } ifelse } | ||||
AWC | { /r8 /mimesuffix WWWinfo ! optionalREORDER streamrescale todouble swapbytes8 chunksize npts 8 mul mimeheaderwithlength datar8 DoTasks } | ||||
AWC | { } | ||||
AWC | { JPG 6 1 roll vectoramplitudecolor pop DoTasks } | ||||
AWC | { (colorpage) htmlprint } | ||||
AWC | { GIF exch newaxis pop } | ||||
AWC | { PNM showcolors pop } | ||||
AWC | 0 47 object /r4 /r4 def /html /html def /lanimg /lanimg def /r8 /r8 def /pnm /pnm def /pdf /pdf def /xsl /xsl def /kml /kml def /kmz /kmz def /cdf /cdf def /hdf /hdf def /idaimg /idaimg def /jpg /jpg def /arcinfo /arcinfo def /gif /gif def /dtd /dtd def /asc /asc def /xml /xml def /txt /txt def /gz /gz def /png /png def /nc /nc def /svg /svg def /dods /dods def /s4 /s4 def /cuf /cuf def /i2 /i2 def /tiff /tiff def /ps /ps def /pict /pict def /ch /ch def /csv /csv def /zip /zip def /json /json def /das /das def /ui1 /ui1 def /tsv /tsv def /multipart /multipart def /owl /owl def /dds /dds def | ||||
name | /==alias | ||||
AWC | { oneline .jpg } | ||||
AWC | { WWWinfo .url-q dup length 1 sub 1 getinterval (/) eq not { WWWinfo .url-q length 10 ge { WWWinfo .url-q dup length 10 sub 10 getinterval (index.html) eq } { false } ifelse not { WWWinfo [ htmlroot redirectport 80 ne { (:) redirectport s== } if url-q (/) ] concat nip redirectto stop } if } if } | ||||
AWC | { (HTTP/1.0 301 Moved content-type: text/html ) print currentobject /last_modified known { last_modified null ne { (Last-Modified: ) print last_modified code_last_modified imax current_last_modified null ne { current_last_modified imax } if cvi timetostring print ( ) print } if } if WWWinfo /Vary_List known { (Vary:) print mark WWWinfo .Vary_List { pop } forall counttomark namearray astore nip namesort { space print cvntos print } forall ( ) print } if (Location: ) print dup type /stringtype eq { dup print ( Please look here. ) print false /sendmimeheader WWWinfo ! } | ||||
AWC | { dup length 0 eq { pop null } if } | ||||
AWC | { currentobject /addcmd known { currentobject .addcmd urlprint currentobject /first? true def null null 5 object /command dup def /addcmd dup def /first? dup def /formaction dup def /==alias dup def { dup type /objecttype ne { first? { (?) /first? false store } { (&) } ifelse print exch cvntos print (=) print dup type /stringtype eq { urlprint } { dup null eq { pop } { ==ns } ifelse } ifelse } { { first? { (?) /first? false store } { (&) } ifelse print 2 index cvntos print (.) print exch cvntos print (=) print dup type /stringtype eq { urlprint } { dup null eq { pop } { ==ns } ifelse } ifelse } forall pop } ifelse } forsome } if } | ||||
AWC | null | ||||
AWC | { WWWinfo /User-Agent known { WWWinfo .User-Agent dup length 7 gt { 0 7 getinterval (Mozilla) ne } { pop true } ifelse } if } | ||||
AWC | { dup length 2 eq { dup aload pop ifshortlink0 nip nip } { false } ifelse } | ||||
AWC | { leftmenutoplevel 0 get leftmenulevel 0 get ge { WWWinfo .leftmenuinfo? { pop (index.html) print addleftmenuinfo } { WWWinfo FORMinfo null ne { (index.html) print addleftmenuinfo } if pop } ifelse } if } | ||||
AWC | { (Content-Description: ) print contentdescriptions WWWinfo .mimesuffix get print ( ) print } | ||||
AWC | { GIF 4 1 roll plaincolor pop DoTasks } | ||||
AWC | 0 5 object /integertype { ==ns (+index) print } def /nametype { ==nsurl } def /arraytype { procasurl } def /stringtype { urlprint } def | ||||
AWC | { mark 2 index sortednames { 1 index exch get viewerdatasetcase caseexec pop } forall pop counttomark 0 gt { table: boldData mark :table .html } { pop } ifelse } | ||||
AWC | { ( | ) print ( ) print WWWinfo currentobject /Content-Languages getknown { ( ) print pop } if pop ( ) print maybeGoogleAnalytics }||||
AWC | { WWWinfo currentobject /Content-Languages getknown { LanguageList { WWWinfo /Content-Language getknown { cvn 1 index eq } { false } ifelse not { currentobject 1 index known { ( ) print } if } if pop } forall pop } if pop } | ||||
AWC | { ( ) print } | ||||
AWC | { oneline .pict } | ||||
AWC | 0 67 object /xhtml (application/xhtml+xml) def /txt (text/plain) def /lanimg (image/lan) def /kmz (application.vmd.google-earth.kmz) def /json (application/json; charset=utf-8) def /cuf (application/octet-stream) def /dods (application/octet-stream) def /pdf (application/pdf) def /i2 (application/octet-stream) def /xsl (text/xml) def /multipart (multipart/mixed; boundary=Ingrid-file-boundary---) def /html (text/html; charset=utf-8) def /act (text/html) def /xml (text/xml) def /nc (application/x-netcdf) def /xbm (image/x-xbitmap) def /pnm (image/x-portable-anymap) def /csv (text/comma-separated-values) def /tex (text/x-latex) def /dds (text/plain) def /dtd (text/xml) def /asc (text/plain) def /r4 (application/x-r4) def /das (text/plain) def /arcinfo (application/arcinfo) def /s4 (application/x-s4) def /ps (application/postscript) def /png (image/png) def /gz (application/x-gzip) def /jpg (image/jpeg) def /latex (text/x-latex) def /idaimg (image/ida) def /r8 (application/octet-stream) def /css (text/css) def /ico (image/x-icon) def /zip (application/zip) def /ui1 (application/x-ui1) def /pict (image/pict) def /mov (video/quicktime) def /m3d (application/x-m3d) def /svg (image/svg+xml) def /kml (application/vnd.google-earth.kml+xml) def /cdf (application/x-netcdf) def /ch (text/plain) def /tiff (image/tiff) def /ppt (application/vnd.ms-powerpoint) def /js (text/javascript) def /owl (application/rdf+xml) def /tsv (text/tab-separated-values) def /hdf (application/x-hdf) def /gif (image/gif) def | ||||
AWC | { currentobject 2 index pgetknown { dup type /arraytype eq { aload length 1 add array dup length 1 add -1 roll exch astore } { exch 2 array astore } ifelse } if pdef } | ||||
AWC | { null 1 object exch /functionname exch def nptgrids 1 1 2 index length { 1 index exch { () print { .name == } forall ( ) print } combinations (| ) print } for pop pop } | ||||
AWC | { SOURCES .WORLDBATH .bath Y low high RANGEEDGES exch lon (degree_east) unitconvert ndim RECHUNK exch lat (degree_north) unitconvert ndim RECHUNK exch 1 index .nptgrids length 1 gt { 3 index X exch .Y fig: /color_smoothing null def /plotaxislength 432 def colors coasts PGSQL? { lakes } if colorareas :fig } { 3 index X exch .Y fig: /color_smoothing null def /plotaxislength 432 def colors coasts PGSQL? { lakes } if scattercolor :fig } ifelse datasetselectplotrange } | ||||
AWC | { boundingbox topict linex.ps } | ||||
AWC | { PNM 4 1 roll plaincontour pop DoTasks } | ||||
AWC | { optionalREORDER toi1 chunksize npts mimeheaderwithlength 1 exch dataui1 dataui1 TaskStreams 0 get 1 NewIntegerBuffer 0 SetStreamIndex* TaskStreams .achunk pop * achunk array astore { last VALUE } forall getrealization pop } | ||||
AWC | { /V FORMknown { [ WWWinfo .currenturldir (+) WWWinfo .FORMinfo .V { pop cvntos (+) } forall (VALUES/) ] concat redirectto } { defaultmimeheader } ifelse } | ||||
AWC | ( ) | ||||
AWC | { (HTTP/1.0 301 Moved content-type: text/html ) print currentobject /last_modified known { last_modified null ne { (Last-Modified: ) print last_modified code_last_modified imax current_last_modified null ne { current_last_modified imax } if cvi timetostring print ( ) print } if } if WWWinfo /Vary_List known { (Vary:) print mark WWWinfo .Vary_List { pop } forall counttomark namearray astore nip namesort { space print cvntos print } forall ( ) print } if (Location: ) print dup type /stringtype eq { dup urlprint ( Please look here. ) print false /sendmimeheader WWWinfo ! } | ||||
AWC | { WWWinfo .FORMinfo dup null eq { pop pop false } { exch getknownnotnull } ifelse } | ||||
AWC | { false IRIurl? { (/IRIONLY) print } { LDEOurl? { (/LDEOONLY) print } if } ifelse } | ||||
AWC | { ( ) print () print leftmenuasbottom } | ||||
AWC | { PS 4 1 roll CONTOUR pop DoTasks } | ||||
AWC | { dup 1 object dup dup makesortednamelist { dup totype /streamtype eq { .npts 1 gt } { pop false } ifelse { undef } { pop } ifelse } forsome } | ||||
AWC | { chunksize datatsv } | ||||
AWC | { (Date: ) print systemtime timetostring print ( Server: Ingrid 0.9 ) print (MIME-version: 1.0 ) print (Access-Control-Allow-Origin: * ) print WWWinfo /returncode getknown not { 0 } if 202 eq { (Cache-Control: must-revalidate ) print } { WWWinfo /max-age getknown { (Cache-Control: public, max-age=) print ==ns ( ) print } { (Cache-Control: public ) print } ifelse } ifelse WWWinfo .authorization? { (Vary: Authorization ) print } if } | ||||
AWC | { wwwcopylastmod WWWinfo sendmimeheader { nodefaultmimeheader mimesuffix known not { doifmodified? { mimesuffix /act eq { (HTTP/1.0 301 Moved ) print } { (HTTP/1.0 200 OK ) print } ifelse } if mimeheaderinfo dolastmodified (Content-Type: ) print mimetype print mimesuffix /act eq { ( ) print } { ( ) print } ifelse flush method /HEAD eq { stop } if false /sendmimeheader WWWinfo ! } if } if pop } | ||||
AWC | null | ||||
AWC | { boundingbox togif line.ps } | ||||
AWC | { PS2 4 1 roll plaincolor pop DoTasks } | ||||
AWC | { legalclient? not { (HTTP/1.0 403 Forbidden
) print (Content-Type: text/html
) print (403 Forbidden) print (Access to this server is denied ) print ( ) print flush stop } if } | ||||
AWC | { /expires WWWinfo ! /last_modified WWWinfo ! WWWinfo sendmimeheader { mimesuffix /act eq { (HTTP/1.0 301 Moved ) print } { (HTTP/1.0 200 OK ) print } ifelse mimeheaderinfo (Content-Type: ) print mimetype print ( ) print dolastmodified mimesuffix /act ne { ( ) print } if flush method /HEAD eq { stop } if false /sendmimeheader WWWinfo ! } if pop } | ||||
AWC | { PS2 6 1 roll vectorcolor pop DoTasks } | ||||
AWC | { 1066077372 set_code_last_modified optionalREORDER toreal streamrescaleonlyifnecessary swapbytes chunksize npts 4 mul nchunk 8 mul add mimeheaderwithlength swapdatas4 DoTasks } | ||||
AWC | { nptgrids { () print name ==ns ( ) print pop } forall pop } | ||||
AWC | { PS 5 1 roll SCATTER pop DoTasks } | ||||
AWC | { PNM 6 1 roll vectorcontour pop DoTasks } | ||||
AWC | { dataset followcase caseexec } | ||||
AWC | { PS 4 1 roll COLOR pop DoTasks } | ||||
AWC | { (linepage) htmlprint } | ||||
AWC | { 1 index .nrdim 0 eq { ntable 0 MATCH exch 1 } { 1 REORDER chunk pop exch chunksize } ifelse datatsv2 } | ||||
AWC | { WWWinfo .FORMinfo dup null eq { pop pop false } { exch getknown } ifelse } | ||||
AWC | { wwwcopylastmod WWWinfo doauthorizedata sendmimeheader { doifmodified? { (HTTP/1.0 200 OK ) print } if mimeheaderinfo (Content-Type: ) print mimetype print ( ) print dolastmodified /filename FORMgetknownnotnull { (Content-Disposition: attachment; filename=") print print (" ) print } if ( ) print flush false /sendmimeheader WWWinfo ! method /HEAD eq { stop } if } if pop } | ||||
AWC | 0 | ||||
AWC | { ( alt=") print dup print (" title=") print print (") print } | ||||
AWC | HTMLwords | ||||
AWC | { boundingbox tojpg line.ps } | ||||
AWC | { (vectoramplitudecolorpage) htmlprint } | ||||
AWC | { GIF 5 1 roll plainvector pop DoTasks } | ||||
AWC | { /arcinfo /mimesuffix WWWinfo ! optionalREORDER pushstdout 2 RECHUNK chunk pop nip high low RANGE chunk pop pop low high RANGE chunk pop exch .npts (ncols) print == ( ) print .npts (nrows) print == ( ) print chunk pop exch .first (xllcenter) print == ( ) print .last (yllcenter) print == ( ) print chunk pop pop .step (cellsize) print == ( ) print getmissing_value array? nip { toNaN } if getmissing_value NaN eq { -9999 setmissing_value } if getmissing_value null ne { getmissing_value getscale_factor dup 1.0 eq { pop } { mul } ifelse getadd_offset dup 0.0 eq { pop } { add } ifelse (NODATA_value) print == ( ) print } if flush popstdout pop mimeheader printstdout data.ff.ch } | ||||
AWC | CaseList /pendingdatasettype { exec variable1Dmenucase 1 index totype get exec } def /datasettype { dup pushdataset dup makesortednamelist { 2 copy get variable1Dmenucase 1 index totype get exec dropitem } forall popdataset } def /streamtype { npts 1 gt nptgrids length 1 eq and datatype /geometrytype eq not and { datasetcount 0 gt { [ datasetstack 0 datasetcount getinterval { .name cvntos ( .) } forall name cvntos ] concat } { name cvntos } ifelse dup WWWinfo .theoption cvntos eq { ( ) print } if } def | ||||
AWC | { WWWinfo /port known { WWWinfo donttrust nip { false } { WWWinfo .domainname dup null eq { pop true } { dup (ldgo.columbia.edu) eq 1 index (ldeo.columbia.edu) eq or WWWinfo .clientname (localhost) eq or nip } ifelse } ifelse } { true } ifelse } | ||||
AWC | /fullcommand | ||||
AWC | { WWWinfo .sendmimeheader { /last_modified where { 2 copy eq { pop getexpires? not { null } if /expires WWWinfo ! getlast_modified? not { null } if /last_modified WWWinfo ! } { dup /expires known { getexpires? not { null } if } { null } ifelse /expires WWWinfo ! getlast_modified? not { null } if /last_modified WWWinfo ! pop } ifelse } { null /expires WWWinfo ! null /last_modified WWWinfo ! } ifelse currentobject /max-age known { max-age dup null eq { pop } { /max-age WWWinfo ! } ifelse } if } if } | ||||
AWC | { () print htmlformulaprint () print } | ||||
AWC | { WWWinfo MD5Users /Mufasa dup cvntos (testrealm@host.com) (Circle Of Life) HA1 def pop ValidUsers sampleresponse .username cvn dup def pop /url sampleresponse .uri def /method (GET) def sampleresponse dup == ( ) print (method: ") print method print (" ) print (url: ") print url print (" ) print username null localaskldap (ldap return code:) print dup == DigestErrorCodes exch get == ( ) print (HA1: ") print dup print (" ) print checkMD5response (checkMD5response:) print dup == ( ) print (reference response:) print response == ( ) print response eq { (Match ) } { (FAILED ) } ifelse print pop } | ||||
AWC | { { { ntable 0 MATCH 1 1 } { 3 1 roll copyachunk 3 -1 roll 0 RECHUNK copyachunk 1 index .npts 1 } { 2 REORDER chunk pop 2 copy .npts exch .npts exch } } 3 index .nrdim get exec 2 integerarray astore datatsv3N } | ||||
AWC | { /mymimeinfo WWWinfo ! wwwcopylastmod WWWinfo sendmimeheader { doifmodified? { mimesuffix /act eq { (HTTP/1.0 301 Moved ) print } { (HTTP/1.0 200 OK ) print } ifelse } if mimeheaderinfo (Content-Type: ) print mimetype print ( ) print dolastmodified mymimeinfo null ne { mymimeinfo exec } if mimesuffix /act ne { ( ) print } if flush method /HEAD eq { stop } if false /sendmimeheader WWWinfo ! } if pop } | ||||
AWC | { RESTRICTIONS /LDEOONLY dup put /LDGOtested? true store ifLDGO not { /RestrictedData? true def } if } | ||||
AWC | [ null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null ] | ||||
AWC | { wwwcopylastmod /content-length WWWinfo ! WWWinfo doauthorizedata sendmimeheader { mimesuffix /act eq { (HTTP/1.0 301 Moved ) print } { (HTTP/1.0 200 OK ) print } ifelse mimeheaderinfo (Content-Type: ) print mimetype print ( ) print dolastmodified content-length null ne { (Content-Length: ) print content-length ==ns ( ) print } if /filename FORMgetknownnotnull { (Content-Disposition: attachment; filename=") print print (" ) print } if mimesuffix /act ne { ( ) print } if flush method /HEAD eq { stop } if false /sendmimeheader WWWinfo ! } if pop } | ||||
AWC | { FORMgetknown not { null } if } | ||||
AWC | { dup makesortednamelist { 2 copy get variableattsmenucase caseexec dropitem } forall pop } | ||||
AWC | { PS 4 1 roll LINE pop DoTasks } | ||||
AWC | { () print } | ||||
AWC | { optionalREORDER mimeheader toreal streamrescale chunksize datatsv DoTasks } | ||||
AWC | { PICT 4 1 roll plaincolor pop DoTasks } | ||||
AWC | { dup 1 eq { pop { counttomark array astore aload combinationproc exec pop } forall } { 1 sub 1 1 3 index length 3 index sub { 2 index 1 index 1 sub get 4 1 roll 2 index length 1 index sub 3 index 3 1 roll getinterval 1 index 4 2 roll counttomark 1 add 2 roll combinations0 pop counttomark 3 add -2 roll } for pop pop } ifelse } | ||||
AWC | { JPG 5 1 roll autovector pop DoTasks } | ||||
AWC | { JPG 6 1 roll vectoramplitude pop DoTasks } | ||||
AWC | CaseList /integertype { 2 index print (.) print 1 index cvntos print (=) print dup ==ns ( ) print } def /nametype { cvntos attcase /stringtype get exec } def /realtype { 2 index print (.) print 1 index cvntos print (=) print dup ==ns ( ) print } def /stringtype { 2 index print (.) print 1 index cvntos print (=) print dup print ( ) print } def | ||||
AWC | { PS 4 1 roll LINEX pop DoTasks } | ||||
AWC | { { { ntable 0 MATCH 1 1 1 } { ntable -2 roll copyachunk ntable -1 roll 0 RECHUNK copyachunk ntable -1 roll 0 RECHUNK copyachunk 2 index .npts 1 1 } { ntable -2 roll copyachunk ntable -1 roll copyachunk ntable -1 roll 0 RECHUNK copyachunk 2 index .npts 2 index .npts 1 } { ntable 1 sub REORDER chunk array astore aload { .npts } forall } } 4 index .nrdim get exec 3 integerarray astore datatsv4N } | ||||
AWC | { (vectorcontourpage) htmlprint } | ||||
AWC | { fig: line :fig } | ||||
AWC | { HTMLwords /html:level html:level 1 sub put } | ||||
AWC | { WWWinfo sendmimeheader { mimesuffix /act ne { ( ) print } if flush method /HEAD eq { stop } if false /sendmimeheader WWWinfo ! } if pop } | ||||
AWC | 0 5 object /formaction { machinename null eq { /machinename ifLDGO { hostname } { clientname } ifelse def } if filename null eq filename (/) eq or { (No filename entered. ) printerror } { filename stat { pop false } { true } ifelse { /filename [ (/hosts/) machinename filename 0 get 47 ne { (/) } if filename ] concat def } if filename stat { filename readfile redirectto } { [ () filename ( not found .) ] printerror } ifelse } ifelse } def /printerror { 404 errormimeheader () print dup type /stringtype eq { print } { { print } forall } ifelse ( ) print } def | ||||
AWC | { PICT 6 1 roll vectorcontour pop DoTasks } | ||||
AWC | { 2 copy exch cvx (
| ||||
AWC | { () print htmlformulaprint () print } | ||||
AWC | { PS2 5 1 roll autovector pop DoTasks } | ||||
AWC | { wwwcopylastmod WWWinfo doauthorizedata RestrictData? { 2 (data restricted) DODSerror } if sendmimeheader { doifmodified? { (HTTP/1.0 200 OK ) print } if (XDODS-Server: Ingrid/2.15 ) print mimeheaderinfo DODScontentdescription (Content-Type: ) print mimetype print ( ) print dolastmodified ( ) print flush false /sendmimeheader WWWinfo ! method /HEAD eq { stop } if } if pop } | ||||
AWC | { currentobject /myproc getknown { dup length 1 eq { 0 get name eq } { pop false } ifelse } { true } ifelse } | ||||
AWC | { boundingbox topict contour.ps } | ||||
AWC | { JPG 4 1 roll plaincontour pop DoTasks } | ||||
AWC | { dup /long_name known { long_name } { cleanname } ifelse htmlformulaprint () print dup /dataset_documentation.html known { () print (*) print } if datasetlocmap? { ( [map]) print } if } | ||||
AWC | 0 5 object /dds (dods_dds) def /das (dods_das) def /dods (dods_data) def /asc (dods_data) def | ||||
AWC | { streamgridarray { 2 index (map.) 2 index .name cvntos (.plotvalue) 3array astore concat getknown { VALUE } { pop } ifelse } forall npts 1 gt { pop } { dup getrealization 0 get cvsunits exch .name (map.) exch cvntos (.plotvalue) 3array astore concat exch def } ifelse } | ||||
AWC | { dup /GCMD_id known { true } { dup /dataset known { .dataset dup type /objecttype ne { pop false } { gcmdidavailable? } ifelse } { pop false } ifelse } ifelse } | ||||
AWC | { 1 index 1 index gridnobyname dup 0 ne { gridbyno nip 3 index 2 index getknown { 2 copy .gridid exch .gridid eq { pop pop (M) true } { 2 copy .gridtype 2 ne exch .gridtype 2 ne and 2 index .units 2 index .units eq and { 2 copy .step exch .step eq { 2 copy .first exch .first sub 1 index .step div dup round exch sub dup 0.0 ne { 1 index .step mul s== (O=) exch append nip nip true } { pop pop pop (S) true } ifelse } { pop pop (D) true } ifelse } { pop pop (D) true } ifelse } ifelse } { pop (M) true } ifelse } { pop pop false } ifelse } | ||||
AWC | { html:paths exch html:level exch put HTMLwords /html:level html:level 1 add put } | ||||
AWC | { /i2 /mimesuffix WWWinfo ! optionalREORDER toi2 swapbytes2 chunksize npts 2 mul mimeheaderwithlength datai2 DoTasks } | ||||
AWC | CaseList /datasettype { dup pushdataset dup makesortednamelist { 2 copy get variableattsmenucase 1 index totype get exec dropitem } forall popdataset } def /pendingdatasettype { dup xcheck { nip exec name exch variableattsmenucase 1 index totype get exec } if } def /arraytype { dup xcheck { nip exec name exch variableattsmenucase 1 index totype get exec } if } def /streamtype { datasetcount 0 gt { [ datasetstack 0 datasetcount getinterval { .name cvntos (.) } forall name cvntos ] concat } { name cvntos } ifelse 2 copy print ( ) print DATASETbot hiddendatasetatts { attcase caseexec pop pop } forsome pop } def |