import("chron")

importFrom("ensembleBMA",julTOymdh,ymdhTOjul,dateCheck)
importFrom("ensembleBMA",ensembleData,plotProbcast)

importFrom("ensembleBMA",dataVerifObs,dataVerifObs.ensembleData)
importFrom("ensembleBMA",dataNA,dataNA.ensembleData)
importFrom("ensembleBMA",dataNobs,dataNobs.ensembleData)
importFrom("ensembleBMA",dataObsLabels,dataObsLabels.ensembleData)
importFrom("ensembleBMA",dataStartupSpeed,dataStartupSpeed.ensembleData)

importFrom("ensembleBMA",ensembleForecasts,ensembleForecasts.ensembleData)
importFrom("ensembleBMA",ensembleSize,ensembleSize.ensembleData)
importFrom("ensembleBMA",ensembleValidDates,ensembleValidDates.ensembleData)
importFrom("ensembleBMA",ensembleFhour,ensembleFhour.ensembleData)
importFrom("ensembleBMA",ensembleItime,ensembleItime.ensembleData)
importFrom("ensembleBMA",ensembleGroups,ensembleGroups.ensembleData)
importFrom("ensembleBMA",ensembleMembers,ensembleMembers.ensembleData)

importFrom("ensembleBMA", CRPS, CRPS.default)
importFrom("ensembleBMA", MAE, MAE.default)

importFrom("ensembleBMA",pitHist,verifRankHist,verifPlot)

importFrom("ensembleBMA",brierScore)
importFrom("ensembleBMA",modelParameters)
importFrom("ensembleBMA",pit)
importFrom("ensembleBMA",combine)

importFrom("stats", "aggregate", "dgamma", "dnorm", "lm", "optim",
             "pgamma", "plnorm", "pnorm", "qgamma", "qlnorm", "qnorm",
             "runif", "var")

importFrom("evd",pgev,dgev,qgev)

export(brierScore.ensembleMOScsg0)
export(brierScore.ensembleMOSgev0)
export(brierScore.fitMOScsg0)
export(brierScore.fitMOSgev0)
export(brierScore)
export(cdf.ensembleMOScsg0)
export(cdf.ensembleMOSgev0)
export(cdf.ensembleMOSlognormal)
export(cdf.ensembleMOSnormal)
export(cdf.ensembleMOStruncnormal)
export(cdf.fitMOScsg0)
export(cdf.fitMOSgev0)
export(cdf.fitMOSlognormal)
export(cdf.fitMOSnormal)
export(cdf.fitMOStruncnormal)
export(cdf)
export(controlMOScsg0)
export(controlMOSgev0)
export(controlMOSlognormal)
export(controlMOSnormal)
export(controlMOStruncnormal)
export(crps.ensembleMOScsg0)
export(crps.ensembleMOSgev0)
export(crps.ensembleMOSlognormal)
export(crps.ensembleMOSnormal)
export(crps.ensembleMOStruncnormal)
export(crps.fitMOScsg0)
export(crps.fitMOSgev0)
export(crps.fitMOSlognormal)
export(crps.fitMOSnormal)
export(crps.fitMOStruncnormal)
export(crps)
export(ensembleMOScsg0)
export(ensembleMOSgev0)
export(ensembleMOSlognormal)
export(ensembleMOSnormal)
export(ensembleMOS)
export(ensembleMOStruncnormal)
export(fitMOScsg0)
export(fitMOSgev0)
export(fitMOSlognormal)
export(fitMOSnormal)
export(fitMOS)
export(fitMOStruncnormal)
export(getExchangeable)
export(getHH)
export(pars.ensembleMOScsg0)
export(pars.ensembleMOSgev0)
export(pars.ensembleMOSlognormal)
export(pars.ensembleMOSnormal)
export(pars.ensembleMOStruncnormal)
export(pars.fitMOScsg0)
export(pars.fitMOSgev0)
export(pars.fitMOSlognormal)
export(pars.fitMOSnormal)
export(pars.fitMOStruncnormal)
export(pars)
export(quantileForecast.ensembleMOScsg0)
export(quantileForecast.ensembleMOSgev0)
export(quantileForecast.ensembleMOSlognormal)
export(quantileForecast.ensembleMOSnormal)
export(quantileForecast.ensembleMOStruncnormal)
export(quantileForecast.fitMOScsg0)
export(quantileForecast.fitMOSgev0)
export(quantileForecast.fitMOSlognormal)
export(quantileForecast.fitMOSnormal)
export(quantileForecast.fitMOStruncnormal)
export(quantileForecast)
export(trainingData)

S3method(crps,ensembleMOSnormal)
S3method(crps,ensembleMOSlognormal)
S3method(crps,ensembleMOStruncnormal)
S3method(crps,ensembleMOScsg0)
S3method(crps,ensembleMOSgev0)
S3method(crps,fitMOSnormal)
S3method(crps,fitMOSlognormal)
S3method(crps,fitMOStruncnormal)
S3method(crps,fitMOScsg0)
S3method(crps,fitMOSgev0)
S3method(cdf,ensembleMOSnormal)
S3method(cdf,ensembleMOSlognormal)
S3method(cdf,ensembleMOStruncnormal)
S3method(cdf,ensembleMOScsg0)
S3method(cdf,ensembleMOSgev0)
S3method(cdf,fitMOSnormal)
S3method(cdf,fitMOSlognormal)
S3method(cdf,fitMOStruncnormal)
S3method(cdf,fitMOScsg0)
S3method(cdf,fitMOSgev0)
S3method(quantileForecast,ensembleMOSnormal)
S3method(quantileForecast,ensembleMOSlognormal)
S3method(quantileForecast,ensembleMOStruncnormal)
S3method(quantileForecast,ensembleMOScsg0)
S3method(quantileForecast,ensembleMOSgev0)
S3method(quantileForecast,fitMOSnormal)
S3method(quantileForecast,fitMOSlognormal)
S3method(quantileForecast,fitMOStruncnormal)
S3method(quantileForecast,fitMOScsg0)
S3method(quantileForecast,fitMOSgev0)
S3method(pars,ensembleMOSnormal)
S3method(pars,ensembleMOSlognormal)
S3method(pars,ensembleMOStruncnormal)
S3method(pars,ensembleMOScsg0)
S3method(pars,ensembleMOSgev0)
S3method(pars,fitMOSnormal)
S3method(pars,fitMOSlognormal)
S3method(pars,fitMOStruncnormal)
S3method(pars,fitMOScsg0)
S3method(pars,fitMOSgev0)
S3method(matchEnsembleMembers,ensembleMOSnormal)
S3method(matchEnsembleMembers,ensembleMOSlognormal)
S3method(matchEnsembleMembers,ensembleMOStruncnormal)
S3method(matchEnsembleMembers,ensembleMOScsg0)
S3method(matchEnsembleMembers,ensembleMOSgev0)
S3method(matchEnsembleMembers,fitMOSnormal)
S3method(matchEnsembleMembers,fitMOSlognormal)
S3method(matchEnsembleMembers,fitMOStruncnormal)
S3method(matchEnsembleMembers,fitMOScsg0)
S3method(matchEnsembleMembers,fitMOSgev0)
S3method(brierScore,ensembleMOScsg0)
S3method(brierScore,ensembleMOSgev0)
S3method(brierScore,fitMOScsg0)
S3method(brierScore,fitMOSgev0)
