Team:Buenos Aires/ model
From 2013.igem.org
FedeVignale (Talk | contribs) (→Equations for mRNA Transciption) |
|||
(22 intermediate revisions not shown) | |||
Line 2: | Line 2: | ||
- | + | ='''Introduction'''= | |
- | + | ||
- | + | ||
Our objective was to assemble a system that could respond to different concentrations of a specific contaminant in water. | Our objective was to assemble a system that could respond to different concentrations of a specific contaminant in water. | ||
Line 12: | Line 10: | ||
To skip directly to our mathematical model [[#Mathematical Model|click here]]. | To skip directly to our mathematical model [[#Mathematical Model|click here]]. | ||
- | + | ||
+ | Note: in this section, AHL is refered as HSL. | ||
+ | |||
+ | ='''Got Ideas?'''= | ||
For our biosensor we came up with '''three different designs''' each one motivated on improving the flaws detected while analyzing the previous ones using '''mathematical models''' as our main tools. | For our biosensor we came up with '''three different designs''' each one motivated on improving the flaws detected while analyzing the previous ones using '''mathematical models''' as our main tools. | ||
We describe briefly the first two designs, which were rejected, to emphasize the importance of mathematical model to '''gain insight''' on how our system works and as a '''feasibility study''' taking into considerations . | We describe briefly the first two designs, which were rejected, to emphasize the importance of mathematical model to '''gain insight''' on how our system works and as a '''feasibility study''' taking into considerations . | ||
- | + | ==Arsenic promoter + ArsR + Reporter== | |
First we tried to keep it as simple as we could. Figure 1 shows our first design which, in theory, produces different responses to different concentrations of arsenic in water. Figure 2 shows a simulation graphing the time series response of the Pars promoter-arsR for different concentrations of ars. | First we tried to keep it as simple as we could. Figure 1 shows our first design which, in theory, produces different responses to different concentrations of arsenic in water. Figure 2 shows a simulation graphing the time series response of the Pars promoter-arsR for different concentrations of ars. | ||
- | [[File:Pars+reporter.png|200px|thumb|left|'''Figure 1:''' Our first biological design: Arsenic promoter repressed by ArsR | + | [[File:Pars+reporter.png|200px|thumb|left|'''Figure 1:''' Our first biological design: Arsenic promoter repressed by ArsR which is inhibit by Arsenic.]] |
Although we have a system that recognize and respond differently to different concentrations of arsenic since our reporter was meant to be a colored pigment (the reasons for this are detailed in the project tab) scale tuning needs to be taken into account.The reporter is downstream the Pars promoter and the design shows '''little flexibility''', i.e. few available parameters, to produce a discernible colored output. | Although we have a system that recognize and respond differently to different concentrations of arsenic since our reporter was meant to be a colored pigment (the reasons for this are detailed in the project tab) scale tuning needs to be taken into account.The reporter is downstream the Pars promoter and the design shows '''little flexibility''', i.e. few available parameters, to produce a discernible colored output. | ||
+ | |||
+ | [[File:IGEMBsAs2013tototo.png|300px|thumb|right|'''Figure 2:''' Simulation of the time series response of the Arsenic promoter repressed by ArsR for different concentrations of Arsenic.]] | ||
Another problem is that we aimed to use a reporter (unknown at that time) with a low degradation rate thus if the production of the pigment didn't stop at some point, accumulation of the pigment leading to '''eye saturation''' would become a problem. Although the model shows a steady state (figure 2) this accounts only for one bacteria with the degradation/dilution rate governed mainly by dilution. | Another problem is that we aimed to use a reporter (unknown at that time) with a low degradation rate thus if the production of the pigment didn't stop at some point, accumulation of the pigment leading to '''eye saturation''' would become a problem. Although the model shows a steady state (figure 2) this accounts only for one bacteria with the degradation/dilution rate governed mainly by dilution. | ||
Line 29: | Line 32: | ||
Nothing else to do but to come up with a different idea for our design. Note that the model of the Pars promoter + ArsR is still useful because is the main block of any design to detect Arsenic in water. For details on how we model this [[#Mathematical Model|click here]]. | Nothing else to do but to come up with a different idea for our design. Note that the model of the Pars promoter + ArsR is still useful because is the main block of any design to detect Arsenic in water. For details on how we model this [[#Mathematical Model|click here]]. | ||
- | + | ==Toggle Switch + Quorum Sensing + Reporter== | |
- | [[File:toggleswitch.png| | + | [[File:toggleswitch.png|300px|thumb|right|'''Figure 3:''' Graph of the nullclines of a toggle network with (a) bistability consequence of repressor cooperativity and (b) monostability consequence of no repressor cooperativity.]] |
Our second design was based on the work done by the [https://2011.igem.org/Team:Grenoble Grenoble Team 2010]. They coupled a toggle switch with a quorum sensing circuit to produce a system that produces a colored pigment if and only if a specific IPTG/Hg concentration ratio existed in the water. IPTG concentrations are determined previously so as to activate the system at a desired Hg concentration. | Our second design was based on the work done by the [https://2011.igem.org/Team:Grenoble Grenoble Team 2010]. They coupled a toggle switch with a quorum sensing circuit to produce a system that produces a colored pigment if and only if a specific IPTG/Hg concentration ratio existed in the water. IPTG concentrations are determined previously so as to activate the system at a desired Hg concentration. | ||
Line 41: | Line 44: | ||
* The '''initial setting makes the toggle harder to switch back''' and although the Grenoble Team proposed a possible solution they never effectively tested it. This attempted against our desire of making a functional device and not a theoretical device. | * The '''initial setting makes the toggle harder to switch back''' and although the Grenoble Team proposed a possible solution they never effectively tested it. This attempted against our desire of making a functional device and not a theoretical device. | ||
- | + | ==Temporal control of reporter expression with an Incoherent-FFL== | |
Parallel to the Toggle Switch + Quorum Sensing design we came up with an idea that could solve the problems of our [[#Arsenic promoter + ArsR + Reporter|first design]]: Pars + ArsR + Reporter. | Parallel to the Toggle Switch + Quorum Sensing design we came up with an idea that could solve the problems of our [[#Arsenic promoter + ArsR + Reporter|first design]]: Pars + ArsR + Reporter. | ||
Line 54: | Line 57: | ||
Based on [http://www.pnas.org/content/101/17/6355.long Basu 2004] biological network, we designed our own which met our basic requirements. For a detailed description [https://2013.igem.org/Team:Buenos_Aires/_biological_design click here]. | Based on [http://www.pnas.org/content/101/17/6355.long Basu 2004] biological network, we designed our own which met our basic requirements. For a detailed description [https://2013.igem.org/Team:Buenos_Aires/_biological_design click here]. | ||
- | + | ===Mathematical Model=== | |
'''The more you know =★''': Before starting to talk about our model, if you know nothing about mathematical models of gene networks we highly recommend '''Uri Alon's book: An Introduction to Systems Biology'''. | '''The more you know =★''': Before starting to talk about our model, if you know nothing about mathematical models of gene networks we highly recommend '''Uri Alon's book: An Introduction to Systems Biology'''. | ||
+ | For an advance deterministic model check out [https://2009.igem.org/Team:Aberdeen_Scotland/internal/deterministic Aberdeen Team 2009]. | ||
- | |||
- | With our model, we wanted to understand qualitatively the general behavior of our system and its feasibility. In theory, we knew what to expect from the system but when simulated, unexpected behaviors may arise. | + | With our model, we wanted to understand qualitatively the general behavior of our last system and its feasibility. In theory, we knew what to expect from the system but when simulated, unexpected behaviors may arise. |
[[File:modeldesign.png|400px|thumb|center|'''Figure 4:''' Scheme of our simplified gene network.]] | [[File:modeldesign.png|400px|thumb|center|'''Figure 4:''' Scheme of our simplified gene network.]] | ||
Line 70: | Line 73: | ||
The input functions used to describe gene expression are detailed in the next section. | The input functions used to describe gene expression are detailed in the next section. | ||
+ | ===Input functions for gene expression=== | ||
+ | To describe the transcription rate of a gene under the influence of a transcription factor we use the family of gene input functions known as '''Hill functions''': | ||
+ | <html> | ||
+ | <br> | ||
- | + | </html> | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
'''Hill function for activator''' | '''Hill function for activator''' | ||
[[Image:formula activate.jpg|150px]] | [[Image:formula activate.jpg|150px]] | ||
+ | |||
+ | <html> | ||
+ | <br> | ||
+ | |||
+ | </html> | ||
'''Hill function for repressor''' | '''Hill function for repressor''' | ||
Line 87: | Line 95: | ||
[[Image:formula reporter.jpg|150px]] | [[Image:formula reporter.jpg|150px]] | ||
+ | <html> | ||
+ | <br> | ||
+ | |||
+ | </html> | ||
'''Hill function for repressor lifted by inducer''' | '''Hill function for repressor lifted by inducer''' | ||
[[Image:formula rep lift inducer.jpg|200px]] | [[Image:formula rep lift inducer.jpg|200px]] | ||
+ | |||
+ | <html> | ||
+ | <br> | ||
+ | |||
+ | </html> | ||
where β is the maximal expression level of the promoter, [X] is the concentration of protein X and K the activation coefficient. It defines the amount of X needed to significantly activate or repressed a promoter. [I] is the concentration of the molecule that inhibits the repressor [X] where K<sub>I</sub> defines the amount of [I] needed to significantly inhibit [X]. | where β is the maximal expression level of the promoter, [X] is the concentration of protein X and K the activation coefficient. It defines the amount of X needed to significantly activate or repressed a promoter. [I] is the concentration of the molecule that inhibits the repressor [X] where K<sub>I</sub> defines the amount of [I] needed to significantly inhibit [X]. | ||
- | + | ===Equations for mRNA Transciption=== | |
Our system consists of four promoters, thus we need to model four different types of mRNA, each one with different transcription rates depending on the promoter strength. Each type of mRNA was labeled using the names shown next to the promoter in figure 4. By identifying one promoter with one mRNA we are assuming no difference in mRNA concentrations for different genes under the same promoter. This assumption is not too risky considering the lengths of our constructions. | Our system consists of four promoters, thus we need to model four different types of mRNA, each one with different transcription rates depending on the promoter strength. Each type of mRNA was labeled using the names shown next to the promoter in figure 4. By identifying one promoter with one mRNA we are assuming no difference in mRNA concentrations for different genes under the same promoter. This assumption is not too risky considering the lengths of our constructions. | ||
Line 105: | Line 122: | ||
'''[mRNA P<sub>ars</sub>] – repressed by ArsR which is inhibit by Arsenic''' | '''[mRNA P<sub>ars</sub>] – repressed by ArsR which is inhibit by Arsenic''' | ||
- | |||
- | |||
- | |||
- | |||
- | |||
[[Image:formula pars.jpg|700px]] | [[Image:formula pars.jpg|700px]] | ||
Line 119: | Line 131: | ||
'''[mRNA P<sub>luxR</sub>] – constitutive promoter''' | '''[mRNA P<sub>luxR</sub>] – constitutive promoter''' | ||
- | |||
- | |||
- | |||
- | |||
- | |||
[[Image:formula pluxr.jpg|550px]] | [[Image:formula pluxr.jpg|550px]] | ||
Line 133: | Line 140: | ||
'''[mRNA P<sub>CI</sub>] – activated by P complex''' | '''[mRNA P<sub>CI</sub>] – activated by P complex''' | ||
- | |||
- | |||
- | |||
- | |||
- | |||
[[Image:formula pci.jpg|600px]] | [[Image:formula pci.jpg|600px]] | ||
Line 147: | Line 149: | ||
'''[mRNA P<sub>hyb</sub>] – activated by P complex, repressed by lambda CI''' | '''[mRNA P<sub>hyb</sub>] – activated by P complex, repressed by lambda CI''' | ||
- | |||
- | |||
- | |||
- | |||
- | |||
[[Image:formula phyb.jpg|700px]] | [[Image:formula phyb.jpg|700px]] | ||
Line 157: | Line 154: | ||
we assume no competition between activation and repression because the binding sites of complex P and lambda CI are not physically entangled. | we assume no competition between activation and repression because the binding sites of complex P and lambda CI are not physically entangled. | ||
- | + | ===Equations for Protein Translation=== | |
Protein rate of translation is proportional to the correspondent mRNA concentration which competes against the degradation + dilution term. The dilution term was calculated considering one cell division every 30 minutes. | Protein rate of translation is proportional to the correspondent mRNA concentration which competes against the degradation + dilution term. The dilution term was calculated considering one cell division every 30 minutes. | ||
Line 170: | Line 167: | ||
*μ is the coefficient of enzymatic production of HSL. | *μ is the coefficient of enzymatic production of HSL. | ||
+ | |||
+ | <html> | ||
+ | |||
+ | <br> | ||
+ | </html> | ||
'''[ArsR] - repress P<sub>ars</sub>''' | '''[ArsR] - repress P<sub>ars</sub>''' | ||
+ | |||
[[Image:formula arsr.jpg|500px]] | [[Image:formula arsr.jpg|500px]] | ||
+ | |||
+ | <html> | ||
+ | |||
+ | <br> | ||
+ | </html> | ||
'''[luxI] - triggers HSL production''' | '''[luxI] - triggers HSL production''' | ||
+ | |||
[[Image:formula luxi.jpg|500px]] | [[Image:formula luxi.jpg|500px]] | ||
+ | |||
+ | <html> | ||
+ | |||
+ | <br> | ||
+ | </html> | ||
'''[luxR] - forms complex protein P with HSL''' | '''[luxR] - forms complex protein P with HSL''' | ||
[[Image:formula luxr.jpg|700px]] | [[Image:formula luxr.jpg|700px]] | ||
+ | |||
+ | <html> | ||
+ | |||
+ | <br> | ||
+ | </html> | ||
'''[HSL] - forms complex protein P with luxR''' | '''[HSL] - forms complex protein P with luxR''' | ||
[[Image:formula hsl.jpg|700px]] | [[Image:formula hsl.jpg|700px]] | ||
+ | |||
+ | <html> | ||
+ | |||
+ | <br> | ||
+ | </html> | ||
'''[P] - complex protein HSL + luxR. Activates P<sub>CI</sub> and P<sub>hyb</sub>''' | '''[P] - complex protein HSL + luxR. Activates P<sub>CI</sub> and P<sub>hyb</sub>''' | ||
[[Image:formula p.jpg|450px]] | [[Image:formula p.jpg|450px]] | ||
+ | |||
+ | <html> | ||
+ | |||
+ | <br> | ||
+ | </html> | ||
'''[CI] - inhibits P<sub>hyb</sub>''' | '''[CI] - inhibits P<sub>hyb</sub>''' | ||
[[Image:formula ci.jpg|450px]] | [[Image:formula ci.jpg|450px]] | ||
+ | |||
+ | <html> | ||
+ | |||
+ | <br> | ||
+ | </html> | ||
'''[RFP] - colored pigment''' | '''[RFP] - colored pigment''' | ||
Line 199: | Line 233: | ||
[[Image:formula rfp.jpg|450px]] | [[Image:formula rfp.jpg|450px]] | ||
- | ==Results== | + | <html> |
+ | |||
+ | <br> | ||
+ | </html> | ||
+ | |||
+ | ===Parameters=== | ||
+ | |||
+ | We use the parameters establish by [https://2009.igem.org/Team:Aberdeen_Scotland/parameters Aberdeen Team 2009]. | ||
+ | Arsenic related coefficients are not available in literature so we estimated them based in similar genetic components. | ||
+ | It is mandatory that a public database with reliable coefficients is created. | ||
+ | |||
+ | ===Results=== | ||
Line 223: | Line 268: | ||
[[File:rfparsdistcero.png|400px|thumb|center|'''Figure 8:''' Simulation graphing the time series response of RFP protein expression with different concentrations of Arsenic all of them added at t=350 min.]] | [[File:rfparsdistcero.png|400px|thumb|center|'''Figure 8:''' Simulation graphing the time series response of RFP protein expression with different concentrations of Arsenic all of them added at t=350 min.]] | ||
- | ==Conclusions== | + | ===Conclusions=== |
Our third design works as expected generating a different response under different concentrations of Arsenic. | Our third design works as expected generating a different response under different concentrations of Arsenic. |
Latest revision as of 03:22, 28 September 2013
Contents |
Introduction
Our objective was to assemble a system that could respond to different concentrations of a specific contaminant in water. More specifically, the idea was to produce different amounts of a colored pigment depending on the concentration of the contaminant present in water.
We worked with Arsenic knowing that an arsenic detoxification operon (Ars operon) exist in nature and more important, it exists as a biobricks.
To skip directly to our mathematical model click here.
Note: in this section, AHL is refered as HSL.
Got Ideas?
For our biosensor we came up with three different designs each one motivated on improving the flaws detected while analyzing the previous ones using mathematical models as our main tools. We describe briefly the first two designs, which were rejected, to emphasize the importance of mathematical model to gain insight on how our system works and as a feasibility study taking into considerations .
Arsenic promoter + ArsR + Reporter
First we tried to keep it as simple as we could. Figure 1 shows our first design which, in theory, produces different responses to different concentrations of arsenic in water. Figure 2 shows a simulation graphing the time series response of the Pars promoter-arsR for different concentrations of ars.
Although we have a system that recognize and respond differently to different concentrations of arsenic since our reporter was meant to be a colored pigment (the reasons for this are detailed in the project tab) scale tuning needs to be taken into account.The reporter is downstream the Pars promoter and the design shows little flexibility, i.e. few available parameters, to produce a discernible colored output.
Another problem is that we aimed to use a reporter (unknown at that time) with a low degradation rate thus if the production of the pigment didn't stop at some point, accumulation of the pigment leading to eye saturation would become a problem. Although the model shows a steady state (figure 2) this accounts only for one bacteria with the degradation/dilution rate governed mainly by dilution.
Nothing else to do but to come up with a different idea for our design. Note that the model of the Pars promoter + ArsR is still useful because is the main block of any design to detect Arsenic in water. For details on how we model this click here.
Toggle Switch + Quorum Sensing + Reporter
Our second design was based on the work done by the Grenoble Team 2010. They coupled a toggle switch with a quorum sensing circuit to produce a system that produces a colored pigment if and only if a specific IPTG/Hg concentration ratio existed in the water. IPTG concentrations are determined previously so as to activate the system at a desired Hg concentration.
Two main problems (among others) arised from the mathematical analysis of this system:
- The minimum requirements to obtain bistability is that at least one of the inhibitors must show cooperativity greater than one. Still, bistability will rely on the strength of the promoters.The lack of robustness of the system based on its dependence on cooperativity and promoter strength made the idea of having a modular device capable of working with a set of promoters-inhibitor impossible to achieve.
- The initial setting makes the toggle harder to switch back and although the Grenoble Team proposed a possible solution they never effectively tested it. This attempted against our desire of making a functional device and not a theoretical device.
Temporal control of reporter expression with an Incoherent-FFL
Parallel to the Toggle Switch + Quorum Sensing design we came up with an idea that could solve the problems of our first design: Pars + ArsR + Reporter.
We wanted a system that could:
- respond differently to different concentrations of a specific contaminant.
- stop in time to avoid the accumulation of our reporter. Keep in mind that our reporter was meant to be a coloured pigment with low degradation rate so you could see the response of the system with your naked eyes. We wished to avoid eye saturation of the pigment.
We knew that Pars + ArsR could satisfy our first requirement but we needed a kind of "timer" to meet our second requierment plus some sort of amplification system to calibrate the Arsenic promoter sensibility range with the "naked eye sensibility".
Based on [http://www.pnas.org/content/101/17/6355.long Basu 2004] biological network, we designed our own which met our basic requirements. For a detailed description click here.
Mathematical Model
The more you know =★: Before starting to talk about our model, if you know nothing about mathematical models of gene networks we highly recommend Uri Alon's book: An Introduction to Systems Biology. For an advance deterministic model check out Aberdeen Team 2009.
With our model, we wanted to understand qualitatively the general behavior of our last system and its feasibility. In theory, we knew what to expect from the system but when simulated, unexpected behaviors may arise.
Figure 4 shows a simplified version of our biological design consisting of an amplifying system + Incoherent feed forward loop (IFF) of three steps. In our actual biological design we had a four step IFF. A middle step would only add a lag time for repression to occur. No significant change on the general behavior was observed if ignored so we took one step out to keep the circuit as simple as possible in order to gain insight. Click here to see the missing step. In case you notice, we wrote CI instead of C22 because the latter is from the family of lambda CI and in terms of parameters we assume they are the same.
The use of ordinary differential equations to model the system is a normal approach when studying gene expression. The input functions used to describe gene expression are detailed in the next section.
Input functions for gene expression
To describe the transcription rate of a gene under the influence of a transcription factor we use the family of gene input functions known as Hill functions:
Hill function for activator
Hill function for repressor
Hill function for repressor lifted by inducer
where β is the maximal expression level of the promoter, [X] is the concentration of protein X and K the activation coefficient. It defines the amount of X needed to significantly activate or repressed a promoter. [I] is the concentration of the molecule that inhibits the repressor [X] where KI defines the amount of [I] needed to significantly inhibit [X].
Equations for mRNA Transciption
Our system consists of four promoters, thus we need to model four different types of mRNA, each one with different transcription rates depending on the promoter strength. Each type of mRNA was labeled using the names shown next to the promoter in figure 4. By identifying one promoter with one mRNA we are assuming no difference in mRNA concentrations for different genes under the same promoter. This assumption is not too risky considering the lengths of our constructions.
Each equation describing the rate of transcription includes a production term according to Hill functions competing against a degradation (α) and a dilution term. The dilution term was calculated considering one cell division every 30 minutes. Ω accounts for the number of plasmids.
[mRNA Pars] – repressed by ArsR which is inhibit by Arsenic
[mRNA PluxR] – constitutive promoter
[mRNA PCI] – activated by P complex
[mRNA Phyb] – activated by P complex, repressed by lambda CI
we assume no competition between activation and repression because the binding sites of complex P and lambda CI are not physically entangled.
Equations for Protein Translation
Protein rate of translation is proportional to the correspondent mRNA concentration which competes against the degradation + dilution term. The dilution term was calculated considering one cell division every 30 minutes.
- γ is the translation coefficient and is the same for all proteins.
- P is a complex of HSL and LuxR. Its degradation rate is the same as the one for LuxR because the latter has a faster degradation rate than HSL. Upon P degradation, HSL protein remains.
- KP and K-P are the association and dissociation coefficients respectively of HSL and LuxR to form complex P.
- HSL diffuse through the cell membrane at a rate θ.
- μ is the coefficient of enzymatic production of HSL.
[ArsR] - repress Pars
[luxI] - triggers HSL production
[luxR] - forms complex protein P with HSL
[HSL] - forms complex protein P with luxR
[P] - complex protein HSL + luxR. Activates PCI and Phyb
[CI] - inhibits Phyb
[RFP] - colored pigment
Parameters
We use the parameters establish by Aberdeen Team 2009. Arsenic related coefficients are not available in literature so we estimated them based in similar genetic components. It is mandatory that a public database with reliable coefficients is created.
Results
We wanted to analyze how our design worked. Figure 5 shows the system activated at t=0 by a 40000 molecules of Arsenic. The red line shows the concentration of RFP in molecules. As expected, complex P activates Prfp and PCI simultaneously and its not until CI accumulates that it represses the expression of RFP 200 minutes from the initial kick.
Figure 6 shows [mRNA Pars] and [mRNA Prfp] induced in the presence of different concentrations of Arsenic as detailed in the graph. The pulse of [mRNA Pars] at t < 50 is in fact a damepd oscillation product of the smooth Hill function that represents the repression of ArsR. [mRNA Prfp] presents a behavior as predicted by Basu 2004 with almost the same biological system but without modeling the effect of Arsenic as inhibitor. They made simulations at different rates of HSL increase (the same condition we have with different Arsenic concentrations) and obtain that for higher HSL rates of increase they obtained shorter and bigger pulses but when the HSL increase rate is lower, the initial buildup of both RFP and CI is correspondingly lower leading to pulses with longer delays and with less amplitude.
Once we fully understood how our system worked, we analyzed what happened if Arsenic activated the system at t > 0. Figure 7 shows the results of the simulation.
Because of lack of ArsR at t = 0 promoter Pars starts expressing mRNA Pars triggering the IFF loop. Arsenic is added at t = 350 min as a step function, forcing the IFF to reactivate. You can clearly see the effect of Arsenic by observing [RFP] in Fig. 7 (b).
Figure 8 shows the system responding to different concentrations of Arsenic added at t = 350.There is an appreciable difference in [RFP] and different final states in each case.
Conclusions
Our third design works as expected generating a different response under different concentrations of Arsenic. If Arsenic is added at t > 0 the difference between the outputs for different concentrations of Arsenic may diminished. We can explore an alternative to mantain the system shuttered until the water and Arsenic is added. Problems may arise because of HSL+luxR saturation.