|
|
(29 intermediate revisions by 3 users not shown) |
Line 1: |
Line 1: |
| {{MODFLOW Links}} | | {{MODFLOW Links}}{{Infobox Calibration}}{{GMS:MODFLOW Parameters - Two Methods}} |
| {{Infobox Calibration}} | |
| | |
| {{GMS:MODFLOW Parameters - Two Methods}} | |
| | |
| This article describes how to use the standard MODFLOW parameterization method in GMS. | | This article describes how to use the standard MODFLOW parameterization method in GMS. |
|
| |
|
Line 15: |
Line 11: |
|
| |
|
| ===Editing=== | | ===Editing=== |
| When GMS reads a model that uses standard MODFLOW parameters it converts them to regular GMS key value approach parameters. The parameters can then be edited using the Parameters Dialog. Recharge, evapotranspiration, LPF, and HUF parameters are special in that you can edit the instance and cluster information associated with these types of parameters. | | When GMS reads a model that uses standard MODFLOW parameters it converts them to regular GMS key value approach parameters. The parameters can then be edited using the ''Parameters'' Dialog. Recharge, evapotranspiration, LPF, and HUF parameters are special in that you can edit the instance and cluster information associated with these types of parameters. |
|
| |
|
| ==MODFLOW Parameter Clusters Dialog== | | ==MODFLOW Parameter Clusters Dialog== |
|
| |
|
| The MODFLOW Parameter Clusters Dialog allows users to define instances for RCH, EVT, LPF, and HUF parameters that use clusters. The inputs in this dialog basically follow the necessary inputs for defining a parameter instance in a package file. You may wish to review the [[#MODFLOW Parameter Clusters and Instances|MODFLOW Parameter Clusters and Instances]] section below. | | The ''MODFLOW Parameter Clusters'' dialog accessed from the '''Parameters''' command in the ''MODFLOW'' menu allows defining instances for RCH, EVT, LPF, and HUF parameters that use clusters. The starting value for the first iteration and minimum and maximum values for each parameter can be modified. The inputs in this dialog basically follow the necessary inputs for defining a parameter instance in a package file. You may wish to review the [[GMS:Standard MODFLOW Parameters#MODFLOW Parameter Clusters and Instances|MODFLOW Parameter Clusters and Instances]] section below. |
|
| |
|
| Array based parameters are defined using clusters. A cluster is a multiplier array, a zone array, and specified zone values where the parameter is applied. Multiplier arrays and zone arrays have associated data sets underneath the three dimensional grid in the Project Explorer. | | Array based parameters are defined using clusters. A cluster is a multiplier array, a zone array, and specified zone values where the parameter is applied. Multiplier arrays and zone arrays have associated datasets underneath the three dimensional grid in the Project Explorer. |
|
| |
|
| Instances are enabled for RCH and EVT parameters. Instances allow the user to define multiple sets of clusters that are all tied to one parameter. Then the user may use different instances in different stress periods in their MODFLOW model. For more information on parameter instances consult the MODFLOW documentation. | | Instances are enabled for RCH and EVT parameters. Instances allow defining multiple sets of clusters that are all tied to one parameter. Then use different instances in different stress periods in their MODFLOW model. For more information on parameter instances consult the MODFLOW documentation. |
|
| |
|
| In the MODFLOW Parameters dialog the user selects the "Define clusters" option for a parameter. This will allow the user to specify the number of instances and clusters that are used to define the parameter. | | In the ''MODFLOW Parameters'' dialog, select the '''Define clusters''' option for a parameter. This will allow specifying the number of instances and clusters that are used to define the parameter. |
|
| |
|
| [[Image:ParametersDialog.png|640px]] | | {{hide in print|[[Image:ParametersDialog.png|thumb|none|left|700px|Example of the ''MODFLOW Parameters'' dialog.]]}} |
| | {{only in print|[[Image:ParametersDialog.png|thumb|none|center|400px|Example of the ''MODFLOW Parameters'' dialog.]]}} |
|
| |
|
|
| |
|
| In the Parameter Instances dialog the user defines a name for each parameter instance for RCH and EVT parameters. For LPF parameters a level is defined and for HUF parameters a hyrdogeologic unit is defined. Then for each cluster the user selects a multiplier array and a zone array. These are [[GMS:Data Sets|data sets]] on the 3D Grid. The user must also specify the zone values (IZ) where the parameter is to be applied in the model. If there is more than one IZ value for the cluster then the user enters the numbers with spaces between the entries. So if the parameter is to be applied where the zone array values are 1 and 3 then the user would enter "1 3". The user must also specify the stress periods where an instance is to be used. The numbers entered in the Stress Periods field should also be space delimited. This means if you want an instance to be used in stress periods 1, 2, and 5 then your entry in the Stress Periods field should be "1 2 5". | | In the ''Define Clusters'' dialog define a name for each parameter instance for RCH and EVT parameters. For LPF parameters a level is defined and for HUF parameters a hydrogeologic unit is defined. Then, for each cluster, select a multiplier array and a zone array. These are [[GMS:Datasets|datasets]] on the 3D Grid. Also specify the zone values (IZ) where the parameter is to be applied in the model. If there is more than one IZ value for the cluster then enter the numbers with spaces between the entries. So if the parameter is to be applied where the zone array values are 1 and 3 then enter "1 3". Also specify the stress periods where an instance is to be used. The numbers entered in the Stress Periods field should also be space delimited. This means if you want an instance to be used in stress periods 1, 2, and 5 then your entry in the Stress Periods field should be "1 2 5". |
|
| |
|
| When the package is written out for MODFLOW the instances will be included in the parameter definition and used for forward runs or for parameter estimation runs. | | When the package is written out for MODFLOW the instances will be included in the parameter definition and used for forward runs or for parameter estimation runs. |
|
| |
|
| [[Image:paramInst.png|422px]] | | {{hide in print|[[Image:paramInst.png|thumb|none|570px|Example the ''Define Clusters'' dialog.]]}} |
| | {{only in print|[[Image:paramInst.png|thumb|none|center|380px|Example the ''Define Clusters'' dialog.]]}} |
|
| |
|
| ==MODFLOW Parameter Clusters and Instances== | | ==MODFLOW Parameter Clusters and Instances== |
Line 44: |
Line 42: |
| Here is a brief review of the most important terms used when dealing with parameters. | | Here is a brief review of the most important terms used when dealing with parameters. |
|
| |
|
| *'''''Parameter''''' - Has a name, type, one or more clusters, and zero or more instances. | | *''Parameter'' – Has a name, type, one or more clusters, and zero or more instances. |
| *'''''Parval ''''' - The value of the parameter. | | *''Parval '' – The value of the parameter. |
| *'''''Cluster''''' - Has a multiplier array (''Mltarr''), a zone array (''Zonarr''), and zone numbers (''IZ''). | | *''Cluster'' – Has a multiplier array (''Mltarr''), a zone array (''Zonarr''), and zone numbers (''IZ''). |
| *'''''Mltarr''''' - Name of the multiplier array. Parval is multiplied by this to define the value. | | *''Mltarr'' – Name of the multiplier array. Parval is multiplied by this to define the value. |
| *'''''Zonarr''''' - Name of the zone array used to define the cells that are associated with a parameter. | | *''Zonarr'' – Name of the zone array used to define the cells that are associated with a parameter. |
| *'''''IZ''''' - Up to 10 zone numbers (separated by spaces) that define the cells that are associated with a parameter. | | *''IZ'' – Up to 10 zone numbers (separated by spaces) that define the cells that are associated with a parameter. |
| *'''''Instance''''' - Parameter cluster that could be used for different stress periods in a MODFLOW simulation. | | *''Instance'' – Parameter cluster that could be used for different stress periods in a MODFLOW simulation. |
|
| |
|
| ===Examples=== | | ===Examples=== |
Line 506: |
Line 504: |
| <pre> | | <pre> |
| PARAMETER 1 | | PARAMETER 1 |
| | |
| 3 40 | | 3 40 |
| | |
| Param1 RCH 0.00005 1 INSTANCES 2 | | Param1 RCH 0.00005 1 INSTANCES 2 |
| | |
| Instance1 | | Instance1 |
| | |
| MULT0001 ZONE0001 2 | | MULT0001 ZONE0001 2 |
| | |
| Instance2 | | Instance2 |
| | |
| MULT0002 ZONE0001 2 | | MULT0002 ZONE0001 2 |
| | |
| 1 1 | | 1 1 |
| | |
| Param1 Instance1 | | Param1 Instance1 |
| | |
| 1 1 | | 1 1 |
| | |
| Param1 Instance2 | | Param1 Instance2 |
| | |
| 1 1 | | 1 1 |
| | |
| Param1 Instance1 | | Param1 Instance1 |
| | |
| </pre> | | </pre> |
| || | | || |
| <pre> | | <pre> |
| PARAMETER NPRCH | | PARAMETER NPRCH |
| | |
| NRCHOP IRCHCB | | NRCHOP IRCHCB |
| PARNAM PARTYP Parval NCLU INSTANCES NUMINST | | |
| | PARNAM PARTYP Parval NCLU |
| | INSTANCES NUMINST |
| INSTNAM | | INSTNAM |
| | |
| Mltarr Zonarr IZ | | Mltarr Zonarr IZ |
| | |
| INSTNAM | | INSTNAM |
| | |
| Mltarr Zonarr IZ | | Mltarr Zonarr IZ |
| | |
| INRECH INIRCH | | INRECH INIRCH |
| | |
| Pname Iname | | Pname Iname |
| | |
| INRECH INIRCH | | INRECH INIRCH |
| | |
| Pname Iname | | Pname Iname |
| | |
| INRECH INIRCH | | INRECH INIRCH |
| | |
| Pname Iname | | Pname Iname |
| | |
| </pre> | | </pre> |
| || | | || |
| <pre> | | <pre> |
| One recharge parameters will be used | | One recharge parameters will be used |
| Apply to highest active cell, save CCF to unit 40 | | |
| Parameter name, type, value number of clusters, number of instances | | Apply to highest active cell, |
| | save CCF to unit 40 |
| | Parameter name, type, value number |
| | of clusters, number of instances |
| Instance name | | Instance name |
| Multiplier array, zone array, and zone number | | |
| | Multiplier array, zone array, |
| | and zone number |
| Instance name | | Instance name |
| Multiplier array, zone array, and zone number | | |
| One parameters used in current stress period, INIRCH (ignored) | | Multiplier array, zone array, |
| Name of parameter and name of instance used in this stress period | | and zone number |
| One parameters used in current stress period, INIRCH (ignored) | | One parameters used in current stress |
| Name of parameter and name of instance used in this stress period | | period, INIRCH (ignored) |
| One parameters used in current stress period, INIRCH (ignored) | | Name of parameter and name of instance |
| Name of parameter and name of instance used in this stress period | | used in this stress period |
| | One parameters used in current stress |
| | period, INIRCH (ignored) |
| | Name of parameter and name of instance |
| | used in this stress period |
| | One parameters used in current stress |
| | period, INIRCH (ignored) |
| | Name of parameter and name of instance |
| | used in this stress period |
| </pre> | | </pre> |
| |} | | |} |
Line 667: |
Line 704: |
| [[Category:MODFLOW]] | | [[Category:MODFLOW]] |
| [[Category:Parameters]] | | [[Category:Parameters]] |
| | [[Category:GMS Dialogs|S]] |
MODFLOW |
---|
Pre-processing |
---|
MODFLOW Commands |
Building a MODFLOW Model |
Map to MODFLOW |
Calibration |
Packages Supported in GMS |
Saving a MODFLOW Simulation |
Importing MODFLOW Files |
Unsupported MODFLOW Features |
Run MODFLOW |
Post-processing |
---|
MODFLOW Display Options |
MODFLOW Post-Processing Viewing Options |
Reading a MODFLOW Simulation |
Tutorials |
---|
Packages |
---|
Flow: |
BCF6, HUF, LPF, UPW |
---|
Solvers: |
DE4, GMG, NWT, PCG,
PCGN, LMG, SIP, SOR,
SMS |
---|
Other: |
BAS6, BFH, CHD1, CLN,
DRN1, DRT1, EVT1, ETS1,
GAGE, GHB1, GNC, HFB1,
HUF, LAK3, MNW1, MNW2,
OUT1, RCH1, RIV1, SFR2,
STR1, SUB1, SWI2, WEL1,
UZF1 |
---|
|
Caution
There are two ways to do MODFLOW parameterization in GMS:
- The key value method (recommended)
- The standard MODFLOW method
The "key value" approach is the preferred approach to defining parameters in GMS. Using key values is the only option for WEL, RIV, DRT, DRN, GHB, CHD, STR, and HFB parameters. In GMS, using the key value approach with these parameters provides the same functionality of parameter instances available in MODFLOW.
Key values can also be used with array based parameters. However, GMS does support defining array based parameters with clusters and instances (for ETS, EVT, RCH parameters).
When reading in a MODFLOW simulation that was created outside of GMS all parameters will be converted to key values so long as the parameter can be represented by key values.
Key values can not be used to represent an array based parameter if the parameter is defined using more than one cluster or more than one instance. Also, if more than one parameter uses the same zone array with a matching IZ value then the parameter can not be represented using key values. Further, if the multiplier array associated with the parameter has values other than 1.0 in the zones where the parameter is used then the parameter can not be represented with key values.
The standard MODFLOW method is considered an "advanced" feature in GMS. Only users that understand how MODFLOW uses parameters should attempt to use this feature.
|
This article describes how to use the standard MODFLOW parameterization method in GMS.
Support in GMS
Reading
GMS can read MODFLOW models that use standard MODFLOW parameters.
Writing
GMS writes MODFLOW models using the key value approach. So, although GMS can read models that use standard MODFLOW parameters, it cannot write them using the standard MODFLOW parameter method. Writing is usually done using the key value method. There are a few exceptions which include recharge and evapotranspiration parameter instances, and LPF and HUF parameter clusters. GMS will write these parameters using the standard MODFLOW parameter method because these cannot always be represented using the key value method.
Editing
When GMS reads a model that uses standard MODFLOW parameters it converts them to regular GMS key value approach parameters. The parameters can then be edited using the Parameters Dialog. Recharge, evapotranspiration, LPF, and HUF parameters are special in that you can edit the instance and cluster information associated with these types of parameters.
MODFLOW Parameter Clusters Dialog
The MODFLOW Parameter Clusters dialog accessed from the Parameters command in the MODFLOW menu allows defining instances for RCH, EVT, LPF, and HUF parameters that use clusters. The starting value for the first iteration and minimum and maximum values for each parameter can be modified. The inputs in this dialog basically follow the necessary inputs for defining a parameter instance in a package file. You may wish to review the MODFLOW Parameter Clusters and Instances section below.
Array based parameters are defined using clusters. A cluster is a multiplier array, a zone array, and specified zone values where the parameter is applied. Multiplier arrays and zone arrays have associated datasets underneath the three dimensional grid in the Project Explorer.
Instances are enabled for RCH and EVT parameters. Instances allow defining multiple sets of clusters that are all tied to one parameter. Then use different instances in different stress periods in their MODFLOW model. For more information on parameter instances consult the MODFLOW documentation.
In the MODFLOW Parameters dialog, select the Define clusters option for a parameter. This will allow specifying the number of instances and clusters that are used to define the parameter.
Example of the
MODFLOW Parameters dialog.
In the Define Clusters dialog define a name for each parameter instance for RCH and EVT parameters. For LPF parameters a level is defined and for HUF parameters a hydrogeologic unit is defined. Then, for each cluster, select a multiplier array and a zone array. These are datasets on the 3D Grid. Also specify the zone values (IZ) where the parameter is to be applied in the model. If there is more than one IZ value for the cluster then enter the numbers with spaces between the entries. So if the parameter is to be applied where the zone array values are 1 and 3 then enter "1 3". Also specify the stress periods where an instance is to be used. The numbers entered in the Stress Periods field should also be space delimited. This means if you want an instance to be used in stress periods 1, 2, and 5 then your entry in the Stress Periods field should be "1 2 5".
When the package is written out for MODFLOW the instances will be included in the parameter definition and used for forward runs or for parameter estimation runs.
Example the
Define Clusters dialog.
MODFLOW Parameter Clusters and Instances
For those wanting to follow the standard MODFLOW approach to parameterization, the following explanation may be helpful. You should refer to the MODFLOW documentation for more information.
Definitions
Here is a brief review of the most important terms used when dealing with parameters.
- Parameter – Has a name, type, one or more clusters, and zero or more instances.
- Parval – The value of the parameter.
- Cluster – Has a multiplier array (Mltarr), a zone array (Zonarr), and zone numbers (IZ).
- Mltarr – Name of the multiplier array. Parval is multiplied by this to define the value.
- Zonarr – Name of the zone array used to define the cells that are associated with a parameter.
- IZ – Up to 10 zone numbers (separated by spaces) that define the cells that are associated with a parameter.
- Instance – Parameter cluster that could be used for different stress periods in a MODFLOW simulation.
Examples
Below are some examples showing different ways parameters can be used. The examples use parameters to define recharge for a forward run (not doing inverse modeling). The grid in the examples is 5 rows, 5 columns, 1 layer. The examples use the following multiplier and zone arrays.
Multiplier arrays
MULT0001 |
MULT0002
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
1.0
|
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
0.5
|
|
Zone Arrays
ZONE0001 |
ZONE0002 |
ZONE0003
|
2
|
2
|
2
|
0
|
0
|
2
|
2
|
2
|
0
|
0
|
2
|
2
|
2
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
|
3
|
3
|
3
|
3
|
3
|
3
|
3
|
3
|
3
|
3
|
4
|
4
|
4
|
4
|
4
|
4
|
4
|
4
|
4
|
4
|
5
|
5
|
5
|
5
|
5
|
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
6
|
7
|
0
|
0
|
0
|
6
|
7
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
|
Example 1
Steady state.
1 recharge parameter with 1 cluster, 1 instance.
Recharge file |
Variables |
Explanations
|
PARAMETER 1
3 40
Param1 RCH 0.00005 1
MULT0001 ZONE0001 2
1 1
Param1
|
PARAMETER NPRCH
NRCHOP IRCHCB
PARNAM PARTYP Parval NCLU
Mltarr Zonarr IZ
INRECH INIRCH
Pname
|
One recharge parameter will be used
Apply to highest active cell, save CCF to unit 40
Parameter name, type, value and number of clusters
Multiplier array, zone array, and zone number
One parameter used in current stress period, INIRCH (ignored)
Name of parameter used to define RECH in this stress period
|
Results
The resulting recharge applied to the top-most active layer would be:
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
Example 2
Steady state.
2 recharge parameters:
- the first with 1 cluster, 1 instance
- the second with 2 clusters, 1 instance.
Recharge file |
Variables |
Explanations
|
PARAMETER 2
3 40
Param1 RCH 0.00005 1
MULT0001 ZONE0001 2
Param2 RCH 0.00004 2
MULT0002 ZONE0002 4 5
MULT0002 ZONE0003 6 7
2 1
Param1
Param2
|
PARAMETER NPRCH
NRCHOP IRCHCB
PARNAM PARTYP Parval NCLU
Mltarr Zonarr IZ
PARNAM PARTYP Parval NCLU
Mltarr Zonarr IZ
Mltarr Zonarr IZ
INRECH INIRCH
Pname
Pname
|
Two recharge parameters will be used
Apply to highest active cell, save CCF to unit 40
Parameter name, type, value and number of clusters
Multiplier array, zone array, and zone number
Parameter name, type, value and number of clusters
Multiplier array, zone array, and zone numbers
Multiplier array, zone array, and zone numbers
Two parameters used in current stress period, INIRCH (ignored)
Name of parameter used to define RECH in this stress period
Name of parameter used to define RECH in this stress period
|
Results
The intermediate results for each parameter cluster are listed below:
Param1 |
Param2, cluster 1 |
Param2, cluster 2
|
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0.00002
|
0.00002
|
0
|
0
|
0
|
0.00002
|
0.00002
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
|
The final result after accumulating each cluster is:
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0.00005
|
0.00005
|
0.00007
|
0.00002
|
0
|
0.00007
|
0.00007
|
0.00009
|
0.00004
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
0.00002
|
Example 3
Transient. 1 recharge parameter with 1 cluster, 2 instances. One instance is used in the first and third stress periods, and the other is used in the second stress period.
Recharge file |
Variables |
Explanations
|
PARAMETER 1
3 40
Param1 RCH 0.00005 1 INSTANCES 2
Instance1
MULT0001 ZONE0001 2
Instance2
MULT0002 ZONE0001 2
1 1
Param1 Instance1
1 1
Param1 Instance2
1 1
Param1 Instance1
|
PARAMETER NPRCH
NRCHOP IRCHCB
PARNAM PARTYP Parval NCLU
INSTANCES NUMINST
INSTNAM
Mltarr Zonarr IZ
INSTNAM
Mltarr Zonarr IZ
INRECH INIRCH
Pname Iname
INRECH INIRCH
Pname Iname
INRECH INIRCH
Pname Iname
|
One recharge parameters will be used
Apply to highest active cell,
save CCF to unit 40
Parameter name, type, value number
of clusters, number of instances
Instance name
Multiplier array, zone array,
and zone number
Instance name
Multiplier array, zone array,
and zone number
One parameters used in current stress
period, INIRCH (ignored)
Name of parameter and name of instance
used in this stress period
One parameters used in current stress
period, INIRCH (ignored)
Name of parameter and name of instance
used in this stress period
One parameters used in current stress
period, INIRCH (ignored)
Name of parameter and name of instance
used in this stress period
|
Results
The intermediate results for each parameter cluster are listed below:
Stress Period 1, Param1, Instance RCH_1_1
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
|
Stress Period 2, Param1, Instance RCH_1_2
0.000025
|
0.000025
|
0.000025
|
0
|
0
|
0.000025
|
0.000025
|
0.000025
|
0
|
0
|
0.000025
|
0.000025
|
0.000025
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
|
Stress Period 3, Param1, Instance RCH_1_1
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0.00005
|
0.00005
|
0.00005
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
|