# grib2io.tables.section4

View Source

       1table_4_1_0 = {
       2'0':'Temperature',
       3'1':'Moisture',
       4'2':'Momentum',
       5'3':'Mass',
       6'4':'Short-wave radiation',
       7'5':'Long-wave radiation',
       8'6':'Cloud',
       9'7':'Thermodynamic Stability indicies',
      10'8':'Kinematic Stability indicies',
      11'9':'Temperature Probabilities*',
      12'10':'Moisture Probabilities*',
      13'11':'Momentum Probabilities*',
      14'12':'Mass Probabilities*',
      15'13':'Aerosols',
      16'14':'Trace gases',
      17'15':'Radar',
      18'16':'Forecast Radar Imagery',
      19'17':'Electrodynamics',
      20'18':'Nuclear/radiology',
      21'19':'Physical atmospheric properties',
      22'20':'Atmospheric chemical Constituents',
      23'21-189':'Reserved',
      24'190':'CCITT IA5 string',
      25'191':'Miscellaneous',
      26'192-254':'Reserved for Local Use',
      27'192':'Covariance',
      28'255':'Missing',
      29}
      30
      31table_4_1_1 = {
      32'0':'Hydrology basic products',
      33'1':'Hydrology probabilities',
      34'2':'Inland water and sediment properties',
      35'3-191':'Reserved',
      36'192-254':'Reserved for Local Use',
      37'255':'Missing',
      38}
      39
      40table_4_1_2 = {
      41'0':'Vegetation/Biomass',
      42'1':'Agricultural/Aquacultural Special Products',
      43'2':'Transportation-related Products',
      44'3':'Soil Products',
      45'4':'Fire Weather Products',
      46'5':'Land Surface Products',
      47'6-191':'Reserved',
      48'192-254':'Reserved for Local Use',
      49'255':'Missing',
      50}
      51
      52table_4_1_3 = {
      53'0':'Image format products',
      54'1':'Quantitative products',
      55'2':'Cloud Properties',
      56'3':'Flight Rules Conditions',
      57'4':'Volcanic Ash',
      58'5':'Sea-surface Temperature',
      59'6':'Solar Radiation',
      60'7-191':'Reserved',
      61'192-254':'Reserved for Local Use',
      62'192':'Forecast Satellite Imagery',
      63'255':'Missing',
      64}
      65
      66table_4_1_4 = {
      67'0':'Temperature',
      68'1':'Momentum',
      69'2':'Charged Particle Mass and Number',
      70'3':'Electric and Magnetic Fields',
      71'4':'Energetic Particles',
      72'5':'Waves',
      73'6':'Solar Electromagnetic Emissions',
      74'7':'Terrestrial Electromagnetic Emissions',
      75'8':'Imagery',
      76'9':'Ion-Neutral Coupling',
      77'10':'Space Weather Indices',
      78'11-191':'Reserved',
      79'192-254':'Reserved for Local Use',
      80'255':'Missing',
      81}
      82
      83table_4_1_10 = {
      84'0':'Waves',
      85'1':'Currents',
      86'2':'Ice',
      87'3':'Surface Properties',
      88'4':'Sub-surface Properties',
      89'5-190':'Reserved',
      90'191':'Miscellaneous',
      91'192-254':'Reserved for Local Use',
      92'255':'Missing',
      93}
      94
      95table_4_1_20 = {
      96'0':'Health Indicators',
      97'1':'Epidemiology',
      98'2':'Socioeconomic indicators',
      99'3-191':'Reserved',
     100'192-254':'Reserved for Local Use',
     101'255':'Missing',
     102}
     103
     104table_4_0 = {
     105'0':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time. (see Template 4.0)',
     106'1':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time. (see Template 4.1)',
     107'2':'Derived forecasts based on all ensemble members at a horizontal level or in a horizontal layer at a point in time. (see Template 4.2)',
     108'3':'Derived forecasts based on a cluster of ensemble members over a rectangular area at a horizontal level or in a horizontal layer at a point in time. (see Template 4.3)',
     109'4':'Derived forecasts based on a cluster of ensemble members over a circular area at a horizontal level or in a horizontal layer at a point in time. (see Template 4.4)',
     110'5':'Probability forecasts at a horizontal level or in a horizontal layer at a point in time. (see Template 4.5)',
     111'6':'Percentile forecasts at a horizontal level or in a horizontal layer at a point in time. (see Template 4.6)',
     112'7':'Analysis or forecast error at a horizontal level or in a horizontal layer at a point in time. (see Template 4.7)',
     113'8':'Average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.8)',
     114'9':'Probability forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.9)',
     115'10':'Percentile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.10)',
     116'11':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.11)',
     117'12':'Derived forecasts based on all ensemble members at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.12)',
     118'13':'Derived forecasts based on a cluster of ensemble members over a rectangular area at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.13)',
     119'14':'Derived forecasts based on a cluster of ensemble members over a circular area at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.14)',
     120'15':'Average, accumulation, extreme values or other statistically-processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time. (see Template 4.15)',
     121'16-19':'Reserved',
     122'20':'Radar product (see Template 4.20)',
     123'21-29':'Reserved',
     124'30':'Satellite product (see Template 4.30) NOTE: This template is deprecated. Template 4.31 should be used instead.',
     125'31':'Satellite product (see Template 4.31)',
     126'32':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulate (synthetic) satellite data (see Template 4.32)',
     127'33':'Individual Ensemble Forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data (see Template 4.33)',
     128'34':'Individual Ensemble Forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data(see Template 4.34)',
     129'35':'Satellite product with or without associated quality values (see Template 4.35)',
     130'36-39':'Reserved',
     131'40':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents. (see Template 4.40)',
     132'41':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents. (see Template 4.41)',
     133'42':'Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents. (see Template 4.42)',
     134'43':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval for atmospheric chemical constituents. (see Template 4.43)',
     135'44':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for aerosol. (see Template 4.44)',
     136'45':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval for aerosol. (see Template 4.45)',
     137'46':'Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol. (see Template 4.46)',
     138'47':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval for aerosol. (see Template 4.47)',
     139'48':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol. (see Template 4.48)',
     140'49':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol. (see Template 4.49)',
     141'50':'Reserved',
     142'51':'Categorical forecast at a horizontal level or in a horizontal layer at a point in time. (see Template 4.51)',
     143'52':'Reserved',
     144'53':'Partitioned parameters at a horizontal level or horizontal layer at a point in time. (see Template 4.53)',
     145'54':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters. (see Template 4.54)',
     146'55':'Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time (see Template 4.55)',
     147'56':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (DEPRECATED) (see Template 4.56)',
     148'57':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents based on a distribution function (see Template 4.57)',
     149'58':'Individual Ensemble Forecast, Control and Perturbed, at a horizontal level or in a horizontal layer at a point in time interval for Atmospheric Chemical Constituents based on a distribution function (see Template 4.58)',
     150'59':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (corrected version of template 4.56 - See Template 4.59)',
     151'60':'Individual Ensemble Reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time. (see Template 4.60)',
     152'61':'Individual Ensemble Reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval (see Template 4.61)',
     153'62':'Average, Accumulation and/or Extreme values or other Statistically-processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time (see Template 4.62)',
     154'63':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles (see Template 4.63)',
     155'64-66':'Reserved',
     156'67':'Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function (see Template 4.67)',
     157'68':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function. (see Template 4.68)',
     158'69':'Reserved',
     159'70':'Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time. (see Template 4.70)',
     160'71':'Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time. (see Template 4.71)',
     161'72':'Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.72)',
     162'73':'Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.73)',
     163'74-75':'Reserved',
     164'76':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink. (see Template 4.76)',
     165'77':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink. (see Template 4.77)',
     166'78':'Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink. (see Template 4.78)',
     167'79':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink. (see Template 4.79)',
     168'80':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source or sink. (see Template 4.80)',
     169'81':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source or sink. (see Template 4.81)',
     170'82':'Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink. (see Template 4.82)',
     171'83':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink. (see Template 4.83)',
     172'84':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink. (see Template 4.84)',
     173'85':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol. (see Template 4.85)',
     174'86':'Quantile forecasts at a horizontal level or in a horizontal layer at a point in time. (see Template 4.86)',
     175'87':'Quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.87)',
     176'88':'Analysis or forecast at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.88)',
     177'89-90':'Reserved',
     178'91':'Categorical forecast at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.91)',
     179'92':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.92)',
     180'93':'Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.93)',
     181'94':'Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.94)',
     182'95':'Average, accumulation, extreme values or other statiscally processed value at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.95)',
     183'96':'Average, accumulation, extreme values or other statistically processed values of an individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.96)',
     184'97':'Average, accumulation, extreme values or other statistically processed values of post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.97)',
     185'98':'Average, accumulation, extreme values or other statistically processed values of a post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.98)',
     186'99':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with explicit list of frequencies and directions (see Template 4.99)',
     187'100':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with explicit list of frequencies and directions (see Template 4.100)',
     188'101':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with frequencies and directions defined by formulae (see Template 4.101)',
     189'102':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with frequencies and directions defined by formulae (see Template 4.102)',
     190'103':'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for waves selected by period range (see Template 4.103)',
     191'104':'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for waves selected by period range (see Template 4.104)',
     192'105':'Anomalies, significance and other derived products from an analysis or forecast in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval (see Template 4.105)',
     193'99-253':'Reserved',
     194'254':'CCITT IA5 character string (see Template 4.254)',
     195'255-999':'Reserved',
     196'1000':'Cross-section of analysis and forecast at a point in time. (see Template 4.1000)',
     197'1001':'Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time. (see Template 4.1001)',
     198'1002':'Cross-section of analysis and forecast, averaged or otherwise statistically-processed over latitude or longitude. (see Template 4.1002)',
     199'1003-1099':'Reserved',
     200'1100':'Hovmoller-type grid with no averaging or other statistical processing (see Template 4.1100)',
     201'1101':'Hovmoller-type grid with averaging or other statistical processing (see Template 4.1101)',
     202'1102-32767':'Reserved',
     203'32768-65534':'Reserved for Local Use',
     204'65535':'Missing',
     205}
     206
     207table_4_3 = {
     208'0':'Analysis',
     209'1':'Initialization',
     210'2':'Forecast',
     211'3':'Bias Corrected Forecast',
     212'4':'Ensemble Forecast',
     213'5':'Probability Forecast',
     214'6':'Forecast Error',
     215'7':'Analysis Error',
     216'8':'Observation',
     217'9':'Climatological',
     218'10':'Probability-Weighted Forecast',
     219'11':'Bias-Corrected Ensemble Forecast',
     220'12':'Post-processed Analysis (See Note)',
     221'13':'Post-processed Forecast (See Note)',
     222'14':'Nowcast',
     223'15':'Hindcast',
     224'16':'Physical Retrieval',
     225'17':'Regression Analysis',
     226'18':'Difference Between Two Forecasts',
     227'19-191':'Reserved',
     228'192-254':'Reserved for Local Use',
     229'192':'Forecast Confidence Indicator',
     230'193':'Probability-matched Mean',
     231'194':'Neighborhood Probability',
     232'195':'Bias-Corrected and Downscaled Ensemble Forecast',
     233'196':'Perturbed Analysis for Ensemble Initialization',
     234'197':'Ensemble Agreement Scale Probability',
     235'198':'Post-Processed Deterministic-Expert-Weighted Forecast',
     236'199':'Ensemble Forecast Based on Counting',
     237'200':'Local Probability-matched Mean',
     238'255':'Missing',
     239}
     240
     241table_4_4 = {
     242'0':'Minute',
     243'1':'Hour',
     244'2':'Day',
     245'3':'Month',
     246'4':'Year',
     247'5':'Decade (10 Years)',
     248'6':'Normal (30 Years)',
     249'7':'Century (100 Years)',
     250'8':'Reserved',
     251'9':'Reserved',
     252'10':'3 Hours',
     253'11':'6 Hours',
     254'12':'12 Hours',
     255'13':'Second',
     256'14-191':'Reserved',
     257'192-254':'Reserved for Local Use',
     258'255':'Missing',
     259}
     260
     261table_4_5 = {
     262'0':['Reserved','unknown'],
     263'1':['Ground or Water Surface','unknown'],
     264'2':['Cloud Base Level','unknown'],
     265'3':['Level of Cloud Tops','unknown'],
     266'4':['Level of 0o C Isotherm','unknown'],
     267'5':['Level of Adiabatic Condensation Lifted from the Surface','unknown'],
     268'6':['Maximum Wind Level','unknown'],
     269'7':['Tropopause','unknown'],
     270'8':['Nominal Top of the Atmosphere','unknown'],
     271'9':['Sea Bottom','unknown'],
     272'10':['Entire Atmosphere','unknown'],
     273'11':['Cumulonimbus Base (CB)','m'],
     274'12':['Cumulonimbus Top (CT)','m'],
     275'13':['Lowest level where vertically integrated cloud cover exceeds the specified percentage (cloud base for a given percentage cloud cover)','%'],
     276'14':['Level of free convection (LFC)','unknown'],
     277'15':['Convection condensation level (CCL)','unknown'],
     278'16':['Level of neutral buoyancy or equilibrium (LNB)','unknown'],
     279'17-19':['Reserved','unknown'],
     280'20':['Isothermal Level','K'],
     281'21':['Lowest level where mass density exceeds the specified value (base for a given threshold of mass density)','kg m-3'],
     282'22':['Highest level where mass density exceeds the specified value (top for a given threshold of mass density)','kg m-3'],
     283'23':['Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration','Bq m-3'],
     284'24':['Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration)','Bq m-3'],
     285'25':['Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity)','dBZ'],
     286'26':['Convective cloud layer base','m'],
     287'27':['Convective cloud layer top','m'],
     288'28-29':['Reserved','unknown'],
     289'30':['Specified radius from the centre of the Sun','m'],
     290'31':['Ionospheric D-region level','unknown'],
     291'32':['Ionospheric E-region level','unknown'],
     292'33':['Ionospheric F1-region level','unknown'],
     293'34':['Ionospheric F1-region level','unknown'],
     294'35':['Ionospheric F2-region level','unknown'],
     295'36-99':['Reserved','unknown'],
     296'100':['Isobaric Surface','Pa'],
     297'101':['Mean Sea Level','unknown'],
     298'102':['Specific Altitude Above Mean Sea Level','m'],
     299'103':['Specified Height Level Above Ground','m'],
     300'104':['Sigma Level','unknown'],
     301'105':['Hybrid Level','unknown'],
     302'106':['Depth Below Land Surface','m'],
     303'107':['Isentropic (theta) Level','K'],
     304'108':['Level at Specified Pressure Difference from Ground to Level','Pa'],
     305'109':['Potential Vorticity Surface','K m2 kg-1 s-1'],
     306'110':['Reserved','unknown'],
     307'111':['Eta Level','unknown'],
     308'112':['Reserved','unknown'],
     309'113':['Logarithmic Hybrid Level','unknown'],
     310'114':['Snow Level','Numeric'],
     311'115':['Sigma height level','unknown'],
     312'116':['Reserved','unknown'],
     313'117':['Mixed Layer Depth','m'],
     314'118':['Hybrid Height Level','unknown'],
     315'119':['Hybrid Pressure Level','unknown'],
     316'120-149':['Reserved','unknown'],
     317'150':['Generalized Vertical Height Coordinate','unknown'],
     318'151':['Soil level','Numeric'],
     319'152':['Sea-ice level,(see Note 8)','Numeric'],
     320'153-159':['Reserved','unknown'],
     321'160':['Depth Below Sea Level','m'],
     322'161':['Depth Below Water Surface','m'],
     323'162':['Lake or River Bottom','unknown'],
     324'163':['Bottom Of Sediment Layer','unknown'],
     325'164':['Bottom Of Thermally Active Sediment Layer','unknown'],
     326'165':['Bottom Of Sediment Layer Penetrated By Thermal Wave','unknown'],
     327'166':['Mixing Layer','unknown'],
     328'167':['Bottom of Root Zone','unknown'],
     329'168':['Ocean Model Level','Numeric'],
     330'169':['Ocean level defined by water density (sigma-theta) difference from near-surface to level','kg m-3'],
     331'170':['Ocean level defined by water potential temperature difference from near-surface to level','K'],
     332'171':['Ocean level defined by vertical eddy diffusivity difference from near-surface to level,(see Note 7)','m2 s-1'],
     333'172-173':['Reserved','unknown'],
     334'174':['Top Surface of Ice on Sea, Lake or River','unknown'],
     335'175':['Top Surface of Ice, under Snow, on Sea, Lake or River','unknown'],
     336'176':['Bottom Surface (underside) Ice on Sea, Lake or River','unknown'],
     337'177':['Deep Soil (of indefinite depth)','unknown'],
     338'178':['Reserved','unknown'],
     339'179':['Top Surface of Glacier Ice and Inland Ice','unknown'],
     340'180':['Deep Inland or Glacier Ice (of indefinite depth)','unknown'],
     341'181':['Grid Tile Land Fraction as a Model Surface','unknown'],
     342'182':['Grid Tile Water Fraction as a Model Surface','unknown'],
     343'183':['Grid Tile Ice Fraction on Sea, Lake or River as a Model Surface','unknown'],
     344'184':['Grid Tile Glacier Ice and Inland Ice Fraction as a Model Surface','unknown'],
     345'185-191':['Reserved','unknown'],
     346'192-254':['Reserved for Local Use','unknown'],
     347'200':['Entire atmosphere (considered as a single layer)','unknown'],
     348'201':['Entire ocean (considered as a single layer)','unknown'],
     349'204':['Highest tropospheric freezing level','unknown'],
     350'206':['Grid scale cloud bottom level','unknown'],
     351'207':['Grid scale cloud top level','unknown'],
     352'209':['Boundary layer cloud bottom level','unknown'],
     353'210':['Boundary layer cloud top level','unknown'],
     354'211':['Boundary layer cloud layer','unknown'],
     355'212':['Low cloud bottom level','unknown'],
     356'213':['Low cloud top level','unknown'],
     357'214':['Low cloud layer','unknown'],
     358'215':['Cloud ceiling','unknown'],
     359'216':['Effective Layer Top Level','m'],
     360'217':['Effective Layer Bottom Level','m'],
     361'218':['Effective Layer','m'],
     362'220':['Planetary Boundary Layer','unknown'],
     363'221':['Layer Between Two Hybrid Levels','unknown'],
     364'222':['Middle cloud bottom level','unknown'],
     365'223':['Middle cloud top level','unknown'],
     366'224':['Middle cloud layer','unknown'],
     367'232':['High cloud bottom level','unknown'],
     368'233':['High cloud top level','unknown'],
     369'234':['High cloud layer','unknown'],
     370'235':['Ocean Isotherm Level (1/10 ° C)','unknown'],
     371'236':['Layer between two depths below ocean surface','unknown'],
     372'237':['Bottom of Ocean Mixed Layer (m)','unknown'],
     373'238':['Bottom of Ocean Isothermal Layer (m)','unknown'],
     374'239':['Layer Ocean Surface and 26C Ocean Isothermal Level','unknown'],
     375'240':['Ocean Mixed Layer','unknown'],
     376'241':['Ordered Sequence of Data','unknown'],
     377'242':['Convective cloud bottom level','unknown'],
     378'243':['Convective cloud top level','unknown'],
     379'244':['Convective cloud layer','unknown'],
     380'245':['Lowest level of the wet bulb zero','unknown'],
     381'246':['Maximum equivalent potential temperature level','unknown'],
     382'247':['Equilibrium level','unknown'],
     383'248':['Shallow convective cloud bottom level','unknown'],
     384'249':['Shallow convective cloud top level','unknown'],
     385'251':['Deep convective cloud bottom level','unknown'],
     386'252':['Deep convective cloud top level','unknown'],
     387'253':['Lowest bottom level of supercooled liquid water layer','unknown'],
     388'254':['Highest top level of supercooled liquid water layer','unknown'],
     389'255':['Missing','unknown'],
     390}
     391
     392table_4_6 = {
     393'0':'Unperturbed High-Resolution Control Forecast',
     394'1':'Unperturbed Low-Resolution Control Forecast',
     395'2':'Negatively Perturbed Forecast',
     396'3':'Positively Perturbed Forecast',
     397'4':'Multi-Model Forecast',
     398'5-191':'Reserved',
     399'192-254':'Reserved for Local Use',
     400'192':'Perturbed Ensemble Member',
     401'255':'Missing',
     402}
     403
     404table_4_7 = {
     405'0':'Unweighted Mean of All Members',
     406'1':'Weighted Mean of All Members',
     407'2':'Standard Deviation with respect to Cluster Mean',
     408'3':'Standard Deviation with respect to Cluster Mean, Normalized',
     409'4':'Spread of All Members',
     410'5':'Large Anomaly Index of All Members',
     411'6':'Unweighted Mean of the Cluster Members',
     412'7':'Interquartile Range (Range between the 25th and 75th quantile)',
     413'8':'Minimum Of All Ensemble Members',
     414'9':'Maximum Of All Ensemble Members',
     415'10-191':'Reserved',
     416'192-254':'Reserved for Local Use',
     417'192':'Unweighted Mode of All Members',
     418'193':'Percentile value (10%) of All Members',
     419'194':'Percentile value (50%) of All Members',
     420'195':'Percentile value (90%) of All Members',
     421'196':'Statistically decided weights for each ensemble member',
     422'197':'Climate Percentile (percentile values from climate distribution)',
     423'198':'Deviation of Ensemble Mean from Daily Climatology',
     424'199':'Extreme Forecast Index',
     425'200':'Equally Weighted Mean',
     426'201':'Percentile value (5%) of All Members',
     427'202':'Percentile value (25%) of All Members',
     428'203':'Percentile value (75%) of All Members',
     429'204':'Percentile value (95%) of All Members',
     430'255':'Missing',
     431}
     432
     433table_4_8 = {
     434'0':'Anomoly Correlation',
     435'1':'Root Mean Square',
     436'2-191':'Reserved',
     437'192-254':'Reserved for Local Use',
     438'255':'Missing',
     439}
     440
     441table_4_9 = {
     442'0':'Probability of event below lower limit',
     443'1':'Probability of event above upper limit',
     444'2':'Probability of event between upper and lower limits (the range includes lower limit but no the upper limit)',
     445'3':'Probability of event above lower limit',
     446'4':'Probability of event below upper limit',
     447'5':'Probability of event equal to lower limit',
     448'6':'Probability of event in above normal category (see Notes 1 and 2)',
     449'9-191':'Reserved',
     450'192-254':'Reserved for Local Use',
     451'255':'Missing',
     452}
     453
     454table_4_10 = {
     455'0':'Average',
     456'1':'Accumulation',
     457'2':'Maximum',
     458'3':'Minimum',
     459'4':'Difference (value at the end of the time range minus value at the beginning)',
     460'5':'Root Mean Square',
     461'6':'Standard Deviation',
     462'7':'Covariance (temporal variance)',
     463'8':'Difference ( value at the beginning of the time range minus value at the end)',
     464'9':'Ratio',
     465'13-191':'Reserved',
     466'192-254':'Reserved for Local Use',
     467'192':'Climatological Mean Value: multiple year averages of quantities which are themselves means over some period of time (P2) less than a year. The reference time (R) indicates the date and time of the start of a period of time, given by R to R + P2, over which a mean is formed; N indicates the number of such period-means that are averaged together to form the climatological value, assuming that the N period-mean fields are separated by one year. The reference time indicates the start of the N-year climatology. N is given in octets 22-23 of the PDS. If P1 = 0 then the data averaged in the basic interval P2 are assumed to be continuous, i.e., all available data are simply averaged together. If P1 = 1 (the units of time - octet 18, code table 4 - are not relevant here) then the data averaged together in the basic interval P2 are valid only at the time (hour, minute) given in the reference time, for all the days included in the P2 period. The units of P2 are given by the contents of octet 18 and Table 4.',
     468'193':'Average of N forecasts (or initialized analyses); each product has forecast period of P1 (P1=0 for initialized analyses); products have reference times at intervals of P2, beginning at the given reference time.',
     469'194':'Average of N uninitialized analyses, starting at reference time, at intervals of P2.',
     470'195':'Average of forecast accumulations. P1 = start of accumulation period. P2 = end of accumulation period. Reference time is the start time of the first forecast, other forecasts at 24-hour intervals. Number in Ave = number of forecasts used.',
     471'196':'Average of successive forecast accumulations. P1 = start of accumulation period. P2 = end of accumulation period. Reference time is the start time of the first forecast, other forecasts at (P2 - P1) intervals. Number in Ave = number of forecasts used',
     472'197':'Average of forecast averages. P1 = start of averaging period. P2 = end of averaging period. Reference time is the start time of the first forecast, other forecasts at 24-hour intervals. Number in Ave = number of forecast used',
     473'198':'Average of successive forecast averages. P1 = start of averaging period. P2 = end of averaging period. Reference time is the start time of the first forecast, other forecasts at (P2 - P1) intervals. Number in Ave = number of forecasts used',
     474'199':'Climatological Average of N analyses, each a year apart, starting from initial time R and for the period from R+P1 to R+P2.',
     475'200':'Climatological Average of N forecasts, each a year apart, starting from initial time R and for the period from R+P1 to R+P2.',
     476'201':'Climatological Root Mean Square difference between N forecasts and their verifying analyses, each a year apart, starting with initial time R and for the period from R+P1 to R+P2.',
     477'202':'Climatological Standard Deviation of N forecasts from the mean of the same N forecasts, for forecasts one year apart. The first forecast starts wtih initial time R and is for the period from R+P1 to R+P2.',
     478'203':'Climatological Standard Deviation of N analyses from the mean of the same N analyses, for analyses one year apart. The first analyses is valid for period R+P1 to R+P2.',
     479'204':'Average of forecast accumulations. P1 = start of accumulation period. P2 = end of accumulation period. Reference time is the start time of the first forecast, other forecasts at 6-hour intervals. Number in Ave = number of forecast used',
     480'205':'Average of forecast averages. P1 = start of averaging period. P2 = end of averaging period. Reference time is the start time of the first forecast, other forecasts at 6-hour intervals. Number in Ave = number of forecast used',
     481'206':'Average of forecast accumulations. P1 = start of accumulation period. P2 = end of accumulation period. Reference time is the start time of the first forecast, other forecasts at 12-hour intervals. Number in Ave = number of forecast used',
     482'207':'Average of forecast averages. P1 = start of averaging period. P2 = end of averaging period. Reference time is the start time of the first forecast, other forecasts at 12-hour intervals. Number in Ave = number of forecast used',
     483'255':'Missing',
     484}
     485
     486table_4_11 = {
     487'0':'Reserved',
     488'1':'Successive times processed have same forecast time, start time of forecast is incremented.',
     489'2':'Successive times processed have same start time of forecast, forecast time is incremented.',
     490'3':'Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant.',
     491'4':'Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant.',
     492'5':'Floating subinterval of time between forecast time and end of overall time interval.(see Note 1)',
     493'6-191':'Reserved',
     494'192-254':'Reserved for Local Use',
     495'255':'Missing',
     496}
     497
     498table_4_15 = {
     499'0':'Data is calculated directly from the source grid with no interpolation',
     500'1':'Bilinear interpolation using the 4 source grid grid-point values surrounding the nominal grid-point',
     501'2':'Bicubic interpolation using the 4 source grid grid-point values surrounding the nominal grid-point',
     502'3':'Using the value from the source grid grid-point which is nearest to the nominal grid-point',
     503'4':'Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point',
     504'5':'Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point',
     505'6':'Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point',
     506'7-191':'Reserved',
     507'192-254':'Reserved for Local Use',
     508'255':'Missing',
     509}
     510
     511table_4_91 = {
     512'0':'Smaller than first limit',
     513'1':'Greater than second limit',
     514'2':'Between first and second limit. The range includes the first limit but not the second limit.',
     515'3':'Greater than first limit',
     516'4':'Smaller than second limit',
     517'5':'Smaller or equal first limit',
     518'6':'Greater or equal second limit',
     519'7':'Between first and second limit. The range includes the first limit and the second limit.',
     520'8':'Greater or equal first limit',
     521'9':'Smaller or equal second limit',
     522'10':'Between first and second limit. The range includes the second limit but not the first limit.',
     523'11':'Equal to first limit',
     524'12-191':'Reserved',
     525'192-254':'Reserved for Local Use',
     526'255':'Missing',
     527}
     528
     529table_4_201 = {
     530'0':'Reserved',
     531'1':'Rain',
     532'2':'Thunderstorm',
     533'3':'Freezing Rain',
     534'4':'Mixed/Ice',
     535'5':'Snow',
     536'6':'Wet Snow',
     537'7':'Mixture of Rain and Snow',
     538'8':'Ice Pellets',
     539'9':'Graupel',
     540'10':'Hail',
     541'11':'Drizzle',
     542'12':'Freezing Drizzle',
     543'13-191':'Reserved',
     544'192-254':'Reserved for Local Use',
     545'255':'Missing',
     546}
     547
     548table_4_202 = {
     549'0-191':'Reserved',
     550'192-254':'Reserved for Local Use',
     551'255':'Missing',
     552}
     553
     554table_4_203 = {
     555'0':'Clear',
     556'1':'Cumulonimbus',
     557'2':'Stratus',
     558'3':'Stratocumulus',
     559'4':'Cumulus',
     560'5':'Altostratus',
     561'6':'Nimbostratus',
     562'7':'Altocumulus',
     563'8':'Cirrostratus',
     564'9':'Cirrorcumulus',
     565'10':'Cirrus',
     566'11':'Cumulonimbus - ground-based fog beneath the lowest layer',
     567'12':'Stratus - ground-based fog beneath the lowest layer',
     568'13':'Stratocumulus - ground-based fog beneath the lowest layer',
     569'14':'Cumulus - ground-based fog beneath the lowest layer',
     570'15':'Altostratus - ground-based fog beneath the lowest layer',
     571'16':'Nimbostratus - ground-based fog beneath the lowest layer',
     572'17':'Altocumulus - ground-based fog beneath the lowest layer',
     573'18':'Cirrostratus - ground-based fog beneath the lowest layer',
     574'19':'Cirrorcumulus - ground-based fog beneath the lowest layer',
     575'20':'Cirrus - ground-based fog beneath the lowest layer',
     576'21-190':'Reserved',
     577'191':'Unknown',
     578'192-254':'Reserved for Local Use',
     579'255':'Missing',
     580}
     581
     582table_4_204 = {
     583'1':'Isolated (1-2%)',
     584'2':'Few (3-5%)',
     585'3':'Scattered (16-45%)',
     586'4':'Numerous (>45%)',
     587'5-191':'Reserved',
     588'192-254':'Reserved for Local Use',
     589'255':'Missing',
     590}
     591
     592table_4_205 = {
     593'0':'Aerosol not present',
     594'1':'Aerosol present',
     595'2-191':'Reserved',
     596'192-254':'Reserved for Local Use',
     597'255':'Missing',
     598}
     599
     600table_4_206 = {
     601'0':'Not Present',
     602'1':'Present',
     603'2-191':'Reserved',
     604'192-254':'Reserved for Local Use',
     605'255':'Missing',
     606}
     607
     608table_4_207 = {
     609'1':'Light',
     610'2':'Moderate',
     611'3':'Severe',
     612'4':'Trace',
     613'5':'Heavy',
     614'6-191':'Reserved',
     615'192-254':'Reserved for Local Use',
     616'255':'Missing',
     617}
     618
     619table_4_208 = {
     620'1':'Light',
     621'2':'Moderate',
     622'3':'Severe',
     623'4':'Extreme',
     624'5-191':'Reserved',
     625'192-254':'Reserved for Local Use',
     626'255':'Missing',
     627}
     628
     629table_4_209 = {
     630'0':'Reserved',
     631'1':'Stable',
     632'2':'Mechanically-Driven Turbulence',
     633'3':'Force Convection',
     634'4':'Free Convection',
     635'5-191':'Reserved',
     636'192-254':'Reserved for Local Use',
     637'255':'Missing',
     638}
     639
     640table_4_210 = {
     641'0':'Contrail Not Present',
     642'1':'Contrail Present',
     643'2-191':'Reserved',
     644'192-254':'Reserved for Local Use',
     645'255':'Missing',
     646}
     647
     648table_4_211 = {
     649'0':'Low Bypass',
     650'1':'High Bypass',
     651'2':'Non-Bypass',
     652'3-191':'Reserved',
     653'192-254':'Reserved for Local Use',
     654'255':'Missing',
     655}
     656
     657table_4_212 = {
     658'0':'Reserved',
     659'1':'Urban Land',
     660'2':'Agricultural',
     661'3':'Range Land',
     662'4':'Deciduous Forest',
     663'5':'Coniferous Forest',
     664'6':'Forest/Wetland',
     665'7':'Water',
     666'8':'Wetlands',
     667'9':'Desert',
     668'10':'Tundra',
     669'11':'Ice',
     670'12':'Tropical Forest',
     671'13':'Savannah',
     672'14-191':'Reserved',
     673'192-254':'Reserved for Local Use',
     674'255':'Missing',
     675}
     676
     677table_4_213 = {
     678'0':'Reserved',
     679'1':'Sand',
     680'2':'Loamy Sand',
     681'3':'Sandy Loam',
     682'4':'Silt Loam',
     683'5':'Organic',
     684'6':'Sandy Clay Loam',
     685'7':'Silt Clay Loam',
     686'8':'Clay Loam',
     687'9':'Sandy Clay',
     688'10':'Silty Clay',
     689'11':'Clay',
     690'12-191':'Reserved',
     691'192-254':'Reserved for Local Use',
     692'255':'Missing',
     693}
     694
     695table_4_215 = {
     696'0-49':'Reserved',
     697'50':'No-Snow/No-Cloud',
     698'51-99':'Reserved',
     699'100':'Clouds',
     700'101-249':'Reserved',
     701'250':'Snow',
     702'192-254':'Reserved for Local Use',
     703'255':'Missing',
     704}
     705
     706table_4_216 = {
     707'0-90':'Elevation in increments of 100 m',
     708'91-253':'Reserved',
     709'254':'Clouds',
     710'255':'Missing',
     711}
     712
     713table_4_217 = {
     714'0':'Clear over water',
     715'1':'Clear over land',
     716'2':'Cloud',
     717'3':'No data',
     718'4-191':'Reserved',
     719'192-254':'Reserved for Local Use',
     720'255':'Missing',
     721}
     722
     723table_4_218 = {
     724'0':'No Scene Identified',
     725'1':'Green Needle-Leafed Forest',
     726'2':'Green Broad-Leafed Forest',
     727'3':'Deciduous Needle-Leafed Forest',
     728'4':'Deciduous Broad-Leafed Forest',
     729'5':'Deciduous Mixed Forest',
     730'6':'Closed Shrub-Land',
     731'7':'Open Shrub-Land',
     732'8':'Woody Savannah',
     733'9':'Savannah',
     734'10':'Grassland',
     735'11':'Permanent Wetland',
     736'12':'Cropland',
     737'13':'Urban',
     738'14':'Vegetation / Crops',
     739'15':'Permanent Snow / Ice',
     740'16':'Barren Desert',
     741'17':'Water Bodies',
     742'18':'Tundra',
     743'19':'Warm Liquid Water Cloud',
     744'20':'Supercooled Liquid Water Cloud',
     745'21':'Mixed Phase Cloud',
     746'22':'Optically Thin Ice Cloud',
     747'23':'Optically Thick Ice Cloud',
     748'24':'Multi-Layeblack Cloud',
     749'25-96':'Reserved',
     750'97':'Snow / Ice on Land',
     751'98':'Snow / Ice on Water',
     752'99':'Sun-Glint',
     753'100':'General Cloud',
     754'101':'Low Cloud / Fog / Stratus',
     755'102':'Low Cloud / Stratocumulus',
     756'103':'Low Cloud / Unknown Type',
     757'104':'Medium Cloud / Nimbostratus',
     758'105':'Medium Cloud / Altostratus',
     759'106':'Medium Cloud / Unknown Type',
     760'107':'High Cloud / Cumulus',
     761'108':'High Cloud / Cirrus',
     762'109':'High Cloud / Unknown Type',
     763'110':'Unknown Cloud Type',
     764'111':'Single layer water cloud',
     765'112':'Single layer ice cloud',
     766'113-191':'Reserved',
     767'192-254':'Reserved for Local Use',
     768'255':'Missing',
     769}
     770
     771table_4_222 = {
     772'0':'No',
     773'1':'Yes',
     774'2-191':'Reserved',
     775'192-254':'Reserved for Local Use',
     776'255':'Missing',
     777}
     778
     779table_4_223 = {
     780'0':'No Fire Detected',
     781'1':'Possible Fire Detected',
     782'2':'Probable Fire Detected',
     783'3':'Missing',
     784'4-191':'Reserved',
     785'192-254':'Reserved for Local Use',
     786'255':'Missing',
     787}
     788
     789table_4_224 = {
     790'0':'No Risk Area',
     791'1':'Reserved',
     792'2':'General Thunderstorm Risk Area',
     793'3':'Reserved',
     794'4':'Slight Risk Area',
     795'5':'Reserved',
     796'6':'Moderate Risk Area',
     797'7':'Reserved',
     798'8':'High Risk Area',
     799'9-10':'Reserved',
     800'11':'Dry Thunderstorm (Dry Lightning) Risk Area',
     801'12-13':'Reserved',
     802'14':'Critical Risk Area',
     803'15-17':'Reserved',
     804'18':'Extreamly Critical Risk Area',
     805'19-191':'Reserved',
     806'192-254':'Reserved for Local Use',
     807'255':'Missing',
     808}
     809
     810table_4_227 = {
     811'1':'General',
     812'2':'Convective',
     813'3':'Stratiform',
     814'4':'Freezing',
     815'5-191':'Reserved',
     816'192-254':'Reserved for Local Use',
     817'255':'Missing',
     818}
     819
     820table_4_228 = {
     821'1':'Trace',
     822'2':'Light',
     823'3':'Moderate',
     824'4':'Severe',
     825'6-191':'Reserved',
     826'192-254':'Reserved for Local Use',
     827'255':'Missing',
     828}
     829
     830table_4_233 = {
     831'0':['Ozone','O3'],
     832'1':['Water Vapour','H2O'],
     833'2':['Methane','CH4'],
     834'3':['Carbon Dioxide','CO2'],
     835'4':['Carbon Monoxide','CO'],
     836'5':['Nitrogen Dioxide','NO2'],
     837'6':['Nitrous Oxide','N2O'],
     838'7':['Formaldehyde','HCHO'],
     839'8':['Sulphur Dioxide','SO2'],
     840'9':['Ammonia','NH3'],
     841'10':['Ammonium','NH4+'],
     842'11':['Nitrogen Monoxide','NO'],
     843'12':['Atomic Oxygen','O'],
     844'13':['Nitrate Radical','NO3'],
     845'14':['Hydroperoxyl Radical','HO2'],
     846'15':['Dinitrogen Pentoxide','H2O5'],
     847'16':['Nitrous Acid','HONO'],
     848'17':['Nitric Acid','HNO3'],
     849'18':['Peroxynitric Acid','HO2NO2'],
     850'19':['Hydrogen Peroxide','H2O2'],
     851'20':['Molecular Hydrogen','H'],
     852'21':['Atomic Nitrogen','N'],
     853'22':['Sulphate','SO42-'],
     854'23':['Radon','Rn'],
     855'24':['Elemental Mercury','Hg(O)'],
     856'25':['Divalent Mercury','Hg2+'],
     857'26':['Atomic Chlorine','Cl'],
     858'27':['Chlorine Monoxide','ClO'],
     859'28':['Dichlorine Peroxide','Cl2O2'],
     860'29':['Hypochlorous Acid','HClO'],
     861'30':['Chlorine Nitrate','ClONO2'],
     862'31':['Chlorine Dioxide','ClO2'],
     863'32':['Atomic Bromide','Br'],
     864'33':['Bromine Monoxide','BrO'],
     865'34':['Bromine Chloride','BrCl'],
     866'35':['Hydrogen Bromide','HBr'],
     867'36':['Hypobromous Acid','HBrO'],
     868'37':['Bromine Nitrate','BrONO2'],
     869'38':['Oxygen','O2'],
     870'39-9999':['Reserved','unknown'],
     871'10000':['Hydroxyl Radical','OH'],
     872'10001':['Methyl Peroxy Radical','CH3O2'],
     873'10002':['Methyl Hydroperoxide','CH3O2H'],
     874'10003':['Reserved','unknown'],
     875'10004':['Methanol','CH3OH'],
     876'10005':['Formic Acid','CH3OOH'],
     877'10006':['Hydrogen Cyanide','HCN'],
     878'10007':['Aceto Nitrile','CH3CN'],
     879'10008':['Ethane','C2H6'],
     880'10009':['Ethene (= Ethylene)','C2H4'],
     881'10010':['Ethyne (= Acetylene)','C2H2'],
     882'10011':['Ethanol','C2H5OH'],
     883'10012':['Acetic Acid','C2H5OOH'],
     884'10013':['Peroxyacetyl Nitrate','CH3C(O)OONO2'],
     885'10014':['Propane','C3H8'],
     886'10015':['Propene','C3H6'],
     887'10016':['Butanes','C4H10'],
     888'10017':['Isoprene','C5H10'],
     889'10018':['Alpha Pinene','C10H16'],
     890'10019':['Beta Pinene','C10H16'],
     891'10020':['Limonene','C10H16'],
     892'10021':['Benzene','C6H6'],
     893'10022':['Toluene','C7H8'],
     894'10023':['Xylene','C8H10'],
     895'10024-10499':['Reserved','unknown'],
     896'10500':['Dimethyl Sulphide','CH3SCH3'],
     897'10501-20000':['Reserved','unknown'],
     898'20001':['Hydrogen Chloride','HCL'],
     899'20002':['CFC-11','unknown'],
     900'20003':['CFC-12','unknown'],
     901'20004':['CFC-113','unknown'],
     902'20005':['CFC-113a','unknown'],
     903'20006':['CFC-114','unknown'],
     904'20007':['CFC-115','unknown'],
     905'20008':['HCFC-22','unknown'],
     906'20009':['HCFC-141b','unknown'],
     907'20010':['HCFC-142b','unknown'],
     908'20011':['Halon-1202','unknown'],
     909'20012':['Halon-1211','unknown'],
     910'20013':['Halon-1301','unknown'],
     911'20014':['Halon-2402','unknown'],
     912'20015':['Methyl Chloride (HCC-40)','unknown'],
     913'20016':['Carbon Tetrachloride (HCC-10)','unknown'],
     914'20017':['HCC-140a','CH3CCl3'],
     915'20018':['Methyl Bromide (HBC-40B1)','unknown'],
     916'20019':['Hexachlorocyclohexane (HCH)','unknown'],
     917'20020':['Alpha Hexachlorocyclohexane','unknown'],
     918'20021':['Hexachlorobiphenyl (PCB-153)','unknown'],
     919'20022-29999':['Reserved','unknown'],
     920'30000':['Radioactive Pollutant (Tracer, defined by originating centre)','unknown'],
     921'30001-50000':['Reserved','unknown'],
     922'60000':['HOx Radical (OH+HO2)','unknown'],
     923'60001':['Total Inorganic and Organic Peroxy Radicals (HO2+RO2)','RO2'],
     924'60002':['Passive Ozone','unknown'],
     925'60003':['NOx Expressed As Nitrogen','NOx'],
     926'60004':['All Nitrogen Oxides (NOy) Expressed As Nitrogen','NOy'],
     927'60005':['Total Inorganic Chlorine','Clx'],
     928'60006':['Total Inorganic Bromine','Brx'],
     929'60007':['Total Inorganic Chlorine Except HCl, ClONO2: ClOx','unknown'],
     930'60008':['Total Inorganic Bromine Except Hbr, BrONO2:BrOx','unknown'],
     931'60009':['Lumped Alkanes','unknown'],
     932'60010':['Lumped Alkenes','unknown'],
     933'60011':['Lumped Aromatic Coumpounds','unknown'],
     934'60012':['Lumped Terpenes','unknown'],
     935'60013':['Non-Methane Volatile Organic Compounds Expressed as Carbon','NMVOC'],
     936'60014':['Anthropogenic Non-Methane Volatile Organic Compounds Expressed as Carbon','aNMVOC'],
     937'60015':['Biogenic Non-Methane Volatile Organic Compounds Expressed as Carbon','bNMVOC'],
     938'60016':['Lumped Oxygenated Hydrocarbons','OVOC'],
     939'60017-61999':['Reserved','unknown'],
     940'62000':['Total Aerosol','unknown'],
     941'62001':['Dust Dry','unknown'],
     942'62002':['water In Ambient','unknown'],
     943'62003':['Ammonium Dry','unknown'],
     944'62004':['Nitrate Dry','unknown'],
     945'62005':['Nitric Acid Trihydrate','unknown'],
     946'62006':['Sulphate Dry','unknown'],
     947'62007':['Mercury Dry','unknown'],
     948'62008':['Sea Salt Dry','unknown'],
     949'62009':['Black Carbon Dry','unknown'],
     950'62010':['Particulate Organic Matter Dry','unknown'],
     951'62011':['Primary Particulate Organic Matter Dry','unknown'],
     952'62012':['Secondary Particulate Organic Matter Dry','unknown'],
     953'62013':['Black carbon hydrophilic dry','unknown'],
     954'62014':['Black carbon hydrophobic dry','unknown'],
     955'62015':['Particulate organic matter hydrophilic dry','unknown'],
     956'62016':['Particulate organic matter hydrophobic dry','unknown'],
     957'62017':['Nitrate hydrophilic dry','unknown'],
     958'62018':['Nitrate hydrophobic dry','unknown'],
     959'62019':['Reserved','unknown'],
     960'62020':['Smoke - high absorption','unknown'],
     961'62021':['Smoke - low absorption','unknown'],
     962'62022':['Aerosol - high absorption','unknown'],
     963'62023':['Aerosol - low absorption','unknown'],
     964'62024':['Reserved','unknown'],
     965'62025':['Volcanic ash','unknown'],
     966'62036':['Brown Carbon Dry','unknown'],
     967'62037-65534':['Reserved','unknown'],
     968'65535':['Missing','unknown'],
     969}
     970
     971table_4_243 = {
     972'0':'Reserved',
     973'1':'Evergreen broadleaved forest',
     974'2':'Deciduous broadleaved closed forest',
     975'3':'Deciduous broadleaved open forest',
     976'4':'Evergreen needle-leaf forest',
     977'5':'Deciduous needle-leaf forest',
     978'6':'Mixed leaf trees',
     979'7':'Fresh water flooded trees',
     980'8':'Saline water flooded trees',
     981'9':'Mosaic tree/natural vegetation',
     982'10':'Burnt tree cover',
     983'11':'Evergreen shurbs closed-open',
     984'12':'Deciduous shurbs closed-open',
     985'13':'Herbaceous vegetation closed-open',
     986'14':'Sparse herbaceous or grass',
     987'15':'Flooded shurbs or herbaceous',
     988'16':'Cultivated and managed areas',
     989'17':'Mosaic crop/tree/natural vegetation',
     990'18':'Mosaic crop/shrub/grass',
     991'19':'Bare areas',
     992'20':'Water',
     993'21':'Snow and ice',
     994'22':'Artificial surface',
     995'23':'Ocean',
     996'24':'Irrigated croplands',
     997'25':'Rain fed croplands',
     998'26':'Mosaic cropland (50-70%)-vegetation (20-50%)',
     999'27':'Mosaic vegetation (50-70%)-cropland (20-50%)',
    1000'28':'Closed broadleaved evergreen forest',
    1001'29':'Closed needle-leaved evergreen forest',
    1002'30':'Open needle-leaved deciduous forest',
    1003'31':'Mixed broadleaved and needle-leave forest',
    1004'32':'Mosaic shrubland (50-70%)-grassland (20-50%)',
    1005'33':'Mosaic grassland (50-70%)-shrubland (20-50%)',
    1006'34':'Closed to open shrubland',
    1007'35':'Sparse vegetation',
    1008'36':'Closed to open forest regularly flooded',
    1009'37':'Closed forest or shrubland permanently flooded',
    1010'38':'Closed to open grassland regularly flooded',
    1011'39':'Undefined',
    1012'40-191':'Reserved',
    1013'192-254':'Reserved for Local Use',
    1014'255':'Missing',
    1015}
    1016
    1017table_4_246 = {
    1018'0':'No thunderstorm occurrence',
    1019'1':'Weak thunderstorm',
    1020'2':'Moderate thunderstorm',
    1021'3':'Severe thunderstorm',
    1022'4-191':'Reserved',
    1023'192-254':'Reserved for Local Use',
    1024'255':'Missing',
    1025}
    1026
    1027table_4_247 = {
    1028'0':'No precipitation occurrence',
    1029'1':'Light precipitation',
    1030'2':'Moderate precipitation',
    1031'3':'Heavy precipitation',
    1032'4-191':'Reserved',
    1033'192-254':'Reserved for Local Use',
    1034'255':'Missing',
    1035}
    1036
    1037table_4_248 = {
    1038'0':'Nearest forecast or analysis time to specified local time',
    1039'1':'Interpolated to be valid at the specified local time',
    1040'2-191':'Reserved',
    1041'192-254':'Reserved for Local Use',
    1042'255':'Missing',
    1043}
    1044
    1045table_4_249 = {
    1046'1':'Showers',
    1047'2':'Intermittent',
    1048'3':'Continuous',
    1049'4-191':'Reserved',
    1050'192-254':'Reserved for Local Use',
    1051'255':'Missing',
    1052}
    1053
    1054table_4_250 = {
    1055'0':'Reserved',
    1056'1':'South-West',
    1057'2':'South',
    1058'3':'South-East',
    1059'4':'West',
    1060'5':'No direction',
    1061'6':'East',
    1062'7':'North-West',
    1063'8':'North',
    1064'9':'North-East',
    1065'10-191':'Reserved',
    1066'192-254':'Reserved for Local Use',
    1067'255':'Missing',
    1068}
    1069
    1070table_scale_time_hours = {
    1071'0': 60.,
    1072'1': 1.,
    1073'2': float(1.0/24.0),
    1074'3': float(1.0/720.0),
    1075'4': float(1.0/(365.0*24.0)),
    1076'5': float(1.0/(10.0*365.0*24.0)),
    1077'6': float(1.0/(30.0*365.0*24.0)),
    1078'7': float(1.0/(100.0*365.0*24.0)),
    1079'8': 1.,
    1080'9': 1.,
    1081'10': 3.,
    1082'11': 6.,
    1083'12': 12.,
    1084'13': 3600.,
    1085'14-255': 1.}
    1086
    1087# ----------------------------------------------------------------------------------------
    1088# Source: https://github.com/NOAA-EMC/NCEPLIBS-wgrib2/blob/develop/wgrib2/Level.c
    1089#
    1090# The dictionary key is the Section 4.5 coded value.  The value is a list where the
    1091# index 0 is the string to use for level and index 1 is the string for a layer.
    1092# ----------------------------------------------------------------------------------------
    1093table_wgrib2_level_string = {
    1094'0': ["reserved","reserved"],
    1095'1': ["surface","reserved"],
    1096'2': ["cloud base","reserved"],
    1097'3': ["cloud top","reserved"],
    1098'4': ["0C isotherm","reserved"],
    1099'5': ["level of adiabatic condensation from sfc","reserved"],
    1100'6': ["max wind","reserved"],
    1101'7': ["tropopause","reserved"],
    1102'8': ["top of atmosphere","reserved"],
    1103'9': ["sea bottom","reserved"],
    1104'10': ["entire atmosphere","reserved"],
    1105'11': ["cumulonimbus base","reserved"],
    1106'12': ["cumulonimbus top","reserved"],
    1107'13': ["lowest level %g%% integrated cloud cover","reserved"],
    1108'14': ["level of free convection","reserved"],
    1109'15': ["convection condensation level","reserved"],
    1110'16': ["level of neutral buoyancy","reserved"],
    1111'17': ["reserved","reserved"],
    1112'18': ["reserved","reserved"],
    1113'19': ["reserved","reserved"],
    1114'20': ["%g K level","reserved"],
    1115'21': ["lowest level > %g kg/m^3","reserved"],
    1116'22': ["highest level > %g kg/m^3","reserved"],
    1117'23': ["lowest level > %g Bq/m^3","reserved"],
    1118'24': ["highest level > %g Bg/m^3","reserved"],
    1119'25': ["reserved","reserved"],
    1120'26': ["reserved","reserved"],
    1121'27': ["reserved","reserved"],
    1122'28': ["reserved","reserved"],
    1123'29': ["reserved","reserved"],
    1124'30': ["reserved","reserved"],
    1125'31': ["reserved","reserved"],
    1126'32': ["reserved","reserved"],
    1127'33': ["reserved","reserved"],
    1128'34': ["reserved","reserved"],
    1129'35': ["reserved","reserved"],
    1130'36': ["reserved","reserved"],
    1131'37': ["reserved","reserved"],
    1132'38': ["reserved","reserved"],
    1133'39': ["reserved","reserved"],
    1134'40': ["reserved","reserved"],
    1135'41': ["reserved","reserved"],
    1136'42': ["reserved","reserved"],
    1137'43': ["reserved","reserved"],
    1138'44': ["reserved","reserved"],
    1139'45': ["reserved","reserved"],
    1140'46': ["reserved","reserved"],
    1141'47': ["reserved","reserved"],
    1142'48': ["reserved","reserved"],
    1143'49': ["reserved","reserved"],
    1144'50': ["reserved","reserved"],
    1145'51': ["reserved","reserved"],
    1146'52': ["reserved","reserved"],
    1147'53': ["reserved","reserved"],
    1148'54': ["reserved","reserved"],
    1149'55': ["reserved","reserved"],
    1150'56': ["reserved","reserved"],
    1151'57': ["reserved","reserved"],
    1152'58': ["reserved","reserved"],
    1153'59': ["reserved","reserved"],
    1154'60': ["reserved","reserved"],
    1155'61': ["reserved","reserved"],
    1156'62': ["reserved","reserved"],
    1157'63': ["reserved","reserved"],
    1158'64': ["reserved","reserved"],
    1159'65': ["reserved","reserved"],
    1160'66': ["reserved","reserved"],
    1161'67': ["reserved","reserved"],
    1162'68': ["reserved","reserved"],
    1163'69': ["reserved","reserved"],
    1164'70': ["reserved","reserved"],
    1165'71': ["reserved","reserved"],
    1166'72': ["reserved","reserved"],
    1167'73': ["reserved","reserved"],
    1168'74': ["reserved","reserved"],
    1169'75': ["reserved","reserved"],
    1170'76': ["reserved","reserved"],
    1171'77': ["reserved","reserved"],
    1172'78': ["reserved","reserved"],
    1173'79': ["reserved","reserved"],
    1174'80': ["reserved","reserved"],
    1175'81': ["reserved","reserved"],
    1176'82': ["reserved","reserved"],
    1177'83': ["reserved","reserved"],
    1178'84': ["reserved","reserved"],
    1179'85': ["reserved","reserved"],
    1180'86': ["reserved","reserved"],
    1181'87': ["reserved","reserved"],
    1182'88': ["reserved","reserved"],
    1183'89': ["reserved","reserved"],
    1184'90': ["reserved","reserved"],
    1185'91': ["reserved","reserved"],
    1186'92': ["reserved","reserved"],
    1187'93': ["reserved","reserved"],
    1188'94': ["reserved","reserved"],
    1189'95': ["reserved","reserved"],
    1190'96': ["reserved","reserved"],
    1191'97': ["reserved","reserved"],
    1192'98': ["reserved","reserved"],
    1193'99': ["reserved","reserved"],
    1194'100': ["%g mb","%g-%g mb"],
    1195'101': ["mean sea level","reserved"],
    1196'102': ["%g m above mean sea level","%g-%g m above mean sea level"],
    1197'103': ["%g m above ground","%g-%g m above ground"],
    1198'104': ["%g sigma level","%g-%g sigma layer"],
    1199'105': ["%g hybrid level","%g-%g hybrid layer"],
    1200'106': ["%g m underground","%g-%g m underground"],
    1201'107': ["%g K isentropic level","%g-%g K isentropic layer"],
    1202'108': ["%g mb above ground","%g-%g mb above ground"],
    1203'109': ["PV=%g (Km^2/kg/s) surface","reserved"],
    1204'110': ["reserved","reserved"],
    1205'111': ["%g Eta level","%g-%g Eta layer"],
    1206'112': ["reserved","reserved"],
    1207'113': ["%g logarithmic hybrid level","reserved"],
    1208'114': ["snow level","reserved"],
    1209'115': ["%g sigma height level","%g-%g sigma heigh layer"],
    1210'116': ["reserved","reserved"],
    1211'117': ["mixed layer depth","reserved"],
    1212'118': ["%g hybrid height level","%g-%g hybrid height layer"],
    1213'119': ["%g hybrid pressure level","%g-%g hybrid pressure layer"],
    1214'120': ["reserved","reserved"],
    1215'121': ["reserved","reserved"],
    1216'122': ["reserved","reserved"],
    1217'123': ["reserved","reserved"],
    1218'124': ["reserved","reserved"],
    1219'125': ["reserved","reserved"],
    1220'126': ["reserved","reserved"],
    1221'127': ["reserved","reserved"],
    1222'128': ["reserved","reserved"],
    1223'129': ["reserved","reserved"],
    1224'130': ["reserved","reserved"],
    1225'131': ["reserved","reserved"],
    1226'132': ["reserved","reserved"],
    1227'133': ["reserved","reserved"],
    1228'134': ["reserved","reserved"],
    1229'135': ["reserved","reserved"],
    1230'136': ["reserved","reserved"],
    1231'137': ["reserved","reserved"],
    1232'138': ["reserved","reserved"],
    1233'139': ["reserved","reserved"],
    1234'140': ["reserved","reserved"],
    1235'141': ["reserved","reserved"],
    1236'142': ["reserved","reserved"],
    1237'143': ["reserved","reserved"],
    1238'144': ["reserved","reserved"],
    1239'145': ["reserved","reserved"],
    1240'146': ["reserved","reserved"],
    1241'147': ["reserved","reserved"],
    1242'148': ["reserved","reserved"],
    1243'149': ["reserved","reserved"],
    1244'150': ["%g generalized vertical height coordinate","reserved"],
    1245'151': ["soil level %g","reserved"],
    1246'152': ["reserved","reserved"],
    1247'153': ["reserved","reserved"],
    1248'154': ["reserved","reserved"],
    1249'155': ["reserved","reserved"],
    1250'156': ["reserved","reserved"],
    1251'157': ["reserved","reserved"],
    1252'158': ["reserved","reserved"],
    1253'159': ["reserved","reserved"],
    1254'160': ["%g m below sea level","%g-%g m below sea level"],
    1255'161': ["%g m below water surface","%g-%g m ocean layer"],
    1256'162': ["lake or river bottom","reserved"],
    1257'163': ["bottom of sediment layer","reserved"],
    1258'164': ["bottom of thermally active sediment layer","reserved"],
    1259'165': ["bottom of sediment layer penetrated by thermal wave","reserved"],
    1260'166': ["maxing layer","reserved"],
    1261'167': ["bottom of root zone","reserved"],
    1262'168': ["reserved","reserved"],
    1263'169': ["reserved","reserved"],
    1264'170': ["reserved","reserved"],
    1265'171': ["reserved","reserved"],
    1266'172': ["reserved","reserved"],
    1267'173': ["reserved","reserved"],
    1268'174': ["top surface of ice on sea, lake or river","reserved"],
    1269'175': ["top surface of ice, und snow on sea, lake or river","reserved"],
    1270'176': ["bottom surface ice on sea, lake or river","reserved"],
    1271'177': ["deep soil","reserved"],
    1272'178': ["reserved","reserved"],
    1273'179': ["top surface of glacier ice and inland ice","reserved"],
    1274'180': ["deep inland or glacier ice","reserved"],
    1275'181': ["grid tile land fraction as a model surface","reserved"],
    1276'182': ["grid tile water fraction as a model surface","reserved"],
    1277'183': ["grid tile ice fraction on sea, lake or river as a model surface","reserved"],
    1278'184': ["grid tile glacier ice and inland ice fraction as a model surface","reserved"],
    1279'185': ["reserved","reserved"],
    1280'186': ["reserved","reserved"],
    1281'187': ["reserved","reserved"],
    1282'188': ["reserved","reserved"],
    1283'189': ["reserved","reserved"],
    1284'190': ["reserved","reserved"],
    1285'191': ["reserved","reserved"],
    1286'192': ["reserved","reserved"],
    1287'193': ["reserved","reserved"],
    1288'194': ["reserved","reserved"],
    1289'195': ["reserved","reserved"],
    1290'196': ["reserved","reserved"],
    1291'197': ["reserved","reserved"],
    1292'198': ["reserved","reserved"],
    1293'199': ["reserved","reserved"],
    1294'200': ["entire atmosphere (considered as a single layer)","reserved"],
    1295'201': ["entire ocean (considered as a single layer)","reserved"],
    1296'202': ["reserved","reserved"],
    1297'203': ["reserved","reserved"],
    1298'204': ["highest tropospheric freezing level","reserved"],
    1299'205': ["reserved","reserved"],
    1300'206': ["grid scale cloud bottom level","reserved"],
    1301'207': ["grid scale cloud top level","reserved"],
    1302'208': ["reserved","reserved"],
    1303'209': ["boundary layer cloud bottom level","reserved"],
    1304'210': ["boundary layer cloud top level","reserved"],
    1305'211': ["boundary layer cloud layer","reserved"],
    1306'212': ["low cloud bottom level","reserved"],
    1307'213': ["low cloud top level","reserved"],
    1308'214': ["low cloud layer","reserved"],
    1309'215': ["cloud ceiling","reserved"],
    1310'216': ["reserved","reserved"],
    1311'217': ["reserved","reserved"],
    1312'218': ["reserved","reserved"],
    1313'219': ["reserved","reserved"],
    1314'220': ["planetary boundary layer","reserved"],
    1315'221': ["layer between two hybrid levels","reserved"],
    1316'222': ["middle cloud bottom level","reserved"],
    1317'223': ["middle cloud top level","reserved"],
    1318'224': ["middle cloud layer","reserved"],
    1319'225': ["reserved","reserved"],
    1320'226': ["reserved","reserved"],
    1321'227': ["reserved","reserved"],
    1322'228': ["reserved","reserved"],
    1323'229': ["reserved","reserved"],
    1324'230': ["reserved","reserved"],
    1325'231': ["reserved","reserved"],
    1326'232': ["high cloud bottom level","reserved"],
    1327'233': ["high cloud top level","reserved"],
    1328'234': ["high cloud layer","reserved"],
    1329'235': ["%gC ocean isotherm","%g-%gC ocean isotherm layer"],
    1330'236': ["layer between two depths below ocean surface","%g-%g m ocean layer"],
    1331'237': ["bottom of ocean mixed layer","reserved"],
    1332'238': ["bottom of ocean isothermal layer","reserved"],
    1333'239': ["layer ocean surface and 26C ocean isothermal level","reserved"],
    1334'240': ["ocean mixed layer","reserved"],
    1335'241': ["%g in sequence","reserved"],
    1336'242': ["convective cloud bottom level","reserved"],
    1337'243': ["convective cloud top level","reserved"],
    1338'244': ["convective cloud layer","reserved"],
    1339'245': ["lowest level of the wet bulb zero","reserved"],
    1340'246': ["maximum equivalent potential temperature level","reserved"],
    1341'247': ["equilibrium level","reserved"],
    1342'248': ["shallow convective cloud bottom level","reserved"],
    1343'249': ["shallow convective cloud top level","reserved"],
    1344'250': ["reserved","reserved"],
    1345'251': ["deep convective cloud bottom level","reserved"],
    1346'252': ["deep convective cloud top level","reserved"],
    1347'253': ["lowest bottom level of supercooled liquid water layer","reserved"],
    1348'254': ["highest top level of supercooled liquid water layer","reserved"],
    1349'255': ["missing","reserved"],
    1350}

table_4_1_0 = {'0': 'Temperature', '1': 'Moisture', '2': 'Momentum', '3': 'Mass', '4': 'Short-wave radiation', '5': 'Long-wave radiation', '6': 'Cloud', '7': 'Thermodynamic Stability indicies', '8': 'Kinematic Stability indicies', '9': 'Temperature Probabilities*', '10': 'Moisture Probabilities*', '11': 'Momentum Probabilities*', '12': 'Mass Probabilities*', '13': 'Aerosols', '14': 'Trace gases', '15': 'Radar', '16': 'Forecast Radar Imagery', '17': 'Electrodynamics', '18': 'Nuclear/radiology', '19': 'Physical atmospheric properties', '20': 'Atmospheric chemical Constituents', '21-189': 'Reserved', '190': 'CCITT IA5 string', '191': 'Miscellaneous', '192-254': 'Reserved for Local Use', '192': 'Covariance', '255': 'Missing'}
table_4_1_1 = {'0': 'Hydrology basic products', '1': 'Hydrology probabilities', '2': 'Inland water and sediment properties', '3-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_1_2 = {'0': 'Vegetation/Biomass', '1': 'Agricultural/Aquacultural Special Products', '2': 'Transportation-related Products', '3': 'Soil Products', '4': 'Fire Weather Products', '5': 'Land Surface Products', '6-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_1_3 = {'0': 'Image format products', '1': 'Quantitative products', '2': 'Cloud Properties', '3': 'Flight Rules Conditions', '4': 'Volcanic Ash', '5': 'Sea-surface Temperature', '6': 'Solar Radiation', '7-191': 'Reserved', '192-254': 'Reserved for Local Use', '192': 'Forecast Satellite Imagery', '255': 'Missing'}
table_4_1_4 = {'0': 'Temperature', '1': 'Momentum', '2': 'Charged Particle Mass and Number', '3': 'Electric and Magnetic Fields', '4': 'Energetic Particles', '5': 'Waves', '6': 'Solar Electromagnetic Emissions', '7': 'Terrestrial Electromagnetic Emissions', '8': 'Imagery', '9': 'Ion-Neutral Coupling', '10': 'Space Weather Indices', '11-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_1_10 = {'0': 'Waves', '1': 'Currents', '2': 'Ice', '3': 'Surface Properties', '4': 'Sub-surface Properties', '5-190': 'Reserved', '191': 'Miscellaneous', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_1_20 = {'0': 'Health Indicators', '1': 'Epidemiology', '2': 'Socioeconomic indicators', '3-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_0 = {'0': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time. (see Template 4.0)', '1': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time. (see Template 4.1)', '2': 'Derived forecasts based on all ensemble members at a horizontal level or in a horizontal layer at a point in time. (see Template 4.2)', '3': 'Derived forecasts based on a cluster of ensemble members over a rectangular area at a horizontal level or in a horizontal layer at a point in time. (see Template 4.3)', '4': 'Derived forecasts based on a cluster of ensemble members over a circular area at a horizontal level or in a horizontal layer at a point in time. (see Template 4.4)', '5': 'Probability forecasts at a horizontal level or in a horizontal layer at a point in time. (see Template 4.5)', '6': 'Percentile forecasts at a horizontal level or in a horizontal layer at a point in time. (see Template 4.6)', '7': 'Analysis or forecast error at a horizontal level or in a horizontal layer at a point in time. (see Template 4.7)', '8': 'Average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.8)', '9': 'Probability forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.9)', '10': 'Percentile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.10)', '11': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.11)', '12': 'Derived forecasts based on all ensemble members at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.12)', '13': 'Derived forecasts based on a cluster of ensemble members over a rectangular area at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.13)', '14': 'Derived forecasts based on a cluster of ensemble members over a circular area at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.14)', '15': 'Average, accumulation, extreme values or other statistically-processed values over a spatial area at a horizontal level or in a horizontal layer at a point in time. (see Template 4.15)', '16-19': 'Reserved', '20': 'Radar product (see Template 4.20)', '21-29': 'Reserved', '30': 'Satellite product (see Template 4.30) NOTE: This template is deprecated. Template 4.31 should be used instead.', '31': 'Satellite product (see Template 4.31)', '32': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for simulate (synthetic) satellite data (see Template 4.32)', '33': 'Individual Ensemble Forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for simulated (synthetic) satellite data (see Template 4.33)', '34': 'Individual Ensemble Forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous interval for simulated (synthetic) satellite data(see Template 4.34)', '35': 'Satellite product with or without associated quality values (see Template 4.35)', '36-39': 'Reserved', '40': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents. (see Template 4.40)', '41': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents. (see Template 4.41)', '42': 'Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents. (see Template 4.42)', '43': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval for atmospheric chemical constituents. (see Template 4.43)', '44': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for aerosol. (see Template 4.44)', '45': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval for aerosol. (see Template 4.45)', '46': 'Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol. (see Template 4.46)', '47': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval for aerosol. (see Template 4.47)', '48': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol. (see Template 4.48)', '49': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol. (see Template 4.49)', '50': 'Reserved', '51': 'Categorical forecast at a horizontal level or in a horizontal layer at a point in time. (see Template 4.51)', '52': 'Reserved', '53': 'Partitioned parameters at a horizontal level or horizontal layer at a point in time. (see Template 4.53)', '54': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for partitioned parameters. (see Template 4.54)', '55': 'Spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time (see Template 4.55)', '56': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (DEPRECATED) (see Template 4.56)', '57': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents based on a distribution function (see Template 4.57)', '58': 'Individual Ensemble Forecast, Control and Perturbed, at a horizontal level or in a horizontal layer at a point in time interval for Atmospheric Chemical Constituents based on a distribution function (see Template 4.58)', '59': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for spatio-temporal changing tile parameters (corrected version of template 4.56 - See Template 4.59)', '60': 'Individual Ensemble Reforecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time. (see Template 4.60)', '61': 'Individual Ensemble Reforecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval (see Template 4.61)', '62': 'Average, Accumulation and/or Extreme values or other Statistically-processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles at a horizontal level or horizontal layer at a point in time (see Template 4.62)', '63': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for spatio-temporal changing tiles (see Template 4.63)', '64-66': 'Reserved', '67': 'Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function (see Template 4.67)', '68': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents based on a distribution function. (see Template 4.68)', '69': 'Reserved', '70': 'Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a point in time. (see Template 4.70)', '71': 'Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time. (see Template 4.71)', '72': 'Post-processing average, accumulation, extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.72)', '73': 'Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer, in a continuous or non-continuous time interval. (see Template 4.73)', '74-75': 'Reserved', '76': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink. (see Template 4.76)', '77': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source or sink. (see Template 4.77)', '78': 'Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink. (see Template 4.78)', '79': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source or sink. (see Template 4.79)', '80': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source or sink. (see Template 4.80)', '81': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for optical properties of aerosol with source or sink. (see Template 4.81)', '82': 'Average, accumulation, and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink. (see Template 4.82)', '83': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink. (see Template 4.83)', '84': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink. (see Template 4.84)', '85': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol. (see Template 4.85)', '86': 'Quantile forecasts at a horizontal level or in a horizontal layer at a point in time. (see Template 4.86)', '87': 'Quantile forecasts at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.87)', '88': 'Analysis or forecast at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.88)', '89-90': 'Reserved', '91': 'Categorical forecast at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval. (see Template 4.91)', '92': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.92)', '93': 'Post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.93)', '94': 'Post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.94)', '95': 'Average, accumulation, extreme values or other statiscally processed value at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.95)', '96': 'Average, accumulation, extreme values or other statistically processed values of an individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.96)', '97': 'Average, accumulation, extreme values or other statistically processed values of post-processing analysis or forecast at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.97)', '98': 'Average, accumulation, extreme values or other statistically processed values of a post-processing individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a specified local time. (see Template 4.98)', '99': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with explicit list of frequencies and directions (see Template 4.99)', '100': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with explicit list of frequencies and directions (see Template 4.100)', '101': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with frequencies and directions defined by formulae (see Template 4.101)', '102': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for wave 2D spectra with frequencies and directions defined by formulae (see Template 4.102)', '103': 'Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for waves selected by period range (see Template 4.103)', '104': 'Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for waves selected by period range (see Template 4.104)', '105': 'Anomalies, significance and other derived products from an analysis or forecast in relation to a reference period at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval (see Template 4.105)', '99-253': 'Reserved', '254': 'CCITT IA5 character string (see Template 4.254)', '255-999': 'Reserved', '1000': 'Cross-section of analysis and forecast at a point in time. (see Template 4.1000)', '1001': 'Cross-section of averaged or otherwise statistically processed analysis or forecast over a range of time. (see Template 4.1001)', '1002': 'Cross-section of analysis and forecast, averaged or otherwise statistically-processed over latitude or longitude. (see Template 4.1002)', '1003-1099': 'Reserved', '1100': 'Hovmoller-type grid with no averaging or other statistical processing (see Template 4.1100)', '1101': 'Hovmoller-type grid with averaging or other statistical processing (see Template 4.1101)', '1102-32767': 'Reserved', '32768-65534': 'Reserved for Local Use', '65535': 'Missing'}
table_4_3 = {'0': 'Analysis', '1': 'Initialization', '2': 'Forecast', '3': 'Bias Corrected Forecast', '4': 'Ensemble Forecast', '5': 'Probability Forecast', '6': 'Forecast Error', '7': 'Analysis Error', '8': 'Observation', '9': 'Climatological', '10': 'Probability-Weighted Forecast', '11': 'Bias-Corrected Ensemble Forecast', '12': 'Post-processed Analysis (See Note)', '13': 'Post-processed Forecast (See Note)', '14': 'Nowcast', '15': 'Hindcast', '16': 'Physical Retrieval', '17': 'Regression Analysis', '18': 'Difference Between Two Forecasts', '19-191': 'Reserved', '192-254': 'Reserved for Local Use', '192': 'Forecast Confidence Indicator', '193': 'Probability-matched Mean', '194': 'Neighborhood Probability', '195': 'Bias-Corrected and Downscaled Ensemble Forecast', '196': 'Perturbed Analysis for Ensemble Initialization', '197': 'Ensemble Agreement Scale Probability', '198': 'Post-Processed Deterministic-Expert-Weighted Forecast', '199': 'Ensemble Forecast Based on Counting', '200': 'Local Probability-matched Mean', '255': 'Missing'}
table_4_4 = {'0': 'Minute', '1': 'Hour', '2': 'Day', '3': 'Month', '4': 'Year', '5': 'Decade (10 Years)', '6': 'Normal (30 Years)', '7': 'Century (100 Years)', '8': 'Reserved', '9': 'Reserved', '10': '3 Hours', '11': '6 Hours', '12': '12 Hours', '13': 'Second', '14-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_5 = {'0': ['Reserved', 'unknown'], '1': ['Ground or Water Surface', 'unknown'], '2': ['Cloud Base Level', 'unknown'], '3': ['Level of Cloud Tops', 'unknown'], '4': ['Level of 0o C Isotherm', 'unknown'], '5': ['Level of Adiabatic Condensation Lifted from the Surface', 'unknown'], '6': ['Maximum Wind Level', 'unknown'], '7': ['Tropopause', 'unknown'], '8': ['Nominal Top of the Atmosphere', 'unknown'], '9': ['Sea Bottom', 'unknown'], '10': ['Entire Atmosphere', 'unknown'], '11': ['Cumulonimbus Base (CB)', 'm'], '12': ['Cumulonimbus Top (CT)', 'm'], '13': ['Lowest level where vertically integrated cloud cover exceeds the specified percentage (cloud base for a given percentage cloud cover)', '%'], '14': ['Level of free convection (LFC)', 'unknown'], '15': ['Convection condensation level (CCL)', 'unknown'], '16': ['Level of neutral buoyancy or equilibrium (LNB)', 'unknown'], '17-19': ['Reserved', 'unknown'], '20': ['Isothermal Level', 'K'], '21': ['Lowest level where mass density exceeds the specified value (base for a given threshold of mass density)', 'kg m-3'], '22': ['Highest level where mass density exceeds the specified value (top for a given threshold of mass density)', 'kg m-3'], '23': ['Lowest level where air concentration exceeds the specified value (base for a given threshold of air concentration', 'Bq m-3'], '24': ['Highest level where air concentration exceeds the specified value (top for a given threshold of air concentration)', 'Bq m-3'], '25': ['Highest level where radar reflectivity exceeds the specified value (echo top for a given threshold of reflectivity)', 'dBZ'], '26': ['Convective cloud layer base', 'm'], '27': ['Convective cloud layer top', 'm'], '28-29': ['Reserved', 'unknown'], '30': ['Specified radius from the centre of the Sun', 'm'], '31': ['Ionospheric D-region level', 'unknown'], '32': ['Ionospheric E-region level', 'unknown'], '33': ['Ionospheric F1-region level', 'unknown'], '34': ['Ionospheric F1-region level', 'unknown'], '35': ['Ionospheric F2-region level', 'unknown'], '36-99': ['Reserved', 'unknown'], '100': ['Isobaric Surface', 'Pa'], '101': ['Mean Sea Level', 'unknown'], '102': ['Specific Altitude Above Mean Sea Level', 'm'], '103': ['Specified Height Level Above Ground', 'm'], '104': ['Sigma Level', 'unknown'], '105': ['Hybrid Level', 'unknown'], '106': ['Depth Below Land Surface', 'm'], '107': ['Isentropic (theta) Level', 'K'], '108': ['Level at Specified Pressure Difference from Ground to Level', 'Pa'], '109': ['Potential Vorticity Surface', 'K m2 kg-1 s-1'], '110': ['Reserved', 'unknown'], '111': ['Eta Level', 'unknown'], '112': ['Reserved', 'unknown'], '113': ['Logarithmic Hybrid Level', 'unknown'], '114': ['Snow Level', 'Numeric'], '115': ['Sigma height level', 'unknown'], '116': ['Reserved', 'unknown'], '117': ['Mixed Layer Depth', 'm'], '118': ['Hybrid Height Level', 'unknown'], '119': ['Hybrid Pressure Level', 'unknown'], '120-149': ['Reserved', 'unknown'], '150': ['Generalized Vertical Height Coordinate', 'unknown'], '151': ['Soil level', 'Numeric'], '152': ['Sea-ice level,(see Note 8)', 'Numeric'], '153-159': ['Reserved', 'unknown'], '160': ['Depth Below Sea Level', 'm'], '161': ['Depth Below Water Surface', 'm'], '162': ['Lake or River Bottom', 'unknown'], '163': ['Bottom Of Sediment Layer', 'unknown'], '164': ['Bottom Of Thermally Active Sediment Layer', 'unknown'], '165': ['Bottom Of Sediment Layer Penetrated By Thermal Wave', 'unknown'], '166': ['Mixing Layer', 'unknown'], '167': ['Bottom of Root Zone', 'unknown'], '168': ['Ocean Model Level', 'Numeric'], '169': ['Ocean level defined by water density (sigma-theta) difference from near-surface to level', 'kg m-3'], '170': ['Ocean level defined by water potential temperature difference from near-surface to level', 'K'], '171': ['Ocean level defined by vertical eddy diffusivity difference from near-surface to level,(see Note 7)', 'm2 s-1'], '172-173': ['Reserved', 'unknown'], '174': ['Top Surface of Ice on Sea, Lake or River', 'unknown'], '175': ['Top Surface of Ice, under Snow, on Sea, Lake or River', 'unknown'], '176': ['Bottom Surface (underside) Ice on Sea, Lake or River', 'unknown'], '177': ['Deep Soil (of indefinite depth)', 'unknown'], '178': ['Reserved', 'unknown'], '179': ['Top Surface of Glacier Ice and Inland Ice', 'unknown'], '180': ['Deep Inland or Glacier Ice (of indefinite depth)', 'unknown'], '181': ['Grid Tile Land Fraction as a Model Surface', 'unknown'], '182': ['Grid Tile Water Fraction as a Model Surface', 'unknown'], '183': ['Grid Tile Ice Fraction on Sea, Lake or River as a Model Surface', 'unknown'], '184': ['Grid Tile Glacier Ice and Inland Ice Fraction as a Model Surface', 'unknown'], '185-191': ['Reserved', 'unknown'], '192-254': ['Reserved for Local Use', 'unknown'], '200': ['Entire atmosphere (considered as a single layer)', 'unknown'], '201': ['Entire ocean (considered as a single layer)', 'unknown'], '204': ['Highest tropospheric freezing level', 'unknown'], '206': ['Grid scale cloud bottom level', 'unknown'], '207': ['Grid scale cloud top level', 'unknown'], '209': ['Boundary layer cloud bottom level', 'unknown'], '210': ['Boundary layer cloud top level', 'unknown'], '211': ['Boundary layer cloud layer', 'unknown'], '212': ['Low cloud bottom level', 'unknown'], '213': ['Low cloud top level', 'unknown'], '214': ['Low cloud layer', 'unknown'], '215': ['Cloud ceiling', 'unknown'], '216': ['Effective Layer Top Level', 'm'], '217': ['Effective Layer Bottom Level', 'm'], '218': ['Effective Layer', 'm'], '220': ['Planetary Boundary Layer', 'unknown'], '221': ['Layer Between Two Hybrid Levels', 'unknown'], '222': ['Middle cloud bottom level', 'unknown'], '223': ['Middle cloud top level', 'unknown'], '224': ['Middle cloud layer', 'unknown'], '232': ['High cloud bottom level', 'unknown'], '233': ['High cloud top level', 'unknown'], '234': ['High cloud layer', 'unknown'], '235': ['Ocean Isotherm Level (1/10 ° C)', 'unknown'], '236': ['Layer between two depths below ocean surface', 'unknown'], '237': ['Bottom of Ocean Mixed Layer (m)', 'unknown'], '238': ['Bottom of Ocean Isothermal Layer (m)', 'unknown'], '239': ['Layer Ocean Surface and 26C Ocean Isothermal Level', 'unknown'], '240': ['Ocean Mixed Layer', 'unknown'], '241': ['Ordered Sequence of Data', 'unknown'], '242': ['Convective cloud bottom level', 'unknown'], '243': ['Convective cloud top level', 'unknown'], '244': ['Convective cloud layer', 'unknown'], '245': ['Lowest level of the wet bulb zero', 'unknown'], '246': ['Maximum equivalent potential temperature level', 'unknown'], '247': ['Equilibrium level', 'unknown'], '248': ['Shallow convective cloud bottom level', 'unknown'], '249': ['Shallow convective cloud top level', 'unknown'], '251': ['Deep convective cloud bottom level', 'unknown'], '252': ['Deep convective cloud top level', 'unknown'], '253': ['Lowest bottom level of supercooled liquid water layer', 'unknown'], '254': ['Highest top level of supercooled liquid water layer', 'unknown'], '255': ['Missing', 'unknown']}
table_4_6 = {'0': 'Unperturbed High-Resolution Control Forecast', '1': 'Unperturbed Low-Resolution Control Forecast', '2': 'Negatively Perturbed Forecast', '3': 'Positively Perturbed Forecast', '4': 'Multi-Model Forecast', '5-191': 'Reserved', '192-254': 'Reserved for Local Use', '192': 'Perturbed Ensemble Member', '255': 'Missing'}
table_4_7 = {'0': 'Unweighted Mean of All Members', '1': 'Weighted Mean of All Members', '2': 'Standard Deviation with respect to Cluster Mean', '3': 'Standard Deviation with respect to Cluster Mean, Normalized', '4': 'Spread of All Members', '5': 'Large Anomaly Index of All Members', '6': 'Unweighted Mean of the Cluster Members', '7': 'Interquartile Range (Range between the 25th and 75th quantile)', '8': 'Minimum Of All Ensemble Members', '9': 'Maximum Of All Ensemble Members', '10-191': 'Reserved', '192-254': 'Reserved for Local Use', '192': 'Unweighted Mode of All Members', '193': 'Percentile value (10%) of All Members', '194': 'Percentile value (50%) of All Members', '195': 'Percentile value (90%) of All Members', '196': 'Statistically decided weights for each ensemble member', '197': 'Climate Percentile (percentile values from climate distribution)', '198': 'Deviation of Ensemble Mean from Daily Climatology', '199': 'Extreme Forecast Index', '200': 'Equally Weighted Mean', '201': 'Percentile value (5%) of All Members', '202': 'Percentile value (25%) of All Members', '203': 'Percentile value (75%) of All Members', '204': 'Percentile value (95%) of All Members', '255': 'Missing'}
table_4_8 = {'0': 'Anomoly Correlation', '1': 'Root Mean Square', '2-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_9 = {'0': 'Probability of event below lower limit', '1': 'Probability of event above upper limit', '2': 'Probability of event between upper and lower limits (the range includes lower limit but no the upper limit)', '3': 'Probability of event above lower limit', '4': 'Probability of event below upper limit', '5': 'Probability of event equal to lower limit', '6': 'Probability of event in above normal category (see Notes 1 and 2)', '9-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_10 = {'0': 'Average', '1': 'Accumulation', '2': 'Maximum', '3': 'Minimum', '4': 'Difference (value at the end of the time range minus value at the beginning)', '5': 'Root Mean Square', '6': 'Standard Deviation', '7': 'Covariance (temporal variance)', '8': 'Difference ( value at the beginning of the time range minus value at the end)', '9': 'Ratio', '13-191': 'Reserved', '192-254': 'Reserved for Local Use', '192': 'Climatological Mean Value: multiple year averages of quantities which are themselves means over some period of time (P2) less than a year. The reference time (R) indicates the date and time of the start of a period of time, given by R to R + P2, over which a mean is formed; N indicates the number of such period-means that are averaged together to form the climatological value, assuming that the N period-mean fields are separated by one year. The reference time indicates the start of the N-year climatology. N is given in octets 22-23 of the PDS. If P1 = 0 then the data averaged in the basic interval P2 are assumed to be continuous, i.e., all available data are simply averaged together. If P1 = 1 (the units of time - octet 18, code table 4 - are not relevant here) then the data averaged together in the basic interval P2 are valid only at the time (hour, minute) given in the reference time, for all the days included in the P2 period. The units of P2 are given by the contents of octet 18 and Table 4.', '193': 'Average of N forecasts (or initialized analyses); each product has forecast period of P1 (P1=0 for initialized analyses); products have reference times at intervals of P2, beginning at the given reference time.', '194': 'Average of N uninitialized analyses, starting at reference time, at intervals of P2.', '195': 'Average of forecast accumulations. P1 = start of accumulation period. P2 = end of accumulation period. Reference time is the start time of the first forecast, other forecasts at 24-hour intervals. Number in Ave = number of forecasts used.', '196': 'Average of successive forecast accumulations. P1 = start of accumulation period. P2 = end of accumulation period. Reference time is the start time of the first forecast, other forecasts at (P2 - P1) intervals. Number in Ave = number of forecasts used', '197': 'Average of forecast averages. P1 = start of averaging period. P2 = end of averaging period. Reference time is the start time of the first forecast, other forecasts at 24-hour intervals. Number in Ave = number of forecast used', '198': 'Average of successive forecast averages. P1 = start of averaging period. P2 = end of averaging period. Reference time is the start time of the first forecast, other forecasts at (P2 - P1) intervals. Number in Ave = number of forecasts used', '199': 'Climatological Average of N analyses, each a year apart, starting from initial time R and for the period from R+P1 to R+P2.', '200': 'Climatological Average of N forecasts, each a year apart, starting from initial time R and for the period from R+P1 to R+P2.', '201': 'Climatological Root Mean Square difference between N forecasts and their verifying analyses, each a year apart, starting with initial time R and for the period from R+P1 to R+P2.', '202': 'Climatological Standard Deviation of N forecasts from the mean of the same N forecasts, for forecasts one year apart. The first forecast starts wtih initial time R and is for the period from R+P1 to R+P2.', '203': 'Climatological Standard Deviation of N analyses from the mean of the same N analyses, for analyses one year apart. The first analyses is valid for period R+P1 to R+P2.', '204': 'Average of forecast accumulations. P1 = start of accumulation period. P2 = end of accumulation period. Reference time is the start time of the first forecast, other forecasts at 6-hour intervals. Number in Ave = number of forecast used', '205': 'Average of forecast averages. P1 = start of averaging period. P2 = end of averaging period. Reference time is the start time of the first forecast, other forecasts at 6-hour intervals. Number in Ave = number of forecast used', '206': 'Average of forecast accumulations. P1 = start of accumulation period. P2 = end of accumulation period. Reference time is the start time of the first forecast, other forecasts at 12-hour intervals. Number in Ave = number of forecast used', '207': 'Average of forecast averages. P1 = start of averaging period. P2 = end of averaging period. Reference time is the start time of the first forecast, other forecasts at 12-hour intervals. Number in Ave = number of forecast used', '255': 'Missing'}
table_4_11 = {'0': 'Reserved', '1': 'Successive times processed have same forecast time, start time of forecast is incremented.', '2': 'Successive times processed have same start time of forecast, forecast time is incremented.', '3': 'Successive times processed have start time of forecast incremented and forecast time decremented so that valid time remains constant.', '4': 'Successive times processed have start time of forecast decremented and forecast time incremented so that valid time remains constant.', '5': 'Floating subinterval of time between forecast time and end of overall time interval.(see Note 1)', '6-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_15 = {'0': 'Data is calculated directly from the source grid with no interpolation', '1': 'Bilinear interpolation using the 4 source grid grid-point values surrounding the nominal grid-point', '2': 'Bicubic interpolation using the 4 source grid grid-point values surrounding the nominal grid-point', '3': 'Using the value from the source grid grid-point which is nearest to the nominal grid-point', '4': 'Budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point', '5': 'Spectral interpolation using the 4 source grid grid-point values surrounding the nominal grid-point', '6': 'Neighbor-budget interpolation using the 4 source grid grid-point values surrounding the nominal grid-point', '7-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_91 = {'0': 'Smaller than first limit', '1': 'Greater than second limit', '2': 'Between first and second limit. The range includes the first limit but not the second limit.', '3': 'Greater than first limit', '4': 'Smaller than second limit', '5': 'Smaller or equal first limit', '6': 'Greater or equal second limit', '7': 'Between first and second limit. The range includes the first limit and the second limit.', '8': 'Greater or equal first limit', '9': 'Smaller or equal second limit', '10': 'Between first and second limit. The range includes the second limit but not the first limit.', '11': 'Equal to first limit', '12-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_201 = {'0': 'Reserved', '1': 'Rain', '2': 'Thunderstorm', '3': 'Freezing Rain', '4': 'Mixed/Ice', '5': 'Snow', '6': 'Wet Snow', '7': 'Mixture of Rain and Snow', '8': 'Ice Pellets', '9': 'Graupel', '10': 'Hail', '11': 'Drizzle', '12': 'Freezing Drizzle', '13-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_202 = {'0-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_203 = {'0': 'Clear', '1': 'Cumulonimbus', '2': 'Stratus', '3': 'Stratocumulus', '4': 'Cumulus', '5': 'Altostratus', '6': 'Nimbostratus', '7': 'Altocumulus', '8': 'Cirrostratus', '9': 'Cirrorcumulus', '10': 'Cirrus', '11': 'Cumulonimbus - ground-based fog beneath the lowest layer', '12': 'Stratus - ground-based fog beneath the lowest layer', '13': 'Stratocumulus - ground-based fog beneath the lowest layer', '14': 'Cumulus - ground-based fog beneath the lowest layer', '15': 'Altostratus - ground-based fog beneath the lowest layer', '16': 'Nimbostratus - ground-based fog beneath the lowest layer', '17': 'Altocumulus - ground-based fog beneath the lowest layer', '18': 'Cirrostratus - ground-based fog beneath the lowest layer', '19': 'Cirrorcumulus - ground-based fog beneath the lowest layer', '20': 'Cirrus - ground-based fog beneath the lowest layer', '21-190': 'Reserved', '191': 'Unknown', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_204 = {'1': 'Isolated (1-2%)', '2': 'Few (3-5%)', '3': 'Scattered (16-45%)', '4': 'Numerous (>45%)', '5-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_205 = {'0': 'Aerosol not present', '1': 'Aerosol present', '2-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_206 = {'0': 'Not Present', '1': 'Present', '2-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_207 = {'1': 'Light', '2': 'Moderate', '3': 'Severe', '4': 'Trace', '5': 'Heavy', '6-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_208 = {'1': 'Light', '2': 'Moderate', '3': 'Severe', '4': 'Extreme', '5-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_209 = {'0': 'Reserved', '1': 'Stable', '2': 'Mechanically-Driven Turbulence', '3': 'Force Convection', '4': 'Free Convection', '5-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_210 = {'0': 'Contrail Not Present', '1': 'Contrail Present', '2-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_211 = {'0': 'Low Bypass', '1': 'High Bypass', '2': 'Non-Bypass', '3-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_212 = {'0': 'Reserved', '1': 'Urban Land', '2': 'Agricultural', '3': 'Range Land', '4': 'Deciduous Forest', '5': 'Coniferous Forest', '6': 'Forest/Wetland', '7': 'Water', '8': 'Wetlands', '9': 'Desert', '10': 'Tundra', '11': 'Ice', '12': 'Tropical Forest', '13': 'Savannah', '14-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_213 = {'0': 'Reserved', '1': 'Sand', '2': 'Loamy Sand', '3': 'Sandy Loam', '4': 'Silt Loam', '5': 'Organic', '6': 'Sandy Clay Loam', '7': 'Silt Clay Loam', '8': 'Clay Loam', '9': 'Sandy Clay', '10': 'Silty Clay', '11': 'Clay', '12-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_215 = {'0-49': 'Reserved', '50': 'No-Snow/No-Cloud', '51-99': 'Reserved', '100': 'Clouds', '101-249': 'Reserved', '250': 'Snow', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_216 = {'0-90': 'Elevation in increments of 100 m', '91-253': 'Reserved', '254': 'Clouds', '255': 'Missing'}
table_4_217 = {'0': 'Clear over water', '1': 'Clear over land', '2': 'Cloud', '3': 'No data', '4-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_218 = {'0': 'No Scene Identified', '1': 'Green Needle-Leafed Forest', '2': 'Green Broad-Leafed Forest', '3': 'Deciduous Needle-Leafed Forest', '4': 'Deciduous Broad-Leafed Forest', '5': 'Deciduous Mixed Forest', '6': 'Closed Shrub-Land', '7': 'Open Shrub-Land', '8': 'Woody Savannah', '9': 'Savannah', '10': 'Grassland', '11': 'Permanent Wetland', '12': 'Cropland', '13': 'Urban', '14': 'Vegetation / Crops', '15': 'Permanent Snow / Ice', '16': 'Barren Desert', '17': 'Water Bodies', '18': 'Tundra', '19': 'Warm Liquid Water Cloud', '20': 'Supercooled Liquid Water Cloud', '21': 'Mixed Phase Cloud', '22': 'Optically Thin Ice Cloud', '23': 'Optically Thick Ice Cloud', '24': 'Multi-Layeblack Cloud', '25-96': 'Reserved', '97': 'Snow / Ice on Land', '98': 'Snow / Ice on Water', '99': 'Sun-Glint', '100': 'General Cloud', '101': 'Low Cloud / Fog / Stratus', '102': 'Low Cloud / Stratocumulus', '103': 'Low Cloud / Unknown Type', '104': 'Medium Cloud / Nimbostratus', '105': 'Medium Cloud / Altostratus', '106': 'Medium Cloud / Unknown Type', '107': 'High Cloud / Cumulus', '108': 'High Cloud / Cirrus', '109': 'High Cloud / Unknown Type', '110': 'Unknown Cloud Type', '111': 'Single layer water cloud', '112': 'Single layer ice cloud', '113-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_222 = {'0': 'No', '1': 'Yes', '2-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_223 = {'0': 'No Fire Detected', '1': 'Possible Fire Detected', '2': 'Probable Fire Detected', '3': 'Missing', '4-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_224 = {'0': 'No Risk Area', '1': 'Reserved', '2': 'General Thunderstorm Risk Area', '3': 'Reserved', '4': 'Slight Risk Area', '5': 'Reserved', '6': 'Moderate Risk Area', '7': 'Reserved', '8': 'High Risk Area', '9-10': 'Reserved', '11': 'Dry Thunderstorm (Dry Lightning) Risk Area', '12-13': 'Reserved', '14': 'Critical Risk Area', '15-17': 'Reserved', '18': 'Extreamly Critical Risk Area', '19-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_227 = {'1': 'General', '2': 'Convective', '3': 'Stratiform', '4': 'Freezing', '5-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_228 = {'1': 'Trace', '2': 'Light', '3': 'Moderate', '4': 'Severe', '6-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_233 = {'0': ['Ozone', 'O3'], '1': ['Water Vapour', 'H2O'], '2': ['Methane', 'CH4'], '3': ['Carbon Dioxide', 'CO2'], '4': ['Carbon Monoxide', 'CO'], '5': ['Nitrogen Dioxide', 'NO2'], '6': ['Nitrous Oxide', 'N2O'], '7': ['Formaldehyde', 'HCHO'], '8': ['Sulphur Dioxide', 'SO2'], '9': ['Ammonia', 'NH3'], '10': ['Ammonium', 'NH4+'], '11': ['Nitrogen Monoxide', 'NO'], '12': ['Atomic Oxygen', 'O'], '13': ['Nitrate Radical', 'NO3'], '14': ['Hydroperoxyl Radical', 'HO2'], '15': ['Dinitrogen Pentoxide', 'H2O5'], '16': ['Nitrous Acid', 'HONO'], '17': ['Nitric Acid', 'HNO3'], '18': ['Peroxynitric Acid', 'HO2NO2'], '19': ['Hydrogen Peroxide', 'H2O2'], '20': ['Molecular Hydrogen', 'H'], '21': ['Atomic Nitrogen', 'N'], '22': ['Sulphate', 'SO42-'], '23': ['Radon', 'Rn'], '24': ['Elemental Mercury', 'Hg(O)'], '25': ['Divalent Mercury', 'Hg2+'], '26': ['Atomic Chlorine', 'Cl'], '27': ['Chlorine Monoxide', 'ClO'], '28': ['Dichlorine Peroxide', 'Cl2O2'], '29': ['Hypochlorous Acid', 'HClO'], '30': ['Chlorine Nitrate', 'ClONO2'], '31': ['Chlorine Dioxide', 'ClO2'], '32': ['Atomic Bromide', 'Br'], '33': ['Bromine Monoxide', 'BrO'], '34': ['Bromine Chloride', 'BrCl'], '35': ['Hydrogen Bromide', 'HBr'], '36': ['Hypobromous Acid', 'HBrO'], '37': ['Bromine Nitrate', 'BrONO2'], '38': ['Oxygen', 'O2'], '39-9999': ['Reserved', 'unknown'], '10000': ['Hydroxyl Radical', 'OH'], '10001': ['Methyl Peroxy Radical', 'CH3O2'], '10002': ['Methyl Hydroperoxide', 'CH3O2H'], '10003': ['Reserved', 'unknown'], '10004': ['Methanol', 'CH3OH'], '10005': ['Formic Acid', 'CH3OOH'], '10006': ['Hydrogen Cyanide', 'HCN'], '10007': ['Aceto Nitrile', 'CH3CN'], '10008': ['Ethane', 'C2H6'], '10009': ['Ethene (= Ethylene)', 'C2H4'], '10010': ['Ethyne (= Acetylene)', 'C2H2'], '10011': ['Ethanol', 'C2H5OH'], '10012': ['Acetic Acid', 'C2H5OOH'], '10013': ['Peroxyacetyl Nitrate', 'CH3C(O)OONO2'], '10014': ['Propane', 'C3H8'], '10015': ['Propene', 'C3H6'], '10016': ['Butanes', 'C4H10'], '10017': ['Isoprene', 'C5H10'], '10018': ['Alpha Pinene', 'C10H16'], '10019': ['Beta Pinene', 'C10H16'], '10020': ['Limonene', 'C10H16'], '10021': ['Benzene', 'C6H6'], '10022': ['Toluene', 'C7H8'], '10023': ['Xylene', 'C8H10'], '10024-10499': ['Reserved', 'unknown'], '10500': ['Dimethyl Sulphide', 'CH3SCH3'], '10501-20000': ['Reserved', 'unknown'], '20001': ['Hydrogen Chloride', 'HCL'], '20002': ['CFC-11', 'unknown'], '20003': ['CFC-12', 'unknown'], '20004': ['CFC-113', 'unknown'], '20005': ['CFC-113a', 'unknown'], '20006': ['CFC-114', 'unknown'], '20007': ['CFC-115', 'unknown'], '20008': ['HCFC-22', 'unknown'], '20009': ['HCFC-141b', 'unknown'], '20010': ['HCFC-142b', 'unknown'], '20011': ['Halon-1202', 'unknown'], '20012': ['Halon-1211', 'unknown'], '20013': ['Halon-1301', 'unknown'], '20014': ['Halon-2402', 'unknown'], '20015': ['Methyl Chloride (HCC-40)', 'unknown'], '20016': ['Carbon Tetrachloride (HCC-10)', 'unknown'], '20017': ['HCC-140a', 'CH3CCl3'], '20018': ['Methyl Bromide (HBC-40B1)', 'unknown'], '20019': ['Hexachlorocyclohexane (HCH)', 'unknown'], '20020': ['Alpha Hexachlorocyclohexane', 'unknown'], '20021': ['Hexachlorobiphenyl (PCB-153)', 'unknown'], '20022-29999': ['Reserved', 'unknown'], '30000': ['Radioactive Pollutant (Tracer, defined by originating centre)', 'unknown'], '30001-50000': ['Reserved', 'unknown'], '60000': ['HOx Radical (OH+HO2)', 'unknown'], '60001': ['Total Inorganic and Organic Peroxy Radicals (HO2+RO2)', 'RO2'], '60002': ['Passive Ozone', 'unknown'], '60003': ['NOx Expressed As Nitrogen', 'NOx'], '60004': ['All Nitrogen Oxides (NOy) Expressed As Nitrogen', 'NOy'], '60005': ['Total Inorganic Chlorine', 'Clx'], '60006': ['Total Inorganic Bromine', 'Brx'], '60007': ['Total Inorganic Chlorine Except HCl, ClONO2: ClOx', 'unknown'], '60008': ['Total Inorganic Bromine Except Hbr, BrONO2:BrOx', 'unknown'], '60009': ['Lumped Alkanes', 'unknown'], '60010': ['Lumped Alkenes', 'unknown'], '60011': ['Lumped Aromatic Coumpounds', 'unknown'], '60012': ['Lumped Terpenes', 'unknown'], '60013': ['Non-Methane Volatile Organic Compounds Expressed as Carbon', 'NMVOC'], '60014': ['Anthropogenic Non-Methane Volatile Organic Compounds Expressed as Carbon', 'aNMVOC'], '60015': ['Biogenic Non-Methane Volatile Organic Compounds Expressed as Carbon', 'bNMVOC'], '60016': ['Lumped Oxygenated Hydrocarbons', 'OVOC'], '60017-61999': ['Reserved', 'unknown'], '62000': ['Total Aerosol', 'unknown'], '62001': ['Dust Dry', 'unknown'], '62002': ['water In Ambient', 'unknown'], '62003': ['Ammonium Dry', 'unknown'], '62004': ['Nitrate Dry', 'unknown'], '62005': ['Nitric Acid Trihydrate', 'unknown'], '62006': ['Sulphate Dry', 'unknown'], '62007': ['Mercury Dry', 'unknown'], '62008': ['Sea Salt Dry', 'unknown'], '62009': ['Black Carbon Dry', 'unknown'], '62010': ['Particulate Organic Matter Dry', 'unknown'], '62011': ['Primary Particulate Organic Matter Dry', 'unknown'], '62012': ['Secondary Particulate Organic Matter Dry', 'unknown'], '62013': ['Black carbon hydrophilic dry', 'unknown'], '62014': ['Black carbon hydrophobic dry', 'unknown'], '62015': ['Particulate organic matter hydrophilic dry', 'unknown'], '62016': ['Particulate organic matter hydrophobic dry', 'unknown'], '62017': ['Nitrate hydrophilic dry', 'unknown'], '62018': ['Nitrate hydrophobic dry', 'unknown'], '62019': ['Reserved', 'unknown'], '62020': ['Smoke - high absorption', 'unknown'], '62021': ['Smoke - low absorption', 'unknown'], '62022': ['Aerosol - high absorption', 'unknown'], '62023': ['Aerosol - low absorption', 'unknown'], '62024': ['Reserved', 'unknown'], '62025': ['Volcanic ash', 'unknown'], '62036': ['Brown Carbon Dry', 'unknown'], '62037-65534': ['Reserved', 'unknown'], '65535': ['Missing', 'unknown']}
table_4_243 = {'0': 'Reserved', '1': 'Evergreen broadleaved forest', '2': 'Deciduous broadleaved closed forest', '3': 'Deciduous broadleaved open forest', '4': 'Evergreen needle-leaf forest', '5': 'Deciduous needle-leaf forest', '6': 'Mixed leaf trees', '7': 'Fresh water flooded trees', '8': 'Saline water flooded trees', '9': 'Mosaic tree/natural vegetation', '10': 'Burnt tree cover', '11': 'Evergreen shurbs closed-open', '12': 'Deciduous shurbs closed-open', '13': 'Herbaceous vegetation closed-open', '14': 'Sparse herbaceous or grass', '15': 'Flooded shurbs or herbaceous', '16': 'Cultivated and managed areas', '17': 'Mosaic crop/tree/natural vegetation', '18': 'Mosaic crop/shrub/grass', '19': 'Bare areas', '20': 'Water', '21': 'Snow and ice', '22': 'Artificial surface', '23': 'Ocean', '24': 'Irrigated croplands', '25': 'Rain fed croplands', '26': 'Mosaic cropland (50-70%)-vegetation (20-50%)', '27': 'Mosaic vegetation (50-70%)-cropland (20-50%)', '28': 'Closed broadleaved evergreen forest', '29': 'Closed needle-leaved evergreen forest', '30': 'Open needle-leaved deciduous forest', '31': 'Mixed broadleaved and needle-leave forest', '32': 'Mosaic shrubland (50-70%)-grassland (20-50%)', '33': 'Mosaic grassland (50-70%)-shrubland (20-50%)', '34': 'Closed to open shrubland', '35': 'Sparse vegetation', '36': 'Closed to open forest regularly flooded', '37': 'Closed forest or shrubland permanently flooded', '38': 'Closed to open grassland regularly flooded', '39': 'Undefined', '40-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_246 = {'0': 'No thunderstorm occurrence', '1': 'Weak thunderstorm', '2': 'Moderate thunderstorm', '3': 'Severe thunderstorm', '4-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_247 = {'0': 'No precipitation occurrence', '1': 'Light precipitation', '2': 'Moderate precipitation', '3': 'Heavy precipitation', '4-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_248 = {'0': 'Nearest forecast or analysis time to specified local time', '1': 'Interpolated to be valid at the specified local time', '2-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_249 = {'1': 'Showers', '2': 'Intermittent', '3': 'Continuous', '4-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_4_250 = {'0': 'Reserved', '1': 'South-West', '2': 'South', '3': 'South-East', '4': 'West', '5': 'No direction', '6': 'East', '7': 'North-West', '8': 'North', '9': 'North-East', '10-191': 'Reserved', '192-254': 'Reserved for Local Use', '255': 'Missing'}
table_scale_time_hours = {'0': 60.0, '1': 1.0, '2': 0.041666666666666664, '3': 0.001388888888888889, '4': 0.00011415525114155251, '5': 1.1415525114155251e-05, '6': 3.80517503805175e-06, '7': 1.1415525114155251e-06, '8': 1.0, '9': 1.0, '10': 3.0, '11': 6.0, '12': 12.0, '13': 3600.0, '14-255': 1.0}
table_wgrib2_level_string = {'0': ['reserved', 'reserved'], '1': ['surface', 'reserved'], '2': ['cloud base', 'reserved'], '3': ['cloud top', 'reserved'], '4': ['0C isotherm', 'reserved'], '5': ['level of adiabatic condensation from sfc', 'reserved'], '6': ['max wind', 'reserved'], '7': ['tropopause', 'reserved'], '8': ['top of atmosphere', 'reserved'], '9': ['sea bottom', 'reserved'], '10': ['entire atmosphere', 'reserved'], '11': ['cumulonimbus base', 'reserved'], '12': ['cumulonimbus top', 'reserved'], '13': ['lowest level %g%% integrated cloud cover', 'reserved'], '14': ['level of free convection', 'reserved'], '15': ['convection condensation level', 'reserved'], '16': ['level of neutral buoyancy', 'reserved'], '17': ['reserved', 'reserved'], '18': ['reserved', 'reserved'], '19': ['reserved', 'reserved'], '20': ['%g K level', 'reserved'], '21': ['lowest level > %g kg/m^3', 'reserved'], '22': ['highest level > %g kg/m^3', 'reserved'], '23': ['lowest level > %g Bq/m^3', 'reserved'], '24': ['highest level > %g Bg/m^3', 'reserved'], '25': ['reserved', 'reserved'], '26': ['reserved', 'reserved'], '27': ['reserved', 'reserved'], '28': ['reserved', 'reserved'], '29': ['reserved', 'reserved'], '30': ['reserved', 'reserved'], '31': ['reserved', 'reserved'], '32': ['reserved', 'reserved'], '33': ['reserved', 'reserved'], '34': ['reserved', 'reserved'], '35': ['reserved', 'reserved'], '36': ['reserved', 'reserved'], '37': ['reserved', 'reserved'], '38': ['reserved', 'reserved'], '39': ['reserved', 'reserved'], '40': ['reserved', 'reserved'], '41': ['reserved', 'reserved'], '42': ['reserved', 'reserved'], '43': ['reserved', 'reserved'], '44': ['reserved', 'reserved'], '45': ['reserved', 'reserved'], '46': ['reserved', 'reserved'], '47': ['reserved', 'reserved'], '48': ['reserved', 'reserved'], '49': ['reserved', 'reserved'], '50': ['reserved', 'reserved'], '51': ['reserved', 'reserved'], '52': ['reserved', 'reserved'], '53': ['reserved', 'reserved'], '54': ['reserved', 'reserved'], '55': ['reserved', 'reserved'], '56': ['reserved', 'reserved'], '57': ['reserved', 'reserved'], '58': ['reserved', 'reserved'], '59': ['reserved', 'reserved'], '60': ['reserved', 'reserved'], '61': ['reserved', 'reserved'], '62': ['reserved', 'reserved'], '63': ['reserved', 'reserved'], '64': ['reserved', 'reserved'], '65': ['reserved', 'reserved'], '66': ['reserved', 'reserved'], '67': ['reserved', 'reserved'], '68': ['reserved', 'reserved'], '69': ['reserved', 'reserved'], '70': ['reserved', 'reserved'], '71': ['reserved', 'reserved'], '72': ['reserved', 'reserved'], '73': ['reserved', 'reserved'], '74': ['reserved', 'reserved'], '75': ['reserved', 'reserved'], '76': ['reserved', 'reserved'], '77': ['reserved', 'reserved'], '78': ['reserved', 'reserved'], '79': ['reserved', 'reserved'], '80': ['reserved', 'reserved'], '81': ['reserved', 'reserved'], '82': ['reserved', 'reserved'], '83': ['reserved', 'reserved'], '84': ['reserved', 'reserved'], '85': ['reserved', 'reserved'], '86': ['reserved', 'reserved'], '87': ['reserved', 'reserved'], '88': ['reserved', 'reserved'], '89': ['reserved', 'reserved'], '90': ['reserved', 'reserved'], '91': ['reserved', 'reserved'], '92': ['reserved', 'reserved'], '93': ['reserved', 'reserved'], '94': ['reserved', 'reserved'], '95': ['reserved', 'reserved'], '96': ['reserved', 'reserved'], '97': ['reserved', 'reserved'], '98': ['reserved', 'reserved'], '99': ['reserved', 'reserved'], '100': ['%g mb', '%g-%g mb'], '101': ['mean sea level', 'reserved'], '102': ['%g m above mean sea level', '%g-%g m above mean sea level'], '103': ['%g m above ground', '%g-%g m above ground'], '104': ['%g sigma level', '%g-%g sigma layer'], '105': ['%g hybrid level', '%g-%g hybrid layer'], '106': ['%g m underground', '%g-%g m underground'], '107': ['%g K isentropic level', '%g-%g K isentropic layer'], '108': ['%g mb above ground', '%g-%g mb above ground'], '109': ['PV=%g (Km^2/kg/s) surface', 'reserved'], '110': ['reserved', 'reserved'], '111': ['%g Eta level', '%g-%g Eta layer'], '112': ['reserved', 'reserved'], '113': ['%g logarithmic hybrid level', 'reserved'], '114': ['snow level', 'reserved'], '115': ['%g sigma height level', '%g-%g sigma heigh layer'], '116': ['reserved', 'reserved'], '117': ['mixed layer depth', 'reserved'], '118': ['%g hybrid height level', '%g-%g hybrid height layer'], '119': ['%g hybrid pressure level', '%g-%g hybrid pressure layer'], '120': ['reserved', 'reserved'], '121': ['reserved', 'reserved'], '122': ['reserved', 'reserved'], '123': ['reserved', 'reserved'], '124': ['reserved', 'reserved'], '125': ['reserved', 'reserved'], '126': ['reserved', 'reserved'], '127': ['reserved', 'reserved'], '128': ['reserved', 'reserved'], '129': ['reserved', 'reserved'], '130': ['reserved', 'reserved'], '131': ['reserved', 'reserved'], '132': ['reserved', 'reserved'], '133': ['reserved', 'reserved'], '134': ['reserved', 'reserved'], '135': ['reserved', 'reserved'], '136': ['reserved', 'reserved'], '137': ['reserved', 'reserved'], '138': ['reserved', 'reserved'], '139': ['reserved', 'reserved'], '140': ['reserved', 'reserved'], '141': ['reserved', 'reserved'], '142': ['reserved', 'reserved'], '143': ['reserved', 'reserved'], '144': ['reserved', 'reserved'], '145': ['reserved', 'reserved'], '146': ['reserved', 'reserved'], '147': ['reserved', 'reserved'], '148': ['reserved', 'reserved'], '149': ['reserved', 'reserved'], '150': ['%g generalized vertical height coordinate', 'reserved'], '151': ['soil level %g', 'reserved'], '152': ['reserved', 'reserved'], '153': ['reserved', 'reserved'], '154': ['reserved', 'reserved'], '155': ['reserved', 'reserved'], '156': ['reserved', 'reserved'], '157': ['reserved', 'reserved'], '158': ['reserved', 'reserved'], '159': ['reserved', 'reserved'], '160': ['%g m below sea level', '%g-%g m below sea level'], '161': ['%g m below water surface', '%g-%g m ocean layer'], '162': ['lake or river bottom', 'reserved'], '163': ['bottom of sediment layer', 'reserved'], '164': ['bottom of thermally active sediment layer', 'reserved'], '165': ['bottom of sediment layer penetrated by thermal wave', 'reserved'], '166': ['maxing layer', 'reserved'], '167': ['bottom of root zone', 'reserved'], '168': ['reserved', 'reserved'], '169': ['reserved', 'reserved'], '170': ['reserved', 'reserved'], '171': ['reserved', 'reserved'], '172': ['reserved', 'reserved'], '173': ['reserved', 'reserved'], '174': ['top surface of ice on sea, lake or river', 'reserved'], '175': ['top surface of ice, und snow on sea, lake or river', 'reserved'], '176': ['bottom surface ice on sea, lake or river', 'reserved'], '177': ['deep soil', 'reserved'], '178': ['reserved', 'reserved'], '179': ['top surface of glacier ice and inland ice', 'reserved'], '180': ['deep inland or glacier ice', 'reserved'], '181': ['grid tile land fraction as a model surface', 'reserved'], '182': ['grid tile water fraction as a model surface', 'reserved'], '183': ['grid tile ice fraction on sea, lake or river as a model surface', 'reserved'], '184': ['grid tile glacier ice and inland ice fraction as a model surface', 'reserved'], '185': ['reserved', 'reserved'], '186': ['reserved', 'reserved'], '187': ['reserved', 'reserved'], '188': ['reserved', 'reserved'], '189': ['reserved', 'reserved'], '190': ['reserved', 'reserved'], '191': ['reserved', 'reserved'], '192': ['reserved', 'reserved'], '193': ['reserved', 'reserved'], '194': ['reserved', 'reserved'], '195': ['reserved', 'reserved'], '196': ['reserved', 'reserved'], '197': ['reserved', 'reserved'], '198': ['reserved', 'reserved'], '199': ['reserved', 'reserved'], '200': ['entire atmosphere (considered as a single layer)', 'reserved'], '201': ['entire ocean (considered as a single layer)', 'reserved'], '202': ['reserved', 'reserved'], '203': ['reserved', 'reserved'], '204': ['highest tropospheric freezing level', 'reserved'], '205': ['reserved', 'reserved'], '206': ['grid scale cloud bottom level', 'reserved'], '207': ['grid scale cloud top level', 'reserved'], '208': ['reserved', 'reserved'], '209': ['boundary layer cloud bottom level', 'reserved'], '210': ['boundary layer cloud top level', 'reserved'], '211': ['boundary layer cloud layer', 'reserved'], '212': ['low cloud bottom level', 'reserved'], '213': ['low cloud top level', 'reserved'], '214': ['low cloud layer', 'reserved'], '215': ['cloud ceiling', 'reserved'], '216': ['reserved', 'reserved'], '217': ['reserved', 'reserved'], '218': ['reserved', 'reserved'], '219': ['reserved', 'reserved'], '220': ['planetary boundary layer', 'reserved'], '221': ['layer between two hybrid levels', 'reserved'], '222': ['middle cloud bottom level', 'reserved'], '223': ['middle cloud top level', 'reserved'], '224': ['middle cloud layer', 'reserved'], '225': ['reserved', 'reserved'], '226': ['reserved', 'reserved'], '227': ['reserved', 'reserved'], '228': ['reserved', 'reserved'], '229': ['reserved', 'reserved'], '230': ['reserved', 'reserved'], '231': ['reserved', 'reserved'], '232': ['high cloud bottom level', 'reserved'], '233': ['high cloud top level', 'reserved'], '234': ['high cloud layer', 'reserved'], '235': ['%gC ocean isotherm', '%g-%gC ocean isotherm layer'], '236': ['layer between two depths below ocean surface', '%g-%g m ocean layer'], '237': ['bottom of ocean mixed layer', 'reserved'], '238': ['bottom of ocean isothermal layer', 'reserved'], '239': ['layer ocean surface and 26C ocean isothermal level', 'reserved'], '240': ['ocean mixed layer', 'reserved'], '241': ['%g in sequence', 'reserved'], '242': ['convective cloud bottom level', 'reserved'], '243': ['convective cloud top level', 'reserved'], '244': ['convective cloud layer', 'reserved'], '245': ['lowest level of the wet bulb zero', 'reserved'], '246': ['maximum equivalent potential temperature level', 'reserved'], '247': ['equilibrium level', 'reserved'], '248': ['shallow convective cloud bottom level', 'reserved'], '249': ['shallow convective cloud top level', 'reserved'], '250': ['reserved', 'reserved'], '251': ['deep convective cloud bottom level', 'reserved'], '252': ['deep convective cloud top level', 'reserved'], '253': ['lowest bottom level of supercooled liquid water layer', 'reserved'], '254': ['highest top level of supercooled liquid water layer', 'reserved'], '255': ['missing', 'reserved']}