Skip to content

Commit

Permalink
Merge branch 'develop' into feature/modernisation_merge_accessor_classes
Browse files Browse the repository at this point in the history
  • Loading branch information
joobog committed Oct 4, 2024
2 parents 0627b52 + d360288 commit 376b7e7
Show file tree
Hide file tree
Showing 55 changed files with 1,865 additions and 1,157 deletions.
11 changes: 4 additions & 7 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -517,11 +517,8 @@ ecbuild_info(" | ecCodes version ${eccodes_VERSION} |")
ecbuild_info(" +--------------------------+")
ecbuild_info("")

ecbuild_info(" +--------------------------------------+")
ecbuild_info(" | Please note: |")
ecbuild_info(" | For Python3 support, first install |")
ecbuild_info(" | ecCodes and then install the Python |")
ecbuild_info(" | bindings from PyPI with: |")
ecbuild_info(" | $ pip3 install eccodes |")
ecbuild_info(" +--------------------------------------+")
ecbuild_info("Please note:")
ecbuild_info(" For Python3 support, you must install the Python bindings.")
ecbuild_info(" See:")
ecbuild_info(" https://confluence.ecmwf.int/display/ECC/ecCodes+installation")
ecbuild_info("")
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.38.0
2.39.0
1 change: 1 addition & 0 deletions definitions/bufr/rdb_key.def
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# RDB stands for REPORT DATA BASE
# See https://confluence.ecmwf.int/pages/viewpage.action?pageId=24316441
unsigned[1] rdbType : dump;
unsigned[1] oldSubtype: dump;

Expand Down
31 changes: 16 additions & 15 deletions definitions/bufr/section.3.def
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ unsigned[1] reservedSection3 = 0;
unsigned[2] numberOfSubsets : dump;
alias ls.numberOfSubsets=numberOfSubsets;

if (section2Present && bufrHeaderCentre==98 && section2Length==52) {
if (section2Present && bufrHeaderCentre == 98 && section2Length == 52) {
if ( rdbType == 2 || rdbType == 3 || rdbType == 8 || rdbType == 12 || rdbType == 30 ) {
transient isSatelliteType=1;
} else {
Expand All @@ -69,10 +69,11 @@ if (section2Present && bufrHeaderCentre==98 && section2Length==52) {
meta localLatitude2 bits(keyMore,32,25,-9000000,100000) : dump,no_copy;

# This rule is taken from BUFRDC. See bufrdc_wmo/buukey.F
# Also see ECC-686
if (oldSubtype == 255 || numberOfSubsets>255 ||
( oldSubtype>=121 && oldSubtype <=130 ) ||
oldSubtype==31) {
# See ECC-686
# and https://confluence.ecmwf.int/pages/viewpage.action?pageId=24316441
if (oldSubtype == 255 || numberOfSubsets > 255 ||
( oldSubtype >= 121 && oldSubtype <= 130 ) ||
oldSubtype == 31) {
meta ls.localNumberOfObservations bits(keySat,0,16) : dump,long_type,no_copy;
meta ls.satelliteID bits(keySat,16,16) : dump,long_type,no_copy;
} else {
Expand Down Expand Up @@ -114,16 +115,16 @@ meta bufrdcExpandedDescriptors bufrdc_expanded_descriptors(expandedCodes) : no_c
#smart_table NAME (VALUES,FILE_NAME,MASTER_DIRECTORY,LOCAL_DIRECTORY,WIDTH_OF_CODE_IN_BITS,EXTRA_DIRECTORY,EXTRA_FILE_NAME);
#Note: The WIDTH_OF_CODE_IN_BITS has to be big enough so 2^width > the highest BUFR descriptor code
smart_table expandedOriginalCodes (expandedCodes,"element.table",tablesMasterDir,tablesLocalDir,18,rootTablesDir,"operators.table") :no_copy;
meta expandedAbbreviations smart_table_column(expandedOriginalCodes,0,1) : string_type,no_copy;
meta expandedTypes smart_table_column(expandedOriginalCodes,1,0) : string_type,no_copy;
meta expandedNames smart_table_column(expandedOriginalCodes,2,0) : string_type,no_copy;
meta expandedUnits smart_table_column(expandedOriginalCodes,3,0) : string_type,no_copy;
meta expandedOriginalScales smart_table_column(expandedOriginalCodes,4,0) : long_type,no_copy;
meta expandedOriginalReferences smart_table_column(expandedOriginalCodes,5,0) : long_type,no_copy;
meta expandedOriginalWidths smart_table_column(expandedOriginalCodes,6,0) : long_type,no_copy;
meta expandedCrex_units smart_table_column(expandedOriginalCodes,7,0) : long_type,no_copy;
meta expandedCrex_scales smart_table_column(expandedOriginalCodes,8,0) : long_type,no_copy;
meta expandedCrex_widths smart_table_column(expandedOriginalCodes,9,0) : long_type,no_copy;
meta expandedAbbreviations smart_table_column(expandedOriginalCodes,0,1) : string_type,no_copy;
meta expandedTypes smart_table_column(expandedOriginalCodes,1,0) : string_type,no_copy;
meta expandedNames smart_table_column(expandedOriginalCodes,2,0) : string_type,no_copy;
meta expandedUnits smart_table_column(expandedOriginalCodes,3,0) : string_type,no_copy;
meta expandedOriginalScales smart_table_column(expandedOriginalCodes,4,0) : long_type,no_copy;
meta expandedOriginalReferences smart_table_column(expandedOriginalCodes,5,0) : long_type,no_copy;
meta expandedOriginalWidths smart_table_column(expandedOriginalCodes,6,0) : long_type,no_copy;
meta expandedCrex_units smart_table_column(expandedOriginalCodes,7,0) : long_type,no_copy;
meta expandedCrex_scales smart_table_column(expandedOriginalCodes,8,0) : long_type,no_copy;
meta expandedCrex_widths smart_table_column(expandedOriginalCodes,9,0) : long_type,no_copy;

position endDescriptors;
section_padding section3Padding;
Expand Down
2 changes: 0 additions & 2 deletions definitions/grib1/data.grid_simple_matrix.def
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,6 @@ if(matrixOfValues == 0)

# From GRIBEX:
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# ! !
# ! This is the WMO definition, but it is entirely !
# ! inadequate when secondary bit maps are present !
# ! eg 3x3 global grid with a matrix of values !
Expand All @@ -129,7 +128,6 @@ if(matrixOfValues == 0)
# ! missing'). !
# ! This definition will accommodate a 1x1 !
# ! degree global grid. !
# ! !
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
#
constant datumSize = NC*NR;
Expand Down
9 changes: 5 additions & 4 deletions definitions/grib1/gds_not_present_bitmap.def
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,11 @@ transient numberOfUnusedBitsAtEndOfSection3 = 0 : read_only;
transient tableReference = 0;

#position offsetBeforeBitmap;
meta bitmap gds_not_present_bitmap( missingValue,numberOfValues,
numberOfPoints,
latitudeOfFirstGridPoint,
Ni,numberOfUnusedBitsAtEndOfSection3) : read_only;
meta bitmap gds_not_present_bitmap(
missingValue,numberOfValues,
numberOfPoints,
latitudeOfFirstGridPoint,
Ni,numberOfUnusedBitsAtEndOfSection3) : read_only;

#position offsetAfterBitmap;
#padtoeven padding_sec3_1(offsetSection3,section3Length);
Expand Down
6 changes: 3 additions & 3 deletions definitions/grib1/grid_definition_192.78.def
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,6 @@ transient numberOfPoints= nd *(Ni + 1) * (Ni + 1);
alias numberOfDataPoints=numberOfPoints;

meta numberOfValues
number_of_values(values,bitsPerValue,numberOfDataPoints,
bitmapPresent,bitmap,numberOfCodedValues) : dump;

number_of_values(
values,bitsPerValue,numberOfDataPoints,
bitmapPresent,bitmap,numberOfCodedValues) : dump;
10 changes: 5 additions & 5 deletions definitions/grib1/grid_definition_193.98.def
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,11 @@ if(missing(Ni)){
nearest latlon_reduced(values,radius,Nj,pl);
} else {
transient iteratorDisableUnrotate = 0 : hidden; # ECC-808
iterator latlon(numberOfPoints,missingValue,values,longitudeFirstInDegrees,iInc ,
Ni,Nj,iScansNegatively ,
latitudeFirstInDegrees,DjInDegrees,jScansPositively,jPointsAreConsecutive,
isRotatedGrid, angleOfRotation,
latitudeOfSouthernPoleInDegrees,longitudeOfSouthernPoleInDegrees);
iterator latlon(numberOfPoints,missingValue,values,longitudeFirstInDegrees,iInc,
Ni,Nj,iScansNegatively,
latitudeFirstInDegrees,DjInDegrees,jScansPositively,jPointsAreConsecutive,
isRotatedGrid, angleOfRotation,
latitudeOfSouthernPoleInDegrees,longitudeOfSouthernPoleInDegrees);
nearest regular(values,radius,Ni,Nj);
}
meta latLonValues latlonvalues(values);
Expand Down
10 changes: 5 additions & 5 deletions definitions/grib1/predefined_grid.def
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ constant dataRepresentationType = 0;
# (according to data representation type - octet 6 above)

# grib 1 -> 2
constant gridDefinitionTemplateNumber = 0;
constant gridDefinitionTemplateNumber = 0;

# START 1/grid_definition.latitude_longitude_grid ----------------------------------------------------------------------
# START 1/grid_definition.latitude_longitude_grid
# GRID DEFINITION latitude/longitude grid (or equidistant cylindrical)

alias numberOfPointsAlongAParallel=Ni;
Expand Down Expand Up @@ -122,6 +122,6 @@ constant tableReference = 0;

#position offsetBeforeBitmap;
# meta bitmap gds_not_present_bitmap( missingValue,numberOfValues,
# numberOfPoints,
# latitudeOfFirstGridPoint,
# Ni,numberOfUnusedBitsAtEndOfSection3) : read_only;
# numberOfPoints,
# latitudeOfFirstGridPoint,
# Ni,numberOfUnusedBitsAtEndOfSection3) : read_only;
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@
'eORCA12' = { numberOfGridUsed = 7; }
'CORE2' = { numberOfGridUsed = 8; }
'NG5' = { numberOfGridUsed = 9; }
'DART' = { numberOfGridUsed = 10; }
132 changes: 66 additions & 66 deletions definitions/grib2/marsLevtypeConcept.def
Original file line number Diff line number Diff line change
@@ -1,70 +1,70 @@
# Concept marsLevtype
'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=8;}
'o2d' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=9;}
'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=162;}
'sfc' = {typeOfFirstFixedSurface=2; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=7; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=8; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=17; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=18; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=20; scaleFactorOfFirstFixedSurface=-2;
scaledValueOfFirstFixedSurface=29315; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;}
'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=255;}
'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=100;}
'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=100;
scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=80000;}
'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0; scaledValueOfFirstFixedSurface=80000;
typeOfSecondFixedSurface=100; scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=45000;}
'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0;
scaledValueOfFirstFixedSurface=45000; typeOfSecondFixedSurface=8;}
'sfc' = {typeOfFirstFixedSurface=101; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=102; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=103;}
'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=255;}
'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=105;}
'sfc' = {typeOfFirstFixedSurface=106; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=106;typeOfSecondFixedSurface=106;}
'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=255;}
'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=107;}
'pv' = {typeOfFirstFixedSurface=109; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=114;}
'hhl' = {typeOfFirstFixedSurface=118; typeOfSecondFixedSurface=255;}
'hpl' = {typeOfFirstFixedSurface=119; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=151;}
'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=152;}
'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=160; scaleFactorOfFirstFixedSurface=0;
scaledValueOfFirstFixedSurface=0; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=160;}
'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=9;}
'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=20;
scaledValueOfFirstFixedSurface=0; scaleFactorOfFirstFixedSurface=0;}
'sfc' = {typeOfFirstFixedSurface=162; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=166; typeOfSecondFixedSurface=255;}
'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=255;}
'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=168;}
'o2d' = {typeOfFirstFixedSurface=169; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=170; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=171; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=175;}
'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255; discipline=1;}
'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=176; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=160;
scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=0;}
'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176;}
'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176; discipline=1;}
'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=176;}
'sfc' = {typeOfFirstFixedSurface=177; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=188; typeOfSecondFixedSurface=189;}
'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=8;}
'o2d' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=9;}
'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=162;}
'sfc' = {typeOfFirstFixedSurface=2; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=7; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=8; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=17; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=18; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=19; typeOfSecondFixedSurface=255;}
'o2d' = {discipline=10; typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=20; typeOfSecondFixedSurface=255;}
'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=255;}
'pl' = {typeOfFirstFixedSurface=100; typeOfSecondFixedSurface=100;}
'sfc' = {typeOfFirstFixedSurface=1; typeOfSecondFixedSurface=100;
scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=80000;}
'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0; scaledValueOfFirstFixedSurface=80000;
typeOfSecondFixedSurface=100; scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=45000;}
'sfc' = {typeOfFirstFixedSurface=100; scaleFactorOfFirstFixedSurface=0;
scaledValueOfFirstFixedSurface=45000; typeOfSecondFixedSurface=8;}
'sfc' = {typeOfFirstFixedSurface=101; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=102; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=103; typeOfSecondFixedSurface=103;}
'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=255;}
'ml' = {typeOfFirstFixedSurface=105; typeOfSecondFixedSurface=105;}
'sfc' = {typeOfFirstFixedSurface=106; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=106;typeOfSecondFixedSurface=106;}
'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=255;}
'pt' = {typeOfFirstFixedSurface=107; typeOfSecondFixedSurface=107;}
'pv' = {typeOfFirstFixedSurface=109; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=114; typeOfSecondFixedSurface=114;}
'hhl' = {typeOfFirstFixedSurface=118; typeOfSecondFixedSurface=255;}
'hpl' = {typeOfFirstFixedSurface=119; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=151; typeOfSecondFixedSurface=151;}
'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=255;}
'sol' = {typeOfFirstFixedSurface=152; typeOfSecondFixedSurface=152;}
'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=160; scaleFactorOfFirstFixedSurface=0;
scaledValueOfFirstFixedSurface=0; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=160;}
'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=9;}
'o2d' = {typeOfFirstFixedSurface=160; typeOfSecondFixedSurface=20;
scaledValueOfFirstFixedSurface=0; scaleFactorOfFirstFixedSurface=0;}
'sfc' = {typeOfFirstFixedSurface=162; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=166; typeOfSecondFixedSurface=255;}
'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=255;}
'o3d' = {typeOfFirstFixedSurface=168; typeOfSecondFixedSurface=168;}
'o2d' = {typeOfFirstFixedSurface=169; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=170; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=171; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=173; typeOfSecondFixedSurface=175;}
'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=255; discipline=1;}
'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=176; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=160;
scaleFactorOfSecondFixedSurface=0; scaledValueOfSecondFixedSurface=0;}
'o2d' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176;}
'sfc' = {typeOfFirstFixedSurface=174; typeOfSecondFixedSurface=176; discipline=1;}
'o2d' = {typeOfFirstFixedSurface=175; typeOfSecondFixedSurface=176;}
'sfc' = {typeOfFirstFixedSurface=177; typeOfSecondFixedSurface=255;}
'o2d' = {typeOfFirstFixedSurface=188; typeOfSecondFixedSurface=189;}

'sfc' = {typeOfFirstFixedSurface=5; typeOfSecondFixedSurface=255;}
'sfc' = {typeOfFirstFixedSurface=14; typeOfSecondFixedSurface=255;}
Expand Down
Loading

0 comments on commit 376b7e7

Please sign in to comment.