Constant mcaptcha::GIT_COMMIT_HASH [−][src]
pub const GIT_COMMIT_HASH: &str = "41b99c101909a3f7f0bbd1928145279d46c34cf1";diff --git a/crates.js b/crates.js
index 12f16451..e343d53a 100644
--- a/crates.js
+++ b/crates.js
@@ -1 +1 @@
-window.ALL_CRATES = ["mcaptcha","mcaptcha_browser","tests_migrate"];
\ No newline at end of file
+window.ALL_CRATES = ["mcaptcha","tests_migrate"];
\ No newline at end of file
diff --git a/implementors/core/convert/trait.From.js b/implementors/core/convert/trait.From.js
index b7d40e72..1193b48b 100644
--- a/implementors/core/convert/trait.From.js
+++ b/implementors/core/convert/trait.From.js
@@ -1,4 +1,3 @@
(function() {var implementors = {};
implementors["mcaptcha"] = [{"text":"impl From<ChangePasswordReqest> for UpdatePassword","synthetic":false,"types":["mcaptcha::api::v1::account::password::UpdatePassword"]},{"text":"impl From<UninitializedFieldError> for BuildDetailsBuilderError","synthetic":false,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilderError"]},{"text":"impl From<String> for BuildDetailsBuilderError","synthetic":false,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilderError"]},{"text":"impl From<UninitializedFieldError> for HealthBuilderError","synthetic":false,"types":["mcaptcha::api::v1::meta::HealthBuilderError"]},{"text":"impl From<String> for HealthBuilderError","synthetic":false,"types":["mcaptcha::api::v1::meta::HealthBuilderError"]},{"text":"impl From<Notification> for NotificationResp","synthetic":false,"types":["mcaptcha::api::v1::notifications::get::NotificationResp"]},{"text":"impl From<CredsError> for ServiceError","synthetic":false,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl From<ValidationErrors> for ServiceError","synthetic":false,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl From<ParseError> for ServiceError","synthetic":false,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl From<CaptchaError> for ServiceError","synthetic":false,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl From<Error> for ServiceError","synthetic":false,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl From<Error> for ServiceError","synthetic":false,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl From<RecvError> for ServiceError","synthetic":false,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl From<MailboxError> for ServiceError","synthetic":false,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl From<Error> for PageError","synthetic":false,"types":["mcaptcha::errors::PageError"]},{"text":"impl From<ServiceError> for PageError","synthetic":false,"types":["mcaptcha::errors::PageError"]},{"text":"impl From<Notification> for Notification","synthetic":false,"types":["mcaptcha::pages::panel::notifications::Notification"]}];
-implementors["mcaptcha_browser"] = [{"text":"impl From<PoW<String>> for Work","synthetic":false,"types":["mcaptcha_browser::Work"]}];
if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/core/marker/trait.Freeze.js b/implementors/core/marker/trait.Freeze.js
index a12760bc..da3607b6 100644
--- a/implementors/core/marker/trait.Freeze.js
+++ b/implementors/core/marker/trait.Freeze.js
@@ -1,5 +1,4 @@
(function() {var implementors = {};
implementors["mcaptcha"] = [{"text":"impl Freeze for delete_account","synthetic":true,"types":["mcaptcha::api::v1::account::delete::delete_account"]},{"text":"impl Freeze for Email","synthetic":true,"types":["mcaptcha::api::v1::account::email::Email"]},{"text":"impl Freeze for email_exists","synthetic":true,"types":["mcaptcha::api::v1::account::email::email_exists"]},{"text":"impl Freeze for set_email","synthetic":true,"types":["mcaptcha::api::v1::account::email::set_email"]},{"text":"impl Freeze for ChangePasswordReqest","synthetic":true,"types":["mcaptcha::api::v1::account::password::ChangePasswordReqest"]},{"text":"impl Freeze for UpdatePassword","synthetic":true,"types":["mcaptcha::api::v1::account::password::UpdatePassword"]},{"text":"impl Freeze for update_user_password","synthetic":true,"types":["mcaptcha::api::v1::account::password::update_user_password"]},{"text":"impl Freeze for Secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::Secret"]},{"text":"impl Freeze for get_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::get_secret"]},{"text":"impl Freeze for update_user_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::update_user_secret"]},{"text":"impl Freeze for username_exists","synthetic":true,"types":["mcaptcha::api::v1::account::username::username_exists"]},{"text":"impl Freeze for Username","synthetic":true,"types":["mcaptcha::api::v1::account::username::Username"]},{"text":"impl Freeze for set_username","synthetic":true,"types":["mcaptcha::api::v1::account::username::set_username"]},{"text":"impl Freeze for Account","synthetic":true,"types":["mcaptcha::api::v1::account::routes::Account"]},{"text":"impl Freeze for AccountCheckPayload","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckPayload"]},{"text":"impl Freeze for AccountCheckResp","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckResp"]},{"text":"impl Freeze for Auth","synthetic":true,"types":["mcaptcha::api::v1::auth::routes::Auth"]},{"text":"impl Freeze for Register","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Register"]},{"text":"impl Freeze for Login","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Login"]},{"text":"impl Freeze for Password","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Password"]},{"text":"impl Freeze for register","synthetic":true,"types":["mcaptcha::api::v1::auth::register"]},{"text":"impl Freeze for login","synthetic":true,"types":["mcaptcha::api::v1::auth::login"]},{"text":"impl Freeze for signout","synthetic":true,"types":["mcaptcha::api::v1::auth::signout"]},{"text":"impl Freeze for MCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::routes::MCaptcha"]},{"text":"impl Freeze for MCaptchaID","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaID"]},{"text":"impl Freeze for MCaptchaDetails","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaDetails"]},{"text":"impl Freeze for update_token","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::update_token"]},{"text":"impl Freeze for DeleteCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::DeleteCaptcha"]},{"text":"impl Freeze for delete_mcaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::delete_mcaptcha"]},{"text":"impl Freeze for StatsPayload","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::StatsPayload"]},{"text":"impl Freeze for get_stats","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::get_stats"]},{"text":"impl Freeze for Duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::routes::Duration"]},{"text":"impl Freeze for UpdateDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::UpdateDuration"]},{"text":"impl Freeze for update_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::update_duration"]},{"text":"impl Freeze for GetDurationResp","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDurationResp"]},{"text":"impl Freeze for GetDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDuration"]},{"text":"impl Freeze for get_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::get_duration"]},{"text":"impl Freeze for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::routes::Levels"]},{"text":"impl Freeze for AddLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::AddLevels"]},{"text":"impl Freeze for add_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::add_levels"]},{"text":"impl Freeze for UpdateLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::UpdateLevels"]},{"text":"impl Freeze for update_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::update_levels"]},{"text":"impl Freeze for get_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::get_levels"]},{"text":"impl Freeze for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::Levels"]},{"text":"impl Freeze for I32Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::I32Levels"]},{"text":"impl Freeze for Meta","synthetic":true,"types":["mcaptcha::api::v1::meta::routes::Meta"]},{"text":"impl Freeze for BuildDetails","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetails"]},{"text":"impl Freeze for BuildDetailsBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilder"]},{"text":"impl Freeze for BuildDetailsBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilderError"]},{"text":"impl Freeze for build_details","synthetic":true,"types":["mcaptcha::api::v1::meta::build_details"]},{"text":"impl Freeze for Health","synthetic":true,"types":["mcaptcha::api::v1::meta::Health"]},{"text":"impl Freeze for HealthBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilder"]},{"text":"impl Freeze for HealthBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilderError"]},{"text":"impl Freeze for health","synthetic":true,"types":["mcaptcha::api::v1::meta::health"]},{"text":"impl Freeze for AddNotification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::AddNotification"]},{"text":"impl Freeze for add_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::add_notification"]},{"text":"impl Freeze for Notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::Notification"]},{"text":"impl Freeze for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::NotificationResp"]},{"text":"impl Freeze for get_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::get_notification"]},{"text":"impl Freeze for MarkReadReq","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::MarkReadReq"]},{"text":"impl Freeze for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::NotificationResp"]},{"text":"impl Freeze for mark_read","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::mark_read"]},{"text":"impl Freeze for Notifications","synthetic":true,"types":["mcaptcha::api::v1::notifications::routes::Notifications"]},{"text":"impl Freeze for GetConfigPayload","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::GetConfigPayload"]},{"text":"impl Freeze for get_config","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::get_config"]},{"text":"impl Freeze for ValidationToken","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::ValidationToken"]},{"text":"impl Freeze for verify_pow","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::verify_pow"]},{"text":"impl Freeze for CaptchaValidateResp","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::CaptchaValidateResp"]},{"text":"impl Freeze for validate_captcha_token","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::validate_captcha_token"]},{"text":"impl Freeze for PoW","synthetic":true,"types":["mcaptcha::api::v1::pow::routes::PoW"]},{"text":"impl Freeze for Routes","synthetic":true,"types":["mcaptcha::api::v1::routes::Routes"]},{"text":"impl Freeze for SystemGroup","synthetic":true,"types":["mcaptcha::data::SystemGroup"]},{"text":"impl Freeze for Data","synthetic":true,"types":["mcaptcha::data::Data"]},{"text":"impl Freeze for Date","synthetic":true,"types":["mcaptcha::date::Date"]},{"text":"impl Freeze for Docs","synthetic":true,"types":["mcaptcha::docs::routes::Docs"]},{"text":"impl Freeze for Asset","synthetic":true,"types":["mcaptcha::docs::Asset"]},{"text":"impl Freeze for dist","synthetic":true,"types":["mcaptcha::docs::dist"]},{"text":"impl Freeze for spec","synthetic":true,"types":["mcaptcha::docs::spec"]},{"text":"impl Freeze for index","synthetic":true,"types":["mcaptcha::docs::index"]},{"text":"impl<'a> Freeze for IndexPage<'a>","synthetic":true,"types":["mcaptcha::email::verification::IndexPage"]},{"text":"impl Freeze for SmtpErrorWrapper","synthetic":true,"types":["mcaptcha::errors::SmtpErrorWrapper"]},{"text":"impl Freeze for ServiceError","synthetic":true,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl Freeze for ErrorToResponse","synthetic":true,"types":["mcaptcha::errors::ErrorToResponse"]},{"text":"impl Freeze for PageError","synthetic":true,"types":["mcaptcha::errors::PageError"]},{"text":"impl Freeze for CheckLogin","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLogin"]},{"text":"impl<S> Freeze for CheckLoginMiddleware<S> where
S: Freeze, ","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLoginMiddleware"]},{"text":"impl Freeze for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::login::IndexPage"]},{"text":"impl Freeze for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::login::INDEX"]},{"text":"impl Freeze for login","synthetic":true,"types":["mcaptcha::pages::auth::login::login"]},{"text":"impl Freeze for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::register::IndexPage"]},{"text":"impl Freeze for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::register::INDEX"]},{"text":"impl Freeze for join","synthetic":true,"types":["mcaptcha::pages::auth::register::join"]},{"text":"impl<'a, K, V> Freeze for SudoPage<'a, K, V>","synthetic":true,"types":["mcaptcha::pages::auth::sudo::SudoPage"]},{"text":"impl Freeze for Auth","synthetic":true,"types":["mcaptcha::pages::auth::routes::Auth"]},{"text":"impl Freeze for Errors","synthetic":true,"types":["mcaptcha::pages::errors::routes::Errors"]},{"text":"impl<'a> Freeze for ErrorPage<'a>","synthetic":true,"types":["mcaptcha::pages::errors::ErrorPage"]},{"text":"impl Freeze for INTERNAL_SERVER_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::INTERNAL_SERVER_ERROR_BODY"]},{"text":"impl Freeze for UNKNOWN_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::UNKNOWN_ERROR_BODY"]},{"text":"impl Freeze for error","synthetic":true,"types":["mcaptcha::pages::errors::error"]},{"text":"impl Freeze for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::notifications::IndexPage"]},{"text":"impl Freeze for Notification","synthetic":true,"types":["mcaptcha::pages::panel::notifications::Notification"]},{"text":"impl Freeze for notifications","synthetic":true,"types":["mcaptcha::pages::panel::notifications::notifications"]},{"text":"impl Freeze for Settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::routes::Settings"]},{"text":"impl<'a> Freeze for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::settings::IndexPage"]},{"text":"impl Freeze for settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::settings"]},{"text":"impl Freeze for delete_account","synthetic":true,"types":["mcaptcha::pages::panel::settings::delete_account"]},{"text":"impl Freeze for update_secret","synthetic":true,"types":["mcaptcha::pages::panel::settings::update_secret"]},{"text":"impl Freeze for INDEX","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::INDEX"]},{"text":"impl<'a> Freeze for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::IndexPage"]},{"text":"impl Freeze for add_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::add_sitekey"]},{"text":"impl Freeze for delete_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::delete::delete_sitekey"]},{"text":"impl Freeze for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::McaptchaConfig"]},{"text":"impl Freeze for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::Level"]},{"text":"impl Freeze for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::IndexPage"]},{"text":"impl Freeze for edit_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::edit_sitekey"]},{"text":"impl Freeze for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::IndexPage"]},{"text":"impl Freeze for list_sitekeys","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::list_sitekeys"]},{"text":"impl Freeze for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::McaptchaConfig"]},{"text":"impl Freeze for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::Level"]},{"text":"impl Freeze for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::IndexPage"]},{"text":"impl Freeze for view_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::view_sitekey"]},{"text":"impl Freeze for Sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::routes::Sitekey"]},{"text":"impl Freeze for Panel","synthetic":true,"types":["mcaptcha::pages::panel::routes::Panel"]},{"text":"impl Freeze for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::IndexPage"]},{"text":"impl Freeze for panel","synthetic":true,"types":["mcaptcha::pages::panel::panel"]},{"text":"impl Freeze for Routes","synthetic":true,"types":["mcaptcha::pages::routes::Routes"]},{"text":"impl Freeze for IndexPage","synthetic":true,"types":["mcaptcha::pages::sitemap::IndexPage"]},{"text":"impl Freeze for INDEX","synthetic":true,"types":["mcaptcha::pages::sitemap::INDEX"]},{"text":"impl Freeze for sitemap","synthetic":true,"types":["mcaptcha::pages::sitemap::sitemap"]},{"text":"impl Freeze for Server","synthetic":true,"types":["mcaptcha::settings::Server"]},{"text":"impl Freeze for Captcha","synthetic":true,"types":["mcaptcha::settings::Captcha"]},{"text":"impl Freeze for Smtp","synthetic":true,"types":["mcaptcha::settings::Smtp"]},{"text":"impl Freeze for DatabaseBuilder","synthetic":true,"types":["mcaptcha::settings::DatabaseBuilder"]},{"text":"impl Freeze for Database","synthetic":true,"types":["mcaptcha::settings::Database"]},{"text":"impl Freeze for Redis","synthetic":true,"types":["mcaptcha::settings::Redis"]},{"text":"impl Freeze for Settings","synthetic":true,"types":["mcaptcha::settings::Settings"]},{"text":"impl Freeze for FileMap","synthetic":true,"types":["mcaptcha::static_assets::filemap::FileMap"]},{"text":"impl Freeze for KEY","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::KEY"]},{"text":"impl Freeze for GITHUB","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::GITHUB"]},{"text":"impl Freeze for HOME","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HOME"]},{"text":"impl Freeze for SETTINGS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::SETTINGS_ICON"]},{"text":"impl Freeze for CREDIT_CARD","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::CREDIT_CARD"]},{"text":"impl Freeze for HELP_CIRCLE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HELP_CIRCLE"]},{"text":"impl Freeze for MESSAGE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MESSAGE"]},{"text":"impl Freeze for DOCS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::DOCS_ICON"]},{"text":"impl Freeze for MCAPTCHA_TRANS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MCAPTCHA_TRANS_ICON"]},{"text":"impl Freeze for BAR_CHART","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::BAR_CHART"]},{"text":"impl Freeze for Asset","synthetic":true,"types":["mcaptcha::static_assets::static_files::Asset"]},{"text":"impl Freeze for static_files","synthetic":true,"types":["mcaptcha::static_assets::static_files::static_files"]},{"text":"impl Freeze for Favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::Favicons"]},{"text":"impl Freeze for favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::favicons"]},{"text":"impl Freeze for StatsUnixTimestamp","synthetic":true,"types":["mcaptcha::stats::fetch::StatsUnixTimestamp"]},{"text":"impl Freeze for Stats","synthetic":true,"types":["mcaptcha::stats::fetch::Stats"]},{"text":"impl Freeze for StatsPayload","synthetic":true,"types":["mcaptcha::stats::fetch::StatsPayload"]},{"text":"impl Freeze for Widget","synthetic":true,"types":["mcaptcha::widget::routes::Widget"]},{"text":"impl Freeze for IndexPage","synthetic":true,"types":["mcaptcha::widget::IndexPage"]},{"text":"impl Freeze for INDEX_PAGE","synthetic":true,"types":["mcaptcha::widget::INDEX_PAGE"]},{"text":"impl Freeze for show_widget","synthetic":true,"types":["mcaptcha::widget::show_widget"]},{"text":"impl Freeze for SETTINGS","synthetic":true,"types":["mcaptcha::SETTINGS"]},{"text":"impl Freeze for FILES","synthetic":true,"types":["mcaptcha::FILES"]},{"text":"impl Freeze for JS","synthetic":true,"types":["mcaptcha::JS"]},{"text":"impl Freeze for CSS","synthetic":true,"types":["mcaptcha::CSS"]},{"text":"impl Freeze for MOBILE_CSS","synthetic":true,"types":["mcaptcha::MOBILE_CSS"]},{"text":"impl Freeze for VERIFICATIN_WIDGET_JS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_JS"]},{"text":"impl Freeze for VERIFICATIN_WIDGET_CSS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_CSS"]},{"text":"impl Freeze for SOURCE_FILES_OF_INSTANCE","synthetic":true,"types":["mcaptcha::SOURCE_FILES_OF_INSTANCE"]}];
-implementors["mcaptcha_browser"] = [{"text":"impl Freeze for Work","synthetic":true,"types":["mcaptcha_browser::Work"]}];
implementors["tests_migrate"] = [{"text":"impl Freeze for Server","synthetic":true,"types":["tests_migrate::settings::Server"]},{"text":"impl Freeze for Captcha","synthetic":true,"types":["tests_migrate::settings::Captcha"]},{"text":"impl Freeze for Smtp","synthetic":true,"types":["tests_migrate::settings::Smtp"]},{"text":"impl Freeze for DatabaseBuilder","synthetic":true,"types":["tests_migrate::settings::DatabaseBuilder"]},{"text":"impl Freeze for Database","synthetic":true,"types":["tests_migrate::settings::Database"]},{"text":"impl Freeze for Redis","synthetic":true,"types":["tests_migrate::settings::Redis"]},{"text":"impl Freeze for Settings","synthetic":true,"types":["tests_migrate::settings::Settings"]},{"text":"impl Freeze for SETTINGS","synthetic":true,"types":["tests_migrate::SETTINGS"]}];
if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/core/marker/trait.Send.js b/implementors/core/marker/trait.Send.js
index 66465e19..f3a6188f 100644
--- a/implementors/core/marker/trait.Send.js
+++ b/implementors/core/marker/trait.Send.js
@@ -1,5 +1,4 @@
(function() {var implementors = {};
implementors["mcaptcha"] = [{"text":"impl Send for delete_account","synthetic":true,"types":["mcaptcha::api::v1::account::delete::delete_account"]},{"text":"impl Send for Email","synthetic":true,"types":["mcaptcha::api::v1::account::email::Email"]},{"text":"impl Send for email_exists","synthetic":true,"types":["mcaptcha::api::v1::account::email::email_exists"]},{"text":"impl Send for set_email","synthetic":true,"types":["mcaptcha::api::v1::account::email::set_email"]},{"text":"impl Send for ChangePasswordReqest","synthetic":true,"types":["mcaptcha::api::v1::account::password::ChangePasswordReqest"]},{"text":"impl Send for UpdatePassword","synthetic":true,"types":["mcaptcha::api::v1::account::password::UpdatePassword"]},{"text":"impl Send for update_user_password","synthetic":true,"types":["mcaptcha::api::v1::account::password::update_user_password"]},{"text":"impl Send for Secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::Secret"]},{"text":"impl Send for get_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::get_secret"]},{"text":"impl Send for update_user_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::update_user_secret"]},{"text":"impl Send for username_exists","synthetic":true,"types":["mcaptcha::api::v1::account::username::username_exists"]},{"text":"impl Send for Username","synthetic":true,"types":["mcaptcha::api::v1::account::username::Username"]},{"text":"impl Send for set_username","synthetic":true,"types":["mcaptcha::api::v1::account::username::set_username"]},{"text":"impl Send for Account","synthetic":true,"types":["mcaptcha::api::v1::account::routes::Account"]},{"text":"impl Send for AccountCheckPayload","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckPayload"]},{"text":"impl Send for AccountCheckResp","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckResp"]},{"text":"impl Send for Auth","synthetic":true,"types":["mcaptcha::api::v1::auth::routes::Auth"]},{"text":"impl Send for Register","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Register"]},{"text":"impl Send for Login","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Login"]},{"text":"impl Send for Password","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Password"]},{"text":"impl Send for register","synthetic":true,"types":["mcaptcha::api::v1::auth::register"]},{"text":"impl Send for login","synthetic":true,"types":["mcaptcha::api::v1::auth::login"]},{"text":"impl Send for signout","synthetic":true,"types":["mcaptcha::api::v1::auth::signout"]},{"text":"impl Send for MCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::routes::MCaptcha"]},{"text":"impl Send for MCaptchaID","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaID"]},{"text":"impl Send for MCaptchaDetails","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaDetails"]},{"text":"impl Send for update_token","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::update_token"]},{"text":"impl Send for DeleteCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::DeleteCaptcha"]},{"text":"impl Send for delete_mcaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::delete_mcaptcha"]},{"text":"impl Send for StatsPayload","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::StatsPayload"]},{"text":"impl Send for get_stats","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::get_stats"]},{"text":"impl Send for Duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::routes::Duration"]},{"text":"impl Send for UpdateDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::UpdateDuration"]},{"text":"impl Send for update_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::update_duration"]},{"text":"impl Send for GetDurationResp","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDurationResp"]},{"text":"impl Send for GetDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDuration"]},{"text":"impl Send for get_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::get_duration"]},{"text":"impl Send for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::routes::Levels"]},{"text":"impl Send for AddLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::AddLevels"]},{"text":"impl Send for add_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::add_levels"]},{"text":"impl Send for UpdateLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::UpdateLevels"]},{"text":"impl Send for update_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::update_levels"]},{"text":"impl Send for get_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::get_levels"]},{"text":"impl Send for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::Levels"]},{"text":"impl Send for I32Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::I32Levels"]},{"text":"impl Send for Meta","synthetic":true,"types":["mcaptcha::api::v1::meta::routes::Meta"]},{"text":"impl Send for BuildDetails","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetails"]},{"text":"impl Send for BuildDetailsBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilder"]},{"text":"impl Send for BuildDetailsBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilderError"]},{"text":"impl Send for build_details","synthetic":true,"types":["mcaptcha::api::v1::meta::build_details"]},{"text":"impl Send for Health","synthetic":true,"types":["mcaptcha::api::v1::meta::Health"]},{"text":"impl Send for HealthBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilder"]},{"text":"impl Send for HealthBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilderError"]},{"text":"impl Send for health","synthetic":true,"types":["mcaptcha::api::v1::meta::health"]},{"text":"impl Send for AddNotification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::AddNotification"]},{"text":"impl Send for add_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::add_notification"]},{"text":"impl Send for Notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::Notification"]},{"text":"impl Send for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::NotificationResp"]},{"text":"impl Send for get_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::get_notification"]},{"text":"impl Send for MarkReadReq","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::MarkReadReq"]},{"text":"impl Send for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::NotificationResp"]},{"text":"impl Send for mark_read","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::mark_read"]},{"text":"impl Send for Notifications","synthetic":true,"types":["mcaptcha::api::v1::notifications::routes::Notifications"]},{"text":"impl Send for GetConfigPayload","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::GetConfigPayload"]},{"text":"impl Send for get_config","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::get_config"]},{"text":"impl Send for ValidationToken","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::ValidationToken"]},{"text":"impl Send for verify_pow","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::verify_pow"]},{"text":"impl Send for CaptchaValidateResp","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::CaptchaValidateResp"]},{"text":"impl Send for validate_captcha_token","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::validate_captcha_token"]},{"text":"impl Send for PoW","synthetic":true,"types":["mcaptcha::api::v1::pow::routes::PoW"]},{"text":"impl Send for Routes","synthetic":true,"types":["mcaptcha::api::v1::routes::Routes"]},{"text":"impl Send for SystemGroup","synthetic":true,"types":["mcaptcha::data::SystemGroup"]},{"text":"impl Send for Data","synthetic":true,"types":["mcaptcha::data::Data"]},{"text":"impl Send for Date","synthetic":true,"types":["mcaptcha::date::Date"]},{"text":"impl Send for Docs","synthetic":true,"types":["mcaptcha::docs::routes::Docs"]},{"text":"impl Send for Asset","synthetic":true,"types":["mcaptcha::docs::Asset"]},{"text":"impl Send for dist","synthetic":true,"types":["mcaptcha::docs::dist"]},{"text":"impl Send for spec","synthetic":true,"types":["mcaptcha::docs::spec"]},{"text":"impl Send for index","synthetic":true,"types":["mcaptcha::docs::index"]},{"text":"impl<'a> Send for IndexPage<'a>","synthetic":true,"types":["mcaptcha::email::verification::IndexPage"]},{"text":"impl Send for SmtpErrorWrapper","synthetic":true,"types":["mcaptcha::errors::SmtpErrorWrapper"]},{"text":"impl Send for ServiceError","synthetic":true,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl Send for ErrorToResponse","synthetic":true,"types":["mcaptcha::errors::ErrorToResponse"]},{"text":"impl Send for PageError","synthetic":true,"types":["mcaptcha::errors::PageError"]},{"text":"impl Send for CheckLogin","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLogin"]},{"text":"impl<S> Send for CheckLoginMiddleware<S> where
S: Send, ","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLoginMiddleware"]},{"text":"impl Send for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::login::IndexPage"]},{"text":"impl Send for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::login::INDEX"]},{"text":"impl Send for login","synthetic":true,"types":["mcaptcha::pages::auth::login::login"]},{"text":"impl Send for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::register::IndexPage"]},{"text":"impl Send for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::register::INDEX"]},{"text":"impl Send for join","synthetic":true,"types":["mcaptcha::pages::auth::register::join"]},{"text":"impl<'a, K, V> Send for SudoPage<'a, K, V> where
K: Send,
V: Send, ","synthetic":true,"types":["mcaptcha::pages::auth::sudo::SudoPage"]},{"text":"impl Send for Auth","synthetic":true,"types":["mcaptcha::pages::auth::routes::Auth"]},{"text":"impl Send for Errors","synthetic":true,"types":["mcaptcha::pages::errors::routes::Errors"]},{"text":"impl<'a> Send for ErrorPage<'a>","synthetic":true,"types":["mcaptcha::pages::errors::ErrorPage"]},{"text":"impl Send for INTERNAL_SERVER_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::INTERNAL_SERVER_ERROR_BODY"]},{"text":"impl Send for UNKNOWN_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::UNKNOWN_ERROR_BODY"]},{"text":"impl Send for error","synthetic":true,"types":["mcaptcha::pages::errors::error"]},{"text":"impl Send for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::notifications::IndexPage"]},{"text":"impl Send for Notification","synthetic":true,"types":["mcaptcha::pages::panel::notifications::Notification"]},{"text":"impl Send for notifications","synthetic":true,"types":["mcaptcha::pages::panel::notifications::notifications"]},{"text":"impl Send for Settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::routes::Settings"]},{"text":"impl<'a> Send for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::settings::IndexPage"]},{"text":"impl Send for settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::settings"]},{"text":"impl Send for delete_account","synthetic":true,"types":["mcaptcha::pages::panel::settings::delete_account"]},{"text":"impl Send for update_secret","synthetic":true,"types":["mcaptcha::pages::panel::settings::update_secret"]},{"text":"impl Send for INDEX","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::INDEX"]},{"text":"impl<'a> Send for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::IndexPage"]},{"text":"impl Send for add_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::add_sitekey"]},{"text":"impl Send for delete_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::delete::delete_sitekey"]},{"text":"impl Send for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::McaptchaConfig"]},{"text":"impl Send for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::Level"]},{"text":"impl Send for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::IndexPage"]},{"text":"impl Send for edit_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::edit_sitekey"]},{"text":"impl Send for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::IndexPage"]},{"text":"impl Send for list_sitekeys","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::list_sitekeys"]},{"text":"impl Send for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::McaptchaConfig"]},{"text":"impl Send for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::Level"]},{"text":"impl Send for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::IndexPage"]},{"text":"impl Send for view_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::view_sitekey"]},{"text":"impl Send for Sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::routes::Sitekey"]},{"text":"impl Send for Panel","synthetic":true,"types":["mcaptcha::pages::panel::routes::Panel"]},{"text":"impl Send for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::IndexPage"]},{"text":"impl Send for panel","synthetic":true,"types":["mcaptcha::pages::panel::panel"]},{"text":"impl Send for Routes","synthetic":true,"types":["mcaptcha::pages::routes::Routes"]},{"text":"impl Send for IndexPage","synthetic":true,"types":["mcaptcha::pages::sitemap::IndexPage"]},{"text":"impl Send for INDEX","synthetic":true,"types":["mcaptcha::pages::sitemap::INDEX"]},{"text":"impl Send for sitemap","synthetic":true,"types":["mcaptcha::pages::sitemap::sitemap"]},{"text":"impl Send for Server","synthetic":true,"types":["mcaptcha::settings::Server"]},{"text":"impl Send for Captcha","synthetic":true,"types":["mcaptcha::settings::Captcha"]},{"text":"impl Send for Smtp","synthetic":true,"types":["mcaptcha::settings::Smtp"]},{"text":"impl Send for DatabaseBuilder","synthetic":true,"types":["mcaptcha::settings::DatabaseBuilder"]},{"text":"impl Send for Database","synthetic":true,"types":["mcaptcha::settings::Database"]},{"text":"impl Send for Redis","synthetic":true,"types":["mcaptcha::settings::Redis"]},{"text":"impl Send for Settings","synthetic":true,"types":["mcaptcha::settings::Settings"]},{"text":"impl Send for FileMap","synthetic":true,"types":["mcaptcha::static_assets::filemap::FileMap"]},{"text":"impl Send for KEY","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::KEY"]},{"text":"impl Send for GITHUB","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::GITHUB"]},{"text":"impl Send for HOME","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HOME"]},{"text":"impl Send for SETTINGS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::SETTINGS_ICON"]},{"text":"impl Send for CREDIT_CARD","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::CREDIT_CARD"]},{"text":"impl Send for HELP_CIRCLE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HELP_CIRCLE"]},{"text":"impl Send for MESSAGE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MESSAGE"]},{"text":"impl Send for DOCS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::DOCS_ICON"]},{"text":"impl Send for MCAPTCHA_TRANS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MCAPTCHA_TRANS_ICON"]},{"text":"impl Send for BAR_CHART","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::BAR_CHART"]},{"text":"impl Send for Asset","synthetic":true,"types":["mcaptcha::static_assets::static_files::Asset"]},{"text":"impl Send for static_files","synthetic":true,"types":["mcaptcha::static_assets::static_files::static_files"]},{"text":"impl Send for Favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::Favicons"]},{"text":"impl Send for favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::favicons"]},{"text":"impl Send for StatsUnixTimestamp","synthetic":true,"types":["mcaptcha::stats::fetch::StatsUnixTimestamp"]},{"text":"impl Send for Stats","synthetic":true,"types":["mcaptcha::stats::fetch::Stats"]},{"text":"impl Send for StatsPayload","synthetic":true,"types":["mcaptcha::stats::fetch::StatsPayload"]},{"text":"impl Send for Widget","synthetic":true,"types":["mcaptcha::widget::routes::Widget"]},{"text":"impl Send for IndexPage","synthetic":true,"types":["mcaptcha::widget::IndexPage"]},{"text":"impl Send for INDEX_PAGE","synthetic":true,"types":["mcaptcha::widget::INDEX_PAGE"]},{"text":"impl Send for show_widget","synthetic":true,"types":["mcaptcha::widget::show_widget"]},{"text":"impl Send for SETTINGS","synthetic":true,"types":["mcaptcha::SETTINGS"]},{"text":"impl Send for FILES","synthetic":true,"types":["mcaptcha::FILES"]},{"text":"impl Send for JS","synthetic":true,"types":["mcaptcha::JS"]},{"text":"impl Send for CSS","synthetic":true,"types":["mcaptcha::CSS"]},{"text":"impl Send for MOBILE_CSS","synthetic":true,"types":["mcaptcha::MOBILE_CSS"]},{"text":"impl Send for VERIFICATIN_WIDGET_JS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_JS"]},{"text":"impl Send for VERIFICATIN_WIDGET_CSS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_CSS"]},{"text":"impl Send for SOURCE_FILES_OF_INSTANCE","synthetic":true,"types":["mcaptcha::SOURCE_FILES_OF_INSTANCE"]}];
-implementors["mcaptcha_browser"] = [{"text":"impl Send for Work","synthetic":true,"types":["mcaptcha_browser::Work"]}];
implementors["tests_migrate"] = [{"text":"impl Send for Server","synthetic":true,"types":["tests_migrate::settings::Server"]},{"text":"impl Send for Captcha","synthetic":true,"types":["tests_migrate::settings::Captcha"]},{"text":"impl Send for Smtp","synthetic":true,"types":["tests_migrate::settings::Smtp"]},{"text":"impl Send for DatabaseBuilder","synthetic":true,"types":["tests_migrate::settings::DatabaseBuilder"]},{"text":"impl Send for Database","synthetic":true,"types":["tests_migrate::settings::Database"]},{"text":"impl Send for Redis","synthetic":true,"types":["tests_migrate::settings::Redis"]},{"text":"impl Send for Settings","synthetic":true,"types":["tests_migrate::settings::Settings"]},{"text":"impl Send for SETTINGS","synthetic":true,"types":["tests_migrate::SETTINGS"]}];
if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/core/marker/trait.Sync.js b/implementors/core/marker/trait.Sync.js
index 386950eb..d6c344d9 100644
--- a/implementors/core/marker/trait.Sync.js
+++ b/implementors/core/marker/trait.Sync.js
@@ -1,5 +1,4 @@
(function() {var implementors = {};
implementors["mcaptcha"] = [{"text":"impl Sync for delete_account","synthetic":true,"types":["mcaptcha::api::v1::account::delete::delete_account"]},{"text":"impl Sync for Email","synthetic":true,"types":["mcaptcha::api::v1::account::email::Email"]},{"text":"impl Sync for email_exists","synthetic":true,"types":["mcaptcha::api::v1::account::email::email_exists"]},{"text":"impl Sync for set_email","synthetic":true,"types":["mcaptcha::api::v1::account::email::set_email"]},{"text":"impl Sync for ChangePasswordReqest","synthetic":true,"types":["mcaptcha::api::v1::account::password::ChangePasswordReqest"]},{"text":"impl Sync for UpdatePassword","synthetic":true,"types":["mcaptcha::api::v1::account::password::UpdatePassword"]},{"text":"impl Sync for update_user_password","synthetic":true,"types":["mcaptcha::api::v1::account::password::update_user_password"]},{"text":"impl Sync for Secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::Secret"]},{"text":"impl Sync for get_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::get_secret"]},{"text":"impl Sync for update_user_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::update_user_secret"]},{"text":"impl Sync for username_exists","synthetic":true,"types":["mcaptcha::api::v1::account::username::username_exists"]},{"text":"impl Sync for Username","synthetic":true,"types":["mcaptcha::api::v1::account::username::Username"]},{"text":"impl Sync for set_username","synthetic":true,"types":["mcaptcha::api::v1::account::username::set_username"]},{"text":"impl Sync for Account","synthetic":true,"types":["mcaptcha::api::v1::account::routes::Account"]},{"text":"impl Sync for AccountCheckPayload","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckPayload"]},{"text":"impl Sync for AccountCheckResp","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckResp"]},{"text":"impl Sync for Auth","synthetic":true,"types":["mcaptcha::api::v1::auth::routes::Auth"]},{"text":"impl Sync for Register","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Register"]},{"text":"impl Sync for Login","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Login"]},{"text":"impl Sync for Password","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Password"]},{"text":"impl Sync for register","synthetic":true,"types":["mcaptcha::api::v1::auth::register"]},{"text":"impl Sync for login","synthetic":true,"types":["mcaptcha::api::v1::auth::login"]},{"text":"impl Sync for signout","synthetic":true,"types":["mcaptcha::api::v1::auth::signout"]},{"text":"impl Sync for MCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::routes::MCaptcha"]},{"text":"impl Sync for MCaptchaID","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaID"]},{"text":"impl Sync for MCaptchaDetails","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaDetails"]},{"text":"impl Sync for update_token","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::update_token"]},{"text":"impl Sync for DeleteCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::DeleteCaptcha"]},{"text":"impl Sync for delete_mcaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::delete_mcaptcha"]},{"text":"impl Sync for StatsPayload","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::StatsPayload"]},{"text":"impl Sync for get_stats","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::get_stats"]},{"text":"impl Sync for Duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::routes::Duration"]},{"text":"impl Sync for UpdateDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::UpdateDuration"]},{"text":"impl Sync for update_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::update_duration"]},{"text":"impl Sync for GetDurationResp","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDurationResp"]},{"text":"impl Sync for GetDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDuration"]},{"text":"impl Sync for get_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::get_duration"]},{"text":"impl Sync for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::routes::Levels"]},{"text":"impl Sync for AddLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::AddLevels"]},{"text":"impl Sync for add_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::add_levels"]},{"text":"impl Sync for UpdateLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::UpdateLevels"]},{"text":"impl Sync for update_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::update_levels"]},{"text":"impl Sync for get_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::get_levels"]},{"text":"impl Sync for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::Levels"]},{"text":"impl Sync for I32Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::I32Levels"]},{"text":"impl Sync for Meta","synthetic":true,"types":["mcaptcha::api::v1::meta::routes::Meta"]},{"text":"impl Sync for BuildDetails","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetails"]},{"text":"impl Sync for BuildDetailsBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilder"]},{"text":"impl Sync for BuildDetailsBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilderError"]},{"text":"impl Sync for build_details","synthetic":true,"types":["mcaptcha::api::v1::meta::build_details"]},{"text":"impl Sync for Health","synthetic":true,"types":["mcaptcha::api::v1::meta::Health"]},{"text":"impl Sync for HealthBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilder"]},{"text":"impl Sync for HealthBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilderError"]},{"text":"impl Sync for health","synthetic":true,"types":["mcaptcha::api::v1::meta::health"]},{"text":"impl Sync for AddNotification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::AddNotification"]},{"text":"impl Sync for add_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::add_notification"]},{"text":"impl Sync for Notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::Notification"]},{"text":"impl Sync for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::NotificationResp"]},{"text":"impl Sync for get_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::get_notification"]},{"text":"impl Sync for MarkReadReq","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::MarkReadReq"]},{"text":"impl Sync for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::NotificationResp"]},{"text":"impl Sync for mark_read","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::mark_read"]},{"text":"impl Sync for Notifications","synthetic":true,"types":["mcaptcha::api::v1::notifications::routes::Notifications"]},{"text":"impl Sync for GetConfigPayload","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::GetConfigPayload"]},{"text":"impl Sync for get_config","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::get_config"]},{"text":"impl Sync for ValidationToken","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::ValidationToken"]},{"text":"impl Sync for verify_pow","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::verify_pow"]},{"text":"impl Sync for CaptchaValidateResp","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::CaptchaValidateResp"]},{"text":"impl Sync for validate_captcha_token","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::validate_captcha_token"]},{"text":"impl Sync for PoW","synthetic":true,"types":["mcaptcha::api::v1::pow::routes::PoW"]},{"text":"impl Sync for Routes","synthetic":true,"types":["mcaptcha::api::v1::routes::Routes"]},{"text":"impl Sync for SystemGroup","synthetic":true,"types":["mcaptcha::data::SystemGroup"]},{"text":"impl Sync for Data","synthetic":true,"types":["mcaptcha::data::Data"]},{"text":"impl Sync for Date","synthetic":true,"types":["mcaptcha::date::Date"]},{"text":"impl Sync for Docs","synthetic":true,"types":["mcaptcha::docs::routes::Docs"]},{"text":"impl Sync for Asset","synthetic":true,"types":["mcaptcha::docs::Asset"]},{"text":"impl Sync for dist","synthetic":true,"types":["mcaptcha::docs::dist"]},{"text":"impl Sync for spec","synthetic":true,"types":["mcaptcha::docs::spec"]},{"text":"impl Sync for index","synthetic":true,"types":["mcaptcha::docs::index"]},{"text":"impl<'a> Sync for IndexPage<'a>","synthetic":true,"types":["mcaptcha::email::verification::IndexPage"]},{"text":"impl Sync for SmtpErrorWrapper","synthetic":true,"types":["mcaptcha::errors::SmtpErrorWrapper"]},{"text":"impl Sync for ServiceError","synthetic":true,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl Sync for ErrorToResponse","synthetic":true,"types":["mcaptcha::errors::ErrorToResponse"]},{"text":"impl Sync for PageError","synthetic":true,"types":["mcaptcha::errors::PageError"]},{"text":"impl Sync for CheckLogin","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLogin"]},{"text":"impl<S> Sync for CheckLoginMiddleware<S> where
S: Sync, ","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLoginMiddleware"]},{"text":"impl Sync for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::login::IndexPage"]},{"text":"impl Sync for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::login::INDEX"]},{"text":"impl Sync for login","synthetic":true,"types":["mcaptcha::pages::auth::login::login"]},{"text":"impl Sync for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::register::IndexPage"]},{"text":"impl Sync for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::register::INDEX"]},{"text":"impl Sync for join","synthetic":true,"types":["mcaptcha::pages::auth::register::join"]},{"text":"impl<'a, K, V> Sync for SudoPage<'a, K, V> where
K: Sync,
V: Sync, ","synthetic":true,"types":["mcaptcha::pages::auth::sudo::SudoPage"]},{"text":"impl Sync for Auth","synthetic":true,"types":["mcaptcha::pages::auth::routes::Auth"]},{"text":"impl Sync for Errors","synthetic":true,"types":["mcaptcha::pages::errors::routes::Errors"]},{"text":"impl<'a> Sync for ErrorPage<'a>","synthetic":true,"types":["mcaptcha::pages::errors::ErrorPage"]},{"text":"impl Sync for INTERNAL_SERVER_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::INTERNAL_SERVER_ERROR_BODY"]},{"text":"impl Sync for UNKNOWN_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::UNKNOWN_ERROR_BODY"]},{"text":"impl Sync for error","synthetic":true,"types":["mcaptcha::pages::errors::error"]},{"text":"impl Sync for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::notifications::IndexPage"]},{"text":"impl Sync for Notification","synthetic":true,"types":["mcaptcha::pages::panel::notifications::Notification"]},{"text":"impl Sync for notifications","synthetic":true,"types":["mcaptcha::pages::panel::notifications::notifications"]},{"text":"impl Sync for Settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::routes::Settings"]},{"text":"impl<'a> Sync for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::settings::IndexPage"]},{"text":"impl Sync for settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::settings"]},{"text":"impl Sync for delete_account","synthetic":true,"types":["mcaptcha::pages::panel::settings::delete_account"]},{"text":"impl Sync for update_secret","synthetic":true,"types":["mcaptcha::pages::panel::settings::update_secret"]},{"text":"impl Sync for INDEX","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::INDEX"]},{"text":"impl<'a> Sync for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::IndexPage"]},{"text":"impl Sync for add_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::add_sitekey"]},{"text":"impl Sync for delete_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::delete::delete_sitekey"]},{"text":"impl Sync for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::McaptchaConfig"]},{"text":"impl Sync for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::Level"]},{"text":"impl Sync for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::IndexPage"]},{"text":"impl Sync for edit_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::edit_sitekey"]},{"text":"impl Sync for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::IndexPage"]},{"text":"impl Sync for list_sitekeys","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::list_sitekeys"]},{"text":"impl Sync for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::McaptchaConfig"]},{"text":"impl Sync for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::Level"]},{"text":"impl Sync for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::IndexPage"]},{"text":"impl Sync for view_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::view_sitekey"]},{"text":"impl Sync for Sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::routes::Sitekey"]},{"text":"impl Sync for Panel","synthetic":true,"types":["mcaptcha::pages::panel::routes::Panel"]},{"text":"impl Sync for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::IndexPage"]},{"text":"impl Sync for panel","synthetic":true,"types":["mcaptcha::pages::panel::panel"]},{"text":"impl Sync for Routes","synthetic":true,"types":["mcaptcha::pages::routes::Routes"]},{"text":"impl Sync for IndexPage","synthetic":true,"types":["mcaptcha::pages::sitemap::IndexPage"]},{"text":"impl Sync for INDEX","synthetic":true,"types":["mcaptcha::pages::sitemap::INDEX"]},{"text":"impl Sync for sitemap","synthetic":true,"types":["mcaptcha::pages::sitemap::sitemap"]},{"text":"impl Sync for Server","synthetic":true,"types":["mcaptcha::settings::Server"]},{"text":"impl Sync for Captcha","synthetic":true,"types":["mcaptcha::settings::Captcha"]},{"text":"impl Sync for Smtp","synthetic":true,"types":["mcaptcha::settings::Smtp"]},{"text":"impl Sync for DatabaseBuilder","synthetic":true,"types":["mcaptcha::settings::DatabaseBuilder"]},{"text":"impl Sync for Database","synthetic":true,"types":["mcaptcha::settings::Database"]},{"text":"impl Sync for Redis","synthetic":true,"types":["mcaptcha::settings::Redis"]},{"text":"impl Sync for Settings","synthetic":true,"types":["mcaptcha::settings::Settings"]},{"text":"impl Sync for FileMap","synthetic":true,"types":["mcaptcha::static_assets::filemap::FileMap"]},{"text":"impl Sync for KEY","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::KEY"]},{"text":"impl Sync for GITHUB","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::GITHUB"]},{"text":"impl Sync for HOME","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HOME"]},{"text":"impl Sync for SETTINGS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::SETTINGS_ICON"]},{"text":"impl Sync for CREDIT_CARD","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::CREDIT_CARD"]},{"text":"impl Sync for HELP_CIRCLE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HELP_CIRCLE"]},{"text":"impl Sync for MESSAGE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MESSAGE"]},{"text":"impl Sync for DOCS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::DOCS_ICON"]},{"text":"impl Sync for MCAPTCHA_TRANS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MCAPTCHA_TRANS_ICON"]},{"text":"impl Sync for BAR_CHART","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::BAR_CHART"]},{"text":"impl Sync for Asset","synthetic":true,"types":["mcaptcha::static_assets::static_files::Asset"]},{"text":"impl Sync for static_files","synthetic":true,"types":["mcaptcha::static_assets::static_files::static_files"]},{"text":"impl Sync for Favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::Favicons"]},{"text":"impl Sync for favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::favicons"]},{"text":"impl Sync for StatsUnixTimestamp","synthetic":true,"types":["mcaptcha::stats::fetch::StatsUnixTimestamp"]},{"text":"impl Sync for Stats","synthetic":true,"types":["mcaptcha::stats::fetch::Stats"]},{"text":"impl Sync for StatsPayload","synthetic":true,"types":["mcaptcha::stats::fetch::StatsPayload"]},{"text":"impl Sync for Widget","synthetic":true,"types":["mcaptcha::widget::routes::Widget"]},{"text":"impl Sync for IndexPage","synthetic":true,"types":["mcaptcha::widget::IndexPage"]},{"text":"impl Sync for INDEX_PAGE","synthetic":true,"types":["mcaptcha::widget::INDEX_PAGE"]},{"text":"impl Sync for show_widget","synthetic":true,"types":["mcaptcha::widget::show_widget"]},{"text":"impl Sync for SETTINGS","synthetic":true,"types":["mcaptcha::SETTINGS"]},{"text":"impl Sync for FILES","synthetic":true,"types":["mcaptcha::FILES"]},{"text":"impl Sync for JS","synthetic":true,"types":["mcaptcha::JS"]},{"text":"impl Sync for CSS","synthetic":true,"types":["mcaptcha::CSS"]},{"text":"impl Sync for MOBILE_CSS","synthetic":true,"types":["mcaptcha::MOBILE_CSS"]},{"text":"impl Sync for VERIFICATIN_WIDGET_JS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_JS"]},{"text":"impl Sync for VERIFICATIN_WIDGET_CSS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_CSS"]},{"text":"impl Sync for SOURCE_FILES_OF_INSTANCE","synthetic":true,"types":["mcaptcha::SOURCE_FILES_OF_INSTANCE"]}];
-implementors["mcaptcha_browser"] = [{"text":"impl Sync for Work","synthetic":true,"types":["mcaptcha_browser::Work"]}];
implementors["tests_migrate"] = [{"text":"impl Sync for Server","synthetic":true,"types":["tests_migrate::settings::Server"]},{"text":"impl Sync for Captcha","synthetic":true,"types":["tests_migrate::settings::Captcha"]},{"text":"impl Sync for Smtp","synthetic":true,"types":["tests_migrate::settings::Smtp"]},{"text":"impl Sync for DatabaseBuilder","synthetic":true,"types":["tests_migrate::settings::DatabaseBuilder"]},{"text":"impl Sync for Database","synthetic":true,"types":["tests_migrate::settings::Database"]},{"text":"impl Sync for Redis","synthetic":true,"types":["tests_migrate::settings::Redis"]},{"text":"impl Sync for Settings","synthetic":true,"types":["tests_migrate::settings::Settings"]},{"text":"impl Sync for SETTINGS","synthetic":true,"types":["tests_migrate::SETTINGS"]}];
if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/core/marker/trait.Unpin.js b/implementors/core/marker/trait.Unpin.js
index 8490a7b4..e05e806d 100644
--- a/implementors/core/marker/trait.Unpin.js
+++ b/implementors/core/marker/trait.Unpin.js
@@ -1,5 +1,4 @@
(function() {var implementors = {};
implementors["mcaptcha"] = [{"text":"impl Unpin for delete_account","synthetic":true,"types":["mcaptcha::api::v1::account::delete::delete_account"]},{"text":"impl Unpin for Email","synthetic":true,"types":["mcaptcha::api::v1::account::email::Email"]},{"text":"impl Unpin for email_exists","synthetic":true,"types":["mcaptcha::api::v1::account::email::email_exists"]},{"text":"impl Unpin for set_email","synthetic":true,"types":["mcaptcha::api::v1::account::email::set_email"]},{"text":"impl Unpin for ChangePasswordReqest","synthetic":true,"types":["mcaptcha::api::v1::account::password::ChangePasswordReqest"]},{"text":"impl Unpin for UpdatePassword","synthetic":true,"types":["mcaptcha::api::v1::account::password::UpdatePassword"]},{"text":"impl Unpin for update_user_password","synthetic":true,"types":["mcaptcha::api::v1::account::password::update_user_password"]},{"text":"impl Unpin for Secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::Secret"]},{"text":"impl Unpin for get_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::get_secret"]},{"text":"impl Unpin for update_user_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::update_user_secret"]},{"text":"impl Unpin for username_exists","synthetic":true,"types":["mcaptcha::api::v1::account::username::username_exists"]},{"text":"impl Unpin for Username","synthetic":true,"types":["mcaptcha::api::v1::account::username::Username"]},{"text":"impl Unpin for set_username","synthetic":true,"types":["mcaptcha::api::v1::account::username::set_username"]},{"text":"impl Unpin for Account","synthetic":true,"types":["mcaptcha::api::v1::account::routes::Account"]},{"text":"impl Unpin for AccountCheckPayload","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckPayload"]},{"text":"impl Unpin for AccountCheckResp","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckResp"]},{"text":"impl Unpin for Auth","synthetic":true,"types":["mcaptcha::api::v1::auth::routes::Auth"]},{"text":"impl Unpin for Register","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Register"]},{"text":"impl Unpin for Login","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Login"]},{"text":"impl Unpin for Password","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Password"]},{"text":"impl Unpin for register","synthetic":true,"types":["mcaptcha::api::v1::auth::register"]},{"text":"impl Unpin for login","synthetic":true,"types":["mcaptcha::api::v1::auth::login"]},{"text":"impl Unpin for signout","synthetic":true,"types":["mcaptcha::api::v1::auth::signout"]},{"text":"impl Unpin for MCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::routes::MCaptcha"]},{"text":"impl Unpin for MCaptchaID","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaID"]},{"text":"impl Unpin for MCaptchaDetails","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaDetails"]},{"text":"impl Unpin for update_token","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::update_token"]},{"text":"impl Unpin for DeleteCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::DeleteCaptcha"]},{"text":"impl Unpin for delete_mcaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::delete_mcaptcha"]},{"text":"impl Unpin for StatsPayload","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::StatsPayload"]},{"text":"impl Unpin for get_stats","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::get_stats"]},{"text":"impl Unpin for Duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::routes::Duration"]},{"text":"impl Unpin for UpdateDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::UpdateDuration"]},{"text":"impl Unpin for update_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::update_duration"]},{"text":"impl Unpin for GetDurationResp","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDurationResp"]},{"text":"impl Unpin for GetDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDuration"]},{"text":"impl Unpin for get_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::get_duration"]},{"text":"impl Unpin for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::routes::Levels"]},{"text":"impl Unpin for AddLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::AddLevels"]},{"text":"impl Unpin for add_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::add_levels"]},{"text":"impl Unpin for UpdateLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::UpdateLevels"]},{"text":"impl Unpin for update_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::update_levels"]},{"text":"impl Unpin for get_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::get_levels"]},{"text":"impl Unpin for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::Levels"]},{"text":"impl Unpin for I32Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::I32Levels"]},{"text":"impl Unpin for Meta","synthetic":true,"types":["mcaptcha::api::v1::meta::routes::Meta"]},{"text":"impl Unpin for BuildDetails","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetails"]},{"text":"impl Unpin for BuildDetailsBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilder"]},{"text":"impl Unpin for BuildDetailsBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilderError"]},{"text":"impl Unpin for build_details","synthetic":true,"types":["mcaptcha::api::v1::meta::build_details"]},{"text":"impl Unpin for Health","synthetic":true,"types":["mcaptcha::api::v1::meta::Health"]},{"text":"impl Unpin for HealthBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilder"]},{"text":"impl Unpin for HealthBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilderError"]},{"text":"impl Unpin for health","synthetic":true,"types":["mcaptcha::api::v1::meta::health"]},{"text":"impl Unpin for AddNotification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::AddNotification"]},{"text":"impl Unpin for add_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::add_notification"]},{"text":"impl Unpin for Notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::Notification"]},{"text":"impl Unpin for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::NotificationResp"]},{"text":"impl Unpin for get_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::get_notification"]},{"text":"impl Unpin for MarkReadReq","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::MarkReadReq"]},{"text":"impl Unpin for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::NotificationResp"]},{"text":"impl Unpin for mark_read","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::mark_read"]},{"text":"impl Unpin for Notifications","synthetic":true,"types":["mcaptcha::api::v1::notifications::routes::Notifications"]},{"text":"impl Unpin for GetConfigPayload","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::GetConfigPayload"]},{"text":"impl Unpin for get_config","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::get_config"]},{"text":"impl Unpin for ValidationToken","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::ValidationToken"]},{"text":"impl Unpin for verify_pow","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::verify_pow"]},{"text":"impl Unpin for CaptchaValidateResp","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::CaptchaValidateResp"]},{"text":"impl Unpin for validate_captcha_token","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::validate_captcha_token"]},{"text":"impl Unpin for PoW","synthetic":true,"types":["mcaptcha::api::v1::pow::routes::PoW"]},{"text":"impl Unpin for Routes","synthetic":true,"types":["mcaptcha::api::v1::routes::Routes"]},{"text":"impl Unpin for SystemGroup","synthetic":true,"types":["mcaptcha::data::SystemGroup"]},{"text":"impl Unpin for Data","synthetic":true,"types":["mcaptcha::data::Data"]},{"text":"impl Unpin for Date","synthetic":true,"types":["mcaptcha::date::Date"]},{"text":"impl Unpin for Docs","synthetic":true,"types":["mcaptcha::docs::routes::Docs"]},{"text":"impl Unpin for Asset","synthetic":true,"types":["mcaptcha::docs::Asset"]},{"text":"impl Unpin for dist","synthetic":true,"types":["mcaptcha::docs::dist"]},{"text":"impl Unpin for spec","synthetic":true,"types":["mcaptcha::docs::spec"]},{"text":"impl Unpin for index","synthetic":true,"types":["mcaptcha::docs::index"]},{"text":"impl<'a> Unpin for IndexPage<'a>","synthetic":true,"types":["mcaptcha::email::verification::IndexPage"]},{"text":"impl Unpin for SmtpErrorWrapper","synthetic":true,"types":["mcaptcha::errors::SmtpErrorWrapper"]},{"text":"impl Unpin for ServiceError","synthetic":true,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl Unpin for ErrorToResponse","synthetic":true,"types":["mcaptcha::errors::ErrorToResponse"]},{"text":"impl Unpin for PageError","synthetic":true,"types":["mcaptcha::errors::PageError"]},{"text":"impl Unpin for CheckLogin","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLogin"]},{"text":"impl<S> Unpin for CheckLoginMiddleware<S> where
S: Unpin, ","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLoginMiddleware"]},{"text":"impl Unpin for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::login::IndexPage"]},{"text":"impl Unpin for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::login::INDEX"]},{"text":"impl Unpin for login","synthetic":true,"types":["mcaptcha::pages::auth::login::login"]},{"text":"impl Unpin for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::register::IndexPage"]},{"text":"impl Unpin for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::register::INDEX"]},{"text":"impl Unpin for join","synthetic":true,"types":["mcaptcha::pages::auth::register::join"]},{"text":"impl<'a, K, V> Unpin for SudoPage<'a, K, V> where
K: Unpin,
V: Unpin, ","synthetic":true,"types":["mcaptcha::pages::auth::sudo::SudoPage"]},{"text":"impl Unpin for Auth","synthetic":true,"types":["mcaptcha::pages::auth::routes::Auth"]},{"text":"impl Unpin for Errors","synthetic":true,"types":["mcaptcha::pages::errors::routes::Errors"]},{"text":"impl<'a> Unpin for ErrorPage<'a>","synthetic":true,"types":["mcaptcha::pages::errors::ErrorPage"]},{"text":"impl Unpin for INTERNAL_SERVER_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::INTERNAL_SERVER_ERROR_BODY"]},{"text":"impl Unpin for UNKNOWN_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::UNKNOWN_ERROR_BODY"]},{"text":"impl Unpin for error","synthetic":true,"types":["mcaptcha::pages::errors::error"]},{"text":"impl Unpin for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::notifications::IndexPage"]},{"text":"impl Unpin for Notification","synthetic":true,"types":["mcaptcha::pages::panel::notifications::Notification"]},{"text":"impl Unpin for notifications","synthetic":true,"types":["mcaptcha::pages::panel::notifications::notifications"]},{"text":"impl Unpin for Settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::routes::Settings"]},{"text":"impl<'a> Unpin for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::settings::IndexPage"]},{"text":"impl Unpin for settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::settings"]},{"text":"impl Unpin for delete_account","synthetic":true,"types":["mcaptcha::pages::panel::settings::delete_account"]},{"text":"impl Unpin for update_secret","synthetic":true,"types":["mcaptcha::pages::panel::settings::update_secret"]},{"text":"impl Unpin for INDEX","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::INDEX"]},{"text":"impl<'a> Unpin for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::IndexPage"]},{"text":"impl Unpin for add_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::add_sitekey"]},{"text":"impl Unpin for delete_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::delete::delete_sitekey"]},{"text":"impl Unpin for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::McaptchaConfig"]},{"text":"impl Unpin for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::Level"]},{"text":"impl Unpin for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::IndexPage"]},{"text":"impl Unpin for edit_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::edit_sitekey"]},{"text":"impl Unpin for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::IndexPage"]},{"text":"impl Unpin for list_sitekeys","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::list_sitekeys"]},{"text":"impl Unpin for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::McaptchaConfig"]},{"text":"impl Unpin for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::Level"]},{"text":"impl Unpin for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::IndexPage"]},{"text":"impl Unpin for view_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::view_sitekey"]},{"text":"impl Unpin for Sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::routes::Sitekey"]},{"text":"impl Unpin for Panel","synthetic":true,"types":["mcaptcha::pages::panel::routes::Panel"]},{"text":"impl Unpin for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::IndexPage"]},{"text":"impl Unpin for panel","synthetic":true,"types":["mcaptcha::pages::panel::panel"]},{"text":"impl Unpin for Routes","synthetic":true,"types":["mcaptcha::pages::routes::Routes"]},{"text":"impl Unpin for IndexPage","synthetic":true,"types":["mcaptcha::pages::sitemap::IndexPage"]},{"text":"impl Unpin for INDEX","synthetic":true,"types":["mcaptcha::pages::sitemap::INDEX"]},{"text":"impl Unpin for sitemap","synthetic":true,"types":["mcaptcha::pages::sitemap::sitemap"]},{"text":"impl Unpin for Server","synthetic":true,"types":["mcaptcha::settings::Server"]},{"text":"impl Unpin for Captcha","synthetic":true,"types":["mcaptcha::settings::Captcha"]},{"text":"impl Unpin for Smtp","synthetic":true,"types":["mcaptcha::settings::Smtp"]},{"text":"impl Unpin for DatabaseBuilder","synthetic":true,"types":["mcaptcha::settings::DatabaseBuilder"]},{"text":"impl Unpin for Database","synthetic":true,"types":["mcaptcha::settings::Database"]},{"text":"impl Unpin for Redis","synthetic":true,"types":["mcaptcha::settings::Redis"]},{"text":"impl Unpin for Settings","synthetic":true,"types":["mcaptcha::settings::Settings"]},{"text":"impl Unpin for FileMap","synthetic":true,"types":["mcaptcha::static_assets::filemap::FileMap"]},{"text":"impl Unpin for KEY","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::KEY"]},{"text":"impl Unpin for GITHUB","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::GITHUB"]},{"text":"impl Unpin for HOME","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HOME"]},{"text":"impl Unpin for SETTINGS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::SETTINGS_ICON"]},{"text":"impl Unpin for CREDIT_CARD","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::CREDIT_CARD"]},{"text":"impl Unpin for HELP_CIRCLE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HELP_CIRCLE"]},{"text":"impl Unpin for MESSAGE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MESSAGE"]},{"text":"impl Unpin for DOCS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::DOCS_ICON"]},{"text":"impl Unpin for MCAPTCHA_TRANS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MCAPTCHA_TRANS_ICON"]},{"text":"impl Unpin for BAR_CHART","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::BAR_CHART"]},{"text":"impl Unpin for Asset","synthetic":true,"types":["mcaptcha::static_assets::static_files::Asset"]},{"text":"impl Unpin for static_files","synthetic":true,"types":["mcaptcha::static_assets::static_files::static_files"]},{"text":"impl Unpin for Favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::Favicons"]},{"text":"impl Unpin for favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::favicons"]},{"text":"impl Unpin for StatsUnixTimestamp","synthetic":true,"types":["mcaptcha::stats::fetch::StatsUnixTimestamp"]},{"text":"impl Unpin for Stats","synthetic":true,"types":["mcaptcha::stats::fetch::Stats"]},{"text":"impl Unpin for StatsPayload","synthetic":true,"types":["mcaptcha::stats::fetch::StatsPayload"]},{"text":"impl Unpin for Widget","synthetic":true,"types":["mcaptcha::widget::routes::Widget"]},{"text":"impl Unpin for IndexPage","synthetic":true,"types":["mcaptcha::widget::IndexPage"]},{"text":"impl Unpin for INDEX_PAGE","synthetic":true,"types":["mcaptcha::widget::INDEX_PAGE"]},{"text":"impl Unpin for show_widget","synthetic":true,"types":["mcaptcha::widget::show_widget"]},{"text":"impl Unpin for SETTINGS","synthetic":true,"types":["mcaptcha::SETTINGS"]},{"text":"impl Unpin for FILES","synthetic":true,"types":["mcaptcha::FILES"]},{"text":"impl Unpin for JS","synthetic":true,"types":["mcaptcha::JS"]},{"text":"impl Unpin for CSS","synthetic":true,"types":["mcaptcha::CSS"]},{"text":"impl Unpin for MOBILE_CSS","synthetic":true,"types":["mcaptcha::MOBILE_CSS"]},{"text":"impl Unpin for VERIFICATIN_WIDGET_JS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_JS"]},{"text":"impl Unpin for VERIFICATIN_WIDGET_CSS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_CSS"]},{"text":"impl Unpin for SOURCE_FILES_OF_INSTANCE","synthetic":true,"types":["mcaptcha::SOURCE_FILES_OF_INSTANCE"]}];
-implementors["mcaptcha_browser"] = [{"text":"impl Unpin for Work","synthetic":true,"types":["mcaptcha_browser::Work"]}];
implementors["tests_migrate"] = [{"text":"impl Unpin for Server","synthetic":true,"types":["tests_migrate::settings::Server"]},{"text":"impl Unpin for Captcha","synthetic":true,"types":["tests_migrate::settings::Captcha"]},{"text":"impl Unpin for Smtp","synthetic":true,"types":["tests_migrate::settings::Smtp"]},{"text":"impl Unpin for DatabaseBuilder","synthetic":true,"types":["tests_migrate::settings::DatabaseBuilder"]},{"text":"impl Unpin for Database","synthetic":true,"types":["tests_migrate::settings::Database"]},{"text":"impl Unpin for Redis","synthetic":true,"types":["tests_migrate::settings::Redis"]},{"text":"impl Unpin for Settings","synthetic":true,"types":["tests_migrate::settings::Settings"]},{"text":"impl Unpin for SETTINGS","synthetic":true,"types":["tests_migrate::SETTINGS"]}];
if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js b/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js
index 36986aaa..ebaa2bae 100644
--- a/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js
+++ b/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js
@@ -1,5 +1,4 @@
(function() {var implementors = {};
implementors["mcaptcha"] = [{"text":"impl RefUnwindSafe for delete_account","synthetic":true,"types":["mcaptcha::api::v1::account::delete::delete_account"]},{"text":"impl RefUnwindSafe for Email","synthetic":true,"types":["mcaptcha::api::v1::account::email::Email"]},{"text":"impl RefUnwindSafe for email_exists","synthetic":true,"types":["mcaptcha::api::v1::account::email::email_exists"]},{"text":"impl RefUnwindSafe for set_email","synthetic":true,"types":["mcaptcha::api::v1::account::email::set_email"]},{"text":"impl RefUnwindSafe for ChangePasswordReqest","synthetic":true,"types":["mcaptcha::api::v1::account::password::ChangePasswordReqest"]},{"text":"impl RefUnwindSafe for UpdatePassword","synthetic":true,"types":["mcaptcha::api::v1::account::password::UpdatePassword"]},{"text":"impl RefUnwindSafe for update_user_password","synthetic":true,"types":["mcaptcha::api::v1::account::password::update_user_password"]},{"text":"impl RefUnwindSafe for Secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::Secret"]},{"text":"impl RefUnwindSafe for get_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::get_secret"]},{"text":"impl RefUnwindSafe for update_user_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::update_user_secret"]},{"text":"impl RefUnwindSafe for username_exists","synthetic":true,"types":["mcaptcha::api::v1::account::username::username_exists"]},{"text":"impl RefUnwindSafe for Username","synthetic":true,"types":["mcaptcha::api::v1::account::username::Username"]},{"text":"impl RefUnwindSafe for set_username","synthetic":true,"types":["mcaptcha::api::v1::account::username::set_username"]},{"text":"impl RefUnwindSafe for Account","synthetic":true,"types":["mcaptcha::api::v1::account::routes::Account"]},{"text":"impl RefUnwindSafe for AccountCheckPayload","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckPayload"]},{"text":"impl RefUnwindSafe for AccountCheckResp","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckResp"]},{"text":"impl RefUnwindSafe for Auth","synthetic":true,"types":["mcaptcha::api::v1::auth::routes::Auth"]},{"text":"impl RefUnwindSafe for Register","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Register"]},{"text":"impl RefUnwindSafe for Login","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Login"]},{"text":"impl RefUnwindSafe for Password","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Password"]},{"text":"impl RefUnwindSafe for register","synthetic":true,"types":["mcaptcha::api::v1::auth::register"]},{"text":"impl RefUnwindSafe for login","synthetic":true,"types":["mcaptcha::api::v1::auth::login"]},{"text":"impl RefUnwindSafe for signout","synthetic":true,"types":["mcaptcha::api::v1::auth::signout"]},{"text":"impl RefUnwindSafe for MCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::routes::MCaptcha"]},{"text":"impl RefUnwindSafe for MCaptchaID","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaID"]},{"text":"impl RefUnwindSafe for MCaptchaDetails","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaDetails"]},{"text":"impl RefUnwindSafe for update_token","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::update_token"]},{"text":"impl RefUnwindSafe for DeleteCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::DeleteCaptcha"]},{"text":"impl RefUnwindSafe for delete_mcaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::delete_mcaptcha"]},{"text":"impl RefUnwindSafe for StatsPayload","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::StatsPayload"]},{"text":"impl RefUnwindSafe for get_stats","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::get_stats"]},{"text":"impl RefUnwindSafe for Duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::routes::Duration"]},{"text":"impl RefUnwindSafe for UpdateDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::UpdateDuration"]},{"text":"impl RefUnwindSafe for update_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::update_duration"]},{"text":"impl RefUnwindSafe for GetDurationResp","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDurationResp"]},{"text":"impl RefUnwindSafe for GetDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDuration"]},{"text":"impl RefUnwindSafe for get_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::get_duration"]},{"text":"impl RefUnwindSafe for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::routes::Levels"]},{"text":"impl RefUnwindSafe for AddLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::AddLevels"]},{"text":"impl RefUnwindSafe for add_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::add_levels"]},{"text":"impl RefUnwindSafe for UpdateLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::UpdateLevels"]},{"text":"impl RefUnwindSafe for update_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::update_levels"]},{"text":"impl RefUnwindSafe for get_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::get_levels"]},{"text":"impl RefUnwindSafe for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::Levels"]},{"text":"impl RefUnwindSafe for I32Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::I32Levels"]},{"text":"impl RefUnwindSafe for Meta","synthetic":true,"types":["mcaptcha::api::v1::meta::routes::Meta"]},{"text":"impl RefUnwindSafe for BuildDetails","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetails"]},{"text":"impl RefUnwindSafe for BuildDetailsBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilder"]},{"text":"impl RefUnwindSafe for BuildDetailsBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilderError"]},{"text":"impl RefUnwindSafe for build_details","synthetic":true,"types":["mcaptcha::api::v1::meta::build_details"]},{"text":"impl RefUnwindSafe for Health","synthetic":true,"types":["mcaptcha::api::v1::meta::Health"]},{"text":"impl RefUnwindSafe for HealthBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilder"]},{"text":"impl RefUnwindSafe for HealthBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilderError"]},{"text":"impl RefUnwindSafe for health","synthetic":true,"types":["mcaptcha::api::v1::meta::health"]},{"text":"impl RefUnwindSafe for AddNotification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::AddNotification"]},{"text":"impl RefUnwindSafe for add_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::add_notification"]},{"text":"impl RefUnwindSafe for Notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::Notification"]},{"text":"impl RefUnwindSafe for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::NotificationResp"]},{"text":"impl RefUnwindSafe for get_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::get_notification"]},{"text":"impl RefUnwindSafe for MarkReadReq","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::MarkReadReq"]},{"text":"impl RefUnwindSafe for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::NotificationResp"]},{"text":"impl RefUnwindSafe for mark_read","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::mark_read"]},{"text":"impl RefUnwindSafe for Notifications","synthetic":true,"types":["mcaptcha::api::v1::notifications::routes::Notifications"]},{"text":"impl RefUnwindSafe for GetConfigPayload","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::GetConfigPayload"]},{"text":"impl RefUnwindSafe for get_config","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::get_config"]},{"text":"impl RefUnwindSafe for ValidationToken","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::ValidationToken"]},{"text":"impl RefUnwindSafe for verify_pow","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::verify_pow"]},{"text":"impl RefUnwindSafe for CaptchaValidateResp","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::CaptchaValidateResp"]},{"text":"impl RefUnwindSafe for validate_captcha_token","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::validate_captcha_token"]},{"text":"impl RefUnwindSafe for PoW","synthetic":true,"types":["mcaptcha::api::v1::pow::routes::PoW"]},{"text":"impl RefUnwindSafe for Routes","synthetic":true,"types":["mcaptcha::api::v1::routes::Routes"]},{"text":"impl !RefUnwindSafe for SystemGroup","synthetic":true,"types":["mcaptcha::data::SystemGroup"]},{"text":"impl !RefUnwindSafe for Data","synthetic":true,"types":["mcaptcha::data::Data"]},{"text":"impl RefUnwindSafe for Date","synthetic":true,"types":["mcaptcha::date::Date"]},{"text":"impl RefUnwindSafe for Docs","synthetic":true,"types":["mcaptcha::docs::routes::Docs"]},{"text":"impl RefUnwindSafe for Asset","synthetic":true,"types":["mcaptcha::docs::Asset"]},{"text":"impl RefUnwindSafe for dist","synthetic":true,"types":["mcaptcha::docs::dist"]},{"text":"impl RefUnwindSafe for spec","synthetic":true,"types":["mcaptcha::docs::spec"]},{"text":"impl RefUnwindSafe for index","synthetic":true,"types":["mcaptcha::docs::index"]},{"text":"impl<'a> RefUnwindSafe for IndexPage<'a>","synthetic":true,"types":["mcaptcha::email::verification::IndexPage"]},{"text":"impl !RefUnwindSafe for SmtpErrorWrapper","synthetic":true,"types":["mcaptcha::errors::SmtpErrorWrapper"]},{"text":"impl !RefUnwindSafe for ServiceError","synthetic":true,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl RefUnwindSafe for ErrorToResponse","synthetic":true,"types":["mcaptcha::errors::ErrorToResponse"]},{"text":"impl !RefUnwindSafe for PageError","synthetic":true,"types":["mcaptcha::errors::PageError"]},{"text":"impl RefUnwindSafe for CheckLogin","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLogin"]},{"text":"impl<S> RefUnwindSafe for CheckLoginMiddleware<S> where
S: RefUnwindSafe, ","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLoginMiddleware"]},{"text":"impl RefUnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::login::IndexPage"]},{"text":"impl RefUnwindSafe for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::login::INDEX"]},{"text":"impl RefUnwindSafe for login","synthetic":true,"types":["mcaptcha::pages::auth::login::login"]},{"text":"impl RefUnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::register::IndexPage"]},{"text":"impl RefUnwindSafe for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::register::INDEX"]},{"text":"impl RefUnwindSafe for join","synthetic":true,"types":["mcaptcha::pages::auth::register::join"]},{"text":"impl<'a, K, V> RefUnwindSafe for SudoPage<'a, K, V> where
K: RefUnwindSafe,
V: RefUnwindSafe, ","synthetic":true,"types":["mcaptcha::pages::auth::sudo::SudoPage"]},{"text":"impl RefUnwindSafe for Auth","synthetic":true,"types":["mcaptcha::pages::auth::routes::Auth"]},{"text":"impl RefUnwindSafe for Errors","synthetic":true,"types":["mcaptcha::pages::errors::routes::Errors"]},{"text":"impl<'a> RefUnwindSafe for ErrorPage<'a>","synthetic":true,"types":["mcaptcha::pages::errors::ErrorPage"]},{"text":"impl RefUnwindSafe for INTERNAL_SERVER_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::INTERNAL_SERVER_ERROR_BODY"]},{"text":"impl RefUnwindSafe for UNKNOWN_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::UNKNOWN_ERROR_BODY"]},{"text":"impl RefUnwindSafe for error","synthetic":true,"types":["mcaptcha::pages::errors::error"]},{"text":"impl RefUnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::notifications::IndexPage"]},{"text":"impl RefUnwindSafe for Notification","synthetic":true,"types":["mcaptcha::pages::panel::notifications::Notification"]},{"text":"impl RefUnwindSafe for notifications","synthetic":true,"types":["mcaptcha::pages::panel::notifications::notifications"]},{"text":"impl RefUnwindSafe for Settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::routes::Settings"]},{"text":"impl<'a> RefUnwindSafe for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::settings::IndexPage"]},{"text":"impl RefUnwindSafe for settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::settings"]},{"text":"impl RefUnwindSafe for delete_account","synthetic":true,"types":["mcaptcha::pages::panel::settings::delete_account"]},{"text":"impl RefUnwindSafe for update_secret","synthetic":true,"types":["mcaptcha::pages::panel::settings::update_secret"]},{"text":"impl RefUnwindSafe for INDEX","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::INDEX"]},{"text":"impl<'a> RefUnwindSafe for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::IndexPage"]},{"text":"impl RefUnwindSafe for add_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::add_sitekey"]},{"text":"impl RefUnwindSafe for delete_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::delete::delete_sitekey"]},{"text":"impl RefUnwindSafe for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::McaptchaConfig"]},{"text":"impl RefUnwindSafe for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::Level"]},{"text":"impl RefUnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::IndexPage"]},{"text":"impl RefUnwindSafe for edit_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::edit_sitekey"]},{"text":"impl RefUnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::IndexPage"]},{"text":"impl RefUnwindSafe for list_sitekeys","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::list_sitekeys"]},{"text":"impl RefUnwindSafe for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::McaptchaConfig"]},{"text":"impl RefUnwindSafe for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::Level"]},{"text":"impl RefUnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::IndexPage"]},{"text":"impl RefUnwindSafe for view_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::view_sitekey"]},{"text":"impl RefUnwindSafe for Sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::routes::Sitekey"]},{"text":"impl RefUnwindSafe for Panel","synthetic":true,"types":["mcaptcha::pages::panel::routes::Panel"]},{"text":"impl RefUnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::IndexPage"]},{"text":"impl RefUnwindSafe for panel","synthetic":true,"types":["mcaptcha::pages::panel::panel"]},{"text":"impl RefUnwindSafe for Routes","synthetic":true,"types":["mcaptcha::pages::routes::Routes"]},{"text":"impl RefUnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::sitemap::IndexPage"]},{"text":"impl RefUnwindSafe for INDEX","synthetic":true,"types":["mcaptcha::pages::sitemap::INDEX"]},{"text":"impl RefUnwindSafe for sitemap","synthetic":true,"types":["mcaptcha::pages::sitemap::sitemap"]},{"text":"impl RefUnwindSafe for Server","synthetic":true,"types":["mcaptcha::settings::Server"]},{"text":"impl RefUnwindSafe for Captcha","synthetic":true,"types":["mcaptcha::settings::Captcha"]},{"text":"impl RefUnwindSafe for Smtp","synthetic":true,"types":["mcaptcha::settings::Smtp"]},{"text":"impl RefUnwindSafe for DatabaseBuilder","synthetic":true,"types":["mcaptcha::settings::DatabaseBuilder"]},{"text":"impl RefUnwindSafe for Database","synthetic":true,"types":["mcaptcha::settings::Database"]},{"text":"impl RefUnwindSafe for Redis","synthetic":true,"types":["mcaptcha::settings::Redis"]},{"text":"impl RefUnwindSafe for Settings","synthetic":true,"types":["mcaptcha::settings::Settings"]},{"text":"impl RefUnwindSafe for FileMap","synthetic":true,"types":["mcaptcha::static_assets::filemap::FileMap"]},{"text":"impl RefUnwindSafe for KEY","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::KEY"]},{"text":"impl RefUnwindSafe for GITHUB","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::GITHUB"]},{"text":"impl RefUnwindSafe for HOME","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HOME"]},{"text":"impl RefUnwindSafe for SETTINGS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::SETTINGS_ICON"]},{"text":"impl RefUnwindSafe for CREDIT_CARD","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::CREDIT_CARD"]},{"text":"impl RefUnwindSafe for HELP_CIRCLE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HELP_CIRCLE"]},{"text":"impl RefUnwindSafe for MESSAGE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MESSAGE"]},{"text":"impl RefUnwindSafe for DOCS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::DOCS_ICON"]},{"text":"impl RefUnwindSafe for MCAPTCHA_TRANS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MCAPTCHA_TRANS_ICON"]},{"text":"impl RefUnwindSafe for BAR_CHART","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::BAR_CHART"]},{"text":"impl RefUnwindSafe for Asset","synthetic":true,"types":["mcaptcha::static_assets::static_files::Asset"]},{"text":"impl RefUnwindSafe for static_files","synthetic":true,"types":["mcaptcha::static_assets::static_files::static_files"]},{"text":"impl RefUnwindSafe for Favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::Favicons"]},{"text":"impl RefUnwindSafe for favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::favicons"]},{"text":"impl RefUnwindSafe for StatsUnixTimestamp","synthetic":true,"types":["mcaptcha::stats::fetch::StatsUnixTimestamp"]},{"text":"impl RefUnwindSafe for Stats","synthetic":true,"types":["mcaptcha::stats::fetch::Stats"]},{"text":"impl RefUnwindSafe for StatsPayload","synthetic":true,"types":["mcaptcha::stats::fetch::StatsPayload"]},{"text":"impl RefUnwindSafe for Widget","synthetic":true,"types":["mcaptcha::widget::routes::Widget"]},{"text":"impl RefUnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::widget::IndexPage"]},{"text":"impl RefUnwindSafe for INDEX_PAGE","synthetic":true,"types":["mcaptcha::widget::INDEX_PAGE"]},{"text":"impl RefUnwindSafe for show_widget","synthetic":true,"types":["mcaptcha::widget::show_widget"]},{"text":"impl RefUnwindSafe for SETTINGS","synthetic":true,"types":["mcaptcha::SETTINGS"]},{"text":"impl RefUnwindSafe for FILES","synthetic":true,"types":["mcaptcha::FILES"]},{"text":"impl RefUnwindSafe for JS","synthetic":true,"types":["mcaptcha::JS"]},{"text":"impl RefUnwindSafe for CSS","synthetic":true,"types":["mcaptcha::CSS"]},{"text":"impl RefUnwindSafe for MOBILE_CSS","synthetic":true,"types":["mcaptcha::MOBILE_CSS"]},{"text":"impl RefUnwindSafe for VERIFICATIN_WIDGET_JS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_JS"]},{"text":"impl RefUnwindSafe for VERIFICATIN_WIDGET_CSS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_CSS"]},{"text":"impl RefUnwindSafe for SOURCE_FILES_OF_INSTANCE","synthetic":true,"types":["mcaptcha::SOURCE_FILES_OF_INSTANCE"]}];
-implementors["mcaptcha_browser"] = [{"text":"impl RefUnwindSafe for Work","synthetic":true,"types":["mcaptcha_browser::Work"]}];
implementors["tests_migrate"] = [{"text":"impl RefUnwindSafe for Server","synthetic":true,"types":["tests_migrate::settings::Server"]},{"text":"impl RefUnwindSafe for Captcha","synthetic":true,"types":["tests_migrate::settings::Captcha"]},{"text":"impl RefUnwindSafe for Smtp","synthetic":true,"types":["tests_migrate::settings::Smtp"]},{"text":"impl RefUnwindSafe for DatabaseBuilder","synthetic":true,"types":["tests_migrate::settings::DatabaseBuilder"]},{"text":"impl RefUnwindSafe for Database","synthetic":true,"types":["tests_migrate::settings::Database"]},{"text":"impl RefUnwindSafe for Redis","synthetic":true,"types":["tests_migrate::settings::Redis"]},{"text":"impl RefUnwindSafe for Settings","synthetic":true,"types":["tests_migrate::settings::Settings"]},{"text":"impl RefUnwindSafe for SETTINGS","synthetic":true,"types":["tests_migrate::SETTINGS"]}];
if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/core/panic/unwind_safe/trait.UnwindSafe.js b/implementors/core/panic/unwind_safe/trait.UnwindSafe.js
index 9c4ff281..61eb8578 100644
--- a/implementors/core/panic/unwind_safe/trait.UnwindSafe.js
+++ b/implementors/core/panic/unwind_safe/trait.UnwindSafe.js
@@ -1,5 +1,4 @@
(function() {var implementors = {};
implementors["mcaptcha"] = [{"text":"impl UnwindSafe for delete_account","synthetic":true,"types":["mcaptcha::api::v1::account::delete::delete_account"]},{"text":"impl UnwindSafe for Email","synthetic":true,"types":["mcaptcha::api::v1::account::email::Email"]},{"text":"impl UnwindSafe for email_exists","synthetic":true,"types":["mcaptcha::api::v1::account::email::email_exists"]},{"text":"impl UnwindSafe for set_email","synthetic":true,"types":["mcaptcha::api::v1::account::email::set_email"]},{"text":"impl UnwindSafe for ChangePasswordReqest","synthetic":true,"types":["mcaptcha::api::v1::account::password::ChangePasswordReqest"]},{"text":"impl UnwindSafe for UpdatePassword","synthetic":true,"types":["mcaptcha::api::v1::account::password::UpdatePassword"]},{"text":"impl UnwindSafe for update_user_password","synthetic":true,"types":["mcaptcha::api::v1::account::password::update_user_password"]},{"text":"impl UnwindSafe for Secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::Secret"]},{"text":"impl UnwindSafe for get_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::get_secret"]},{"text":"impl UnwindSafe for update_user_secret","synthetic":true,"types":["mcaptcha::api::v1::account::secret::update_user_secret"]},{"text":"impl UnwindSafe for username_exists","synthetic":true,"types":["mcaptcha::api::v1::account::username::username_exists"]},{"text":"impl UnwindSafe for Username","synthetic":true,"types":["mcaptcha::api::v1::account::username::Username"]},{"text":"impl UnwindSafe for set_username","synthetic":true,"types":["mcaptcha::api::v1::account::username::set_username"]},{"text":"impl UnwindSafe for Account","synthetic":true,"types":["mcaptcha::api::v1::account::routes::Account"]},{"text":"impl UnwindSafe for AccountCheckPayload","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckPayload"]},{"text":"impl UnwindSafe for AccountCheckResp","synthetic":true,"types":["mcaptcha::api::v1::account::AccountCheckResp"]},{"text":"impl UnwindSafe for Auth","synthetic":true,"types":["mcaptcha::api::v1::auth::routes::Auth"]},{"text":"impl UnwindSafe for Register","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Register"]},{"text":"impl UnwindSafe for Login","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Login"]},{"text":"impl UnwindSafe for Password","synthetic":true,"types":["mcaptcha::api::v1::auth::runners::Password"]},{"text":"impl UnwindSafe for register","synthetic":true,"types":["mcaptcha::api::v1::auth::register"]},{"text":"impl UnwindSafe for login","synthetic":true,"types":["mcaptcha::api::v1::auth::login"]},{"text":"impl UnwindSafe for signout","synthetic":true,"types":["mcaptcha::api::v1::auth::signout"]},{"text":"impl UnwindSafe for MCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::routes::MCaptcha"]},{"text":"impl UnwindSafe for MCaptchaID","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaID"]},{"text":"impl UnwindSafe for MCaptchaDetails","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaDetails"]},{"text":"impl UnwindSafe for update_token","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::update_token"]},{"text":"impl UnwindSafe for DeleteCaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::DeleteCaptcha"]},{"text":"impl UnwindSafe for delete_mcaptcha","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::delete_mcaptcha"]},{"text":"impl UnwindSafe for StatsPayload","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::StatsPayload"]},{"text":"impl UnwindSafe for get_stats","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::captcha::get_stats"]},{"text":"impl UnwindSafe for Duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::routes::Duration"]},{"text":"impl UnwindSafe for UpdateDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::UpdateDuration"]},{"text":"impl UnwindSafe for update_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::update_duration"]},{"text":"impl UnwindSafe for GetDurationResp","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDurationResp"]},{"text":"impl UnwindSafe for GetDuration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDuration"]},{"text":"impl UnwindSafe for get_duration","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::duration::get_duration"]},{"text":"impl UnwindSafe for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::routes::Levels"]},{"text":"impl UnwindSafe for AddLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::AddLevels"]},{"text":"impl UnwindSafe for add_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::add_levels"]},{"text":"impl UnwindSafe for UpdateLevels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::UpdateLevels"]},{"text":"impl UnwindSafe for update_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::update_levels"]},{"text":"impl UnwindSafe for get_levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::get_levels"]},{"text":"impl UnwindSafe for Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::Levels"]},{"text":"impl UnwindSafe for I32Levels","synthetic":true,"types":["mcaptcha::api::v1::mcaptcha::levels::I32Levels"]},{"text":"impl UnwindSafe for Meta","synthetic":true,"types":["mcaptcha::api::v1::meta::routes::Meta"]},{"text":"impl UnwindSafe for BuildDetails","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetails"]},{"text":"impl UnwindSafe for BuildDetailsBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilder"]},{"text":"impl UnwindSafe for BuildDetailsBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::BuildDetailsBuilderError"]},{"text":"impl UnwindSafe for build_details","synthetic":true,"types":["mcaptcha::api::v1::meta::build_details"]},{"text":"impl UnwindSafe for Health","synthetic":true,"types":["mcaptcha::api::v1::meta::Health"]},{"text":"impl UnwindSafe for HealthBuilder","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilder"]},{"text":"impl UnwindSafe for HealthBuilderError","synthetic":true,"types":["mcaptcha::api::v1::meta::HealthBuilderError"]},{"text":"impl UnwindSafe for health","synthetic":true,"types":["mcaptcha::api::v1::meta::health"]},{"text":"impl UnwindSafe for AddNotification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::AddNotification"]},{"text":"impl UnwindSafe for add_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::add::add_notification"]},{"text":"impl UnwindSafe for Notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::Notification"]},{"text":"impl UnwindSafe for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::NotificationResp"]},{"text":"impl UnwindSafe for get_notification","synthetic":true,"types":["mcaptcha::api::v1::notifications::get::get_notification"]},{"text":"impl UnwindSafe for MarkReadReq","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::MarkReadReq"]},{"text":"impl UnwindSafe for NotificationResp","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::NotificationResp"]},{"text":"impl UnwindSafe for mark_read","synthetic":true,"types":["mcaptcha::api::v1::notifications::mark_read::mark_read"]},{"text":"impl UnwindSafe for Notifications","synthetic":true,"types":["mcaptcha::api::v1::notifications::routes::Notifications"]},{"text":"impl UnwindSafe for GetConfigPayload","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::GetConfigPayload"]},{"text":"impl UnwindSafe for get_config","synthetic":true,"types":["mcaptcha::api::v1::pow::get_config::get_config"]},{"text":"impl UnwindSafe for ValidationToken","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::ValidationToken"]},{"text":"impl UnwindSafe for verify_pow","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_pow::verify_pow"]},{"text":"impl UnwindSafe for CaptchaValidateResp","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::CaptchaValidateResp"]},{"text":"impl UnwindSafe for validate_captcha_token","synthetic":true,"types":["mcaptcha::api::v1::pow::verify_token::validate_captcha_token"]},{"text":"impl UnwindSafe for PoW","synthetic":true,"types":["mcaptcha::api::v1::pow::routes::PoW"]},{"text":"impl UnwindSafe for Routes","synthetic":true,"types":["mcaptcha::api::v1::routes::Routes"]},{"text":"impl !UnwindSafe for SystemGroup","synthetic":true,"types":["mcaptcha::data::SystemGroup"]},{"text":"impl !UnwindSafe for Data","synthetic":true,"types":["mcaptcha::data::Data"]},{"text":"impl UnwindSafe for Date","synthetic":true,"types":["mcaptcha::date::Date"]},{"text":"impl UnwindSafe for Docs","synthetic":true,"types":["mcaptcha::docs::routes::Docs"]},{"text":"impl UnwindSafe for Asset","synthetic":true,"types":["mcaptcha::docs::Asset"]},{"text":"impl UnwindSafe for dist","synthetic":true,"types":["mcaptcha::docs::dist"]},{"text":"impl UnwindSafe for spec","synthetic":true,"types":["mcaptcha::docs::spec"]},{"text":"impl UnwindSafe for index","synthetic":true,"types":["mcaptcha::docs::index"]},{"text":"impl<'a> UnwindSafe for IndexPage<'a>","synthetic":true,"types":["mcaptcha::email::verification::IndexPage"]},{"text":"impl !UnwindSafe for SmtpErrorWrapper","synthetic":true,"types":["mcaptcha::errors::SmtpErrorWrapper"]},{"text":"impl !UnwindSafe for ServiceError","synthetic":true,"types":["mcaptcha::errors::ServiceError"]},{"text":"impl UnwindSafe for ErrorToResponse","synthetic":true,"types":["mcaptcha::errors::ErrorToResponse"]},{"text":"impl !UnwindSafe for PageError","synthetic":true,"types":["mcaptcha::errors::PageError"]},{"text":"impl UnwindSafe for CheckLogin","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLogin"]},{"text":"impl<S> UnwindSafe for CheckLoginMiddleware<S> where
S: UnwindSafe, ","synthetic":true,"types":["mcaptcha::middleware::auth::CheckLoginMiddleware"]},{"text":"impl UnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::login::IndexPage"]},{"text":"impl UnwindSafe for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::login::INDEX"]},{"text":"impl UnwindSafe for login","synthetic":true,"types":["mcaptcha::pages::auth::login::login"]},{"text":"impl UnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::auth::register::IndexPage"]},{"text":"impl UnwindSafe for INDEX","synthetic":true,"types":["mcaptcha::pages::auth::register::INDEX"]},{"text":"impl UnwindSafe for join","synthetic":true,"types":["mcaptcha::pages::auth::register::join"]},{"text":"impl<'a, K, V> UnwindSafe for SudoPage<'a, K, V> where
K: UnwindSafe,
V: UnwindSafe, ","synthetic":true,"types":["mcaptcha::pages::auth::sudo::SudoPage"]},{"text":"impl UnwindSafe for Auth","synthetic":true,"types":["mcaptcha::pages::auth::routes::Auth"]},{"text":"impl UnwindSafe for Errors","synthetic":true,"types":["mcaptcha::pages::errors::routes::Errors"]},{"text":"impl<'a> UnwindSafe for ErrorPage<'a>","synthetic":true,"types":["mcaptcha::pages::errors::ErrorPage"]},{"text":"impl UnwindSafe for INTERNAL_SERVER_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::INTERNAL_SERVER_ERROR_BODY"]},{"text":"impl UnwindSafe for UNKNOWN_ERROR_BODY","synthetic":true,"types":["mcaptcha::pages::errors::UNKNOWN_ERROR_BODY"]},{"text":"impl UnwindSafe for error","synthetic":true,"types":["mcaptcha::pages::errors::error"]},{"text":"impl UnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::notifications::IndexPage"]},{"text":"impl UnwindSafe for Notification","synthetic":true,"types":["mcaptcha::pages::panel::notifications::Notification"]},{"text":"impl UnwindSafe for notifications","synthetic":true,"types":["mcaptcha::pages::panel::notifications::notifications"]},{"text":"impl UnwindSafe for Settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::routes::Settings"]},{"text":"impl<'a> UnwindSafe for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::settings::IndexPage"]},{"text":"impl UnwindSafe for settings","synthetic":true,"types":["mcaptcha::pages::panel::settings::settings"]},{"text":"impl UnwindSafe for delete_account","synthetic":true,"types":["mcaptcha::pages::panel::settings::delete_account"]},{"text":"impl UnwindSafe for update_secret","synthetic":true,"types":["mcaptcha::pages::panel::settings::update_secret"]},{"text":"impl UnwindSafe for INDEX","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::INDEX"]},{"text":"impl<'a> UnwindSafe for IndexPage<'a>","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::IndexPage"]},{"text":"impl UnwindSafe for add_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::add::add_sitekey"]},{"text":"impl UnwindSafe for delete_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::delete::delete_sitekey"]},{"text":"impl UnwindSafe for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::McaptchaConfig"]},{"text":"impl UnwindSafe for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::Level"]},{"text":"impl UnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::IndexPage"]},{"text":"impl UnwindSafe for edit_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::edit::edit_sitekey"]},{"text":"impl UnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::IndexPage"]},{"text":"impl UnwindSafe for list_sitekeys","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::list::list_sitekeys"]},{"text":"impl UnwindSafe for McaptchaConfig","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::McaptchaConfig"]},{"text":"impl UnwindSafe for Level","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::Level"]},{"text":"impl UnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::IndexPage"]},{"text":"impl UnwindSafe for view_sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::view::view_sitekey"]},{"text":"impl UnwindSafe for Sitekey","synthetic":true,"types":["mcaptcha::pages::panel::sitekey::routes::Sitekey"]},{"text":"impl UnwindSafe for Panel","synthetic":true,"types":["mcaptcha::pages::panel::routes::Panel"]},{"text":"impl UnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::panel::IndexPage"]},{"text":"impl UnwindSafe for panel","synthetic":true,"types":["mcaptcha::pages::panel::panel"]},{"text":"impl UnwindSafe for Routes","synthetic":true,"types":["mcaptcha::pages::routes::Routes"]},{"text":"impl UnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::pages::sitemap::IndexPage"]},{"text":"impl UnwindSafe for INDEX","synthetic":true,"types":["mcaptcha::pages::sitemap::INDEX"]},{"text":"impl UnwindSafe for sitemap","synthetic":true,"types":["mcaptcha::pages::sitemap::sitemap"]},{"text":"impl UnwindSafe for Server","synthetic":true,"types":["mcaptcha::settings::Server"]},{"text":"impl UnwindSafe for Captcha","synthetic":true,"types":["mcaptcha::settings::Captcha"]},{"text":"impl UnwindSafe for Smtp","synthetic":true,"types":["mcaptcha::settings::Smtp"]},{"text":"impl UnwindSafe for DatabaseBuilder","synthetic":true,"types":["mcaptcha::settings::DatabaseBuilder"]},{"text":"impl UnwindSafe for Database","synthetic":true,"types":["mcaptcha::settings::Database"]},{"text":"impl UnwindSafe for Redis","synthetic":true,"types":["mcaptcha::settings::Redis"]},{"text":"impl UnwindSafe for Settings","synthetic":true,"types":["mcaptcha::settings::Settings"]},{"text":"impl UnwindSafe for FileMap","synthetic":true,"types":["mcaptcha::static_assets::filemap::FileMap"]},{"text":"impl UnwindSafe for KEY","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::KEY"]},{"text":"impl UnwindSafe for GITHUB","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::GITHUB"]},{"text":"impl UnwindSafe for HOME","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HOME"]},{"text":"impl UnwindSafe for SETTINGS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::SETTINGS_ICON"]},{"text":"impl UnwindSafe for CREDIT_CARD","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::CREDIT_CARD"]},{"text":"impl UnwindSafe for HELP_CIRCLE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::HELP_CIRCLE"]},{"text":"impl UnwindSafe for MESSAGE","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MESSAGE"]},{"text":"impl UnwindSafe for DOCS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::DOCS_ICON"]},{"text":"impl UnwindSafe for MCAPTCHA_TRANS_ICON","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::MCAPTCHA_TRANS_ICON"]},{"text":"impl UnwindSafe for BAR_CHART","synthetic":true,"types":["mcaptcha::static_assets::static_files::assets::BAR_CHART"]},{"text":"impl UnwindSafe for Asset","synthetic":true,"types":["mcaptcha::static_assets::static_files::Asset"]},{"text":"impl UnwindSafe for static_files","synthetic":true,"types":["mcaptcha::static_assets::static_files::static_files"]},{"text":"impl UnwindSafe for Favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::Favicons"]},{"text":"impl UnwindSafe for favicons","synthetic":true,"types":["mcaptcha::static_assets::static_files::favicons"]},{"text":"impl UnwindSafe for StatsUnixTimestamp","synthetic":true,"types":["mcaptcha::stats::fetch::StatsUnixTimestamp"]},{"text":"impl UnwindSafe for Stats","synthetic":true,"types":["mcaptcha::stats::fetch::Stats"]},{"text":"impl UnwindSafe for StatsPayload","synthetic":true,"types":["mcaptcha::stats::fetch::StatsPayload"]},{"text":"impl UnwindSafe for Widget","synthetic":true,"types":["mcaptcha::widget::routes::Widget"]},{"text":"impl UnwindSafe for IndexPage","synthetic":true,"types":["mcaptcha::widget::IndexPage"]},{"text":"impl UnwindSafe for INDEX_PAGE","synthetic":true,"types":["mcaptcha::widget::INDEX_PAGE"]},{"text":"impl UnwindSafe for show_widget","synthetic":true,"types":["mcaptcha::widget::show_widget"]},{"text":"impl UnwindSafe for SETTINGS","synthetic":true,"types":["mcaptcha::SETTINGS"]},{"text":"impl UnwindSafe for FILES","synthetic":true,"types":["mcaptcha::FILES"]},{"text":"impl UnwindSafe for JS","synthetic":true,"types":["mcaptcha::JS"]},{"text":"impl UnwindSafe for CSS","synthetic":true,"types":["mcaptcha::CSS"]},{"text":"impl UnwindSafe for MOBILE_CSS","synthetic":true,"types":["mcaptcha::MOBILE_CSS"]},{"text":"impl UnwindSafe for VERIFICATIN_WIDGET_JS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_JS"]},{"text":"impl UnwindSafe for VERIFICATIN_WIDGET_CSS","synthetic":true,"types":["mcaptcha::VERIFICATIN_WIDGET_CSS"]},{"text":"impl UnwindSafe for SOURCE_FILES_OF_INSTANCE","synthetic":true,"types":["mcaptcha::SOURCE_FILES_OF_INSTANCE"]}];
-implementors["mcaptcha_browser"] = [{"text":"impl UnwindSafe for Work","synthetic":true,"types":["mcaptcha_browser::Work"]}];
implementors["tests_migrate"] = [{"text":"impl UnwindSafe for Server","synthetic":true,"types":["tests_migrate::settings::Server"]},{"text":"impl UnwindSafe for Captcha","synthetic":true,"types":["tests_migrate::settings::Captcha"]},{"text":"impl UnwindSafe for Smtp","synthetic":true,"types":["tests_migrate::settings::Smtp"]},{"text":"impl UnwindSafe for DatabaseBuilder","synthetic":true,"types":["tests_migrate::settings::DatabaseBuilder"]},{"text":"impl UnwindSafe for Database","synthetic":true,"types":["tests_migrate::settings::Database"]},{"text":"impl UnwindSafe for Redis","synthetic":true,"types":["tests_migrate::settings::Redis"]},{"text":"impl UnwindSafe for Settings","synthetic":true,"types":["tests_migrate::settings::Settings"]},{"text":"impl UnwindSafe for SETTINGS","synthetic":true,"types":["tests_migrate::SETTINGS"]}];
if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/serde/de/trait.Deserialize.js b/implementors/serde/de/trait.Deserialize.js
index fd119c1f..2d3d4cbe 100644
--- a/implementors/serde/de/trait.Deserialize.js
+++ b/implementors/serde/de/trait.Deserialize.js
@@ -1,5 +1,4 @@
(function() {var implementors = {};
implementors["mcaptcha"] = [{"text":"impl<'de> Deserialize<'de> for Email","synthetic":false,"types":["mcaptcha::api::v1::account::email::Email"]},{"text":"impl<'de> Deserialize<'de> for ChangePasswordReqest","synthetic":false,"types":["mcaptcha::api::v1::account::password::ChangePasswordReqest"]},{"text":"impl<'de> Deserialize<'de> for Secret","synthetic":false,"types":["mcaptcha::api::v1::account::secret::Secret"]},{"text":"impl<'de> Deserialize<'de> for Username","synthetic":false,"types":["mcaptcha::api::v1::account::username::Username"]},{"text":"impl<'de> Deserialize<'de> for AccountCheckPayload","synthetic":false,"types":["mcaptcha::api::v1::account::AccountCheckPayload"]},{"text":"impl<'de> Deserialize<'de> for AccountCheckResp","synthetic":false,"types":["mcaptcha::api::v1::account::AccountCheckResp"]},{"text":"impl<'de> Deserialize<'de> for Register","synthetic":false,"types":["mcaptcha::api::v1::auth::runners::Register"]},{"text":"impl<'de> Deserialize<'de> for Login","synthetic":false,"types":["mcaptcha::api::v1::auth::runners::Login"]},{"text":"impl<'de> Deserialize<'de> for Password","synthetic":false,"types":["mcaptcha::api::v1::auth::runners::Password"]},{"text":"impl<'de> Deserialize<'de> for MCaptchaID","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaID"]},{"text":"impl<'de> Deserialize<'de> for MCaptchaDetails","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaDetails"]},{"text":"impl<'de> Deserialize<'de> for DeleteCaptcha","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::captcha::DeleteCaptcha"]},{"text":"impl<'de> Deserialize<'de> for StatsPayload","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::captcha::StatsPayload"]},{"text":"impl<'de> Deserialize<'de> for UpdateDuration","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::duration::UpdateDuration"]},{"text":"impl<'de> Deserialize<'de> for GetDurationResp","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDurationResp"]},{"text":"impl<'de> Deserialize<'de> for GetDuration","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDuration"]},{"text":"impl<'de> Deserialize<'de> for AddLevels","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::levels::AddLevels"]},{"text":"impl<'de> Deserialize<'de> for UpdateLevels","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::levels::UpdateLevels"]},{"text":"impl<'de> Deserialize<'de> for Levels","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::levels::Levels"]},{"text":"impl<'de> Deserialize<'de> for I32Levels","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::levels::I32Levels"]},{"text":"impl Deserialize<'static> for BuildDetails","synthetic":false,"types":["mcaptcha::api::v1::meta::BuildDetails"]},{"text":"impl<'de> Deserialize<'de> for Health","synthetic":false,"types":["mcaptcha::api::v1::meta::Health"]},{"text":"impl<'de> Deserialize<'de> for AddNotification","synthetic":false,"types":["mcaptcha::api::v1::notifications::add::AddNotification"]},{"text":"impl<'de> Deserialize<'de> for NotificationResp","synthetic":false,"types":["mcaptcha::api::v1::notifications::get::NotificationResp"]},{"text":"impl<'de> Deserialize<'de> for MarkReadReq","synthetic":false,"types":["mcaptcha::api::v1::notifications::mark_read::MarkReadReq"]},{"text":"impl<'de> Deserialize<'de> for NotificationResp","synthetic":false,"types":["mcaptcha::api::v1::notifications::mark_read::NotificationResp"]},{"text":"impl<'de> Deserialize<'de> for GetConfigPayload","synthetic":false,"types":["mcaptcha::api::v1::pow::get_config::GetConfigPayload"]},{"text":"impl<'de> Deserialize<'de> for ValidationToken","synthetic":false,"types":["mcaptcha::api::v1::pow::verify_pow::ValidationToken"]},{"text":"impl<'de> Deserialize<'de> for CaptchaValidateResp","synthetic":false,"types":["mcaptcha::api::v1::pow::verify_token::CaptchaValidateResp"]},{"text":"impl<'de> Deserialize<'de> for ErrorToResponse","synthetic":false,"types":["mcaptcha::errors::ErrorToResponse"]},{"text":"impl<'de> Deserialize<'de> for Server","synthetic":false,"types":["mcaptcha::settings::Server"]},{"text":"impl<'de> Deserialize<'de> for Captcha","synthetic":false,"types":["mcaptcha::settings::Captcha"]},{"text":"impl<'de> Deserialize<'de> for Smtp","synthetic":false,"types":["mcaptcha::settings::Smtp"]},{"text":"impl<'de> Deserialize<'de> for DatabaseBuilder","synthetic":false,"types":["mcaptcha::settings::DatabaseBuilder"]},{"text":"impl<'de> Deserialize<'de> for Database","synthetic":false,"types":["mcaptcha::settings::Database"]},{"text":"impl<'de> Deserialize<'de> for Redis","synthetic":false,"types":["mcaptcha::settings::Redis"]},{"text":"impl<'de> Deserialize<'de> for Settings","synthetic":false,"types":["mcaptcha::settings::Settings"]},{"text":"impl<'de> Deserialize<'de> for StatsUnixTimestamp","synthetic":false,"types":["mcaptcha::stats::fetch::StatsUnixTimestamp"]},{"text":"impl<'de> Deserialize<'de> for StatsPayload","synthetic":false,"types":["mcaptcha::stats::fetch::StatsPayload"]}];
-implementors["mcaptcha_browser"] = [{"text":"impl<'de> Deserialize<'de> for Work","synthetic":false,"types":["mcaptcha_browser::Work"]}];
implementors["tests_migrate"] = [{"text":"impl<'de> Deserialize<'de> for Server","synthetic":false,"types":["tests_migrate::settings::Server"]},{"text":"impl<'de> Deserialize<'de> for Captcha","synthetic":false,"types":["tests_migrate::settings::Captcha"]},{"text":"impl<'de> Deserialize<'de> for Smtp","synthetic":false,"types":["tests_migrate::settings::Smtp"]},{"text":"impl<'de> Deserialize<'de> for DatabaseBuilder","synthetic":false,"types":["tests_migrate::settings::DatabaseBuilder"]},{"text":"impl<'de> Deserialize<'de> for Database","synthetic":false,"types":["tests_migrate::settings::Database"]},{"text":"impl<'de> Deserialize<'de> for Redis","synthetic":false,"types":["tests_migrate::settings::Redis"]},{"text":"impl<'de> Deserialize<'de> for Settings","synthetic":false,"types":["tests_migrate::settings::Settings"]}];
if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/implementors/serde/ser/trait.Serialize.js b/implementors/serde/ser/trait.Serialize.js
index 835ab007..0511f962 100644
--- a/implementors/serde/ser/trait.Serialize.js
+++ b/implementors/serde/ser/trait.Serialize.js
@@ -1,4 +1,3 @@
(function() {var implementors = {};
implementors["mcaptcha"] = [{"text":"impl Serialize for Email","synthetic":false,"types":["mcaptcha::api::v1::account::email::Email"]},{"text":"impl Serialize for ChangePasswordReqest","synthetic":false,"types":["mcaptcha::api::v1::account::password::ChangePasswordReqest"]},{"text":"impl Serialize for Secret","synthetic":false,"types":["mcaptcha::api::v1::account::secret::Secret"]},{"text":"impl Serialize for Username","synthetic":false,"types":["mcaptcha::api::v1::account::username::Username"]},{"text":"impl Serialize for AccountCheckPayload","synthetic":false,"types":["mcaptcha::api::v1::account::AccountCheckPayload"]},{"text":"impl Serialize for AccountCheckResp","synthetic":false,"types":["mcaptcha::api::v1::account::AccountCheckResp"]},{"text":"impl Serialize for Register","synthetic":false,"types":["mcaptcha::api::v1::auth::runners::Register"]},{"text":"impl Serialize for Login","synthetic":false,"types":["mcaptcha::api::v1::auth::runners::Login"]},{"text":"impl Serialize for Password","synthetic":false,"types":["mcaptcha::api::v1::auth::runners::Password"]},{"text":"impl Serialize for MCaptchaID","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaID"]},{"text":"impl Serialize for MCaptchaDetails","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::captcha::MCaptchaDetails"]},{"text":"impl Serialize for DeleteCaptcha","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::captcha::DeleteCaptcha"]},{"text":"impl Serialize for StatsPayload","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::captcha::StatsPayload"]},{"text":"impl Serialize for UpdateDuration","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::duration::UpdateDuration"]},{"text":"impl Serialize for GetDurationResp","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDurationResp"]},{"text":"impl Serialize for GetDuration","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::duration::GetDuration"]},{"text":"impl Serialize for AddLevels","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::levels::AddLevels"]},{"text":"impl Serialize for UpdateLevels","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::levels::UpdateLevels"]},{"text":"impl Serialize for Levels","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::levels::Levels"]},{"text":"impl Serialize for I32Levels","synthetic":false,"types":["mcaptcha::api::v1::mcaptcha::levels::I32Levels"]},{"text":"impl Serialize for BuildDetails","synthetic":false,"types":["mcaptcha::api::v1::meta::BuildDetails"]},{"text":"impl Serialize for Health","synthetic":false,"types":["mcaptcha::api::v1::meta::Health"]},{"text":"impl Serialize for AddNotification","synthetic":false,"types":["mcaptcha::api::v1::notifications::add::AddNotification"]},{"text":"impl Serialize for NotificationResp","synthetic":false,"types":["mcaptcha::api::v1::notifications::get::NotificationResp"]},{"text":"impl Serialize for MarkReadReq","synthetic":false,"types":["mcaptcha::api::v1::notifications::mark_read::MarkReadReq"]},{"text":"impl Serialize for NotificationResp","synthetic":false,"types":["mcaptcha::api::v1::notifications::mark_read::NotificationResp"]},{"text":"impl Serialize for GetConfigPayload","synthetic":false,"types":["mcaptcha::api::v1::pow::get_config::GetConfigPayload"]},{"text":"impl Serialize for ValidationToken","synthetic":false,"types":["mcaptcha::api::v1::pow::verify_pow::ValidationToken"]},{"text":"impl Serialize for CaptchaValidateResp","synthetic":false,"types":["mcaptcha::api::v1::pow::verify_token::CaptchaValidateResp"]},{"text":"impl Serialize for ErrorToResponse","synthetic":false,"types":["mcaptcha::errors::ErrorToResponse"]},{"text":"impl Serialize for StatsUnixTimestamp","synthetic":false,"types":["mcaptcha::stats::fetch::StatsUnixTimestamp"]},{"text":"impl Serialize for StatsPayload","synthetic":false,"types":["mcaptcha::stats::fetch::StatsPayload"]}];
-implementors["mcaptcha_browser"] = [{"text":"impl Serialize for Work","synthetic":false,"types":["mcaptcha_browser::Work"]}];
if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file
diff --git a/mcaptcha/constant.GIT_COMMIT_HASH.html b/mcaptcha/constant.GIT_COMMIT_HASH.html
index 7d640db2..801f16bb 100644
--- a/mcaptcha/constant.GIT_COMMIT_HASH.html
+++ b/mcaptcha/constant.GIT_COMMIT_HASH.html
@@ -1,3 +1,3 @@
-
pub const GIT_COMMIT_HASH: &str = "41b99c101909a3f7f0bbd1928145279d46c34cf1";pub const GIT_COMMIT_HASH: &str = "ab77eed91cdffe2714a3c9fd6313d92c68f6863f";pub extern "C" fn __wasm_bindgen_generated_gen_pow(
arg0: <String as FromWasmAbi>::Abi,
arg1: <String as FromWasmAbi>::Abi,
arg2: <u32 as FromWasmAbi>::Abi
) -> <String as ReturnWasmAbi>::Abigenerate proof-of-work
- -fn main() {
- use mcaptcha_browser::*;
- use pow_sha256::*;
-
-
- // salt using which PoW should be computed
- const SALT: &str = "yrandomsaltisnotlongenoug";
- // one-time phrase over which PoW should be computed
- const PHRASE: &str = "ironmansucks";
- // and the difficulty factor
- const DIFFICULTY: u32 = 1000;
-
- // currently gen_pow() returns a JSON formated string to better communicate
- // with JavaScript. See [PoW<T>][pow_sha256::PoW] for schema
- let serialised_work = gen_pow(SALT.into(), PHRASE.into(), DIFFICULTY);
-
-
- let work: Work = serde_json::from_str(&serialised_work).unwrap();
-
- let work = PoWBuilder::default()
- .result(work.result)
- .nonce(work.nonce)
- .build()
- .unwrap();
-
- let config = ConfigBuilder::default().salt(SALT.into()).build().unwrap();
- assert!(config.is_valid_proof(&work, &PHRASE.to_string()));
- assert!(config.is_sufficient_difficulty(&work, DIFFICULTY));
-}pub fn gen_pow(salt: String, phrase: String, difficulty_factor: u32) -> Stringgenerate proof-of-work
- -fn main() {
- use mcaptcha_browser::*;
- use pow_sha256::*;
-
-
- // salt using which PoW should be computed
- const SALT: &str = "yrandomsaltisnotlongenoug";
- // one-time phrase over which PoW should be computed
- const PHRASE: &str = "ironmansucks";
- // and the difficulty factor
- const DIFFICULTY: u32 = 1000;
-
- // currently gen_pow() returns a JSON formated string to better communicate
- // with JavaScript. See [PoW<T>][pow_sha256::PoW] for schema
- let serialised_work = gen_pow(SALT.into(), PHRASE.into(), DIFFICULTY);
-
-
- let work: Work = serde_json::from_str(&serialised_work).unwrap();
-
- let work = PoWBuilder::default()
- .result(work.result)
- .nonce(work.nonce)
- .build()
- .unwrap();
-
- let config = ConfigBuilder::default().salt(SALT.into()).build().unwrap();
- assert!(config.is_valid_proof(&work, &PHRASE.to_string()));
- assert!(config.is_sufficient_difficulty(&work, DIFFICULTY));
-}mCaptcha is a proof of work based Denaial-of-Service attack protection system. -This is is a WASM library that you can embed in your frontend code to protect your -service.
-A commercial managed solution is in the works but I’d much rather prefer -folks host their own instances as it will make the more decentralized and free.
-mCaptcha workflow in the frontend is simple.
-generate proof-of-work
- - use mcaptcha_browser::*;
- use pow_sha256::*;
-
-
- // salt using which PoW should be computed
- const SALT: &str = "yrandomsaltisnotlongenoug";
- // one-time phrase over which PoW should be computed
- const PHRASE: &str = "ironmansucks";
- // and the difficulty factor
- const DIFFICULTY: u32 = 1000;
-
- // currently gen_pow() returns a JSON formated string to better communicate
- // with JavaScript. See [PoW<T>][pow_sha256::PoW] for schema
- let serialised_work = gen_pow(SALT.into(), PHRASE.into(), DIFFICULTY);
-
-
- let work: Work = serde_json::from_str(&serialised_work).unwrap();
-
- let work = PoWBuilder::default()
- .result(work.result)
- .nonce(work.nonce)
- .build()
- .unwrap();
-
- let config = ConfigBuilder::default().salt(SALT.into()).build().unwrap();
- assert!(config.is_valid_proof(&work, &PHRASE.to_string()));
- assert!(config.is_sufficient_difficulty(&work, DIFFICULTY));result: Stringnonce: u64Deserialize this value from the given Serde deserializer. Read more
-BuildDetails.","Error type for BuildDetailsBuilder","Health check return datatype","Builder for Health.","Error type for HealthBuilder","Uninitialized field","Uninitialized field","Custom validation error","Custom validation error","","","","","","","","","","","","","","","","","Builds a new BuildDetails.","Builds a new Health.","emmits build details of the bninary","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","checks all components of the system","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","route handler that adds a notification message","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","route handler that gets all unread notifications","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","route handler that marks a notification read","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","PoW Verification module","PoW success token module","","","","","","","","","","","","get PoW configuration for an mcaptcha key","Call this when MCaptcha is not in master.","","","","","","","","","","","","","","","","","","","remove scope for $name route","","","","","","","","","remove scope for $name route","","remove scope for $name route","","","validation token that clients receive as proof for …","","","","","","","","","","","","","","","","","","","","","","","route handler that verifies PoW and issues a solution token","","","","","","","","","","","","","","","","","","","","","","","","","","route hander that validates a PoW solution token","","","","","","","","","","","","","","","","","","","","","","App data","","Mailer data type AsyncSmtpTransport","","Represents mCaptcha cache and master system. When Redis is …","","","","","","mCaptcha system: Redis cache, etc.","credential management configuration","databse pool","","","","","","","","","","email client","","create new instance of app data","","","","","","","","","","","","","","","","","","","","","","","","","print date","","","","","print relative time from date","","","","","","","Demo password","Demo username","","register demo user runner","","","","","","","","","","","","","","","","","","","Get an embedded file and its metadata.","","","","","","","Iterates over the file paths in the folder.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Email operations: verification, notification, etc","","","","","","","","","","","","","","","","","","","","","when the value passed contains blacklisted words see …","","","email is already taken","","","","","","","","","","","when the value passed contains profainity","","","","","when the a token name is already taken token not found","Unable to send email","when the value passed contains characters not present in …","","when the a username is already taken","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","notifications","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","route handler that renders individual views for sitekeys","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","utility function to get a list of all sitekeys that a user …","","","render a list of all sitekeys that a user has","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","route handler that renders individual views for sitekeys","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get an embedded file and its metadata.","","Get an embedded file and its metadata.","","","","","","","","Iterates over the file paths in the folder.","Iterates over the file paths in the folder.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","featch PoWConfig confirms","","","","featch PoWConfig fetches","featch PoWConfig confirms","featch PoWConfig solves","record PoWConfig confirms","record PoWConfig fetches","record PoWConfig solves","","","","","","","","","","","","","","","","","","","","","","","","","","","widget services","render a client side widget for CAPTCHA verification","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,19,0,11,12,13,14,15,16,17,18,11,12,13,14,15,16,17,18,20,19,20,0,19,0,20,19,0,11,12,13,14,15,16,17,18,0,0,0,11,12,13,14,15,16,17,18,0,0,11,12,13,14,15,16,17,18,11,12,13,14,15,16,17,18,20,0,0,0,19,19,0,19,0,19,19,0,0,11,12,13,14,15,16,17,18,11,12,13,14,15,16,17,18,11,12,13,14,15,16,17,18,11,12,13,14,15,16,17,18,0,0,0,0,0,0,0,0,0,0,0,0,21,22,21,22,21,22,21,22,0,21,22,0,22,21,22,21,22,21,22,0,0,0,21,22,0,21,22,21,22,21,22,21,22,0,21,21,22,23,23,0,23,23,23,0,0,23,23,23,23,0,0,24,25,26,24,25,26,24,24,24,24,0,24,24,25,26,24,25,26,25,26,24,0,0,24,24,25,26,24,25,26,24,25,26,24,25,26,0,0,27,28,29,27,28,29,28,28,27,28,28,28,27,27,28,29,27,28,29,27,28,28,29,28,0,28,27,28,29,27,28,29,27,28,29,0,0,27,28,29,0,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,0,31,32,33,31,32,33,31,31,31,31,31,32,33,0,31,32,33,32,33,31,31,0,31,31,32,33,31,32,33,31,32,33,0,31,32,33,0,34,35,36,34,35,36,35,35,35,35,34,35,36,34,35,36,34,36,0,35,0,0,35,34,35,36,34,35,36,34,35,36,35,0,34,35,36,0,37,38,39,37,38,39,37,38,39,37,38,39,0,0,37,38,39,0,0,0,0,37,38,39,37,38,39,37,38,39,37,38,39,0,40,40,40,40,40,40,40,40,40,40,40,40,0,0,0,41,42,43,41,42,43,41,42,43,41,42,43,41,41,42,43,41,41,42,43,41,42,43,41,42,43,42,0,41,42,43,0,41,42,43,41,42,43,41,42,43,41,42,43,41,42,43,41,41,42,43,0,0,0,0,0,0,0,0,0,0,44,45,46,47,48,49,50,44,45,46,47,48,49,50,44,45,47,49,44,45,47,49,0,44,45,47,49,44,45,47,49,44,45,46,47,48,49,50,0,44,45,46,47,48,49,50,45,47,49,44,45,47,46,48,50,0,44,45,47,49,0,44,45,47,49,44,45,46,47,48,49,50,44,45,46,47,48,49,50,44,45,46,47,48,49,50,0,0,44,45,46,47,48,49,50,0,51,51,51,51,51,51,51,51,51,51,51,51,0,0,0,52,53,54,55,56,52,53,54,55,56,52,54,55,52,54,52,53,54,55,56,0,52,53,54,55,56,52,53,56,0,52,54,55,0,55,52,53,54,55,56,52,53,54,55,56,52,53,54,55,56,0,52,53,54,55,56,0,57,57,57,57,57,57,57,57,57,57,57,0,0,0,0,0,58,59,60,61,62,63,64,58,59,60,61,62,63,64,63,64,63,64,58,60,58,60,63,64,64,58,60,63,64,58,59,60,61,62,63,64,0,0,58,59,60,61,62,63,64,60,58,60,63,59,61,62,0,58,60,63,64,0,63,64,58,59,60,61,62,63,64,58,59,60,61,62,63,64,58,59,60,61,62,63,64,0,64,58,59,60,61,62,63,64,0,65,65,65,65,65,65,65,65,65,65,65,65,0,0,0,0,0,0,66,67,66,67,68,69,66,70,71,72,67,73,68,69,66,70,71,72,67,73,69,72,0,68,69,71,72,68,69,71,72,72,71,72,69,72,68,71,68,66,66,71,67,67,68,69,66,66,66,70,71,72,67,67,67,73,69,68,69,0,68,69,66,70,71,72,67,73,71,72,71,72,70,73,0,68,71,0,68,69,71,72,66,67,68,69,66,70,71,72,67,73,68,69,66,70,71,72,67,73,68,69,66,70,71,72,67,73,69,68,69,68,69,66,70,71,72,67,73,74,75,76,77,0,78,78,78,78,78,78,78,78,78,78,78,0,0,0,0,0,0,0,79,80,79,80,79,79,80,79,79,80,79,80,79,79,79,80,79,80,79,80,79,80,0,0,81,82,83,81,82,83,82,81,82,82,83,0,81,82,81,82,81,82,83,81,82,81,82,81,82,83,0,82,81,82,83,81,82,83,81,82,83,81,82,83,0,0,0,84,85,86,84,85,86,84,85,84,85,86,85,84,85,84,85,86,0,85,85,85,86,84,85,84,85,86,84,85,86,84,85,86,84,85,86,0,87,87,87,87,87,87,87,87,87,87,87,87,0,0,0,0,0,0,88,89,88,89,88,88,88,88,88,89,0,0,88,89,88,89,88,88,88,89,88,89,88,89,88,89,0,90,90,90,90,90,90,90,0,90,90,90,90,90,90,90,90,90,0,91,92,91,92,91,91,91,91,91,92,91,92,92,91,91,91,91,92,91,92,91,92,0,91,92,0,93,94,93,94,93,93,93,93,93,94,93,94,94,93,93,93,94,93,94,93,94,93,0,93,94,0,0,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,0,96,0,96,0,96,96,20,96,20,20,20,20,0,0,96,20,20,20,96,96,20,20,96,20,96,96,96,96,20,96,20,96,20,96,96,96,20,97,98,0,0,0,0,0,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,0,0,0,0,0,0,0,0,100,101,102,103,100,101,102,103,0,100,101,102,103,100,100,0,0,100,101,102,103,100,100,101,102,103,0,0,0,100,101,102,103,100,101,102,103,100,101,102,103,100,101,102,103,0,104,104,104,104,104,104,104,104,104,104,104,104,0,0,0,105,105,105,105,105,105,105,105,105,105,105,105,105,0,105,105,106,107,107,107,107,107,0,107,108,107,107,0,0,107,107,107,107,0,108,0,0,107,107,107,107,107,107,106,107,109,108,106,107,109,108,109,106,107,108,109,107,108,106,106,107,107,108,108,106,107,107,107,107,107,107,107,107,107,109,108,108,108,106,107,109,108,107,108,109,106,107,108,107,108,106,107,108,106,107,109,108,106,107,109,108,106,107,109,108,106,107,109,108,110,111,112,0,0,0,113,114,113,114,114,113,114,113,114,114,113,114,114,113,114,113,114,113,114,113,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,115,116,115,117,116,115,117,116,116,116,115,116,115,117,115,116,115,117,0,117,116,116,116,116,115,117,116,115,117,116,115,117,116,115,117,0,0,0,118,119,118,120,119,118,120,119,119,119,118,119,118,120,118,119,118,120,0,120,119,119,119,119,118,120,119,118,120,119,118,120,119,118,120,0,121,121,121,121,121,121,121,121,121,121,121,121,0,0,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,0,0,0,0,0,123,124,125,123,124,126,125,123,124,126,125,125,123,124,0,125,123,124,126,123,124,125,123,124,126,125,125,126,125,125,0,0,125,125,125,123,124,126,125,123,124,126,125,123,124,126,125,123,124,126,0,127,127,127,127,127,127,127,127,127,127,127,0,0,128,129,128,129,128,128,128,129,128,129,128,0,0,129,128,128,0,0,0,0,128,128,128,129,128,129,128,129,128,129,0,0,0,130,131,132,130,131,132,130,130,131,132,130,130,130,131,132,130,131,130,131,0,130,130,132,131,131,130,131,132,130,131,132,130,131,132,130,131,132,0,133,133,133,133,133,133,133,133,133,133,133,133,133,133,0,0,134,135,136,137,134,135,136,137,134,134,0,134,134,135,136,137,134,135,136,137,135,136,137,134,134,0,134,0,0,134,134,135,136,137,134,135,136,137,134,135,136,137,0,134,134,135,136,137,0,138,138,138,138,138,138,138,138,138,138,138,138,138,0,0,0,0,0,0,0,0,0,0,139,0,139,140,141,139,140,141,140,140,140,139,140,140,140,139,140,141,139,139,140,141,140,141,140,140,140,139,140,141,139,140,141,139,140,141,139,140,141,142,142,0,142,142,142,142,142,142,142,0,0,0,0,143,144,145,146,143,144,145,146,143,144,145,143,144,145,143,144,143,145,0,143,144,145,146,143,144,145,146,145,145,143,145,145,146,145,145,143,144,145,143,144,145,146,143,144,145,146,143,144,145,146,144,143,144,145,146,0,0,0,147,148,147,148,147,147,147,148,0,147,148,0,147,148,147,147,147,147,147,148,147,148,147,148,147,148,0,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149,0,0,0,0,150,151,152,153,150,151,152,153,150,151,152,150,151,152,150,151,150,152,150,151,152,153,150,151,152,153,152,152,150,152,152,153,152,152,152,150,151,152,150,151,152,153,150,151,152,153,150,151,152,153,0,151,150,151,152,153,0,0,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,0,0,155,156,155,157,156,155,157,156,156,156,155,156,156,155,157,155,156,155,157,157,156,156,0,156,156,155,157,156,155,157,156,155,157,156,156,155,157,0,0,0,0,0,0,0,0,19,19,158,159,160,161,162,163,19,158,159,160,161,162,163,19,0,158,159,160,161,162,163,19,158,159,160,161,162,163,19,19,158,19,19,158,159,160,161,162,163,19,158,161,158,159,160,161,162,163,19,158,159,160,161,162,163,19,160,159,158,161,158,159,160,161,162,163,19,158,161,19,160,161,162,163,158,160,161,19,158,19,160,159,19,0,0,19,19,158,159,160,161,162,163,19,158,159,160,161,162,163,19,158,159,160,161,162,163,19,158,159,160,161,162,163,19,160,161,162,163,158,160,161,158,159,160,161,162,163,19,0,0,0,0,164,164,164,164,164,164,164,164,164,164,164,0,0,0,165,166,167,168,165,166,167,168,0,165,166,167,168,165,165,167,167,0,0,165,166,167,168,165,165,167,167,166,168,0,165,166,167,168,165,166,167,168,165,166,167,168,165,166,167,168,0,0,0,0,0,0,0,0,0,0,0,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,1,2,3,4,5,6,7,8,9,10,0,0,0,0,0,169,170,171,169,170,171,169,170,171,169,170,171,169,170,169,170,169,171,169,170,171,169,170,171,169,169,170,171,171,170,0,169,171,169,170,169,170,171,169,170,171,169,170,171,169,170,171,169,169,170,171,0,0,0,0,0,0,0,0,0,0,172,173,172,174,173,172,174,173,173,172,173,172,174,172,173,172,174,173,174,173,173,0,0,0,173,173,172,174,173,172,174,173,172,174,173,172,174,0,175,175,175,175,175,175,175,175,175,175],"f":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,null,null,null,null,null,[[],["settings",3]],[[],["filemap",3]],[[]],[[]],[[]],[[]],[[]],[[],["string",3]],null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[["identityservice",3,["cookieidentitypolicy"]],["cookieidentitypolicy",3]]],[[],["jsonconfig",3]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[],["result",6]],null,null,null,null,null,null,null,null,null,null,null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,null,null,null,null,null,[[["serviceconfig",3]]],null,null,[[]],[[]],[[]],[[]],[[],["accountcheckpayload",3]],[[],["accountcheckresp",3]],[[]],[[]],null,[[],["result",4]],[[],["result",4]],null,null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],null,null,null,[[],["result",4]],[[],["result",4]],[[["serviceconfig",3]]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,[[]],[[]],[[]],[[]],null,[[]],[[]],[[["appservice",3]]],null,[[["serviceconfig",3]]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],[[["str",15],["appdata",6]]],null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["email",3]],[[]],[[],["result",4]],null,null,[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[]],[[]],[[["appservice",3]]],[[["appservice",3]]],[[],["result",4]],[[["serviceconfig",3]]],null,[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["changepasswordreqest",3]],[[]],null,null,[[],["result",4]],[[["formatter",3]],["result",6]],[[["changepasswordreqest",3]]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,[[["appservice",3]]],[[],["result",4]],[[["serviceconfig",3]]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[["str",15],["data",3],["updatepassword",3]]],null,[[]],[[]],[[]],null,[[]],[[]],null,null,[[]],null,[[]],[[],["account",3]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,null,[[]],null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["secret",3]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[["appservice",3]]],[[["appservice",3]]],null,[[],["result",4]],[[["serviceconfig",3]]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,[[]],[[]],[[]],null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["username",3]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[]],[[]],[[["appservice",3]]],[[["appservice",3]]],null,[[],["result",4]],[[["serviceconfig",3]]],null,[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,[[]],[[]],[[]],[[["accountcheckpayload",3],["appdata",6]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,[[["appservice",3]]],[[["appservice",3]]],[[["appservice",3]]],null,null,[[["serviceconfig",3]]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[]],null,null,[[],["auth",3]],null,[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["register",3]],[[],["login",3]],[[],["password",3]],[[]],[[]],[[]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[["login",3],["appdata",6]]],null,null,null,[[["register",3],["appdata",6]]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,[[]],[[]],[[]],null,null,[[["usize",15]],["string",3]],null,[[["serviceconfig",3]]],null,null,null,null,[[["u32",15],["str",15],["appdata",6],["identity",3]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["mcaptchaid",3]],[[],["mcaptchadetails",3]],[[],["deletecaptcha",3]],[[],["statspayload",3]],[[]],[[]],[[]],[[]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,null,null,[[["appservice",3]]],[[["appservice",3]]],[[["appservice",3]]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[["serviceconfig",3]]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,[[["str",15],["appdata",6]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[]],[[]],null,[[]],[[]],[[],["mcaptcha",3]],null,[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],null,null,[[]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[]],[[]],null,[[["appservice",3]]],[[["appservice",3]]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[["serviceconfig",3]]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,[[]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[]],null,[[]],[[],["duration",3]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["levels",3]],[[],["i32levels",3]],[[]],[[]],null,null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],null,null,null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[["str",15],["appdata",6]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,[[["appservice",3]]],[[["appservice",3]]],[[["appservice",3]]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[["serviceconfig",3]]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,[[]],[[]],[[]],null,[[]],[[],["levels",3]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],[["result",4,["builddetails","builddetailsbuildererror"]],["builddetailsbuildererror",4],["builddetails",3]]],[[],[["healthbuildererror",4],["result",4,["health","healthbuildererror"]],["health",3]]],null,[[],["builddetails",3]],[[],["builddetailsbuilder",3]],[[],["health",3]],[[],["healthbuilder",3]],[[]],[[]],[[]],[[]],[[["bool",15]]],null,null,[[]],[[]],[[],["result",4]],[[],["result",4]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[["string",3]]],[[["uninitializedfielderror",3]]],[[]],[[]],[[]],[[]],[[]],[[["string",3]]],[[["uninitializedfielderror",3]]],[[]],[[["str",15]]],null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[["option",4]],["bool",15]],[[["option",4,["bool"]],["bool",15]]],null,null,[[["appservice",3]]],[[["appservice",3]]],null,[[],["result",4]],[[],["result",4]],[[["serviceconfig",3]]],[[]],[[]],[[]],[[]],[[],["string",3]],[[],["string",3]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[["str",15]]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,null,[[]],[[]],null,[[]],null,[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,null,null,[[["serviceconfig",3]]],null,null,[[]],[[]],[[]],[[]],[[],["result",4]],[[]],[[]],null,[[]],[[]],null,[[["appservice",3]]],[[],["result",4]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[]],[[]],[[["notification",3]]],[[]],null,null,null,null,null,[[]],[[]],[[]],null,null,null,null,null,null,[[["appservice",3]]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],[[["str",15],["appdata",6]]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[]],[[]],[[]],null,null,null,[[]],[[]],[[]],null,null,null,null,[[["appservice",3]]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],null,null,[[]],[[]],[[]],null,[[]],null,[[],["notifications",3]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,[[["serviceconfig",3]]],null,null,null,[[]],[[]],[[]],[[]],[[],["getconfigpayload",3]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],[[]],[[]],null,[[["str",15],["appdata",6]]],[[]],[[]],null,[[["appservice",3]]],[[],["result",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],null,[[]],[[]],[[]],[[],["str",15]],null,[[]],[[]],null,null,[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["str",15]],null,[[],["str",15]],null,[[]],null,[[]],[[]],[[]],[[]],[[],["validationtoken",3]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[["appservice",3]]],[[],["result",4]],[[]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,[[]],[[]],null,[[]],[[]],[[]],[[]],[[],["captchavalidateresp",3]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[["appservice",3]]],[[],["result",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,[[]],[[]],null,null,null,null,[[]],[[]],null,[[]],[[]],null,null,null,[[],["routes",3]],null,null,[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,null,null,null,[[["addsite",3]]],[[]],[[]],[[]],[[]],null,null,null,null,null,[[]],[[]],[[],["config",3]],[[],[["option",4,["asyncsmtptransport"]],["asyncsmtptransport",3,["tokio1executor"]]]],[[["string",3]]],[[]],[[]],null,[[]],[[]],[[["addr",3],["addr",3],["mastertrait",8],["save",8]],[["mastertrait",8],["save",8],["system",3]]],[[["removecaptcha",3]]],[[["rename",3]]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[["verifycaptcharesult",3]]],[[["work",3]]],[[]],[[]],null,null,null,null,null,null,null,[[]],[[]],[[],["date",3]],[[]],[[],["string",3]],[[["formatter",3]],["result",6]],[[["offsetdatetime",3]],["string",3]],[[]],[[]],[[],["string",3]],null,[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,[[["appdata",6]]],[[["appdata",6]]],[[["appdata",6],["duration",3]]],null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[]],[[["str",15]],[["embeddedfile",3],["option",4,["embeddedfile"]]]],[[["str",15]],[["embeddedfile",3],["option",4,["embeddedfile"]]]],[[["str",15]],["httpresponse",3]],null,[[]],[[]],[[]],[[]],[[]],[[],["filenames",4]],[[["appservice",3]]],[[["appservice",3]]],[[["appservice",3]]],null,[[["serviceconfig",3]]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],[[]],null,null,[[]],[[]],[[]],null,[[]],[[]],null,[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,null,[[]],[[]],[[],["indexpage",3]],[[]],[[]],[[]],[[["str",15]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[["data",3],["str",15]]],null,[[]],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["bool",15]],[[["serviceerror",4]],["bool",15]],[[["pageerror",4]],["bool",15]],null,[[],["httpresponse",3]],[[],["httpresponse",3]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[["recverror",3]]],[[["smtperror",3]]],[[["credserror",4]],["serviceerror",4]],[[]],[[["mailboxerror",4]]],[[["validationerrors",3]],["serviceerror",4]],[[["parseerror",4]],["serviceerror",4]],[[["captchaerror",4]],["serviceerror",4]],[[["error",4]]],[[]],[[["error",4]]],[[["serviceerror",4]]],[[]],[[]],[[]],[[]],[[]],[[["serviceerror",4]],["bool",15]],[[["pageerror",4]],["bool",15]],[[],["result",4]],[[],[["option",4,["error"]],["error",8]]],[[],[["option",4,["error"]],["error",8]]],[[],[["option",4,["error"]],["error",8]]],[[],["statuscode",3]],[[],["statuscode",3]],[[],["string",3]],[[],["string",3]],[[],["string",3]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],[[]],null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[["servicerequest",3]]],[[]],[[]],[[]],[[]],[[]],[[]],[[["context",3]],[["result",4],["poll",4,["result"]]]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],null,null,null,null,null,[[["serviceconfig",3]]],null,null,null,null,[[["serviceconfig",3]]],null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["indexpage",3]],[[]],[[]],[[],["string",3]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["indexpage",3]],[[]],[[]],[[],["string",3]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[]],[[]],null,null,[[],["auth",3]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,[[]],[[]],[[],["sudopage",3]],[[]],null,[[]],[[]],[[["option",4,["vec"]],["str",15],["vec",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["errorpage",3]],[[]],[[],["string",3]],[[],["string",3]],null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[["str",15]]],[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],null,[[["serviceconfig",3]]],null,[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[]],null,[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],null,null,[[]],[[]],[[]],[[]],[[],["indexpage",3]],[[]],[[]],[[]],[[]],[[]],[[["mcaptchadetails",3],["vec",3,["mcaptchadetails"]]]],null,null,[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],null,[[["serviceconfig",3]]],null,null,null,[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[["notification",3]]],[[]],[[]],[[]],null,null,[[]],[[]],[[]],null,null,null,[[["vec",3,["notification"]],["notification",3]]],null,[[],["string",3]],null,[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[]],null,[[]],[[]],null,null,null,[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["indexpage",3]],[[]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[["appservice",3]]],[[["appservice",3]]],[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],null,null,[[["serviceconfig",3]]],null,[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,[[]],[[]],[[]],[[]],null,[[]],[[]],null,[[]],[[]],null,[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],null,null,null,null,null,[[["serviceconfig",3]]],null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["indexpage",3]],[[]],[[]],[[],["string",3]],null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[["appservice",3]]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["mcaptchaconfig",3]],[[],["level",3]],[[],["indexpage",3]],[[]],[[]],[[]],null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,[[["vec",3,["level"]],["string",3],["mcaptchaconfig",3],["level",3]]],[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,[[]],[[]],[[]],[[]],null,null,null,[[]],[[]],[[]],[[]],[[],["indexpage",3]],[[]],[[]],[[]],[[["appdata",6],["identity",3]]],[[]],[[]],null,[[["mcaptchadetails",3],["vec",3,["mcaptchadetails"]]]],[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],null,[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],null,null,[[]],[[]],null,null,[[]],[[]],[[]],null,[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["mcaptchaconfig",3]],[[],["level",3]],[[],["indexpage",3]],[[]],[[]],[[]],null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,[[["vec",3,["level"]],["string",3],["mcaptchaconfig",3],["stats",3],["level",3]]],[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],null,[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,[[]],[[]],[[]],[[]],null,null,null,null,[[]],[[]],null,null,[[]],[[]],null,[[]],[[],["routes",3]],null,null,null,null,null,[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["indexpage",3]],[[]],[[]],[[],["string",3]],null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],null,[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,[[]],[[]],[[]],[[["serviceconfig",3]]],null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[["config",3]]],[[],["server",3]],[[],["captcha",3]],[[],["smtp",3]],[[],["databasebuilder",3]],[[],["database",3]],[[],["redis",3]],[[],["settings",3]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],null,[[["url",3]]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,[[],["string",3]],null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,[[],[["result",4,["configerror"]],["configerror",4]]],null,null,null,null,null,null,null,null,null,null,null,null,null,[[["config",3]]],[[["databasebuilder",3],["config",3]]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[["serviceconfig",3]]],null,null,[[]],[[]],null,[[]],[[["str",15]],[["option",4,["str"]],["str",15]]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[]],[[["str",15]],[["embeddedfile",3],["option",4,["embeddedfile"]]]],[[["str",15]],[["embeddedfile",3],["option",4,["embeddedfile"]]]],[[["str",15]],[["embeddedfile",3],["option",4,["embeddedfile"]]]],[[["str",15]],[["embeddedfile",3],["option",4,["embeddedfile"]]]],[[["str",15]],["httpresponse",3]],[[["str",15]],["httpresponse",3]],[[]],[[]],[[]],[[]],[[],["filenames",4]],[[]],[[]],[[],["filenames",4]],[[["appservice",3]]],[[["appservice",3]]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],[[]],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["statsunixtimestamp",3]],[[],["stats",3]],[[],["statspayload",3]],[[]],[[]],[[]],null,null,null,null,[[],["result",4]],[[],["result",4]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[["stats",3]]],[[]],[[]],[[]],null,[[["pgpool",6],["str",15]]],null,[[],["result",4]],[[],["result",4]],null,null,[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],[["vec",3,["i64"]],["i64",15]]],[[]],[[]],[[]],[[["pgpool",6],["str",15]]],[[["pgpool",6],["str",15]]],[[["pgpool",6],["str",15]]],[[["pgpool",6],["str",15]]],[[["pgpool",6],["str",15]]],[[["pgpool",6],["str",15]]],null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["indexpage",3]],[[]],[[],["string",3]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[["appservice",3]]],[[],["renderresult",6]],[[["buffer",3]],[["rendererror",4],["result",4,["rendererror"]]]],null,[[["serviceconfig",3]]],null,[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]]],"p":[[3,"KEY"],[3,"GITHUB"],[3,"HOME"],[3,"SETTINGS_ICON"],[3,"CREDIT_CARD"],[3,"HELP_CIRCLE"],[3,"MESSAGE"],[3,"DOCS_ICON"],[3,"MCAPTCHA_TRANS_ICON"],[3,"BAR_CHART"],[3,"SETTINGS"],[3,"FILES"],[3,"JS"],[3,"CSS"],[3,"MOBILE_CSS"],[3,"VERIFICATIN_WIDGET_JS"],[3,"VERIFICATIN_WIDGET_CSS"],[3,"SOURCE_FILES_OF_INSTANCE"],[3,"Settings"],[3,"Data"],[3,"AccountCheckPayload"],[3,"AccountCheckResp"],[3,"delete_account"],[3,"Email"],[3,"email_exists"],[3,"set_email"],[3,"UpdatePassword"],[3,"ChangePasswordReqest"],[3,"update_user_password"],[3,"Account"],[3,"Secret"],[3,"get_secret"],[3,"update_user_secret"],[3,"username_exists"],[3,"Username"],[3,"set_username"],[3,"register"],[3,"login"],[3,"signout"],[3,"Auth"],[3,"Register"],[3,"Login"],[3,"Password"],[3,"MCaptchaID"],[3,"MCaptchaDetails"],[3,"update_token"],[3,"DeleteCaptcha"],[3,"delete_mcaptcha"],[3,"StatsPayload"],[3,"get_stats"],[3,"MCaptcha"],[3,"UpdateDuration"],[3,"update_duration"],[3,"GetDurationResp"],[3,"GetDuration"],[3,"get_duration"],[3,"Duration"],[3,"AddLevels"],[3,"add_levels"],[3,"UpdateLevels"],[3,"update_levels"],[3,"get_levels"],[3,"Levels"],[3,"I32Levels"],[3,"Levels"],[4,"BuildDetailsBuilderError"],[4,"HealthBuilderError"],[3,"BuildDetails"],[3,"BuildDetailsBuilder"],[3,"build_details"],[3,"Health"],[3,"HealthBuilder"],[3,"health"],[13,"UninitializedField"],[13,"ValidationError"],[13,"UninitializedField"],[13,"ValidationError"],[3,"Meta"],[3,"AddNotification"],[3,"add_notification"],[3,"Notification"],[3,"NotificationResp"],[3,"get_notification"],[3,"MarkReadReq"],[3,"NotificationResp"],[3,"mark_read"],[3,"Notifications"],[3,"GetConfigPayload"],[3,"get_config"],[3,"PoW"],[3,"ValidationToken"],[3,"verify_pow"],[3,"CaptchaValidateResp"],[3,"validate_captcha_token"],[3,"Routes"],[4,"SystemGroup"],[13,"Embedded"],[13,"Redis"],[3,"Date"],[3,"Asset"],[3,"dist"],[3,"spec"],[3,"index"],[3,"Docs"],[3,"IndexPage"],[3,"SmtpErrorWrapper"],[4,"ServiceError"],[4,"PageError"],[3,"ErrorToResponse"],[13,"ServiceError"],[13,"UnableToSendEmail"],[13,"CaptchaError"],[3,"CheckLogin"],[3,"CheckLoginMiddleware"],[3,"INDEX"],[3,"IndexPage"],[3,"login"],[3,"INDEX"],[3,"IndexPage"],[3,"join"],[3,"Auth"],[3,"SudoPage"],[3,"INTERNAL_SERVER_ERROR_BODY"],[3,"UNKNOWN_ERROR_BODY"],[3,"ErrorPage"],[3,"error"],[3,"Errors"],[3,"IndexPage"],[3,"panel"],[3,"Notification"],[3,"IndexPage"],[3,"notifications"],[3,"Panel"],[3,"IndexPage"],[3,"settings"],[3,"delete_account"],[3,"update_secret"],[3,"Settings"],[3,"INDEX"],[3,"IndexPage"],[3,"add_sitekey"],[3,"delete_sitekey"],[3,"McaptchaConfig"],[3,"Level"],[3,"IndexPage"],[3,"edit_sitekey"],[3,"IndexPage"],[3,"list_sitekeys"],[3,"Sitekey"],[3,"McaptchaConfig"],[3,"Level"],[3,"IndexPage"],[3,"view_sitekey"],[3,"Routes"],[3,"INDEX"],[3,"IndexPage"],[3,"sitemap"],[3,"Server"],[3,"Captcha"],[3,"Smtp"],[3,"DatabaseBuilder"],[3,"Database"],[3,"Redis"],[3,"FileMap"],[3,"Asset"],[3,"static_files"],[3,"Favicons"],[3,"favicons"],[3,"StatsUnixTimestamp"],[3,"Stats"],[3,"StatsPayload"],[3,"INDEX_PAGE"],[3,"IndexPage"],[3,"show_widget"],[3,"Widget"]]},\
-"mcaptcha_browser":{"doc":"mCaptcha is a proof of work based Denaial-of-Service …","t":[3,5,11,11,11,11,11,5,11,12,12,11,11,11,11],"n":["Work","__wasm_bindgen_generated_gen_pow","borrow","borrow_mut","deserialize","from","from","gen_pow","into","nonce","result","serialize","try_from","try_into","type_id"],"q":["mcaptcha_browser","","","","","","","","","","","","","",""],"d":["","generate proof-of-work","","","","","","generate proof-of-work","","","","","","",""],"i":[0,0,1,1,1,1,1,0,1,1,1,1,1,1,1],"f":[null,[[]],[[]],[[]],[[],["result",4]],[[]],[[["string",3],["pow",3,["string"]]]],[[["string",3],["u32",15]],["string",3]],[[]],null,null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]]],"p":[[3,"Work"]]},\
"tests_migrate":{"doc":"","t":[3,3,12,12,12,11,11,5,5,12,12,12,11,11,11,11,5,12,12,12,0,12,12,11,11,11,11,3,3,3,3,3,3,3,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,12,11,11,11,11,11,11,11,12,12,11,12,12,12,12,12,12,12,12,12,12,12,12,12,5,5,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,11,11,11,11,11,11,11],"n":["SETTINGS","Settings","__private_field","allow_demo","allow_registration","borrow","borrow_mut","build","cache_bust","commercial","database","debug","deref","from","initialize","into","main","pow","redis","server","settings","smtp","source_code","try_from","try_into","type_id","vzip","Captcha","Database","DatabaseBuilder","Redis","Server","Settings","Smtp","allow_demo","allow_registration","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","check_url","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","commercial","cookie_secret","database","debug","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","deserialize","domain","extract_database_url","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","gc","get_ip","hostname","into","into","into","into","into","into","into","ip","name","new","password","password","pool","pool","port","port","port","pow","proxy_has_tls","redis","reply","salt","server","set_database_url","set_from_database_url","smtp","source_code","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","url","url","url","url","url_prefix","username","username","vzip","vzip","vzip","vzip","vzip","vzip","vzip"],"q":["tests_migrate","","","","","","","","","","","","","","","","","","","","","","","","","","","tests_migrate::settings","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"d":["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,1,2,2,1,1,0,0,2,2,2,1,1,1,1,0,2,2,2,0,2,2,1,1,1,1,0,0,0,0,0,0,0,2,2,3,4,5,6,7,8,2,3,4,5,6,7,8,2,0,3,4,5,6,7,8,2,3,4,5,6,7,8,2,2,3,2,2,3,4,5,6,7,8,2,3,6,3,4,5,6,7,8,2,3,4,5,6,7,8,2,5,4,3,6,3,4,5,6,7,8,2,3,6,2,5,6,7,8,3,5,6,2,3,2,5,4,2,0,0,2,2,3,4,5,6,7,8,2,3,4,5,6,7,8,2,3,4,5,6,7,8,2,3,4,5,6,7,8,2,5,6,7,8,3,5,6,3,4,5,6,7,8,2],"f":[null,null,null,null,null,[[]],[[]],[[]],[[]],null,null,null,[[],["settings",3]],[[]],[[]],[[]],[[]],null,null,null,null,null,null,[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[]],null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[["config",3]]],[[],["server",3]],[[],["captcha",3]],[[],["smtp",3]],[[],["databasebuilder",3]],[[],["database",3]],[[],["redis",3]],[[],["settings",3]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,null,null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],null,[[["url",3]]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,[[],["string",3]],null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,null,[[],[["configerror",4],["result",4,["configerror"]]]],null,null,null,null,null,null,null,null,null,null,null,null,null,[[["config",3]]],[[["config",3],["databasebuilder",3]]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]]],"p":[[3,"SETTINGS"],[3,"Settings"],[3,"Server"],[3,"Captcha"],[3,"Smtp"],[3,"DatabaseBuilder"],[3,"Database"],[3,"Redis"]]}\
}');
if (window.initSearch) {window.initSearch(searchIndex)};
\ No newline at end of file
diff --git a/source-files.js b/source-files.js
index 5d5a2fad..59603eff 100644
--- a/source-files.js
+++ b/source-files.js
@@ -1,5 +1,4 @@
var N = null;var sourcesIndex = {};
sourcesIndex["mcaptcha"] = {"name":"","dirs":[{"name":"api","dirs":[{"name":"v1","dirs":[{"name":"account","files":["delete.rs","email.rs","mod.rs","password.rs","secret.rs","username.rs"]},{"name":"mcaptcha","files":["captcha.rs","duration.rs","levels.rs","mod.rs"]},{"name":"notifications","files":["add.rs","get.rs","mark_read.rs","mod.rs"]},{"name":"pow","files":["get_config.rs","mod.rs","verify_pow.rs","verify_token.rs"]}],"files":["auth.rs","meta.rs","mod.rs","routes.rs"]}],"files":["mod.rs"]},{"name":"email","files":["mod.rs","verification.rs"]},{"name":"middleware","files":["auth.rs","mod.rs"]},{"name":"pages","dirs":[{"name":"auth","files":["login.rs","mod.rs","register.rs","sudo.rs"]},{"name":"panel","dirs":[{"name":"sitekey","files":["add.rs","delete.rs","edit.rs","list.rs","mod.rs","view.rs"]}],"files":["mod.rs","notifications.rs","settings.rs"]}],"files":["errors.rs","mod.rs","routes.rs","sitemap.rs"]},{"name":"static_assets","files":["filemap.rs","mod.rs","static_files.rs"]},{"name":"stats","files":["fetch.rs","mod.rs","record.rs"]},{"name":"widget","files":["mod.rs"]}],"files":["data.rs","date.rs","demo.rs","docs.rs","errors.rs","main.rs","routes.rs","settings.rs"]};
-sourcesIndex["mcaptcha_browser"] = {"name":"","files":["lib.rs"]};
sourcesIndex["tests_migrate"] = {"name":"","files":["settings.rs","tests-migrate.rs"]};
createSourceSidebar();
diff --git a/src/mcaptcha_browser/lib.rs.html b/src/mcaptcha_browser/lib.rs.html
deleted file mode 100644
index ca4a2526..00000000
--- a/src/mcaptcha_browser/lib.rs.html
+++ /dev/null
@@ -1,306 +0,0 @@
-1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - 15 - 16 - 17 - 18 - 19 - 20 - 21 - 22 - 23 - 24 - 25 - 26 - 27 - 28 - 29 - 30 - 31 - 32 - 33 - 34 - 35 - 36 - 37 - 38 - 39 - 40 - 41 - 42 - 43 - 44 - 45 - 46 - 47 - 48 - 49 - 50 - 51 - 52 - 53 - 54 - 55 - 56 - 57 - 58 - 59 - 60 - 61 - 62 - 63 - 64 - 65 - 66 - 67 - 68 - 69 - 70 - 71 - 72 - 73 - 74 - 75 - 76 - 77 - 78 - 79 - 80 - 81 - 82 - 83 - 84 - 85 - 86 - 87 - 88 - 89 - 90 - 91 - 92 - 93 - 94 - 95 - 96 - 97 - 98 - 99 -100 -101 -102 -103 -104 -105 -106 -107 -108 -109 -110 -111 -112 -113 -114 -115 -116 -117 -118 -119 -120 -121 -122 -123 -124 -125 -126 -127 -128 -129 -130 -131 -132 -133 -134 -135 -136 -137 -138 -139 -140 -141 -142 -143 -144 -145 -146 -147 -148 -149 -150 -151 -
/*
- * mCaptcha is a PoW based DoS protection software.
- * This is the frontend web component of the mCaptcha system
- * Copyright © 2021 Aravinth Manivnanan <realaravinth@batsense.net>.
- *
- * Use of this source code is governed by Apache 2.0 or MIT license.
- * You shoud have received a copy of MIT and Apache 2.0 along with
- * this program. If not, see <https://spdx.org/licenses/MIT.html> for
- * MIT or <http://www.apache.org/licenses/LICENSE-2.0> for Apache.
- */
-//! mCaptcha is a proof of work based Denaial-of-Service attack protection system.
-//! This is is a WASM library that you can embed in your frontend code to protect your
-//! service.
-//!
-//! A commercial managed solution is in the works but I'd much rather prefer
-//! folks host their own instances as it will make the more decentralized and free.
-//!
-//! ## Workflow:
-//! mCaptcha workflow in the frontend is simple.
-//! 1. Call service to get a proof of work(PoW) configuration
-//! 2. Call into mCaptcha to get PoW
-//! 3. Send PoW to mCaptcha service
-//! 4. If proof is valid, the service will return a token to the client
-//! 5. Submit token to your backend along with your app data(if any)
-//! 6. In backend, validate client's token with mCaptcha service
-//!
-//! ## Example:
-//!
-//! generate proof-of-work
-//! ```rust
-//! use mcaptcha_browser::*;
-//! use pow_sha256::*;
-//!
-//!
-//! // salt using which PoW should be computed
-//! const SALT: &str = "yrandomsaltisnotlongenoug";
-//! // one-time phrase over which PoW should be computed
-//! const PHRASE: &str = "ironmansucks";
-//! // and the difficulty factor
-//! const DIFFICULTY: u32 = 1000;
-//!
-//! // currently gen_pow() returns a JSON formated string to better communicate
-//! // with JavaScript. See [PoW<T>][pow_sha256::PoW] for schema
-//! let serialised_work = gen_pow(SALT.into(), PHRASE.into(), DIFFICULTY);
-//!
-//!
-//! let work: Work = serde_json::from_str(&serialised_work).unwrap();
-//!
-//! let work = PoWBuilder::default()
-//! .result(work.result)
-//! .nonce(work.nonce)
-//! .build()
-//! .unwrap();
-//!
-//! let config = ConfigBuilder::default().salt(SALT.into()).build().unwrap();
-//! assert!(config.is_valid_proof(&work, &PHRASE.to_string()));
-//! assert!(config.is_sufficient_difficulty(&work, DIFFICULTY));
-//! ```
-
-use serde::{Deserialize, Serialize};
-use wasm_bindgen::prelude::*;
-
-// When the `wee_alloc` feature is enabled, use `wee_alloc` as the global
-// allocator.
-#[cfg(feature = "wee_alloc")]
-#[global_allocator]
-static ALLOC: wee_alloc::WeeAlloc = wee_alloc::WeeAlloc::INIT;
-
-use pow_sha256::{ConfigBuilder, PoW};
-
-#[derive(Deserialize, Serialize)]
-pub struct Work {
- pub result: String,
- pub nonce: u64,
-}
-
-impl From<PoW<String>> for Work {
- fn from(p: PoW<String>) -> Self {
- Work {
- result: p.result,
- nonce: p.nonce,
- }
- }
-}
-
-/// generate proof-of-work
-/// ```rust
-/// fn main() {
-/// use mcaptcha_browser::*;
-/// use pow_sha256::*;
-///
-///
-/// // salt using which PoW should be computed
-/// const SALT: &str = "yrandomsaltisnotlongenoug";
-/// // one-time phrase over which PoW should be computed
-/// const PHRASE: &str = "ironmansucks";
-/// // and the difficulty factor
-/// const DIFFICULTY: u32 = 1000;
-///
-/// // currently gen_pow() returns a JSON formated string to better communicate
-/// // with JavaScript. See [PoW<T>][pow_sha256::PoW] for schema
-/// let serialised_work = gen_pow(SALT.into(), PHRASE.into(), DIFFICULTY);
-///
-///
-/// let work: Work = serde_json::from_str(&serialised_work).unwrap();
-///
-/// let work = PoWBuilder::default()
-/// .result(work.result)
-/// .nonce(work.nonce)
-/// .build()
-/// .unwrap();
-///
-/// let config = ConfigBuilder::default().salt(SALT.into()).build().unwrap();
-/// assert!(config.is_valid_proof(&work, &PHRASE.to_string()));
-/// assert!(config.is_sufficient_difficulty(&work, DIFFICULTY));
-/// }
-/// ```
-#[wasm_bindgen]
-pub fn gen_pow(salt: String, phrase: String, difficulty_factor: u32) -> String {
- let config = ConfigBuilder::default().salt(salt).build().unwrap();
-
- let work = config.prove_work(&phrase, difficulty_factor).unwrap();
- let work: Work = work.into();
-
- serde_json::to_string(&work).unwrap()
-}
-
-#[cfg(test)]
-mod tests {
- use super::*;
- use pow_sha256::PoWBuilder;
-
- const SALT: &str = "yrandomsaltisnotlongenoug";
- const PHRASE: &str = "ironmansucks";
- const DIFFICULTY: u32 = 1000;
- #[test]
- fn it_works() {
- let serialised_work = gen_pow(SALT.into(), PHRASE.into(), DIFFICULTY);
- let work: Work = serde_json::from_str(&serialised_work).unwrap();
-
- let work = PoWBuilder::default()
- .result(work.result)
- .nonce(work.nonce)
- .build()
- .unwrap();
-
- let config = ConfigBuilder::default().salt(SALT.into()).build().unwrap();
- assert!(config.is_valid_proof(&work, &PHRASE.to_string()));
- assert!(config.is_sufficient_difficulty(&work, DIFFICULTY));
- }
-}
-