Fitting Nonlinear Structural Equation Models in R with Package nlsem

Structural equation mixture modeling (SEMM) has become a standard procedure in latent variable modeling over the last two decades (Jedidi, Jagpal, and DeSarbo 1997b; Muthén and Shedden 1999; Muthén 2001, 2004; Muthén and Asparouhov 2009). SEMM was proposed as a technique for the approximation of nonlinear latent variable relationships by finite mixtures of linear relationships (Bauer 2005, 2007; Bauer, Baldasaro, and Gottfredson 2012). In addition to this semiparametric approach to nonlinear latent variable modeling, there are numerous parametric nonlinear approaches for normally distributed variables (e.g., LMS in Mplus; Klein and Moosbrugger 2000). Recently, an additional semiparametric nonlinear structural equation mixture modeling (NSEMM) approach was proposed by Kelava, Nagengast, and Brandt (2014) that is capable of dealing with nonnormal predictors. In the nlsem package presented here, the SEMM, two distribution analytic (QML and LMS) and NSEMM approaches can be specified and estimated. We provide examples of how to use the package in the context of nonlinear latent variable modeling.


Introduction
The analysis of nonlinear relationships between latent variables in the structural equation modeling (SEM) framework has been conducted primarily with two different classes of models.The first class of models consists of parametric SEMs that use latent product terms

Parametric approach
A structural model that includes different parametric nonlinear effects is modeled by where α is the latent intercept vector, B is a matrix of coefficients for the dependent variables, Γ 1 and Γ 2 are coefficient matrices that include the linear and nonlinear effects of the independent variables, respectively, ξ is a vector of latent predictor variables, η is a latent outcome variable vector, and ζ is a latent residual vector.The function h(•) maps the vector ξ to a vector of product terms; it includes, for example, ξ 1 ξ 2 for an interaction effect or ξ 2 for a quadratic effect.The measurement model is defined as with intercepts ν x and ν y , factor loading matrices Λ x and Λ y , and measurement error variable vectors δ and ε.
An efficient maximum-likelihood (ML) estimator that fits the model in Equation 1 is the LMS approach (Klein and Moosbrugger 2000), and an alternative quasi-ML estimator is QML (Klein and Muthén 2007).The advantage of LMS is that it is theoretically more efficient, while QML is more robust to distributional assumptions (Kelava et al. 2011).Furthermore, QML is considerably less computationally intensive than LMS.However, both approaches assume that the latent variables ξ as well as the residual variables ζ, δ, ε are multivariate normally distributed.If this is not the case, different approaches may be needed.

Semiparametric approach
The SEMM approach is defined as a traditional linear SEM with latent classes (indicated by the subscript c) The latent classes are modeled as normal mixtures with class-specific expected values (µ c ) and covariance matrices (Σ c ) for the observed variable vector (x, y|c) within each class.The SEMM approach does not require the assumption of normally distributed latent variables, but allows for flexible approximations of nonnormal distributions.In a direct application of the model, the latent classes are interpreted as subgroups with class-specific linear relationships (Dolan and van der Maas 1998;Titterington, Smith, and Makov 1985).In an indirect application, the model can be used to approximate curvilinear relationships by means of a weighted average of the linear effects across classes (Bauer 2005;Bauer and Curran 2004;Dolan and van der Maas 1998;Pek et al. 2011Pek et al. , 2009)).Thus, the SEMM approach can be used for predicting nonnormal latent dependent variables when obtaining an explicit parametric formulation of the functional relationship is not of primary interest.
An integration of parametric and semiparametric approaches that allows for the explicit formulation of nonlinear relations and simultaneously accounts for nonnormality of the data with semiparametric mixture models is called NSEMM (nonlinear structural equation mixture models; Kelava et al. 2014).It extends Equation 1 by adding a latent class framework (indicated by the subscript c) The model can be applied in two different ways.First, it can be used to identify latent classes within a heterogeneous population with class-specific nonlinear relationships.In this kind of direct application, the mixture components are interpreted as representing distinct subpopulations.Second, when the regression models are constrained across classes , the model can be used to approximate nonnormal distributions per se, without assuming meaningful distinct subgroups in a population (McLachlan and Peel 2000).This indirect application has the advantage of Table 1: Overview of latent variable software capable of estimating nonlinear latent structural relationships.Note: PI approaches = product-indicator approaches, ' ' = available, '-' = not available, 1 = experimental syntax in R, 2 = experimental syntax in MATLAB.
providing a semiparametric alternative to parametric nonlinear models when distributional assumptions for traditional SEMs are violated and when a straightforward interpretation of the nonlinear effects is still possible.
The remainder of this article is organized as follows: In the next section, we will give a brief overview of current latent variable modeling software with a particular focus on its capability to estimate nonlinear structural equation models.Then, we will introduce the R (R Core Team 2017) package nlsem (Umbach, Naumann, Hoppe, and Brandt 2017) for fitting nonlinear structural equation (mixture) models.nlsem can model nonlinear structural equation (mixture) models as depicted in Equations 1, 4, and 5 with the (current) limitation that η is a scalar for Equations 1 and 5.The functionality of the package will then be demonstrated using two empirical examples.Package nlsem is available from the Comprehensive R Archive Network (CRAN) at https://CRAN.R-project.org/package=nlsem.

Other software packages for fitting nonlinear SEMs
As can be seen in Table 1, there are several software packages that are capable of estimating nonlinear structural equation models.Within the class of parametric nonlinear models, traditional product-indicator approaches (Ping 1995;Marsh et al. 2004;Kelava and Brandt 2009) that rely on the inclusion of (manifest) product-indicator variables to identify the latent product terms can be feasibly implemented in standard SEM software packages such as LIS-REL (Jöreskog, Sörbom, Toit, and Toit 1999), EQS (Bentler 2000(Bentler -2008)), Mplus (Muthén andMuthén 1998-2012), AMOS (Arbuckle 2011), and in the R packages lavaan (Rosseel 2012), sem (Fox 2006), and OpenMx (Boker, Neale, Maes, Wilde, Spiegel, Brick, Spies, Estabrook, Kenny, Bates, Mehta, and Fox 2011).When more than a single nonlinear effect is estimated simultaneously or when variables are nonnormally distributed, a detailed specification of the residual covariance matrix is necessary (see Kelava and Brandt 2009).
Distribution analytic approaches have been implemented for LMS (Klein and Moosbrugger 2000) in Mplus (using the XWITH command) and for QML (Klein and Muthén 2007) in a standalone software package.
In the class of moment-based approaches, the method of moments approach (MM; Mooijaart and Bentler 2010) has been implemented in EQS (Mooijaart and Bentler 2010) and MATLAB (MATLAB 2010;Brandt, Kelava, and Klein 2014).For the two-stage method of moments (2SMM; Wall andAmemiya 2000, 2003), syntax is available for an interaction or a quadratic model in SAS (SAS Institute Inc. 2003;Wall and Amemiya 2003) and for a model that includes both interaction and quadratic effects in an experimental R syntax (Brandt et al. 2014).
Semiparametric SEMMs can be estimated within a ML framework in Mplus or within a Bayesian framework in WinBUGS or OpenBUGS.The nonlinear extensions of the SEMM framework (Kelava and Nagengast 2012;Kelava and Brandt 2014;Kelava et al. 2014) can also be specified in these software packages.
As can be seen in the brief description above, there is a wide variety of other software packages that can be used to estimate nonlinear SEMs.Although, the one with the most capabilities is probably Mplus, R packages such as lavaan and OpenMx are growing rapidly.Not only can R be regarded as state-of-the-art statistical software but it also has the additional features of great data manipulation capabilities and graphical facilities.It is therefore desirable to make the full functionality for fitting linear as well as nonlinear SEMs available in R. The R package nlsem introduced in this paper provides a wide range of methods dealing with nonlinearity and nonnormality in the SEM framework.It has an easy-to-use user interface and aims to complement R packages with greater functionality such as lavaan.

Implementation in R
nlsem is a straightforward implementation of the equations provided in Klein and Moosbrugger (2000, LMS), Klein and Muthén (2007, QML), Jedidi et al. (1997b, SEMM), and Kelava et al. (2014, NSEMM).This section will describe these approaches for fitting nonlinear structural equation models in detail and demonstrate how LMS, QML, SEMM, and NSEMM are implemented.In each of these papers -with the exception of the QML approach -an expectation-maximization (EM) algorithm (Dempster, Laird, and Rubin 1977) is used for parameter estimation.The EM algorithm is a common tool to estimate parameters for finite mixture models (McLachlan and Peel 2000).As a first step, posterior probabilities for the rth iteration are computed with a set of starting parameters.f (x i , y i ) denotes the joint density of a mixture distribution of multivariate normal distributions f c (x i , y i |µ c , Σ c ) of the indicator variables x (for the exogenous latent variables) and y (for the endogenous latent variables), with i = 1, . . ., N , where N is the number of observations and c = 1, . . ., C indexes the mixture components.For SEMMs this is equivalent to the latent class.The weights of the normal mixture components are denoted by w c .These posterior probabilities are understood as a function of the latent class c, indicated by the notation c = c.Hence, posterior probabilities for each observation and each mixing proportion are computed.As a second step, the loglikelihood for N observations and C mixture components is maximized for the parameters provided in µ c and Σ c where In the next iteration of the EM algorithm, the parameters estimated in the second step are used to compute new posterior probabilities P (r+1) (see Equation 6).This is repeated until some criterion is reached.Usually, this means that either the loglikelihood or the parameters do not change more than some defined .In the nlsem package, the convergence criterion is based on the changes in the loglikelihood (and defaults to convergence = 0.01).

Model specification for LMS and QML
Klein and Moosbrugger's LMS approach is a distribution analytic approach that approximates the complex nonnormal multivariate density function f (x i , y i ) of the indicator variables x and y (see Equation 15in Klein and Moosbrugger 2000) with the Gauss-Hermite quadrature where w j π −k/2 are the weights and µ(21/2 ν j ) and Σ(2 1/2 ν j ) are the expected value and covariance matrix for the mixture components (see Equation 29in Klein and Moosbrugger 2000).
M is the number of node points used by the Gauss-Hermite quadrature. 1 In this approach, the mixture components are not interpreted as subgroups, and the mixture weights are not estimated but provided by the Gauss-Hermite quadrature.The parameters are then estimated via an EM algorithm as described above.
The QML approach by Klein and Muthén (2007) can also be classified as a distribution analytic approach.In contrast to the LMS approach, the nonnormal density function is approximated by a product of a multivariate normal density function f 2 and a univariate conditionally normal density function f * 3 (see Equation 4in Klein and Muthén 2007) with conditional mean E[y 1i |x i , Ry i ] and variance VAR(y 1i |x i , Ry i ).Here, the nonnormal function f 3 is substituted by the normal density f * 3 which both have the same conditional expectation and variance.Parameters are now estimated by maximizing the quasi-loglikelihood function for the density f * (x i , y i ) by means of standard numerical methods.For QML, the nonnormality of the observed indicator vector y is transformed using the matrix R such that only the first indicator (y 1 ) remains nonnormally distributed and all other indicator variables Ry are normally distributed (for details see the Appendix in Klein and Muthén 2007).A model with interaction effects can be fitted in nlsem via the function specify_sem().

function qml()).
It should be pointed out that Klein and Moosbrugger (2000) and Klein and Muthén (2007) use a specific notation for the nonlinear effects with Γ 2 h(ξ) = ξ Ωξ.Matrix Ω includes the quadratic effects (e.g., ω 11 , ω 22 ) on the diagonal and the interaction effects (e.g., ω 12 ) above the diagonal.This notation is used by specify_sem() and limits the number of dependent latent variables to 1.This will be addressed in future releases.For more than one η, interactions need to be specified as follows: interaction = "eta1~xi1:xi2, eta2~xi1:xi1" with specify_sem() creating an array with a matrix Ω for each endogenous variable as a slice.

Model specification for SEMM
The semiparametric approach by Jedidi et al. (1997b) can also be fitted in nlsem.The classconditional multivariate density function of x and y is given by (cf.Equation 7in Jedidi et al. 1997b) with class-specific µ c and Σ c ; p and q represent the number of indicators for the endogenous and exogenous latent variables, respectively.Then, the unconditional distribution of x and y is given by with class weights w c .As in Klein and Moosbrugger's LMS approach, the parameters in Jedidi et al.'s SEMM approach are estimated via an EM algorithm.Again, a model with two latent classes can be specified with specify_sem(); by specifying interaction = "none" and num.classes = 2 (or more than 2) a model of class 'semm' is created, which will be fitted using the corresponding EM algorithm.Indirect and direct approaches as those mentioned above can be specified by setting the argument constraints = c("indirect", "direct1", "direct2").For the indirect option, all parameters of Equations 2, 3, and 4 are constrained to be equal except for the mean vector and covariance matrix of the predictor variables.For direct1 the parameters of all latent classes are freely estimated, while for direct2 only the parameters for Equations 2 and 3 are constrained to be equal, thus allowing one to assume that the measurement model is identical for all classes (strict invariance; Meredith 1993).

Model specification for NSEMM
The NSEMM approach introduced by Kelava et al. (2014) can be understood as a combination of the approaches introduced above.The joint density function for x and y is defined identically to Equation 11, but f c (•) for each class corresponds to Equation 8 (or alternatively to Equation 9).In our implementation the parameters are first estimated by applying the LMS or the QML procedure within each latent class.These parameters are subsequently entered into the E-step of the EM algorithm for the SEMM approach in order to obtain class weights.Then, the M-step of the SEMM approach is applied and the likelihood is optimized.The resulting parameters are entered in the fitting algorithm for LMS or QML, respectively, for each latent class, and so on.A model with interaction effects and latent classes of class 'nsemm' can be specified as follows.

Fitting the models
specify_sem() sets default parameter constraints for model identification.For most models, no additional constraints need to be considered.However, identifiability of a model is not automatically checked.For complex models, this needs to be taken into consideration by the user.The default constraints set by specify_sem() are: • First factor loading for each ξ and η is fixed to 1.
• First intercept for each ξ and η is fixed to 0.
Additionally, all constraints can be adjusted manually.The easiest way to do this is to use functions as.data.frame()and create_sem().The following shows an example of how to manually constrain all factor loadings for the indicators of ξ 1 and ξ 2 to 1. First, the model is specified and then transformed to a data frame with as.data.frame(),where the first column holds the parameter labels, the second column holds the values for class1 and so on.NA denotes that the parameter will be freely estimated.Second, the values for the parameters can be adjusted manually by changing the values in the respective column.Then, the function create_sem() can be used to create a new model with custom constraints.R> specs[specs$label %in% paste0("Lambda.x",c(2, 3, 11, 12)), "class1"] <-1 R> model.custom<-create_sem(specs) Each of the models specified above can be fitted with the function em().Depending on the model class, the EM algorithms as introduced in Klein and Moosbrugger (2000) and Jedidi et al. (1997b) or a combination of both for the NSEMM model will be used.The single-class model can additionally be fitted using the function qml().Below, we will illustrate how the em() function can be used with a standard example from the SEM literature (Bollen 1989).
The code fits the SEMM with two latent classes introduced above (model2).
R> data("PoliticalDemocracy", package = "lavaan") R> dat <-as.matrix(PoliticalDemocracy[,c(9:11, 1:8)]) R> set.seed(911)R> pars.start<-runif(count_free_parameters(model2)) R> res <-em(model2, dat, pars.start,convergence = 0.1, max.iter = 200) R> summary(res) R> plot(res) The object created with em() gives back the parameter estimates, the number of iterations, the final loglikelihood as well as the loglikelihoods obtained in each iteration step of the EM algorithm.It contains an approximation of the observed information and some information pertaining to the fitted model such as how many indicators and latent variables were specified.On this object the usual extractor functions like summary(), coef(), AIC(), BIC(), and logLik() can be used.For nested models of class 'singleClass' fitted with em(), the function anova() performs a likelihood ratio test.There is also a plot method for objects of class 'emEst' that plots the loglikelihoods for each iteration of the EM algorithm.This allows for a visual inspection of the convergence of the algorithm.In order to simulate data from a certain model, one can use the function simulate(), which takes a model specified with specify_sem() and an argument parameters with a vector of true parameter values.

Computational details
nlsem depends on the R packages gaussquad (Novomestky 2013) and mvtnorm (Genz and Bretz 2009;Genz, Bretz, Miwa, Mi, Leisch, Scheipl, and Hothorn 2017).Both are needed for parameter estimation within the EM algorithms.In order to obtain the observed information necessary to estimate the standard errors for parameter estimates, the function fdHess() is imported from nlme (Pinheiro, Bates, DebRoy, Sarkar, and R Core Team 2017).
Parameters in the M-step of the EM algorithm can be estimated with two different optimizers.Estimation of variances is bound so that negative variances cannot occur.Therefore, the user can choose between nlminb() and optim() (with method = "L-BFGS-B"), both of which allow for lower (and upper) bounds during parameter estimation.Choosing the optimizer can be done by setting the argument optimizer = c("nlminb", "optim").
As mentioned above, nlsem is a straightforward implementation of the equations provided in Klein and Moosbrugger (2000), Klein and Muthén (2007), Jedidi et al. (1997b), and Kelava et al. (2014) directly in R.These equations are given in matrix notation, which greatly facilitates implementation.However, SEMs generally come with a great number of parameters that need to be estimated.When we apply an approach with two or three latent classes, the number of parameters doubles and triples, which suggests that the estimation of parameters in nlsem can be slow, especially for complex models.
Table 2 shows details on running times for what is sometimes referred to as the "elementary interaction model" (Klein and Moosbrugger 2000) fitted with LMS and QML.The NSEMM (with LMS or QML within the latent classes and indirect approach) was fitted to the following model with c = 1, 2; for the SEMM the interaction term was omitted and parameters were fitted with a direct approach The models were fitted 20 times to data simulated from the model presented in Equation 12for 400 observations.The convergence criterion value was set to 1.The results show that choosing the starting parameters influences not only how long the models need to converge but also whether they converge.This is a common problem for multidimensional optimization (Jedidi et al. 1997b).The LMS approach is most robust to different starting parameters and almost always converges.In our example, all NSEMM models with LMS converged as well.The EM algorithm is known to converge slowly, so setting a laxer convergence criterion greatly speeds up the model fitting.This particular approach could be appropriate when several models are fitted and compared to each other.For a final parameter estimation for the chosen model, convergence should be set to a smaller value (e.g., its default convergence = 0.01).
For more complex models, running time increases considerably.The results in Table 2 show that QML is indeed much faster than LMS.Since NSEMM uses finite mixtures of the distribution analytic approaches to calculate latent interaction effects, QML can also speed up the estimation for these models considerably.The user can decide which approach to use by setting qml = TRUE when using em() for fitting a model of class 'nsemm'.The NSEMM model with LMS takes the longest to converge.Setting qml = TRUE for the NSEMM yields faster results but is more sensitive to the choice of starting parameters.
The next section demonstrates the functionality of nlsem using two data examples from education research.Data analyses for the four possible approaches implemented in nlsem (QML, LMS, SEMM, and NSEMM) were conducted.

Predictors of career aspirations in science
The data stem from the large-scale assessment study Program for International Student Assessment 2006 (PISA; Organisation for Economic Co-Operation and Development 2009) in which 15-year-old students' reading, mathematics and science literacy is assessed using nationally representative samples in 3-year cycles.In this example, data from the student background questionnaire for PISA 2006 were used.In line with Nagengast, Marsh, Scalas, Xu, Hau, and Trautwein (2011) and Kelava et al. (2014), we tested the relation between the following variables: career aspirations in science (η, 4 items), enjoyment of science (ξ 1 , 5 items), and academic self-concept in science (ξ 2 , 6 items)2 .The data stem from the Jordan sample of PISA 2006.Responses to the questionnaire items used as indicators for academic self-concept and enjoyment were nonnormally distributed.Only data of students with complete responses to all 15 items (N = 6, 038) were considered.The analyses are not representative but instead serve as an illustration of nonnormal latent predictor distributions on parameter estimates in nonlinear SEMs.
First, a model with one interaction effect was fitted to the data applying the LMS approach with CAREER being career aspirations in science, ENJ enjoyment of science, and SC academic self-concept in science.As can be seen in but significant interaction and quadratic effects (ω 12 = −.062,p = .007,ω 11 = .033,p = .011,ω 22 = .014,p = .368).
Since the indicators for the predictor variables were nonnormal, assumptions to apply LMS were violated.Therefore, we fitted a SEMM with two latent classes (c = 1, 2) to the data Results are shown in Table 3 (second panel).Again, we found that enjoyment and selfconcept both had an effect on career aspiration (see Figure 1).Additionally, the SEMM approach revealed two groups with different sets of significant parameters, thus addressing the nonnormality and nonlinearity in the data.
Finally, we fitted a model with two latent classes, one interaction effect, and two quadratic effects to the data thus applying the NSEMM approach.We used the indirect approach, meaning that parameteres are constrained to be equal across classes Results in Table 3 (third panel) show significant main effects for the indirect NSEMM approach (γ 1 = .521,p < .001,γ 2 = .442,p < .001).Also the interaction and quadratic effects are significant (ω 12 = −.008,p = .006,ω 11 = .014,p < .001,ω 22 = −.019,p < .001).Due to the manner in which the EM algorithm for NSEMM models is implemented, it is not possible to approximate the observed information based on the likelihood function.Therefore, standard errors cannot be obtained by taking the inverse of the observed information.However, standard errors can easily be bootstrapped with the functions provided in nlsem (Efron 1981); see Table 3 for the standard errors obtained with nonparametric bootstrapping.Please note that this, though simple, can be time-consuming.with a normally distributed residual ζ ∼ N (0, ψ) and predictors (Att, Online) ∼ N (τ , Φ). Parameters were estimated using QML.The results depicted in Table 4 show that reading attitude and online activities influence reading skill nonlinearly (ω 12 = .041,p = .074,ω 22 = −.048,p = .002). Figure 2 shows that reading skill is highest when online activities are at a medium level.For high and low amounts of online activities reading skill is low when attitude towards reading is also low.Additionally, how much attitude towards reading increases reading skill seems to depend on the level of online activities: for higher online activities reading attitude has a higher influence.

Conclusion and outlook
This paper introduces the R package nlsem which provides an open source implementation to fit nonlinear SEMs and structural equation mixture models with an easy-to-use interface.
The availability of several kinds of nonlinear approaches, such as LMS, QML, SEMM and NSEMM, to fit nonlinear SEMs in one package greatly facilitates data analysis for nonlinear data within the SEM framework and allows for an easy comparison of results for different approaches.
The user can choose between direct and indirect approaches for structural equation mixture models, using these approaches to model nonlinearity, nonnormality, or both.Two direct approaches are implemented where separate sets of coefficients are estimated for the prespecified latent classes.For the indirect approach, parameters are constrained to be equal for all latent classes, thereby modeling nonnormality in the data without strong assumptions about the interpretability of latent classes.
So far, LMS and QML have only been theoretically developed for one η (Klein and Moosbrugger 2000;Klein and Muthén 2007).The equations and algorithms will be expanded in future relaeses so that more than one endogenous variable can be included in the model.The model specification can already handle the specification of interaction effects between latent predictors that influence different endogenous variables, meaning that the changes will expand the functionality of the package without changing the overall structure of the package.
Additionally, since standardized coefficients are often calculated in SEMs, a function (or argument) for parameter standardization will be added to nlsem in the future (Brandt, Umbach, and Kelava 2015).This standardization will allow for the comparison of linear and nonlinear effects across studies and thus facilitate meta studies.

Table 2 :
Some information on computational resources needed to fit the models implemented in nlsem.For each model, models were fitted 20 times with varying starting parameters.Mean values are shown for number of iterations and running time.

Table 3 :
Parameter estimates for example analyses.Standard errors for the NSEMM model were bootstrapped.

Table 4 :
Figure 1: Scatterplots for latent predictors.Both self-concept (SC ) and enjoyment of science (ENJ ) influence career aspirations in science (CAREER).Result patterns look different for latent groups extracted by SEMM.Parameter estimates for the second example analysis.Parameters were estimated with QML.
The second example is based on data from the Program for International Student Assessment 2009 (PISA; Organisation for Economic Co-Operation and Development 2010), which is publicly available under http://pisa2009.acer.edu.au/downloads.php.The sample is a subsample of N = 1, 069 Australian students who took part in a reading test.Missing values were excluded from the analysis.Students' attitude towards reading (Att) and their reported online activities (Online; i.e., read emails or chat online) were selected as predictors of reading skill (Read).Between 7 and 11 items were grouped together to make up three indicators for each latent variable (i.e., item parcels), which resulted in three indicators for each latent variable. 3in, this example merely serves to illustrate the use of the package and was chosen for didactic Predicted plane for estimated parameters shown in Table4showing how attitude towards reading (Att) and online activities (Online) predict reading skill (Read).purposesonly.The structural model was specified as Read = α + γ 1 Att + γ 2 Online + ω 11 Att 2 + ω 12 Att • Online + ω 22 Online 2 + ζ,(18)