User Tools

Site Tools


start:hype_file_reference:cropdata.txt

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
start:hype_file_reference:cropdata.txt [2017/01/19 16:15]
rcapell
start:hype_file_reference:cropdata.txt [2024/02/21 08:18] (current)
cpers
Line 1: Line 1:
 ====== CropData.txt ====== ====== CropData.txt ======
  
-This file includes variables relating to crops, including irrigation characteristics,​ and other vegetation. All vegetation is called crops in the text below, e.g. also forest. //​CropData.txt//​ is **only needed for nutrient modelling**. Crops in HYPE have a number of static properties, e.g. sowing and harvesting dates, which are read from //​CropData.txt//​. The handling of these properties assume the catchment is on the Northern hemisphere, i.e. that summer is the growing season. Crops are part of the unique combination making up an SLC class, as defined in [[start:​hype_file_reference:​geoclass.txt|GeoClass.txt]]. To allow for modifying properties of a certain crop within the model domain, e.g. to reflect climate gradients, several crop regions can be defined with corresponding variables ''​region''​ in [[start:​hype_file_reference:​geodata.txt|GeoData.txt]] and ''​reg''​ in //​CropData.txt//​.+This file includes variables relating to crops, including irrigation characteristics,​ and other vegetation. All vegetation is called crops in the text below, e.g. also forest. //​CropData.txt//​ is **only needed for nutrient ​or irrigation ​modelling**, but can be used for water and tracer simulations. Crops in HYPE have a number of static properties, e.g. sowing and harvesting dates, which are read from //​CropData.txt//​. The handling of these properties assume the catchment is on the Northern hemisphere, i.e. that summer is the growing season. Crops are part of the unique combination making up an SLC class, as defined in [[start:​hype_file_reference:​geoclass.txt|GeoClass.txt]]. To allow for modifying properties of a certain crop within the model domain, e.g. to reflect climate gradients, several crop regions can be defined with corresponding variables ''​region''​ in [[start:​hype_file_reference:​geodata.txt|GeoData.txt]] and ''​reg''​ in //​CropData.txt//​.
  
 //​CropData.txt//​ is a tab-separated text file located in the [[start:​hype_file_reference:​info.txt&#​model_options|modeldir]] folder. The first row contains a column header with variable names. Variable names are not case-sensitive (max. 10 characters, no spaces). The following rows contain variable values for each crop. Columns with headings unknown to HYPE are skipped while reading the file. A text column may contain at most 100 characters. The first column is often used for a descriptive name of the crop, and not read by HYPE. The columns may be in any order. A value must exist for every column and row, i.e. empty cells are not allowed. //​CropData.txt//​ is a tab-separated text file located in the [[start:​hype_file_reference:​info.txt&#​model_options|modeldir]] folder. The first row contains a column header with variable names. Variable names are not case-sensitive (max. 10 characters, no spaces). The following rows contain variable values for each crop. Columns with headings unknown to HYPE are skipped while reading the file. A text column may contain at most 100 characters. The first column is often used for a descriptive name of the crop, and not read by HYPE. The columns may be in any order. A value must exist for every column and row, i.e. empty cells are not allowed.
Line 17: Line 17:
   * **Fertiliser**:​ Variables for fertiliser and manure application. //​**NOTE:​**//​ parameter ''​fertdays''​ in [[start:​hype_file_reference:​par.txt|par.txt]] needs to be set to a value larger than zero for fertiliser and manure to be applied.   * **Fertiliser**:​ Variables for fertiliser and manure application. //​**NOTE:​**//​ parameter ''​fertdays''​ in [[start:​hype_file_reference:​par.txt|par.txt]] needs to be set to a value larger than zero for fertiliser and manure to be applied.
   * **Turnover**:​ Crop growth and biomass turnover properties.   * **Turnover**:​ Crop growth and biomass turnover properties.
-  * **Irrigation**:​ Crop irrigation properties.+  * **Irrigation**:​ Crop irrigation properties. ​Parameter irrcrop determine if irrigation is used for a crop. 
 +  * **T1 source**: Tracer T1 application. 
 + 
 +The general unit (U) is used in tables of parameters and input data where the unit is not defined. 
  
-/** 
- * ____________IMPORTANT!__________IMPORTANT!________________IMPORTANT!_______________________IMPORTANT!______________ 
- * 
- * The table below is maintained in spreadsheed file '​file_reference_tables.xlsx'​ 
- * in the wiki back-up folder on our server. 
- * Please edit table contents there and then copy-paste the updated full table to this page. Ask René if something is  
- * unclear. Thanks. 
- * ___________________________________________________________________________________________________________________ 
- */ 
  
 <​sortable>​ <​sortable>​
-|1|''​nr''​|//​-//​|General|This column with row numbers is usually given to see the order of the crops, but is not read by the program.| +| 1   ​| ''​nr'' ​         | //-//                    | General ​    ​| This column with row numbers is usually given to see the order of the crops, but is not read by the program. ​                                                                                                                                              ​
-|2|''​cropid''​|//​-//​|General|crop ID number (used in [[start:​hype_file_reference:​geoclass.txt|GeoClass.txt]])| +| 2   ​| ''​cropid'' ​     | //-//                    | General ​    ​| crop ID number (used in [[start:​hype_file_reference:​geoclass.txt|GeoClass.txt]]) ​                                                                                                                                                                          ​
-|3|''​reg''​|//​-//​|General|integer,​ agricultural region number (e.g. production region from agricultural statistics) (corresponds to region in [[start:​hype_file_reference:​geodata.txt|GeoData.txt]])| +| 3   ​| ''​reg'' ​        ​| //-//                    | General ​    ​| integer, agricultural region number (e.g. production region from agricultural statistics) (corresponds to region in [[start:​hype_file_reference:​geodata.txt|GeoData.txt]]). Note, all regions defined in GeoData.txt must also be defined in CropData.txt  ​
-|4|''​fn1''​|//​kg/​(ha yr)//​|Fertiliser|amount of N in fertiliser (1st application) (100% IN)| +| 4   ​| ''​fn1'' ​        ​| //kg/(ha yr)//           ​| Fertiliser ​ | amount of N in fertiliser (1st application) (100% IN)                                                                                                                                                                                                      
-|5|''​fp1''​|//​kg/​(ha yr)//​|Fertiliser|amount of P in fertiliser (1st application) (100% SP)| +| 5   ​| ''​fp1'' ​        ​| //kg/(ha yr)//           ​| Fertiliser ​ | amount of P in fertiliser (1st application) (100% SP)                                                                                                                                                                                                      
-|6|''​mn1''​|//​kg/​(ha yr)//​|Fertiliser|amount of N in manure (1st application) (50% IN)| +| 6   ​| ''​mn1'' ​        ​| //kg/(ha yr)//           ​| Fertiliser ​ | amount of N in manure (1st application) (50% IN)                                                                                                                                                                                                           ​
-|7|''​mp1''​|//​kg/​(ha yr)//​|Fertiliser|amount of P in manure (1st application) (50% SP)| +| 7   ​| ''​mp1'' ​        ​| //kg/(ha yr)//           ​| Fertiliser ​ | amount of P in manure (1st application) (50% SP)                                                                                                                                                                                                           ​
-|8|''​fday1''​|//​julian day//​|Fertiliser|day number for application of fertiliser (1st application)| +| 8   ​| ''​fday1'' ​      ​| //julian day//           ​| Fertiliser ​ | day number for application of fertiliser (1st application) ​                                                                                                                                                                                                ​
-|9|''​mday1''​|//​julian day//​|Fertiliser|day number for application of manure (1st application)| +| 9   ​| ''​mday1'' ​      ​| //julian day//           ​| Fertiliser ​ | day number for application of manure (1st application) ​                                                                                                                                                                                                    ​
-|10|''​fdown1''​|//​-//​|Fertiliser|fraction of fertiliser that is tilled down to second soil layer (1st application)| +| 10  | ''​fdown1'' ​     | //-//                    | Fertiliser ​ | fraction of fertiliser that is tilled down to second soil layer (1st application) ​                                                                                                                                                                         
-|11|''​mdown1''​|//​-//​|Fertiliser|fraction of manure that is tilled down to second soil layer (1st application)| +| 11  | ''​mdown1'' ​     | //-//                    | Fertiliser ​ | fraction of manure that is tilled down to second soil layer (1st application) ​                                                                                                                                                                             
-|12|''​fn2''​|//​kg/​(ha yr)//​|Fertiliser|amount of N in fertiliser (2nd application) (100% IN)| +| 12  | ''​fn2'' ​        ​| //kg/(ha yr)//           ​| Fertiliser ​ | amount of N in fertiliser (2nd application) (100% IN)                                                                                                                                                                                                      
-|13|''​fp2''​|//​kg/​(ha yr)//​|Fertiliser|amount of P in fertiliser (2nd application) (100% SP)| +| 13  | ''​fp2'' ​        ​| //kg/(ha yr)//           ​| Fertiliser ​ | amount of P in fertiliser (2nd application) (100% SP)                                                                                                                                                                                                      
-|14|''​mn2''​|//​kg/​(ha yr)//​|Fertiliser|amount of N manure (2nd application) (50% IN)| +| 14  | ''​mn2'' ​        ​| //kg/(ha yr)//           ​| Fertiliser ​ | amount of N manure (2nd application) (50% IN)                                                                                                                                                                                                              
-|15|''​mp2''​|//​kg/​(ha yr)//​|Fertiliser|amount of P manure (2nd application) (50% SP)| +| 15  | ''​mp2'' ​        ​| //kg/(ha yr)//           ​| Fertiliser ​ | amount of P manure (2nd application) (50% SP)                                                                                                                                                                                                              
-|16|''​fday2''​|//​julian day//​|Fertiliser|day number for application of fertiliser (2nd application)| +| 16  | ''​fday2'' ​      ​| //julian day//           ​| Fertiliser ​ | day number for application of fertiliser (2nd application) ​                                                                                                                                                                                                ​
-|17|''​mday2''​|//​julian day//​|Fertiliser|day number for application of manure (2nd application)| +| 17  | ''​mday2'' ​      ​| //julian day//           ​| Fertiliser ​ | day number for application of manure (2nd application) ​                                                                                                                                                                                                    ​
-|18|''​fdown2''​|//​-//​|Fertiliser|fraction of fertiliser that is tilled down to second soil layer (2nd application)| +| 18  | ''​fdown2'' ​     | //-//                    | Fertiliser ​ | fraction of fertiliser that is tilled down to second soil layer (2nd application) ​                                                                                                                                                                         
-|19|''​mdown2''​|//​-//​|Fertiliser|fraction of manure that is tilled down to second soil layer (2nd application)| +| 19  | ''​mdown2'' ​     | //-//                    | Fertiliser ​ | fraction of manure that is tilled down to second soil layer (2nd application) ​                                                                                                                                                                             
-|20|''​resn''​|//​kg/​(ha yr)//​|Turnover|amount of N that is added to the pool stored in the soil from decaying plants| +| 20  | ''​resn'' ​       | //kg/(ha yr)//           ​| Turnover ​   | amount of N that is added to the pool stored in the soil from decaying plants ​                                                                                                                                                                             
-|21|''​resp''​|//​kg/​(ha yr)//​|Turnover|amount of P that is added to the pool stored in the soil from decaying plants| +| 21  | ''​resp'' ​       | //kg/(ha yr)//           ​| Turnover ​   | amount of P that is added to the pool stored in the soil from decaying plants ​                                                                                                                                                                             
-|22|''​resc''​|//​kg/​(ha yr)//​|Turnover|amount of organic C that is added to the pool stored in the soil from decaying plants| +| 22  | ''​resc'' ​       | //kg/(ha yr)//           ​| Turnover ​   | amount of organic C that is added to the pool stored in the soil from decaying plants ​                                                                                                                                                                     
-|23|''​resday''​|//​julian day//​|Turnover|day number for application of decaying plants, if set to 0, a uniform application all year round is assumed| +| 23  | ''​resday'' ​     | //julian day//           ​| Turnover ​   | day number for application of decaying plants, if set to 0, a uniform application all year round is assumed ​                                                                                                                                               
-|24|''​resdown''​|//​-//​|Turnover|fraction of decaying plants that are tilled down to the second soil layer| +| 24  | ''​resdown'' ​    ​| //-//                    | Turnover ​   | fraction of decaying plants that are tilled down to the second soil layer                                                                                                                                                                                  
-|25|''​resfast''​|//​-//​|Turnover|fraction of decaying plants that are added to the fast turnover pool, used for N and P| +| 25  | ''​resfast'' ​    ​| //-//                    | Turnover ​   | fraction of decaying plants that are added to the fast turnover pool, used for N and P                                                                                                                                                                     ​
-|26|''​up1''​|//​g/​(m<​sup>​2</​sup>​ y)//​|Turnover|parameter for the crop’s potential uptake function (logistic growth) - typically 20 g N/m2/year for grains, 40 g N/m2/year for grasses. Note: must be larger than or equal to up2. A value equal to up2 indicates no uptake of nutrients.| +| 26  | ''​up1'' ​        ​| //​g/​(m<​sup>​2</​sup>​ y)//  | Turnover ​   | parameter for the crop’s potential uptake function (logistic growth) - typically 20 g N/m2/year for grains, 40 g N/m2/year for grasses. Note: must be larger than or equal to up2. A value equal to up2 indicates no uptake of nutrients. ​                 
-|27|''​up2''​|//​-//​|Turnover|parameter for the crop’s potential uptake function (logistic growth) - typically 1| +| 27  | ''​up2'' ​        ​| //-//                    | Turnover ​   | parameter for the crop’s potential uptake function (logistic growth) - typically 1                                                                                                                                                                         ​
-|28|''​up3''​|//​1/​day//​|Turnover|parameter for the crop’s potential uptake function (logistic growth) - typically 0.12 1/day| +| 28  | ''​up3'' ​        ​| //​1/​day// ​               | Turnover ​   | parameter for the crop’s potential uptake function (logistic growth) - typically 0.12 1/day                                                                                                                                                                
-|29|''​upupper''​|//​-//​|Turnover|fraction of nutrient uptake in uppermost soil layer| +| 29  | ''​upupper'' ​    ​| //-//                    | Turnover ​   | fraction of nutrient uptake in uppermost soil layer                                                                                                                                                                                                        
-|30|''​pnupr''​|//​-//​|Turnover|P-N relationship for nutrient uptake| +| 30  | ''​pnupr'' ​      ​| //-//                    | Turnover ​   | P-N relationship for nutrient uptake ​                                                                                                                                                                                                                      ​
-|31|''​bd1''​|//​julian day//​|Turnover|day number for spring ploughing, give 0 if no spring ploughing.| +| 31  | ''​bd1'' ​        ​| //julian day//           ​| Turnover ​   | day number for spring ploughing, give 0 if no spring ploughing. ​                                                                                                                                                                                           
-|32|''​bd2''​|//​julian day//​|Turnover|day number for start of growth season in spring (typically sow date or a few days later). Default method for start of growth season, but also needed for ground cover/crop cover calculations.| +| 32  | ''​bd2'' ​        ​| //julian day//           ​| Turnover ​   | day number for start of growth season in spring (typically sow date or a few days later). Default method for start of growth season, but also needed for ground cover/crop cover calculations. ​                                                            ​
-|33|''​bd3''​|//​julian day//​|Turnover|day number for harvest (end of growing season)| +| 33  | ''​bd3'' ​        ​| //julian day//           ​| Turnover ​   | day number for harvest (end of growing season) ​                                                                                                                                                                                                            ​
-|34|''​bd4''​|//​julian day//​|Turnover|day number for autumn ploughing, 0 if no autumn ploughing| +| 34  | ''​bd4'' ​        ​| //julian day//           ​| Turnover ​   | day number for autumn ploughing, 0 if no autumn ploughing ​                                                                                                                                                                                                 
-|35|''​bd5''​|//​julian day//​|Turnover|day number for autumn crop’s grown season start (typically sow date or some days later), 0 if not used| +| 35  | ''​bd5'' ​        ​| //julian day//           ​| Turnover ​   | day number for autumn crop’s grown season start (typically sow date or some days later), 0 if not used                                                                                                                                                     ​
-|36|''​ccmax1''​|//​-//​|Turnover|Maximum crop cover fraction (between 0 and 1) for harvested crops during the spring-summer growth period.\\ **OR**\\ Maximum crop cover for permanent vegetation (e.g. forest).| +| 36  | ''​ccmax1'' ​     | //-//                    | Turnover ​   | Maximum crop cover fraction (between 0 and 1) for harvested crops during the spring-summer growth period.\\ **OR**\\ Maximum crop cover fraction ​for permanent vegetation (e.g. forest). ​                                                                  ​
-|37|''​ccmax2''​|//​-//​|Turnover|Maximum crop cover fraction (between 0 and 1) for harvested crops during the autumn-winter growth period. Always 0 for permanent vegetation.| +| 37  | ''​ccmax2'' ​     | //-//                    | Turnover ​   | Maximum crop cover fraction (between 0 and 1) for harvested crops during the autumn-winter growth period ​(e.g. set to 0 for spring-sown crops, and to > 0 for autumn-sown crops). Always 0 for permanent vegetation. ​                                      ​
-|38|''​gcmax1''​|//​-//​|Turnover|Maximum ground cover fraction (between 0 and 1) for harvested crops during the spring-summer growth period.\\ **OR**\\ Maximum ground cover for permanent vegetation (e.g. forest).| +| 38  | ''​gcmax1'' ​     | //-//                    | Turnover ​   | Maximum ground cover fraction (between 0 and 1) for harvested crops during the spring-summer growth period.\\ **OR**\\ Maximum ground cover fraction ​for permanent vegetation (e.g. forest). ​                                                              ​
-|39|''​gcmax2''​|//​-//​|Turnover|Maximum ground cover fraction (between 0 and 1) for harvested crops during the autumn-winter growth period ​(e.g. set to 0 for spring-sown crops, ​and to >0 for autumn-sown crops). Always 0 for permanent vegetation.+| 39  | ''​gcmax2'' ​     | //-//                    | Turnover ​   | Maximum ground cover fraction (between 0 and 1) for harvested crops during the autumn-winter growth period. ​Always ​0 for permanent vegetation. ​                                                                                                            | 
-|40|''​plantday''​|//​julian day//​|Irrigation|day number for planting| +| 40  | ''​irrcrop'' ​   | //-//           | Irrigation ​ | Flag for irrigated ​crops (1 for irrigated, 0 for other (default))                                                                                                                                                                                                             
-|41|''​lengthini''​|//​days//​|Irrigation|number of days for initial crop growth period| +41  ​| ''​plantday'' ​   | //julian day//           ​| Irrigation ​ | day number for planting ​                                                                                                                                                                                                                                   
-|42|''​kcbini''​|//​-//​|Irrigation|basal crop coefficient for initial crop growth period| +42  ​| ''​lengthini'' ​  ​| //​days// ​                ​| Irrigation ​ | number of days for initial crop growth period ​                                                                                                                                                                                                             
-|43|''​lengthdev''​|//​days//​|Irrigation|number of days for development crop growth period| +43  ​| ''​kcbini'' ​     | //-//                    | Irrigation ​ | basal crop coefficient for initial crop growth period ​                                                                                                                                                                                                     
-|44|''​lengthmid''​|//​days//​|Irrigation|number of days for middle crop growth period| +44  ​| ''​lengthdev'' ​  ​| //​days// ​                ​| Irrigation ​ | number of days for development crop growth period ​                                                                                                                                                                                                         
-|45|''​kcbmid''​|//​-//​|Irrigation|basal crop coefficient for middle crop growth period| +45  ​| ''​lengthmid'' ​  ​| //​days// ​                ​| Irrigation ​ | number of days for middle crop growth period ​                                                                                                                                                                                                              ​
-|46|''​lengthlate''​|//​days//​|Irrigation|number of days for late crop growth period| +46  ​| ''​kcbmid'' ​     | //-//                    | Irrigation ​ | basal crop coefficient for middle crop growth period ​                                                                                                                                                                                                      ​
-|47|''​kcbend''​|//​-//​|Irrigation|basal crop coefficient for end of late crop growth period| +47  ​| ''​lengthlate'' ​ | //​days// ​                ​| Irrigation ​ | number of days for late crop growth period ​                                                                                                                                                                                                                ​
-|48|''​dlref''​|//​-//​|Irrigation|reference depletion level| +48  ​| ''​kcbend'' ​     | //-//                    | Irrigation ​ | basal crop coefficient for end of late crop growth period ​                                                                                                                                                                                                 
-|49|''​imm_start''​|//​julian day//​|Irrigation|day number for start of immersion period| +| 48  | ''​dlref'' ​      ​| //-//                    | Irrigation ​ | reference depletion level                                                                                                                                                                                                                                  
-|50|''​imm_end''​|//​julian day//​|Irrigation|day number for end of immersion period (immersion period must be contained in irrigation period)| +50  ​| ''​imm_start'' ​  ​| //julian day//           ​| Irrigation ​ | day number for start of immersion period. Zero (default) for non-immersed crops. ​                                                                                                                                                                          
-|51|''​daylength''​|//​hours//​|Turnover|length of day needed to start accumulate GDD (alternative method ​for start of growth ​season)| +51  ​| ''​imm_end'' ​    ​| //julian day//           ​| Irrigation ​ | day number for end of immersion period (immersion period must be contained in irrigation period). Zero (default) for non-immersed crops. ​                                                                                                                  
-|52|''​gddsow''​|//​degreedays//​|Turnover|GDD needed to start growth season (alternative method ​for start of growth ​season)| +52  ​| ''​gsdaylen'' ​  ​| //​hours// ​               | Turnover/ Irrigation ​   ​growth season parameter, ​length of day needed to start accumulate GDD (for alternative ​growth ​start model 1-3                                                                                                                                                              ​
-|53|''​basetemp''​|//​degree Celsius//​|Turnover|temperature deducted from airtemp when calculating GDD (typical value 0-10) (alternative ​method for start of growth season)| +53  ​| ''​gsgddsow'' ​     | //​degreedays// ​          ​| Turnover/ Irrigation ​   ​growth season parameter, ​GDD needed to start growth season (for alternative ​growth ​start model 1-3                                                                                                                                                                         
-|54|''​firstday''​|//​julian day//​|Turnover|first day when GDD accumulation can start. Usually set to 1 (alternative method ​for start of growth season)|+54  ​| ''​gsbasetemp'' ​   | //degree Celsius// ​      ​| Turnover/ Irrigation ​   ​growth season parameter, ​temperature deducted from airtemp when calculating GDD (typical value 0-10) (for alternative ​growth ​start model 1-3                                                                                                                               
 +55  ​| ''​gsfirstday'' ​   | //julian day//           ​| Turnover/ Irrigation ​   ​growth season parameter, ​first day when GDD accumulation ​or temperature above threshold calculation ​can start. Usually set to 1 (for alternative growth ​start medel 1-4)                                                                                                                                             | 
 +| 56  | ''​gsdaytemp'' ​   | //degree Celsius// ​       | Turnover/ Irrigation ​   | growth season parameter, temperature threshold for counting the day to the consequetive number ​of days (for alternative growth start model 4)                                                                                                                                            | 
 +| 57  | ''​gsdayacc'' ​   | //​days// ​          | Turnover/ Irrigation ​   | growth season ​parameter, wanted number of consequetive days (for alternative growth start model 4                                                                                                                                           | 
 +| 58  | ''​tamount'' ​    | //​U/​ha// ​                | T1 source ​  | amount of T1 to be applied per year and ha                                                                                                                                                                                                                 | 
 +| 59  | ''​tyear'' ​      | //-//                    | T1 source ​  | year to apply T1, if zero T1 will be applied every year                                                                                                                                                                                                    | 
 +| 60  | ''​tday'' ​       | //julian day//           | T1 source ​  | day to start T1 application ​                                                                                                                                                                                                                               | 
 +| 61  | ''​tnumdays'' ​   | //​days// ​                | T1 source ​  | number of days with T1 application (with start at tday)                                                                                                                                                                                                    | 
 +| 62  | ''​tdaydown'' ​   | //julian day//           | T1 source ​  | day number for T1 to be tilled down                                                                                                                                                                                                                        | 
 +| 63  | ''​tdown1'' ​     | //-//                    | T1 source ​  | fraction of T1 above soil pool that are tilled down to the first soil layer                                                                                                                                                                                | 
 +| 64  | ''​tdown2'' ​     | //-//                    | T1 source ​  | fraction of T1 above soil pool that are tilled down to the second soil layer                                                                                                                                                                               |
 </​sortable>​ </​sortable>​
  
 +Note: The codes för growth start model was before HYPE version 5.26.0 called ''​daylength'',​ ''​gddsow'',​ ''​basetemp'',​ and ''​firstday''​.
start/hype_file_reference/cropdata.txt.1484838907.txt.gz · Last modified: 2023/11/16 14:28 (external edit)