# Refer to all C/Fortran routines by their name prefixed by C_
useDynLib(stats, .registration = TRUE, .fixes = "C_")

import(graphics)
importFrom(grDevices, as.graphicsAnnot, dev.cur, dev.flush, dev.hold,
           dev.interactive, dev.new, dev.set, devAskNewPage,
           extendrange, n2mfrow, palette, xy.coords)
importFrom('utils',
           count.fields, flush.console, modifyList, str, tail)

export(.checkMFClasses, .getXlevels, .MFclass, .nknots.smspl,
       acf, acf2AR, add.scope,
       add1, addmargins, aggregate,aggregate.ts, AIC, alias, anova,
       aov, approx, approxfun, ar, ar.burg, ar.mle, ar.ols, ar.yw,
       arima, arima.sim, arima0, arima0.diag, ARMAacf, ARMAtoMA,
       as.dendrogram, as.dist, as.formula, as.hclust, as.stepfun,
       as.ts, asOneSidedFormula, ave, bandwidth.kernel, BIC, binomial,
       biplot, Box.test, bw.bcv, bw.nrd, bw.nrd0, bw.SJ, bw.ucv, C,
       cancor, case.names, ccf, cmdscale, coef, coefficients,
       complete.cases, confint, confint.default, confint.lm, constrOptim,
       contr.SAS, contr.helmert, contr.poly, contr.sum,
       contr.treatment, contrasts, "contrasts<-", convolve,
       cooks.distance, cophenetic, cor, cov, cov.wt, cov2cor,
       covratio, cpgram, cutree, cycle,
       D, DF2formula,
       dbeta, dbinom, dcauchy,
       dchisq, decompose, delete.response, deltat, dendrapply,
       density, deriv, deriv3, deviance, dexp, df, df.kernel,
       df.residual, dfbeta, dfbetas, dffits, dgamma, dgeom, dhyper,
       diffinv, dist, dlnorm, dlogis, dmultinom, dnbinom, dnorm,
       dpois, drop.scope, drop.terms, drop1, dsignrank, dt,
       dummy.coef, dummy.coef.lm, dunif, dweibull, dwilcox, ecdf, eff.aovlist,
       effects, embed, estVar, end, expand.model.frame, extractAIC,
       factanal, factor.scope, family, fft, filter, fitted,
       fitted.values, fivenum, formula, frequency, ftable, Gamma,
       gaussian, get_all_vars, getCall, getInitial, glm, glm.control,
       glm.fit, hasTsp, hat, hatvalues, hclust, heatmap, HoltWinters,
       influence, influence.measures, integrate, interaction.plot,
       inverse.gaussian, IQR, is.empty.model, is.leaf, is.mts,
       is.stepfun, is.ts, is.tskernel, isoreg, KalmanForecast,
       KalmanLike, KalmanRun, KalmanSmooth, kernapply, kernel, kmeans,
       knots, ksmooth, lag, lag.plot, line, lm, lm.fit, .lm.fit,
       lm.influence, lm.wfit, loadings, loess, loess.control,
       loess.smooth, logLik, loglin, lowess, ls.diag, ls.print, lsfit,
       mad, mahalanobis, make.link, makeARIMA, makepredictcall,
       manova, mauchly.test, median, medpolish, model.extract,
       model.frame, model.matrix, model.offset, model.response,
       model.tables, model.weights, monthplot, mvfft, na.action,
       na.contiguous, na.exclude, na.fail, na.omit, na.pass,
       napredict, naprint, naresid, nextn, nlm, nlminb, nls,
       nls.control, NLSstAsymptotic, NLSstClosestX, NLSstLfAsymptote,
       NLSstRtAsymptote, nobs, numericDeriv, offset, optim, optimHess,
       optimise, optimize, order.dendrogram, Pair, p.adjust,
       p.adjust.methods, pacf, pairwise.table, pbeta, pbinom, pcauchy,
       pchisq, pexp, pf, pgamma, pgeom, phyper, plclust, plnorm,
       plogis, pnbinom, pnorm, poisson, poly, polym, power, ppoints,
       ppois, ppr, PP.test, prcomp, predict, preplot, .preformat.ts, princomp,
       printCoefmat, profile, proj, promax, psignrank, pt, ptukey,
       punif, pweibull, pwilcox, qbeta, qbinom, qcauchy, qchisq, qexp,
       qf, qgamma, qgeom, qhyper, qlnorm, qlogis, qnbinom, qnorm,
       qpois, qqline, qqnorm, qqplot, qsignrank, qt, qtukey, quantile,
       quasi, quasibinomial, quasipoisson, qunif, qweibull, qwilcox,
       r2dtable, rbeta, rbinom, rcauchy, rchisq, read.ftable,
       rect.hclust, reformulate, relevel, reorder, replications,
       reshape, resid, residuals, rexp, rf, rgamma, rgeom, rhyper,
       rlnorm, rlogis, rmultinom, rnbinom, rnorm, rpois, rsignrank,
       rstandard, rstudent, rt, runif, runmed, rweibull, rwilcox,
       rWishart, scatter.smooth, screeplot, sd, se.contrast,
       selfStart, setNames, sigma, simulate, smooth, smooth.spline,
       smoothEnds, sortedXyData, spec.ar, spec.pgram, spec.taper,
       spectrum, spline, splinefun, splinefunH, SSD, SSasymp,
       SSasympOff, SSasympOrig, SSbiexp, SSfol, SSfpl, SSgompertz,
       SSlogis, SSmicmen, SSweibull, start, stat.anova, step, stepfun,
       stl, StructTS, summary.manova, supsmu, symnum, termplot, terms,
       time, toeplitz, ts, ts.intersect, ts.plot, ts.union, tsdiag,
       tsp, "tsp<-", tsSmooth, TukeyHSD, uniroot, update, var,
       variable.names, varimax, .vcov.aliased, vcov, weighted.mean,
       weighted.residuals, weights, window, "window<-", write.ftable,
       xtabs, pbirthday, qbirthday, psmirnov, qsmirnov, rsmirnov)

## from ctest
export(ansari.test, bartlett.test, binom.test, chisq.test, cor.test,
       fisher.test, fligner.test, friedman.test, kruskal.test,
       ks.test, mantelhaen.test, mauchly.test, mcnemar.test,
       mood.test, oneway.test, pairwise.prop.test, pairwise.t.test,
       pairwise.wilcox.test, poisson.test, power.anova.test,
       power.prop.test, power.t.test, prop.test, prop.trend.test,
       quade.test, shapiro.test, t.test, var.test, wilcox.test)

export(plot.spec.coherency, plot.spec.phase)


## methods used by R itself.
export(density.default, model.frame.default, plot.ecdf, plot.stepfun,
       summary.aov, summary.lm, summary.stepfun, update.formula)

## historical
export(aggregate.data.frame, median.default, model.matrix.default,
       model.matrix.lm, plot.ts, predict.glm, predict.lm,
       residuals.glm, residuals.lm, summary.glm, terms.formula,
       update.default)

## model.matrix.lm: robustbase
## residuals.glm: DAMisc, car, haplo.stats, lasso2, plsRbeta, plsRglm, rms, spgwr
## residuals.lm: CADFest, robustbase
## update.default: MuMIn, spatstat


## register all the methods for generics elsewhere in case namespace is
## loaded but not currently attached.
S3method("[", acf)
S3method("[", formula)
S3method("[", terms)
S3method("[", ts)
S3method("[", tskernel)
S3method("[<-", ts)
S3method("[[", dendrogram)
S3method(add1, default)
S3method(add1, glm)
S3method(add1, lm)
S3method(add1, mlm)
S3method(aggregate, data.frame)
S3method(aggregate, default)
S3method(aggregate, "formula")
S3method(aggregate, ts)
S3method(AIC, default)
S3method(AIC, logLik)
S3method(alias, formula)
S3method(alias, lm)
S3method(ansari.test, default)
S3method(ansari.test, formula)
S3method(ar.burg, default)
S3method(ar.burg, mts)
S3method(ar.yw, default)
S3method(ar.yw, mts)
S3method(as.data.frame, aovproj)
S3method(as.data.frame, ftable)
S3method(as.data.frame, logLik)
S3method(as.dendrogram, dendrogram)
S3method(as.dendrogram, hclust)
S3method(as.dist, default)
S3method(as.hclust, dendrogram)
S3method(as.hclust, default)
S3method(as.hclust, twins)
S3method(as.matrix, dist)
S3method(as.matrix, ftable)
S3method(as.stepfun, default)
S3method(as.stepfun, isoreg)
S3method(as.table, ftable)
S3method(as.ts, default)
S3method(anova, glm)
S3method(anova, glmlist)
S3method(anova, lm)
S3method(anova, lmlist)
S3method(anova, loess)
S3method(anova, mlm)
S3method(anova, nls)
S3method(bartlett.test, default)
S3method(bartlett.test, formula)
S3method(BIC, default)
S3method(BIC, logLik)
S3method(biplot, default)
S3method(biplot, princomp)
S3method(biplot, prcomp)
S3method(case.names, default)
S3method(case.names, lm)
S3method(cbind, ts)
S3method(coef, aov)
S3method(coef, Arima)
S3method(coef, default)
S3method(coef, listof)
S3method(coef, maov)
S3method(coef, nls)
S3method(confint, default)
S3method(confint, glm)
S3method(confint, lm)
S3method(confint, nls)
S3method(cooks.distance, glm)
S3method(cooks.distance, lm)
S3method(cophenetic, default)
S3method(cophenetic, dendrogram)
S3method(cor.test, default)
S3method(cor.test, formula)
S3method(cut, dendrogram)
S3method(cycle, default)
S3method(cycle, ts)
S3method(deltat, default)
S3method(density, default)
S3method(deriv, default)
S3method(deriv, formula)
S3method(deriv3, default)
S3method(deriv3, formula)
S3method(deviance, default)
S3method(deviance, glm)
S3method(deviance, lm)
S3method(deviance, mlm)
S3method(deviance, nls)
S3method(diffinv, default)
S3method(diffinv, ts)
S3method(diffinv, vector)
S3method(df.residual, default)
S3method(df.residual, nls)
S3method(dfbeta, lm)
S3method(dfbetas, lm)
S3method(diff, ts)
S3method(drop1, default)
S3method(drop1, glm)
S3method(drop1, lm)
S3method(drop1, mlm)
S3method(dummy.coef, aovlist)
S3method(dummy.coef, lm)
S3method(effects, glm)
S3method(effects, lm)
S3method(end, default)
S3method(estVar, SSD)
S3method(estVar, mlm)
S3method(extractAIC, aov)
S3method(extractAIC, coxph)
S3method(extractAIC, glm)
S3method(extractAIC, lm)
S3method(extractAIC, negbin)
S3method(extractAIC, survreg)
S3method(family, glm)
S3method(family, lm)
S3method(fitted, default)
S3method(fitted, isoreg)
S3method(fitted, kmeans)
S3method(fitted, nls)
S3method(fitted, smooth.spline)
S3method(fligner.test, default)
S3method(fligner.test, formula)
S3method(format, dist)
S3method(format, ftable)
S3method(formula, character)
S3method(formula, data.frame)
S3method(formula, default)
S3method(formula, formula)
S3method(formula, glm)
S3method(formula, lm)
S3method(formula, nls)
S3method(formula, terms)
S3method(frequency, default)
S3method(friedman.test, default)
S3method(friedman.test, formula)
S3method(ftable, default)
S3method(ftable, formula)
S3method(getCall, default)
S3method(getInitial, default)
S3method(getInitial, formula)
S3method(getInitial, selfStart)
S3method(hatvalues, lm)
S3method(hatvalues, smooth.spline)
S3method(identify, hclust)
S3method(influence, glm)
S3method(influence, lm)
S3method(kernapply, default)
S3method(kernapply, ts)
S3method(kernapply, tskernel)
S3method(kernapply, vector)
S3method(knots, stepfun)
S3method(kruskal.test, default)
S3method(kruskal.test, formula)
S3method(ks.test, default)
S3method(ks.test, formula)
S3method(labels, dendrogram)
S3method(labels, dist)
S3method(labels, lm)
S3method(labels, terms)
S3method(lag, default)
S3method(lines, isoreg)
S3method(lines, stepfun)
S3method(lines, ts)
S3method(logLik, Arima)
S3method(logLik, glm)
S3method(logLik, lm)
S3method(logLik, logLik)
S3method(logLik, nls)
S3method(makepredictcall, default)
S3method(makepredictcall, poly)
S3method(mauchly.test, SSD)
S3method(mauchly.test, mlm)
S3method(median, default)
S3method(merge, dendrogram)
S3method(model.frame, aovlist)
S3method(model.frame, default)
S3method(model.frame, glm)
S3method(model.frame, lm)
S3method(model.matrix, default)
S3method(model.matrix, lm)
S3method(model.tables, aov)
S3method(model.tables, aovlist)
S3method(monthplot, default)
S3method(monthplot, stl)
S3method(monthplot, StructTS)
S3method(monthplot, ts)
S3method(mood.test, default)
S3method(mood.test, formula)
S3method(na.action, default)
S3method(na.contiguous, default)
S3method(na.exclude, data.frame)
S3method(na.exclude, default)
S3method(na.fail, default)
S3method(na.omit, data.frame)
S3method(na.omit, default)
S3method(na.omit, ts)
S3method(napredict, default)
S3method(napredict, exclude)
S3method(naprint, default)
S3method(naprint, exclude)
S3method(naprint, omit)
S3method(naresid, default)
S3method(naresid, exclude)
S3method(NLSstAsymptotic, sortedXyData)
S3method(NLSstClosestX, sortedXyData)
S3method(NLSstLfAsymptote, sortedXyData)
S3method(NLSstRtAsymptote, sortedXyData)
S3method(nobs, default)
S3method(nobs, dendrogram)
S3method(nobs, glm)
S3method(nobs, lm)
S3method(nobs, logLik)
S3method(nobs, nls)
S3method(Ops, ts)
S3method(pacf, default)
S3method(plot, acf)
S3method(plot, decomposed.ts)
S3method(plot, dendrogram)
S3method(plot, density)
S3method(plot, ecdf)
S3method(plot, hclust)
S3method(plot, HoltWinters)
S3method(plot, isoreg)
S3method(plot, lm)
S3method(plot, medpolish)
S3method(plot, mlm)
S3method(plot, ppr)
S3method(plot, prcomp)
S3method(plot, princomp)
S3method(plot, profile.nls)
S3method(plot, spec)
S3method(plot, stepfun)
S3method(plot, stl)
S3method(plot, ts)
S3method(plot, tskernel)
S3method(plot, TukeyHSD)
S3method(ppr, default)
S3method(ppr, formula)
S3method(prcomp, default)
S3method(prcomp, formula)
S3method(predict, ar)
S3method(predict, Arima)
S3method(predict, arima0)
S3method(predict, glm)
S3method(predict, HoltWinters)
S3method(predict, lm)
S3method(predict, loess)
S3method(predict, mlm)
S3method(predict, poly)
S3method(predict, ppr)
S3method(predict, nls)
S3method(predict, prcomp)
S3method(predict, princomp)
S3method(predict, smooth.spline)
S3method(predict, smooth.spline.fit)
S3method(predict, StructTS)
S3method(princomp, default)
S3method(princomp, formula)
S3method(print, acf)
S3method(print, anova)
S3method(print, aov)
S3method(print, aovlist)
S3method(print, ar)
S3method(print, Arima)
S3method(print, arima0)
S3method(print, dendrogram)
S3method(print, density)
S3method(print, dist)
S3method(print, dummy_coef)
S3method(print, dummy_coef_list)
S3method(print, ecdf)
S3method(print, factanal)
S3method(print, family)
S3method(print, formula)
S3method(print, ftable)
S3method(print, glm)
S3method(print, hclust)
S3method(print, HoltWinters)
S3method(print, htest)
S3method(print, infl)
S3method(print, integrate)
S3method(print, isoreg)
S3method(print, kmeans)
S3method(print, lm)
S3method(print, loadings)
S3method(print, loess)
S3method(print, logLik)
S3method(print, medpolish)
S3method(print, mtable)
S3method(print, nls)
S3method(print, pairwise.htest)
S3method(print, power.htest)
S3method(print, ppr)
S3method(print, prcomp)
S3method(print, princomp)
S3method(print, smooth.spline)
S3method(print, stepfun)
S3method(print, stl)
S3method(print, StructTS)
S3method(print, summary.aov)
S3method(print, summary.aovlist)
S3method(print, summary.ecdf)
S3method(print, summary.glm)
S3method(print, summary.lm)
S3method(print, summary.loess)
S3method(print, summary.manova)
S3method(print, summary.nls)
S3method(print, summary.ppr)
S3method(print, summary.prcomp)
S3method(print, summary.princomp)
S3method(print, tables_aov)
S3method(print, TukeyHSD)
S3method(print, terms)
S3method(print, ts)
S3method(print, tskernel)
S3method(print, tukeyline)
S3method(print, tukeysmooth)
S3method(print, xtabs)
S3method(profile, nls)
S3method(profiler, nls)
S3method(proj, aov)
S3method(proj, aovlist)
S3method(proj, default)
S3method(proj, lm)
S3method(quade.test, default)
S3method(quade.test, formula)
S3method(qqnorm, default)
S3method(qr, lm)
S3method(quantile, default)
S3method(quantile, ecdf)
S3method(quantile, POSIXt)
S3method(relevel, default)
S3method(relevel, factor)
S3method(relevel, ordered)
S3method(reorder, default)
S3method(reorder, dendrogram)
S3method(residuals, default)
S3method(residuals, glm)
S3method(residuals, isoreg)
S3method(residuals, HoltWinters)
S3method(residuals, lm)
S3method(residuals, nls)
S3method(residuals, smooth.spline)
S3method(residuals, tukeyline)
S3method(rev, dendrogram)
S3method(rstandard, glm)
S3method(rstandard, lm)
S3method(rstudent, glm)
S3method(rstudent, lm)
S3method(screeplot, default)
S3method(se.contrast, aov)
S3method(se.contrast, aovlist)
S3method(selfStart, default)
S3method(selfStart, formula)
S3method(sigma, default)
S3method(sigma, mlm)
S3method(simulate, lm)
S3method(sortedXyData, default)
S3method(str, dendrogram)
S3method(summary, aov)
S3method(summary, aovlist)
S3method(summary, ecdf)
S3method(summary, glm)
S3method(summary, infl)
S3method(summary, lm)
S3method(summary, loess)
S3method(summary, manova)
S3method(summary, mlm)
S3method(summary, nls)
S3method(summary, ppr)
S3method(summary, prcomp)
S3method(summary, princomp)
S3method(summary, stepfun)
S3method(summary, stl)
S3method(summary, tukeysmooth)
S3method(SSD, mlm)
S3method(start, default)
S3method(str, logLik)
S3method(t, ts)
S3method(t.test, default)
S3method(t.test, formula)
S3method(terms, default)
S3method(terms, formula)
S3method(terms, terms)
S3method(time, default)
S3method(time, ts)
S3method(tsdiag, Arima)
S3method(tsdiag, arima0)
S3method(tsdiag, StructTS)
S3method(tsSmooth, StructTS)
S3method(TukeyHSD, aov)
S3method(update, default)
S3method(update, formula)
S3method(var.test, default)
S3method(var.test, formula)
S3method(variable.names, default)
S3method(variable.names, lm)
S3method(vcov, Arima)
S3method(vcov, aov)
S3method(vcov, glm)
S3method(vcov, lm)
S3method(vcov, summary.lm)
S3method(vcov, summary.glm)
S3method(vcov, mlm)
S3method(vcov, nls)
S3method(weighted.mean, Date)
S3method(weighted.mean, default)
S3method(weighted.mean, difftime)
S3method(weighted.mean, POSIXct)
S3method(weighted.mean, POSIXlt)
S3method(weights, default)
S3method(weights, glm)
S3method(weights, nls)
S3method(wilcox.test, default)
S3method(wilcox.test, formula)
S3method(window, default)
S3method(window, ts)
S3method("window<-", ts)

## Cannot register in utils ...
S3method("update", "packageStatus")
