# © Copyright 1996-2012 ECMWF.
# 
# This software is licensed under the terms of the Apache Licence Version 2.0
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. 
# In applying this licence, ECMWF does not waive the privileges and immunities 
# granted to it by virtue of its status as an intergovernmental organisation nor
# does it submit to any jurisdiction.

!
! mars language definition file.
!
!     author.
!     -------
!
!           b.raoult 22/10/90
!
!     Modifications.
!     --------------
!
!           K. Fielding 26.07.93
!           Add new observation types wind profile (WP) and
!           temp mobile (TM)
!
!
! syntax :
!
!
!  command name ; command description ; command type     
!  {
!        parameter 1
!        {
!       value 1 ; abbreviation 1
!               value 2 ; abbreviation 2
!               value 3 
!               ...
!               value n ; abbreviation n
!    } = default value
!
!        parameter 2
!        {
!            ...
!        } = default value
!       
!        ...
!
! }
!
!------------------------------------------------------------------------

TIGGEDEF ; TIGGE REQUEST  ; TIGGE
{
    PARAM {

# Automatically generated by './tigge_def_for_mars.pl master.info'

10 METER U VELOCITY                                ;    10U ;     165
10 METER V VELOCITY                                ;    10V ;     166
CONVECTIVE AVAILABLE POTENTIAL ENERGY              ;   CAPE ;      59
CONVECTIVE INHIBITION                              ;     CIN ;  228001
GEOPOTENTIAL HEIGHT                                ;     GH ;     156
LAND SEA MASK                                      ;    LSM ;     172
LARGE SCALE PRECIPITATION                          ;    LSP ;    3062
MEAN SEA LEVEL PRESSURE                            ;    MSL ;     151
OROGRAPHY                                          ;   OROG ;  228002
POTENTIAL TEMPERATURE                              ;     PT ;       3
POTENTIAL VORTICITY                                ;     PV ;      60
SKIN TEMPERATURE                                   ;    SKT ;     235
SNOW DEPTH WATER EQUIVALENT                        ;     SD ;  228141
SNOW FALL WATER EQUIVALENT                         ;     SF ;  228144
SOIL MOISTURE                                      ;     SM ;  228039
SOIL TEMPERATURE                                   ;     ST ;  228139
SPECIFIC HUMIDITY                                  ;      Q ;     133
SUNSHINE DURATION                                  ;   SUND ;     189
SURFACE AIR DEW POINT TEMPERATURE                  ;     2D ;     168
SURFACE AIR MAXIMUM TEMPERATURE                    ;  MX2T6 ;     121
SURFACE AIR MINIMUM TEMPERATURE                    ;  MN2T6 ;     122
SURFACE AIR TEMPERATURE                            ;     2T ;     167
SURFACE PRESSURE                                   ;     SP ;     134
TEMPERATURE                                        ;      T ;     130
TIME INTEGRATED OUTGOING LONG WAVE RADIATION       ;    TTR ;     179
TIME INTEGRATED SURFACE LATENT HEAT FLUX           ;   SLHF ;     147
TIME INTEGRATED SURFACE NET SOLAR RADIATION        ;    SSR ;     176
TIME INTEGRATED SURFACE NET THERMAL RADIATION      ;    STR ;     177
TIME INTEGRATED SURFACE SENSIBLE HEAT FLUX         ;   SSHF ;     146
TOTAL CLOUD COVER                                  ;    TCC ;  228164
TOTAL COLUMN WATER                                 ;    TCW ;     136
TOTAL PRECIPITATION                                ;     TP ;  228228
U VELOCITY                                         ;      U ;     131
V VELOCITY                                         ;      V ;     132
WIND GUST AT 10 METRES IN THE LAST 3 HOURS         ;  10FG3 ;  228028

# Additions for S2S

VERTICAL VELOCITY                        ;      W   ;        135
CONVECTIVE PRECIPITATION                 ;     CP   ;     228143
NORTHWARD TURBULENT SURFACE STRESS       ;   NSSS   ;        181
EASTWARD  TURBULENT SURFACE STRESS       ;   EWSS   ;        180
WATER RUNFOFF AND DRAINAGE               ;     RO   ;     228205
SURFACE WATER RUNOFF                     ;    SRO   ;          8
SNOW  DENSITY                            ;    RSN   ;         33
SEA SURFACE TEMPERATURE                  ;   SSTK   ;         34
SEA ICE COVER                            ;     CI   ;         31
SOIL MOISTURE TOP 20CM                   ;   SM20   ;     228086
SOIL MOISTURE TOP 100CM                  ;  SM100   ;     228087
SOIL TEMPERATURE TOP 20CM                ;   ST20   ;     228095
SOIL TEMPERATURE TOP 100CM               ;  ST100   ;     228096
SOIL TYPE                                ;    SLT   ;         43
SNOW ALBEDO                              ;    ASN   ;     228032
TIME INTEGRATED SURFACE NET SOLAR RADIATION DOWNWARDS       ;    SSRD ;     169
TIME INTEGRATED SURFACE NET THERMAL RADIATION DOWNWARDS     ;    STRD ;     175

		*
        /   
    } = T

    CLASS
    {
		TIGGE       ;   TI
		S2S         ;   S2

    } = TI

    TYPE
    {
		CONTROL FORECAST            ;   CF
		FORECAST                    ;   FC
		PERTURBED FORECAST          ;   PF
		ALL                         
    } = CF
    
    STREAM
    {
		ENFO
		ENFH
		DA   ; OPER
    } = ENFO

	EXPVER
	{
		TEST
		PROD
	} = PROD

	ORIGIN 
	{
	# TIGGE global
		KWBC
		BABJ
		ECMF
		EGRR
		RJTD
		AMMC
		CWAO
		RKSL
		SBSJ
		LFPW

	# S2S
		RUMS
		FAPR

	# TIGGE LAM
	# old
#		COSMOLEPS-ARPASIMC-EU
#		MOGREPS-MO-EUA
#		AEMET-SREPS-MM-EUAT
#		SRNWP-PEPS
#		NORLAMEPS
#		ALADIN-LAEF
#		COSMO-DE-EPS
#		COSMO-SREPS-BO-EU
#		GLAMEPS
#		PEARCE
#		DMI-HIRLAM
#		OMSZ-ALADIN-EPS

	# new
		COSMOLEPS-ARPASIMC-EU
		ALADINLAEF-ZAMG-EU
		COSMODEEPS-DWD-EU
		ALADINHUNEPS-OMSZ-EU
		SRNWPPEPS-DWD-EUA
		MOGREPS-MO-EUA
		GLAMEPS-HIRLAMCONS-EU
		SREPS-AEMET-EUA
		HIRLAM-DMI-EU
		AROMEEPS-MF-EU
		PEARP-MF-EU

		/
		ALL


	}

    MODEL
	{
		GLOB
		LAM
	} = GLOB

    LEVTYPE  
    {
		POTENTIAL VORTICITY   ; PV
		POTENTIAL TEMPERATURE ; PT
        SURFACE               ; SFC
        PRESSURE LEVELS       ; PL
        MODEL LEVELS          ; ML
		ALL
    } = PL
    
    REPRES 
    {
        BUFR            ;   BU
        SPHERICAL HARMONICS ;   SH
        LAT LONG GRID       ;   LL
        GAUSSIAN GRID       ;   GG
		SPACE VIEW          ; SV
		OCEAN GRID          ; OG
		ALL
    } = SH

    DOMAIN
    {
		GENERAL EUROPEAN AREA   ; G
		GLOBE                   ; G
        MEDITERRANEAN           ; M
        NORTHERN HEMISPHERE     ; N
        SOUTHERN HEMISPHERE     ; S
		BALTIC AND BLACK SEA    ; B
		EUROPE                  ; E
        NORTH WEST EUROPE       ; A
        NORTH EAST EUROPE       ; B
        SOUTH WEST EUROPE       ; C
        SOUTH EAST EUROPE       ; D
		WESTERN ATLANTIC        ; W
		FASTEX                  ; F
		TROPICS                 ; T
		TROPICS 2               ; U
		X
		ALL
		V
		H
		I
		J
		K
		L
		O
		P
		Q
		R
		Y
		Z
    } = GLOBE

    DATE
    {
        JANUARY     ;   JAN
        FEBRUARY    ;   FEB
        MARCH       ;   MAR
        APRIL       ;   APR
        MAY         ;   MAY
        JUNE        ;   JUN
        JULY        ;   JUL
        AUGUST      ;   AUG
        SEPTEMBER   ;   SEP
        OCTOBER     ;   OCT
        NOVEMBER    ;   NOV
        DECEMBER    ;   DEC
        *   
        CURRENT DATE ; 0
        YESTERDAY    ; -1
		TO          ; TO
		BY          ;   BY
		/
		OFF
    } = CURRENT DATE

    PADDING  
    {
		AUTOMATIC   ; AUTO
		NONE        ; N    ; 0
		OFF
		*
    } = OFF
    
} ! END OF TIGGEDEF

HELP    ;   Displays prints help file   ;   INTERNAL
{
}

!------------------------------------------------------------------------

NEWS    ;   Displays prints news file   ;   INTERNAL
{
}

!------------------------------------------------------------------------

END ;   Normal exit from mars system    ;   INTERNAL
{
}

!------------------------------------------------------------------------

DEFAULT ;   Reset defaults    ;   INTERNAL
{
}

!------------------------------------------------------------------------

ARCHIVE ;   Archives data   ;   TIGGE
{

	DATASET [ priority = 0 ]
	{
		@
	}

    CLASS  { &TIGGEDEF&CLASS  } = TI

    TYPE   { &TIGGEDEF&TYPE   } = CF

    STREAM { &TIGGEDEF&STREAM } = ENFO
    
	MODEL  { &TIGGEDEF&MODEL } = GLOB

	ORIGIN { &TIGGEDEF&ORIGIN } = ECMF

	DOMAIN { &TIGGEDEF&DOMAIN } = G

    EXPVER  [ priority = 1 ]
    {
		&TIGGEDEF&EXPVER 
    } = PROD
    
    LEVTYPE { &TIGGEDEF&LEVTYPE } = PL 
    
    LEVELIST  
    {
		TO ; TO
		BY ; BY 
        OFF ;   OFF
        *       
        /       
    } = 1000/850/700/500/300
    
    PARAM { &TIGGEDEF&PARAM } = T

    DATE 
	{
		&TIGGEDEF&DATE
    } = CURRENT DATE
    
	HDATE 
	{ 
		&TIGGEDEF&DATE 
		ALL
	} = OFF

    TIME
    {
        *   
        /   
        TO  ;   TO
        BY  ;   BY    !                               6
    } = 12
    
    STEP
    {
        TO  ;   TO
        BY  ;   BY    
		/
        *   
    } = 00
    
    ANOFFSET
    {
        TO  ;   TO
        BY  ;   BY    
		/
        *   
		OFF
    } 

    NUMBER
    {
        ALL ;   ALL
        OFF ;   OFF
		TO  ; TO
		BY
        *   
        /
    } = OFF
    
    SOURCE
    {
		@
		/
        "   
    } = ""
    
    DISP
    {
        NEW ;   N
        OLD ;   OLD
		REMOVE
    } = NEW
    

    PASSWORD
    {
        "   
    } = ""

	DATABASE [ priority = 1 ]
	{
		@
		/
	} 

	EXPECT [ priority = 0 ]
	{
		ANY
		*
		OFF ; OFF
	} = OFF

    USE  
    {
        FREQUENT   
        INFREQUENT
        NORMAL
		BOUNDARY CONDITIONS  ;  BC
		OFF; OFF
    } = OFF

    DUPLICATES  
    {
        KEEP
        REMOVE
    } = REMOVE

	PADDING
	{
		&TIGGEDEF&PADDING
	} = OFF

    PROCESS  
    {
		LOCAL ; LOCAL
        OFF ;   OFF
    } = OFF

} ! END OF ARCHIVE

!------------------------------------------------------------------------

LIST    ;   LIST FDF ENTRIES AND CFS FILES  ;   TIGGE
{
    
	DATASET [ priority = 0 ]
	{
		@
	}

    CLASS  
	{ 
		&TIGGEDEF&CLASS  
		/ 
		ALL
	} = TI
    
    TYPE   
	{ 
		&TIGGEDEF&TYPE  
		/  
		ALL
	} = CF 

    STREAM 
	{ 
		&TIGGEDEF&STREAM 
		/ 
		ALL
	} = ENFO 
    
	MODEL 
	{
		&TIGGEDEF&MODEL
		/
		ALL
	} = GLOB

	ORIGIN 
	{
		&TIGGEDEF&ORIGIN
		/
		ALL
	}

    EXPVER{
		&TIGGEDEF&EXPVER
		/
		ALL
    } = PROD 
    
    LEVTYPE 
	{ 
		&TIGGEDEF&LEVTYPE 
		/ 
		ALL
	}
    
    LEVELIST
    {
		TO ; TO
		BY ; BY 
        ALL ;   ALL
        OFF ; OFF;   OFF
        *   
        /   
    }
    
    REPRES { 
		&TIGGEDEF&REPRES 
		/ 
		ALL
	}
    
    DOMAIN  
    {
		&TIGGEDEF&DOMAIN
		/
		ALL
    } 

    DUPLICATES  {
        KEEP
        REMOVE
    } = KEEP
    
    PARAM 
    {
        ALL             ;   ALL
        &TIGGEDEF&PARAM
		/
    }
    
    DATE
    {
		&TIGGEDEF&DATE
		ALL
    } 
    
    HDATE
    {
		&TIGGEDEF&DATE
		ALL
    } 
    
    
	MONTH
	{
		*
		/
		TO
		BY  ;   BY           !        1
		ALL
	}

	YEAR
	{
		*
		/
		TO
		BY  ;   BY           !        1
		ALL
	}
    
    TIME
    {
        *   
        /   
        TO  ;   TO
        BY  ;   BY           !        6
		ALL ;   ALL
    }
    

    STEP
    {
        ALL ;   ALL
        *   
        /   
        TO  ;   TO
        BY  ;   BY        !           12
    }
    
    ANOFFSET
    {
        ALL ;   ALL
        *   
        /   
        TO  ;   TO
        BY  ;   BY        !           12
		OFF
    }
    
    NUMBER
    {
        ALL ;   ALL
        OFF ;   OFF
		TO  ; TO
		BY
        *   
        /
    } = OFF
    
	SHOW
	{
		@
		/
	}

	HIDE
	{
		@
		/
	}

 
    TARGET
    {
		@
        "   
		OFF
    }

	DATABASE [ priority = 1 ]
	{
		@
		/
	} 

    SOURCE
    {
		@
        "   
    } = ""

    FIELDSET  
    {
        @
    }
    
    FORMAT  
    {
        PACKED      ;   P
        UNPACKED    ;   U
        GRIB EDITION 1 ;   GRIB1
        GRIB EDITION 2 ;   GRIB2
		NETCDF
		OFF         ;   OFF
    } = OFF
    
    RESOL 
    {
        ARCHIVED VALUE       ;   AV
		AUTOMATIC RESOLUTION ;   AUTO
		OFF                  ;   OFF
		319
		213
		106
		63
        *   
    } = OFF
    
    ACCURACY 
    {
        NORMAL  ;   N
        REDUCED ;   R
        LOW ;   L
		OFF; OFF
        *   
		ARCHIVED VALUE ; AV
    } = OFF
    
    AREA  
    {
        GLOBE               ;  GLOBE;  G
        EUROPE              ;  EUROPE; E
        NORTHERN HEMISPHERE OCTANT 1    ;   N1
        NORTHERN HEMISPHERE OCTANT 2    ;   N2
        NORTHERN HEMISPHERE OCTANT 3    ;   N3
        NORTHERN HEMISPHERE OCTANT 4    ;   N4
        SOUTHERN HEMISPHERE OCTANT 1    ;   S1
        SOUTHERN HEMISPHERE OCTANT 2    ;   S2
        SOUTHERN HEMISPHERE OCTANT 3    ;   S3
        SOUTHERN HEMISPHERE OCTANT 4    ;   S4
        *   
        /   
		OFF; OFF
    } = OFF

	LOCATION 
	{
		*
        /   
        OFF     ;  OFF
	} = OFF

	FRAME 
	{
		*
		OFF; OFF
	} = OFF

	BITMAP 
	{
		OFF ; OFF
		@
		"
	} = OFF

    BLOCK  
    {
        OFF     ; OFF;  OFF
        /   
        *       
    }=OFF

    GRID  
    {
        ARCHIVED VALUE  ;   AV
        *   
        /   
        OFF     ; OFF;  OFF
    } = OFF
    
	GAUSSIAN 
	{
		REDUCED
		REGULAR
		OFF     ; OFF;  OFF
	} = OFF

	SPECIFICATION 
	{
		*
		OFF
	} = OFF

    LAUNCH  
    {
        "   
    } = ""
    
	PADDING
	{
		&TIGGEDEF&PADDING
	} = OFF

    USE  
    {
        FREQUENT   
        INFREQUENT
        NORMAL
		BOUNDARY CONDITIONS  ;  BC
		OFF; OFF
    } = OFF
    
    PASSWORD  
    {
        "   
        OFF ;   OFF
    } = OFF
    
    COSTONLY  
    {
        YES ;   Y
        NO  ;   N
		OFF ;   OFF
    } = OFF
    
    PROCESS  
    {
		LOCAL ; LOCAL
        OFF ;   OFF
    } = OFF

	EXPECT 
	{
		*
		OFF ; OFF
		ANY
	} = OFF

	OUTPUT {
		TABLE
		BROWSER	
		COST
		SEARCH
		TREE
	} = TABLE


} ! END OF LIST

STAGE    ;   STAGE FIELDS ;    MARS
{
    
	DATASET [ priority = 0 ]
	{
		@
	}

    CLASS
	{ 
		&TIGGEDEF&CLASS  
	} = TI
    

    TYPE
	{ 
		&TIGGEDEF&TYPE   
		ALL
	} = CF

    STREAM
	{ 
		&TIGGEDEF&STREAM 
	} = ENFO
    
	MODEL 
	{
		&TIGGEDEF&MODEL
		OFF
		/
	} = OFF

	ORIGIN 
	{
		&TIGGEDEF&ORIGIN
		/
	} = ALL

    EXPVER
	{
		&TIGGEDEF&EXPVER
		/
    } = PROD
    

    LEVTYPE
	{ 
		&TIGGEDEF&LEVTYPE 
	} = PL 
    
    LEVELIST
    {
		TO ; TO
		BY ; BY 
        ALL ;   ALL
        OFF ; OFF;   OFF
        *   
        /   
    } = 1000/850/700/500/400/300
    
    REPRES
	{ 
		&TIGGEDEF&REPRES 
	} = SH
    
    DOMAIN
    {
		&TIGGEDEF&DOMAIN
    } = G

    PARAM
    {
        ALL             ;   ALL
        &TIGGEDEF&PARAM
    } = T
    
    DATE
    {
		&TIGGEDEF&DATE
    } = CURRENT DATE
    
    HDATE
    {
		&TIGGEDEF&DATE
    } = CURRENT DATE
    
    TIME 
    {
        *   
        /   
        TO  ;   TO
        BY  ;   BY           !        6
		ALL ;   ALL
    } = 12

    STEP
    {
        ALL ;   ALL
        *   
        /   
        TO  ;   TO
        BY  ;   BY        !           12
    } = 00
    
    ANOFFSET
    {
        ALL ;   ALL
        *   
        /   
        TO  ;   TO
        BY  ;   BY        !           12
		OFF
    }

    NUMBER
    {
        ALL ;   ALL
        OFF ;   OFF
		TO  ; TO
		BY
        *   
        /
    } = OFF
    
    BLOCK
    {
        OFF     ; OFF;  OFF
        /   
        *       
    }=OFF

	TARGET 
	{
		@
		"
		OFF
	} = ""

    FIELDSET  
    {
        @
    }
    
	RESOL
	{
        ARCHIVED VALUE       ;   AV
		AUTOMATIC RESOLUTION ;   AUTO
		OFF                  ;   OFF
		319
		213
		106
        *   
	} = AUTO

	ACCURACY
	{
        NORMAL  ;   N
        REDUCED ;   R
        LOW ;   L
        *   
		ARCHIVED VALUE ; AV
	} = N

	AREA
	{
        GLOBE               ;  GLOBE;  G
        EUROPE              ;  EUROPE; E
        NORTHERN HEMISPHERE OCTANT 1    ;   N1
        NORTHERN HEMISPHERE OCTANT 2    ;   N2
        NORTHERN HEMISPHERE OCTANT 3    ;   N3
        NORTHERN HEMISPHERE OCTANT 4    ;   N4
        SOUTHERN HEMISPHERE OCTANT 1    ;   S1
        SOUTHERN HEMISPHERE OCTANT 2    ;   S2
        SOUTHERN HEMISPHERE OCTANT 3    ;   S3
        SOUTHERN HEMISPHERE OCTANT 4    ;   S4
        *   
        /   
	} = G

	FRAME 
	{
		*
		OFF; OFF
	} = OFF

	BITMAP 
	{
		OFF; OFF
		@
		"
	} = OFF

	ROTATION
	{
		*
		/
		OFF;  OFF
	} = OFF

	GRID
	{
        ARCHIVED VALUE  ;   AV
        *   
        /   
        OFF     ; OFF;  OFF
	} = OFF

	GAUSSIAN
	{
		REDUCED
		REGULAR
		OFF     ; OFF;  OFF
	} = OFF

	SPECIFICATION 
	{
		*
		OFF
	} = OFF

    DUPLICATES  
    {
        KEEP
        REMOVE
		OFF
    } = OFF

	EXPECT
	{
		ANY
		*
		OFF ; OFF
	} = OFF

	DATABASE 
	{
		@
		/
	} 

} ! END OF STAGE

!------------------------------------------------------------------------

REMOVE  ;   REMOVE FDF ENTRIES AND CFS FILES    ;   MARS
{
    
    CLASS  { 
		&TIGGEDEF&CLASS  
	} = TI

    
    PASSWORD
    {
        "   
		@
    } 
    
    EXPVER
    {
		@
        "   
    } = ""
    
    DOMAIN
    {
		&TIGGEDEF&DOMAIN
    }
    
	DATABASE
	{
		@
		*
		/
	} 

    TYPE   { &TIGGEDEF&TYPE   }

	DATE { 
		*
		TO
		/
	}

	TIME {
		*
		TO
		/
	}

    STREAM
	{ 
		&TIGGEDEF&STREAM 
	}
    
	ORIGIN 
	{
		&TIGGEDEF&ORIGIN
		/
	}


    LEVTYPE
	{ 
		&TIGGEDEF&LEVTYPE 
	}

	VOLUME { * }

	CREATED { * }

	LASTACCESS { * }

	EXPR { 
		"
		* 
	}

} ! END OF REMOVE

!------------------------------------------------------------------------
    
!------------------------------------------------------------------------

EXPORT  ;   Write cfs files to tape    ;   MARS
{
    
    VOLSER
    {
        "   
    } = ""
    
    SLOTNO
    {
        "   
    } = ""
    
    CFSPATH
    {
        "   
    } = ""
    
    DENSITY
    {
        *
    } = 6250
    
    RECLEN
    {
        *   
    } = 120
    
    FILESEQ
    {
        *   
    } = 1
    
    SOFTWARE
    {
        "   
    } = ""
    
    FILTER
    {
        "   
    } = "*"
    
    CHECK
    {
        YES ;   Y
        NO  ;   N
    } = NO

}

!------------------------------------------------------------------------


RETRIEVE_G2    ;   Retrieval of data   ;   TIGGE
{
    
	DATASET [ java_hidden  = TRUE , 
				visible      = false, 
				check        = false,
				priority     = 0]
	{
		@
	}

    CLASS 	[ 	java_control = CHOICE, 
				java_section = ID, 
				marsdoc      = id,
				mars_interface         = menu,
				java_hidden  = FALSE ]
	{ 
		&TIGGEDEF&CLASS   
	} = TI
    

    TYPE  	[	help = help_multiple_selection, exclusive = True,
				java_control = CHOICE, 
				java_section = ID, 
				marsdoc      = field/image/obs/all,
				mars_interface         = menu,
				java_hidden  = FALSE ] 
	{ 
		&TIGGEDEF&TYPE   
		*
	} = CF


    STREAM 	[ 	help = help_multiple_selection, exclusive = True,
				java_control = CHOICE, 
				java_section = ID, 
				marsdoc      = id,
				mars_interface         = menu,
				java_hidden  = FALSE ]
	{ 
		&TIGGEDEF&STREAM 
		*
	} = ENFO
    

    EXPVER 	[ 	priority     = 1,
				java_control = CHOICE_TEXT_1,
				java_section = ID,
				marsdoc      = id,
				mars_interface         = text,
				java_hidden  = FALSE ]
	{
        /
		PROD
		TEST
	ALL
    } = PROD
    

    MODEL 	[ 	java_control = CHOICE, 
				java_section = ID, 
				marsdoc      = id,
				mars_interface         = menu,
				hidden       = TRUE,
				java_hidden  = FALSE ]
	{
		&TIGGEDEF&MODEL
		OFF
	} = OFF

    REPRES [ java_control = CHOICE, 
			 java_section = ID, 
			 marsdoc      = id,
			 java_hidden = FALSE ] 
	{ 
		&TIGGEDEF&REPRES 
	} = SH
    
    LEVTYPE [ java_control = CHOICE, 
			  java_section = ID, 
			  marsdoc      = field/all,
			  mars_interface         = menu,
			  java_hidden = FALSE ] 
	{ 
		&TIGGEDEF&LEVTYPE 
	} = PL 
    
    LEVELIST [ java_control = CHOICE_TEXT_2, 
			   java_section = ID, 
			   marsdoc      = field/level,
			   mars_interface         = text,
			   java_hidden = FALSE ]
    {
		TO ;    TO
		BY ;    BY 
        ALL ;   ALL
        OFF ;   OFF
        *   
        /   
    } = 1000/850/700/500/300
    
    PARAM [ help = help_multiple_selection,  # For Metview
			java_control = LIST_2, 
			marsdoc      = field/all,
			mars_interface         = list,
			java_section = METEO, java_hidden = FALSE ]
    {
        ALL             
        &TIGGEDEF&PARAM
    } = T
    
	YEAR [  
			check        = false,
			visible = false
			]
	{
		*
		/
		TO
		BY  ;   BY           !        1
		ALL
	}

	MONTH [  
			check        = false,
			visible = false
			]
	{
		*
		/
		TO
		BY  ;   BY           !        1
		ALL
	}

    DATE [ java_control = CHOICE_TEXT_2, 
	       java_section = DATE, 
		   marsdoc      = date/all,
		   mars_interface         = text,
		   java_hidden = FALSE ]
    {
		&TIGGEDEF&DATE
    } = YESTERDAY
    
    HDATE [ java_control = CHOICE_TEXT_2,
				java_section = DATE,
				marsdoc      = date/all,
				mars_interface         = text,
				java_hidden = FALSE ]
	{
		&TIGGEDEF&DATE
		ALL
		OFF          ; OFF
    } = OFF

    TIME [ java_control = CHOICE_TEXT_2, 
		   java_section = DATE, 
		   marsdoc      = date/all,
		   mars_interface         = text,
		   java_hidden = FALSE ]
    {
        *   
        /   
        TO  
        BY  !        6
		ALL 
		12
    } = 12

    STEP [ java_control = CHOICE_TEXT_2, 
		   java_section = DATE, 
		   marsdoc      = date/field,
		   mars_interface         = text,
		   java_hidden = FALSE ]
    {
        ALL 
        *   
        /   
        TO  
        BY  !           12
!		* [DAY]
!		* [MONTH]
!		* [WEEK]
!		* [VERIFY]
    } = 00
    
    ANOFFSET [ java_control = CHOICE_TEXT_2, 
		   java_section = DATE, 
		   marsdoc      = date/field,
		   mars_interface         = text,
		   java_hidden = FALSE ]
    {
        ALL 
        *   
        /   
        TO  
        BY  !           12
		OFF
    } 
    
    NUMBER [ java_control = CHOICE_TEXT_2, 
			 java_section = OTHER, 
			 marsdoc      = field/ensemble,
			 mars_interface         = text,
			 java_hidden = FALSE ]
    {
        ALL 
        OFF ;   OFF
		TO  
		BY
        *   
        /
    } = OFF
    

    DOMAIN  [ 	help = help_multiple_selection, # For Metview
				java_control = CHOICE, 
				java_section = OTHER, 
				marsdoc      = id,
				mars_interface         = menu,
				java_hidden = FALSE ] 
    {
	&TIGGEDEF&DOMAIN
    } = GLOBE

    ORIGIN 	[ 	java_control = CHOICE, 
				java_section = ID, 
				marsdoc      = field/supplementary,
				mars_interface         = menu,
				java_hidden  = FALSE ]
	{
		&TIGGEDEF&ORIGIN
	} = ECMF


    SOURCE  [   java_control = CHOICE, 
				java_section = TARGET, 
				marsdoc      = target,
				mars_interface         = text,
				hidden      = TRUE,
			check        = false,
				java_hidden = TRUE ]
    {
		@
        "   
		OFF
    } = ""

    TARGET [ java_control = TEXT, 
			 java_section = TARGET, 
			 marsdoc      = target,
			 mars_interface         = text,
				hidden      = TRUE,
			check        = false,
			 java_hidden = FALSE ]
    {
		@
        "   
		OFF
    } = ""


    TRANSFER [ hidden      = TRUE, check        = false ]
    {
		HANDLE
		DATA
		OFF
    }

    FIELDSET  [ java_control = CHOICE, 
				java_section = TARGET, 
				marsdoc      = target,
			 	mars_interface         = text,
				hidden      = TRUE,
			check        = false,
				java_hidden = TRUE ]
    {
        @
		OFF
    }
    
    CFSPATH  [ java_control = TEXT, 
			   java_section = TARGET, 
			   hidden      = TRUE,
			check        = false,
			   java_hidden = TRUE ]
    {
        "   
    } = ""
    
    FORMAT  [ java_control = CHOICE, 
	          java_section = DATA, 
				hidden      = TRUE,
			check        = false,
			  java_hidden = FALSE ]
    {
        PACKED      ;   P
        UNPACKED    ;   U
        GRIB EDITION 1 ;   GRIB1
        GRIB EDITION 2 ;   GRIB2
		NETCDF
    } = P
    
    DISP [ java_control = CHOICE,
			java_section = DATA,
			hidden      = TRUE,
			check        = false,
			java_hidden = FALSE ]

    {
        NEW ;   N
        OLD ;   OLD
		REMOVE
		OFF
    } = OFF
    
    RESOL [ help = help_multiple_selection,  # For Metview
			check        = false,
			java_control = CHOICE_TEXT_2, 
			java_section = DATA, 
			marsdoc      = pproc/field,
			mars_interface         = menu,
			java_hidden = FALSE ]
    {
        ARCHIVED VALUE       ;   AV
		AUTOMATIC RESOLUTION ;   AUTO
		REDUCED GAUSSIAN 128 ;   N128
		REDUCED GAUSSIAN 200 ;   N200
		OFF                  ;   OFF
		319
		213
		106
		63
        *   
    } = AUTO
    
    ACCURACY [ 	java_control = CHOICE_TEXT_1, 
			   	java_section = DATA, 
			   	marsdoc      = pproc/field,
				mars_interface         = text,
			check        = false,
			   	java_hidden = FALSE ]
    {
        NORMAL  ;   N
        REDUCED ;   R
        LOW     ;   L
        *   
		ARCHIVED VALUE ; AV
    } = N
    
    STYLE [ 	java_control = CHOICE_TEXT_1, 
			   	java_section = DATA, 
			   	marsdoc      = pproc/field,
				mars_interface         = text,
			    check        = false,
			   	java_hidden = FALSE ]
    {
        DISSEMINATION  
        OFF   
    } = OFF
    
	INTERPOLATION [ java_control = CHOICE_TEXT_1, 
			   	java_section = DATA, 
			   	marsdoc      = pproc/field,
				mars_interface         = text,
			    check        = false,
			   	java_hidden = FALSE ]
	{
		NEAREST NEIGHBOUR
        NEAREST LSM  
		BILINEAR
		LINEAR
		LINEAR FIT
		CUBIC
		AVERAGE WEIGHTED
		AVERAGE
		OFF
	} = OFF

    AREA  [ help = help_multiple_selection,			# For Metview
    		java_control = CHOICE_TEXT_2, 
			java_section = DATA, 
			marsdoc      = pproc/obs,
			mars_interface         = text,
			check        = false,
			java_hidden = FALSE ]
    {
        GLOBE                           ;   G
        EUROPE                          ;   E 
        NORTHERN HEMISPHERE OCTANT 1    ;   N1
        NORTHERN HEMISPHERE OCTANT 2    ;   N2
        NORTHERN HEMISPHERE OCTANT 3    ;   N3
        NORTHERN HEMISPHERE OCTANT 4    ;   N4
        SOUTHERN HEMISPHERE OCTANT 1    ;   S1
        SOUTHERN HEMISPHERE OCTANT 2    ;   S2
        SOUTHERN HEMISPHERE OCTANT 3    ;   S3
        SOUTHERN HEMISPHERE OCTANT 4    ;   S4
        *   
        /   
    } = G

	LOCATION [ java_hidden  = TRUE , 
				visible      = false, 
				check        = false,
				priority     = 0]
	{
		*
        /   
        OFF     ;  OFF
	} = OFF

    BLOCK  [ 	java_control = CHOICE_TEXT_2, 
			 	java_section = DATA, 
			 	marsdoc      = obs,
				mars_interface         = text,
			check        = false,
			 	java_hidden = FALSE ]
    {
        OFF     ;  OFF
        /   
        *       
    }=OFF

	ROTATION [ java_control = CHOICE_TEXT_2,
			   java_section = DATA,
			   marsdoc      = pproc/field,
				mars_interface         = text,
			check        = false,
			   java_hidden = FALSE ]
	{
		*
		/
		OFF;  OFF
	} = OFF

	FRAME [ marsdoc      = pproc/field,
			check        = false,
			mars_interface         = text ]
	{
		*
		OFF;  OFF
	} = OFF

	BITMAP [ marsdoc      = pproc/field,
			check        = false,
			mars_interface         = text ]
	{
		OFF ; OFF
		@
		"
	}  = OFF

    GRID  [ java_control = CHOICE_TEXT_2, 
			java_section = DATA, 
			marsdoc      = pproc/field,
			mars_interface         = text,
			check        = false,
			java_hidden = FALSE ]
    {
        ARCHIVED VALUE  ;   AV
		320
		160
		80
		48
        *   
        /   
        OFF     ;  OFF
    } = OFF
    
	GAUSSIAN [  help = help_multiple_selection,  # For Metview
				java_control = CHOICE_TEXT_2, 
				java_section = DATA, 
				marsdoc      = pproc/field,
				mars_interface         = text,
			check        = false,
				java_hidden = FALSE ]
	{
		REDUCED
		REGULAR
		OFF     ;  OFF
	} = OFF

	SPECIFICATION [ marsdoc      = pproc/field,
			check        = false,
					mars_interface         = text ]
	{
		*
		OFF
	} = OFF

	PACKING [ help = help_multiple_selection,  # For Metview
			  java_control = CHOICE_TEXT_2,
			  java_section = DATA,
			  marsdoc      = pproc/field,
			  hidden       = true,
			check        = false,
			  mars_interface         = text,
			  java_hidden = FALSE ]
	{
		SI   ; SIMPLE
		CO   ; COMPLEX
		SO   ; SECOND ORDER
		AV   ; ARCHIVED VALUE
		JPEG
		OFF
	} = OFF


    PADDING  [ 	help = help_multiple_selection,  # For Metview
			check        = false,
				java_control = CHOICE, 
				java_section = OTHER, 
				marsdoc      = control,
				mars_interface    = text,
				java_hidden = FALSE ]
    {
		&TIGGEDEF&PADDING
		OFF
    } = 0
    

    DUPLICATES  [ 	java_control = CHOICE, 
				  	java_section = OTHER, 
				  	marsdoc      = obs,
					mars_interface    = on_off,
			check        = false,
				  	java_hidden = FALSE ]
    {
        KEEP
        REMOVE
    } = KEEP
    
    LAUNCH  [ java_control = TEXT, 
			  java_section = OTHER, 
			  hidden      = TRUE,
			check        = false,
			  java_hidden = FALSE ]
    {
        "   
    } = ""
    
    USE  [ 	java_control=CHOICE, 
	       	java_section=OTHER, 
		   	marsdoc     = control,
			mars_interface         = menu,
			hidden     = TRUE,
			check        = false,
		   	java_hidden=FALSE ]
    {
        FREQUENT   
        INFREQUENT
        NORMAL
		BOUNDARY CONDITIONS  ;  BC
    } = NORMAL
    
    PASSWORD  [ java_control = CHOICE_TEXT_1, 
				java_section = OTHER, 
				hidden      = TRUE,
			check        = false,
				java_hidden = FALSE ]
    {
        "   
		@
        OFF ;   OFF
    } = OFF
    
    COSTONLY  [ java_control = CHOICE, 
				java_section = OTHER, 
				hidden      = TRUE,
			check        = false,
				java_hidden = FALSE ]
    {
        YES ;   Y
        NO  ;   N
    } = N
    
    PROCESS  [ java_control = CHOICE, 
			   java_section = OTHER, 
			   hidden       = TRUE,
			check        = false,
			   java_hidden = FALSE ]
    {
		LOCAL 
        OFF ;   OFF
    } = LOCAL

	DATABASE  [ java_control = CHOICE, 
				java_section = OTHER, 
				marsdoc      = control,
			check        = false,
				priority = 1,
				java_hidden = TRUE ]
	{
		@
		/
	}

	EXPECT [    priority = 0,
				java_control = CHOICE_TEXT_2, 
				java_section = OTHER, 
				marsdoc      = control,
			check        = false,
				java_hidden = FALSE]
	{
		ANY
		*
		OFF ; OFF
	} = OFF

	_VERSION [ java_control = CHOICE, 
			   java_section = OTHER, 
			   hidden       = TRUE,
			check        = false,
			   java_hidden = FALSE ]
	{
		*
	} = 2.0
    
} ! END OF RETRIEVE

READ_G2 ; X; TIGGEMETVIEW
{
    FIELDSET [ visible = false ] {
    @
    } = OUT

	READ_DATA_FROM [ visible = false ]
	{
		FILE
		METVIEW_ICON
	} = FILE


    SOURCE  [ visible = always, help = help_file_box ]
	{
		@
		OFF
    } = OFF

    LOGSTATS
    {
		@
        "   
		OFF
    }

	DATA
		[
			interface = icon,
			class           = GRIB,
			exclusive       = true
		]
	{
		@
	}


	CFSPATH {
		@
		OFF
	} = OFF

    ORDER [ label = 'Field Ordering' ] {
	AS IS  ; 0
        SORTED ; 1
    } = AS IS

	CLASS  { &TIGGEDEF&CLASS 
			 ANY ; ANY
			 } = ANY

	STREAM [ help = help_multiple_selection, exclusive = True ]
		{ &TIGGEDEF&STREAM 
			 ANY ; ANY
			 *
			 } = ANY

    TYPE   [ help = help_multiple_selection, exclusive = True ]
		{ 
		ANY ; ANY
		&TIGGEDEF&TYPE   
		*
	} = ANY
    
    MODEL   { 
		ANY ; ANY
		&TIGGEDEF&MODEL   
	} = ANY
    
    LEVTYPE
    {
		ANY ; ANY
		&TIGGEDEF&LEVTYPE
    } = ANY
    
    LEVELIST
    {
        ANY ; ANY
		TO  ; TO
		BY  ; BY 
        OFF ; OFF;   OFF
        *   
        /   
    } = ANY
    
    PARAM [ help = help_multiple_selection ] # For Metview
    {
        ANY             ;   ANY
        &TIGGEDEF&PARAM
    } = ANY
    
    DATE
    {
		ANY             ;   ANY
		&TIGGEDEF&DATE   
    } = ANY
    
    HDATE
    {
		ANY             ;   ANY
		&TIGGEDEF&DATE   
    } = ANY
    
    TIME
    {
		ANY
        *   
        /   
        TO  ;   TO
        BY  ;   BY           !        6
    } = ANY
    
    STEP
    {
        ANY ;   ANY
        *   
        /   
        TO  ;   TO
        BY  ;   BY        !           12
    } = ANY
    
    ANOFFSET
    {
        ANY ;   ANY
        *   
        /   
        TO  ;   TO
        BY  ;   BY        !           12
		OFF
    } = ANY
    
    ACCURACY 
    {
		ANY     ;   ANY
        NORMAL  ;   N
        REDUCED ;   R
        LOW ;   L
        *   
		ARCHIVED VALUE ; AV
    } = N
    
	STYLE
    {
        DISSEMINATION  
        OFF   
		ANY
    } = ANY

	INTERPOLATION
    {
        NEAREST NEIGHBOUR  
        NEAREST LSM  
		BILINEAR
		LINEAR
		LINEAR FIT
		CUBIC
		AVERAGE WEIGHTED
		AVERAGE
        OFF   
		ANY
    } = ANY

    AREA
    {
		ANY ; ANY
        GLOBE               ;  GLOBE;  G
        EUROPE              ;  EUROPE; E
        *   
        /   
    } = ANY

	FRAME 
	{
		*
		OFF; OFF
	} = OFF

	BITMAP 
	{
		OFF ; OFF
		@
		"
	} = OFF

	RESOL 
	{
        ARCHIVED VALUE       ;   AV
		AUTOMATIC RESOLUTION ;   AUTO
		319
		213
		106
        *   
		ANY ; ANY
	} = ANY

	ROTATION
	{
		ANY     ; ANY
		*
		/
	} = ANY

    GRID
    {
        ANY     ; ANY
        *   
        /   
    } = ANY

	GAUSSIAN 
	{
		REDUCED
		REGULAR
		OFF     ; OFF;  OFF
	} = OFF

	SPECIFICATION 
	{
		*
		OFF
	} = OFF

	TARGET [ visible = false ]
	{
		@
		"
		OFF
	} = OFF

    NUMBER
    {
        ALL ;   ALL
        OFF ;   OFF
		TO  ; TO
		BY
        *   
        /
		ANY
    } = ANY
    
! For compatibility with RETRIEVE_G2  They are unset in Mars rules

	REPRES { &TIGGEDEF&REPRES
			 ANY ; ANY
			 } = ANY 

    ORIGIN 	{ &TIGGEDEF&ORIGIN
			 ANY ; ANY
			 } = ANY 

    PADDING  
    {
		ANY  ; ANY
		&TIGGEDEF&PADDING
    } = ANY
    
    DOMAIN 
    {
	&TIGGEDEF&DOMAIN
	ANY
    } = ANY
    
    EXPVER{
		@
		1
		2
		11
		12
        "   
        *   
		ANY ; ANY
    } = ANY
    
}

FLUSH ;   Flushes data   ;   MARS
{

    CLASS  { &TIGGEDEF&CLASS  }

    TYPE   { &TIGGEDEF&TYPE   }

    STREAM { &TIGGEDEF&STREAM }

    MODEL  { &TIGGEDEF&MODEL }

    ORIGIN { &TIGGEDEF&ORIGIN }

    EXPVER  [ priority = 1 ]
    {
		@
        "       
        *       
    }
    
    LEVTYPE  { &TIGGEDEF&LEVTYPE }
    
    LEVELIST  
    {
		TO ; TO
		BY ; BY 
        OFF ;   OFF
        *       
        /       
    }
    
    REPRES   { &TIGGEDEF&REPRES }
    
    DOMAIN 
    {
	&TIGGEDEF&DOMAIN
    }
    
    PARAM { &TIGGEDEF&PARAM }
    
    DATE
    {
        JANUARY     ;   JAN
        FEBRUARY    ;   FEB
        MARCH       ;   MAR
        APRIL       ;   APR
        MAY     ;   MAY
        JUNE        ;   JUN
        JULY        ;   JUL
        AUGUST      ;   AUG
        SEPTEMBER   ;   SEP
        OCTOBER     ;   OCT
        NOVEMBER    ;   NOV
        DECEMBER    ;   DEC
        *   
         CURRENT DATE ; 0
         YESTERDAY    ; -1
		 TO ; TO
		 /
    }
    
    TIME
    {
        *   
        /   
        TO  ;   TO
        BY  ;   BY    !                               6
    }
    
    STEP
    {
        *   
    }
    
    ANOFFSET
    {
        *   
		OFF
    }
    
    NUMBER
    {
        ALL ;   ALL
        OFF ;   OFF
		TO  ; TO
		BY
        *   
        /
    } 
    
    SOURCE
    {
		@
		/
        "   
    }
    
    DISP
    {
        NEW ;   N
        OLD ;   OLD
    } 
    
    AREA
    {
        GLOBE   ;   G
        EUROPE  ;   E
    }
    
	FRAME 
	{
		*
		OFF; OFF
	} = OFF

	BITMAP 
	{
		OFF ; OFF
		@
		"
	} = OFF

    RESOL
    {
        /
        *   
    }

    GRID
    {
        *
        /
        OFF     ; OFF;  OFF
    }
    
    PASSWORD
    {
        "   
    } 

	DATABASE
	{
		@
		/
	} 

! Only for FLUSH

	WAIT
	{
		TRUE
		FALSE
	} = FALSE

	DECACHE
	{
		TRUE
		FALSE
	} = FALSE

} ! END OF FLUSH
