// Generated by using Rcpp::compileAttributes() -> do not edit by hand
// Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393

#ifndef RCPP_bvars_RCPPEXPORTS_H_GEN_
#define RCPP_bvars_RCPPEXPORTS_H_GEN_

#include <RcppArmadillo.h>
#include <Rcpp.h>

namespace bvars {

    using namespace Rcpp;

    namespace {
        void validateSignature(const char* sig) {
            Rcpp::Function require = Rcpp::Environment::base_env()["require"];
            require("bvars", Rcpp::Named("quietly") = true);
            typedef int(*Ptr_validate)(const char*);
            static Ptr_validate p_validate = (Ptr_validate)
                R_GetCCallable("bvars", "_bvars_RcppExport_validate");
            if (!p_validate(sig)) {
                throw Rcpp::function_not_exported(
                    "C++ function with signature '" + std::string(sig) + "' not found in bvars");
            }
        }
    }

    inline Rcpp::List bvar_mgig_cpp(const int& S, const arma::mat& Y, const arma::mat& X, const Rcpp::List& prior, const Rcpp::List& starting_values, const arma::mat& sv_aux_mix, const bool homoskedastic = true, const bool centred_sv = false, const bool normal = true, const int thin = 100, const bool show_progress = true) {
        typedef SEXP(*Ptr_bvar_mgig_cpp)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_bvar_mgig_cpp p_bvar_mgig_cpp = NULL;
        if (p_bvar_mgig_cpp == NULL) {
            validateSignature("Rcpp::List(*bvar_mgig_cpp)(const int&,const arma::mat&,const arma::mat&,const Rcpp::List&,const Rcpp::List&,const arma::mat&,const bool,const bool,const bool,const int,const bool)");
            p_bvar_mgig_cpp = (Ptr_bvar_mgig_cpp)R_GetCCallable("bvars", "_bvars_bvar_mgig_cpp");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_bvar_mgig_cpp(Shield<SEXP>(Rcpp::wrap(S)), Shield<SEXP>(Rcpp::wrap(Y)), Shield<SEXP>(Rcpp::wrap(X)), Shield<SEXP>(Rcpp::wrap(prior)), Shield<SEXP>(Rcpp::wrap(starting_values)), Shield<SEXP>(Rcpp::wrap(sv_aux_mix)), Shield<SEXP>(Rcpp::wrap(homoskedastic)), Shield<SEXP>(Rcpp::wrap(centred_sv)), Shield<SEXP>(Rcpp::wrap(normal)), Shield<SEXP>(Rcpp::wrap(thin)), Shield<SEXP>(Rcpp::wrap(show_progress)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<Rcpp::List >(rcpp_result_gen);
    }

    inline arma::cube Sigma2B(arma::cube& posterior_Sigma_c) {
        typedef SEXP(*Ptr_Sigma2B)(SEXP);
        static Ptr_Sigma2B p_Sigma2B = NULL;
        if (p_Sigma2B == NULL) {
            validateSignature("arma::cube(*Sigma2B)(arma::cube&)");
            p_Sigma2B = (Ptr_Sigma2B)R_GetCCallable("bvars", "_bvars_Sigma2B");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_Sigma2B(Shield<SEXP>(Rcpp::wrap(posterior_Sigma_c)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::cube >(rcpp_result_gen);
    }

    inline arma::field<arma::cube> compute_variance_decompositions(arma::cube& posterior_Sigma, arma::cube& posterior_A, const int horizon, const int p) {
        typedef SEXP(*Ptr_compute_variance_decompositions)(SEXP,SEXP,SEXP,SEXP);
        static Ptr_compute_variance_decompositions p_compute_variance_decompositions = NULL;
        if (p_compute_variance_decompositions == NULL) {
            validateSignature("arma::field<arma::cube>(*compute_variance_decompositions)(arma::cube&,arma::cube&,const int,const int)");
            p_compute_variance_decompositions = (Ptr_compute_variance_decompositions)R_GetCCallable("bvars", "_bvars_compute_variance_decompositions");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_compute_variance_decompositions(Shield<SEXP>(Rcpp::wrap(posterior_Sigma)), Shield<SEXP>(Rcpp::wrap(posterior_A)), Shield<SEXP>(Rcpp::wrap(horizon)), Shield<SEXP>(Rcpp::wrap(p)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::field<arma::cube> >(rcpp_result_gen);
    }

    inline arma::cube compute_fitted_values(arma::cube& posterior_A, arma::cube& posterior_Sigma, arma::mat& posterior_sigma2, arma::mat& X) {
        typedef SEXP(*Ptr_compute_fitted_values)(SEXP,SEXP,SEXP,SEXP);
        static Ptr_compute_fitted_values p_compute_fitted_values = NULL;
        if (p_compute_fitted_values == NULL) {
            validateSignature("arma::cube(*compute_fitted_values)(arma::cube&,arma::cube&,arma::mat&,arma::mat&)");
            p_compute_fitted_values = (Ptr_compute_fitted_values)R_GetCCallable("bvars", "_bvars_compute_fitted_values");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_compute_fitted_values(Shield<SEXP>(Rcpp::wrap(posterior_A)), Shield<SEXP>(Rcpp::wrap(posterior_Sigma)), Shield<SEXP>(Rcpp::wrap(posterior_sigma2)), Shield<SEXP>(Rcpp::wrap(X)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::cube >(rcpp_result_gen);
    }

    inline arma::cube compute_shocks(arma::cube& posterior_A, arma::mat& Y, arma::mat& X) {
        typedef SEXP(*Ptr_compute_shocks)(SEXP,SEXP,SEXP);
        static Ptr_compute_shocks p_compute_shocks = NULL;
        if (p_compute_shocks == NULL) {
            validateSignature("arma::cube(*compute_shocks)(arma::cube&,arma::mat&,arma::mat&)");
            p_compute_shocks = (Ptr_compute_shocks)R_GetCCallable("bvars", "_bvars_compute_shocks");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_compute_shocks(Shield<SEXP>(Rcpp::wrap(posterior_A)), Shield<SEXP>(Rcpp::wrap(Y)), Shield<SEXP>(Rcpp::wrap(X)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::cube >(rcpp_result_gen);
    }

    inline Rcpp::List forecast_bvarGIG(arma::cube& posterior_Sigma, arma::cube& posterior_A, arma::mat& forecast_sigma2, arma::vec& X_T, arma::mat& exogenous_forecast, arma::mat& cond_forecast, const int& horizon) {
        typedef SEXP(*Ptr_forecast_bvarGIG)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_forecast_bvarGIG p_forecast_bvarGIG = NULL;
        if (p_forecast_bvarGIG == NULL) {
            validateSignature("Rcpp::List(*forecast_bvarGIG)(arma::cube&,arma::cube&,arma::mat&,arma::vec&,arma::mat&,arma::mat&,const int&)");
            p_forecast_bvarGIG = (Ptr_forecast_bvarGIG)R_GetCCallable("bvars", "_bvars_forecast_bvarGIG");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_forecast_bvarGIG(Shield<SEXP>(Rcpp::wrap(posterior_Sigma)), Shield<SEXP>(Rcpp::wrap(posterior_A)), Shield<SEXP>(Rcpp::wrap(forecast_sigma2)), Shield<SEXP>(Rcpp::wrap(X_T)), Shield<SEXP>(Rcpp::wrap(exogenous_forecast)), Shield<SEXP>(Rcpp::wrap(cond_forecast)), Shield<SEXP>(Rcpp::wrap(horizon)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<Rcpp::List >(rcpp_result_gen);
    }

    inline arma::mat forecast_sigma2_sv1(arma::vec& posterior_h_T, arma::vec& posterior_rho, arma::vec& posterior_omega, const int& horizon) {
        typedef SEXP(*Ptr_forecast_sigma2_sv1)(SEXP,SEXP,SEXP,SEXP);
        static Ptr_forecast_sigma2_sv1 p_forecast_sigma2_sv1 = NULL;
        if (p_forecast_sigma2_sv1 == NULL) {
            validateSignature("arma::mat(*forecast_sigma2_sv1)(arma::vec&,arma::vec&,arma::vec&,const int&)");
            p_forecast_sigma2_sv1 = (Ptr_forecast_sigma2_sv1)R_GetCCallable("bvars", "_bvars_forecast_sigma2_sv1");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_forecast_sigma2_sv1(Shield<SEXP>(Rcpp::wrap(posterior_h_T)), Shield<SEXP>(Rcpp::wrap(posterior_rho)), Shield<SEXP>(Rcpp::wrap(posterior_omega)), Shield<SEXP>(Rcpp::wrap(horizon)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::mat >(rcpp_result_gen);
    }

    inline arma::mat forecast_lambda_t1(arma::vec& posterior_df, const int& horizon) {
        typedef SEXP(*Ptr_forecast_lambda_t1)(SEXP,SEXP);
        static Ptr_forecast_lambda_t1 p_forecast_lambda_t1 = NULL;
        if (p_forecast_lambda_t1 == NULL) {
            validateSignature("arma::mat(*forecast_lambda_t1)(arma::vec&,const int&)");
            p_forecast_lambda_t1 = (Ptr_forecast_lambda_t1)R_GetCCallable("bvars", "_bvars_forecast_lambda_t1");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_forecast_lambda_t1(Shield<SEXP>(Rcpp::wrap(posterior_df)), Shield<SEXP>(Rcpp::wrap(horizon)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::mat >(rcpp_result_gen);
    }

    inline arma::mat do_rmatnorm1(const arma::mat& M, const arma::mat& V, const arma::mat& S) {
        typedef SEXP(*Ptr_do_rmatnorm1)(SEXP,SEXP,SEXP);
        static Ptr_do_rmatnorm1 p_do_rmatnorm1 = NULL;
        if (p_do_rmatnorm1 == NULL) {
            validateSignature("arma::mat(*do_rmatnorm1)(const arma::mat&,const arma::mat&,const arma::mat&)");
            p_do_rmatnorm1 = (Ptr_do_rmatnorm1)R_GetCCallable("bvars", "_bvars_do_rmatnorm1");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_do_rmatnorm1(Shield<SEXP>(Rcpp::wrap(M)), Shield<SEXP>(Rcpp::wrap(V)), Shield<SEXP>(Rcpp::wrap(S)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::mat >(rcpp_result_gen);
    }

    inline arma::field<arma::mat> sample_ASigma(const arma::mat& Y, const arma::mat& X, arma::mat& aux_V_inv, arma::vec& aux_Omega_diag_inv, const Rcpp::List& prior) {
        typedef SEXP(*Ptr_sample_ASigma)(SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_sample_ASigma p_sample_ASigma = NULL;
        if (p_sample_ASigma == NULL) {
            validateSignature("arma::field<arma::mat>(*sample_ASigma)(const arma::mat&,const arma::mat&,arma::mat&,arma::vec&,const Rcpp::List&)");
            p_sample_ASigma = (Ptr_sample_ASigma)R_GetCCallable("bvars", "_bvars_sample_ASigma");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_sample_ASigma(Shield<SEXP>(Rcpp::wrap(Y)), Shield<SEXP>(Rcpp::wrap(X)), Shield<SEXP>(Rcpp::wrap(aux_V_inv)), Shield<SEXP>(Rcpp::wrap(aux_Omega_diag_inv)), Shield<SEXP>(Rcpp::wrap(prior)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::field<arma::mat> >(rcpp_result_gen);
    }

    inline arma::vec sample_lambda(double& aux_df, arma::vec& U, const int N) {
        typedef SEXP(*Ptr_sample_lambda)(SEXP,SEXP,SEXP);
        static Ptr_sample_lambda p_sample_lambda = NULL;
        if (p_sample_lambda == NULL) {
            validateSignature("arma::vec(*sample_lambda)(double&,arma::vec&,const int)");
            p_sample_lambda = (Ptr_sample_lambda)R_GetCCallable("bvars", "_bvars_sample_lambda");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_sample_lambda(Shield<SEXP>(Rcpp::wrap(aux_df)), Shield<SEXP>(Rcpp::wrap(U)), Shield<SEXP>(Rcpp::wrap(N)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::vec >(rcpp_result_gen);
    }

    inline double log_kernel_df(const double& aux_df, const arma::vec& aux_lambda) {
        typedef SEXP(*Ptr_log_kernel_df)(SEXP,SEXP);
        static Ptr_log_kernel_df p_log_kernel_df = NULL;
        if (p_log_kernel_df == NULL) {
            validateSignature("double(*log_kernel_df)(const double&,const arma::vec&)");
            p_log_kernel_df = (Ptr_log_kernel_df)R_GetCCallable("bvars", "_bvars_log_kernel_df");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_log_kernel_df(Shield<SEXP>(Rcpp::wrap(aux_df)), Shield<SEXP>(Rcpp::wrap(aux_lambda)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<double >(rcpp_result_gen);
    }

    inline Rcpp::List sample_df(double& aux_df, double& adaptive_scale, const arma::vec& aux_lambda, const int& s, const arma::vec& adptive_alpha_gamma) {
        typedef SEXP(*Ptr_sample_df)(SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_sample_df p_sample_df = NULL;
        if (p_sample_df == NULL) {
            validateSignature("Rcpp::List(*sample_df)(double&,double&,const arma::vec&,const int&,const arma::vec&)");
            p_sample_df = (Ptr_sample_df)R_GetCCallable("bvars", "_bvars_sample_df");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_sample_df(Shield<SEXP>(Rcpp::wrap(aux_df)), Shield<SEXP>(Rcpp::wrap(adaptive_scale)), Shield<SEXP>(Rcpp::wrap(aux_lambda)), Shield<SEXP>(Rcpp::wrap(s)), Shield<SEXP>(Rcpp::wrap(adptive_alpha_gamma)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<Rcpp::List >(rcpp_result_gen);
    }

    inline arma::mat sv_aux_mix_n(const int N) {
        typedef SEXP(*Ptr_sv_aux_mix_n)(SEXP);
        static Ptr_sv_aux_mix_n p_sv_aux_mix_n = NULL;
        if (p_sv_aux_mix_n == NULL) {
            validateSignature("arma::mat(*sv_aux_mix_n)(const int)");
            p_sv_aux_mix_n = (Ptr_sv_aux_mix_n)R_GetCCallable("bvars", "_bvars_sv_aux_mix_n");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_sv_aux_mix_n(Shield<SEXP>(Rcpp::wrap(N)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::mat >(rcpp_result_gen);
    }

    inline arma::vec find_mixture_indicator_cdf(const arma::vec& datanorm, const arma::mat& aux_mix) {
        typedef SEXP(*Ptr_find_mixture_indicator_cdf)(SEXP,SEXP);
        static Ptr_find_mixture_indicator_cdf p_find_mixture_indicator_cdf = NULL;
        if (p_find_mixture_indicator_cdf == NULL) {
            validateSignature("arma::vec(*find_mixture_indicator_cdf)(const arma::vec&,const arma::mat&)");
            p_find_mixture_indicator_cdf = (Ptr_find_mixture_indicator_cdf)R_GetCCallable("bvars", "_bvars_find_mixture_indicator_cdf");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_find_mixture_indicator_cdf(Shield<SEXP>(Rcpp::wrap(datanorm)), Shield<SEXP>(Rcpp::wrap(aux_mix)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<arma::vec >(rcpp_result_gen);
    }

    inline Rcpp::List svar_nc1(arma::vec& aux_h, double& aux_rho, double& aux_omega, double& aux_sigma2v, double& aux_sigma2_omega, double& aux_s_, arma::uvec& aux_S, const arma::vec& u, const Rcpp::List& prior, const arma::mat& aux_mix, bool sample_s_ = true, bool debug = false) {
        typedef SEXP(*Ptr_svar_nc1)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_svar_nc1 p_svar_nc1 = NULL;
        if (p_svar_nc1 == NULL) {
            validateSignature("Rcpp::List(*svar_nc1)(arma::vec&,double&,double&,double&,double&,double&,arma::uvec&,const arma::vec&,const Rcpp::List&,const arma::mat&,bool,bool)");
            p_svar_nc1 = (Ptr_svar_nc1)R_GetCCallable("bvars", "_bvars_svar_nc1");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_svar_nc1(Shield<SEXP>(Rcpp::wrap(aux_h)), Shield<SEXP>(Rcpp::wrap(aux_rho)), Shield<SEXP>(Rcpp::wrap(aux_omega)), Shield<SEXP>(Rcpp::wrap(aux_sigma2v)), Shield<SEXP>(Rcpp::wrap(aux_sigma2_omega)), Shield<SEXP>(Rcpp::wrap(aux_s_)), Shield<SEXP>(Rcpp::wrap(aux_S)), Shield<SEXP>(Rcpp::wrap(u)), Shield<SEXP>(Rcpp::wrap(prior)), Shield<SEXP>(Rcpp::wrap(aux_mix)), Shield<SEXP>(Rcpp::wrap(sample_s_)), Shield<SEXP>(Rcpp::wrap(debug)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<Rcpp::List >(rcpp_result_gen);
    }

    inline Rcpp::List svar_ce1(arma::vec& aux_h, double& aux_rho, double& aux_omega, double& aux_sigma2v, double& aux_sigma2_omega, double& aux_s_, arma::uvec& aux_S, const arma::vec& u, const Rcpp::List& prior, const arma::mat& aux_mix, bool sample_s_ = true) {
        typedef SEXP(*Ptr_svar_ce1)(SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP,SEXP);
        static Ptr_svar_ce1 p_svar_ce1 = NULL;
        if (p_svar_ce1 == NULL) {
            validateSignature("Rcpp::List(*svar_ce1)(arma::vec&,double&,double&,double&,double&,double&,arma::uvec&,const arma::vec&,const Rcpp::List&,const arma::mat&,bool)");
            p_svar_ce1 = (Ptr_svar_ce1)R_GetCCallable("bvars", "_bvars_svar_ce1");
        }
        RObject rcpp_result_gen;
        {
            RNGScope RCPP_rngScope_gen;
            rcpp_result_gen = p_svar_ce1(Shield<SEXP>(Rcpp::wrap(aux_h)), Shield<SEXP>(Rcpp::wrap(aux_rho)), Shield<SEXP>(Rcpp::wrap(aux_omega)), Shield<SEXP>(Rcpp::wrap(aux_sigma2v)), Shield<SEXP>(Rcpp::wrap(aux_sigma2_omega)), Shield<SEXP>(Rcpp::wrap(aux_s_)), Shield<SEXP>(Rcpp::wrap(aux_S)), Shield<SEXP>(Rcpp::wrap(u)), Shield<SEXP>(Rcpp::wrap(prior)), Shield<SEXP>(Rcpp::wrap(aux_mix)), Shield<SEXP>(Rcpp::wrap(sample_s_)));
        }
        if (rcpp_result_gen.inherits("interrupted-error"))
            throw Rcpp::internal::InterruptedException();
        if (Rcpp::internal::isLongjumpSentinel(rcpp_result_gen))
            throw Rcpp::LongjumpException(rcpp_result_gen);
        if (rcpp_result_gen.inherits("try-error"))
            throw Rcpp::exception(Rcpp::as<std::string>(rcpp_result_gen).c_str());
        return Rcpp::as<Rcpp::List >(rcpp_result_gen);
    }

}

#endif // RCPP_bvars_RCPPEXPORTS_H_GEN_
