diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/css/admin-bar.min.css b/wp/wp-content/plugins/wp-mail-smtp/assets/css/admin-bar.min.css index ae0fd23d..892001d7 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/css/admin-bar.min.css +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/css/admin-bar.min.css @@ -1 +1 @@ -#wpadminbar .wp-mail-smtp-admin-bar-menu-notification-counter,#wpadminbar .wp-mail-smtp-admin-bar-menu-error{display:inline-block !important;vertical-align:top !important;box-sizing:border-box !important;margin:7px 0 0 2px !important;padding:0 5px !important;min-width:18px !important;height:18px !important;border-radius:9px !important;background-color:#d63638 !important;color:#fff !important;font-size:11px !important;line-height:1.6 !important;text-align:center !important}#wpadminbar .wp-mail-smtp-admin-bar-menu-notification-counter span,#wpadminbar .wp-mail-smtp-admin-bar-menu-error span{line-height:1 !important;font-size:11px !important}body.wp-admin #adminmenu #toplevel_page_wp-mail-smtp .wp-menu-image.svg{background-position-x:11px}body.wp-admin.folded #adminmenu #toplevel_page_wp-mail-smtp .wp-menu-image.svg{background-position-x:9px} \ No newline at end of file +#wpadminbar .wp-mail-smtp-admin-bar-menu-notification-counter,#wpadminbar .wp-mail-smtp-admin-bar-menu-error{display:inline-block !important;vertical-align:top !important;box-sizing:border-box !important;margin:7px 0 0 2px !important;padding:0 5px !important;min-width:18px !important;height:18px !important;border-radius:9px !important;background-color:#d63638 !important;color:#fff !important;font-size:11px !important;line-height:1.6 !important;text-align:center !important}#wpadminbar .wp-mail-smtp-admin-bar-menu-notification-counter span,#wpadminbar .wp-mail-smtp-admin-bar-menu-error span{line-height:1 !important;font-size:11px !important}body.wp-admin #adminmenu #toplevel_page_wp-mail-smtp .wp-menu-image.svg{background-position-x:10px;background-position-y:8px}@media screen and (max-width: 782px){body.wp-admin #adminmenu #toplevel_page_wp-mail-smtp .wp-menu-image.svg{background-position-x:9px}} \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/css/dashboard-widget.min.css b/wp/wp-content/plugins/wp-mail-smtp/assets/css/dashboard-widget.min.css index 6be96f87..e465b4c8 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/css/dashboard-widget.min.css +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/css/dashboard-widget.min.css @@ -1 +1 @@ -#dashboard-widgets .meta-box-sortables .postbox:last-child .wp-mail-smtp-dash-widget-settings-menu{top:auto;bottom:50px}@media(min-width: 800px){#dashboard-widgets .meta-box-sortables .postbox:last-child .wp-mail-smtp-dash-widget-settings-menu{bottom:40px}}#wp_mail_smtp_reports_widget_pro .inside,#wp_mail_smtp_reports_widget_lite .inside{margin:0;padding:0}.wp-mail-smtp-dash-widget button:focus{outline:none}.wp-mail-smtp-dash-widget-block{position:relative;padding:0 12px;margin-top:12px}.wp-mail-smtp-dash-widget-block h3{display:inline-block;line-height:2}.wp-mail-smtp-dash-widget-block p{margin-top:0;margin-bottom:0}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-block-container{position:relative}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-block{height:291px;border-bottom:1px solid #eee;padding:0 12px 12px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{display:flex;align-items:center;justify-content:space-between;margin-top:0;padding:13px;background-color:#fafafa}@media(max-width: 980px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{padding:13px 4px}}@media(max-width: 960px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{padding:13px}}@media(max-width: 856px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{padding:13px 2px}}@media(max-width: 799px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{padding:13px}}@media(max-width: 436px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{flex-direction:column;align-items:normal}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings>div{display:flex}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings select{width:100%;margin:0 0 10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-select-timespan{width:calc(100% - 38px)}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings a{vertical-align:middle}@media(max-width: 1150px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings a{display:none}}@media(min-width: 1500px)and (max-width: 1630px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings a{display:none}}@media(min-width: 1801px)and (max-width: 2080px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings a{display:none}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-select-email-type{margin-right:6px}@media(max-width: 830px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-select-email-type{margin-right:2px}}@media(max-width: 436px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-select-email-type{margin-right:0}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-container{display:inline-block;position:relative;vertical-align:top;margin-left:6px}@media(max-width: 830px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-container{margin-left:2px}}@media(max-width: 799px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-container{margin-left:6px}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button{background:#fafafa;color:#787c82;border-color:#787c82;padding:1px 6px 0;margin-bottom:0;line-height:1;display:flex;align-items:center;justify-content:center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:hover,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:active,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:focus{color:#2271b1;border-color:#2271b1}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:hover svg path,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:active svg path,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:focus svg path{fill:#2271b1}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button.open svg path{transform:rotate(90deg)}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button svg{display:inline-block;width:19px;height:19px}@media(max-width: 782px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button svg{padding:5px}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button svg path{fill:#787c82;transition:transform .2s;transform-origin:center center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu{display:none;position:absolute;background-color:#fff;width:160px;border-radius:3px;box-shadow:0px 5px 15px rgba(0,0,0,.15);padding:10px;z-index:9999;right:0;top:50px}@media(min-width: 800px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu{top:40px}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color{border-bottom:1px solid #eee}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style h4,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color h4{text-transform:uppercase !important;color:#3c434a !important;font-size:11px !important;font-weight:500 !important;line-height:13px !important;margin:0 0 10px !important}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style .wp-mail-smtp-dash-widget-settings-menu-item,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color .wp-mail-smtp-dash-widget-settings-menu-item{display:flex;align-items:center;color:#3c434a;font-size:13px;line-height:16px;margin:0 0 13px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style .wp-mail-smtp-dash-widget-settings-menu-item:last-child,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color .wp-mail-smtp-dash-widget-settings-menu-item:last-child{margin:0 0 10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style .wp-mail-smtp-dash-widget-settings-menu-item input[type=radio],.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color .wp-mail-smtp-dash-widget-settings-menu-item input[type=radio]{margin-right:5px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style .wp-mail-smtp-dash-widget-settings-menu-item label,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color .wp-mail-smtp-dash-widget-settings-menu-item label{vertical-align:top;margin-top:-3px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color{margin-top:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu-save{margin-top:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block{margin-top:0}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table{width:calc(100% + 24px);margin:0 -12px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell{padding:10px 12px;border-right:1px solid #eee;border-top:1px solid #eee;color:#3c434a;font-size:14px;width:50%;line-height:17px}@media(max-width: 436px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell{display:block;width:100%}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell--2:not(:first-child){border-right:none}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell--3{width:33.33%}@media(max-width: 436px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell--3{width:100%}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell--3:last-child{border-right:none}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell-container{display:flex;align-items:center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell-container img{width:16px;margin-right:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block .wp-mail-smtp-dash-widget-overlay{background-position-y:50%}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block{display:flex;padding:12px 7px 12px 12px;border-top:1px solid #eee;color:#787c82;font-size:13px;line-height:16px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block b{color:#3c434a}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .sep{display:inline-block;margin:0 3px;color:#ddd}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .sep-vertical{color:#ddd}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block p{margin:0}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-recommended-plugin{display:inline-block;width:calc(100% - 24px)}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-recommended-plugin span{display:inline-block}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-dismiss-recommended-plugin-block{display:inline-block;border:0;color:gray;opacity:.3;vertical-align:baseline;cursor:pointer;background:none;padding:0 2px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-dismiss-recommended-plugin-block:hover{opacity:1}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-dismiss-recommended-plugin-block .dashicons{font-size:16px;height:16px;width:16px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education{align-items:center;border-left:4px solid #d63638;border-top:1px solid #eee;display:flex;gap:10px;margin-top:0;padding:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-error-icon{display:flex;height:44px;width:40px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-error-icon img{height:35px;width:35px;margin:auto}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-content{padding-right:14px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-content p{color:#1d2327;font-size:14px;line-height:20px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-content p a{color:#2271b1;font-weight:500}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-content p strong{font-weight:500}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education .wp-mail-smtp-dash-widget-dismiss-email-alert-block{background:none;border:0;cursor:pointer;position:absolute;right:6px;top:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education .wp-mail-smtp-dash-widget-dismiss-email-alert-block .dashicons{color:#a0a5aa;font-size:16px;height:17px;width:16px}.wp-mail-smtp-dash-widget .wp-mail-smtp-error{text-align:center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-upgrade,.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-chart{position:absolute;left:0;top:0;height:100%;width:100%;overflow:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255,255,255,0);background:-moz-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0) 0%, white 100%);background:-webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, white));background:-webkit-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0) 0%, white 100%);background:-o-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0) 0%, white 100%);background:-ms-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0) 0%, white 100%);background:radial-gradient(ellipse at center, rgba(255, 255, 255, 0) 0%, white 100%)}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-upgrade .wp-mail-smtp-dash-widget-modal,.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-chart .wp-mail-smtp-dash-widget-modal{position:absolute;top:calc(50% - 2em);left:50%;transform:translate(-50%, -50%);padding:1.5em 2em 2em 2em;box-shadow:0 0 25px 10px rgba(0,0,0,.08);border-radius:3px;background-color:#fff;text-align:center;width:20em}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-upgrade .wp-mail-smtp-dash-widget-modal h2,.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-chart .wp-mail-smtp-dash-widget-modal h2{padding:0;margin-bottom:5px;font-size:18px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-upgrade .wp-mail-smtp-dash-widget-modal p,.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-chart .wp-mail-smtp-dash-widget-modal p{line-height:1.3}.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-email-stats{padding-top:16px;padding-bottom:16px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled{padding:21px 25px 30px;text-align:center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled .wp-mail-smtp-dash-widget-block-logo{width:75px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled h2{font-size:16px;line-height:20px;font-weight:500;padding:10px 0 0}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled p{font-size:14px;line-height:20px;margin:7px 0 19px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled a.button:first-of-type:not(:only-of-type){margin-right:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-overlay{width:100%;position:absolute;top:0;right:0;bottom:0;left:0;background:url(../images/wp-spinner.gif) no-repeat center calc(50% - 12px);background-color:#fff;z-index:10}.wp-mail-smtp-dash-widget i.wp-mail-smtp-dash-widget-loader{background-image:url(../images/wp-spinner.gif);background-repeat:no-repeat;background-position:center;background-size:cover}.wp-mail-smtp-dash-widget .hidden{display:none !important}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-block-container #wp-mail-smtp-dash-widget-chart{opacity:.35}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade{background:none;display:flex;align-items:center;justify-content:center}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade h2{font-size:20px;line-height:20px;font-weight:500;color:#3c434a;margin-bottom:15px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade p{font-size:14px;line-height:18px;color:#787c82;margin-bottom:15px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade p:last-child{margin-bottom:0}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade a.button.button-hero{font-weight:500;font-size:14px;line-height:20px;padding:9px 15px;min-height:40px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade .wp-mail-smtp-dash-widget-modal{position:relative;top:inherit;left:inherit;transform:none;width:24em;padding:2.3em;box-shadow:0 5px 25px rgba(0,0,0,.15);border-radius:6px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-dismiss-chart-upgrade{position:absolute;width:16px;height:17px;right:5px;top:5px;color:#a0a5aa;text-decoration:none}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-dismiss-chart-upgrade .dashicons{width:16px;height:17px;font-style:normal;font-weight:normal;font-size:16px;line-height:17px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-settings-menu input[type=radio]:checked::before{background-color:#a0a5aa}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-settings-menu *{cursor:not-allowed}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block{margin-top:0;padding-top:10px;padding-bottom:10px;border-top:1px solid #eee;font-size:13px;line-height:16px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block>div{padding:10px;border-radius:4px;background:#f0f6fc}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting{display:flex;align-items:center}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label{display:flex;margin:0 10px 0 0;color:#3c434a}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label input,#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label i{margin:0 10px 0 0}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label i{display:none;width:16px;height:16px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label b{font-weight:500}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting a{white-space:nowrap;margin-right:10px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting .dashicons-dismiss{margin-left:auto;width:16px;height:16px;font-size:16px;color:#a0a5aa;cursor:pointer}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting .dashicons-dismiss:hover{color:#2271b1}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-applied{display:flex}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-applied .wp-mail-smtp-dashicons-yes-alt-green{margin-right:10px;width:16px;height:16px;background-image:url("../images/dash-widget/yes-green.svg")}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-upgrade-footer{padding:12px;margin-top:0;border-top:1px solid #eee}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-upgrade-footer p{font-size:13px;line-height:16px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-upgrade-footer--hide{display:none} \ No newline at end of file +#dashboard-widgets .meta-box-sortables .postbox:last-child .wp-mail-smtp-dash-widget-settings-menu{top:auto;bottom:50px}@media(min-width: 800px){#dashboard-widgets .meta-box-sortables .postbox:last-child .wp-mail-smtp-dash-widget-settings-menu{bottom:40px}}#wp_mail_smtp_reports_widget_pro .inside,#wp_mail_smtp_reports_widget_lite .inside{margin:0;padding:0}.wp-mail-smtp-dash-widget button:focus{outline:none}.wp-mail-smtp-dash-widget-block{position:relative;padding:0 12px;margin-top:12px}.wp-mail-smtp-dash-widget-block h3{display:inline-block;line-height:2}.wp-mail-smtp-dash-widget-block p{margin-top:0;margin-bottom:0}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-block-container{position:relative}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-block{height:291px;border-bottom:1px solid #eee;padding:0 12px 12px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{display:flex;align-items:center;justify-content:space-between;margin-top:0;padding:13px;background-color:#fafafa}@media(max-width: 980px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{padding:13px 4px}}@media(max-width: 960px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{padding:13px}}@media(max-width: 856px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{padding:13px 2px}}@media(max-width: 799px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{padding:13px}}@media(max-width: 436px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings{flex-direction:column;align-items:normal}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings>div{display:flex}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings select{width:100%;margin:0 0 10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-select-timespan{width:calc(100% - 38px)}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings a{vertical-align:middle}@media(max-width: 1150px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings a{display:none}}@media(min-width: 1500px)and (max-width: 1630px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings a{display:none}}@media(min-width: 1801px)and (max-width: 2080px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings a{display:none}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-select-email-type{margin-right:6px}@media(max-width: 830px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-select-email-type{margin-right:2px}}@media(max-width: 436px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-select-email-type{margin-right:0}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-container{display:inline-block;position:relative;vertical-align:top;margin-left:6px}@media(max-width: 830px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-container{margin-left:2px}}@media(max-width: 799px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-container{margin-left:6px}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button{background:#fafafa;color:#787c82;border-color:#787c82;padding:1px 6px 0;margin-bottom:0;line-height:1;display:flex;align-items:center;justify-content:center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:hover,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:active,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:focus{color:#2271b1;border-color:#2271b1}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:hover svg path,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:active svg path,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button:focus svg path{fill:#2271b1}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button.open svg path{transform:rotate(90deg)}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button svg{display:inline-block;width:19px;height:19px}@media(max-width: 782px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button svg{padding:5px}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-button svg path{fill:#787c82;transition:transform .2s;transform-origin:center center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu{display:none;position:absolute;background-color:#fff;width:160px;border-radius:3px;box-shadow:0px 5px 15px rgba(0,0,0,.15);padding:10px;z-index:9999;right:0;top:50px}@media(min-width: 800px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu{top:40px}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color{border-bottom:1px solid #eee}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style h4,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color h4{text-transform:uppercase !important;color:#3c434a !important;font-size:11px !important;font-weight:500 !important;line-height:13px !important;margin:0 0 10px !important}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style .wp-mail-smtp-dash-widget-settings-menu-item,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color .wp-mail-smtp-dash-widget-settings-menu-item{display:flex;align-items:center;color:#3c434a;font-size:13px;line-height:16px;margin:0 0 13px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style .wp-mail-smtp-dash-widget-settings-menu-item:last-child,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color .wp-mail-smtp-dash-widget-settings-menu-item:last-child{margin:0 0 10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style .wp-mail-smtp-dash-widget-settings-menu-item input[type=radio],.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color .wp-mail-smtp-dash-widget-settings-menu-item input[type=radio]{margin-right:5px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--style .wp-mail-smtp-dash-widget-settings-menu-item label,.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color .wp-mail-smtp-dash-widget-settings-menu-item label{vertical-align:top;margin-top:-3px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu--color{margin-top:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-settings .wp-mail-smtp-dash-widget-settings-menu-save{margin-top:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block{margin-top:0}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table{width:calc(100% + 24px);margin:0 -12px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell{padding:10px 12px;border-right:1px solid #eee;border-top:1px solid #eee;color:#3c434a;font-size:14px;width:50%;line-height:17px}@media(max-width: 436px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell{display:block;width:100%}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell--2:not(:first-child){border-right:none}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell--3{width:33.33%}@media(max-width: 436px){.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell--3{width:100%}}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell--3:last-child{border-right:none}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell-container{display:flex;align-items:center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block table .wp-mail-smtp-dash-widget-email-stats-table-cell-container img{width:16px;margin-right:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-stats-block .wp-mail-smtp-dash-widget-overlay{background-position-y:50%}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block{display:flex;padding:12px 7px 12px 12px;border-top:1px solid #eee;color:#787c82;font-size:13px;line-height:16px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block b{color:#3c434a}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .sep{display:inline-block;margin:0 3px;color:#ddd}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .sep-vertical{color:#ddd}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block p{margin:0}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-recommended-plugin{display:inline-block;width:calc(100% - 24px)}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-recommended-plugin span{display:inline-block}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-dismiss-recommended-plugin-block{display:inline-block;border:0;color:gray;opacity:.3;vertical-align:baseline;cursor:pointer;background:none;padding:0 2px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-dismiss-recommended-plugin-block:hover{opacity:1}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-recommended-plugin-block .wp-mail-smtp-dash-widget-dismiss-recommended-plugin-block .dashicons{font-size:16px;height:16px;width:16px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education{align-items:center;border-left:4px solid #d63638;border-top:1px solid #eee;display:flex;gap:10px;margin-top:0;padding:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-error-icon{display:flex;height:44px;width:40px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-error-icon img{height:35px;width:35px;margin:auto}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-content{padding-right:14px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-content p{color:#1d2327;font-size:14px;line-height:20px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-content p a{color:#2271b1;font-weight:500}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education-content p strong{font-weight:500}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education .wp-mail-smtp-dash-widget-dismiss-email-alert-block{background:none;border:0;cursor:pointer;position:absolute;right:6px;top:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-email-alerts-education .wp-mail-smtp-dash-widget-dismiss-email-alert-block .dashicons{color:#a0a5aa;font-size:16px;height:17px;width:16px}.wp-mail-smtp-dash-widget .wp-mail-smtp-error{text-align:center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-upgrade,.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-chart{position:absolute;left:0;top:0;height:100%;width:100%;overflow:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255,255,255,0);background:-moz-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);background:-webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, rgb(255, 255, 255)));background:-webkit-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);background:-o-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);background:-ms-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);background:radial-gradient(ellipse at center, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%)}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-upgrade .wp-mail-smtp-dash-widget-modal,.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-chart .wp-mail-smtp-dash-widget-modal{position:absolute;top:calc(50% - 2em);left:50%;transform:translate(-50%, -50%);padding:1.5em 2em 2em 2em;box-shadow:0 0 25px 10px rgba(0,0,0,.08);border-radius:3px;background-color:#fff;text-align:center;width:20em}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-upgrade .wp-mail-smtp-dash-widget-modal h2,.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-chart .wp-mail-smtp-dash-widget-modal h2{padding:0;margin-bottom:5px;font-size:18px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-chart-upgrade .wp-mail-smtp-dash-widget-modal p,.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-chart .wp-mail-smtp-dash-widget-modal p{line-height:1.3}.wp-mail-smtp-dash-widget .wp-mail-smtp-error-no-data-email-stats{padding-top:16px;padding-bottom:16px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled{padding:21px 25px 30px;text-align:center}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled .wp-mail-smtp-dash-widget-block-logo{width:75px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled h2{font-size:16px;line-height:20px;font-weight:500;padding:10px 0 0}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled p{font-size:14px;line-height:20px;margin:7px 0 19px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-block-logs-disabled a.button:first-of-type:not(:only-of-type){margin-right:10px}.wp-mail-smtp-dash-widget .wp-mail-smtp-dash-widget-overlay{width:100%;position:absolute;top:0;right:0;bottom:0;left:0;background:url(../images/wp-spinner.gif) no-repeat center calc(50% - 12px);background-color:#fff;z-index:10}.wp-mail-smtp-dash-widget i.wp-mail-smtp-dash-widget-loader{background-image:url(../images/wp-spinner.gif);background-repeat:no-repeat;background-position:center;background-size:cover}.wp-mail-smtp-dash-widget .hidden{display:none !important}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-block-container #wp-mail-smtp-dash-widget-chart{opacity:.35}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade{background:none;display:flex;align-items:center;justify-content:center}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade h2{font-size:20px;line-height:20px;font-weight:500;color:#3c434a;margin-bottom:15px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade p{font-size:14px;line-height:18px;color:#787c82;margin-bottom:15px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade p:last-child{margin-bottom:0}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade a.button.button-hero{font-weight:500;font-size:14px;line-height:20px;padding:9px 15px;min-height:40px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-chart-upgrade .wp-mail-smtp-dash-widget-modal{position:relative;top:inherit;left:inherit;transform:none;width:24em;padding:2.3em;box-shadow:0 5px 25px rgba(0,0,0,.15);border-radius:6px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-dismiss-chart-upgrade{position:absolute;width:16px;height:17px;right:5px;top:5px;color:#a0a5aa;text-decoration:none}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-dismiss-chart-upgrade .dashicons{width:16px;height:17px;font-style:normal;font-weight:normal;font-size:16px;line-height:17px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-settings-menu input[type=radio]:checked::before{background-color:#a0a5aa}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-settings-menu *{cursor:not-allowed}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block{margin-top:0;padding-top:10px;padding-bottom:10px;border-top:1px solid #eee;font-size:13px;line-height:16px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block>div{padding:10px;border-radius:4px;background:#f0f6fc}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting{display:flex;align-items:center}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label{display:flex;margin:0 10px 0 0;color:#3c434a}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label input,#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label i{margin:0 10px 0 0}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label i{display:none;width:16px;height:16px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting label b{font-weight:500}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting a{white-space:nowrap;margin-right:10px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting .dashicons-dismiss{margin-left:auto;width:16px;height:16px;font-size:16px;color:#a0a5aa;cursor:pointer}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-setting .dashicons-dismiss:hover{color:#2271b1}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-applied{display:flex}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-summary-report-email-block-applied .wp-mail-smtp-dashicons-yes-alt-green{margin-right:10px;width:16px;height:16px;background-image:url("../images/dash-widget/yes-green.svg")}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-upgrade-footer{padding:12px;margin-top:0;border-top:1px solid #eee}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-upgrade-footer p{font-size:13px;line-height:16px}#wp_mail_smtp_reports_widget_lite .wp-mail-smtp-dash-widget-upgrade-footer--hide{display:none} \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/css/smtp-admin.min.css b/wp/wp-content/plugins/wp-mail-smtp/assets/css/smtp-admin.min.css index 4f9f596a..6d39c963 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/css/smtp-admin.min.css +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/css/smtp-admin.min.css @@ -1 +1 @@ -#wpcontent{padding-left:0 !important;position:relative}@media(max-width: 600px){#wpcontent{padding-top:46px}}@media(max-width: 600px){#wpbody{padding-top:0}}@-webkit-keyframes wp-mail-smtp-fade-in-stop-out{0%,100%{opacity:0}35%{opacity:1}65%{opacity:1}}@keyframes wp-mail-smtp-fade-in-stop-out{0%,100%{opacity:0}35%{opacity:1}65%{opacity:1}}body.wp-mail-smtp-admin-page-body div.jconfirm *,body.wp-mail-smtp-admin-page-body div.jconfirm *::before,body.wp-mail-smtp-admin-page-body div.jconfirm *::after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-bg{background-color:rgba(114,119,124,.75);opacity:1}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box{padding:30px;border-radius:6px;box-shadow:0 3px 6px rgba(0,0,0,.15);border-top-width:4px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-closeIcon{color:rgba(0,0,0,.4);top:8px;right:8px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-closeIcon:hover{color:rgba(0,0,0,.8)}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c{margin:0 0 15px 0;padding:0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-icon-c{margin:0 0 30px;-webkit-transition:none;transition:none;-webkit-transform:none !important;-ms-transform:none !important;transform:none !important}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-icon-c:empty,body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-icon-c i:empty{display:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-title{display:block;color:#2c3337;font-weight:500;font-size:24px;line-height:29px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content-pane{display:block;margin-bottom:30px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content-pane .jconfirm-content{margin-bottom:0;overflow:inherit}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content{font-size:16px;color:#2c3337;line-height:1.4}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content p{margin:0 0 20px;font-size:16px;line-height:1.5}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content p:last-of-type{margin:0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content p.large{font-size:18px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content p.small{font-size:14px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content .wp-mail-smtp-debug-event-preview p{font-size:14px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content .wp-mail-smtp-btn{font-weight:600;text-transform:uppercase;-webkit-transition:background .1s;transition:background .1s;padding:10px 20px;outline:none;display:inline-block;font-size:14px;line-height:1.4;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:4px;min-height:1em;-webkit-tap-highlight-color:transparent;border:0;background-image:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content .wp-mail-smtp-btn.with-loader{padding:12px 12px 7px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons{padding:0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button{transition:.2s;box-shadow:none;margin:0 10px 0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button:hover{box-shadow:inset 0 0 0 100px rgba(0,0,0,.1)}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-confirm{color:#fff;outline:none;border:1px solid #e27730;background-color:#e27730}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-cancel{color:#777;outline:none;background:#f8f8f8;border:1px solid #ccc}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button,body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-default{color:#666}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-hide{display:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-block{display:block;text-align:center;width:100%;margin:0 0 10px 0 !important}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-normal-case{text-transform:none !important}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-green{border-color:#00a32a}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-green div.jconfirm-buttons button.btn-confirm{background-color:#00a32a;border-color:#00a32a}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-orange{border-color:#e27730}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-orange div.jconfirm-buttons button.btn-confirm{background-color:#e27730;border-color:#e27730}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-red{border-color:#d63638}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-red div.jconfirm-buttons button.btn-confirm{background-color:#d63638;border-color:#d63638}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-blue{border-color:#3582c4}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-blue div.jconfirm-buttons button.btn-confirm{background-color:#3582c4;border-color:#3582c4}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading{border-top-color:#fff !important;height:160px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading .jconfirm-title-c{display:block !important;position:relative;z-index:4}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading .jconfirm-title-c .jconfirm-icon-c{display:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading:before{z-index:2}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading:after{content:"";position:absolute;left:50%;top:68%;margin-left:-20px;height:40px;width:40px;border:solid 6px transparent;border-bottom-color:#e27730;opacity:1;z-index:3}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal{padding:30px 30px 15px;border-top:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-title-c{margin:0 0 26px 0;padding:0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-title-c .jconfirm-icon-c{margin-bottom:20px;color:#c4c4c4 !important}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-title-c .jconfirm-icon-c svg{height:35px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-content-pane{margin-bottom:25px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-buttons button.btn-confirm{background-color:#e27730;border-color:#e27730}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note{text-align:center;margin:45px 0 0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note p{background-color:#fcf9e8;margin:0 -30px;padding:24px 60px 20px;font-size:15px;color:#4d4d4d;position:relative}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note p:after{content:url(../images/font-awesome/check-circle-solid-green.svg);width:40px;height:40px;background-color:#fff;border-radius:50%;padding:5px 6px;position:absolute;top:-20px;right:50%;margin-right:-18px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note span{font-weight:600;color:#00a32a}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note a{color:#aaa;display:block;margin-top:12px}@media screen and (max-width: 1023px){#wp-mail-smtp-notice-bar{display:none !important}}#wp-mail-smtp-notice-bar{max-height:35px;position:relative;margin-bottom:-3px;transition:all .3s ease-out;overflow:hidden}#wp-mail-smtp-notice-bar.out{max-height:3px}#wp-mail-smtp-notice-bar .wp-mail-smtp-notice-bar-container{background-color:#ddd;border-top:3px solid #e27730;color:#50575e;text-align:center;padding:7px}#wp-mail-smtp-notice-bar a{color:#e27730}#wp-mail-smtp-notice-bar a:hover{color:#b85a1b}#wp-mail-smtp-notice-bar .dismiss{position:absolute;top:0;right:0;border:none;padding:5px;margin-top:4px;background:0 0;color:#72777c;cursor:pointer}#wp-mail-smtp-notice-bar .dismiss:before{background:0 0;color:#72777c;content:"";display:block;font:normal 20px/20px dashicons;speak:none;height:20px;text-align:center;width:20px;-webkit-font-smoothing:antialiased}#screen-meta-links .screen-meta-toggle{position:absolute;right:20px;top:auto}#wp-mail-smtp .wp-mail-smtp-product-education__row{border-bottom:1px solid #e4e4e4;padding:25px 0 5px;font-size:14px;line-height:1.3;max-width:1005px}#wp-mail-smtp .wp-mail-smtp-product-education__row>*:last-child{border-bottom:none !important}#wp-mail-smtp .wp-mail-smtp-product-education__row--inactive{opacity:.5;pointer-events:none}#wp-mail-smtp .wp-mail-smtp-product-education__row--full-width{max-width:unset}#wp-mail-smtp .wp-mail-smtp-product-education__row--no-border{border-bottom:none !important}#wp-mail-smtp .wp-mail-smtp-product-education__row--no-padding{padding:0 !important}#wp-mail-smtp .wp-mail-smtp-product-education__row:first-of-type{padding-top:10px}#wp-mail-smtp .wp-mail-smtp-product-education__row:last-of-type+.wp-mail-smtp-btn-upgrade{margin-top:25px}#wp-mail-smtp .wp-mail-smtp-product-education__heading{display:flex;align-items:center;margin-top:0;margin-bottom:10px;font-size:20px;line-height:24px;color:#2c3337}#wp-mail-smtp .wp-mail-smtp-product-education__heading:after{content:"";margin-left:10px;background-image:url("../images/pro-badge-small.svg");background-size:contain;background-repeat:no-repeat;width:35px;height:16px}#wp-mail-smtp .wp-mail-smtp-product-education__description{margin-top:0;margin-bottom:20px;color:#50575e;font-size:14px;line-height:1.5em}#wp-mail-smtp .wp-mail-smtp-product-education__upgrade-btn--top{margin-bottom:20px}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots{display:flex;flex-wrap:wrap}@media(max-width: 599px){#wp-mail-smtp .wp-mail-smtp-product-education__screenshots{flex-direction:column}}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div{display:flex;flex-direction:column;align-items:center;margin:0 25px 20px 0}@media(max-width: 599px){#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div{margin-right:0;max-width:unset !important}}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div:last-child{margin-right:0}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div a{position:relative;margin-bottom:10px;background:#fff;border:5px solid #fff;box-sizing:border-box;border-radius:4px}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div a:after{content:"";position:absolute;opacity:0;height:100%;width:100%;top:0;left:0;background-color:rgba(68,68,68,.15);background-image:url("../../assets/images/icons/zoom.svg");background-repeat:no-repeat;background-position:center;background-size:50px;transition:all .3s}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div a:hover:after{opacity:1}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div img{display:block;max-width:100%;height:auto}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div span{font-size:14px;line-height:18px;text-align:center;color:#50575e}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots--two>div{max-width:487px}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots--three>div{max-width:316px}#wp-mail-smtp .wp-mail-smtp-product-education__list>h4{margin-top:0;margin-bottom:20px;font-size:16px;line-height:20px;color:#2c3337}#wp-mail-smtp .wp-mail-smtp-product-education__list>div{display:flex;flex-wrap:wrap}#wp-mail-smtp .wp-mail-smtp-product-education__list ul{width:290px;margin:0 40px 20px 0}#wp-mail-smtp .wp-mail-smtp-product-education__list ul li{display:flex;align-items:center;font-size:14px;line-height:20px;margin-bottom:0;color:#50575e}#wp-mail-smtp .wp-mail-smtp-product-education__list ul li+li{margin-top:20px}#wp-mail-smtp .wp-mail-smtp-product-education__list ul li:before{content:url("../../assets/images/icons/check-solid.svg");width:16px;margin-right:10px}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section{margin-bottom:20px;cursor:not-allowed}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section:last-of-type{margin-bottom:20px}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section h5{clear:both;margin:0 0 10px 0;color:#2c3337;font-size:16px;font-weight:600}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section label{clear:both;float:left;margin:3px 0 3px 0}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section .wp-mail-smtp-date-selector{width:200px;cursor:pointer}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section .wp-mail-smtp-search-box-field{width:200px}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section .wp-mail-smtp-search-box-term{width:300px}#wp-mail-smtp #wp-mail-smtp-email-controls-product-education .wp-mail-smtp-product-education__row--inactive{padding-top:20px;padding-bottom:0}#wp-mail-smtp #wp-mail-smtp-email-controls-product-education .wp-mail-smtp-setting-row:last-child{border-bottom:none}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu h2{display:inline-block;vertical-align:middle}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .badge{margin:0 0 2px 7px;vertical-align:middle;width:40px;height:17px}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .wp-mail-smtp-setting-row-multisite{color:#9a9a9a}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .wp-mail-smtp-setting-row-multisite p.desc{color:#bababa}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .wp-mail-smtp-setting-row-multisite input[type=checkbox]:disabled{border-color:#aaa}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .wp-mail-smtp-setting-row-no-setting{margin-top:30px}.wp-mail-smtp-lite #wp-mail-smtp .wp-mail-smtp-page-reports .wp-mail-smtp-page-title .page-title{position:relative}.wp-mail-smtp-lite #wp-mail-smtp .wp-mail-smtp-page-reports .wp-mail-smtp-page-title .page-title:after{content:"";display:inline-block;margin-left:10px;background-image:url("../images/pro-badge-small.svg");background-size:contain;background-repeat:no-repeat;width:35px;height:16px}.wp-mail-smtp-lite #wp-mail-smtp #wp-mail-smtp-setting-row-gmail-one_click_setup_enabled-lite .wp-mail-smtp-toggle::after{content:"";margin-left:10px;background-image:url("../images/pro-badge-small.svg");background-size:contain;background-repeat:no-repeat;width:35px;height:16px}.wp-mail-smtp-loading{animation:.65s linear infinite wp-mail-smtp-loading-spin}.wp-mail-smtp-loading-md{width:32px;height:32px}.wp-mail-smtp-loading-sm{width:16px;height:16px}.wp-mail-smtp-loading-spin{position:relative;color:transparent !important;pointer-events:none}.wp-mail-smtp-loading-spin:after{position:absolute;box-sizing:border-box;animation:.65s linear infinite wp-mail-smtp-loading-spin;border:2px solid #fff;border-radius:50%;border-right-color:transparent !important;border-top-color:transparent !important;content:"";display:block;top:50%;left:50%;width:16px;height:16px;margin-top:-8px;margin-left:-8px}@keyframes wp-mail-smtp-loading-spin{0%{transform:rotateZ(270deg)}100%{transform:rotateZ(630deg)}}#wp-mail-smtp-flyout{position:fixed;z-index:99999;transition:all .2s ease-in-out;right:40px;bottom:40px;opacity:1}@media(max-width: 959px){#wp-mail-smtp-flyout{display:none}}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head{display:block}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head:focus{box-shadow:none}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head figure{margin:0;border-radius:50%;border:3px solid #e27730;overflow:hidden;box-shadow:0 2px 20px rgba(0,0,0,.15);background-color:#fff;transition:all .2s ease-in-out}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head figure img{display:block;width:54px;height:54px;transition:all .2s ease-in-out}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head:hover figure{box-shadow:0 2px 30px rgba(0,0,0,.2)}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head .wp-mail-smtp-flyout-label{right:calc(100% + 15px);opacity:0;transform:translateY(-50%) scale(0);margin-right:-50px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head:hover .wp-mail-smtp-flyout-label{opacity:1;transform:translateY(-50%) scale(1);margin-right:0}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-label{position:absolute;display:block;top:50%;right:calc(100% + 15px);transform:translateY(-50%);-moz-transform:translateY(-50%);-webkit-transform:translateY(-50%);color:#fff;background-color:#a7aaad;font-size:12px;white-space:nowrap;padding:6px 10px;height:auto !important;line-height:initial;transition:all .2s ease-out;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item{position:absolute;display:flex;left:10px;width:40px;height:40px;opacity:0;visibility:hidden;transition:all .2s ease-in-out;transform:scale(0);border-radius:50%;box-shadow:0px 2px 10px rgba(0,0,0,.15);background-color:#738e9e}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item img{margin:auto}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-0{bottom:75px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-1{bottom:130px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-2{bottom:185px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-3{bottom:240px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-4{bottom:295px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item:hover{background-color:#395360}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item:hover .wp-mail-smtp-flyout-label{background-color:#787c82}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item{opacity:1;visibility:visible;transform:scale(1)}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-head .wp-mail-smtp-flyout-label{display:none}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-head figure img{transform:rotate(-15deg) scale(1.17)}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-0{transition:transform .2s 0ms,background-color .2s}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-1{transition:transform .2s 35ms,background-color .2s}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-2{transition:transform .2s 70ms,background-color .2s}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-3{transition:transform .2s 105ms,background-color .2s}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-4{transition:transform .2s 140ms,background-color .2s}#wp-mail-smtp-flyout.out{opacity:0;visibility:hidden}.wp-mail-smtp-tooltip{position:relative;display:inline-block;text-decoration:underline;text-decoration-style:dotted;cursor:help;color:#50575e;margin-top:15px !important}.wp-mail-smtp-tooltip-text{visibility:hidden;position:absolute;z-index:9999;width:360px;background-color:#2d4f60;color:#fff;text-align:center;padding:16px 20px;font-size:14px;border-radius:5px;bottom:100%;left:50%;margin-left:-180px}.wp-mail-smtp-tooltip-text::after{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#2d4f60 transparent transparent transparent}.wp-mail-smtp-tooltip:hover .wp-mail-smtp-tooltip-text{visibility:visible}#wp-mail-smtp .wp-mail-smtp-conditional button{cursor:pointer}#wp-mail-smtp .wp-mail-smtp-conditional table{width:100%;max-width:740px;padding:0;margin:0;border-collapse:collapse;border-spacing:0;font-size:13px}#wp-mail-smtp .wp-mail-smtp-conditional table td{padding:0 10px 20px 0}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-conditional__row{display:flex;flex-direction:column}}#wp-mail-smtp .wp-mail-smtp-conditional__row input,#wp-mail-smtp .wp-mail-smtp-conditional__row select{width:100% !important;max-width:100%;margin:0;text-overflow:ellipsis}#wp-mail-smtp .wp-mail-smtp-conditional__property-col{width:23%}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-conditional__property-col{width:100%}}#wp-mail-smtp .wp-mail-smtp-conditional__operator-col{width:23%}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-conditional__operator-col{width:100%}}#wp-mail-smtp .wp-mail-smtp-conditional__value-col{width:42%}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-conditional__value-col{width:100%}}#wp-mail-smtp .wp-mail-smtp-conditional__value :disabled{background-color:#f1f1f1;cursor:not-allowed}#wp-mail-smtp .wp-mail-smtp-conditional__actions{display:flex;align-items:center;padding-right:0}#wp-mail-smtp .wp-mail-smtp-conditional__delete-rule{background-color:transparent;border:none;color:#999;margin:0 0 0 10px;padding:0;vertical-align:middle}#wp-mail-smtp .wp-mail-smtp-conditional__delete-rule:hover{color:#d63638}#wp-mail-smtp .wp-mail-smtp-conditional__group-delimiter{margin:0 0 20px;font-size:14px;font-style:italic;font-weight:400;line-height:17px;color:#646970}.wp-mail-smtp-toggle{vertical-align:middle;display:inline-flex;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.wp-mail-smtp-toggle__switch{position:relative;width:27px;height:17px;flex-shrink:0;cursor:pointer;background-color:#ccc;border-radius:10px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wp-mail-smtp-toggle__switch:before{position:absolute;content:"";height:13px;width:13px;left:2px;top:2px;background-color:#fff;border-radius:50%;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wp-mail-smtp-toggle__label{display:none;margin-left:10px;font-weight:400;font-size:13px;line-height:15px;color:#50575e;text-transform:uppercase}.wp-mail-smtp-toggle__label--static{display:block;text-transform:none}.wp-mail-smtp-toggle input[type=checkbox]{position:absolute;top:auto;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;white-space:nowrap}.wp-mail-smtp-toggle input[type=checkbox]:not(:checked):hover+.wp-mail-smtp-toggle__switch,.wp-mail-smtp-toggle input[type=checkbox]:not(:checked):focus+.wp-mail-smtp-toggle__switch{box-shadow:0 0 0 1px #fff,0 0 0 3px #999;background-color:#999}.wp-mail-smtp-toggle input[type=checkbox]:not(:checked)~.wp-mail-smtp-toggle__label--unchecked{display:block}.wp-mail-smtp-toggle input[type=checkbox]:checked+.wp-mail-smtp-toggle__switch{background-color:#00a32a}.wp-mail-smtp-toggle input[type=checkbox]:checked+.wp-mail-smtp-toggle__switch:before{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}.wp-mail-smtp-toggle input[type=checkbox]:checked:hover+.wp-mail-smtp-toggle__switch,.wp-mail-smtp-toggle input[type=checkbox]:checked:focus+.wp-mail-smtp-toggle__switch{box-shadow:0 0 0 1px #fff,0 0 0 3px #00a32a}.wp-mail-smtp-toggle input[type=checkbox]:checked~.wp-mail-smtp-toggle__label--checked{display:block}.wp-mail-smtp-toggle input[type=checkbox]:disabled:hover+.wp-mail-smtp-toggle__switch,.wp-mail-smtp-toggle input[type=checkbox]:disabled:focus+.wp-mail-smtp-toggle__switch{box-shadow:none}.wp-mail-smtp-toggle input[type=checkbox]:disabled~*{opacity:.5;cursor:default}.wp-mail-smtp-admin-page-body #wpbody-content{padding-bottom:200px}@media(max-width: 782px){.wp-mail-smtp-admin-page-body #wpbody-content{padding-bottom:0 !important}}.wp-mail-smtp-admin-page-body #wpfooter a{color:#2171b1 !important}.wp-mail-smtp-admin-page-body #wpfooter a:hover,.wp-mail-smtp-admin-page-body #wpfooter a:active{color:#135e96 !important}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion{text-align:center;font-weight:400;font-size:13px;line-height:normal;color:#646970;padding:30px 0;margin-bottom:20px}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion p{font-weight:600}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links,.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social{display:flex;justify-content:center;align-items:center}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links{margin:10px 0;color:#646970}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links a{color:#04558a}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links a:hover{color:#04558a}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links span{color:#c3c4c7;padding:0 7px}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social{gap:10px;margin:0}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social li{margin-bottom:0}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social li path{color:#646970}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social li:hover path{fill:#50575e}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social a{display:block;height:16px}.wp-mail-smtp-admin-page-body #wpfooter #footer-left{color:#50575e;font-size:13px;font-style:normal;font-weight:400;line-height:normal}.wp-mail-smtp-admin-page-body #wpfooter #footer-left strong{font-weight:600}#screen-meta-links,#screen-meta{display:none}#wp-mail-smtp-header-temp{position:absolute;margin:0;top:-1px;left:20px;right:0;z-index:99}#wp-mail-smtp-header{border-top:3px solid #e27730;padding:24px 20px}#wp-mail-smtp-header img{display:block;margin:0;max-width:242px}@media(max-width: 782px){#wp-mail-smtp-header img{max-width:200px}}.wp-mail-smtp-page{color:#2c3337}.wp-mail-smtp-page a{color:#2171b1}.wp-mail-smtp-page a:hover,.wp-mail-smtp-page a:active{color:#135e96}#wp-mail-smtp{margin:0}#wp-mail-smtp .wp-mail-smtp-hide{display:none}#wp-mail-smtp .wp-mail-smtp-page-title{min-height:58px;background-color:#fff;font-size:14px;margin:0 0 20px 0;padding:0 20px}#wp-mail-smtp .wp-mail-smtp-page-title a.tab{border-bottom:3px solid #fff;box-shadow:none;color:#666;display:inline-block;margin-right:30px;padding:20px 0 17px 0;text-decoration:none}#wp-mail-smtp .wp-mail-smtp-page-title a.tab.active{border-color:#e27730}#wp-mail-smtp .wp-mail-smtp-page-title a.tab:hover{border-color:#999}#wp-mail-smtp .wp-mail-smtp-page-title a.action{color:#fff;font-weight:600;margin:14px 0 14px 10px;line-height:28px;min-height:30px;vertical-align:top}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-page-title a.action{margin-left:0}}#wp-mail-smtp .wp-mail-smtp-page-title .page-title{background-color:#fff;display:inline-block;font-size:23px;margin:0;padding:20px 20px 20px 0}#wp-mail-smtp .wp-mail-smtp-page-content{padding:0 20px}#wp-mail-smtp .wp-mail-smtp-page-content *,#wp-mail-smtp .wp-mail-smtp-page-content *::before,#wp-mail-smtp .wp-mail-smtp-page-content *::after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-clear:before{content:" ";display:table}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-clear:after{clear:both;content:" ";display:table}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row{border-bottom:1px solid #e4e4e4;padding:30px 0;font-size:14px;line-height:1.3}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row:first-of-type{padding-top:10px !important}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row{padding:20px 0}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.inactive{display:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row .wp-mail-smtp-setting-mid-row-sep{background:#e4e4e4;height:1px;border:0;margin:15px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading{padding:20px 0 10px;border-bottom:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading.no-desc h2,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading.no-desc h4{margin:0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading.wp-mail-smtp-section-heading--has-divider{padding:20px 0 30px;border-bottom:1px solid #e4e4e4}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading .wp-mail-smtp-setting-field{margin:0;max-width:1005px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading .desc{font-style:normal}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-checkbox input[type=checkbox]{float:left;margin:1px 0 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-checkbox input[type=checkbox]+label{margin:0 0 0 8px;vertical-align:baseline}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-checkbox .desc{margin:0 0 0 30px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-checkbox input[type=checkbox]+label+.desc{margin:8px 0 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-text .wp-mail-smtp-setting-label,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-password .wp-mail-smtp-setting-label,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-number .wp-mail-smtp-setting-label,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-email .wp-mail-smtp-setting-label{padding-top:8px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-select .wp-mail-smtp-setting-label{padding-top:8px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-radio .wp-mail-smtp-setting-field input[type=radio]{margin:-3px 10px 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-radio .wp-mail-smtp-setting-field label{margin-right:30px;display:inline-block}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-no-border{border-bottom:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-no-padding{padding:0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer{padding-bottom:20px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer{display:inline-block;width:140px;margin-right:12px;margin-bottom:12px;position:relative}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer .wp-mail-smtp-mailer-image{background:#fff;text-align:center;border:2px solid #e5e5e5;border-radius:4px;cursor:pointer;height:76px;position:relative;margin-bottom:10px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer .wp-mail-smtp-mailer-image.is-recommended{background-image:url(../images/recommended.svg);background-repeat:no-repeat;background-size:60%;background-position:top right -2px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer .wp-mail-smtp-mailer-image img{max-width:80%;max-height:40px;display:block;position:relative;top:50%;left:50%;transform:translate(-50%, -50%);opacity:.6;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer.wp-mail-smtp-mailer-smtp .wp-mail-smtp-mailer-image img{max-height:30px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer.active .wp-mail-smtp-mailer-image{border-color:#e27730}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer.active .wp-mail-smtp-mailer-image img{opacity:1}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer:hover .wp-mail-smtp-mailer-image{border-color:#ccc}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer:hover .wp-mail-smtp-mailer-image img{opacity:1}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert{padding-top:20px;padding-bottom:25px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .wp-mail-smtp-setting-row{border:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .section-heading{margin-bottom:25px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .section-heading h3{margin-bottom:10px;font-weight:500;font-size:18px;line-height:22px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .section-heading .notice{margin-top:20px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .section-heading .notice p{margin:6.5px 0;font-size:13px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .wp-mail-smtp-setting-row{padding:0 !important}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .wp-mail-smtp-setting-row+.wp-mail-smtp-setting-row{margin-top:20px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .wp-mail-smtp-setting-label label{font-weight:500}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .dashicons-trash{position:relative;top:6px;color:#a7aaad;cursor:pointer;transition:.2s}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .dashicons-trash:hover{color:#d63638}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row#wp-mail-smtp-setting-row-alerts-twilio_sms .wp-mail-smtp-setting-row-alert-connection-options{position:relative}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row#wp-mail-smtp-setting-row-alerts-twilio_sms .wp-mail-smtp-setting-row-alert-connection-options+.wp-mail-smtp-setting-row-alert-connection-options:before{content:"";display:block;max-width:605px;height:1px;margin-bottom:20px;background-color:#dcdcde}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h2,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h4{color:#2c3337;font-size:20px;font-weight:600;margin:0 0 6px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h2{margin-bottom:15px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h3{color:#2c3337;font-size:24px;font-weight:600;margin:0 0 20px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h5{color:#2c3337;font-size:16px;font-weight:600;margin:0 0 20px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p{margin:12px 0 0;font-size:14px;line-height:1.5em}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p:first-of-type{margin:8px 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.desc{margin:10px 0 0;font-style:italic;color:#50575e}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.desc+.desc{font-style:normal}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.buttonned{margin-top:30px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice{margin:5px 0 15px;box-sizing:border-box;background:#fff;border-left:4px solid transparent;box-shadow:0 1px 1px 0 rgba(0,0,0,.1)}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice.inline-error{border-color:#d63638;margin-bottom:5px;padding:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice.inline-info{border-color:#2171b1;margin-bottom:5px;padding:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice.inline-edu-notice{border-color:#809eb0;line-height:1.5em;padding:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice a.wp-mail-smtp-mailer-notice-dismiss{float:right;color:#999da1;margin:0 0 10px 10px;text-decoration:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice a.wp-mail-smtp-mailer-notice-dismiss:hover{color:#666a6e}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row ul{margin:8px 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row ul.list li{margin-left:20px;list-style-type:disc}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list th{padding:5px 5px 5px 0;text-align:left}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.email{padding-right:2em}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.status{width:100px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a{border-bottom:1px solid;display:inline-block;margin-right:5px;text-decoration:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=delete],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=error]{color:#d63638}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=delete]:hover,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=delete]:active,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=delete]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=error]:hover,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=error]:active,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=error]:focus{color:#8a1c1d}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select{background-color:#fff;border:1px solid #8d8f95;border-radius:4px;box-shadow:none;color:#2c3337;display:inline-block;vertical-align:middle;padding:7px 12px;margin:0 10px 0 0;width:400px;min-height:36px;line-height:1.3}@media(max-width: 959px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select{width:300px}}@media(max-width: 599px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select{width:100%;max-width:unset;margin-right:0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text]~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text]~.wp-mail-smtp-btn,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email]~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email]~.wp-mail-smtp-btn,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number]~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number]~.wp-mail-smtp-btn,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password]~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password]~.wp-mail-smtp-btn,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select~.wp-mail-smtp-btn{margin-top:8px}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text][readonly],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email][readonly],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number][readonly],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password][readonly],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select[readonly]{background-color:#f9f9f9}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text].small-text,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email].small-text,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number].small-text,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password].small-text,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select.small-text{width:75px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select:focus{border:1px solid #016aab;box-shadow:0 0 0 1px #016aab;outline:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text]:disabled,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email]:disabled,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number]:disabled,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password]:disabled,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select:disabled{opacity:.6}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=checkbox]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=radio]:focus{border:1px solid #016aab;box-shadow:0 0 0 1px #016aab;outline:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row .wp-mail-smtp-dashicons-yes-alt-green.wp-mail-smtp-animate{-webkit-animation:wp-mail-smtp-fade-in-stop-out 1s linear;animation:wp-mail-smtp-fade-in-stop-out 1s linear}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row .wp-mail-smtp-dashicons-yes-alt-green.wp-mail-smtp-success{color:#00a32a}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group{border-bottom:1px solid #e4e4e4;padding:0 0 30px}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group{padding:0 0 20px}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group:first-of-type{padding-top:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group .wp-mail-smtp-setting-row{border:none;padding:30px 0 0 !important}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group .wp-mail-smtp-setting-row{padding:20px 0 0}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-label{display:block;float:left;width:205px;padding:0 20px 0 0}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-label{float:none;width:100%;padding-bottom:15px}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-label label{display:block;font-weight:600}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field{display:block;margin:0 0 0 205px;max-width:800px}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field{margin:0}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field hr{margin:20px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field .wp-mail-smtp-setting-field-row{display:flex;flex-wrap:wrap}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field .wp-mail-smtp-setting-field-row>.wp-mail-smtp-btn+.wp-mail-smtp-btn{margin-left:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-submit{margin:0;padding:25px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-submit .help-text{margin-left:10px;vertical-align:middle}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-mailer-option .wp-mail-smtp-setting-row.section-heading{padding:20px 0 !important}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-mailer-option blockquote{background:#e5e5e5;border-radius:4px;color:#666;font-size:14px;margin:20px 0;padding:15px;max-width:1005px;width:100%}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-connected-row{display:flex;align-items:center}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-connected-row{flex-direction:column;align-items:flex-start}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-connected-row__info{margin-left:30px}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-connected-row__info{margin-left:0;margin-top:10px}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options p.inline-notice{margin-top:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options p.inline-notice:first-child{margin-top:0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options p.inline-notice:last-child{margin-bottom:0}#wp-mail-smtp .wp-mail-smtp-page-content.wp-mail-smtp-page-general p{margin:0}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline{background:#fff;border-left:4px solid #fff;box-shadow:0 1px 1px 0 rgba(0,0,0,.1);margin:5px 0 15px;padding:1px 12px}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline.notice-success{border-left-color:#00a32a}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline.notice-warning{border-left-color:#ffb900}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline.notice-error{border-left-color:#d63638}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline.notice-info{border-left-color:#00a0d2}#wp-mail-smtp .wp-mail-smtp-page-content .notice p,#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline p,#wp-mail-smtp .wp-mail-smtp-page-content .notice p:first-of-type,#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline p:first-of-type{margin:.5em 0;padding:2px}#wp-mail-smtp .wp-mail-smtp-page-content pre{white-space:pre-line}#wp-mail-smtp .wp-mail-smtp-page-content.active{display:block}#wp-mail-smtp .wp-mail-smtp-page-content .connected-as{margin-left:30px}@media(max-width: 599px){#wp-mail-smtp .wp-mail-smtp-page-content .connected-as{display:block;margin-left:0;margin-top:8px}}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner{background-color:#fff;padding:25px 20px;border:1px solid #dadada;margin:10px 0 0 0;position:relative}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .wp-mail-smtp-pro-banner-dismiss{position:absolute;right:10px;top:10px}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .wp-mail-smtp-pro-banner-dismiss button{background:none;border:none;color:#a9a9a9;cursor:pointer;margin:0;padding:0}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner h2{color:#2c3337;margin-top:0;font-size:16px;font-weight:600}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner p{font-size:14px;color:#50575e;margin-bottom:1.1em}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner p:last-of-type{margin:0}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits{margin:0 0 16px 0;overflow:auto;max-width:1000px}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul{margin:0;padding:0;width:50%;float:left}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul{width:100%;float:none}}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul li{margin:0;padding:0 0 2px 16px;color:#50575e;font-size:14px;position:relative}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul li:before{content:"+";position:absolute;top:-1px;left:0}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul li.arrow-right:before{content:"→"}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner a{color:#e27730}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner a:hover,#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner a:active,#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner a:focus{color:#b85a1b}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .stars{text-decoration:none}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .stars .dashicons{width:16px;height:16px;font-size:16px;vertical-align:text-top}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .price-off{color:#00a32a;font-weight:600}#wp-mail-smtp .wp-mail-smtp-admin-columns>div[class*=-column-]{float:left}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-20{width:20%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-33{width:33.33333%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-40{width:40%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-50{width:50%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-60{width:60%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-80{width:80%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-last{float:right !important}#wp-mail-smtp .wp-mail-smtp-admin-columns:after{content:"";display:table;clear:both}#wp-mail-smtp .notice blockquote{margin-left:0;padding:2px}#wp-mail-smtp .notice blockquote pre{margin:0;white-space:pre-line}#wp-mail-smtp #wp-mail-smtp-reset-filter{clear:both;margin:20px 0;padding:10px;font-size:15px;text-align:center;background:#fff;border:1px solid #ccd0d4;box-shadow:0 1px 1px rgba(0,0,0,.04)}#wp-mail-smtp #wp-mail-smtp-reset-filter a{text-decoration:none}#wp-mail-smtp #wp-mail-smtp-reset-filter .reset{cursor:pointer;color:#a6a6a6;font-size:15px;line-height:18px;width:18px;height:18px}#wp-mail-smtp #wp-mail-smtp-reset-filter .reset:focus,#wp-mail-smtp #wp-mail-smtp-reset-filter .reset:hover{color:#d63638}@media(min-width: 783px){#wp-mail-smtp .wp-mail-smtp-tab-tools-debug-events th#event{width:130px}#wp-mail-smtp .wp-mail-smtp-tab-tools-debug-events th#type{width:80px}#wp-mail-smtp .wp-mail-smtp-tab-tools-debug-events th#initiator{width:20%}#wp-mail-smtp .wp-mail-smtp-tab-tools-debug-events th#created_at{width:200px}}#wp-mail-smtp .wp-mail-smtp-tab-misc #wp-mail-smtp-setting-row-uninstall .wp-mail-smtp-danger{font-weight:600;color:#d63638}@media(max-width: 782px){#wp-mail-smtp .wp-mail-smtp-filter-date{display:flex !important;flex-direction:column;align-items:flex-start;float:none;width:100%;padding-right:0;margin-bottom:10px;max-width:600px}}#wp-mail-smtp .wp-mail-smtp-filter-date__control{float:left;margin:0 5px 0 0;min-height:30px;background-color:#fff;vertical-align:middle;max-width:210px}@media(max-width: 782px){#wp-mail-smtp .wp-mail-smtp-filter-date__control{flex-grow:1;width:100%;max-width:none;min-height:40px;margin-right:0;margin-bottom:5px}}#wp-mail-smtp .wp-mail-smtp-filter-date__btn{margin:0;vertical-align:top}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn{display:inline-flex;align-items:center;background-color:#4285f4;border-radius:2px;box-shadow:0 2px 4px 0 rgba(0,0,0,.25);transition:all 300ms ease-in-out;text-decoration:none;cursor:pointer;color:#fff}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn:hover{box-shadow:0 0 3px 3px rgba(66,133,244,.3)}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn:active{background:#3367d6}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn--disabled{pointer-events:none;background-color:#d4d3d3;box-shadow:none;color:#7f7f7f}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn--disabled .wp-mail-smtp-google-sign-in-icon__border,#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn--disabled .wp-mail-smtp-google-sign-in-icon__bg{fill:#d4d3d3}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn--disabled .wp-mail-smtp-google-sign-in-icon__symbol{fill:#7f7f7f}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn__icon{overflow:hidden;border-radius:2px}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn__icon svg{display:block;margin:-3px}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn__text{font-size:14px;font-weight:600;margin:0 10px}.wp-mail-smtp-btn{border:0;border-radius:3px;cursor:pointer;display:inline-block;margin:0;text-decoration:none;text-align:center;vertical-align:middle;white-space:nowrap;text-shadow:none;box-shadow:none;outline:none}.wp-mail-smtp-btn .dashicons{font-size:16px;width:16px;height:16px}.wp-mail-smtp-btn+.wp-mail-smtp-btn{margin-left:16px}.wp-mail-smtp-btn:disabled{opacity:.5;cursor:not-allowed}.wp-mail-smtp-btn.wp-mail-smtp-btn-md{font-size:14px;font-weight:500;padding:9px 15px;min-height:36px;line-height:16px;border-width:1px;border-style:solid}.wp-mail-smtp-btn.wp-mail-smtp-btn-lg{font-size:16px;font-weight:600;padding:16px 28px}.wp-mail-smtp-btn.wp-mail-smtp-btn-upgrade,.wp-mail-smtp-btn.wp-mail-smtp-btn-cta{font-size:16px;line-height:20px;font-weight:500;padding:14px 30px}.wp-mail-smtp-btn.wp-mail-smtp-btn-orange{background-color:#e27730;border-color:#e27730;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-orange:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-orange:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-orange:focus{background-color:#b85a1b;border-color:#b85a1b;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-orange:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #b85a1b}.wp-mail-smtp-btn.wp-mail-smtp-btn-red{background-color:#d63638;border-color:#d63638;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-red:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-red:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-red:focus{background-color:#b32d2e;border-color:#b32d2e;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-red:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #b32d2e}.wp-mail-smtp-btn.wp-mail-smtp-btn-grey{background-color:#f8f8f8;border-color:#999;color:#555}.wp-mail-smtp-btn.wp-mail-smtp-btn-grey:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-grey:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-grey:focus{background-color:#eee;border-color:#555;color:#444}.wp-mail-smtp-btn.wp-mail-smtp-btn-light-grey{background-color:#f5f5f5;border-color:#ccc;color:#666}.wp-mail-smtp-btn.wp-mail-smtp-btn-light-grey:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-light-grey:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-light-grey:focus{background-color:#eee;color:#444}.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish{background-color:#738e9e;border-color:#738e9e;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish:focus{background-color:#395360;border-color:#395360;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #395360}a.wp-mail-smtp-btn.wp-mail-smtp-btn-md{line-height:16px}#wp-mail-smtp-domain-check-details h2{color:#2c3337;font-size:20px;line-height:24px;font-weight:600;margin:28px 0 23px}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item{padding:25px 0;border-top:1px solid #e4e4e4;display:flex}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item:last-child{padding-bottom:0}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item-icon{width:18px;height:16px;margin-right:10px}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item-content h3{text-transform:uppercase;font-weight:500;font-size:14px;line-height:17px;color:#2c3337;margin:0 0 4px 0}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item-content p{color:#50575e;font-size:14px;line-height:20px;margin:0 0 10px 0}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item-content p:last-of-type{margin-bottom:0}.wp-mail-smtp-tab-tools-test .wp-mail-smtp-setting-row.section-heading{margin-bottom:22px}.wp-mail-smtp-tab-tools-test .wp-mail-smtp-test-email-resend{padding-top:22px;margin-top:22px;border-top:1px solid #e4e4e4}.wp-mail-smtp-tab-tools-test .wp-mail-smtp-test-email-resend a{font-size:14px;outline:none;box-shadow:none}.wp-mail-smtp-tab-tools-test #email-test-success{margin-top:30px;text-align:center}.wp-mail-smtp-tab-tools-test #email-test-success svg{display:block;max-width:500px;width:100%;height:auto;margin:0 auto 22px}.wp-mail-smtp-tab-tools-test #email-test-success h2{margin-top:0;margin-bottom:10px;font-weight:500;font-size:24px;line-height:29px;color:#2c3337}.wp-mail-smtp-tab-tools-test #email-test-success p{margin-top:0;font-size:16px;line-height:24px;color:#50575e}.wp-mail-smtp-tab-tools-test #email-test-form .wp-mail-smtp-setting-row.section-heading{margin-bottom:0}.wp-mail-smtp-tab-tools-test #email-test-form .wp-mail-smtp-btn{min-width:95px}.wp-mail-smtp-tab-tools-test #email-test-form .wp-mail-smtp-loading{display:none;margin-bottom:-2px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug{margin-top:25px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug h2{margin:20px 0 10px;color:#2c3337;font-size:16px;line-height:20px;font-weight:600}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug p{margin:10px 0;color:#50575e;font-size:14px;line-height:20px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul{list-style-type:disc}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul,.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ol{margin:10px 0 10px 15px;color:#50575e;font-size:14px;line-height:20px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul li,.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ol li{margin:0 0 8px 0}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul li:last-of-type,.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ol li:last-of-type{margin:0}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul li ul,.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ol li ul{list-style-type:disc}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .dashicons-star-filled{color:#e27730;width:16px;height:16px;font-size:16px;vertical-align:text-top}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .price-off{color:#00a32a;font-weight:600}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-button-container{margin-bottom:22px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-toggle{float:left;margin-right:10px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-copy{min-width:122px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-copy .error-log-copy-back{display:none}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-copy-copied .error-log-copy-front{display:none}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-copy-copied .error-log-copy-back{display:inline}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log{padding-top:10px;padding-bottom:10px;display:none}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log.error-log-selection{display:block !important;opacity:0;height:0;padding:0;margin:0}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log pre{margin:0}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content .wrap,.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content .subsubsub{margin:0}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content>h1{color:#2c3337;font-size:20px;font-weight:600;margin:0 0 15px 0;padding:0}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content>p{font-size:14px}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content h1.wp-heading-inline,.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content span.subtitle{display:none}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content hr.wp-header-end{visibility:hidden;margin:-2px 0 0}.wp-mail-smtp-admin-page-body .lity{z-index:999999999;padding:20px}.wp-mail-smtp-admin-page-body .lity-close{margin:10px}.wp-mail-smtp-admin-page-body .lity-content{max-width:80vw;max-height:80vh}.wp-mail-smtp-admin-page-body .lity-content img{max-height:80vh !important;max-width:80vw !important}.wp-mail-smtp-debug-event-preview{text-align:left}.wp-mail-smtp-debug-event-preview h4{margin:15px 0;font-size:18px}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-preview-subtitle{margin-bottom:30px;text-align:center}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-preview-subtitle span{color:#50575e;font-size:16px;line-height:22px}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row{padding:20px 0;border-top:1px solid #ddd;display:flex;justify-content:flex-start;align-items:flex-start;font-size:16px;line-height:22px}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row .debug-event-label{width:60px;margin-right:30px;font-weight:500}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row .debug-event-value{width:calc(100% - 90px)}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row .debug-event-initiator{display:inline-block;margin-bottom:5px}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row .debug-event-code{color:#50575e}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row:last-child{border-bottom:1px solid #ddd}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-preview-content>div{word-break:break-word}[class^=wp-mail-smtp-dashicons]{display:inline-block;width:20px;height:20px}.wp-mail-smtp-dashicons-yes-alt-green{background-image:url("../images/icons/dashicons/dashicons-yes-alt-green.svg")}.wp-mail-smtp-dashicons-pdf-gray{background-image:url("../images/icons/dashicons/dashicons-pdf-grey.svg")} \ No newline at end of file +#wpcontent{padding-left:0 !important;position:relative}@media(max-width: 600px){#wpcontent{padding-top:46px}}@media(max-width: 600px){#wpbody{padding-top:0}}@-webkit-keyframes wp-mail-smtp-fade-in-stop-out{0%,100%{opacity:0}35%{opacity:1}65%{opacity:1}}@keyframes wp-mail-smtp-fade-in-stop-out{0%,100%{opacity:0}35%{opacity:1}65%{opacity:1}}body.wp-mail-smtp-admin-page-body div.jconfirm *,body.wp-mail-smtp-admin-page-body div.jconfirm *::before,body.wp-mail-smtp-admin-page-body div.jconfirm *::after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-bg{background-color:rgba(114,119,124,.75);opacity:1}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box{padding:30px;border-radius:6px;box-shadow:0 3px 6px rgba(0,0,0,.15);border-top-width:4px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-closeIcon{color:rgba(0,0,0,.4);top:8px;right:8px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-closeIcon:hover{color:rgba(0,0,0,.8)}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c{margin:0 0 15px 0;padding:0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-icon-c{margin:0 0 30px;-webkit-transition:none;transition:none;-webkit-transform:none !important;-ms-transform:none !important;transform:none !important}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-icon-c:empty,body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-icon-c i:empty{display:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-title-c .jconfirm-title{display:block;color:#2c3337;font-weight:500;font-size:24px;line-height:29px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content-pane{display:block;margin-bottom:30px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content-pane .jconfirm-content{margin-bottom:0;overflow:inherit}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content{font-size:16px;color:#2c3337;line-height:1.4}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content p{margin:0 0 20px;font-size:16px;line-height:1.5}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content p:last-of-type{margin:0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content p.large{font-size:18px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content p.small{font-size:14px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content .wp-mail-smtp-debug-event-preview p{font-size:14px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content .wp-mail-smtp-btn{font-weight:600;text-transform:uppercase;-webkit-transition:background .1s;transition:background .1s;padding:10px 20px;outline:none;display:inline-block;font-size:14px;line-height:1.4;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:4px;min-height:1em;-webkit-tap-highlight-color:rgba(0,0,0,0);border:0;background-image:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-content .wp-mail-smtp-btn.with-loader{padding:12px 12px 7px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons{padding:0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button{transition:.2s;box-shadow:none;margin:0 10px 0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button:hover{box-shadow:inset 0 0 0 100px rgba(0,0,0,.1)}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-confirm{color:#fff;outline:none;border:1px solid #e27730;background-color:#e27730}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-cancel{color:#777;outline:none;background:#f8f8f8;border:1px solid #ccc}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button,body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-default{color:#666}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-hide{display:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-block{display:block;text-align:center;width:100%;margin:0 0 10px 0 !important}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box div.jconfirm-buttons button.btn-normal-case{text-transform:none !important}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-green{border-color:#00a32a}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-green div.jconfirm-buttons button.btn-confirm{background-color:#00a32a;border-color:#00a32a}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-orange{border-color:#e27730}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-orange div.jconfirm-buttons button.btn-confirm{background-color:#e27730;border-color:#e27730}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-red{border-color:#d63638}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-red div.jconfirm-buttons button.btn-confirm{background-color:#d63638;border-color:#d63638}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-blue{border-color:#3582c4}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.jconfirm-type-blue div.jconfirm-buttons button.btn-confirm{background-color:#3582c4;border-color:#3582c4}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading{border-top-color:#fff !important;height:160px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading .jconfirm-title-c{display:block !important;position:relative;z-index:4}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading .jconfirm-title-c .jconfirm-icon-c{display:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading:before{z-index:2}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.loading:after{content:"";position:absolute;left:50%;top:68%;margin-left:-20px;height:40px;width:40px;border:solid 6px rgba(0,0,0,0);border-bottom-color:#e27730;opacity:1;z-index:3}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal{padding:30px 30px 15px;border-top:none}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-title-c{margin:0 0 26px 0;padding:0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-title-c .jconfirm-icon-c{margin-bottom:20px;color:#c4c4c4 !important}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-title-c .jconfirm-icon-c svg{height:35px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-content-pane{margin-bottom:25px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal div.jconfirm-buttons button.btn-confirm{background-color:#e27730;border-color:#e27730}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note{text-align:center;margin:45px 0 0}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note p{background-color:#fcf9e8;margin:0 -30px;padding:24px 60px 20px;font-size:15px;color:#4d4d4d;position:relative}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note p:after{content:url(../images/font-awesome/check-circle-solid-green.svg);width:40px;height:40px;background-color:#fff;border-radius:50%;padding:5px 6px;position:absolute;top:-20px;right:50%;margin-right:-18px}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note span{font-weight:600;color:#00a32a}body.wp-mail-smtp-admin-page-body div.jconfirm .jconfirm-box.wp-mail-smtp-upgrade-mailer-education-modal .discount-note a{color:#aaa;display:block;margin-top:12px}@media screen and (max-width: 1023px){#wp-mail-smtp-notice-bar{display:none !important}}#wp-mail-smtp-notice-bar{max-height:35px;position:relative;margin-bottom:-3px;transition:all .3s ease-out;overflow:hidden}#wp-mail-smtp-notice-bar.out{max-height:3px}#wp-mail-smtp-notice-bar .wp-mail-smtp-notice-bar-container{background-color:#ddd;border-top:3px solid #e27730;color:#50575e;text-align:center;padding:7px}#wp-mail-smtp-notice-bar a{color:#e27730}#wp-mail-smtp-notice-bar a:hover{color:#b85a1b}#wp-mail-smtp-notice-bar .dismiss{position:absolute;top:0;right:0;border:none;padding:5px;margin-top:4px;background:0 0;color:#72777c;cursor:pointer}#wp-mail-smtp-notice-bar .dismiss:before{background:0 0;color:#72777c;content:"";display:block;font:normal 20px/20px dashicons;speak:none;height:20px;text-align:center;width:20px;-webkit-font-smoothing:antialiased}#screen-meta-links .screen-meta-toggle{position:absolute;right:20px;top:auto}#wp-mail-smtp .wp-mail-smtp-product-education__row{border-bottom:1px solid #e4e4e4;padding:25px 0 5px;font-size:14px;line-height:1.3;max-width:1005px}#wp-mail-smtp .wp-mail-smtp-product-education__row>*:last-child{border-bottom:none !important}#wp-mail-smtp .wp-mail-smtp-product-education__row--inactive{opacity:.5;pointer-events:none}#wp-mail-smtp .wp-mail-smtp-product-education__row--full-width{max-width:unset}#wp-mail-smtp .wp-mail-smtp-product-education__row--no-border{border-bottom:none !important}#wp-mail-smtp .wp-mail-smtp-product-education__row--no-padding{padding:0 !important}#wp-mail-smtp .wp-mail-smtp-product-education__row:first-of-type{padding-top:10px}#wp-mail-smtp .wp-mail-smtp-product-education__row:last-of-type+.wp-mail-smtp-btn-upgrade{margin-top:25px}#wp-mail-smtp .wp-mail-smtp-product-education__heading{display:flex;align-items:center;margin-top:0;margin-bottom:10px;font-size:20px;line-height:24px;color:#2c3337}#wp-mail-smtp .wp-mail-smtp-product-education__heading:after{content:"";margin-left:10px;background-image:url("../images/pro-badge-small.svg");background-size:contain;background-repeat:no-repeat;width:35px;height:16px}#wp-mail-smtp .wp-mail-smtp-product-education__description{margin-top:0;margin-bottom:20px;color:#50575e;font-size:14px;line-height:1.5em}#wp-mail-smtp .wp-mail-smtp-product-education__upgrade-btn--top{margin-bottom:20px}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots{display:flex;flex-wrap:wrap}@media(max-width: 599px){#wp-mail-smtp .wp-mail-smtp-product-education__screenshots{flex-direction:column}}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div{display:flex;flex-direction:column;align-items:center;margin:0 25px 20px 0}@media(max-width: 599px){#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div{margin-right:0;max-width:unset !important}}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div:last-child{margin-right:0}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div a{position:relative;margin-bottom:10px;background:#fff;border:5px solid #fff;box-sizing:border-box;border-radius:4px}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div a:after{content:"";position:absolute;opacity:0;height:100%;width:100%;top:0;left:0;background-color:rgba(68,68,68,.15);background-image:url("../../assets/images/icons/zoom.svg");background-repeat:no-repeat;background-position:center;background-size:50px;transition:all .3s}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div a:hover:after{opacity:1}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div img{display:block;max-width:100%;height:auto}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots>div span{font-size:14px;line-height:18px;text-align:center;color:#50575e}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots--two>div{max-width:487px}#wp-mail-smtp .wp-mail-smtp-product-education__screenshots--three>div{max-width:316px}#wp-mail-smtp .wp-mail-smtp-product-education__list>h4{margin-top:0;margin-bottom:20px;font-size:16px;line-height:20px;color:#2c3337}#wp-mail-smtp .wp-mail-smtp-product-education__list>div{display:flex;flex-wrap:wrap}#wp-mail-smtp .wp-mail-smtp-product-education__list ul{width:290px;margin:0 40px 20px 0}#wp-mail-smtp .wp-mail-smtp-product-education__list ul li{display:flex;align-items:center;font-size:14px;line-height:20px;margin-bottom:0;color:#50575e}#wp-mail-smtp .wp-mail-smtp-product-education__list ul li+li{margin-top:20px}#wp-mail-smtp .wp-mail-smtp-product-education__list ul li:before{content:url("../../assets/images/icons/check-solid.svg");width:16px;margin-right:10px}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section{margin-bottom:20px;cursor:not-allowed}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section:last-of-type{margin-bottom:20px}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section h5{clear:both;margin:0 0 10px 0;color:#2c3337;font-size:16px;font-weight:600}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section label{clear:both;float:left;margin:3px 0 3px 0}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section .wp-mail-smtp-date-selector{width:200px;cursor:pointer}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section .wp-mail-smtp-search-box-field{width:200px}#wp-mail-smtp #wp-mail-smtp-tools-export-email-logs-product-education section .wp-mail-smtp-search-box-term{width:300px}#wp-mail-smtp #wp-mail-smtp-email-controls-product-education .wp-mail-smtp-product-education__row--inactive{padding-top:20px;padding-bottom:0}#wp-mail-smtp #wp-mail-smtp-email-controls-product-education .wp-mail-smtp-setting-row:last-child{border-bottom:none}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu h2{display:inline-block;vertical-align:middle}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .badge{margin:0 0 2px 7px;vertical-align:middle;width:40px;height:17px}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .wp-mail-smtp-setting-row-multisite{color:#9a9a9a}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .wp-mail-smtp-setting-row-multisite p.desc{color:#bababa}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .wp-mail-smtp-setting-row-multisite input[type=checkbox]:disabled{border-color:#aaa}#wp-mail-smtp .wp-mail-smtp-page-nw-product-edu .wp-mail-smtp-setting-row-no-setting{margin-top:30px}.wp-mail-smtp-lite #wp-mail-smtp .wp-mail-smtp-page-reports .wp-mail-smtp-page-title .page-title{position:relative}.wp-mail-smtp-lite #wp-mail-smtp .wp-mail-smtp-page-reports .wp-mail-smtp-page-title .page-title:after{content:"";display:inline-block;margin-left:10px;background-image:url("../images/pro-badge-small.svg");background-size:contain;background-repeat:no-repeat;width:35px;height:16px}.wp-mail-smtp-lite #wp-mail-smtp #wp-mail-smtp-setting-row-gmail-one_click_setup_enabled-lite .wp-mail-smtp-toggle::after,.wp-mail-smtp-lite #wp-mail-smtp #wp-mail-smtp-setting-row-misc-rate_limit-lite .wp-mail-smtp-toggle::after{content:"";margin-left:10px;background-image:url("../images/pro-badge-small.svg");background-size:contain;background-repeat:no-repeat;width:35px;height:16px}.wp-mail-smtp-loading{animation:.65s linear infinite wp-mail-smtp-loading-spin}.wp-mail-smtp-loading-md{width:32px;height:32px}.wp-mail-smtp-loading-sm{width:16px;height:16px}.wp-mail-smtp-loading-spin{position:relative;color:rgba(0,0,0,0) !important;pointer-events:none}.wp-mail-smtp-loading-spin:after{position:absolute;box-sizing:border-box;animation:.65s linear infinite wp-mail-smtp-loading-spin;border:2px solid #fff;border-radius:50%;border-right-color:rgba(0,0,0,0) !important;border-top-color:rgba(0,0,0,0) !important;content:"";display:block;top:50%;left:50%;width:16px;height:16px;margin-top:-8px;margin-left:-8px}@keyframes wp-mail-smtp-loading-spin{0%{transform:rotateZ(270deg)}100%{transform:rotateZ(630deg)}}#wp-mail-smtp-flyout{position:fixed;z-index:99999;transition:all .2s ease-in-out;right:40px;bottom:40px;opacity:1}@media(max-width: 959px){#wp-mail-smtp-flyout{display:none}}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head{display:block}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head:focus{box-shadow:none}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head figure{margin:0;border-radius:50%;border:3px solid #e27730;overflow:hidden;box-shadow:0 2px 20px rgba(0,0,0,.15);background-color:#fff;transition:all .2s ease-in-out}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head figure img{display:block;width:54px;height:54px;transition:all .2s ease-in-out}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head:hover figure{box-shadow:0 2px 30px rgba(0,0,0,.2)}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head .wp-mail-smtp-flyout-label{right:calc(100% + 15px);opacity:0;transform:translateY(-50%) scale(0);margin-right:-50px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-head:hover .wp-mail-smtp-flyout-label{opacity:1;transform:translateY(-50%) scale(1);margin-right:0}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-label{position:absolute;display:block;top:50%;right:calc(100% + 15px);transform:translateY(-50%);-moz-transform:translateY(-50%);-webkit-transform:translateY(-50%);color:#fff;background-color:#a7aaad;font-size:12px;white-space:nowrap;padding:6px 10px;height:auto !important;line-height:initial;transition:all .2s ease-out;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item{position:absolute;display:flex;left:10px;width:40px;height:40px;opacity:0;visibility:hidden;transition:all .2s ease-in-out;transform:scale(0);border-radius:50%;box-shadow:0px 2px 10px rgba(0,0,0,.15);background-color:#738e9e}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item img{margin:auto}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-0{bottom:75px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-1{bottom:130px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-2{bottom:185px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-3{bottom:240px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item.wp-mail-smtp-flyout-item-4{bottom:295px}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item:hover{background-color:#395360}#wp-mail-smtp-flyout .wp-mail-smtp-flyout-item:hover .wp-mail-smtp-flyout-label{background-color:#787c82}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item{opacity:1;visibility:visible;transform:scale(1)}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-head .wp-mail-smtp-flyout-label{display:none}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-head figure img{transform:rotate(-15deg) scale(1.17)}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-0{transition:transform .2s 0ms,background-color .2s}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-1{transition:transform .2s 35ms,background-color .2s}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-2{transition:transform .2s 70ms,background-color .2s}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-3{transition:transform .2s 105ms,background-color .2s}#wp-mail-smtp-flyout.opened .wp-mail-smtp-flyout-item-4{transition:transform .2s 140ms,background-color .2s}#wp-mail-smtp-flyout.out{opacity:0;visibility:hidden}.wp-mail-smtp-tooltip{position:relative;display:inline-block;text-decoration:underline;text-decoration-style:dotted;cursor:help;color:#50575e;margin-top:15px !important}.wp-mail-smtp-tooltip-text{visibility:hidden;position:absolute;z-index:9999;width:360px;background-color:#2d4f60;color:#fff;text-align:center;padding:16px 20px;font-size:14px;border-radius:5px;bottom:100%;left:50%;margin-left:-180px}.wp-mail-smtp-tooltip-text::after{content:" ";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#2d4f60 rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0)}.wp-mail-smtp-tooltip:hover .wp-mail-smtp-tooltip-text{visibility:visible}#wp-mail-smtp .wp-mail-smtp-conditional button{cursor:pointer}#wp-mail-smtp .wp-mail-smtp-conditional table{width:100%;max-width:740px;padding:0;margin:0;border-collapse:collapse;border-spacing:0;font-size:13px}#wp-mail-smtp .wp-mail-smtp-conditional table td{padding:0 10px 20px 0}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-conditional__row{display:flex;flex-direction:column}}#wp-mail-smtp .wp-mail-smtp-conditional__row input,#wp-mail-smtp .wp-mail-smtp-conditional__row select{width:100% !important;max-width:100%;margin:0;text-overflow:ellipsis}#wp-mail-smtp .wp-mail-smtp-conditional__property-col{width:23%}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-conditional__property-col{width:100%}}#wp-mail-smtp .wp-mail-smtp-conditional__operator-col{width:23%}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-conditional__operator-col{width:100%}}#wp-mail-smtp .wp-mail-smtp-conditional__value-col{width:42%}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-conditional__value-col{width:100%}}#wp-mail-smtp .wp-mail-smtp-conditional__value :disabled{background-color:#f1f1f1;cursor:not-allowed}#wp-mail-smtp .wp-mail-smtp-conditional__actions{display:flex;align-items:center;padding-right:0}#wp-mail-smtp .wp-mail-smtp-conditional__delete-rule{background-color:rgba(0,0,0,0);border:none;color:#999;margin:0 0 0 10px;padding:0;vertical-align:middle}#wp-mail-smtp .wp-mail-smtp-conditional__delete-rule:hover{color:#d63638}#wp-mail-smtp .wp-mail-smtp-conditional__group-delimiter{margin:0 0 20px;font-size:14px;font-style:italic;font-weight:400;line-height:17px;color:#646970}.wp-mail-smtp-toggle{vertical-align:middle;display:inline-flex;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.wp-mail-smtp-toggle__switch{position:relative;width:27px;height:17px;flex-shrink:0;cursor:pointer;background-color:#ccc;border-radius:10px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wp-mail-smtp-toggle__switch:before{position:absolute;content:"";height:13px;width:13px;left:2px;top:2px;background-color:#fff;border-radius:50%;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wp-mail-smtp-toggle__label{display:none;margin-left:10px;font-weight:400;font-size:13px;line-height:15px;color:#50575e;text-transform:uppercase}.wp-mail-smtp-toggle__label--static{display:block;text-transform:none}.wp-mail-smtp-toggle input[type=checkbox]{position:absolute;top:auto;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;white-space:nowrap}.wp-mail-smtp-toggle input[type=checkbox]:not(:checked):hover+.wp-mail-smtp-toggle__switch,.wp-mail-smtp-toggle input[type=checkbox]:not(:checked):focus+.wp-mail-smtp-toggle__switch{box-shadow:0 0 0 1px #fff,0 0 0 3px #999;background-color:#999}.wp-mail-smtp-toggle input[type=checkbox]:not(:checked)~.wp-mail-smtp-toggle__label--unchecked{display:block}.wp-mail-smtp-toggle input[type=checkbox]:checked+.wp-mail-smtp-toggle__switch{background-color:#00a32a}.wp-mail-smtp-toggle input[type=checkbox]:checked+.wp-mail-smtp-toggle__switch:before{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}.wp-mail-smtp-toggle input[type=checkbox]:checked:hover+.wp-mail-smtp-toggle__switch,.wp-mail-smtp-toggle input[type=checkbox]:checked:focus+.wp-mail-smtp-toggle__switch{box-shadow:0 0 0 1px #fff,0 0 0 3px #00a32a}.wp-mail-smtp-toggle input[type=checkbox]:checked~.wp-mail-smtp-toggle__label--checked{display:block}.wp-mail-smtp-toggle input[type=checkbox]:disabled:hover+.wp-mail-smtp-toggle__switch,.wp-mail-smtp-toggle input[type=checkbox]:disabled:focus+.wp-mail-smtp-toggle__switch{box-shadow:none}.wp-mail-smtp-toggle input[type=checkbox]:disabled~*{opacity:.5;cursor:default}.wp-mail-smtp-admin-page-body #wpbody-content{padding-bottom:200px}@media(max-width: 782px){.wp-mail-smtp-admin-page-body #wpbody-content{padding-bottom:0 !important}}.wp-mail-smtp-admin-page-body #wpfooter a{color:#2171b1 !important}.wp-mail-smtp-admin-page-body #wpfooter a:hover,.wp-mail-smtp-admin-page-body #wpfooter a:active{color:#135e96 !important}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion{text-align:center;font-weight:400;font-size:13px;line-height:normal;color:#646970;padding:30px 0;margin-bottom:20px}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion p{font-weight:600}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links,.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social{display:flex;justify-content:center;align-items:center}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links{margin:10px 0;color:#646970}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links a{color:#04558a}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links a:hover{color:#04558a}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-links span{color:#c3c4c7;padding:0 7px}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social{gap:10px;margin:0}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social li{margin-bottom:0}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social li path{color:#646970}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social li:hover path{fill:#50575e}.wp-mail-smtp-admin-page-body #wpfooter .wp-mail-smtp-footer-promotion-social a{display:block;height:16px}.wp-mail-smtp-admin-page-body #wpfooter #footer-left{color:#50575e;font-size:13px;font-style:normal;font-weight:400;line-height:normal}.wp-mail-smtp-admin-page-body #wpfooter #footer-left strong{font-weight:600}#screen-meta-links,#screen-meta{display:none}#wp-mail-smtp-header-temp{position:absolute;margin:0;top:-1px;left:20px;right:0;z-index:99}#wp-mail-smtp-header{border-top:3px solid #e27730;padding:24px 20px}#wp-mail-smtp-header img{display:block;margin:0;max-width:242px}@media(max-width: 782px){#wp-mail-smtp-header img{max-width:200px}}.wp-mail-smtp-page{color:#2c3337}.wp-mail-smtp-page a{color:#2171b1}.wp-mail-smtp-page a:hover,.wp-mail-smtp-page a:active{color:#135e96}#wp-mail-smtp{margin:0}#wp-mail-smtp .wp-mail-smtp-hide{display:none}#wp-mail-smtp .wp-mail-smtp-page-title{min-height:58px;background-color:#fff;font-size:14px;margin:0 0 20px 0;padding:0 20px}#wp-mail-smtp .wp-mail-smtp-page-title a.tab{border-bottom:3px solid #fff;box-shadow:none;color:#666;display:inline-block;margin-right:30px;padding:20px 0 17px 0;text-decoration:none}#wp-mail-smtp .wp-mail-smtp-page-title a.tab.active{border-color:#e27730}#wp-mail-smtp .wp-mail-smtp-page-title a.tab:hover{border-color:#999}#wp-mail-smtp .wp-mail-smtp-page-title a.action{color:#fff;font-weight:600;margin:14px 0 14px 10px;line-height:28px;min-height:30px;vertical-align:top}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-page-title a.action{margin-left:0}}#wp-mail-smtp .wp-mail-smtp-page-title .page-title{background-color:#fff;display:inline-block;font-size:23px;margin:0;padding:20px 20px 20px 0}#wp-mail-smtp .wp-mail-smtp-page-content{padding:0 20px}#wp-mail-smtp .wp-mail-smtp-page-content *,#wp-mail-smtp .wp-mail-smtp-page-content *::before,#wp-mail-smtp .wp-mail-smtp-page-content *::after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-clear:before{content:" ";display:table}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-clear:after{clear:both;content:" ";display:table}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row{border-bottom:1px solid #e4e4e4;padding:30px 0;font-size:14px;line-height:1.3}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row:first-of-type{padding-top:10px !important}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row{padding:20px 0}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.inactive{display:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row .wp-mail-smtp-setting-mid-row-sep{background:#e4e4e4;height:1px;border:0;margin:15px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading{padding:20px 0 10px;border-bottom:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading.no-desc h2,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading.no-desc h4{margin:0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading.wp-mail-smtp-section-heading--has-divider{padding:20px 0 30px;border-bottom:1px solid #e4e4e4}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading .wp-mail-smtp-setting-field{margin:0;max-width:1005px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.section-heading .desc{font-style:normal}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-checkbox input[type=checkbox]{float:left;margin:1px 0 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-checkbox input[type=checkbox]+label{margin:0 0 0 8px;vertical-align:baseline}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-checkbox .desc{margin:0 0 0 30px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-checkbox input[type=checkbox]+label+.desc{margin:8px 0 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-text .wp-mail-smtp-setting-label,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-password .wp-mail-smtp-setting-label,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-number .wp-mail-smtp-setting-label,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-email .wp-mail-smtp-setting-label{padding-top:8px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-select .wp-mail-smtp-setting-label{padding-top:8px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-radio .wp-mail-smtp-setting-field input[type=radio]{margin:-3px 10px 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-radio .wp-mail-smtp-setting-field label{margin-right:30px;display:inline-block}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-no-border{border-bottom:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-no-padding{padding:0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer{padding-bottom:20px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer{display:inline-block;width:140px;margin-right:12px;margin-bottom:12px;position:relative}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer .wp-mail-smtp-mailer-image{background:#fff;text-align:center;border:2px solid #e5e5e5;border-radius:4px;cursor:pointer;height:76px;position:relative;margin-bottom:10px;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer .wp-mail-smtp-mailer-image.is-recommended{background-image:url(../images/recommended.svg);background-repeat:no-repeat;background-size:60%;background-position:top right -2px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer .wp-mail-smtp-mailer-image img{max-width:80%;max-height:40px;display:block;position:relative;top:50%;left:50%;transform:translate(-50%, -50%);opacity:.6;-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s ease-in-out;-ms-transition:all .2s ease-in-out;transition:all .2s ease-in-out}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer.wp-mail-smtp-mailer-smtp .wp-mail-smtp-mailer-image img{max-height:30px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer.active .wp-mail-smtp-mailer-image{border-color:#e27730}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer.active .wp-mail-smtp-mailer-image img{opacity:1}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer:hover .wp-mail-smtp-mailer-image{border-color:#ccc}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-mailer .wp-mail-smtp-mailers .wp-mail-smtp-mailer:hover .wp-mail-smtp-mailer-image img{opacity:1}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert{padding-top:20px;padding-bottom:25px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .wp-mail-smtp-setting-row{border:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .section-heading{margin-bottom:25px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .section-heading h3{margin-bottom:10px;font-weight:500;font-size:18px;line-height:22px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .section-heading .notice{margin-top:20px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .section-heading .notice p{margin:6.5px 0;font-size:13px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .wp-mail-smtp-setting-row{padding:0 !important}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .wp-mail-smtp-setting-row+.wp-mail-smtp-setting-row{margin-top:20px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .wp-mail-smtp-setting-label label{font-weight:500}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .dashicons-trash{position:relative;top:6px;color:#a7aaad;cursor:pointer;transition:.2s}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row.wp-mail-smtp-setting-row-alert .dashicons-trash:hover{color:#d63638}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row#wp-mail-smtp-setting-row-alerts-twilio_sms .wp-mail-smtp-setting-row-alert-connection-options{position:relative}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row#wp-mail-smtp-setting-row-alerts-twilio_sms .wp-mail-smtp-setting-row-alert-connection-options+.wp-mail-smtp-setting-row-alert-connection-options:before{content:"";display:block;max-width:605px;height:1px;margin-bottom:20px;background-color:#dcdcde}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h2,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h4{color:#2c3337;font-size:20px;font-weight:600;margin:0 0 6px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h2{margin-bottom:15px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h3{color:#2c3337;font-size:24px;font-weight:600;margin:0 0 20px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row h5{color:#2c3337;font-size:16px;font-weight:600;margin:0 0 20px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p{margin:12px 0 0;font-size:14px;line-height:1.5em}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p:first-of-type{margin:8px 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.desc{margin:10px 0 0;font-style:italic;color:#50575e}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.desc+.desc{font-style:normal}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.buttonned{margin-top:30px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice{margin:5px 0 15px;box-sizing:border-box;background:#fff;border-left:4px solid rgba(0,0,0,0);box-shadow:0 1px 1px 0 rgba(0,0,0,.1)}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice.inline-error{border-color:#d63638;margin-bottom:5px;padding:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice.inline-info{border-color:#2171b1;margin-bottom:5px;padding:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice.inline-edu-notice{border-color:#809eb0;line-height:1.5em;padding:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice a.wp-mail-smtp-mailer-notice-dismiss{float:right;color:#999da1;margin:0 0 10px 10px;text-decoration:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row p.inline-notice a.wp-mail-smtp-mailer-notice-dismiss:hover{color:#666a6e}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row ul{margin:8px 0 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row ul.list li{margin-left:20px;list-style-type:disc}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list th{padding:5px 5px 5px 0;text-align:left}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.email{padding-right:2em}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.status{width:100px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a{border-bottom:1px solid;display:inline-block;margin-right:5px;text-decoration:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=delete],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=error]{color:#d63638}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=delete]:hover,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=delete]:active,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=delete]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=error]:hover,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=error]:active,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row table.actions-list td.actions a[class*=error]:focus{color:#8a1c1d}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select{background-color:#fff;border:1px solid #8d8f95;border-radius:4px;box-shadow:none;color:#2c3337;display:inline-block;vertical-align:middle;padding:7px 12px;margin:0 10px 0 0;width:400px;min-height:36px;line-height:1.3}@media(max-width: 959px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select{width:300px}}@media(max-width: 599px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select{width:100%;max-width:unset;margin-right:0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text]~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text]~.wp-mail-smtp-btn,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email]~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email]~.wp-mail-smtp-btn,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number]~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number]~.wp-mail-smtp-btn,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password]~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password]~.wp-mail-smtp-btn,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select~button,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select~.wp-mail-smtp-btn{margin-top:8px}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text][readonly],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email][readonly],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number][readonly],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password][readonly],#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select[readonly]{background-color:#f9f9f9}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text].small-text,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email].small-text,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number].small-text,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password].small-text,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select.small-text{width:75px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select:focus{border:1px solid #016aab;box-shadow:0 0 0 1px #016aab;outline:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=text]:disabled,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=email]:disabled,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=number]:disabled,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=password]:disabled,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row select:disabled{opacity:.6}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=checkbox]:focus,#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row input[type=radio]:focus{border:1px solid #016aab;box-shadow:0 0 0 1px #016aab;outline:none}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row .wp-mail-smtp-dashicons-yes-alt-green.wp-mail-smtp-animate{-webkit-animation:wp-mail-smtp-fade-in-stop-out 1s linear;animation:wp-mail-smtp-fade-in-stop-out 1s linear}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-row .wp-mail-smtp-dashicons-yes-alt-green.wp-mail-smtp-success{color:#00a32a}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group{border-bottom:1px solid #e4e4e4;padding:0 0 30px}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group{padding:0 0 20px}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group:first-of-type{padding-top:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group .wp-mail-smtp-setting-row{border:none;padding:30px 0 0 !important}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-group .wp-mail-smtp-setting-row{padding:20px 0 0}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-label{display:block;float:left;width:205px;padding:0 20px 0 0}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-label{float:none;width:100%;padding-bottom:15px}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-label label{display:block;font-weight:600}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field{display:block;margin:0 0 0 205px;max-width:800px}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field{margin:0}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field hr{margin:20px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field .wp-mail-smtp-setting-field-row{display:flex;flex-wrap:wrap}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-setting-field .wp-mail-smtp-setting-field-row>.wp-mail-smtp-btn+.wp-mail-smtp-btn{margin-left:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-submit{margin:0;padding:25px 0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-submit .help-text{margin-left:10px;vertical-align:middle}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-mailer-option .wp-mail-smtp-setting-row.section-heading{padding:20px 0 !important}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-mailer-option blockquote{background:#e5e5e5;border-radius:4px;color:#666;font-size:14px;margin:20px 0;padding:15px;max-width:1005px;width:100%}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-connected-row{display:flex;align-items:center}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-connected-row{flex-direction:column;align-items:flex-start}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-connected-row__info{margin-left:30px}@media(max-width: 781px){#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options .wp-mail-smtp-connected-row__info{margin-left:0;margin-top:10px}}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options p.inline-notice{margin-top:10px}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options p.inline-notice:first-child{margin-top:0}#wp-mail-smtp .wp-mail-smtp-page-content .wp-mail-smtp-mailer-options p.inline-notice:last-child{margin-bottom:0}#wp-mail-smtp .wp-mail-smtp-page-content.wp-mail-smtp-page-general p{margin:0}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline{background:#fff;border-left:4px solid #fff;box-shadow:0 1px 1px 0 rgba(0,0,0,.1);margin:5px 0 15px;padding:1px 12px}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline.notice-success{border-left-color:#00a32a}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline.notice-warning{border-left-color:#ffb900}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline.notice-error{border-left-color:#d63638}#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline.notice-info{border-left-color:#00a0d2}#wp-mail-smtp .wp-mail-smtp-page-content .notice p,#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline p,#wp-mail-smtp .wp-mail-smtp-page-content .notice p:first-of-type,#wp-mail-smtp .wp-mail-smtp-page-content .notice-inline p:first-of-type{margin:.5em 0;padding:2px}#wp-mail-smtp .wp-mail-smtp-page-content pre{white-space:pre-line}#wp-mail-smtp .wp-mail-smtp-page-content.active{display:block}#wp-mail-smtp .wp-mail-smtp-page-content .connected-as{margin-left:30px}@media(max-width: 599px){#wp-mail-smtp .wp-mail-smtp-page-content .connected-as{display:block;margin-left:0;margin-top:8px}}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner{background-color:#fff;padding:25px 20px;border:1px solid #dadada;margin:10px 0 0 0;position:relative}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .wp-mail-smtp-pro-banner-dismiss{position:absolute;right:10px;top:10px}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .wp-mail-smtp-pro-banner-dismiss button{background:none;border:none;color:#a9a9a9;cursor:pointer;margin:0;padding:0}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner h2{color:#2c3337;margin-top:0;font-size:16px;font-weight:600}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner p{font-size:14px;color:#50575e;margin-bottom:1.1em}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner p:last-of-type{margin:0}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits{margin:0 0 16px 0;overflow:auto;max-width:1000px}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul{margin:0;padding:0;width:50%;float:left}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul{width:100%;float:none}}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul li{margin:0;padding:0 0 2px 16px;color:#50575e;font-size:14px;position:relative}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul li:before{content:"+";position:absolute;top:-1px;left:0}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .benefits ul li.arrow-right:before{content:"→"}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner a{color:#e27730}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner a:hover,#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner a:active,#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner a:focus{color:#b85a1b}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .stars{text-decoration:none}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .stars .dashicons{width:16px;height:16px;font-size:16px;vertical-align:text-top}#wp-mail-smtp .wp-mail-smtp-page-content #wp-mail-smtp-pro-banner .price-off{color:#00a32a;font-weight:600}#wp-mail-smtp .wp-mail-smtp-admin-columns>div[class*=-column-]{float:left}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-20{width:20%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-33{width:33.33333%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-40{width:40%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-50{width:50%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-60{width:60%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-80{width:80%}#wp-mail-smtp .wp-mail-smtp-admin-columns .wp-mail-smtp-admin-column-last{float:right !important}#wp-mail-smtp .wp-mail-smtp-admin-columns:after{content:"";display:table;clear:both}#wp-mail-smtp .notice blockquote{margin-left:0;padding:2px}#wp-mail-smtp .notice blockquote pre{margin:0;white-space:pre-line}#wp-mail-smtp #wp-mail-smtp-reset-filter{clear:both;margin:20px 0;padding:10px;font-size:15px;text-align:center;background:#fff;border:1px solid #ccd0d4;box-shadow:0 1px 1px rgba(0,0,0,.04)}#wp-mail-smtp #wp-mail-smtp-reset-filter a{text-decoration:none}#wp-mail-smtp #wp-mail-smtp-reset-filter .reset{cursor:pointer;color:#a6a6a6;font-size:15px;line-height:18px;width:18px;height:18px}#wp-mail-smtp #wp-mail-smtp-reset-filter .reset:focus,#wp-mail-smtp #wp-mail-smtp-reset-filter .reset:hover{color:#d63638}@media(min-width: 783px){#wp-mail-smtp .wp-mail-smtp-tab-tools-debug-events th#event{width:130px}#wp-mail-smtp .wp-mail-smtp-tab-tools-debug-events th#type{width:80px}#wp-mail-smtp .wp-mail-smtp-tab-tools-debug-events th#initiator{width:20%}#wp-mail-smtp .wp-mail-smtp-tab-tools-debug-events th#created_at{width:200px}}#wp-mail-smtp .wp-mail-smtp-tab-misc #wp-mail-smtp-setting-row-rate_limit_periods input[type=number]{width:100px}#wp-mail-smtp .wp-mail-smtp-tab-misc #wp-mail-smtp-setting-row-uninstall .wp-mail-smtp-danger{font-weight:600;color:#d63638}@media(max-width: 782px){#wp-mail-smtp .wp-mail-smtp-filter-date{display:flex !important;flex-direction:column;align-items:flex-start;float:none;width:100%;padding-right:0;margin-bottom:10px;max-width:600px}}#wp-mail-smtp .wp-mail-smtp-filter-date__control{float:left;margin:0 5px 0 0;min-height:30px;background-color:#fff;vertical-align:middle;max-width:210px}@media(max-width: 782px){#wp-mail-smtp .wp-mail-smtp-filter-date__control{flex-grow:1;width:100%;max-width:none;min-height:40px;margin-right:0;margin-bottom:5px}}#wp-mail-smtp .wp-mail-smtp-filter-date__btn{margin:0;vertical-align:top}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn{display:inline-flex;align-items:center;background-color:#4285f4;border-radius:2px;box-shadow:0 2px 4px 0 rgba(0,0,0,.25);transition:all 300ms ease-in-out;text-decoration:none;cursor:pointer;color:#fff}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn:hover{box-shadow:0 0 3px 3px rgba(66,133,244,.3)}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn:active{background:#3367d6}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn--disabled{pointer-events:none;background-color:#d4d3d3;box-shadow:none;color:#7f7f7f}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn--disabled .wp-mail-smtp-google-sign-in-icon__border,#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn--disabled .wp-mail-smtp-google-sign-in-icon__bg{fill:#d4d3d3}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn--disabled .wp-mail-smtp-google-sign-in-icon__symbol{fill:#7f7f7f}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn__icon{overflow:hidden;border-radius:2px}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn__icon svg{display:block;margin:-3px}#wp-mail-smtp .wp-mail-smtp-google-sign-in-btn__text{font-size:14px;font-weight:600;margin:0 10px}.wp-mail-smtp-btn{border:0;border-radius:3px;cursor:pointer;display:inline-block;margin:0;text-decoration:none;text-align:center;vertical-align:middle;white-space:nowrap;text-shadow:none;box-shadow:none;outline:none}.wp-mail-smtp-btn .dashicons{font-size:16px;width:16px;height:16px}.wp-mail-smtp-btn+.wp-mail-smtp-btn{margin-left:16px}.wp-mail-smtp-btn:disabled{opacity:.5;cursor:not-allowed}.wp-mail-smtp-btn.wp-mail-smtp-btn-md{font-size:14px;font-weight:500;padding:9px 15px;min-height:36px;line-height:16px;border-width:1px;border-style:solid}.wp-mail-smtp-btn.wp-mail-smtp-btn-lg{font-size:16px;font-weight:600;padding:16px 28px}.wp-mail-smtp-btn.wp-mail-smtp-btn-upgrade,.wp-mail-smtp-btn.wp-mail-smtp-btn-cta{font-size:16px;line-height:20px;font-weight:500;padding:14px 30px}.wp-mail-smtp-btn.wp-mail-smtp-btn-orange{background-color:#e27730;border-color:#e27730;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-orange:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-orange:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-orange:focus{background-color:#b85a1b;border-color:#b85a1b;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-orange:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #b85a1b}.wp-mail-smtp-btn.wp-mail-smtp-btn-red{background-color:#d63638;border-color:#d63638;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-red:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-red:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-red:focus{background-color:#b32d2e;border-color:#b32d2e;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-red:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #b32d2e}.wp-mail-smtp-btn.wp-mail-smtp-btn-grey{background-color:#f8f8f8;border-color:#999;color:#555}.wp-mail-smtp-btn.wp-mail-smtp-btn-grey:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-grey:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-grey:focus{background-color:#eee;border-color:#555;color:#444}.wp-mail-smtp-btn.wp-mail-smtp-btn-light-grey{background-color:#f5f5f5;border-color:#ccc;color:#666}.wp-mail-smtp-btn.wp-mail-smtp-btn-light-grey:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-light-grey:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-light-grey:focus{background-color:#eee;color:#444}.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish{background-color:#738e9e;border-color:#738e9e;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish:hover,.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish:active,.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish:focus{background-color:#395360;border-color:#395360;color:#fff}.wp-mail-smtp-btn.wp-mail-smtp-btn-blueish:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px #395360}a.wp-mail-smtp-btn.wp-mail-smtp-btn-md{line-height:16px}#wp-mail-smtp-domain-check-details h2{color:#2c3337;font-size:20px;line-height:24px;font-weight:600;margin:28px 0 23px}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item{padding:25px 0;border-top:1px solid #e4e4e4;display:flex}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item:last-child{padding-bottom:0}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item-icon{width:18px;height:16px;margin-right:10px}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item-content h3{text-transform:uppercase;font-weight:500;font-size:14px;line-height:17px;color:#2c3337;margin:0 0 4px 0}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item-content p{color:#50575e;font-size:14px;line-height:20px;margin:0 0 10px 0}#wp-mail-smtp-domain-check-details .wp-mail-smtp-domain-check-details-check-list-item-content p:last-of-type{margin-bottom:0}.wp-mail-smtp-tab-tools-test .wp-mail-smtp-setting-row.section-heading{margin-bottom:22px}.wp-mail-smtp-tab-tools-test .wp-mail-smtp-test-email-resend{padding-top:22px;margin-top:22px;border-top:1px solid #e4e4e4}.wp-mail-smtp-tab-tools-test .wp-mail-smtp-test-email-resend a{font-size:14px;outline:none;box-shadow:none}.wp-mail-smtp-tab-tools-test #email-test-success{margin-top:30px;text-align:center}.wp-mail-smtp-tab-tools-test #email-test-success svg{display:block;max-width:500px;width:100%;height:auto;margin:0 auto 22px}.wp-mail-smtp-tab-tools-test #email-test-success h2{margin-top:0;margin-bottom:10px;font-weight:500;font-size:24px;line-height:29px;color:#2c3337}.wp-mail-smtp-tab-tools-test #email-test-success p{margin-top:0;font-size:16px;line-height:24px;color:#50575e}.wp-mail-smtp-tab-tools-test #email-test-form .wp-mail-smtp-setting-row.section-heading{margin-bottom:0}.wp-mail-smtp-tab-tools-test #email-test-form .wp-mail-smtp-btn{min-width:95px}.wp-mail-smtp-tab-tools-test #email-test-form .wp-mail-smtp-loading{display:none;margin-bottom:-2px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug{margin-top:25px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug h2{margin:20px 0 10px;color:#2c3337;font-size:16px;line-height:20px;font-weight:600}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug p{margin:10px 0;color:#50575e;font-size:14px;line-height:20px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul{list-style-type:disc}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul,.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ol{margin:10px 0 10px 15px;color:#50575e;font-size:14px;line-height:20px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul li,.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ol li{margin:0 0 8px 0}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul li:last-of-type,.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ol li:last-of-type{margin:0}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ul li ul,.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug ol li ul{list-style-type:disc}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .dashicons-star-filled{color:#e27730;width:16px;height:16px;font-size:16px;vertical-align:text-top}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .price-off{color:#00a32a;font-weight:600}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-button-container{margin-bottom:22px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-toggle{float:left;margin-right:10px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-copy{min-width:122px}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-copy .error-log-copy-back{display:none}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-copy-copied .error-log-copy-front{display:none}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log-copy-copied .error-log-copy-back{display:inline}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log{padding-top:10px;padding-bottom:10px;display:none}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log.error-log-selection{display:block !important;opacity:0;height:0;padding:0;margin:0}.wp-mail-smtp-tab-tools-test #wp-mail-smtp-debug .error-log pre{margin:0}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content .wrap,.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content .subsubsub{margin:0}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content>h1{color:#2c3337;font-size:20px;font-weight:600;margin:0 0 15px 0;padding:0}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content>p{font-size:14px}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content h1.wp-heading-inline,.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content span.subtitle{display:none}.wp-mail-smtp-tab-tools-action-scheduler .wp-mail-smtp-page-content hr.wp-header-end{visibility:hidden;margin:-2px 0 0}.wp-mail-smtp-admin-page-body .lity{z-index:999999999;padding:20px}.wp-mail-smtp-admin-page-body .lity-close{margin:10px}.wp-mail-smtp-admin-page-body .lity-content{max-width:80vw;max-height:80vh}.wp-mail-smtp-admin-page-body .lity-content img{max-height:80vh !important;max-width:80vw !important}.wp-mail-smtp-debug-event-preview{text-align:left}.wp-mail-smtp-debug-event-preview h4{margin:15px 0;font-size:18px}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-preview-subtitle{margin-bottom:30px;text-align:center}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-preview-subtitle span{color:#50575e;font-size:16px;line-height:22px}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row{padding:20px 0;border-top:1px solid #ddd;display:flex;justify-content:flex-start;align-items:flex-start;font-size:16px;line-height:22px}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row .debug-event-label{width:60px;margin-right:30px;font-weight:500}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row .debug-event-value{width:calc(100% - 90px)}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row .debug-event-initiator{display:inline-block;margin-bottom:5px}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row .debug-event-code{color:#50575e}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-row:last-child{border-bottom:1px solid #ddd}.wp-mail-smtp-debug-event-preview .wp-mail-smtp-debug-event-preview-content>div{word-break:break-word}[class^=wp-mail-smtp-dashicons]{display:inline-block;width:20px;height:20px}.wp-mail-smtp-dashicons-yes-alt-green{background-image:url("../images/icons/dashicons/dashicons-yes-alt-green.svg")}.wp-mail-smtp-dashicons-pdf-gray{background-image:url("../images/icons/dashicons/dashicons-pdf-grey.svg")} \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/css/smtp-smart-routing.min.css b/wp/wp-content/plugins/wp-mail-smtp/assets/css/smtp-smart-routing.min.css index fe708762..7e256a57 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/css/smtp-smart-routing.min.css +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/css/smtp-smart-routing.min.css @@ -1 +1 @@ -#wp-mail-smtp .wp-mail-smtp-smart-routing-header{padding-bottom:0 !important;border-bottom:none !important}#wp-mail-smtp .wp-mail-smtp-smart-routing-header__heading{display:flex;align-items:center}#wp-mail-smtp .wp-mail-smtp-smart-routing-header__heading>a{margin-left:15px;font-weight:600;font-size:14px;line-height:22px}#wp-mail-smtp .wp-mail-smtp-smart-routing-notice-top{max-width:1000px;margin:10px 0 0 !important;border:1px solid #bbb}#wp-mail-smtp .wp-mail-smtp-smart-routing-notice-top--no-connections~.wp-mail-smtp-setting-row,#wp-mail-smtp .wp-mail-smtp-smart-routing-notice-top--no-connections~.wp-mail-smtp-submit{opacity:.5;pointer-events:none}#wp-mail-smtp .wp-mail-smtp-smart-routing-toggle .wp-mail-smtp-toggle__label{font-weight:500;font-size:14px;text-transform:capitalize}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes{max-width:1000px;margin-bottom:30px}#wp-mail-smtp .wp-mail-smtp-smart-routing-route{background:#fff;box-shadow:0px 2px 4px rgba(0,0,0,.07);border-radius:6px}#wp-mail-smtp .wp-mail-smtp-smart-routing-route+.wp-mail-smtp-smart-routing-route{margin-top:30px}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header{display:flex;align-items:center;padding:20px;border-bottom:1px solid #f1f1f1}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header{flex-direction:column;align-items:flex-start}}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header>span{margin-right:10px;font-size:14px;line-height:17px;font-style:italic;color:#646970}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header>span{margin-right:0;margin-top:10px}}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header>select{margin-right:10px !important}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header>select{margin-right:0;margin-top:10px !important}}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__connection{max-width:273px;width:100%}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__connection--invalid{border-color:#d63638 !important}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__actions{display:flex;align-items:center;margin-left:auto}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-smart-routing-route__actions{order:-1}}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__order{margin-right:23px;white-space:nowrap}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__order-btn{background-color:transparent;border:none;padding:0;vertical-align:middle;cursor:pointer}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__order-btn--down{margin-left:13px;transform:rotate(-180deg)}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__order-btn img{display:block}#wp-mail-smtp .wp-mail-smtp-smart-routing-route:first-child .wp-mail-smtp-smart-routing-route__order-btn--up,#wp-mail-smtp .wp-mail-smtp-smart-routing-route:last-child .wp-mail-smtp-smart-routing-route__order-btn--down{opacity:.25;cursor:not-allowed;pointer-events:none}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__delete{background-color:transparent;border:none;color:#999;padding:0;vertical-align:middle;cursor:pointer}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__delete:hover:not(:disabled){color:#d63638}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__delete:disabled{opacity:.25;cursor:not-allowed}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__main{padding:20px}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__notice{margin-top:0 !important;margin-bottom:20px !important;border:1px solid #bbb}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__notice p{margin:6px 0 !important;font-size:13px !important}#wp-mail-smtp .wp-mail-smtp-smart-routing-route .wp-mail-smtp-btn-grey{font-weight:500}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note{display:flex;align-items:center;margin-bottom:5px;font-size:14px;line-height:20px;color:#646970}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note img{margin-right:10px}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note p{margin:0 !important}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note a{color:inherit}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note a:hover,#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note a:active{color:#555} \ No newline at end of file +#wp-mail-smtp .wp-mail-smtp-smart-routing-header{padding-bottom:0 !important;border-bottom:none !important}#wp-mail-smtp .wp-mail-smtp-smart-routing-header__heading{display:flex;align-items:center}#wp-mail-smtp .wp-mail-smtp-smart-routing-header__heading>a{margin-left:15px;font-weight:600;font-size:14px;line-height:22px}#wp-mail-smtp .wp-mail-smtp-smart-routing-notice-top{max-width:1000px;margin:10px 0 0 !important;border:1px solid #bbb}#wp-mail-smtp .wp-mail-smtp-smart-routing-notice-top--no-connections~.wp-mail-smtp-setting-row,#wp-mail-smtp .wp-mail-smtp-smart-routing-notice-top--no-connections~.wp-mail-smtp-submit{opacity:.5;pointer-events:none}#wp-mail-smtp .wp-mail-smtp-smart-routing-toggle .wp-mail-smtp-toggle__label{font-weight:500;font-size:14px;text-transform:capitalize}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes{max-width:1000px;margin-bottom:30px}#wp-mail-smtp .wp-mail-smtp-smart-routing-route{background:#fff;box-shadow:0px 2px 4px rgba(0,0,0,.07);border-radius:6px}#wp-mail-smtp .wp-mail-smtp-smart-routing-route+.wp-mail-smtp-smart-routing-route{margin-top:30px}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header{display:flex;align-items:center;padding:20px;border-bottom:1px solid #f1f1f1}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header{flex-direction:column;align-items:flex-start}}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header>span{margin-right:10px;font-size:14px;line-height:17px;font-style:italic;color:#646970}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header>span{margin-right:0;margin-top:10px}}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header>select{margin-right:10px !important}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-smart-routing-route__header>select{margin-right:0;margin-top:10px !important}}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__connection{max-width:273px;width:100%}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__connection--invalid{border-color:#d63638 !important}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__actions{display:flex;align-items:center;margin-left:auto}@media(max-width: 600px){#wp-mail-smtp .wp-mail-smtp-smart-routing-route__actions{order:-1}}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__order{margin-right:23px;white-space:nowrap}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__order-btn{background-color:rgba(0,0,0,0);border:none;padding:0;vertical-align:middle;cursor:pointer}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__order-btn--down{margin-left:13px;transform:rotate(-180deg)}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__order-btn img{display:block}#wp-mail-smtp .wp-mail-smtp-smart-routing-route:first-child .wp-mail-smtp-smart-routing-route__order-btn--up,#wp-mail-smtp .wp-mail-smtp-smart-routing-route:last-child .wp-mail-smtp-smart-routing-route__order-btn--down{opacity:.25;cursor:not-allowed;pointer-events:none}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__delete{background-color:rgba(0,0,0,0);border:none;color:#999;padding:0;vertical-align:middle;cursor:pointer}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__delete:hover:not(:disabled){color:#d63638}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__delete:disabled{opacity:.25;cursor:not-allowed}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__main{padding:20px}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__notice{margin-top:0 !important;margin-bottom:20px !important;border:1px solid #bbb}#wp-mail-smtp .wp-mail-smtp-smart-routing-route__notice p{margin:6px 0 !important;font-size:13px !important}#wp-mail-smtp .wp-mail-smtp-smart-routing-route .wp-mail-smtp-btn-grey{font-weight:500}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note{display:flex;align-items:center;margin-bottom:5px;font-size:14px;line-height:20px;color:#646970}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note img{margin-right:10px}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note p{margin:0 !important}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note a{color:inherit}#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note a:hover,#wp-mail-smtp .wp-mail-smtp-smart-routing-routes-note a:active{color:#555} \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-full.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-full.svg index 1ced70ef..6d5d611b 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-full.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-full.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-none.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-none.svg index 9f06b394..43efd278 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-none.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-none.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-partial.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-partial.svg index 66de81dc..fde33ea3 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-partial.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/icon-partial.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/team.jpg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/team.jpg index effb8c8d..ccbfb43a 100644 Binary files a/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/team.jpg and b/wp/wp-content/plugins/wp-mail-smtp/assets/images/about/team.jpg differ diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/error-icon.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/error-icon.svg index 98254742..12fe2e93 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/error-icon.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/error-icon.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/delivered.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/delivered.svg index 035b8cf5..54970493 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/delivered.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/delivered.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/sent.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/sent.svg index 5b3e52fd..af291253 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/sent.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/sent.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/total.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/total.svg index cd600204..ff843f1f 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/total.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/total.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/unsent.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/unsent.svg index f4a247de..aaa1d5a9 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/unsent.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/smtp/unsent.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/delivered.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/delivered.svg index e905193d..ab90d5dc 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/delivered.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/delivered.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/sent.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/sent.svg index 5b3e52fd..af291253 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/sent.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/sent.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/total.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/total.svg index 2a8972a5..b4bc0912 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/total.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/total.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/unsent.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/unsent.svg index f4a247de..aaa1d5a9 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/unsent.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/dash-widget/wp/unsent.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/email/illustration-success.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/email/illustration-success.svg index a75761c3..783f52ee 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/email/illustration-success.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/email/illustration-success.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/life-ring.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/life-ring.svg index 94b98498..21aa971d 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/life-ring.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/life-ring.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/lightbulb.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/lightbulb.svg index 154fd912..42a28840 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/lightbulb.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/lightbulb.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/mascot.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/mascot.svg index 5f3740e7..6d9e8a03 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/mascot.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/mascot.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/star.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/star.svg index 19e3badc..85bf4f00 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/star.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/flyout-menu/star.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/check-circle-solid-green.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/check-circle-solid-green.svg index d31a5b90..6be58277 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/check-circle-solid-green.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/check-circle-solid-green.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-regular-red.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-regular-red.svg index 5e3b2a0a..e59ade4b 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-regular-red.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-regular-red.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-solid-orange.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-solid-orange.svg index 2f613d1d..26e742d7 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-solid-orange.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-solid-orange.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-solid-red.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-solid-red.svg index 84f19bfa..8c9c1554 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-solid-red.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/font-awesome/exclamation-circle-solid-red.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/arrow-up.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/arrow-up.svg index d87c8678..cfe6b880 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/arrow-up.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/arrow-up.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/check-solid.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/check-solid.svg index 85e8ff5f..230004ae 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/check-solid.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/check-solid.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/dashicons/dashicons-pdf-grey.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/dashicons/dashicons-pdf-grey.svg index 8d014662..02d7f56b 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/dashicons/dashicons-pdf-grey.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/dashicons/dashicons-pdf-grey.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/error.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/error.svg index ff9cb80a..b084cd74 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/error.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/error.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/exclamation-circle.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/exclamation-circle.svg index de9e5005..c0f26670 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/exclamation-circle.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/exclamation-circle.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/lightbulb.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/lightbulb.svg index e4b784f1..46fb1eb0 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/lightbulb.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/lightbulb.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/success.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/success.svg index b80b3881..9bed367e 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/success.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/success.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/warning.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/warning.svg index 14d5e4eb..abc20f85 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/warning.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/warning.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/zoom.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/zoom.svg index ea451726..1389afdb 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/zoom.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/icons/zoom.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/logo-whitelabel.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/logo-whitelabel.svg index 8cbda20f..db8375b8 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/logo-whitelabel.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/logo-whitelabel.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/logo.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/logo.svg index 8ac53862..1295c813 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/logo.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/logo.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/menu-icon.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/menu-icon.svg index b0ddb058..a646b1a0 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/menu-icon.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/menu-icon.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/pattie.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/pattie.svg index ba477710..2966ee32 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/pattie.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/pattie.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/pro-badge.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/pro-badge.svg index c4d1fa4c..4e1ced24 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/pro-badge.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/pro-badge.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/aws.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/aws.svg index 3c9979d1..0338816b 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/aws.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/aws.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/brevo.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/brevo.svg index ce8c7ef4..473cf40a 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/brevo.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/brevo.svg @@ -1,3 +1 @@ - - - + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/google.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/google.svg index 3b5294e8..22150fc5 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/google.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/google.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/mailgun.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/mailgun.svg index db84d955..d4b4e24a 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/mailgun.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/mailgun.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/microsoft.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/microsoft.svg index 638cfac1..1033de4c 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/microsoft.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/microsoft.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/php.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/php.svg index c4cb6218..e036c2a4 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/php.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/php.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sendgrid.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sendgrid.svg index a0693d84..194e8bcb 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sendgrid.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sendgrid.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sendlayer.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sendlayer.svg index 5895aa37..59f14131 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sendlayer.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sendlayer.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/smtp-com.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/smtp-com.svg index fdfb5d13..64b9351d 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/smtp-com.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/smtp-com.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/smtp.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/smtp.svg index 2f31c7ee..770be9b6 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/smtp.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/smtp.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sparkpost.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sparkpost.svg index 447e1bdb..8039da5d 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sparkpost.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/sparkpost.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/zoho.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/zoho.svg index 4217c485..0bd65b4f 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/zoho.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/providers/zoho.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/images/recommended.svg b/wp/wp-content/plugins/wp-mail-smtp/assets/images/recommended.svg index 2d0539e9..a2c68d93 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/images/recommended.svg +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/images/recommended.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/js/smtp-admin.js b/wp/wp-content/plugins/wp-mail-smtp/assets/js/smtp-admin.js index 6d12f18c..8e10e938 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/js/smtp-admin.js +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/js/smtp-admin.js @@ -278,6 +278,12 @@ WPMailSMTP.Admin.Settings = WPMailSMTP.Admin.Settings || ( function( document, w app.education.gmailOneClickSetupUpgrade(); } ); + + $( '#wp-mail-smtp-setting-misc-rate_limit-lite' ).on( 'click', function( e ) { + e.preventDefault(); + + app.education.rateLimitUpgrade(); + } ); }, education: { @@ -301,6 +307,15 @@ WPMailSMTP.Admin.Settings = WPMailSMTP.Admin.Settings || ( function( document, w ); }, + rateLimitUpgrade: function() { + + app.education.upgradeModal( + wp_mail_smtp.education.rate_limit.upgrade_title, + wp_mail_smtp.education.rate_limit.upgrade_content, + 'rate-limit-setting' + ); + }, + upgradeModal: function( title, content, upgradeUrlUtmContent ) { $.alert( { diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/js/smtp-admin.min.js b/wp/wp-content/plugins/wp-mail-smtp/assets/js/smtp-admin.min.js index 371c44a0..69a9dbdb 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/js/smtp-admin.min.js +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/js/smtp-admin.min.js @@ -1 +1 @@ -"use strict";var WPMailSMTP=window.WPMailSMTP||{};WPMailSMTP.Admin=WPMailSMTP.Admin||{},WPMailSMTP.Admin.Settings=WPMailSMTP.Admin.Settings||function(a,m,p){var n={pluginSettingsChanged:!1,init:function(){p(n.ready)},ready:function(){n.pageHolder=p(".wp-mail-smtp-tab-settings"),n.settingsForm=p(".wp-mail-smtp-connection-settings-form"),p("#screen-meta-links, #screen-meta").prependTo("#wp-mail-smtp-header-temp").show(),n.bindActions(),n.setJQueryConfirmDefaults(),n.initFlyoutMenu()},bindActions:function(){p(".wp-mail-smtp-mailer-image",n.settingsForm).on("click",function(){p(this).parents(".wp-mail-smtp-mailer").find("input").trigger("click")}),p(".wp-mail-smtp-mailer input",n.settingsForm).on("click",function(){var t=p(this);if(t.prop("disabled"))return t.hasClass("educate")&&n.education.upgradeMailer(t),!1;p(".wp-mail-smtp-mailer",n.settingsForm).removeClass("active"),p(this).parents(".wp-mail-smtp-mailer").addClass("active"),p(".wp-mail-smtp-mailer-option",n.settingsForm).addClass("hidden").removeClass("active"),p(".wp-mail-smtp-mailer-option-"+p(this).val(),n.settingsForm).addClass("active").removeClass("hidden")}),n.mailers.smtp.bindActions(),p("#wp-mail-smtp-pro-banner-dismiss",n.pageHolder).on("click",function(){p.ajax({url:ajaxurl,dataType:"json",type:"POST",data:{action:"wp_mail_smtp_ajax",task:"pro_banner_dismiss",nonce:wp_mail_smtp.nonce}}).always(function(){p("#wp-mail-smtp-pro-banner",n.pageHolder).fadeOut("fast")})}),p(".js-wp-mail-smtp-mailer-notice-dismiss",n.settingsForm).on("click",function(t){t.preventDefault();var e=p(this),i=e.parents(".inline-notice");if(e.hasClass("disabled"))return!1;p.ajax({url:ajaxurl,dataType:"json",type:"POST",data:{action:"wp_mail_smtp_ajax",nonce:wp_mail_smtp.nonce,task:"notice_dismiss",notice:i.data("notice"),mailer:i.data("mailer")},beforeSend:function(){e.addClass("disabled")}}).always(function(){i.fadeOut("fast",function(){e.removeClass("disabled")})})}),p("#wp-mail-smtp-debug .error-log-toggle").on("click",function(t){t.preventDefault(),p("#wp-mail-smtp-debug .error-log").slideToggle()}),p("#wp-mail-smtp-debug .error-log-copy").on("click",function(t){t.preventDefault();var e=p(this),i=p("#wp-mail-smtp-debug .error-log");i.is(":visible")||i.addClass("error-log-selection");t=a.createRange();t.selectNode(i[0]),m.getSelection().removeAllRanges(),m.getSelection().addRange(t),a.execCommand("Copy"),m.getSelection().removeAllRanges(),i.removeClass("error-log-selection"),e.addClass("error-log-copy-copied"),setTimeout(function(){e.removeClass("error-log-copy-copied")},1500)}),p(".js-wp-mail-smtp-provider-remove",n.settingsForm).on("click",function(){return confirm(wp_mail_smtp.text_provider_remove)}),p(".wp-mail-smtp-setting-copy",n.settingsForm).on("click",function(t){t.preventDefault(),p("#"+p(this).data("source_id")).get(0).select(),a.execCommand("Copy");var e=p(this).find(".dashicons");e.removeClass("dashicons-admin-page").addClass("wp-mail-smtp-dashicons-yes-alt-green wp-mail-smtp-success wp-mail-smtp-animate"),setTimeout(function(){e.removeClass("wp-mail-smtp-dashicons-yes-alt-green wp-mail-smtp-success wp-mail-smtp-animate").addClass("dashicons-admin-page")},1e3)}),p("#wp-mail-smtp-notice-bar").on("click",".dismiss",function(){var t=p(this).closest("#wp-mail-smtp-notice-bar");t.addClass("out"),setTimeout(function(){t.remove()},300),p.post(ajaxurl,{action:"wp_mail_smtp_notice_bar_dismiss",nonce:wp_mail_smtp.nonce})}),n.triggerExitNotice(),n.beforeSaveChecks(),p(".js-wp-mail-smtp-setting-mailer-radio-input",n.settingsForm).on("change",this.processMailerSettingsOnChange),p(".wp-mail-smtp-tab-tools-test #email-test-form").on("submit",function(){var t=p(this).find(".wp-mail-smtp-btn");t.attr("disabled",!0),t.find("span").hide(),t.find(".wp-mail-smtp-loading").show()}),p(".email_test_tab_removal_notice").on("click",".notice-dismiss",function(){var t=p(this);p.ajax({url:ajaxurl,dataType:"json",type:"POST",data:{action:"wp_mail_smtp_ajax",nonce:wp_mail_smtp.nonce,task:"email_test_tab_removal_notice_dismiss"},beforeSend:function(){t.prop("disabled",!0)}})}),p("#wp-mail-smtp-setting-gmail-one_click_setup_enabled-lite").on("click",function(t){t.preventDefault(),n.education.gmailOneClickSetupUpgrade()})},education:{upgradeMailer:function(t){var e=t.data("title").trim();n.education.upgradeModal(wp_mail_smtp.education.upgrade_title.replace(/%name%/g,e),wp_mail_smtp.education.upgrade_content.replace(/%name%/g,e),t.val())},gmailOneClickSetupUpgrade:function(){n.education.upgradeModal(wp_mail_smtp.education.gmail.one_click_setup_upgrade_title,wp_mail_smtp.education.gmail.one_click_setup_upgrade_content,"gmail-one-click-setup")},upgradeModal:function(t,e,i){p.alert({backgroundDismiss:!0,escapeKey:!0,animationBounce:1,type:"blue",closeIcon:!0,title:t,icon:'">'+wp_mail_smtp.education.upgrade_icon_lock+''+wp_mail_smtp.education.upgrade_bonus+wp_mail_smtp.education.upgrade_doc+""),this.$body.addClass("wp-mail-smtp-upgrade-mailer-education-modal")},buttons:{confirm:{text:wp_mail_smtp.education.upgrade_button,btnClass:"btn-confirm",keys:["enter"],action:function(){var t=/(\?)/.test(wp_mail_smtp.education.upgrade_url)?"&":"?",t=wp_mail_smtp.education.upgrade_url+t+"utm_content="+encodeURIComponent(i);m.open(t,"_blank")}}}})}},mailers:{smtp:{bindActions:function(){p("#wp-mail-smtp-setting-smtp-auth").on("change",function(){p("#wp-mail-smtp-setting-row-smtp-user, #wp-mail-smtp-setting-row-smtp-pass").toggleClass("inactive")}),p("#wp-mail-smtp-setting-row-smtp-encryption input").on("change",function(){var t=p(this),e=p("#wp-mail-smtp-setting-smtp-port",n.settingsForm);"tls"===t.val()?(e.val("587"),p("#wp-mail-smtp-setting-row-smtp-autotls").addClass("inactive")):("ssl"===t.val()?e.val("465"):e.val("25"),p("#wp-mail-smtp-setting-row-smtp-autotls").removeClass("inactive"))})}}},triggerExitNotice:function(){var t=p(".wp-mail-smtp-page-general");p(m).on("beforeunload",function(){if(n.pluginSettingsChanged)return wp_mail_smtp.text_settings_not_saved}),p(":input:not( #wp-mail-smtp-setting-license-key, .wp-mail-smtp-not-form-input, #wp-mail-smtp-setting-gmail-one_click_setup_enabled )",t).on("change",function(){n.pluginSettingsChanged=!0}),p("form",t).on("submit",function(){n.pluginSettingsChanged=!1})},beforeSaveChecks:function(){n.settingsForm.on("submit",function(){if("mail"===p(".wp-mail-smtp-mailer input:checked",n.settingsForm).val()){var t=p(this);return p.alert({backgroundDismiss:!1,escapeKey:!1,animationBounce:1,type:"orange",icon:'">'+wp_mail_smtp.default_mailer_notice.icon_alt+''+wp_mail_smtp.education.upgrade_icon_lock+''+wp_mail_smtp.education.upgrade_bonus+wp_mail_smtp.education.upgrade_doc+""),this.$body.addClass("wp-mail-smtp-upgrade-mailer-education-modal")},buttons:{confirm:{text:wp_mail_smtp.education.upgrade_button,btnClass:"btn-confirm",keys:["enter"],action:function(){var t=/(\?)/.test(wp_mail_smtp.education.upgrade_url)?"&":"?",t=wp_mail_smtp.education.upgrade_url+t+"utm_content="+encodeURIComponent(i);m.open(t,"_blank")}}}})}},mailers:{smtp:{bindActions:function(){p("#wp-mail-smtp-setting-smtp-auth").on("change",function(){p("#wp-mail-smtp-setting-row-smtp-user, #wp-mail-smtp-setting-row-smtp-pass").toggleClass("inactive")}),p("#wp-mail-smtp-setting-row-smtp-encryption input").on("change",function(){var t=p(this),e=p("#wp-mail-smtp-setting-smtp-port",n.settingsForm);"tls"===t.val()?(e.val("587"),p("#wp-mail-smtp-setting-row-smtp-autotls").addClass("inactive")):("ssl"===t.val()?e.val("465"):e.val("25"),p("#wp-mail-smtp-setting-row-smtp-autotls").removeClass("inactive"))})}}},triggerExitNotice:function(){var t=p(".wp-mail-smtp-page-general");p(m).on("beforeunload",function(){if(n.pluginSettingsChanged)return wp_mail_smtp.text_settings_not_saved}),p(":input:not( #wp-mail-smtp-setting-license-key, .wp-mail-smtp-not-form-input, #wp-mail-smtp-setting-gmail-one_click_setup_enabled )",t).on("change",function(){n.pluginSettingsChanged=!0}),p("form",t).on("submit",function(){n.pluginSettingsChanged=!1})},beforeSaveChecks:function(){n.settingsForm.on("submit",function(){if("mail"===p(".wp-mail-smtp-mailer input:checked",n.settingsForm).val()){var t=p(this);return p.alert({backgroundDismiss:!1,escapeKey:!1,animationBounce:1,type:"orange",icon:'">'+wp_mail_smtp.default_mailer_notice.icon_alt+'\n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"POT-Creation-Date: 2024-01-22T15:35:28+00:00\n" +"POT-Creation-Date: 2024-02-28T14:06:04+00:00\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"X-Generator: WP-CLI 2.7.1\n" +"X-Generator: WP-CLI 2.9.0\n" "X-Domain: wp-mail-smtp\n" #. Plugin Name of the plugin #. Author of the plugin -#: src/Admin/Area.php:309 -#: src/Admin/Area.php:310 -#: src/Admin/Area.php:367 -#: src/Admin/Area.php:368 -#: src/Admin/DashboardWidget.php:161 -#: src/Admin/DashboardWidget.php:559 +#: src/Admin/Area.php:307 +#: src/Admin/Area.php:308 +#: src/Admin/Area.php:365 +#: src/Admin/Area.php:366 +#: src/Admin/DashboardWidget.php:164 +#: src/Admin/DashboardWidget.php:562 #: src/SiteHealth.php:43 msgid "WP Mail SMTP" msgstr "" @@ -44,7 +44,7 @@ msgid "OK" msgstr "" #: assets/languages/wp-mail-smtp-vue.php:11 -#: src/Admin/Area.php:523 +#: src/Admin/Area.php:521 #: src/Admin/Pages/DebugEventsTab.php:153 msgid "Heads up!" msgstr "" @@ -230,7 +230,7 @@ msgstr "" msgid "Make sure you're getting the most out of WP Mail SMTP. Just check all of the features you'd like to use, and we'll go ahead and enable those for you." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:156 +#: assets/languages/wp-mail-smtp-vue.php:155 msgid "Save and Continue" msgstr "" @@ -355,57 +355,57 @@ msgstr "" msgid "Force From Name" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:250 +#: assets/languages/wp-mail-smtp-vue.php:251 #: src/Admin/ConnectionSettings.php:70 #: src/Admin/Pages/SmartRoutingTab.php:180 #: src/Admin/Pages/SmartRoutingTab.php:210 msgid "From Email" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:254 +#: assets/languages/wp-mail-smtp-vue.php:256 #: src/Admin/ConnectionSettings.php:95 msgid "Force From Email" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:258 +#: assets/languages/wp-mail-smtp-vue.php:260 msgid "If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:262 +#: assets/languages/wp-mail-smtp-vue.php:265 msgid "If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:266 +#: assets/languages/wp-mail-smtp-vue.php:269 #: src/Admin/ConnectionSettings.php:139 msgid "The name that emails are sent from." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:269 +#: assets/languages/wp-mail-smtp-vue.php:273 #: src/Admin/ConnectionSettings.php:82 msgid "The email address that emails are sent from." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:272 +#: assets/languages/wp-mail-smtp-vue.php:276 msgid "Read how to set up Mailgun" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:275 +#: assets/languages/wp-mail-smtp-vue.php:279 #: src/Providers/Mailgun/Options.php:132 #: src/Providers/SparkPost/Options.php:132 msgid "US" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:278 +#: assets/languages/wp-mail-smtp-vue.php:282 #: src/Providers/Mailgun/Options.php:141 #: src/Providers/SparkPost/Options.php:141 msgid "EU" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:281 +#: assets/languages/wp-mail-smtp-vue.php:285 msgid "Close and exit the Setup Wizard" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:284 +#: assets/languages/wp-mail-smtp-vue.php:288 #: src/Providers/PepipostAPI/Options.php:96 #: src/Providers/Sendgrid/Options.php:67 #: src/Providers/Sendinblue/Options.php:111 @@ -415,1021 +415,1021 @@ msgstr "" msgid "API Key" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:287 +#: assets/languages/wp-mail-smtp-vue.php:291 #: src/Providers/Sendgrid/Options.php:107 #: src/Providers/Sendinblue/Options.php:143 msgid "Sending Domain" msgstr "" #. Translators: Link to the Sendgrid API settings. -#: assets/languages/wp-mail-smtp-vue.php:291 +#: assets/languages/wp-mail-smtp-vue.php:295 msgid "%1$sFollow this link%2$s to get an API Key for Sendgrid." msgstr "" #. Translators: italic styling. -#: assets/languages/wp-mail-smtp-vue.php:295 +#: assets/languages/wp-mail-smtp-vue.php:299 msgid "To send emails you will need only a %1$sMail Send%2$s access level for this API key." msgstr "" #. Translators: Link to the Sendgrid doc page on wpmailsmtp.com. -#: assets/languages/wp-mail-smtp-vue.php:299 +#: assets/languages/wp-mail-smtp-vue.php:303 msgid "Please input the sending domain/subdomain you configured in your SendGrid dashboard. More information can be found in our %1$sSendGrid documentation%2$s" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:302 +#: assets/languages/wp-mail-smtp-vue.php:306 msgid "Read how to set up Sendgrid" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:305 +#: assets/languages/wp-mail-smtp-vue.php:309 #: src/Admin/SetupWizard.php:477 msgid "WP Mail SMTP logo" msgstr "" #. Translators: %1$s - the number of current step, %2$s - number of all steps. -#: assets/languages/wp-mail-smtp-vue.php:309 +#: assets/languages/wp-mail-smtp-vue.php:313 msgid "Step %1$s of %2$s" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:312 +#: assets/languages/wp-mail-smtp-vue.php:316 msgid "Configure Mailer Settings" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:315 +#: assets/languages/wp-mail-smtp-vue.php:319 msgid "Below, we'll show you all of the settings required to set up this mailer." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:319 +#: assets/languages/wp-mail-smtp-vue.php:326 msgid "This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the constant in your wp-config.php file." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:322 +#: assets/languages/wp-mail-smtp-vue.php:329 msgid "Copy input value" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:325 +#: assets/languages/wp-mail-smtp-vue.php:332 msgid "Copied!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:328 +#: assets/languages/wp-mail-smtp-vue.php:335 msgid "The value entered does not match the required format" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:331 +#: assets/languages/wp-mail-smtp-vue.php:338 msgid "Checking Mailer Configuration" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:334 +#: assets/languages/wp-mail-smtp-vue.php:341 msgid "We're running some tests in the background to make sure everything is set up properly." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:337 +#: assets/languages/wp-mail-smtp-vue.php:344 msgid "Checking mailer configuration image" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:340 +#: assets/languages/wp-mail-smtp-vue.php:347 msgid "Whoops, looks like things aren’t configured properly." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:343 +#: assets/languages/wp-mail-smtp-vue.php:350 msgid "We just tried to send a test email, but something prevented that from working. To see more details about the issue we detected, as well as our suggestions to fix it, please start troubleshooting." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:346 +#: assets/languages/wp-mail-smtp-vue.php:353 msgid "Start Troubleshooting" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:349 +#: assets/languages/wp-mail-smtp-vue.php:356 msgid "Send us Feedback" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:352 +#: assets/languages/wp-mail-smtp-vue.php:359 msgid "Finish Setup" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:355 +#: assets/languages/wp-mail-smtp-vue.php:362 msgid "Import data from your current plugins" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:358 +#: assets/languages/wp-mail-smtp-vue.php:365 msgid "We have detected other SMTP plugins installed on your website. Select which plugin's data you would like to import to WP Mail SMTP." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:361 +#: assets/languages/wp-mail-smtp-vue.php:368 msgid "Import Data and Continue" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:364 +#: assets/languages/wp-mail-smtp-vue.php:373 msgid "Skip this Step" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:367 +#: assets/languages/wp-mail-smtp-vue.php:376 msgid "Easy WP SMTP" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:370 +#: assets/languages/wp-mail-smtp-vue.php:379 msgid "FluentSMTP" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:373 +#: assets/languages/wp-mail-smtp-vue.php:382 msgid "Post SMTP Mailer" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:376 +#: assets/languages/wp-mail-smtp-vue.php:385 msgid "SMTP Mailer" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:379 +#: assets/languages/wp-mail-smtp-vue.php:388 msgid "WP SMTP" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:382 +#: assets/languages/wp-mail-smtp-vue.php:391 msgid "Help Improve WP Mail SMTP + Smart Recommendations" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:385 +#: assets/languages/wp-mail-smtp-vue.php:394 msgid "Get helpful suggestions from WP Mail SMTP on how to optimize your email deliverability and grow your business." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:388 +#: assets/languages/wp-mail-smtp-vue.php:397 msgid "Your Email Address" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:391 +#: assets/languages/wp-mail-smtp-vue.php:400 msgid "Your email is needed, so you can receive recommendations." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:394 +#: assets/languages/wp-mail-smtp-vue.php:403 msgid "Help make WP Mail SMTP better for everyone" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:397 +#: assets/languages/wp-mail-smtp-vue.php:406 msgid "Yes, count me in" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:400 -#: src/Admin/Pages/MiscTab.php:253 +#: assets/languages/wp-mail-smtp-vue.php:409 +#: src/Admin/Pages/MiscTab.php:254 msgid "By allowing us to track usage data we can better help you because we know with which WordPress configurations, themes and plugins we should test." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:403 +#: assets/languages/wp-mail-smtp-vue.php:412 #: src/Providers/Postmark/Options.php:89 msgid "Server API Token" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:406 +#: assets/languages/wp-mail-smtp-vue.php:415 #: src/Providers/Postmark/Options.php:118 msgid "Message Stream ID" msgstr "" #. Translators: Link to the Postmark API settings. -#: assets/languages/wp-mail-smtp-vue.php:410 +#: assets/languages/wp-mail-smtp-vue.php:419 msgid "%1$sFollow this link%2$s to get a Server API Token for Postmark." msgstr "" #. Translators: Link to the Postmark Message Stream ID settings. -#: assets/languages/wp-mail-smtp-vue.php:414 +#: assets/languages/wp-mail-smtp-vue.php:423 msgid "Message Stream ID is optional. By default outbound (Default Transactional Stream) will be used. More information can be found in our %1$sPostmark documentation%2$s." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:417 +#: assets/languages/wp-mail-smtp-vue.php:426 msgid "Read how to set up Postmark" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:420 +#: assets/languages/wp-mail-smtp-vue.php:429 msgid "Configure Email Logs" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:423 +#: assets/languages/wp-mail-smtp-vue.php:432 msgid "Enable these powerful logging features for more control of your WordPress emails." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:426 +#: assets/languages/wp-mail-smtp-vue.php:435 msgid "Store the content for all sent emails" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:429 +#: assets/languages/wp-mail-smtp-vue.php:438 msgid "This option must be enabled if you'd like to be able to resend emails. Please be aware that all email content will be stored in your WordPress database. This may include sensitive data, passwords, and personal details." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:432 +#: assets/languages/wp-mail-smtp-vue.php:441 msgid "Save file attachments sent from WordPress" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:435 +#: assets/languages/wp-mail-smtp-vue.php:444 msgid "All file attachments sent from your site will be saved to the WordPress Uploads folder. Please note that this may reduce available disk space on your server." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:438 +#: assets/languages/wp-mail-smtp-vue.php:447 msgid "Track when an email is opened" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:441 +#: assets/languages/wp-mail-smtp-vue.php:450 msgid "See which emails were opened by the recipients. Email open tracking works with emails that are sent in HTML format." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:444 +#: assets/languages/wp-mail-smtp-vue.php:453 msgid "Track when a link in an email is clicked" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:447 +#: assets/languages/wp-mail-smtp-vue.php:456 msgid "See which links were clicked in emails sent from your WordPress site. Click tracking works with emails that are sent in HTML format." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:450 +#: assets/languages/wp-mail-smtp-vue.php:459 msgid "The data center location used by your Zoho account." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:453 +#: assets/languages/wp-mail-smtp-vue.php:462 #: src/Providers/Gmail/Options.php:113 msgid "Client ID" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:456 +#: assets/languages/wp-mail-smtp-vue.php:465 #: src/Providers/Gmail/Options.php:128 msgid "Client Secret" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:459 +#: assets/languages/wp-mail-smtp-vue.php:468 msgid "Redirect URI" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:462 +#: assets/languages/wp-mail-smtp-vue.php:472 #: src/Providers/Gmail/Options.php:172 msgid "Authorization" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:465 +#: assets/languages/wp-mail-smtp-vue.php:475 msgid "Read how to set up Zoho Mail" msgstr "" #. Translators: Link to the SendLayer API settings. -#: assets/languages/wp-mail-smtp-vue.php:469 +#: assets/languages/wp-mail-smtp-vue.php:479 msgid "%1$sFollow this link%2$s to get an API Key for SendLayer." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:472 +#: assets/languages/wp-mail-smtp-vue.php:482 #: src/Providers/Sendlayer/Options.php:64 msgid "Get Started with SendLayer" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:475 +#: assets/languages/wp-mail-smtp-vue.php:485 msgid "Read how to set up SendLayer" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:478 +#: assets/languages/wp-mail-smtp-vue.php:488 #: src/Providers/SMTPcom/Options.php:137 msgid "Sender Name" msgstr "" #. Translators: Link to the SMTP.com API settings. -#: assets/languages/wp-mail-smtp-vue.php:482 +#: assets/languages/wp-mail-smtp-vue.php:492 msgid "%1$sFollow this link%2$s to get an API Key for SMTP.com." msgstr "" #. Translators: Link to the SMTP.com Senders/Channel settings. -#: assets/languages/wp-mail-smtp-vue.php:486 +#: assets/languages/wp-mail-smtp-vue.php:496 msgid "%1$sFollow this link%2$s to get a Sender Name for SMTP.com." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:489 +#: assets/languages/wp-mail-smtp-vue.php:499 #: src/Providers/SMTPcom/Options.php:68 msgid "Get Started with SMTP.com" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:492 +#: assets/languages/wp-mail-smtp-vue.php:502 msgid "Read how to set up SMTP.com" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:495 +#: assets/languages/wp-mail-smtp-vue.php:505 #: src/Providers/Sendinblue/Options.php:67 #: src/Providers/SMTPcom/Options.php:73 msgid "Transparency and Disclosure" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:498 +#: assets/languages/wp-mail-smtp-vue.php:508 #: src/Providers/SMTPcom/Options.php:75 msgid "We believe in full transparency. The SMTP.com links above are tracking links as part of our partnership with SMTP (j2 Global). We can recommend just about any SMTP service, but we only recommend products that we believe will add value to our users." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:501 +#: assets/languages/wp-mail-smtp-vue.php:511 msgid "How was your WP Mail SMTP setup experience?" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:504 +#: assets/languages/wp-mail-smtp-vue.php:514 msgid "Our goal is to make your SMTP setup as simple and straightforward as possible. We'd love to know how this process went for you!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:507 +#: assets/languages/wp-mail-smtp-vue.php:517 msgid "Congrats, you’ve successfully set up WP Mail SMTP!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:510 +#: assets/languages/wp-mail-smtp-vue.php:520 msgid "Here’s what to do next:" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:513 +#: assets/languages/wp-mail-smtp-vue.php:523 msgid "Check out our other free WordPress plugins:" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:516 +#: assets/languages/wp-mail-smtp-vue.php:526 msgid "Upgrade to Unlock Powerful SMTP Features" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:519 +#: assets/languages/wp-mail-smtp-vue.php:529 msgid "Upgrade to WP Mail SMTP Pro to unlock more awesome features and experience why WP Mail SMTP is used by over 3,000,000 websites." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:522 +#: assets/languages/wp-mail-smtp-vue.php:532 msgid "Upgrade to Pro Today" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:525 +#: assets/languages/wp-mail-smtp-vue.php:535 #: src/Admin/Pages/TestTab.php:253 #: src/SiteHealth.php:352 msgid "Send a Test Email" msgstr "" #. Translators: Different bold styles and discount value (%5$s). -#: assets/languages/wp-mail-smtp-vue.php:529 +#: assets/languages/wp-mail-smtp-vue.php:539 msgid "%1$sBonus:%2$s You can upgrade to the Pro plan and %3$ssave %5$s today%4$s, automatically applied at checkout." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:532 +#: assets/languages/wp-mail-smtp-vue.php:542 msgid "Star icon" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:535 +#: assets/languages/wp-mail-smtp-vue.php:545 msgid "Thanks for the feedback!" msgstr "" #. Translators: %1$s and %2$s are HTML bold tags; %3$s is a new line HTML tag; %4$s are 5 golden star icons in HTML. -#: assets/languages/wp-mail-smtp-vue.php:539 +#: assets/languages/wp-mail-smtp-vue.php:549 msgid "Help us spread the word %1$sby giving WP Mail SMTP a 5-star rating %3$s(%4$s) on WordPress.org%2$s. Thanks for your support and we look forward to bringing you more awesome features." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:542 +#: assets/languages/wp-mail-smtp-vue.php:552 msgid "Rate on WordPress.org" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:545 +#: assets/languages/wp-mail-smtp-vue.php:555 msgid "What could we do to improve?" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:548 +#: assets/languages/wp-mail-smtp-vue.php:558 msgid "We're sorry things didn't go smoothly for you, and want to keep improving. Please let us know any specific parts of this process that you think could be better. We really appreciate any details you're willing to share!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:551 +#: assets/languages/wp-mail-smtp-vue.php:561 msgid "Yes, I give WP Mail SMTP permission to contact me for any follow up questions." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:554 +#: assets/languages/wp-mail-smtp-vue.php:564 msgid "Submit Feedback" msgstr "" #. Translators: Link to the Sendinblue API settings. -#: assets/languages/wp-mail-smtp-vue.php:558 +#: assets/languages/wp-mail-smtp-vue.php:568 msgid "%1$sFollow this link%2$s to get an API Key for Sendinblue." msgstr "" #. Translators: Link to the Sendinblue doc page on wpmailsmtp.com. -#: assets/languages/wp-mail-smtp-vue.php:562 +#: assets/languages/wp-mail-smtp-vue.php:572 msgid "Please input the sending domain/subdomain you configured in your Sendinblue dashboard. More information can be found in our %1$sSendinblue documentation%2$s" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:565 +#: assets/languages/wp-mail-smtp-vue.php:575 msgid "Get Started with Sendinblue" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:568 +#: assets/languages/wp-mail-smtp-vue.php:578 msgid "Read how to set up Sendinblue" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:571 +#: assets/languages/wp-mail-smtp-vue.php:581 msgid "We believe in full transparency. The Sendinblue links above are tracking links as part of our partnership with Sendinblue. We can recommend just about any SMTP service, but we only recommend products that we believe will add value to our users." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:574 +#: assets/languages/wp-mail-smtp-vue.php:584 #: src/Providers/OptionsAbstract.php:227 msgid "SMTP Host" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:577 +#: assets/languages/wp-mail-smtp-vue.php:587 #: src/Providers/OptionsAbstract.php:241 msgid "Encryption" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:580 +#: assets/languages/wp-mail-smtp-vue.php:590 #: src/Providers/OptionsAbstract.php:281 msgid "SMTP Port" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:583 +#: assets/languages/wp-mail-smtp-vue.php:593 #: src/Providers/OptionsAbstract.php:295 msgid "Auto TLS" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:586 +#: assets/languages/wp-mail-smtp-vue.php:596 msgid "Enable Auto TLS" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:589 +#: assets/languages/wp-mail-smtp-vue.php:599 #: src/Providers/OptionsAbstract.php:309 msgid "By default, TLS encryption is automatically used if the server supports it (recommended). In some cases, due to server misconfigurations, this can cause issues and may need to be disabled." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:592 +#: assets/languages/wp-mail-smtp-vue.php:602 #: src/Providers/OptionsAbstract.php:317 msgid "Authentication" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:595 +#: assets/languages/wp-mail-smtp-vue.php:605 #: src/Admin/Pages/TestTab.php:860 msgid "Enable Authentication" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:598 +#: assets/languages/wp-mail-smtp-vue.php:608 #: src/Providers/OptionsAbstract.php:336 msgid "SMTP Username" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:601 +#: assets/languages/wp-mail-smtp-vue.php:611 #: src/Providers/OptionsAbstract.php:350 msgid "SMTP Password" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:604 +#: assets/languages/wp-mail-smtp-vue.php:614 #: src/Providers/OptionsAbstract.php:273 msgid "For most servers TLS is the recommended option. If your SMTP provider offers both SSL and TLS options, we recommend using TLS." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:607 +#: assets/languages/wp-mail-smtp-vue.php:617 #: src/Admin/Pages/SettingsTab.php:371 #: src/Providers/OptionsAbstract.php:251 msgid "None" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:610 +#: assets/languages/wp-mail-smtp-vue.php:620 #: src/Providers/OptionsAbstract.php:260 msgid "SSL" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:613 +#: assets/languages/wp-mail-smtp-vue.php:623 #: src/Providers/OptionsAbstract.php:269 msgid "TLS" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:616 +#: assets/languages/wp-mail-smtp-vue.php:626 msgid "Access Key ID" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:619 +#: assets/languages/wp-mail-smtp-vue.php:629 msgid "Secret Access Key" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:622 +#: assets/languages/wp-mail-smtp-vue.php:632 msgid "SES Identities" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:625 +#: assets/languages/wp-mail-smtp-vue.php:635 msgid "Please select the Amazon SES API region which is the closest to where your website is hosted. This can help to decrease network latency between your site and Amazon SES, which will speed up email sending." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:628 +#: assets/languages/wp-mail-smtp-vue.php:638 msgid "Read how to set up Amazon SES" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:631 +#: assets/languages/wp-mail-smtp-vue.php:641 msgid "Amazon SES requires an SSL certificate, and so is not currently compatible with your site. Please contact your host to request a SSL certificate, or check out " msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:634 +#: assets/languages/wp-mail-smtp-vue.php:644 msgid "WPBeginner's tutorial on how to set up SSL" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:637 +#: assets/languages/wp-mail-smtp-vue.php:647 msgid "If you'd prefer not to set up SSL, or need an SMTP solution in the meantime, please go back and select a different mailer option." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:640 +#: assets/languages/wp-mail-smtp-vue.php:650 msgid "Choose Your SMTP Mailer" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:643 +#: assets/languages/wp-mail-smtp-vue.php:653 #: src/Admin/ConnectionSettings.php:202 #: src/Admin/Pages/ExportTab.php:125 msgid "Mailer" msgstr "" #. Translators: Link to the SMTP Mailer docs page. -#: assets/languages/wp-mail-smtp-vue.php:647 +#: assets/languages/wp-mail-smtp-vue.php:657 msgid "Which mailer would you like to use to send emails? Not sure which mailer to choose? Check out our %1$scomplete mailer guide%2$s for details on each option." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:650 +#: assets/languages/wp-mail-smtp-vue.php:660 msgid "I Understand, Continue" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:653 +#: assets/languages/wp-mail-smtp-vue.php:663 msgid "Choose a Different Mailer" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:656 +#: assets/languages/wp-mail-smtp-vue.php:666 msgid "Recommended Mailers" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:659 +#: assets/languages/wp-mail-smtp-vue.php:669 msgid "Your mailer is already configured in a WP Mail SMTP constant, so the options below have been disabled. To change your mailer, please edit or remove the WPMS_MAILER constant in your wp-config.php file." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:662 +#: assets/languages/wp-mail-smtp-vue.php:672 msgid "is a PRO Feature" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:665 +#: assets/languages/wp-mail-smtp-vue.php:675 msgid "Microsoft 365 / Outlook" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:668 +#: assets/languages/wp-mail-smtp-vue.php:678 msgid "Successful Upgrade!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:671 +#: assets/languages/wp-mail-smtp-vue.php:681 msgid "Upgrade Failed!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:674 +#: assets/languages/wp-mail-smtp-vue.php:684 msgid "Enter your WP Mail SMTP License Key" msgstr "" #. Translators: %1$s and %2$s are bold tags. -#: assets/languages/wp-mail-smtp-vue.php:678 +#: assets/languages/wp-mail-smtp-vue.php:688 msgid "You're currently using %1$sWP Mail SMTP Lite%2$s - no license needed. Enjoy!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:681 +#: assets/languages/wp-mail-smtp-vue.php:691 msgid "Continue" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:684 +#: assets/languages/wp-mail-smtp-vue.php:694 msgid "Would you like to purchase the following features now?" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:687 +#: assets/languages/wp-mail-smtp-vue.php:697 msgid "These features are available as part of WP Mail SMTP Pro plan." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:690 +#: assets/languages/wp-mail-smtp-vue.php:700 msgid "Purchase Now" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:693 +#: assets/languages/wp-mail-smtp-vue.php:703 msgid "I'll do it later" msgstr "" #. Translators: Link to the WPMailSMTP.com pricing page. -#: assets/languages/wp-mail-smtp-vue.php:697 +#: assets/languages/wp-mail-smtp-vue.php:707 msgid "To unlock selected features, %1$sUpgrade to Pro%2$s and enter your license key below." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:700 +#: assets/languages/wp-mail-smtp-vue.php:710 msgid "Enhanced Weekly Email Summary" msgstr "" #. Translators: bold HTML tags. -#: assets/languages/wp-mail-smtp-vue.php:704 +#: assets/languages/wp-mail-smtp-vue.php:714 msgid "Already purchased? Enter your license key below to connect with %1$sWP Mail SMTP Pro%2$s!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:707 +#: assets/languages/wp-mail-smtp-vue.php:717 msgid "Enter your license key below to unlock plugin updates!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:710 +#: assets/languages/wp-mail-smtp-vue.php:721 msgid "Verify License Key" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:713 +#: assets/languages/wp-mail-smtp-vue.php:724 #: src/Admin/Pages/SettingsTab.php:187 msgid "Connect" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:716 +#: assets/languages/wp-mail-smtp-vue.php:728 msgid "The License Key format is incorrect. Please enter a valid key and try again." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:719 +#: assets/languages/wp-mail-smtp-vue.php:731 msgid "Your license was successfully verified! You are ready for the next step." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:722 +#: assets/languages/wp-mail-smtp-vue.php:734 msgid "Pro badge" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:725 +#: assets/languages/wp-mail-smtp-vue.php:738 msgid "License key input" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:728 +#: assets/languages/wp-mail-smtp-vue.php:742 msgid "Paste your license key here" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:731 +#: assets/languages/wp-mail-smtp-vue.php:746 msgid "Successful Verification!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:734 +#: assets/languages/wp-mail-smtp-vue.php:750 msgid "Verification Error!" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:737 +#: assets/languages/wp-mail-smtp-vue.php:753 msgid "Authorized Redirect URI" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:740 +#: assets/languages/wp-mail-smtp-vue.php:756 msgid "Select which email address you would like to send your emails from." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:743 +#: assets/languages/wp-mail-smtp-vue.php:759 msgid "Read how to set up the Gmail mailer" msgstr "" #. Translators: Link to the SparkPost documentation. -#: assets/languages/wp-mail-smtp-vue.php:747 +#: assets/languages/wp-mail-smtp-vue.php:763 msgid "Select your SparkPost account region. %1$sMore information%2$s on SparkPost." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:750 +#: assets/languages/wp-mail-smtp-vue.php:766 msgid "Read how to set up SparkPost" msgstr "" #. Translators: Link to the SparkPost Account API section. -#: assets/languages/wp-mail-smtp-vue.php:754 +#: assets/languages/wp-mail-smtp-vue.php:770 msgid "%1$sFollow this link%2$s to get an API Key for SparkPost." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:757 +#: assets/languages/wp-mail-smtp-vue.php:773 msgid "Application ID" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:760 +#: assets/languages/wp-mail-smtp-vue.php:776 msgid "Application Password" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:763 +#: assets/languages/wp-mail-smtp-vue.php:779 msgid "Read how to set up Microsoft Outlook / 365" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:766 +#: assets/languages/wp-mail-smtp-vue.php:782 msgid "Outlook / 365 requires an SSL certificate, and so is not currently compatible with your site. Please contact your host to request a SSL certificate, or check out " msgstr "" #. Translators: Minimum and maximum number that can be used. -#: assets/languages/wp-mail-smtp-vue.php:770 +#: assets/languages/wp-mail-smtp-vue.php:786 msgid "Please enter a value between %1$s and %2$s" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:773 +#: assets/languages/wp-mail-smtp-vue.php:789 msgid "Value has to be a round number" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:776 -#: src/Admin/Area.php:169 +#: assets/languages/wp-mail-smtp-vue.php:792 +#: src/Admin/Area.php:167 msgid "There was an error while processing the authentication request. Please try again." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:779 +#: assets/languages/wp-mail-smtp-vue.php:795 msgid "There was an error while processing the authentication request. Please recheck your Client ID and Client Secret and try again." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:782 -#: src/Admin/Area.php:155 +#: assets/languages/wp-mail-smtp-vue.php:798 +#: src/Admin/Area.php:153 msgid "There was an error while processing the authentication request. The nonce is invalid. Please try again." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:785 +#: assets/languages/wp-mail-smtp-vue.php:801 msgid "There was an error while processing the authentication request. The authorization code is missing. Please try again." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:788 +#: assets/languages/wp-mail-smtp-vue.php:804 msgid "There was an error while processing the authentication request. Please recheck your Region, Client ID and Client Secret and try again." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:791 -#: src/Admin/Area.php:192 +#: assets/languages/wp-mail-smtp-vue.php:807 +#: src/Admin/Area.php:190 msgid "You have successfully linked the current site with your Google API project. Now you can start sending emails through Gmail." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:794 +#: assets/languages/wp-mail-smtp-vue.php:810 msgid "You have successfully linked the current site with your Microsoft API project. Now you can start sending emails through Outlook." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:797 +#: assets/languages/wp-mail-smtp-vue.php:813 msgid "You have successfully linked the current site with your Zoho Mail API project. Now you can start sending emails through Zoho Mail." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:800 +#: assets/languages/wp-mail-smtp-vue.php:816 msgid "Successful Authorization" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:803 +#: assets/languages/wp-mail-smtp-vue.php:819 msgid "Authorization Error!" msgstr "" #. Translators: name of the oAuth provider (Google, Microsoft, ...). -#: assets/languages/wp-mail-smtp-vue.php:807 +#: assets/languages/wp-mail-smtp-vue.php:823 msgid "Connect to %s" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:810 +#: assets/languages/wp-mail-smtp-vue.php:826 msgid "Before continuing, you'll need to allow this plugin to send emails using your %s account." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:813 +#: assets/languages/wp-mail-smtp-vue.php:829 #: src/Providers/Gmail/Options.php:209 msgid "Remove OAuth Connection" msgstr "" #. Translators: link to the Google documentation page. -#: assets/languages/wp-mail-smtp-vue.php:817 +#: assets/languages/wp-mail-smtp-vue.php:833 msgid "If you want to use a different From Email address you can setup a Google email alias. %1$sFollow these instructions%2$s, then select the alias in the From Email section below." msgstr "" #. Translators: name of the oAuth provider (Google, Microsoft, ...). -#: assets/languages/wp-mail-smtp-vue.php:821 +#: assets/languages/wp-mail-smtp-vue.php:837 msgid "Removing this OAuth connection will give you the ability to redo the OAuth connection or connect to different %s account." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:824 +#: assets/languages/wp-mail-smtp-vue.php:840 msgid "Connected as" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:827 -#: src/Admin/Area.php:148 +#: assets/languages/wp-mail-smtp-vue.php:843 +#: src/Admin/Area.php:146 msgid "There was an error while processing the authentication request. The state key is invalid. Please try again." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:830 +#: assets/languages/wp-mail-smtp-vue.php:846 msgid "Please enter a domain" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:833 +#: assets/languages/wp-mail-smtp-vue.php:849 msgid "Please enter a valid email address" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:836 +#: assets/languages/wp-mail-smtp-vue.php:852 msgid "Enter the domain name to verify it on Amazon SES and generate the required DNS CNAME records." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:839 +#: assets/languages/wp-mail-smtp-vue.php:855 msgid "Enter a valid email address. A verification email will be sent to the email address you entered." msgstr "" #. Translators: Email address. -#: assets/languages/wp-mail-smtp-vue.php:843 +#: assets/languages/wp-mail-smtp-vue.php:859 msgid "Please check the inbox of %s for a confirmation email." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:846 +#: assets/languages/wp-mail-smtp-vue.php:862 msgid "Verify Email" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:849 +#: assets/languages/wp-mail-smtp-vue.php:865 msgid "No registered domains or emails." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:852 +#: assets/languages/wp-mail-smtp-vue.php:868 msgid "You will not be able to send emails until you verify at least one domain or email address for the selected Amazon SES Region." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:855 +#: assets/languages/wp-mail-smtp-vue.php:871 msgid "View DNS" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:858 +#: assets/languages/wp-mail-smtp-vue.php:874 msgid "Resend" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:861 +#: assets/languages/wp-mail-smtp-vue.php:877 msgid "Here are the domains and email addresses that have been verified and can be used as the From Email." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:864 +#: assets/languages/wp-mail-smtp-vue.php:880 msgid "Verify SES Identity" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:867 +#: assets/languages/wp-mail-smtp-vue.php:883 msgid "Add New SES Identity" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:870 +#: assets/languages/wp-mail-smtp-vue.php:886 msgid "Name" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:873 +#: assets/languages/wp-mail-smtp-vue.php:889 msgid "Value" msgstr "" #. Translators: Link to Amazon SES documentation. -#: assets/languages/wp-mail-smtp-vue.php:877 +#: assets/languages/wp-mail-smtp-vue.php:893 msgid "Please add these CNAME records to your domain's DNS settings. For information on how to add CNAME DNS records, please refer to the %1$sAmazon SES documentation%2$s." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:880 +#: assets/languages/wp-mail-smtp-vue.php:896 msgid "Verify Domain" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:883 +#: assets/languages/wp-mail-smtp-vue.php:899 msgid "Verify Email Address" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:886 +#: assets/languages/wp-mail-smtp-vue.php:902 msgid "Install" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:889 +#: assets/languages/wp-mail-smtp-vue.php:905 msgid "Installed" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:892 -#: src/Admin/Area.php:644 +#: assets/languages/wp-mail-smtp-vue.php:908 +#: src/Admin/Area.php:646 #: src/Admin/Pages/AboutTab.php:225 msgid "Activated" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:895 -#: src/Core.php:1073 +#: assets/languages/wp-mail-smtp-vue.php:911 +#: src/Core.php:1104 msgid "Loading" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:898 +#: assets/languages/wp-mail-smtp-vue.php:914 msgid "WordPress SEO Toolkit" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:901 +#: assets/languages/wp-mail-smtp-vue.php:917 msgid "Improve your website's SEO ranking with our toolkit." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:904 +#: assets/languages/wp-mail-smtp-vue.php:920 msgid "The following plugin will be installed for free:" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:907 +#: assets/languages/wp-mail-smtp-vue.php:923 msgid "Read how to set up SendGrid" msgstr "" #. Translators: Link to the Sendinblue API settings. -#: assets/languages/wp-mail-smtp-vue.php:911 +#: assets/languages/wp-mail-smtp-vue.php:927 msgid "%1$sFollow this link%2$s to get an API Key for Brevo." msgstr "" #. Translators: Link to the Sendinblue doc page on wpmailsmtp.com. -#: assets/languages/wp-mail-smtp-vue.php:915 +#: assets/languages/wp-mail-smtp-vue.php:931 msgid "Please input the sending domain/subdomain you configured in your Brevo dashboard. More information can be found in our %1$sBrevo documentation%2$s" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:918 +#: assets/languages/wp-mail-smtp-vue.php:934 msgid "Get Started with Brevo" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:921 +#: assets/languages/wp-mail-smtp-vue.php:937 msgid "Read how to set up Brevo" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:924 +#: assets/languages/wp-mail-smtp-vue.php:940 msgid "We believe in full transparency. The Brevo links above are tracking links as part of our partnership with Brevo. We can recommend just about any SMTP service, but we only recommend products that we believe will add value to our users." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:927 +#: assets/languages/wp-mail-smtp-vue.php:943 #: src/Providers/Mailgun/Options.php:59 msgid "Mailgun API Key" msgstr "" #. Translators: Link to the Mailgun API settings. -#: assets/languages/wp-mail-smtp-vue.php:931 +#: assets/languages/wp-mail-smtp-vue.php:947 msgid "%1$sFollow this link%2$s to get a Mailgun API Key. Generate a key in the \"Mailgun API Keys\" section." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:934 +#: assets/languages/wp-mail-smtp-vue.php:950 msgid "Improve your SEO rankings with the All in One SEO plugin." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:937 +#: assets/languages/wp-mail-smtp-vue.php:953 #: src/Providers/Gmail/Options.php:91 msgid "One-Click Setup" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:940 +#: assets/languages/wp-mail-smtp-vue.php:956 #: src/Providers/Gmail/Options.php:103 msgid "Provides a quick and easy way to connect to Google that doesn't require creating your own app." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:943 +#: assets/languages/wp-mail-smtp-vue.php:959 msgid "Enabled" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:946 +#: assets/languages/wp-mail-smtp-vue.php:962 msgid "Disabled" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:949 +#: assets/languages/wp-mail-smtp-vue.php:965 msgid "Sign in with Google" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:952 -#: src/Admin/Area.php:183 +#: assets/languages/wp-mail-smtp-vue.php:968 +#: src/Admin/Area.php:181 msgid "There was an error while processing the authentication request." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:955 +#: assets/languages/wp-mail-smtp-vue.php:971 msgid "Now you can continue mailer configuration." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:958 +#: assets/languages/wp-mail-smtp-vue.php:974 msgid "Gmail mailer requires a valid Easy WP SMTP Pro license. Please activate your license key." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:961 +#: assets/languages/wp-mail-smtp-vue.php:977 msgid "One-Click Setup for Google Mailer requires an active license. Emails are currently not being sent." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:964 +#: assets/languages/wp-mail-smtp-vue.php:980 msgid "One-Click Setup for Google Mailer requires an active license. Verify your license to proceed with this one-click setup." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:967 +#: assets/languages/wp-mail-smtp-vue.php:983 msgid "One-Click Setup for Google Mailer requires an active license. Verify your license to proceed with this one-click setup, please." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:970 +#: assets/languages/wp-mail-smtp-vue.php:986 msgid "One-Click Setup for Google Mailer requires an active license. Verify your license to proceed with this One-Click Setup, please." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:973 +#: assets/languages/wp-mail-smtp-vue.php:989 msgid "You have successfully connected your site with your Gmail account. This site will now send emails via your Gmail account." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:976 +#: assets/languages/wp-mail-smtp-vue.php:992 msgid "You have successfully connected your site with your Gmail account. Now you can start sending emails through Gmail." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:979 +#: assets/languages/wp-mail-smtp-vue.php:995 msgid "The email address that emails are sent from. You can use only connected email address or " msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:982 +#: assets/languages/wp-mail-smtp-vue.php:998 msgid "The email address that emails are sent from. You can use only connected email address or his alias." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:985 +#: assets/languages/wp-mail-smtp-vue.php:1001 msgid "The email address that emails are sent from. The email address that emails are sent from. You can use only the connected email address or its alias." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:988 +#: assets/languages/wp-mail-smtp-vue.php:1004 msgid "The email address that emails are sent from. You can use only the connected email address or its alias." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:991 -#: src/Admin/Area.php:559 +#: assets/languages/wp-mail-smtp-vue.php:1007 +#: src/Admin/Area.php:557 msgid "One-Click Setup for Google Mailer
is a Pro Feature" msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:994 -#: src/Admin/Area.php:560 +#: assets/languages/wp-mail-smtp-vue.php:1010 +#: src/Admin/Area.php:558 msgid "We're sorry, One-Click Setup for Google Mailer is not available on your plan. Please upgrade to the Pro plan to unlock all these awesome features." msgstr "" -#: assets/languages/wp-mail-smtp-vue.php:997 +#: assets/languages/wp-mail-smtp-vue.php:1013 msgid "Install the WPForms plugin and create beautiful contact forms with just a few clicks." msgstr "" #. translators: %s - error code, returned by Google API. -#: src/Admin/Area.php:162 +#: src/Admin/Area.php:160 msgid "There was an error while processing the authentication request: %s. Please try again." msgstr "" -#: src/Admin/Area.php:176 +#: src/Admin/Area.php:174 msgid "There was an error while processing the authentication request. Please make sure that you have Client ID and Client Secret both valid and saved." msgstr "" #. translators: %s - Mailer anchor link. -#: src/Admin/Area.php:223 +#: src/Admin/Area.php:221 msgid "Thanks for using WP Mail SMTP! To complete the plugin setup and start sending emails, please select and configure your Mailer." msgstr "" #. translators: %s: Tools page URL. -#: src/Admin/Area.php:269 +#: src/Admin/Area.php:267 msgid "The Email Test tab was moved to WP Mail SMTP > Tools." msgstr "" -#: src/Admin/Area.php:320 -#: src/Admin/Area.php:321 -#: src/Admin/Area.php:1276 +#: src/Admin/Area.php:318 +#: src/Admin/Area.php:319 +#: src/Admin/Area.php:1278 msgid "Settings" msgstr "" -#: src/Admin/Area.php:329 -#: src/Admin/Area.php:330 +#: src/Admin/Area.php:327 +#: src/Admin/Area.php:328 #: src/Admin/Pages/Logs.php:48 #: src/Admin/Pages/LogsTab.php:51 #: src/Admin/Pages/LogsTab.php:143 @@ -1437,51 +1437,51 @@ msgstr "" msgid "Email Log" msgstr "" -#: src/Admin/Area.php:350 -#: src/Admin/Area.php:351 -#: src/Admin/Area.php:537 +#: src/Admin/Area.php:348 +#: src/Admin/Area.php:349 +#: src/Admin/Area.php:535 #: src/Admin/SetupWizard.php:239 #: src/Reports/Emails/Summary.php:313 msgid "Upgrade to Pro" msgstr "" -#: src/Admin/Area.php:395 -#: src/Admin/Area.php:401 +#: src/Admin/Area.php:393 +#: src/Admin/Area.php:399 #: src/Admin/Pages/SettingsTab.php:38 msgid "General" msgstr "" -#: src/Admin/Area.php:409 +#: src/Admin/Area.php:407 msgid "Multisite" msgstr "" -#: src/Admin/Area.php:410 +#: src/Admin/Area.php:408 msgid "Pro+ badge icon" msgstr "" -#: src/Admin/Area.php:413 +#: src/Admin/Area.php:411 msgid "Simply enable network-wide settings and every site on your network will inherit the same SMTP settings. Save time and only configure your SMTP provider once." msgstr "" -#: src/Admin/Area.php:420 +#: src/Admin/Area.php:418 msgid "Settings control" msgstr "" -#: src/Admin/Area.php:426 +#: src/Admin/Area.php:424 msgid "Make the plugin settings global network-wide" msgstr "" -#: src/Admin/Area.php:430 +#: src/Admin/Area.php:428 msgid "If disabled, each subsite of this multisite will have its own WP Mail SMTP settings page that has to be configured separately." msgstr "" -#: src/Admin/Area.php:432 +#: src/Admin/Area.php:430 msgid "If enabled, these global settings will manage email sending for all subsites of this multisite." msgstr "" -#: src/Admin/Area.php:439 -#: src/Admin/Area.php:1268 -#: src/Admin/DashboardWidget.php:271 +#: src/Admin/Area.php:437 +#: src/Admin/Area.php:1270 +#: src/Admin/DashboardWidget.php:274 #: src/Admin/FlyoutMenu.php:100 #: src/Admin/Pages/AdditionalConnectionsTab.php:115 #: src/Admin/Pages/AdditionalConnectionsTab.php:125 @@ -1500,127 +1500,135 @@ msgstr "" msgid "Upgrade to WP Mail SMTP Pro" msgstr "" -#: src/Admin/Area.php:520 +#: src/Admin/Area.php:518 msgid "Are you sure you want to reset the current provider connection? You will need to immediately create a new one to be able to send emails." msgstr "" -#: src/Admin/Area.php:521 +#: src/Admin/Area.php:519 msgid "Changes that you made to the settings are not saved!" msgstr "" -#: src/Admin/Area.php:525 +#: src/Admin/Area.php:523 msgid "

The Default (PHP) mailer is currently selected, but is not recommended because in most cases it does not resolve email delivery issues.

Please consider selecting and configuring one of the other mailers.

" msgstr "" -#: src/Admin/Area.php:528 +#: src/Admin/Area.php:526 #: src/Admin/PageAbstract.php:192 msgid "Save Settings" msgstr "" -#: src/Admin/Area.php:529 +#: src/Admin/Area.php:527 #: src/Admin/Pages/DebugEventsTab.php:149 msgid "Cancel" msgstr "" -#: src/Admin/Area.php:530 +#: src/Admin/Area.php:528 msgid "Warning icon" msgstr "" -#: src/Admin/Area.php:535 +#: src/Admin/Area.php:533 msgid "%name% is a PRO Feature" msgstr "" -#: src/Admin/Area.php:536 +#: src/Admin/Area.php:534 msgid "We're sorry, the %name% mailer is not available on your plan. Please upgrade to the PRO plan to unlock all these awesome features." msgstr "" #. Translators: %s - discount value $50. -#: src/Admin/Area.php:542 +#: src/Admin/Area.php:540 msgid "Bonus: WP Mail SMTP users get %s off regular price,
applied at checkout." msgstr "" -#: src/Admin/Area.php:556 +#: src/Admin/Area.php:554 #: src/Admin/SetupWizard.php:258 msgid "Already purchased?" msgstr "" -#: src/Admin/Area.php:643 -#: src/Admin/Area.php:651 +#: src/Admin/Area.php:561 +msgid "Email Rate Limiting
is a Pro Feature" +msgstr "" + +#: src/Admin/Area.php:562 +msgid "We're sorry, Email Rate Limiting is not available on your plan. Please upgrade to the Pro plan to unlock all these awesome features." +msgstr "" + +#: src/Admin/Area.php:645 +#: src/Admin/Area.php:653 #: src/Admin/Pages/AboutTab.php:233 #: src/Connect.php:55 msgid "Activate" msgstr "" -#: src/Admin/Area.php:645 +#: src/Admin/Area.php:647 #: src/Admin/Pages/AboutTab.php:222 msgid "Active" msgstr "" -#: src/Admin/Area.php:646 +#: src/Admin/Area.php:648 #: src/Admin/Pages/AboutTab.php:230 msgid "Inactive" msgstr "" -#: src/Admin/Area.php:647 +#: src/Admin/Area.php:649 msgid "Processing..." msgstr "" -#: src/Admin/Area.php:648 +#: src/Admin/Area.php:650 #: src/Admin/Pages/AboutTab.php:251 msgid "Visit Site" msgstr "" -#: src/Admin/Area.php:649 +#: src/Admin/Area.php:651 msgid "Could not install a plugin. Please download from WordPress.org and install manually." msgstr "" -#: src/Admin/Area.php:650 +#: src/Admin/Area.php:652 msgid "Install and Activate" msgstr "" -#: src/Admin/Area.php:652 +#: src/Admin/Area.php:654 msgid "Download" msgstr "" #. translators: %1$s - WP.org link; %2$s - same WP.org link. -#: src/Admin/Area.php:721 +#: src/Admin/Area.php:723 msgid "Please rate WP Mail SMTP ★★★★★ on WordPress.org to help us spread the word. Thank you from the WP Mail SMTP team!" msgstr "" -#: src/Admin/Area.php:1173 +#: src/Admin/Area.php:1175 msgid "WP Mail SMTP Pro related message was successfully dismissed." msgstr "" -#: src/Admin/Area.php:1239 +#: src/Admin/Area.php:1241 msgid "Educational notice for this mailer was successfully dismissed." msgstr "" -#: src/Admin/Area.php:1269 +#: src/Admin/Area.php:1271 msgid "Get WP Mail SMTP Pro" msgstr "" -#: src/Admin/Area.php:1275 +#: src/Admin/Area.php:1277 msgid "Go to WP Mail SMTP Settings page" msgstr "" -#: src/Admin/Area.php:1283 +#: src/Admin/Area.php:1285 msgid "Go to WPMailSMTP.com documentation page" msgstr "" -#: src/Admin/Area.php:1284 -#: src/Admin/Area.php:1459 +#: src/Admin/Area.php:1286 +#: src/Admin/Area.php:1461 msgid "Docs" msgstr "" -#: src/Admin/Area.php:1437 +#: src/Admin/Area.php:1439 msgid "Made with ♥ by the WP Mail SMTP team" msgstr "" -#: src/Admin/Area.php:1448 +#: src/Admin/Area.php:1450 msgid "Support" msgstr "" -#: src/Admin/Area.php:1467 +#: src/Admin/Area.php:1469 msgid "Free Plugins" msgstr "" @@ -1672,169 +1680,174 @@ msgstr "" msgid "Dismiss this notice" msgstr "" -#: src/Admin/DashboardWidget.php:267 +#: src/Admin/DashboardWidget.php:270 msgid "View Detailed Email Stats" msgstr "" -#: src/Admin/DashboardWidget.php:268 +#: src/Admin/DashboardWidget.php:271 msgid "Automatically keep track of every email sent from your WordPress site and view valuable statistics right here in your dashboard." msgstr "" -#: src/Admin/DashboardWidget.php:348 +#: src/Admin/DashboardWidget.php:351 #: src/Pro/Emails/Logs/Admin/SinglePage.php:263 msgid "Error icon" msgstr "" #. translators: %d - number of failed emails. -#: src/Admin/DashboardWidget.php:356 +#: src/Admin/DashboardWidget.php:359 msgid "We detected %d failed email in the last 30 days." msgid_plural "We detected %d failed emails in the last 30 days." msgstr[0] "" msgstr[1] "" #. translators: %s - URL to WPMailSMTP.com. -#: src/Admin/DashboardWidget.php:367 +#: src/Admin/DashboardWidget.php:370 msgid "Upgrade to Pro and get instant alert notifications when they fail." msgstr "" -#: src/Admin/DashboardWidget.php:388 +#: src/Admin/DashboardWidget.php:391 msgid "Dismiss email alert block" msgstr "" -#: src/Admin/DashboardWidget.php:414 +#: src/Admin/DashboardWidget.php:417 msgid "NEW! Enable Weekly Email Summaries" msgstr "" -#: src/Admin/DashboardWidget.php:423 +#: src/Admin/DashboardWidget.php:426 msgid "View Example" msgstr "" -#: src/Admin/DashboardWidget.php:429 +#: src/Admin/DashboardWidget.php:432 msgid "Weekly Email Summaries have been enabled" msgstr "" #. translators: %s - URL to WPMailSMTP.com. -#: src/Admin/DashboardWidget.php:452 +#: src/Admin/DashboardWidget.php:455 msgid "Upgrade to Pro for detailed stats, email logs, and more!" msgstr "" -#: src/Admin/DashboardWidget.php:478 +#: src/Admin/DashboardWidget.php:481 msgid "Select timespan" msgstr "" -#: src/Admin/DashboardWidget.php:480 +#: src/Admin/DashboardWidget.php:483 msgid "All Time" msgstr "" #. translators: %d - Number of days. -#: src/Admin/DashboardWidget.php:485 +#: src/Admin/DashboardWidget.php:488 msgid "Last %d day" msgid_plural "Last %d days" msgstr[0] "" msgstr[1] "" -#: src/Admin/DashboardWidget.php:501 +#: src/Admin/DashboardWidget.php:504 msgid "Confirmed Emails" msgstr "" -#: src/Admin/DashboardWidget.php:502 +#: src/Admin/DashboardWidget.php:505 msgid "Unconfirmed Emails" msgstr "" -#: src/Admin/DashboardWidget.php:503 +#: src/Admin/DashboardWidget.php:506 msgid "Failed Emails" msgstr "" -#: src/Admin/DashboardWidget.php:508 +#: src/Admin/DashboardWidget.php:511 msgid "Sent Emails" msgstr "" -#: src/Admin/DashboardWidget.php:512 +#: src/Admin/DashboardWidget.php:515 msgid "Select email type" msgstr "" -#: src/Admin/DashboardWidget.php:514 +#: src/Admin/DashboardWidget.php:517 msgid "All Emails" msgstr "" -#: src/Admin/DashboardWidget.php:542 +#: src/Admin/DashboardWidget.php:545 msgid "Graph Style" msgstr "" -#: src/Admin/DashboardWidget.php:546 +#: src/Admin/DashboardWidget.php:549 msgid "Bar" msgstr "" -#: src/Admin/DashboardWidget.php:550 +#: src/Admin/DashboardWidget.php:553 msgid "Line" msgstr "" -#: src/Admin/DashboardWidget.php:555 +#: src/Admin/DashboardWidget.php:558 msgid "Color Scheme" msgstr "" -#: src/Admin/DashboardWidget.php:563 +#: src/Admin/DashboardWidget.php:566 msgid "WordPress" msgstr "" -#: src/Admin/DashboardWidget.php:567 +#: src/Admin/DashboardWidget.php:570 msgid "Save Changes" msgstr "" -#: src/Admin/DashboardWidget.php:612 +#: src/Admin/DashboardWidget.php:615 msgid "Table cell icon" msgstr "" #. translators: %d number of total emails sent. -#: src/Admin/DashboardWidget.php:643 +#: src/Admin/DashboardWidget.php:646 msgid "%d total" msgstr "" #. translators: %s fixed string of 'N/A'. -#: src/Admin/DashboardWidget.php:649 +#: src/Admin/DashboardWidget.php:652 msgid "Confirmed %s" msgstr "" #. translators: %s fixed string of 'N/A'. -#: src/Admin/DashboardWidget.php:655 +#: src/Admin/DashboardWidget.php:658 msgid "Unconfirmed %s" msgstr "" #. translators: %s fixed string of 'N/A'. -#: src/Admin/DashboardWidget.php:661 +#: src/Admin/DashboardWidget.php:664 msgid "Failed %s" msgstr "" #. translators: %s fixed string of 'N/A'. -#: src/Admin/DashboardWidget.php:672 +#: src/Admin/DashboardWidget.php:675 msgid "Sent %s" msgstr "" #: src/Admin/DebugEvents/DebugEvents.php:100 -#: src/Admin/DebugEvents/DebugEvents.php:139 +#: src/Admin/DebugEvents/DebugEvents.php:143 msgid "Access rejected." msgstr "" #: src/Admin/DebugEvents/DebugEvents.php:104 -#: src/Admin/DebugEvents/DebugEvents.php:143 +#: src/Admin/DebugEvents/DebugEvents.php:147 #: src/Admin/Pages/DebugEventsTab.php:365 msgid "You don't have the capability to perform this action." msgstr "" -#: src/Admin/DebugEvents/DebugEvents.php:117 +#: src/Admin/DebugEvents/DebugEvents.php:108 +#: src/Admin/DebugEvents/DebugEvents.php:151 +msgid "For some reason the database table was not installed correctly. Please contact plugin support team to diagnose and fix the issue." +msgstr "" + +#: src/Admin/DebugEvents/DebugEvents.php:121 msgid "All debug event entries were deleted successfully." msgstr "" #. translators: %s - WPDB error message. -#: src/Admin/DebugEvents/DebugEvents.php:122 +#: src/Admin/DebugEvents/DebugEvents.php:126 msgid "There was an issue while trying to delete all debug event entries. Error message: %s" msgstr "" -#: src/Admin/DebugEvents/DebugEvents.php:149 +#: src/Admin/DebugEvents/DebugEvents.php:157 msgid "No Debug Event ID provided!" msgstr "" -#: src/Admin/DebugEvents/DebugEvents.php:327 +#: src/Admin/DebugEvents/DebugEvents.php:343 msgid "Number of events per page:" msgstr "" @@ -2269,14 +2282,14 @@ msgstr "" msgid "Could not install the plugin. Plugin is not whitelisted." msgstr "" -#: src/Admin/Pages/AboutTab.php:654 +#: src/Admin/Pages/AboutTab.php:658 #: src/Connect.php:210 #: src/Connect.php:218 #: src/Connect.php:297 msgid "Plugin installed & activated." msgstr "" -#: src/Admin/Pages/AboutTab.php:662 +#: src/Admin/Pages/AboutTab.php:666 msgid "Plugin installed." msgstr "" @@ -2764,7 +2777,7 @@ msgid "Search Events" msgstr "" #: src/Admin/Pages/DebugEventsTab.php:377 -#: src/Admin/Pages/MiscTab.php:398 +#: src/Admin/Pages/MiscTab.php:502 #: src/Admin/Pages/SettingsTab.php:440 msgid "Settings were successfully saved." msgstr "" @@ -2784,40 +2797,42 @@ msgstr "" msgid "between %1$s and %2$s" msgstr "" -#: src/Admin/Pages/DebugEventsTab.php:476 +#: src/Admin/Pages/DebugEventsTab.php:494 msgid "Debug Events are Not Installed Correctly" msgstr "" -#: src/Admin/Pages/DebugEventsTab.php:481 -msgid "The database table was not installed correctly. Please contact plugin support to diagnose and fix the issue. Provide them the error message below:" +#. translators: %1$s - create missing tables link; %2$s - contact support link. +#: src/Admin/Pages/DebugEventsTab.php:501 +msgid "WP Mail SMTP is using custom database tables for some of its features. In order to work properly, the custom tables should be created, and it seems they are missing. Please try to create the missing DB tables by clicking on this link. If this issue persists, please contact our support and provide the error message below:" msgstr "" -#: src/Admin/Pages/DebugEventsTab.php:485 -msgid "For some reason the database table was not installed correctly. Please contact plugin support team to diagnose and fix the issue." +#. translators: %1$s - create missing tables link; %2$s - contact support link. +#: src/Admin/Pages/DebugEventsTab.php:518 +msgid "WP Mail SMTP is using custom database tables for some of its features. In order to work properly, the custom tables should be created, and it seems they are missing. Please try to create the missing DB tables by clicking on this link. If this issue persists, please contact our support." msgstr "" -#: src/Admin/Pages/DebugEventsTab.php:523 +#: src/Admin/Pages/DebugEventsTab.php:567 msgid "1 Week" msgstr "" -#: src/Admin/Pages/DebugEventsTab.php:524 +#: src/Admin/Pages/DebugEventsTab.php:568 msgid "1 Month" msgstr "" -#: src/Admin/Pages/DebugEventsTab.php:525 +#: src/Admin/Pages/DebugEventsTab.php:569 msgid "3 Months" msgstr "" -#: src/Admin/Pages/DebugEventsTab.php:526 +#: src/Admin/Pages/DebugEventsTab.php:570 msgid "6 Months" msgstr "" -#: src/Admin/Pages/DebugEventsTab.php:527 +#: src/Admin/Pages/DebugEventsTab.php:571 msgid "1 Year" msgstr "" #. translators: %d - days count. -#: src/Admin/Pages/DebugEventsTab.php:541 +#: src/Admin/Pages/DebugEventsTab.php:585 msgid "%d Day" msgid_plural "%d Days" msgstr[0] "" @@ -3013,105 +3028,123 @@ msgstr "" msgid "Export logs to CSV, XLSX, or EML" msgstr "" -#: src/Admin/Pages/MiscTab.php:38 +#: src/Admin/Pages/MiscTab.php:39 msgid "Misc" msgstr "" -#: src/Admin/Pages/MiscTab.php:50 +#: src/Admin/Pages/MiscTab.php:51 msgid "Miscellaneous" msgstr "" -#: src/Admin/Pages/MiscTab.php:77 +#: src/Admin/Pages/MiscTab.php:78 msgid "Do Not Send" msgstr "" -#: src/Admin/Pages/MiscTab.php:93 +#: src/Admin/Pages/MiscTab.php:94 msgid "Stop sending all emails" msgstr "" -#: src/Admin/Pages/MiscTab.php:99 +#: src/Admin/Pages/MiscTab.php:100 msgid "Some plugins, like BuddyPress and Events Manager, are using their own email delivery solutions. By default, this option does not block their emails, as those plugins do not use default wp_mail() function to send emails." msgstr "" -#: src/Admin/Pages/MiscTab.php:107 +#: src/Admin/Pages/MiscTab.php:108 msgid "You will need to consult with their documentation to switch them to use default WordPress email delivery." msgstr "" -#: src/Admin/Pages/MiscTab.php:109 +#: src/Admin/Pages/MiscTab.php:110 msgid "Test emails are allowed to be sent, regardless of this option." msgstr "" #. translators: %s - The URL to the constants support article. -#: src/Admin/Pages/MiscTab.php:117 +#: src/Admin/Pages/MiscTab.php:118 msgid "Please read this support article if you want to enable this option using constants." msgstr "" -#: src/Admin/Pages/MiscTab.php:139 +#: src/Admin/Pages/MiscTab.php:140 msgid "Hide Announcements" msgstr "" -#: src/Admin/Pages/MiscTab.php:154 +#: src/Admin/Pages/MiscTab.php:155 msgid "Hide plugin announcements and update details." msgstr "" -#: src/Admin/Pages/MiscTab.php:164 +#: src/Admin/Pages/MiscTab.php:165 msgid "Hide Email Delivery Errors" msgstr "" -#: src/Admin/Pages/MiscTab.php:183 +#: src/Admin/Pages/MiscTab.php:184 msgid "Hide warnings alerting of email delivery errors." msgstr "" #. translators: %s - filter that was used to disabled. -#: src/Admin/Pages/MiscTab.php:189 +#: src/Admin/Pages/MiscTab.php:190 msgid "Email Delivery Errors were disabled using a %s filter." msgstr "" -#: src/Admin/Pages/MiscTab.php:198 +#: src/Admin/Pages/MiscTab.php:199 msgid "This is not recommended and should only be done for staging or development sites." msgstr "" -#: src/Admin/Pages/MiscTab.php:213 +#: src/Admin/Pages/MiscTab.php:214 msgid "Hide Dashboard Widget" msgstr "" -#: src/Admin/Pages/MiscTab.php:228 +#: src/Admin/Pages/MiscTab.php:229 msgid "Hide the WP Mail SMTP Dashboard Widget." msgstr "" -#: src/Admin/Pages/MiscTab.php:238 +#: src/Admin/Pages/MiscTab.php:239 msgid "Allow Usage Tracking" msgstr "" -#: src/Admin/Pages/MiscTab.php:263 +#: src/Admin/Pages/MiscTab.php:264 msgid "Disable Email Summaries" msgstr "" -#: src/Admin/Pages/MiscTab.php:282 +#: src/Admin/Pages/MiscTab.php:283 msgid "Disable Email Summaries weekly delivery." msgstr "" #. translators: %s - Email Log settings url. -#: src/Admin/Pages/MiscTab.php:287 +#: src/Admin/Pages/MiscTab.php:288 msgid "Please enable Email Logging first, before this setting can be configured." msgstr "" -#: src/Admin/Pages/MiscTab.php:300 +#: src/Admin/Pages/MiscTab.php:301 msgid "View Email Summary Example" msgstr "" -#: src/Admin/Pages/MiscTab.php:316 +#: src/Admin/Pages/MiscTab.php:317 +msgid "Optimize Email Sending" +msgstr "" + +#. translators: %1$s - Documentation URL. +#: src/Admin/Pages/MiscTab.php:335 +msgid "Send emails asynchronously, which will make pages with email requests load faster, but may delay email delivery by a minute or two. Learn More" +msgstr "" + +#: src/Admin/Pages/MiscTab.php:366 msgid "Uninstall WP Mail SMTP" msgstr "" -#: src/Admin/Pages/MiscTab.php:331 +#: src/Admin/Pages/MiscTab.php:381 msgid "Remove ALL WP Mail SMTP data upon plugin deletion." msgstr "" -#: src/Admin/Pages/MiscTab.php:334 +#: src/Admin/Pages/MiscTab.php:384 msgid "All settings will be unrecoverable." msgstr "" +#: src/Admin/Pages/MiscTab.php:406 +msgid "Email Rate Limiting" +msgstr "" + +#. translators: %1$s - Documentation URL. +#: src/Admin/Pages/MiscTab.php:421 +msgid "Limit the number of emails this site will send in each time interval (per minute, hour, day, week and month). Emails that will cross those set limits will be queued and sent as soon as your limits allow. Learn More" +msgstr "" + #: src/Admin/Pages/SettingsTab.php:64 msgid "License" msgstr "" @@ -4065,7 +4098,7 @@ msgid "Are you enjoying WP Mail SMTP?" msgstr "" #: src/Admin/Review.php:140 -msgid "Not Really" +msgid "No" msgstr "" #: src/Admin/Review.php:144 @@ -4073,7 +4106,7 @@ msgid "We're sorry to hear you aren't enjoying WP Mail SMTP. We would love a cha msgstr "" #: src/Admin/Review.php:151 -msgid "Give Feedback" +msgid "Provide Feedback" msgstr "" #: src/Admin/Review.php:156 @@ -4081,22 +4114,18 @@ msgid "No thanks" msgstr "" #: src/Admin/Review.php:161 -msgid "That’s awesome! Could you please do me a BIG favor and give it a 5-star rating on WordPress to help us spread the word and boost our motivation?" +msgid "That's fantastic! Would you consider giving it a 5-star rating on WordPress.org? It will help other users with email issues and it will mean the world to us!" msgstr "" -#: src/Admin/Review.php:162 -msgid "~ Jared Atchison
Co-Founder, WP Mail SMTP" +#: src/Admin/Review.php:164 +msgid "Yes, I'll rate it with 5-stars" msgstr "" -#: src/Admin/Review.php:165 -msgid "Ok, you deserve it" +#: src/Admin/Review.php:166 +msgid "No, maybe later" msgstr "" #: src/Admin/Review.php:167 -msgid "Nope, maybe later" -msgstr "" - -#: src/Admin/Review.php:168 msgid "I already did" msgstr "" @@ -4176,55 +4205,55 @@ msgstr "" msgid "Could not install the plugin. WP Plugin installer initialization failed." msgstr "" -#: src/Admin/SetupWizard.php:991 +#: src/Admin/SetupWizard.php:992 msgid "Could not install the plugin. WP Plugin installer could not retrieve plugin information." msgstr "" -#: src/Admin/SetupWizard.php:1052 +#: src/Admin/SetupWizard.php:1053 msgid "Contact Forms by WPForms" msgstr "" -#: src/Admin/SetupWizard.php:1058 +#: src/Admin/SetupWizard.php:1059 msgid "All in One SEO" msgstr "" -#: src/Admin/SetupWizard.php:1064 +#: src/Admin/SetupWizard.php:1065 msgid "Google Analytics by MonsterInsights" msgstr "" -#: src/Admin/SetupWizard.php:1070 +#: src/Admin/SetupWizard.php:1071 msgid "Code Snippets by WPCode" msgstr "" -#: src/Admin/SetupWizard.php:1076 +#: src/Admin/SetupWizard.php:1077 msgid "Giveaways by RafflePress" msgstr "" -#: src/Admin/SetupWizard.php:1082 +#: src/Admin/SetupWizard.php:1083 msgid "Smash Balloon Social Photo Feed" msgstr "" -#: src/Admin/SetupWizard.php:1088 +#: src/Admin/SetupWizard.php:1089 msgid "SeedProd Landing Page Builder" msgstr "" -#: src/Admin/SetupWizard.php:1094 +#: src/Admin/SetupWizard.php:1095 msgid "WP Call Button" msgstr "" -#: src/Admin/SetupWizard.php:1169 +#: src/Admin/SetupWizard.php:1170 msgid "You are already using the WP Mail SMTP PRO version. Please refresh this page and verify your license key." msgstr "" -#: src/Admin/SetupWizard.php:1173 +#: src/Admin/SetupWizard.php:1174 msgid "You don't have the permission to perform this action." msgstr "" -#: src/Admin/SetupWizard.php:1179 +#: src/Admin/SetupWizard.php:1180 msgid "Please enter a valid license key!" msgstr "" -#: src/Admin/SetupWizard.php:1189 +#: src/Admin/SetupWizard.php:1190 msgid "Upgrade functionality not available!" msgstr "" @@ -4298,82 +4327,82 @@ msgid "Primary" msgstr "" #. translators: %s - plugin name and its version. -#: src/Core.php:447 +#: src/Core.php:474 msgid "EMAILING DISABLED: The %s is currently blocking all emails from being sent." msgstr "" #. translators: %1$s - constant name; %2$s - constant value. -#: src/Core.php:454 +#: src/Core.php:481 msgid "To send emails, change the value of the %1$s constant to %2$s." msgstr "" #. translators: %s - plugin Misc settings page URL. -#: src/Core.php:461 +#: src/Core.php:488 msgid "To send emails, go to plugin Misc settings and disable the \"Do Not Send\" option." msgstr "" -#: src/Core.php:473 +#: src/Core.php:500 msgid "If you create a test email on this page, it will still be sent." msgstr "" -#: src/Core.php:512 +#: src/Core.php:539 msgid "Heads up! The last email your site attempted to send was unsuccessful." msgstr "" -#: src/Core.php:1316 +#: src/Core.php:1351 msgid "WP Mail SMTP has detected incorrect \"wp_mail\" function location. Usually, this means that emails will not be sent successfully!" msgstr "" #. translators: %s - plugin name. -#: src/Core.php:1321 +#: src/Core.php:1356 msgid "It looks like the \"%s\" plugin is overwriting the \"wp_mail\" function. Please reach out to the plugin developer on how to disable or remove the \"wp_mail\" function overwrite to prevent conflicts with WP Mail SMTP." msgstr "" #. translators: %s - must-use plugin name. -#: src/Core.php:1327 +#: src/Core.php:1362 msgid "It looks like the \"%s\" must-use plugin is overwriting the \"wp_mail\" function. Please reach out to your hosting provider on how to disable or remove the \"wp_mail\" function overwrite to prevent conflicts with WP Mail SMTP." msgstr "" -#: src/Core.php:1331 +#: src/Core.php:1366 msgid "It looks like it's overwritten in the \"wp-config.php\" file. Please reach out to your hosting provider on how to disable or remove the \"wp_mail\" function overwrite to prevent conflicts with WP Mail SMTP." msgstr "" #. translators: %s - path. -#: src/Core.php:1336 +#: src/Core.php:1371 msgid "Current function path: %s" msgstr "" -#: src/DBRepair.php:91 +#: src/DBRepair.php:101 msgid "Unknown." msgstr "" #. translators: %1$s - missing table name; %2$s - error message. -#: src/DBRepair.php:144 +#: src/DBRepair.php:159 msgid "Table: %1$s. Reason: %2$s" msgstr "" -#: src/DBRepair.php:174 +#: src/DBRepair.php:189 msgid "Missing DB tables were created successfully." msgstr "" #. translators: %1$s: Singular/Plural string, %2$s - the error messages from the migrations for the missing tables. -#: src/DBRepair.php:192 +#: src/DBRepair.php:207 msgid "The following DB %1$s still missing.
%2$s" msgstr "" -#: src/DBRepair.php:197 +#: src/DBRepair.php:212 msgid "Table is" msgid_plural "Tables are" msgstr[0] "" msgstr[1] "" -#: src/DBRepair.php:203 +#: src/DBRepair.php:218 msgid "The following DB table is still missing." msgid_plural "The following DB tables are still missing." msgstr[0] "" msgstr[1] "" -#: src/DBRepair.php:211 +#: src/DBRepair.php:226 msgid "Some DB Tables are still missing." msgstr "" @@ -4385,15 +4414,23 @@ msgstr "" msgid "Off" msgstr "" -#: src/MailCatcherTrait.php:164 +#: src/MailCatcherTrait.php:218 #: src/Providers/MailerAbstract.php:308 msgid "An email request was sent." msgstr "" -#: src/MailCatcherTrait.php:184 +#: src/MailCatcherTrait.php:236 msgid "Debug Output:" msgstr "" +#: src/MailCatcherTrait.php:306 +msgid "The selected mailer not found." +msgstr "" + +#: src/MailCatcherTrait.php:310 +msgid "The selected mailer is not compatible with your PHP version." +msgstr "" + #. translators: %1$s - WP Mail SMTP, %2$s - error message. #: src/Migration.php:135 msgid "There was an error while upgrading the database. Please contact %1$s support with this information: %2$s." @@ -4405,7 +4442,7 @@ msgid "There was an error while upgrading the %1$s database. Please contact %2$s msgstr "" #. translators: %1$s - constant that was used; %2$s - file where it was used. -#: src/Options.php:1483 +#: src/Options.php:1497 msgid "The value of this field was set using a constant %1$s most likely inside %2$s of your WordPress installation." msgstr "" @@ -4834,6 +4871,60 @@ msgstr "" msgid "We're sorry, the Zoho Mail mailer is not available on your plan. Please upgrade to the PRO plan to unlock all these awesome features." msgstr "" +#: src/Queue/Email.php:150 +msgid "Record not found in DB" +msgstr "" + +#: src/Queue/Email.php:162 +msgid "Invalid record format" +msgstr "" + +#. translators: %1$s - JSON error message. +#: src/Queue/Email.php:171 +msgid "Data JSON decoding error: %1$s" +msgstr "" + +#. translators: %1$s - JSON error message. +#: src/Queue/Email.php:545 +msgid "Data JSON encoding error: %1$s" +msgstr "" + +#. translators: %1$s - Database error message. +#: src/Queue/Email.php:600 +msgid "Insert/update SQL query error: %1$s" +msgstr "" + +#. translators: %1$s - exception message. +#: src/Queue/Queue.php:117 +msgid "[Emails Queue] Skipped enqueueing email. %1$s." +msgstr "" + +#. translators: %1$d - email ID. +#: src/Queue/Queue.php:143 +msgid "[Emails Queue] Skipped email sending from the queue. Queue::send_email method was called directly. Email ID: %1$d." +msgstr "" + +#. translators: %1$s - exception message; %2$s - email ID. +#: src/Queue/Queue.php:159 +msgid "[Emails Queue] Skipped email sending from the queue. %1$s. Email ID: %2$s" +msgstr "" + +#. translators: %1$d - email ID; %2$s - email status. +#: src/Queue/Queue.php:173 +msgid "[Emails Queue] Skipped email sending from the queue. Wrong email status. Email ID: %1$d, email status: %2$s." +msgstr "" + +#. translators: %1$s - exception message; %2$d - email ID. +#: src/Queue/Queue.php:231 +msgid "[Emails Queue] Failed to update queue record after sending email from the queue. %1$s. Email ID: %2$d" +msgstr "" + +#. translators: %1$s - exception message. +#: src/Queue/Queue.php:401 +#: src/Queue/Queue.php:695 +msgid "[Emails Queue] Skipped processing enqueued email. %1$s. Email ID: %2$d" +msgstr "" + #. translators: %s - site domain. #: src/Reports/Emails/Summary.php:88 msgid "Your Weekly WP Mail SMTP Summary for %s" @@ -5045,10 +5136,10 @@ msgid "WP Mail SMTP plugin is disabled on your site until you f msgstr "" #. translators: %s The minimal WP version supported by WP Mail SMTP. -#: wp_mail_smtp.php:277 +#: wp_mail_smtp.php:297 msgid "Your site is running an old version of WordPress that is no longer supported by WP Mail SMTP. Please update your WordPress site to at least version %s." msgstr "" -#: wp_mail_smtp.php:288 +#: wp_mail_smtp.php:308 msgid "WP Mail SMTP plugin is disabled on your site until WordPress is updated to the required version." msgstr "" diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/vue/js/chunk-vendors.min.js b/wp/wp-content/plugins/wp-mail-smtp/assets/vue/js/chunk-vendors.min.js index 58132258..7776e43f 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/vue/js/chunk-vendors.min.js +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/vue/js/chunk-vendors.min.js @@ -1,9 +1,9 @@ -(self["wpmailsmtpjsonp"]=self["wpmailsmtpjsonp"]||[]).push([[998],{1001:function(t,e,n){"use strict";function r(t,e,n,r,o,i,a,s){var c,u="function"===typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(c=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"===typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=c):o&&(c=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(u.functional){u._injectStyles=c;var l=u.render;u.render=function(t,e){return c.call(e),l(t,e)}}else{var f=u.beforeCreate;u.beforeCreate=f?[].concat(f,c):[c]}return{exports:t,options:u}}n.d(e,{Z:function(){return r}})},3165:function(t,e,n){"use strict";n.d(e,{__:function(){return J},l5:function(){return X},gB:function(){return c}});var r=n(9588),o=n.n(r),i=n(8975),a=n.n(i),s=o()(console.error);function c(t){try{for(var e=arguments.length,n=new Array(e>1?e-1:0),r=1;r=0||u[o]":5,">=":5,"==":4,"!=":4,"&&":3,"||":2,"?":1,"?:":1},l=["(","?"],f={")":["("],":":["?","?:"]},p=/<=|>=|==|!=|&&|\|\||\?:|\(|!|\*|\/|%|\+|-|<|>|\?|\)|:/;var v={"!":function(t){return!t},"*":function(t,e){return t*e},"/":function(t,e){return t/e},"%":function(t,e){return t%e},"+":function(t,e){return t+e},"-":function(t,e){return t-e},"<":function(t,e){return t":function(t,e){return t>e},">=":function(t,e){return t>=e},"==":function(t,e){return t===e},"!=":function(t,e){return t!==e},"&&":function(t,e){return t&&e},"||":function(t,e){return t||e},"?:":function(t,e,n){if(t)throw e;return n}};function m(t,e){var n,r,o,i,a,s,c=[];for(n=0;n0&&void 0!==arguments[0]?arguments[0]:"default";return r.data[t]},c=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"default";r.data[e]=O(O(O({},k),r.data[e]),t),r.data[e][""]=O(O({},k[""]),r.data[e][""])},u=function(t,e){c(t,e),i()},l=function(t,e){r.data={},r.pluralForms={},u(t,e)},f=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default",e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,o=arguments.length>3?arguments[3]:void 0,i=arguments.length>4?arguments[4]:void 0;return r.data[t]||c(void 0,t),r.dcnpgettext(t,e,n,o,i)},p=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"default";return t},d=function(t,e){var r=f(e,void 0,t);return n?(r=n.applyFilters("i18n.gettext",r,t,e),n.applyFilters("i18n.gettext_"+p(e),r,t,e)):r},h=function(t,e,r){var o=f(r,e,t);return n?(o=n.applyFilters("i18n.gettext_with_context",o,t,e,r),n.applyFilters("i18n.gettext_with_context_"+p(r),o,t,e,r)):o},v=function(t,e,r,o){var i=f(o,void 0,t,e,r);return n?(i=n.applyFilters("i18n.ngettext",i,t,e,r,o),n.applyFilters("i18n.ngettext_"+p(o),i,t,e,r,o)):i},m=function(t,e,r,o,i){var a=f(i,o,t,e,r);return n?(a=n.applyFilters("i18n.ngettext_with_context",a,t,e,r,o,i),n.applyFilters("i18n.ngettext_with_context_"+p(i),a,t,e,r,o,i)):a},g=function(){return"rtl"===h("ltr","text direction")},y=function(t,e,o){var i,a,s=e?e+""+t:t,c=!(null===(i=r.data)||void 0===i||null===(a=i[null!==o&&void 0!==o?o:"default"])||void 0===a||!a[s]);return n&&(c=n.applyFilters("i18n.has_translation",c,t,e,o),c=n.applyFilters("i18n.has_translation_"+p(o),c,t,e,o)),c};if(t&&u(t,e),n){var w=function(t){C.test(t)&&i()};n.addAction("hookAdded","core/i18n",w),n.addAction("hookRemoved","core/i18n",w)}return{getLocaleData:s,setLocaleData:u,resetLocaleData:l,subscribe:a,__:d,_x:h,_n:v,_nx:m,isRTL:g,hasTranslation:y}},S=n(5226);function E(t){return"string"!==typeof t||""===t?(console.error("The namespace must be a non-empty string."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.\-\/]*$/.test(t)||(console.error("The namespace can only contain numbers, letters, dashes, periods, underscores and slashes."),!1)}var A=E;function $(t){return"string"!==typeof t||""===t?(console.error("The hook name must be a non-empty string."),!1):/^__/.test(t)?(console.error("The hook name cannot begin with `__`."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(t)||(console.error("The hook name can only contain numbers, letters, dashes, periods and underscores."),!1)}var T=$;function P(t,e){return function(n,r,o){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:10,a=t[e];if(T(n)&&A(r))if("function"===typeof o)if("number"===typeof i){var s={callback:o,priority:i,namespace:r};if(a[n]){var c,u=a[n].handlers;for(c=u.length;c>0;c--)if(i>=u[c-1].priority)break;c===u.length?u[c]=s:u.splice(c,0,s),a.__current.forEach((function(t){t.name===n&&t.currentIndex>=c&&t.currentIndex++}))}else a[n]={handlers:[s],runs:0};"hookAdded"!==n&&t.doAction("hookAdded",n,r,o,i)}else console.error("If specified, the hook priority must be a number.");else console.error("The hook callback must be a function.")}}var L=P;function I(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return function(r,o){var i=t[e];if(T(r)&&(n||A(o))){if(!i[r])return 0;var a=0;if(n)a=i[r].handlers.length,i[r]={runs:i[r].runs,handlers:[]};else for(var s=i[r].handlers,c=function(t){s[t].namespace===o&&(s.splice(t,1),a++,i.__current.forEach((function(e){e.name===r&&e.currentIndex>=t&&e.currentIndex--})))},u=s.length-1;u>=0;u--)c(u);return"hookRemoved"!==r&&t.doAction("hookRemoved",r,o),a}}}var N=I;function R(t,e){return function(n,r){var o=t[e];return"undefined"!==typeof r?n in o&&o[n].handlers.some((function(t){return t.namespace===r})):n in o}}var D=R;function M(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return function(r){var o=t[e];o[r]||(o[r]={handlers:[],runs:0}),o[r].runs++;var i=o[r].handlers;for(var a=arguments.length,s=new Array(a>1?a-1:0),c=1;c=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function(t){l.headers[t]={}})),r.forEach(["post","put","patch"],(function(t){l.headers[t]=r.merge(a)})),t.exports=l},7288:function(t){t.exports={version:"0.24.0"}},1849:function(t){"use strict";t.exports=function(t,e){return function(){for(var n=new Array(arguments.length),r=0;r=0)return;a[e]="set-cookie"===e?(a[e]?a[e]:[]).concat([n]):a[e]?a[e]+", "+n:n}})),a):a}},8713:function(t){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},4875:function(t,e,n){"use strict";var r=n(7288).version,o={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){o[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));var i={};function a(t,e,n){if("object"!==typeof t)throw new TypeError("options must be an object");var r=Object.keys(t),o=r.length;while(o-- >0){var i=r[o],a=e[i];if(a){var s=t[i],c=void 0===s||a(s,i,t);if(!0!==c)throw new TypeError("option "+i+" must be "+c)}else if(!0!==n)throw Error("Unknown option "+i)}}o.transitional=function(t,e,n){function o(t,e){return"[Axios v"+r+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}return function(n,r,a){if(!1===t)throw new Error(o(r," has been removed"+(e?" in "+e:"")));return e&&!i[r]&&(i[r]=!0,console.warn(o(r," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(n,r,a)}},t.exports={assertOptions:a,validators:o}},4867:function(t,e,n){"use strict";var r=n(1849),o=Object.prototype.toString;function i(t){return"[object Array]"===o.call(t)}function a(t){return"undefined"===typeof t}function s(t){return null!==t&&!a(t)&&null!==t.constructor&&!a(t.constructor)&&"function"===typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}function c(t){return"[object ArrayBuffer]"===o.call(t)}function u(t){return"undefined"!==typeof FormData&&t instanceof FormData}function l(t){var e;return e="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&t.buffer instanceof ArrayBuffer,e}function f(t){return"string"===typeof t}function p(t){return"number"===typeof t}function d(t){return null!==t&&"object"===typeof t}function h(t){if("[object Object]"!==o.call(t))return!1;var e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}function v(t){return"[object Date]"===o.call(t)}function m(t){return"[object File]"===o.call(t)}function g(t){return"[object Blob]"===o.call(t)}function y(t){return"[object Function]"===o.call(t)}function w(t){return d(t)&&y(t.pipe)}function b(t){return"undefined"!==typeof URLSearchParams&&t instanceof URLSearchParams}function _(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function x(){return("undefined"===typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!==typeof window&&"undefined"!==typeof document)}function O(t,e){if(null!==t&&"undefined"!==typeof t)if("object"!==typeof t&&(t=[t]),i(t))for(var n=0,r=t.length;nl)if(s=c[l++],s!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},3658:function(t,e,n){"use strict";var r=n(9781),o=n(3157),i=TypeError,a=Object.getOwnPropertyDescriptor,s=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(t){return t instanceof TypeError}}();t.exports=s?function(t,e){if(o(t)&&!a(t,"length").writable)throw i("Cannot set read only .length");return t.length=e}:function(t,e){return t.length=e}},4326:function(t,e,n){var r=n(1702),o=r({}.toString),i=r("".slice);t.exports=function(t){return i(o(t),8,-1)}},9920:function(t,e,n){var r=n(2597),o=n(3887),i=n(1236),a=n(3070);t.exports=function(t,e,n){for(var s=o(e),c=a.f,u=i.f,l=0;ln)throw e("Maximum allowed index exceeded");return t}},8113:function(t,e,n){var r=n(5005);t.exports=r("navigator","userAgent")||""},7392:function(t,e,n){var r,o,i=n(7854),a=n(8113),s=i.process,c=i.Deno,u=s&&s.versions||c&&c.version,l=u&&u.v8;l&&(r=l.split("."),o=r[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(r=a.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/),r&&(o=+r[1]))),t.exports=o},748:function(t){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:function(t,e,n){var r=n(7854),o=n(1236).f,i=n(8880),a=n(8052),s=n(3072),c=n(9920),u=n(4705);t.exports=function(t,e){var n,l,f,p,d,h,v=t.target,m=t.global,g=t.stat;if(l=m?r:g?r[v]||s(v,{}):(r[v]||{}).prototype,l)for(f in e){if(d=e[f],t.dontCallGetSet?(h=o(l,f),p=h&&h.value):p=l[f],n=u(m?f:v+(g?".":"#")+f,t.forced),!n&&void 0!==p){if(typeof d==typeof p)continue;c(d,p)}(t.sham||p&&p.sham)&&i(d,"sham",!0),a(l,f,d,t)}}},7293:function(t){t.exports=function(t){try{return!!t()}catch(e){return!0}}},4374:function(t,e,n){var r=n(7293);t.exports=!r((function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}))},6916:function(t,e,n){var r=n(4374),o=Function.prototype.call;t.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},6530:function(t,e,n){var r=n(9781),o=n(2597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,s=o(i,"name"),c=s&&"something"===function(){}.name,u=s&&(!r||r&&a(i,"name").configurable);t.exports={EXISTS:s,PROPER:c,CONFIGURABLE:u}},1702:function(t,e,n){var r=n(4374),o=Function.prototype,i=o.call,a=r&&o.bind.bind(i,i);t.exports=r?a:function(t){return function(){return i.apply(t,arguments)}}},5005:function(t,e,n){var r=n(7854),o=n(614),i=function(t){return o(t)?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t]):r[t]&&r[t][e]}},8173:function(t,e,n){var r=n(9662),o=n(8554);t.exports=function(t,e){var n=t[e];return o(n)?void 0:r(n)}},7854:function(t,e,n){var r=function(t){return t&&t.Math==Math&&t};t.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||function(){return this}()||Function("return this")()},2597:function(t,e,n){var r=n(1702),o=n(7908),i=r({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return i(o(t),e)}},3501:function(t){t.exports={}},4664:function(t,e,n){var r=n(9781),o=n(7293),i=n(317);t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:function(t,e,n){var r=n(1702),o=n(7293),i=n(4326),a=Object,s=r("".split);t.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(t){return"String"==i(t)?s(t,""):a(t)}:a},2788:function(t,e,n){var r=n(1702),o=n(614),i=n(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(t){return a(t)}),t.exports=i.inspectSource},9909:function(t,e,n){var r,o,i,a=n(4811),s=n(7854),c=n(111),u=n(8880),l=n(2597),f=n(5465),p=n(6200),d=n(3501),h="Object already initialized",v=s.TypeError,m=s.WeakMap,g=function(t){return i(t)?o(t):r(t,{})},y=function(t){return function(e){var n;if(!c(e)||(n=o(e)).type!==t)throw v("Incompatible receiver, "+t+" required");return n}};if(a||f.state){var w=f.state||(f.state=new m);w.get=w.get,w.has=w.has,w.set=w.set,r=function(t,e){if(w.has(t))throw v(h);return e.facade=t,w.set(t,e),e},o=function(t){return w.get(t)||{}},i=function(t){return w.has(t)}}else{var b=p("state");d[b]=!0,r=function(t,e){if(l(t,b))throw v(h);return e.facade=t,u(t,b,e),e},o=function(t){return l(t,b)?t[b]:{}},i=function(t){return l(t,b)}}t.exports={set:r,get:o,has:i,enforce:g,getterFor:y}},3157:function(t,e,n){var r=n(4326);t.exports=Array.isArray||function(t){return"Array"==r(t)}},614:function(t,e,n){var r=n(4154),o=r.all;t.exports=r.IS_HTMLDDA?function(t){return"function"==typeof t||t===o}:function(t){return"function"==typeof t}},4705:function(t,e,n){var r=n(7293),o=n(614),i=/#|\.prototype\./,a=function(t,e){var n=c[s(t)];return n==l||n!=u&&(o(e)?r(e):!!e)},s=a.normalize=function(t){return String(t).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",l=a.POLYFILL="P";t.exports=a},8554:function(t){t.exports=function(t){return null===t||void 0===t}},111:function(t,e,n){var r=n(614),o=n(4154),i=o.all;t.exports=o.IS_HTMLDDA?function(t){return"object"==typeof t?null!==t:r(t)||t===i}:function(t){return"object"==typeof t?null!==t:r(t)}},1913:function(t){t.exports=!1},2190:function(t,e,n){var r=n(5005),o=n(614),i=n(7976),a=n(3307),s=Object;t.exports=a?function(t){return"symbol"==typeof t}:function(t){var e=r("Symbol");return o(e)&&i(e.prototype,s(t))}},6244:function(t,e,n){var r=n(7466);t.exports=function(t){return r(t.length)}},6339:function(t,e,n){var r=n(7293),o=n(614),i=n(2597),a=n(9781),s=n(6530).CONFIGURABLE,c=n(2788),u=n(9909),l=u.enforce,f=u.get,p=Object.defineProperty,d=a&&!r((function(){return 8!==p((function(){}),"length",{value:8}).length})),h=String(String).split("String"),v=t.exports=function(t,e,n){"Symbol("===String(e).slice(0,7)&&(e="["+String(e).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),n&&n.getter&&(e="get "+e),n&&n.setter&&(e="set "+e),(!i(t,"name")||s&&t.name!==e)&&(a?p(t,"name",{value:e,configurable:!0}):t.name=e),d&&n&&i(n,"arity")&&t.length!==n.arity&&p(t,"length",{value:n.arity});try{n&&i(n,"constructor")&&n.constructor?a&&p(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(o){}var r=l(t);return i(r,"source")||(r.source=h.join("string"==typeof e?e:"")),t};Function.prototype.toString=v((function(){return o(this)&&f(this).source||c(this)}),"toString")},4758:function(t){var e=Math.ceil,n=Math.floor;t.exports=Math.trunc||function(t){var r=+t;return(r>0?n:e)(r)}},3070:function(t,e,n){var r=n(9781),o=n(4664),i=n(3353),a=n(9670),s=n(4948),c=TypeError,u=Object.defineProperty,l=Object.getOwnPropertyDescriptor,f="enumerable",p="configurable",d="writable";e.f=r?i?function(t,e,n){if(a(t),e=s(e),a(n),"function"===typeof t&&"prototype"===e&&"value"in n&&d in n&&!n[d]){var r=l(t,e);r&&r[d]&&(t[e]=n.value,n={configurable:p in n?n[p]:r[p],enumerable:f in n?n[f]:r[f],writable:!1})}return u(t,e,n)}:u:function(t,e,n){if(a(t),e=s(e),a(n),o)try{return u(t,e,n)}catch(r){}if("get"in n||"set"in n)throw c("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},1236:function(t,e,n){var r=n(9781),o=n(6916),i=n(5296),a=n(9114),s=n(5656),c=n(4948),u=n(2597),l=n(4664),f=Object.getOwnPropertyDescriptor;e.f=r?f:function(t,e){if(t=s(t),e=c(e),l)try{return f(t,e)}catch(n){}if(u(t,e))return a(!o(i.f,t,e),t[e])}},8006:function(t,e,n){var r=n(6324),o=n(748),i=o.concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,i)}},5181:function(t,e){e.f=Object.getOwnPropertySymbols},7976:function(t,e,n){var r=n(1702);t.exports=r({}.isPrototypeOf)},6324:function(t,e,n){var r=n(1702),o=n(2597),i=n(5656),a=n(1318).indexOf,s=n(3501),c=r([].push);t.exports=function(t,e){var n,r=i(t),u=0,l=[];for(n in r)!o(s,n)&&o(r,n)&&c(l,n);while(e.length>u)o(r,n=e[u++])&&(~a(l,n)||c(l,n));return l}},5296:function(t,e){"use strict";var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);e.f=o?function(t){var e=r(this,t);return!!e&&e.enumerable}:n},2140:function(t,e,n){var r=n(6916),o=n(614),i=n(111),a=TypeError;t.exports=function(t,e){var n,s;if("string"===e&&o(n=t.toString)&&!i(s=r(n,t)))return s;if(o(n=t.valueOf)&&!i(s=r(n,t)))return s;if("string"!==e&&o(n=t.toString)&&!i(s=r(n,t)))return s;throw a("Can't convert object to primitive value")}},3887:function(t,e,n){var r=n(5005),o=n(1702),i=n(8006),a=n(5181),s=n(9670),c=o([].concat);t.exports=r("Reflect","ownKeys")||function(t){var e=i.f(s(t)),n=a.f;return n?c(e,n(t)):e}},4488:function(t,e,n){var r=n(8554),o=TypeError;t.exports=function(t){if(r(t))throw o("Can't call method on "+t);return t}},6200:function(t,e,n){var r=n(2309),o=n(9711),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},5465:function(t,e,n){var r=n(7854),o=n(3072),i="__core-js_shared__",a=r[i]||o(i,{});t.exports=a},2309:function(t,e,n){var r=n(1913),o=n(5465);(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.26.1",mode:r?"pure":"global",copyright:"© 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.26.1/LICENSE",source:"https://github.com/zloirock/core-js"})},6293:function(t,e,n){var r=n(7392),o=n(7293);t.exports=!!Object.getOwnPropertySymbols&&!o((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},1400:function(t,e,n){var r=n(9303),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},5656:function(t,e,n){var r=n(8361),o=n(4488);t.exports=function(t){return r(o(t))}},9303:function(t,e,n){var r=n(4758);t.exports=function(t){var e=+t;return e!==e||0===e?0:r(e)}},7466:function(t,e,n){var r=n(9303),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},7908:function(t,e,n){var r=n(4488),o=Object;t.exports=function(t){return o(r(t))}},7593:function(t,e,n){var r=n(6916),o=n(111),i=n(2190),a=n(8173),s=n(2140),c=n(5112),u=TypeError,l=c("toPrimitive");t.exports=function(t,e){if(!o(t)||i(t))return t;var n,c=a(t,l);if(c){if(void 0===e&&(e="default"),n=r(c,t,e),!o(n)||i(n))return n;throw u("Can't convert object to primitive value")}return void 0===e&&(e="number"),s(t,e)}},4948:function(t,e,n){var r=n(7593),o=n(2190);t.exports=function(t){var e=r(t,"string");return o(e)?e:e+""}},6330:function(t){var e=String;t.exports=function(t){try{return e(t)}catch(n){return"Object"}}},9711:function(t,e,n){var r=n(1702),o=0,i=Math.random(),a=r(1..toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+a(++o+i,36)}},3307:function(t,e,n){var r=n(6293);t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},3353:function(t,e,n){var r=n(9781),o=n(7293);t.exports=r&&o((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},4811:function(t,e,n){var r=n(7854),o=n(614),i=r.WeakMap;t.exports=o(i)&&/native code/.test(String(i))},5112:function(t,e,n){var r=n(7854),o=n(2309),i=n(2597),a=n(9711),s=n(6293),c=n(3307),u=o("wks"),l=r.Symbol,f=l&&l["for"],p=c?l:l&&l.withoutSetter||a;t.exports=function(t){if(!i(u,t)||!s&&"string"!=typeof u[t]){var e="Symbol."+t;s&&i(l,t)?u[t]=l[t]:u[t]=c&&f?f(e):p(e)}return u[t]}},7658:function(t,e,n){"use strict";var r=n(2109),o=n(7908),i=n(6244),a=n(3658),s=n(7207),c=n(7293),u=c((function(){return 4294967297!==[].push.call({length:4294967296},1)})),l=!function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(t){return t instanceof TypeError}}();r({target:"Array",proto:!0,arity:1,forced:u||l},{push:function(t){var e=o(this),n=i(e),r=arguments.length;s(n+r);for(var c=0;c-1}function Vt(t,e){var n=this.__data__,r=ie(n,t);return r<0?n.push([t,e]):n[r][1]=e,this}function qt(t){var e=-1,n=t?t.length:0;this.clear();while(++e-1&&t%1==0&&t-1&&t%1==0&&t<=i}function We(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function Ge(t){return!!t&&"object"==typeof t}function Ze(t){return ze(t)?re(t):pe(t)}function Ke(){return[]}function Ye(){return!1}t.exports=De},1296:function(t,e,n){var r="Expected a function",o=NaN,i="[object Symbol]",a=/^\s+|\s+$/g,s=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,u=/^0o[0-7]+$/i,l=parseInt,f="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,p="object"==typeof self&&self&&self.Object===Object&&self,d=f||p||Function("return this")(),h=Object.prototype,v=h.toString,m=Math.max,g=Math.min,y=function(){return d.Date.now()};function w(t,e,n){var o,i,a,s,c,u,l=0,f=!1,p=!1,d=!0;if("function"!=typeof t)throw new TypeError(r);function h(e){var n=o,r=i;return o=i=void 0,l=e,s=t.apply(r,n),s}function v(t){return l=t,c=setTimeout(x,e),f?h(t):s}function w(t){var n=t-u,r=t-l,o=e-n;return p?g(o,a-r):o}function _(t){var n=t-u,r=t-l;return void 0===u||n>=e||n<0||p&&r>=a}function x(){var t=y();if(_(t))return k(t);c=setTimeout(x,w(t))}function k(t){return c=void 0,d&&o?h(t):(o=i=void 0,s)}function C(){void 0!==c&&clearTimeout(c),l=0,o=u=i=c=void 0}function j(){return void 0===c?s:k(y())}function S(){var t=y(),n=_(t);if(o=arguments,i=this,u=t,n){if(void 0===c)return v(u);if(p)return c=setTimeout(x,e),h(u)}return void 0===c&&(c=setTimeout(x,e)),s}return e=O(e)||0,b(n)&&(f=!!n.leading,p="maxWait"in n,a=p?m(O(n.maxWait)||0,e):a,d="trailing"in n?!!n.trailing:d),S.cancel=C,S.flush=j,S}function b(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function _(t){return!!t&&"object"==typeof t}function x(t){return"symbol"==typeof t||_(t)&&v.call(t)==i}function O(t){if("number"==typeof t)return t;if(x(t))return o;if(b(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=b(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(a,"");var n=c.test(t);return n||u.test(t)?l(t.slice(2),n?2:8):s.test(t)?o:+t}t.exports=w},8394:function(t,e,n){var r="Expected a function",o="__lodash_hash_undefined__",i=1/0,a=9007199254740991,s="[object Arguments]",c="[object Function]",u="[object GeneratorFunction]",l="[object Symbol]",f=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,p=/^\w*$/,d=/^\./,h=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,v=/[\\^$.*+?()[\]{}|]/g,m=/\\(\\)?/g,g=/^\[object .+?Constructor\]$/,y=/^(?:0|[1-9]\d*)$/,w="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,b="object"==typeof self&&self&&self.Object===Object&&self,_=w||b||Function("return this")();function x(t,e){return null==t?void 0:t[e]}function O(t){var e=!1;if(null!=t&&"function"!=typeof t.toString)try{e=!!(t+"")}catch(n){}return e}var k=Array.prototype,C=Function.prototype,j=Object.prototype,S=_["__core-js_shared__"],E=function(){var t=/[^.]+$/.exec(S&&S.keys&&S.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}(),A=C.toString,$=j.hasOwnProperty,T=j.toString,P=RegExp("^"+A.call($).replace(v,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),L=_.Symbol,I=j.propertyIsEnumerable,N=k.splice,R=lt(_,"Map"),D=lt(Object,"create"),M=L?L.prototype:void 0,B=M?M.toString:void 0;function F(t){var e=-1,n=t?t.length:0;this.clear();while(++e-1}function X(t,e){var n=this.__data__,r=ot(n,t);return r<0?n.push([t,e]):n[r][1]=e,this}function J(t){var e=-1,n=t?t.length:0;this.clear();while(++e-1&&t%1==0&&t-1&&t%1==0&&t<=a}function St(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function Et(t){return!!t&&"object"==typeof t}function At(t){return"symbol"==typeof t||Et(t)&&T.call(t)==l}function $t(t){return null==t?"":st(t)}function Tt(t,e){return null!=t&&ft(t,e,it)}t.exports=Tt},2378:function(t,e,n){t=n.nmd(t);var r=200,o="__lodash_hash_undefined__",i=800,a=16,s=9007199254740991,c="[object Arguments]",u="[object Array]",l="[object AsyncFunction]",f="[object Boolean]",p="[object Date]",d="[object Error]",h="[object Function]",v="[object GeneratorFunction]",m="[object Map]",g="[object Number]",y="[object Null]",w="[object Object]",b="[object Proxy]",_="[object RegExp]",x="[object Set]",O="[object String]",k="[object Undefined]",C="[object WeakMap]",j="[object ArrayBuffer]",S="[object DataView]",E="[object Float32Array]",A="[object Float64Array]",$="[object Int8Array]",T="[object Int16Array]",P="[object Int32Array]",L="[object Uint8Array]",I="[object Uint8ClampedArray]",N="[object Uint16Array]",R="[object Uint32Array]",D=/[\\^$.*+?()[\]{}|]/g,M=/^\[object .+?Constructor\]$/,B=/^(?:0|[1-9]\d*)$/,F={};F[E]=F[A]=F[$]=F[T]=F[P]=F[L]=F[I]=F[N]=F[R]=!0,F[c]=F[u]=F[j]=F[f]=F[S]=F[p]=F[d]=F[h]=F[m]=F[g]=F[w]=F[_]=F[x]=F[O]=F[C]=!1;var z="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,H="object"==typeof self&&self&&self.Object===Object&&self,U=z||H||Function("return this")(),V=e&&!e.nodeType&&e,q=V&&t&&!t.nodeType&&t,W=q&&q.exports===V,G=W&&z.process,Z=function(){try{var t=q&&q.require&&q.require("util").types;return t||G&&G.binding&&G.binding("util")}catch(e){}}(),K=Z&&Z.isTypedArray;function Y(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function X(t,e){var n=-1,r=Array(t);while(++n-1}function Mt(t,e){var n=this.__data__,r=te(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this}function Bt(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e1?n[o-1]:void 0,a=o>2?n[2]:void 0;i=t.length>3&&"function"==typeof i?(o--,i):void 0,a&&ke(n[0],n[1],a)&&(i=o<3?void 0:i,o=1),e=Object(e);while(++r-1&&t%1==0&&t0){if(++e>=i)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function Ie(t){if(null!=t){try{return it.call(t)}catch(e){}try{return t+""}catch(e){}}return""}function Ne(t,e){return t===e||t!==t&&e!==e}var Re=oe(function(){return arguments}())?oe:function(t){return Ve(t)&&at.call(t,"callee")&&!gt.call(t,"callee")},De=Array.isArray;function Me(t){return null!=t&&He(t.length)&&!ze(t)}function Be(t){return Ve(t)&&Me(t)}var Fe=_t||Je;function ze(t){if(!Ue(t))return!1;var e=re(t);return e==h||e==v||e==l||e==b}function He(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=s}function Ue(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Ve(t){return null!=t&&"object"==typeof t}function qe(t){if(!Ve(t)||re(t)!=w)return!1;var e=vt(t);if(null===e)return!0;var n=at.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&it.call(n)==ut}var We=K?J(K):ae;function Ge(t){return me(t,Ze(t))}function Ze(t){return Me(t)?Xt(t,!0):se(t)}var Ke=ge((function(t,e,n){ce(t,e,n)}));function Ye(t){return function(){return t}}function Xe(t){return t}function Je(){return!1}t.exports=Ke},8552:function(t,e,n){var r=n(852),o=n(5639),i=r(o,"DataView");t.exports=i},1989:function(t,e,n){var r=n(1789),o=n(401),i=n(7667),a=n(1327),s=n(1866);function c(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e1?n[i-1]:void 0,s=i>2?n[2]:void 0;a=t.length>3&&"function"==typeof a?(i--,a):void 0,s&&o(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);while(++rp))return!1;var h=l.get(t),v=l.get(e);if(h&&v)return h==e&&v==t;var m=-1,g=!0,y=n&s?new r:void 0;l.set(t,e),l.set(e,t);while(++m-1&&t%1==0&&t-1}t.exports=o},3399:function(t,e,n){var r=n(8470);function o(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}t.exports=o},4785:function(t,e,n){var r=n(1989),o=n(8407),i=n(7071);function a(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}t.exports=a},1285:function(t,e,n){var r=n(5050);function o(t){var e=r(this,t)["delete"](t);return this.size-=e?1:0,e}t.exports=o},6e3:function(t,e,n){var r=n(5050);function o(t){return r(this,t).get(t)}t.exports=o},9916:function(t,e,n){var r=n(5050);function o(t){return r(this,t).has(t)}t.exports=o},5265:function(t,e,n){var r=n(5050);function o(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}t.exports=o},8776:function(t){function e(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}t.exports=e},4536:function(t,e,n){var r=n(852),o=r(Object,"create");t.exports=o},9850:function(t,e,n){var r=n(5569),o=r(Object.keys,Object);t.exports=o},3498:function(t){function e(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}t.exports=e},1167:function(t,e,n){t=n.nmd(t);var r=n(1957),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o,s=a&&r.process,c=function(){try{var t=i&&i.require&&i.require("util").types;return t||s&&s.binding&&s.binding("util")}catch(e){}}();t.exports=c},2333:function(t){var e=Object.prototype,n=e.toString;function r(t){return n.call(t)}t.exports=r},5569:function(t){function e(t,e){return function(n){return t(e(n))}}t.exports=e},5357:function(t,e,n){var r=n(6874),o=Math.max;function i(t,e,n){return e=o(void 0===e?t.length-1:e,0),function(){var i=arguments,a=-1,s=o(i.length-e,0),c=Array(s);while(++a0){if(++o>=e)return arguments[0]}else o=0;return t.apply(void 0,arguments)}}t.exports=o},7465:function(t,e,n){var r=n(8407);function o(){this.__data__=new r,this.size=0}t.exports=o},3779:function(t){function e(t){var e=this.__data__,n=e["delete"](t);return this.size=e.size,n}t.exports=e},7599:function(t){function e(t){return this.__data__.get(t)}t.exports=e},6783:function(t){function e(t){return this.__data__.has(t)}t.exports=e},4309:function(t,e,n){var r=n(8407),o=n(7071),i=n(3369),a=200;function s(t,e){var n=this.__data__;if(n instanceof r){var s=n.__data__;if(!o||s.length-1&&t%1==0&&t<=e}t.exports=n},3218:function(t){function e(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}t.exports=e},7005:function(t){function e(t){return null!=t&&"object"==typeof t}t.exports=e},8630:function(t,e,n){var r=n(4239),o=n(5924),i=n(7005),a="[object Object]",s=Function.prototype,c=Object.prototype,u=s.toString,l=c.hasOwnProperty,f=u.call(Object);function p(t){if(!i(t)||r(t)!=a)return!1;var e=o(t);if(null===e)return!0;var n=l.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&u.call(n)==f}t.exports=p},6719:function(t,e,n){var r=n(8749),o=n(1717),i=n(1167),a=i&&i.isTypedArray,s=a?o(a):r;t.exports=s},3674:function(t,e,n){var r=n(4636),o=n(280),i=n(8612);function a(t){return i(t)?r(t):o(t)}t.exports=a},1704:function(t,e,n){var r=n(4636),o=n(313),i=n(8612);function a(t){return i(t)?r(t,!0):o(t)}t.exports=a},3857:function(t,e,n){var r=n(2980),o=n(1463),i=o((function(t,e,n){r(t,e,n)}));t.exports=i},479:function(t){function e(){return[]}t.exports=e},5062:function(t){function e(){return!1}t.exports=e},9881:function(t,e,n){var r=n(8363),o=n(1704);function i(t){return r(t,o(t))}t.exports=i},9588:function(t){function e(t,e){var n,r,o=0;function i(){var i,a,s=n,c=arguments.length;t:while(s){if(s.args.length===arguments.length){for(a=0;a=0),s.type){case"b":n=parseInt(n,10).toString(2);break;case"c":n=String.fromCharCode(parseInt(n,10));break;case"d":case"i":n=parseInt(n,10);break;case"j":n=JSON.stringify(n,null,s.width?parseInt(s.width):0);break;case"e":n=s.precision?parseFloat(n).toExponential(s.precision):parseFloat(n).toExponential();break;case"f":n=s.precision?parseFloat(n).toFixed(s.precision):parseFloat(n);break;case"g":n=s.precision?String(Number(n.toPrecision(s.precision))):parseFloat(n);break;case"o":n=(parseInt(n,10)>>>0).toString(8);break;case"s":n=String(n),n=s.precision?n.substring(0,s.precision):n;break;case"t":n=String(!!n),n=s.precision?n.substring(0,s.precision):n;break;case"T":n=Object.prototype.toString.call(n).slice(8,-1).toLowerCase(),n=s.precision?n.substring(0,s.precision):n;break;case"u":n=parseInt(n,10)>>>0;break;case"v":n=n.valueOf(),n=s.precision?n.substring(0,s.precision):n;break;case"x":n=(parseInt(n,10)>>>0).toString(16);break;case"X":n=(parseInt(n,10)>>>0).toString(16).toUpperCase();break}o.json.test(s.type)?v+=n:(!o.number.test(s.type)||f&&!s.sign?p="":(p=f?"+":"-",n=n.toString().replace(o.sign,"")),u=s.pad_char?"0"===s.pad_char?"0":s.pad_char.charAt(1):" ",l=s.width-(p+n).length,c=s.width&&l>0?u.repeat(l):"",v+=s.align?p+n+c:"0"===u?p+c+n:c+p+n)}return v}var c=Object.create(null);function u(t){if(c[t])return c[t];var e,n=t,r=[],i=0;while(n){if(null!==(e=o.text.exec(n)))r.push(e[0]);else if(null!==(e=o.modulo.exec(n)))r.push("%");else{if(null===(e=o.placeholder.exec(n)))throw new SyntaxError("[sprintf] unexpected placeholder");if(e[2]){i|=1;var a=[],s=e[2],u=[];if(null===(u=o.key.exec(s)))throw new SyntaxError("[sprintf] failed to parse named argument key");a.push(u[1]);while(""!==(s=s.substring(u[0].length)))if(null!==(u=o.key_access.exec(s)))a.push(u[1]);else{if(null===(u=o.index_access.exec(s)))throw new SyntaxError("[sprintf] failed to parse named argument key");a.push(u[1])}e[2]=a}else i|=2;if(3===i)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");r.push({placeholder:e[0],param_no:e[1],keys:e[2],sign:e[3],pad_char:e[4],align:e[5],width:e[6],precision:e[7],type:e[8]})}n=n.substring(e[0].length)}return c[t]=r}e.sprintf=i,e.vsprintf=a,"undefined"!==typeof window&&(window["sprintf"]=i,window["vsprintf"]=a,r=function(){return{sprintf:i,vsprintf:a}}.call(e,n,e,t),void 0===r||(t.exports=r))}()},6455:function(t){ +(self["wpmailsmtpjsonp"]=self["wpmailsmtpjsonp"]||[]).push([[998],{1001:function(t,e,n){"use strict";function r(t,e,n,r,o,i,a,s){var c,u="function"===typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(c=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"===typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=c):o&&(c=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(u.functional){u._injectStyles=c;var l=u.render;u.render=function(t,e){return c.call(e),l(t,e)}}else{var f=u.beforeCreate;u.beforeCreate=f?[].concat(f,c):[c]}return{exports:t,options:u}}n.d(e,{Z:function(){return r}})},7086:function(t,e,n){"use strict";function r(t,e){var n,r,o=0;function i(){var i,a,s=n,c=arguments.length;t:while(s){if(s.args.length===arguments.length){for(a=0;a=0||c[o]":5,">=":5,"==":4,"!=":4,"&&":3,"||":2,"?":1,"?:":1},u=["(","?"],l={")":["("],":":["?","?:"]},f=/<=|>=|==|!=|&&|\|\||\?:|\(|!|\*|\/|%|\+|-|<|>|\?|\)|:/;var d={"!":function(t){return!t},"*":function(t,e){return t*e},"/":function(t,e){return t/e},"%":function(t,e){return t%e},"+":function(t,e){return t+e},"-":function(t,e){return t-e},"<":function(t,e){return t":function(t,e){return t>e},">=":function(t,e){return t>=e},"==":function(t,e){return t===e},"!=":function(t,e){return t!==e},"&&":function(t,e){return t&&e},"||":function(t,e){return t||e},"?:":function(t,e,n){if(t)throw e;return n}};function h(t,e){var n,r,o,i,a,s,c=[];for(n=0;n{const r=new w({}),o=new Set,i=()=>{o.forEach((t=>t()))},a=t=>(o.add(t),()=>o.delete(t)),s=(t="default")=>r.data[t],c=(t,e="default")=>{r.data[e]={...r.data[e],...t},r.data[e][""]={...b[""],...r.data[e]?.[""]},delete r.pluralForms[e]},u=(t,e)=>{c(t,e),i()},l=(t,e="default")=>{r.data[e]={...r.data[e],...t,"":{...b[""],...r.data[e]?.[""],...t?.[""]}},delete r.pluralForms[e],i()},f=(t,e)=>{r.data={},r.pluralForms={},u(t,e)},p=(t="default",e,n,o,i)=>(r.data[t]||c(void 0,t),r.dcnpgettext(t,e,n,o,i)),d=(t="default")=>t,h=(t,e)=>{let r=p(e,void 0,t);return n?(r=n.applyFilters("i18n.gettext",r,t,e),n.applyFilters("i18n.gettext_"+d(e),r,t,e)):r},v=(t,e,r)=>{let o=p(r,e,t);return n?(o=n.applyFilters("i18n.gettext_with_context",o,t,e,r),n.applyFilters("i18n.gettext_with_context_"+d(r),o,t,e,r)):o},m=(t,e,r,o)=>{let i=p(o,void 0,t,e,r);return n?(i=n.applyFilters("i18n.ngettext",i,t,e,r,o),n.applyFilters("i18n.ngettext_"+d(o),i,t,e,r,o)):i},g=(t,e,r,o,i)=>{let a=p(i,o,t,e,r);return n?(a=n.applyFilters("i18n.ngettext_with_context",a,t,e,r,o,i),n.applyFilters("i18n.ngettext_with_context_"+d(i),a,t,e,r,o,i)):a},y=()=>"rtl"===v("ltr","text direction"),x=(t,e,o)=>{const i=e?e+""+t:t;let a=!!r.data?.[null!==o&&void 0!==o?o:"default"]?.[i];return n&&(a=n.applyFilters("i18n.has_translation",a,t,e,o),a=n.applyFilters("i18n.has_translation_"+d(o),a,t,e,o)),a};if(t&&u(t,e),n){const t=t=>{_.test(t)&&i()};n.addAction("hookAdded","core/i18n",t),n.addAction("hookRemoved","core/i18n",t)}return{getLocaleData:s,setLocaleData:u,addLocaleData:l,resetLocaleData:f,subscribe:a,__:h,_x:v,_n:m,_nx:g,isRTL:y,hasTranslation:x}};function O(t){return"string"!==typeof t||""===t?(console.error("The namespace must be a non-empty string."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.\-\/]*$/.test(t)||(console.error("The namespace can only contain numbers, letters, dashes, periods, underscores and slashes."),!1)}var k=O;function C(t){return"string"!==typeof t||""===t?(console.error("The hook name must be a non-empty string."),!1):/^__/.test(t)?(console.error("The hook name cannot begin with `__`."),!1):!!/^[a-zA-Z][a-zA-Z0-9_.-]*$/.test(t)||(console.error("The hook name can only contain numbers, letters, dashes, periods and underscores."),!1)}var E=C;function j(t,e){return function(n,r,o,i=10){const a=t[e];if(!E(n))return;if(!k(r))return;if("function"!==typeof o)return void console.error("The hook callback must be a function.");if("number"!==typeof i)return void console.error("If specified, the hook priority must be a number.");const s={callback:o,priority:i,namespace:r};if(a[n]){const t=a[n].handlers;let e;for(e=t.length;e>0;e--)if(i>=t[e-1].priority)break;e===t.length?t[e]=s:t.splice(e,0,s),a.__current.forEach((t=>{t.name===n&&t.currentIndex>=e&&t.currentIndex++}))}else a[n]={handlers:[s],runs:0};"hookAdded"!==n&&t.doAction("hookAdded",n,r,o,i)}}var S=j;function A(t,e,n=!1){return function(r,o){const i=t[e];if(!E(r))return;if(!n&&!k(o))return;if(!i[r])return 0;let a=0;if(n)a=i[r].handlers.length,i[r]={runs:i[r].runs,handlers:[]};else{const t=i[r].handlers;for(let e=t.length-1;e>=0;e--)t[e].namespace===o&&(t.splice(e,1),a++,i.__current.forEach((t=>{t.name===r&&t.currentIndex>=e&&t.currentIndex--})))}return"hookRemoved"!==r&&t.doAction("hookRemoved",r,o),a}}var T=A;function $(t,e){return function(n,r){const o=t[e];return"undefined"!==typeof r?n in o&&o[n].handlers.some((t=>t.namespace===r)):n in o}}var P=$;function L(t,e,n=!1){return function(r,...o){const i=t[e];i[r]||(i[r]={handlers:[],runs:0}),i[r].runs++;const a=i[r].handlers;if(!a||!a.length)return n?o[0]:void 0;const s={name:r,currentIndex:0};i.__current.push(s);while(s.currentIndex-1}function Vt(t,e){var n=this.__data__,r=ie(n,t);return r<0?n.push([t,e]):n[r][1]=e,this}function qt(t){var e=-1,n=t?t.length:0;this.clear();while(++e-1&&t%1==0&&t-1&&t%1==0&&t<=i}function We(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function Ge(t){return!!t&&"object"==typeof t}function Ke(t){return ze(t)?re(t):pe(t)}function Ye(){return[]}function Xe(){return!1}t.exports=Fe},1296:function(t,e,n){var r="Expected a function",o=NaN,i="[object Symbol]",a=/^\s+|\s+$/g,s=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,u=/^0o[0-7]+$/i,l=parseInt,f="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,p="object"==typeof self&&self&&self.Object===Object&&self,d=f||p||Function("return this")(),h=Object.prototype,v=h.toString,m=Math.max,g=Math.min,y=function(){return d.Date.now()};function w(t,e,n){var o,i,a,s,c,u,l=0,f=!1,p=!1,d=!0;if("function"!=typeof t)throw new TypeError(r);function h(e){var n=o,r=i;return o=i=void 0,l=e,s=t.apply(r,n),s}function v(t){return l=t,c=setTimeout(x,e),f?h(t):s}function w(t){var n=t-u,r=t-l,o=e-n;return p?g(o,a-r):o}function _(t){var n=t-u,r=t-l;return void 0===u||n>=e||n<0||p&&r>=a}function x(){var t=y();if(_(t))return k(t);c=setTimeout(x,w(t))}function k(t){return c=void 0,d&&o?h(t):(o=i=void 0,s)}function C(){void 0!==c&&clearTimeout(c),l=0,o=u=i=c=void 0}function E(){return void 0===c?s:k(y())}function j(){var t=y(),n=_(t);if(o=arguments,i=this,u=t,n){if(void 0===c)return v(u);if(p)return c=setTimeout(x,e),h(u)}return void 0===c&&(c=setTimeout(x,e)),s}return e=O(e)||0,b(n)&&(f=!!n.leading,p="maxWait"in n,a=p?m(O(n.maxWait)||0,e):a,d="trailing"in n?!!n.trailing:d),j.cancel=C,j.flush=E,j}function b(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function _(t){return!!t&&"object"==typeof t}function x(t){return"symbol"==typeof t||_(t)&&v.call(t)==i}function O(t){if("number"==typeof t)return t;if(x(t))return o;if(b(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=b(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(a,"");var n=c.test(t);return n||u.test(t)?l(t.slice(2),n?2:8):s.test(t)?o:+t}t.exports=w},8394:function(t,e,n){var r="Expected a function",o="__lodash_hash_undefined__",i=1/0,a=9007199254740991,s="[object Arguments]",c="[object Function]",u="[object GeneratorFunction]",l="[object Symbol]",f=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,p=/^\w*$/,d=/^\./,h=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,v=/[\\^$.*+?()[\]{}|]/g,m=/\\(\\)?/g,g=/^\[object .+?Constructor\]$/,y=/^(?:0|[1-9]\d*)$/,w="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,b="object"==typeof self&&self&&self.Object===Object&&self,_=w||b||Function("return this")();function x(t,e){return null==t?void 0:t[e]}function O(t){var e=!1;if(null!=t&&"function"!=typeof t.toString)try{e=!!(t+"")}catch(n){}return e}var k=Array.prototype,C=Function.prototype,E=Object.prototype,j=_["__core-js_shared__"],S=function(){var t=/[^.]+$/.exec(j&&j.keys&&j.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}(),A=C.toString,T=E.hasOwnProperty,$=E.toString,P=RegExp("^"+A.call(T).replace(v,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),L=_.Symbol,R=E.propertyIsEnumerable,N=k.splice,I=lt(_,"Map"),F=lt(Object,"create"),D=L?L.prototype:void 0,B=D?D.toString:void 0;function M(t){var e=-1,n=t?t.length:0;this.clear();while(++e-1}function Z(t,e){var n=this.__data__,r=ot(n,t);return r<0?n.push([t,e]):n[r][1]=e,this}function J(t){var e=-1,n=t?t.length:0;this.clear();while(++e-1&&t%1==0&&t-1&&t%1==0&&t<=a}function jt(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function St(t){return!!t&&"object"==typeof t}function At(t){return"symbol"==typeof t||St(t)&&$.call(t)==l}function Tt(t){return null==t?"":st(t)}function $t(t,e){return null!=t&&ft(t,e,it)}t.exports=$t},2378:function(t,e,n){t=n.nmd(t);var r=200,o="__lodash_hash_undefined__",i=800,a=16,s=9007199254740991,c="[object Arguments]",u="[object Array]",l="[object AsyncFunction]",f="[object Boolean]",p="[object Date]",d="[object Error]",h="[object Function]",v="[object GeneratorFunction]",m="[object Map]",g="[object Number]",y="[object Null]",w="[object Object]",b="[object Proxy]",_="[object RegExp]",x="[object Set]",O="[object String]",k="[object Undefined]",C="[object WeakMap]",E="[object ArrayBuffer]",j="[object DataView]",S="[object Float32Array]",A="[object Float64Array]",T="[object Int8Array]",$="[object Int16Array]",P="[object Int32Array]",L="[object Uint8Array]",R="[object Uint8ClampedArray]",N="[object Uint16Array]",I="[object Uint32Array]",F=/[\\^$.*+?()[\]{}|]/g,D=/^\[object .+?Constructor\]$/,B=/^(?:0|[1-9]\d*)$/,M={};M[S]=M[A]=M[T]=M[$]=M[P]=M[L]=M[R]=M[N]=M[I]=!0,M[c]=M[u]=M[E]=M[f]=M[j]=M[p]=M[d]=M[h]=M[m]=M[g]=M[w]=M[_]=M[x]=M[O]=M[C]=!1;var z="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,U="object"==typeof self&&self&&self.Object===Object&&self,H=z||U||Function("return this")(),V=e&&!e.nodeType&&e,q=V&&t&&!t.nodeType&&t,W=q&&q.exports===V,G=W&&z.process,K=function(){try{var t=q&&q.require&&q.require("util").types;return t||G&&G.binding&&G.binding("util")}catch(e){}}(),Y=K&&K.isTypedArray;function X(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function Z(t,e){var n=-1,r=Array(t);while(++n-1}function Dt(t,e){var n=this.__data__,r=te(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this}function Bt(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e1?n[o-1]:void 0,a=o>2?n[2]:void 0;i=t.length>3&&"function"==typeof i?(o--,i):void 0,a&&ke(n[0],n[1],a)&&(i=o<3?void 0:i,o=1),e=Object(e);while(++r-1&&t%1==0&&t0){if(++e>=i)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function Re(t){if(null!=t){try{return it.call(t)}catch(e){}try{return t+""}catch(e){}}return""}function Ne(t,e){return t===e||t!==t&&e!==e}var Ie=oe(function(){return arguments}())?oe:function(t){return Ve(t)&&at.call(t,"callee")&&!gt.call(t,"callee")},Fe=Array.isArray;function De(t){return null!=t&&Ue(t.length)&&!ze(t)}function Be(t){return Ve(t)&&De(t)}var Me=_t||Je;function ze(t){if(!He(t))return!1;var e=re(t);return e==h||e==v||e==l||e==b}function Ue(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=s}function He(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Ve(t){return null!=t&&"object"==typeof t}function qe(t){if(!Ve(t)||re(t)!=w)return!1;var e=vt(t);if(null===e)return!0;var n=at.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&it.call(n)==ut}var We=Y?J(Y):ae;function Ge(t){return me(t,Ke(t))}function Ke(t){return De(t)?Zt(t,!0):se(t)}var Ye=ge((function(t,e,n){ce(t,e,n)}));function Xe(t){return function(){return t}}function Ze(t){return t}function Je(){return!1}t.exports=Ye},8552:function(t,e,n){var r=n(852),o=n(5639),i=r(o,"DataView");t.exports=i},1989:function(t,e,n){var r=n(1789),o=n(401),i=n(7667),a=n(1327),s=n(1866);function c(t){var e=-1,n=null==t?0:t.length;this.clear();while(++e1?n[i-1]:void 0,s=i>2?n[2]:void 0;a=t.length>3&&"function"==typeof a?(i--,a):void 0,s&&o(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);while(++rp))return!1;var h=l.get(t),v=l.get(e);if(h&&v)return h==e&&v==t;var m=-1,g=!0,y=n&s?new r:void 0;l.set(t,e),l.set(e,t);while(++m-1&&t%1==0&&t-1}t.exports=o},4705:function(t,e,n){var r=n(8470);function o(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}t.exports=o},4785:function(t,e,n){var r=n(1989),o=n(8407),i=n(7071);function a(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}t.exports=a},1285:function(t,e,n){var r=n(5050);function o(t){var e=r(this,t)["delete"](t);return this.size-=e?1:0,e}t.exports=o},6e3:function(t,e,n){var r=n(5050);function o(t){return r(this,t).get(t)}t.exports=o},9916:function(t,e,n){var r=n(5050);function o(t){return r(this,t).has(t)}t.exports=o},5265:function(t,e,n){var r=n(5050);function o(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}t.exports=o},8776:function(t){function e(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}t.exports=e},4536:function(t,e,n){var r=n(852),o=r(Object,"create");t.exports=o},6916:function(t,e,n){var r=n(5569),o=r(Object.keys,Object);t.exports=o},3498:function(t){function e(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}t.exports=e},1167:function(t,e,n){t=n.nmd(t);var r=n(1957),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o,s=a&&r.process,c=function(){try{var t=i&&i.require&&i.require("util").types;return t||s&&s.binding&&s.binding("util")}catch(e){}}();t.exports=c},2333:function(t){var e=Object.prototype,n=e.toString;function r(t){return n.call(t)}t.exports=r},5569:function(t){function e(t,e){return function(n){return t(e(n))}}t.exports=e},5357:function(t,e,n){var r=n(6874),o=Math.max;function i(t,e,n){return e=o(void 0===e?t.length-1:e,0),function(){var i=arguments,a=-1,s=o(i.length-e,0),c=Array(s);while(++a0){if(++o>=e)return arguments[0]}else o=0;return t.apply(void 0,arguments)}}t.exports=o},7465:function(t,e,n){var r=n(8407);function o(){this.__data__=new r,this.size=0}t.exports=o},3779:function(t){function e(t){var e=this.__data__,n=e["delete"](t);return this.size=e.size,n}t.exports=e},7599:function(t){function e(t){return this.__data__.get(t)}t.exports=e},4758:function(t){function e(t){return this.__data__.has(t)}t.exports=e},4309:function(t,e,n){var r=n(8407),o=n(7071),i=n(3369),a=200;function s(t,e){var n=this.__data__;if(n instanceof r){var s=n.__data__;if(!o||s.length-1&&t%1==0&&t<=e}t.exports=n},3218:function(t){function e(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}t.exports=e},7005:function(t){function e(t){return null!=t&&"object"==typeof t}t.exports=e},8630:function(t,e,n){var r=n(4239),o=n(5924),i=n(7005),a="[object Object]",s=Function.prototype,c=Object.prototype,u=s.toString,l=c.hasOwnProperty,f=u.call(Object);function p(t){if(!i(t)||r(t)!=a)return!1;var e=o(t);if(null===e)return!0;var n=l.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&u.call(n)==f}t.exports=p},6719:function(t,e,n){var r=n(8749),o=n(1717),i=n(1167),a=i&&i.isTypedArray,s=a?o(a):r;t.exports=s},3674:function(t,e,n){var r=n(4636),o=n(280),i=n(8612);function a(t){return i(t)?r(t):o(t)}t.exports=a},1704:function(t,e,n){var r=n(4636),o=n(313),i=n(8612);function a(t){return i(t)?r(t,!0):o(t)}t.exports=a},3857:function(t,e,n){var r=n(2980),o=n(1463),i=o((function(t,e,n){r(t,e,n)}));t.exports=i},479:function(t){function e(){return[]}t.exports=e},5062:function(t){function e(){return!1}t.exports=e},9881:function(t,e,n){var r=n(8363),o=n(1704);function i(t){return r(t,o(t))}t.exports=i},8975:function(t,e,n){var r;!function(){"use strict";var o={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function i(t){return s(u(t),arguments)}function a(t,e){return i.apply(null,[t].concat(e||[]))}function s(t,e){var n,r,a,s,c,u,l,f,p,d=1,h=t.length,v="";for(r=0;r=0),s.type){case"b":n=parseInt(n,10).toString(2);break;case"c":n=String.fromCharCode(parseInt(n,10));break;case"d":case"i":n=parseInt(n,10);break;case"j":n=JSON.stringify(n,null,s.width?parseInt(s.width):0);break;case"e":n=s.precision?parseFloat(n).toExponential(s.precision):parseFloat(n).toExponential();break;case"f":n=s.precision?parseFloat(n).toFixed(s.precision):parseFloat(n);break;case"g":n=s.precision?String(Number(n.toPrecision(s.precision))):parseFloat(n);break;case"o":n=(parseInt(n,10)>>>0).toString(8);break;case"s":n=String(n),n=s.precision?n.substring(0,s.precision):n;break;case"t":n=String(!!n),n=s.precision?n.substring(0,s.precision):n;break;case"T":n=Object.prototype.toString.call(n).slice(8,-1).toLowerCase(),n=s.precision?n.substring(0,s.precision):n;break;case"u":n=parseInt(n,10)>>>0;break;case"v":n=n.valueOf(),n=s.precision?n.substring(0,s.precision):n;break;case"x":n=(parseInt(n,10)>>>0).toString(16);break;case"X":n=(parseInt(n,10)>>>0).toString(16).toUpperCase();break}o.json.test(s.type)?v+=n:(!o.number.test(s.type)||f&&!s.sign?p="":(p=f?"+":"-",n=n.toString().replace(o.sign,"")),u=s.pad_char?"0"===s.pad_char?"0":s.pad_char.charAt(1):" ",l=s.width-(p+n).length,c=s.width&&l>0?u.repeat(l):"",v+=s.align?p+n+c:"0"===u?p+c+n:c+p+n)}return v}var c=Object.create(null);function u(t){if(c[t])return c[t];var e,n=t,r=[],i=0;while(n){if(null!==(e=o.text.exec(n)))r.push(e[0]);else if(null!==(e=o.modulo.exec(n)))r.push("%");else{if(null===(e=o.placeholder.exec(n)))throw new SyntaxError("[sprintf] unexpected placeholder");if(e[2]){i|=1;var a=[],s=e[2],u=[];if(null===(u=o.key.exec(s)))throw new SyntaxError("[sprintf] failed to parse named argument key");a.push(u[1]);while(""!==(s=s.substring(u[0].length)))if(null!==(u=o.key_access.exec(s)))a.push(u[1]);else{if(null===(u=o.index_access.exec(s)))throw new SyntaxError("[sprintf] failed to parse named argument key");a.push(u[1])}e[2]=a}else i|=2;if(3===i)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");r.push({placeholder:e[0],param_no:e[1],keys:e[2],sign:e[3],pad_char:e[4],align:e[5],width:e[6],precision:e[7],type:e[8]})}n=n.substring(e[0].length)}return c[t]=r}e.sprintf=i,e.vsprintf=a,"undefined"!==typeof window&&(window["sprintf"]=i,window["vsprintf"]=a,r=function(){return{sprintf:i,vsprintf:a}}.call(e,n,e,t),void 0===r||(t.exports=r))}()},6455:function(t){ /*! * sweetalert2 v9.17.2 * Released under the MIT License. */ -(function(e,n){t.exports=n()})(0,(function(){"use strict";function t(e){return t="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(e)}function e(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){for(var n=0;ne?1:t1&&void 0!==arguments[1]?arguments[1]:"flex";t.style.opacity="",t.style.display=e},_t=function(t){t.style.opacity="",t.style.display="none"},xt=function(t,e,n){e?bt(t,n):_t(t)},Ot=function(t){return!(!t||!(t.offsetWidth||t.offsetHeight||t.getClientRects().length))},kt=function(t){return!!(t.scrollHeight>t.clientHeight)},Ct=function(t){var e=window.getComputedStyle(t),n=parseFloat(e.getPropertyValue("animation-duration")||"0"),r=parseFloat(e.getPropertyValue("transition-duration")||"0");return n>0||r>0},jt=function(t,e){if("function"===typeof t.contains)return t.contains(e)},St=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=tt();Ot(n)&&(e&&(n.style.transition="none",n.style.width="100%"),setTimeout((function(){n.style.transition="width ".concat(t/1e3,"s linear"),n.style.width="0%"}),10))},Et=function(){var t=tt(),e=parseInt(window.getComputedStyle(t).width);t.style.removeProperty("transition"),t.style.width="100%";var n=parseInt(window.getComputedStyle(t).width),r=parseInt(e/n*100);t.style.removeProperty("transition"),t.style.width="".concat(r,"%")},At=function(){return"undefined"===typeof window||"undefined"===typeof document},$t='\n
\n
\n
    \n
    \n
    \n
    \n
    \n
    \n \n

    \n \n
    \n
    \n
    \n \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n').replace(/(^|\n)\s*/g,""),Tt=function(){var t=D();return!!t&&(t.parentNode.removeChild(t),gt([document.documentElement,document.body],[N["no-backdrop"],N["toast-shown"],N["has-column"]]),!0)},Pt=function(t){Lr.isVisible()&&dt!==t.target.value&&Lr.resetValidationMessage(),dt=t.target.value},Lt=function(){var t=V(),e=yt(t,N.input),n=yt(t,N.file),r=t.querySelector(".".concat(N.range," input")),o=t.querySelector(".".concat(N.range," output")),i=yt(t,N.select),a=t.querySelector(".".concat(N.checkbox," input")),s=yt(t,N.textarea);e.oninput=Pt,n.onchange=Pt,i.onchange=Pt,a.onchange=Pt,s.oninput=Pt,r.oninput=function(t){Pt(t),o.value=r.value},r.onchange=function(t){Pt(t),r.nextSibling.value=r.value}},It=function(t){return"string"===typeof t?document.querySelector(t):t},Nt=function(t){var e=F();e.setAttribute("role",t.toast?"alert":"dialog"),e.setAttribute("aria-live",t.toast?"polite":"assertive"),t.toast||e.setAttribute("aria-modal","true")},Rt=function(t){"rtl"===window.getComputedStyle(t).direction&&mt(D(),N.rtl)},Dt=function(t){var e=Tt();if(At())_("SweetAlert2 requires document to initialize");else{var n=document.createElement("div");n.className=N.container,e&&mt(n,N["no-transition"]),ct(n,$t);var r=It(t.target);r.appendChild(n),Nt(t),Rt(r),Lt()}},Mt=function(e,n){e instanceof HTMLElement?n.appendChild(e):"object"===t(e)?Bt(e,n):e&&ct(n,e)},Bt=function(t,e){t.jquery?Ft(e,t):ct(e,t.toString())},Ft=function(t,e){if(t.textContent="",0 in e)for(var n=0;n in e;n++)t.appendChild(e[n].cloneNode(!0));else t.appendChild(e.cloneNode(!0))},zt=function(){if(At())return!1;var t=document.createElement("div"),e={WebkitAnimation:"webkitAnimationEnd",OAnimation:"oAnimationEnd oanimationend",animation:"animationend"};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&"undefined"!==typeof t.style[n])return e[n];return!1}(),Ht=function(){var t=document.createElement("div");t.className=N["scrollbar-measure"],document.body.appendChild(t);var e=t.getBoundingClientRect().width-t.clientWidth;return document.body.removeChild(t),e},Ut=function(t,e){var n=X(),r=K(),o=Y();e.showConfirmButton||e.showCancelButton||_t(n),ft(n,e,"actions"),qt(r,"confirm",e),qt(o,"cancel",e),e.buttonsStyling?Vt(r,o,e):(gt([r,o],N.styled),r.style.backgroundColor=r.style.borderLeftColor=r.style.borderRightColor="",o.style.backgroundColor=o.style.borderLeftColor=o.style.borderRightColor=""),e.reverseButtons&&r.parentNode.insertBefore(o,r)};function Vt(t,e,n){if(mt([t,e],N.styled),n.confirmButtonColor&&(t.style.backgroundColor=n.confirmButtonColor),n.cancelButtonColor&&(e.style.backgroundColor=n.cancelButtonColor),!at()){var r=window.getComputedStyle(t).getPropertyValue("background-color");t.style.borderLeftColor=r,t.style.borderRightColor=r}}function qt(t,e,n){xt(t,n["show".concat(g(e),"Button")],"inline-block"),ct(t,n["".concat(e,"ButtonText")]),t.setAttribute("aria-label",n["".concat(e,"ButtonAriaLabel")]),t.className=N[e],ft(t,n,"".concat(e,"Button")),mt(t,n["".concat(e,"ButtonClass")])}function Wt(t,e){"string"===typeof e?t.style.background=e:e||mt([document.documentElement,document.body],N["no-backdrop"])}function Gt(t,e){e in N?mt(t,N[e]):(b('The "position" parameter is not valid, defaulting to "center"'),mt(t,N.center))}function Zt(t,e){if(e&&"string"===typeof e){var n="grow-".concat(e);n in N&&mt(t,N[n])}}var Kt=function(t,e){var n=D();if(n){Wt(n,e.backdrop),!e.backdrop&&e.allowOutsideClick&&b('"allowOutsideClick" parameter requires `backdrop` parameter to be set to `true`'),Gt(n,e.position),Zt(n,e.grow),ft(n,e,"container");var r=document.body.getAttribute("data-swal2-queue-step");r&&(n.setAttribute("data-queue-step",r),document.body.removeAttribute("data-swal2-queue-step"))}},Yt={promise:new WeakMap,innerParams:new WeakMap,domCache:new WeakMap},Xt=["input","file","range","select","radio","checkbox","textarea"],Jt=function(t,e){var n=V(),r=Yt.innerParams.get(t),o=!r||e.input!==r.input;Xt.forEach((function(t){var r=N[t],i=yt(n,r);ee(t,e.inputAttributes),i.className=r,o&&_t(i)})),e.input&&(o&&Qt(e),ne(e))},Qt=function(t){if(!ie[t.input])return _('Unexpected type of input! Expected "text", "email", "password", "number", "tel", "select", "radio", "checkbox", "textarea", "file" or "url", got "'.concat(t.input,'"'));var e=oe(t.input),n=ie[t.input](e,t);bt(n),setTimeout((function(){ht(n)}))},te=function(t){for(var e=0;en?"".concat(e,"px"):null};new MutationObserver(o).observe(t,{attributes:!0,attributeFilter:["style"]})}return t};var ae=function(t,e){var n=V().querySelector("#".concat(N.content));e.html?(Mt(e.html,n),bt(n,"block")):e.text?(n.textContent=e.text,bt(n,"block")):_t(n),Jt(t,e),ft(V(),e,"content")},se=function(t,e){var n=Q();xt(n,e.footer),e.footer&&Mt(e.footer,n),ft(n,e,"footer")},ce=function(t,e){var n=et();ct(n,e.closeButtonHtml),ft(n,e,"closeButton"),xt(n,e.showCloseButton),n.setAttribute("aria-label",e.closeButtonAriaLabel)},ue=function(t,e){var n=Yt.innerParams.get(t);if(n&&e.icon===n.icon&&H())ft(H(),e,"icon");else if(le(),e.icon)if(-1!==Object.keys(R).indexOf(e.icon)){var r=M(".".concat(N.icon,".").concat(R[e.icon]));bt(r),pe(r,e),fe(),ft(r,e,"icon"),mt(r,e.showClass.icon)}else _('Unknown icon! Expected "success", "error", "warning", "info" or "question", got "'.concat(e.icon,'"'))},le=function(){for(var t=z(),e=0;e\n \n
    \n
    \n ');else if("error"===e.icon)ct(t,'\n \n \n \n \n ');else{var n={question:"?",warning:"!",info:"i"};ct(t,de(n[e.icon]))}},de=function(t){return'
    ').concat(t,"
    ")},he=function(t,e){var n=W();if(!e.imageUrl)return _t(n);bt(n,""),n.setAttribute("src",e.imageUrl),n.setAttribute("alt",e.imageAlt),wt(n,"width",e.imageWidth),wt(n,"height",e.imageHeight),n.className=N.image,ft(n,e,"image")},ve=[],me=function(t){var e=this;ve=t;var n=function(t,e){ve=[],t(e)},r=[];return new Promise((function(t){(function o(i,a){i=e.progressSteps.length&&b("Invalid currentProgressStep parameter, it should be less than progressSteps.length (currentProgressStep like JS arrays starts from 0)"),e.progressSteps.forEach((function(t,o){var i=be(t);if(n.appendChild(i),o===r&&mt(i,N["active-progress-step"]),o!==e.progressSteps.length-1){var a=_e(e);n.appendChild(a)}}))},Oe=function(t,e){var n=U();xt(n,e.title||e.titleText),e.title&&Mt(e.title,n),e.titleText&&(n.innerText=e.titleText),ft(n,e,"title")},ke=function(t,e){var n=J();ft(n,e,"header"),xe(t,e),ue(t,e),he(t,e),Oe(t,e),ce(t,e)},Ce=function(t,e){var n=F();wt(n,"width",e.width),wt(n,"padding",e.padding),e.background&&(n.style.background=e.background),je(n,e)},je=function(t,e){t.className="".concat(N.popup," ").concat(Ot(t)?e.showClass.popup:""),e.toast?(mt([document.documentElement,document.body],N["toast-shown"]),mt(t,N.toast)):mt(t,N.modal),ft(t,e,"popup"),"string"===typeof e.customClass&&mt(t,e.customClass),e.icon&&mt(t,N["icon-".concat(e.icon)])},Se=function(t,e){Ce(t,e),Kt(t,e),ke(t,e),ae(t,e),Ut(t,e),se(t,e),"function"===typeof e.onRender&&e.onRender(F())},Ee=function(){return Ot(F())},Ae=function(){return K()&&K().click()},$e=function(){return Y()&&Y().click()};function Te(){for(var t=this,e=arguments.length,n=new Array(e),r=0;rwindow.innerHeight&&(st.previousBodyPadding=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")),document.body.style.paddingRight="".concat(st.previousBodyPadding+Ht(),"px"))},an=function(){null!==st.previousBodyPadding&&(document.body.style.paddingRight="".concat(st.previousBodyPadding,"px"),st.previousBodyPadding=null)},sn=function(){var t=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1;if(t&&!ut(document.body,N.iosfix)){var e=document.body.scrollTop;document.body.style.top="".concat(-1*e,"px"),mt(document.body,N.iosfix),un(),cn()}},cn=function(){var t=!navigator.userAgent.match(/(CriOS|FxiOS|EdgiOS|YaBrowser|UCBrowser)/i);if(t){var e=44;F().scrollHeight>window.innerHeight-e&&(D().style.paddingBottom="".concat(e,"px"))}},un=function(){var t,e=D();e.ontouchstart=function(e){t=ln(e.target)},e.ontouchmove=function(e){t&&(e.preventDefault(),e.stopPropagation())}},ln=function(t){var e=D();return t===e||!(kt(e)||"INPUT"===t.tagName||kt(V())&&V().contains(t))},fn=function(){if(ut(document.body,N.iosfix)){var t=parseInt(document.body.style.top,10);gt(document.body,N.iosfix),document.body.style.top="",document.body.scrollTop=-1*t}},pn=function(){return!!window.MSInputMethodContext&&!!document.documentMode},dn=function(){var t=D(),e=F();t.style.removeProperty("align-items"),e.offsetTop<0&&(t.style.alignItems="flex-start")},hn=function(){"undefined"!==typeof window&&pn()&&(dn(),window.addEventListener("resize",dn))},vn=function(){"undefined"!==typeof window&&pn()&&window.removeEventListener("resize",dn)},mn=function(){var t=w(document.body.children);t.forEach((function(t){t===D()||jt(t,D())||(t.hasAttribute("aria-hidden")&&t.setAttribute("data-previous-aria-hidden",t.getAttribute("aria-hidden")),t.setAttribute("aria-hidden","true"))}))},gn=function(){var t=w(document.body.children);t.forEach((function(t){t.hasAttribute("data-previous-aria-hidden")?(t.setAttribute("aria-hidden",t.getAttribute("data-previous-aria-hidden")),t.removeAttribute("data-previous-aria-hidden")):t.removeAttribute("aria-hidden")}))},yn={swalPromiseResolve:new WeakMap};function wn(t,e,n,r){n?kn(t,r):(De().then((function(){return kn(t,r)})),Ne.keydownTarget.removeEventListener("keydown",Ne.keydownHandler,{capture:Ne.keydownListenerCapture}),Ne.keydownHandlerAdded=!1),e.parentNode&&!document.body.getAttribute("data-swal2-queue-step")&&e.parentNode.removeChild(e),ot()&&(an(),fn(),vn(),gn()),bn()}function bn(){gt([document.documentElement,document.body],[N.shown,N["height-auto"],N["no-backdrop"],N["toast-shown"],N["toast-column"]])}function _n(t){var e=F();if(e){var n=Yt.innerParams.get(this);if(n&&!ut(e,n.hideClass.popup)){var r=yn.swalPromiseResolve.get(this);gt(e,n.showClass.popup),mt(e,n.hideClass.popup);var o=D();gt(o,n.showClass.backdrop),mt(o,n.hideClass.backdrop),xn(this,e,n),"undefined"!==typeof t?(t.isDismissed="undefined"!==typeof t.dismiss,t.isConfirmed="undefined"===typeof t.dismiss):t={isDismissed:!0,isConfirmed:!1},r(t||{})}}}var xn=function(t,e,n){var r=D(),o=zt&&Ct(e),i=n.onClose,a=n.onAfterClose;null!==i&&"function"===typeof i&&i(e),o?On(t,e,r,a):wn(t,r,it(),a)},On=function(t,e,n,r){Ne.swalCloseEventFinishedCallback=wn.bind(null,t,n,it(),r),e.addEventListener(zt,(function(t){t.target===e&&(Ne.swalCloseEventFinishedCallback(),delete Ne.swalCloseEventFinishedCallback)}))},kn=function(t,e){setTimeout((function(){"function"===typeof e&&e(),t._destroy()}))};function Cn(t,e,n){var r=Yt.domCache.get(t);e.forEach((function(t){r[t].disabled=n}))}function jn(t,e){if(!t)return!1;if("radio"===t.type)for(var n=t.parentNode.parentNode,r=n.querySelectorAll("input"),o=0;o")),Dt(t)}var Bn=function(t){var e=D(),n=F();"function"===typeof t.onBeforeOpen&&t.onBeforeOpen(n);var r=window.getComputedStyle(document.body),o=r.overflowY;Un(e,n,t),zn(e,n),ot()&&(Hn(e,t.scrollbarPadding,o),mn()),it()||Ne.previousActiveElement||(Ne.previousActiveElement=document.activeElement),"function"===typeof t.onOpen&&setTimeout((function(){return t.onOpen(n)})),gt(e,N["no-transition"])};function Fn(t){var e=F();if(t.target===e){var n=D();e.removeEventListener(zt,Fn),n.style.overflowY="auto"}}var zn=function(t,e){zt&&Ct(e)?(t.style.overflowY="hidden",e.addEventListener(zt,Fn)):t.style.overflowY="auto"},Hn=function(t,e,n){sn(),hn(),e&&"hidden"!==n&&on(),setTimeout((function(){t.scrollTop=0}))},Un=function(t,e,n){mt(t,n.showClass.backdrop),bt(e),mt(e,n.showClass.popup),mt([document.documentElement,document.body],N.shown),n.heightAuto&&n.backdrop&&!n.toast&&mt([document.documentElement,document.body],N["height-auto"])},Vn=function(t,e){"select"===e.input||"radio"===e.input?Kn(t,e):-1!==["text","email","number","tel","textarea"].indexOf(e.input)&&(j(e.inputValue)||E(e.inputValue))&&Yn(t,e)},qn=function(t,e){var n=t.getInput();if(!n)return null;switch(e.input){case"checkbox":return Wn(n);case"radio":return Gn(n);case"file":return Zn(n);default:return e.inputAutoTrim?n.value.trim():n.value}},Wn=function(t){return t.checked?1:0},Gn=function(t){return t.checked?t.value:null},Zn=function(t){return t.files.length?null!==t.getAttribute("multiple")?t.files:t.files[0]:null},Kn=function(e,n){var r=V(),o=function(t){return Xn[n.input](r,Jn(t),n)};j(n.inputOptions)||E(n.inputOptions)?(Le(),S(n.inputOptions).then((function(t){e.hideLoading(),o(t)}))):"object"===t(n.inputOptions)?o(n.inputOptions):_("Unexpected type of inputOptions! Expected object, Map or Promise, got ".concat(t(n.inputOptions)))},Yn=function(t,e){var n=t.getInput();_t(n),S(e.inputValue).then((function(r){n.value="number"===e.input?parseFloat(r)||0:"".concat(r),bt(n),n.focus(),t.hideLoading()}))["catch"]((function(e){_("Error in inputValue promise: ".concat(e)),n.value="",bt(n),n.focus(),t.hideLoading()}))},Xn={select:function(t,e,n){var r=yt(t,N.select),o=function(t,e,r){var o=document.createElement("option");o.value=r,ct(o,e),n.inputValue.toString()===r.toString()&&(o.selected=!0),t.appendChild(o)};e.forEach((function(t){var e=t[0],n=t[1];if(Array.isArray(n)){var i=document.createElement("optgroup");i.label=e,i.disabled=!1,r.appendChild(i),n.forEach((function(t){return o(i,t[1],t[0])}))}else o(r,n,e)})),r.focus()},radio:function(t,e,n){var r=yt(t,N.radio);e.forEach((function(t){var e=t[0],o=t[1],i=document.createElement("input"),a=document.createElement("label");i.type="radio",i.name=N.radio,i.value=e,n.inputValue.toString()===e.toString()&&(i.checked=!0);var s=document.createElement("span");ct(s,o),s.className=N.label,a.appendChild(i),a.appendChild(s),r.appendChild(a)}));var o=r.querySelectorAll("input");o.length&&o[0].focus()}},Jn=function e(n){var r=[];return"undefined"!==typeof Map&&n instanceof Map?n.forEach((function(n,o){var i=n;"object"===t(i)&&(i=e(i)),r.push([o,i])})):Object.keys(n).forEach((function(o){var i=n[o];"object"===t(i)&&(i=e(i)),r.push([o,i])})),r},Qn=function(t,e){t.disableButtons(),e.input?er(t,e):rr(t,e,!0)},tr=function(t,e){t.disableButtons(),e(A.cancel)},er=function(t,e){var n=qn(t,e);if(e.inputValidator){t.disableInput();var r=Promise.resolve().then((function(){return S(e.inputValidator(n,e.validationMessage))}));r.then((function(r){t.enableButtons(),t.enableInput(),r?t.showValidationMessage(r):rr(t,e,n)}))}else t.getInput().checkValidity()?rr(t,e,n):(t.enableButtons(),t.showValidationMessage(e.validationMessage))},nr=function(t,e){t.closePopup({value:e})},rr=function(t,e,n){if(e.showLoaderOnConfirm&&Le(),e.preConfirm){t.resetValidationMessage();var r=Promise.resolve().then((function(){return S(e.preConfirm(n,e.validationMessage))}));r.then((function(e){Ot(Z())||!1===e?t.hideLoading():nr(t,"undefined"===typeof e?n:e)}))}else nr(t,n)},or=function(t,e,n,r){e.keydownTarget&&e.keydownHandlerAdded&&(e.keydownTarget.removeEventListener("keydown",e.keydownHandler,{capture:e.keydownListenerCapture}),e.keydownHandlerAdded=!1),n.toast||(e.keydownHandler=function(e){return cr(t,e,r)},e.keydownTarget=n.keydownListenerCapture?window:F(),e.keydownListenerCapture=n.keydownListenerCapture,e.keydownTarget.addEventListener("keydown",e.keydownHandler,{capture:e.keydownListenerCapture}),e.keydownHandlerAdded=!0)},ir=function(t,e,n){for(var r=rt(),o=0;o:first-child,.swal2-container.swal2-bottom-left>:first-child,.swal2-container.swal2-bottom-right>:first-child,.swal2-container.swal2-bottom-start>:first-child,.swal2-container.swal2-bottom>:first-child{margin-top:auto}.swal2-container.swal2-grow-fullscreen>.swal2-modal{display:flex!important;flex:1;align-self:stretch;justify-content:center}.swal2-container.swal2-grow-row>.swal2-modal{display:flex!important;flex:1;align-content:center;justify-content:center}.swal2-container.swal2-grow-column{flex:1;flex-direction:column}.swal2-container.swal2-grow-column.swal2-bottom,.swal2-container.swal2-grow-column.swal2-center,.swal2-container.swal2-grow-column.swal2-top{align-items:center}.swal2-container.swal2-grow-column.swal2-bottom-left,.swal2-container.swal2-grow-column.swal2-bottom-start,.swal2-container.swal2-grow-column.swal2-center-left,.swal2-container.swal2-grow-column.swal2-center-start,.swal2-container.swal2-grow-column.swal2-top-left,.swal2-container.swal2-grow-column.swal2-top-start{align-items:flex-start}.swal2-container.swal2-grow-column.swal2-bottom-end,.swal2-container.swal2-grow-column.swal2-bottom-right,.swal2-container.swal2-grow-column.swal2-center-end,.swal2-container.swal2-grow-column.swal2-center-right,.swal2-container.swal2-grow-column.swal2-top-end,.swal2-container.swal2-grow-column.swal2-top-right{align-items:flex-end}.swal2-container.swal2-grow-column>.swal2-modal{display:flex!important;flex:1;align-content:center;justify-content:center}.swal2-container.swal2-no-transition{transition:none!important}.swal2-container:not(.swal2-top):not(.swal2-top-start):not(.swal2-top-end):not(.swal2-top-left):not(.swal2-top-right):not(.swal2-center-start):not(.swal2-center-end):not(.swal2-center-left):not(.swal2-center-right):not(.swal2-bottom):not(.swal2-bottom-start):not(.swal2-bottom-end):not(.swal2-bottom-left):not(.swal2-bottom-right):not(.swal2-grow-fullscreen)>.swal2-modal{margin:auto}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.swal2-container .swal2-modal{margin:0!important}}.swal2-popup{display:none;position:relative;box-sizing:border-box;flex-direction:column;justify-content:center;width:32em;max-width:100%;padding:1.25em;border:none;border-radius:.3125em;background:#fff;font-family:inherit;font-size:1rem}.swal2-popup:focus{outline:0}.swal2-popup.swal2-loading{overflow-y:hidden}.swal2-header{display:flex;flex-direction:column;align-items:center;padding:0 1.8em}.swal2-title{position:relative;max-width:100%;margin:0 0 .4em;padding:0;color:#595959;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;word-wrap:break-word}.swal2-actions{display:flex;z-index:1;flex-wrap:wrap;align-items:center;justify-content:center;width:100%;margin:1.25em auto 0}.swal2-actions:not(.swal2-loading) .swal2-styled[disabled]{opacity:.4}.swal2-actions:not(.swal2-loading) .swal2-styled:hover{background-image:linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.1))}.swal2-actions:not(.swal2-loading) .swal2-styled:active{background-image:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.2))}.swal2-actions.swal2-loading .swal2-styled.swal2-confirm{box-sizing:border-box;width:2.5em;height:2.5em;margin:.46875em;padding:0;-webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border:.25em solid transparent;border-radius:100%;border-color:transparent;background-color:transparent!important;color:transparent!important;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.swal2-actions.swal2-loading .swal2-styled.swal2-cancel{margin-right:30px;margin-left:30px}.swal2-actions.swal2-loading :not(.swal2-styled).swal2-confirm::after{content:"";display:inline-block;width:15px;height:15px;margin-left:5px;-webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border:3px solid #999;border-radius:50%;border-right-color:transparent;box-shadow:1px 1px 1px #fff}.swal2-styled{margin:.3125em;padding:.625em 2em;box-shadow:none;font-weight:500}.swal2-styled:not([disabled]){cursor:pointer}.swal2-styled.swal2-confirm{border:0;border-radius:.25em;background:initial;background-color:#3085d6;color:#fff;font-size:1.0625em}.swal2-styled.swal2-cancel{border:0;border-radius:.25em;background:initial;background-color:#aaa;color:#fff;font-size:1.0625em}.swal2-styled:focus{outline:0;box-shadow:0 0 0 1px #fff,0 0 0 3px rgba(50,100,150,.4)}.swal2-styled::-moz-focus-inner{border:0}.swal2-footer{justify-content:center;margin:1.25em 0 0;padding:1em 0 0;border-top:1px solid #eee;color:#545454;font-size:1em}.swal2-timer-progress-bar-container{position:absolute;right:0;bottom:0;left:0;height:.25em;overflow:hidden;border-bottom-right-radius:.3125em;border-bottom-left-radius:.3125em}.swal2-timer-progress-bar{width:100%;height:.25em;background:rgba(0,0,0,.2)}.swal2-image{max-width:100%;margin:1.25em auto}.swal2-close{position:absolute;z-index:2;top:0;right:0;align-items:center;justify-content:center;width:1.2em;height:1.2em;padding:0;overflow:hidden;transition:color .1s ease-out;border:none;border-radius:0;background:0 0;color:#ccc;font-family:serif;font-size:2.5em;line-height:1.2;cursor:pointer}.swal2-close:hover{transform:none;background:0 0;color:#f27474}.swal2-close::-moz-focus-inner{border:0}.swal2-content{z-index:1;justify-content:center;margin:0;padding:0 1.6em;color:#545454;font-size:1.125em;font-weight:400;line-height:normal;text-align:center;word-wrap:break-word}.swal2-checkbox,.swal2-file,.swal2-input,.swal2-radio,.swal2-select,.swal2-textarea{margin:1em auto}.swal2-file,.swal2-input,.swal2-textarea{box-sizing:border-box;width:100%;transition:border-color .3s,box-shadow .3s;border:1px solid #d9d9d9;border-radius:.1875em;background:inherit;box-shadow:inset 0 1px 1px rgba(0,0,0,.06);color:inherit;font-size:1.125em}.swal2-file.swal2-inputerror,.swal2-input.swal2-inputerror,.swal2-textarea.swal2-inputerror{border-color:#f27474!important;box-shadow:0 0 2px #f27474!important}.swal2-file:focus,.swal2-input:focus,.swal2-textarea:focus{border:1px solid #b4dbed;outline:0;box-shadow:0 0 3px #c4e6f5}.swal2-file::-moz-placeholder,.swal2-input::-moz-placeholder,.swal2-textarea::-moz-placeholder{color:#ccc}.swal2-file:-ms-input-placeholder,.swal2-input:-ms-input-placeholder,.swal2-textarea:-ms-input-placeholder{color:#ccc}.swal2-file::-ms-input-placeholder,.swal2-input::-ms-input-placeholder,.swal2-textarea::-ms-input-placeholder{color:#ccc}.swal2-file::placeholder,.swal2-input::placeholder,.swal2-textarea::placeholder{color:#ccc}.swal2-range{margin:1em auto;background:#fff}.swal2-range input{width:80%}.swal2-range output{width:20%;color:inherit;font-weight:600;text-align:center}.swal2-range input,.swal2-range output{height:2.625em;padding:0;font-size:1.125em;line-height:2.625em}.swal2-input{height:2.625em;padding:0 .75em}.swal2-input[type=number]{max-width:10em}.swal2-file{background:inherit;font-size:1.125em}.swal2-textarea{height:6.75em;padding:.75em}.swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;background:inherit;color:inherit;font-size:1.125em}.swal2-checkbox,.swal2-radio{align-items:center;justify-content:center;background:#fff;color:inherit}.swal2-checkbox label,.swal2-radio label{margin:0 .6em;font-size:1.125em}.swal2-checkbox input,.swal2-radio input{margin:0 .4em}.swal2-validation-message{display:none;align-items:center;justify-content:center;padding:.625em;overflow:hidden;background:#f0f0f0;color:#666;font-size:1em;font-weight:300}.swal2-validation-message::before{content:"!";display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center}.swal2-icon{position:relative;box-sizing:content-box;justify-content:center;width:5em;height:5em;margin:1.25em auto 1.875em;border:.25em solid transparent;border-radius:50%;font-family:inherit;line-height:5em;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.swal2-icon .swal2-icon-content{display:flex;align-items:center;font-size:3.75em}.swal2-icon.swal2-error{border-color:#f27474;color:#f27474}.swal2-icon.swal2-error .swal2-x-mark{position:relative;flex-grow:1}.swal2-icon.swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;transform:rotate(45deg)}.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;transform:rotate(-45deg)}.swal2-icon.swal2-error.swal2-icon-show{-webkit-animation:swal2-animate-error-icon .5s;animation:swal2-animate-error-icon .5s}.swal2-icon.swal2-error.swal2-icon-show .swal2-x-mark{-webkit-animation:swal2-animate-error-x-mark .5s;animation:swal2-animate-error-x-mark .5s}.swal2-icon.swal2-warning{border-color:#facea8;color:#f8bb86}.swal2-icon.swal2-info{border-color:#9de0f6;color:#3fc3ee}.swal2-icon.swal2-question{border-color:#c9dae1;color:#87adbd}.swal2-icon.swal2-success{border-color:#a5dc86;color:#a5dc86}.swal2-icon.swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;transform:rotate(45deg);border-radius:50%}.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=left]{top:-.4375em;left:-2.0635em;transform:rotate(-45deg);transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=right]{top:-.6875em;left:1.875em;transform:rotate(-45deg);transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}.swal2-icon.swal2-success .swal2-success-ring{position:absolute;z-index:2;top:-.25em;left:-.25em;box-sizing:content-box;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%}.swal2-icon.swal2-success .swal2-success-fix{position:absolute;z-index:1;top:.5em;left:1.625em;width:.4375em;height:5.625em;transform:rotate(-45deg)}.swal2-icon.swal2-success [class^=swal2-success-line]{display:block;position:absolute;z-index:2;height:.3125em;border-radius:.125em;background-color:#a5dc86}.swal2-icon.swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.8125em;width:1.5625em;transform:rotate(45deg)}.swal2-icon.swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;transform:rotate(-45deg)}.swal2-icon.swal2-success.swal2-icon-show .swal2-success-line-tip{-webkit-animation:swal2-animate-success-line-tip .75s;animation:swal2-animate-success-line-tip .75s}.swal2-icon.swal2-success.swal2-icon-show .swal2-success-line-long{-webkit-animation:swal2-animate-success-line-long .75s;animation:swal2-animate-success-line-long .75s}.swal2-icon.swal2-success.swal2-icon-show .swal2-success-circular-line-right{-webkit-animation:swal2-rotate-success-circular-line 4.25s ease-in;animation:swal2-rotate-success-circular-line 4.25s ease-in}.swal2-progress-steps{align-items:center;margin:0 0 1.25em;padding:0;background:inherit;font-weight:600}.swal2-progress-steps li{display:inline-block;position:relative}.swal2-progress-steps .swal2-progress-step{z-index:20;width:2em;height:2em;border-radius:2em;background:#3085d6;color:#fff;line-height:2em;text-align:center}.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:#3085d6}.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step{background:#add8e6;color:#fff}.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line{background:#add8e6}.swal2-progress-steps .swal2-progress-step-line{z-index:10;width:2.5em;height:.4em;margin:0 -1px;background:#3085d6}[class^=swal2]{-webkit-tap-highlight-color:transparent}.swal2-show{-webkit-animation:swal2-show .3s;animation:swal2-show .3s}.swal2-hide{-webkit-animation:swal2-hide .15s forwards;animation:swal2-hide .15s forwards}.swal2-noanimation{transition:none}.swal2-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.swal2-rtl .swal2-close{right:auto;left:0}.swal2-rtl .swal2-timer-progress-bar{right:0;left:auto}@supports (-ms-accelerator:true){.swal2-range input{width:100%!important}.swal2-range output{display:none}}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.swal2-range input{width:100%!important}.swal2-range output{display:none}}@-moz-document url-prefix(){.swal2-close:focus{outline:2px solid rgba(50,100,150,.4)}}@-webkit-keyframes swal2-toast-show{0%{transform:translateY(-.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0)}}@keyframes swal2-toast-show{0%{transform:translateY(-.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0)}}@-webkit-keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@-webkit-keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@-webkit-keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}@keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}@-webkit-keyframes swal2-show{0%{transform:scale(.7)}45%{transform:scale(1.05)}80%{transform:scale(.95)}100%{transform:scale(1)}}@keyframes swal2-show{0%{transform:scale(.7)}45%{transform:scale(1.05)}80%{transform:scale(.95)}100%{transform:scale(1)}}@-webkit-keyframes swal2-hide{0%{transform:scale(1);opacity:1}100%{transform:scale(.5);opacity:0}}@keyframes swal2-hide{0%{transform:scale(1);opacity:1}100%{transform:scale(.5);opacity:0}}@-webkit-keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.8125em;width:1.5625em}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.8125em;width:1.5625em}}@-webkit-keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@-webkit-keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@-webkit-keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(.4);opacity:0}50%{margin-top:1.625em;transform:scale(.4);opacity:0}80%{margin-top:-.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(.4);opacity:0}50%{margin-top:1.625em;transform:scale(.4);opacity:0}80%{margin-top:-.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@-webkit-keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0);opacity:1}}@keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0);opacity:1}}@-webkit-keyframes swal2-rotate-loading{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes swal2-rotate-loading{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow:hidden}body.swal2-height-auto{height:auto!important}body.swal2-no-backdrop .swal2-container{top:auto;right:auto;bottom:auto;left:auto;max-width:calc(100% - .625em * 2);background-color:transparent!important}body.swal2-no-backdrop .swal2-container>.swal2-modal{box-shadow:0 0 10px rgba(0,0,0,.4)}body.swal2-no-backdrop .swal2-container.swal2-top{top:0;left:50%;transform:translateX(-50%)}body.swal2-no-backdrop .swal2-container.swal2-top-left,body.swal2-no-backdrop .swal2-container.swal2-top-start{top:0;left:0}body.swal2-no-backdrop .swal2-container.swal2-top-end,body.swal2-no-backdrop .swal2-container.swal2-top-right{top:0;right:0}body.swal2-no-backdrop .swal2-container.swal2-center{top:50%;left:50%;transform:translate(-50%,-50%)}body.swal2-no-backdrop .swal2-container.swal2-center-left,body.swal2-no-backdrop .swal2-container.swal2-center-start{top:50%;left:0;transform:translateY(-50%)}body.swal2-no-backdrop .swal2-container.swal2-center-end,body.swal2-no-backdrop .swal2-container.swal2-center-right{top:50%;right:0;transform:translateY(-50%)}body.swal2-no-backdrop .swal2-container.swal2-bottom{bottom:0;left:50%;transform:translateX(-50%)}body.swal2-no-backdrop .swal2-container.swal2-bottom-left,body.swal2-no-backdrop .swal2-container.swal2-bottom-start{bottom:0;left:0}body.swal2-no-backdrop .swal2-container.swal2-bottom-end,body.swal2-no-backdrop .swal2-container.swal2-bottom-right{right:0;bottom:0}@media print{body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow-y:scroll!important}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown)>[aria-hidden=true]{display:none}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) .swal2-container{position:static!important}}body.swal2-toast-shown .swal2-container{background-color:transparent}body.swal2-toast-shown .swal2-container.swal2-top{top:0;right:auto;bottom:auto;left:50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-top-end,body.swal2-toast-shown .swal2-container.swal2-top-right{top:0;right:0;bottom:auto;left:auto}body.swal2-toast-shown .swal2-container.swal2-top-left,body.swal2-toast-shown .swal2-container.swal2-top-start{top:0;right:auto;bottom:auto;left:0}body.swal2-toast-shown .swal2-container.swal2-center-left,body.swal2-toast-shown .swal2-container.swal2-center-start{top:50%;right:auto;bottom:auto;left:0;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-center{top:50%;right:auto;bottom:auto;left:50%;transform:translate(-50%,-50%)}body.swal2-toast-shown .swal2-container.swal2-center-end,body.swal2-toast-shown .swal2-container.swal2-center-right{top:50%;right:0;bottom:auto;left:auto;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-left,body.swal2-toast-shown .swal2-container.swal2-bottom-start{top:auto;right:auto;bottom:0;left:0}body.swal2-toast-shown .swal2-container.swal2-bottom{top:auto;right:auto;bottom:0;left:50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-end,body.swal2-toast-shown .swal2-container.swal2-bottom-right{top:auto;right:0;bottom:0;left:auto}body.swal2-toast-column .swal2-toast{flex-direction:column;align-items:stretch}body.swal2-toast-column .swal2-toast .swal2-actions{flex:1;align-self:stretch;height:2.2em;margin-top:.3125em}body.swal2-toast-column .swal2-toast .swal2-loading{justify-content:center}body.swal2-toast-column .swal2-toast .swal2-input{height:2em;margin:.3125em auto;font-size:1em}body.swal2-toast-column .swal2-toast .swal2-validation-message{font-size:1em}')},7575:function(t,e,n){"use strict";function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}n.d(e,{ZP:function(){return en}});var o=n(4503),i=n(5226);function a(t,e){for(var n=0;ne?1:t1&&void 0!==arguments[1]?arguments[1]:"flex";t.style.opacity="",t.style.display=e},_t=function(t){t.style.opacity="",t.style.display="none"},xt=function(t,e,n){e?bt(t,n):_t(t)},Ot=function(t){return!(!t||!(t.offsetWidth||t.offsetHeight||t.getClientRects().length))},kt=function(t){return!!(t.scrollHeight>t.clientHeight)},Ct=function(t){var e=window.getComputedStyle(t),n=parseFloat(e.getPropertyValue("animation-duration")||"0"),r=parseFloat(e.getPropertyValue("transition-duration")||"0");return n>0||r>0},Et=function(t,e){if("function"===typeof t.contains)return t.contains(e)},jt=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=tt();Ot(n)&&(e&&(n.style.transition="none",n.style.width="100%"),setTimeout((function(){n.style.transition="width ".concat(t/1e3,"s linear"),n.style.width="0%"}),10))},St=function(){var t=tt(),e=parseInt(window.getComputedStyle(t).width);t.style.removeProperty("transition"),t.style.width="100%";var n=parseInt(window.getComputedStyle(t).width),r=parseInt(e/n*100);t.style.removeProperty("transition"),t.style.width="".concat(r,"%")},At=function(){return"undefined"===typeof window||"undefined"===typeof document},Tt='\n
    \n
    \n
      \n
      \n
      \n
      \n
      \n
      \n \n

      \n \n
      \n
      \n
      \n \n \n
      \n \n \n
      \n \n
      \n \n \n
      \n
      \n
      \n \n \n
      \n
      \n
      \n
      \n
      \n
      \n').replace(/(^|\n)\s*/g,""),$t=function(){var t=F();return!!t&&(t.parentNode.removeChild(t),gt([document.documentElement,document.body],[N["no-backdrop"],N["toast-shown"],N["has-column"]]),!0)},Pt=function(t){Lr.isVisible()&&dt!==t.target.value&&Lr.resetValidationMessage(),dt=t.target.value},Lt=function(){var t=V(),e=yt(t,N.input),n=yt(t,N.file),r=t.querySelector(".".concat(N.range," input")),o=t.querySelector(".".concat(N.range," output")),i=yt(t,N.select),a=t.querySelector(".".concat(N.checkbox," input")),s=yt(t,N.textarea);e.oninput=Pt,n.onchange=Pt,i.onchange=Pt,a.onchange=Pt,s.oninput=Pt,r.oninput=function(t){Pt(t),o.value=r.value},r.onchange=function(t){Pt(t),r.nextSibling.value=r.value}},Rt=function(t){return"string"===typeof t?document.querySelector(t):t},Nt=function(t){var e=M();e.setAttribute("role",t.toast?"alert":"dialog"),e.setAttribute("aria-live",t.toast?"polite":"assertive"),t.toast||e.setAttribute("aria-modal","true")},It=function(t){"rtl"===window.getComputedStyle(t).direction&&mt(F(),N.rtl)},Ft=function(t){var e=$t();if(At())_("SweetAlert2 requires document to initialize");else{var n=document.createElement("div");n.className=N.container,e&&mt(n,N["no-transition"]),ct(n,Tt);var r=Rt(t.target);r.appendChild(n),Nt(t),It(r),Lt()}},Dt=function(e,n){e instanceof HTMLElement?n.appendChild(e):"object"===t(e)?Bt(e,n):e&&ct(n,e)},Bt=function(t,e){t.jquery?Mt(e,t):ct(e,t.toString())},Mt=function(t,e){if(t.textContent="",0 in e)for(var n=0;n in e;n++)t.appendChild(e[n].cloneNode(!0));else t.appendChild(e.cloneNode(!0))},zt=function(){if(At())return!1;var t=document.createElement("div"),e={WebkitAnimation:"webkitAnimationEnd",OAnimation:"oAnimationEnd oanimationend",animation:"animationend"};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&"undefined"!==typeof t.style[n])return e[n];return!1}(),Ut=function(){var t=document.createElement("div");t.className=N["scrollbar-measure"],document.body.appendChild(t);var e=t.getBoundingClientRect().width-t.clientWidth;return document.body.removeChild(t),e},Ht=function(t,e){var n=Z(),r=Y(),o=X();e.showConfirmButton||e.showCancelButton||_t(n),ft(n,e,"actions"),qt(r,"confirm",e),qt(o,"cancel",e),e.buttonsStyling?Vt(r,o,e):(gt([r,o],N.styled),r.style.backgroundColor=r.style.borderLeftColor=r.style.borderRightColor="",o.style.backgroundColor=o.style.borderLeftColor=o.style.borderRightColor=""),e.reverseButtons&&r.parentNode.insertBefore(o,r)};function Vt(t,e,n){if(mt([t,e],N.styled),n.confirmButtonColor&&(t.style.backgroundColor=n.confirmButtonColor),n.cancelButtonColor&&(e.style.backgroundColor=n.cancelButtonColor),!at()){var r=window.getComputedStyle(t).getPropertyValue("background-color");t.style.borderLeftColor=r,t.style.borderRightColor=r}}function qt(t,e,n){xt(t,n["show".concat(g(e),"Button")],"inline-block"),ct(t,n["".concat(e,"ButtonText")]),t.setAttribute("aria-label",n["".concat(e,"ButtonAriaLabel")]),t.className=N[e],ft(t,n,"".concat(e,"Button")),mt(t,n["".concat(e,"ButtonClass")])}function Wt(t,e){"string"===typeof e?t.style.background=e:e||mt([document.documentElement,document.body],N["no-backdrop"])}function Gt(t,e){e in N?mt(t,N[e]):(b('The "position" parameter is not valid, defaulting to "center"'),mt(t,N.center))}function Kt(t,e){if(e&&"string"===typeof e){var n="grow-".concat(e);n in N&&mt(t,N[n])}}var Yt=function(t,e){var n=F();if(n){Wt(n,e.backdrop),!e.backdrop&&e.allowOutsideClick&&b('"allowOutsideClick" parameter requires `backdrop` parameter to be set to `true`'),Gt(n,e.position),Kt(n,e.grow),ft(n,e,"container");var r=document.body.getAttribute("data-swal2-queue-step");r&&(n.setAttribute("data-queue-step",r),document.body.removeAttribute("data-swal2-queue-step"))}},Xt={promise:new WeakMap,innerParams:new WeakMap,domCache:new WeakMap},Zt=["input","file","range","select","radio","checkbox","textarea"],Jt=function(t,e){var n=V(),r=Xt.innerParams.get(t),o=!r||e.input!==r.input;Zt.forEach((function(t){var r=N[t],i=yt(n,r);ee(t,e.inputAttributes),i.className=r,o&&_t(i)})),e.input&&(o&&Qt(e),ne(e))},Qt=function(t){if(!ie[t.input])return _('Unexpected type of input! Expected "text", "email", "password", "number", "tel", "select", "radio", "checkbox", "textarea", "file" or "url", got "'.concat(t.input,'"'));var e=oe(t.input),n=ie[t.input](e,t);bt(n),setTimeout((function(){ht(n)}))},te=function(t){for(var e=0;en?"".concat(e,"px"):null};new MutationObserver(o).observe(t,{attributes:!0,attributeFilter:["style"]})}return t};var ae=function(t,e){var n=V().querySelector("#".concat(N.content));e.html?(Dt(e.html,n),bt(n,"block")):e.text?(n.textContent=e.text,bt(n,"block")):_t(n),Jt(t,e),ft(V(),e,"content")},se=function(t,e){var n=Q();xt(n,e.footer),e.footer&&Dt(e.footer,n),ft(n,e,"footer")},ce=function(t,e){var n=et();ct(n,e.closeButtonHtml),ft(n,e,"closeButton"),xt(n,e.showCloseButton),n.setAttribute("aria-label",e.closeButtonAriaLabel)},ue=function(t,e){var n=Xt.innerParams.get(t);if(n&&e.icon===n.icon&&U())ft(U(),e,"icon");else if(le(),e.icon)if(-1!==Object.keys(I).indexOf(e.icon)){var r=D(".".concat(N.icon,".").concat(I[e.icon]));bt(r),pe(r,e),fe(),ft(r,e,"icon"),mt(r,e.showClass.icon)}else _('Unknown icon! Expected "success", "error", "warning", "info" or "question", got "'.concat(e.icon,'"'))},le=function(){for(var t=z(),e=0;e\n \n
      \n
      \n ');else if("error"===e.icon)ct(t,'\n \n \n \n \n ');else{var n={question:"?",warning:"!",info:"i"};ct(t,de(n[e.icon]))}},de=function(t){return'
      ').concat(t,"
      ")},he=function(t,e){var n=W();if(!e.imageUrl)return _t(n);bt(n,""),n.setAttribute("src",e.imageUrl),n.setAttribute("alt",e.imageAlt),wt(n,"width",e.imageWidth),wt(n,"height",e.imageHeight),n.className=N.image,ft(n,e,"image")},ve=[],me=function(t){var e=this;ve=t;var n=function(t,e){ve=[],t(e)},r=[];return new Promise((function(t){(function o(i,a){i=e.progressSteps.length&&b("Invalid currentProgressStep parameter, it should be less than progressSteps.length (currentProgressStep like JS arrays starts from 0)"),e.progressSteps.forEach((function(t,o){var i=be(t);if(n.appendChild(i),o===r&&mt(i,N["active-progress-step"]),o!==e.progressSteps.length-1){var a=_e(e);n.appendChild(a)}}))},Oe=function(t,e){var n=H();xt(n,e.title||e.titleText),e.title&&Dt(e.title,n),e.titleText&&(n.innerText=e.titleText),ft(n,e,"title")},ke=function(t,e){var n=J();ft(n,e,"header"),xe(t,e),ue(t,e),he(t,e),Oe(t,e),ce(t,e)},Ce=function(t,e){var n=M();wt(n,"width",e.width),wt(n,"padding",e.padding),e.background&&(n.style.background=e.background),Ee(n,e)},Ee=function(t,e){t.className="".concat(N.popup," ").concat(Ot(t)?e.showClass.popup:""),e.toast?(mt([document.documentElement,document.body],N["toast-shown"]),mt(t,N.toast)):mt(t,N.modal),ft(t,e,"popup"),"string"===typeof e.customClass&&mt(t,e.customClass),e.icon&&mt(t,N["icon-".concat(e.icon)])},je=function(t,e){Ce(t,e),Yt(t,e),ke(t,e),ae(t,e),Ht(t,e),se(t,e),"function"===typeof e.onRender&&e.onRender(M())},Se=function(){return Ot(M())},Ae=function(){return Y()&&Y().click()},Te=function(){return X()&&X().click()};function $e(){for(var t=this,e=arguments.length,n=new Array(e),r=0;rwindow.innerHeight&&(st.previousBodyPadding=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")),document.body.style.paddingRight="".concat(st.previousBodyPadding+Ut(),"px"))},an=function(){null!==st.previousBodyPadding&&(document.body.style.paddingRight="".concat(st.previousBodyPadding,"px"),st.previousBodyPadding=null)},sn=function(){var t=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1;if(t&&!ut(document.body,N.iosfix)){var e=document.body.scrollTop;document.body.style.top="".concat(-1*e,"px"),mt(document.body,N.iosfix),un(),cn()}},cn=function(){var t=!navigator.userAgent.match(/(CriOS|FxiOS|EdgiOS|YaBrowser|UCBrowser)/i);if(t){var e=44;M().scrollHeight>window.innerHeight-e&&(F().style.paddingBottom="".concat(e,"px"))}},un=function(){var t,e=F();e.ontouchstart=function(e){t=ln(e.target)},e.ontouchmove=function(e){t&&(e.preventDefault(),e.stopPropagation())}},ln=function(t){var e=F();return t===e||!(kt(e)||"INPUT"===t.tagName||kt(V())&&V().contains(t))},fn=function(){if(ut(document.body,N.iosfix)){var t=parseInt(document.body.style.top,10);gt(document.body,N.iosfix),document.body.style.top="",document.body.scrollTop=-1*t}},pn=function(){return!!window.MSInputMethodContext&&!!document.documentMode},dn=function(){var t=F(),e=M();t.style.removeProperty("align-items"),e.offsetTop<0&&(t.style.alignItems="flex-start")},hn=function(){"undefined"!==typeof window&&pn()&&(dn(),window.addEventListener("resize",dn))},vn=function(){"undefined"!==typeof window&&pn()&&window.removeEventListener("resize",dn)},mn=function(){var t=w(document.body.children);t.forEach((function(t){t===F()||Et(t,F())||(t.hasAttribute("aria-hidden")&&t.setAttribute("data-previous-aria-hidden",t.getAttribute("aria-hidden")),t.setAttribute("aria-hidden","true"))}))},gn=function(){var t=w(document.body.children);t.forEach((function(t){t.hasAttribute("data-previous-aria-hidden")?(t.setAttribute("aria-hidden",t.getAttribute("data-previous-aria-hidden")),t.removeAttribute("data-previous-aria-hidden")):t.removeAttribute("aria-hidden")}))},yn={swalPromiseResolve:new WeakMap};function wn(t,e,n,r){n?kn(t,r):(Fe().then((function(){return kn(t,r)})),Ne.keydownTarget.removeEventListener("keydown",Ne.keydownHandler,{capture:Ne.keydownListenerCapture}),Ne.keydownHandlerAdded=!1),e.parentNode&&!document.body.getAttribute("data-swal2-queue-step")&&e.parentNode.removeChild(e),ot()&&(an(),fn(),vn(),gn()),bn()}function bn(){gt([document.documentElement,document.body],[N.shown,N["height-auto"],N["no-backdrop"],N["toast-shown"],N["toast-column"]])}function _n(t){var e=M();if(e){var n=Xt.innerParams.get(this);if(n&&!ut(e,n.hideClass.popup)){var r=yn.swalPromiseResolve.get(this);gt(e,n.showClass.popup),mt(e,n.hideClass.popup);var o=F();gt(o,n.showClass.backdrop),mt(o,n.hideClass.backdrop),xn(this,e,n),"undefined"!==typeof t?(t.isDismissed="undefined"!==typeof t.dismiss,t.isConfirmed="undefined"===typeof t.dismiss):t={isDismissed:!0,isConfirmed:!1},r(t||{})}}}var xn=function(t,e,n){var r=F(),o=zt&&Ct(e),i=n.onClose,a=n.onAfterClose;null!==i&&"function"===typeof i&&i(e),o?On(t,e,r,a):wn(t,r,it(),a)},On=function(t,e,n,r){Ne.swalCloseEventFinishedCallback=wn.bind(null,t,n,it(),r),e.addEventListener(zt,(function(t){t.target===e&&(Ne.swalCloseEventFinishedCallback(),delete Ne.swalCloseEventFinishedCallback)}))},kn=function(t,e){setTimeout((function(){"function"===typeof e&&e(),t._destroy()}))};function Cn(t,e,n){var r=Xt.domCache.get(t);e.forEach((function(t){r[t].disabled=n}))}function En(t,e){if(!t)return!1;if("radio"===t.type)for(var n=t.parentNode.parentNode,r=n.querySelectorAll("input"),o=0;o")),Ft(t)}var Bn=function(t){var e=F(),n=M();"function"===typeof t.onBeforeOpen&&t.onBeforeOpen(n);var r=window.getComputedStyle(document.body),o=r.overflowY;Hn(e,n,t),zn(e,n),ot()&&(Un(e,t.scrollbarPadding,o),mn()),it()||Ne.previousActiveElement||(Ne.previousActiveElement=document.activeElement),"function"===typeof t.onOpen&&setTimeout((function(){return t.onOpen(n)})),gt(e,N["no-transition"])};function Mn(t){var e=M();if(t.target===e){var n=F();e.removeEventListener(zt,Mn),n.style.overflowY="auto"}}var zn=function(t,e){zt&&Ct(e)?(t.style.overflowY="hidden",e.addEventListener(zt,Mn)):t.style.overflowY="auto"},Un=function(t,e,n){sn(),hn(),e&&"hidden"!==n&&on(),setTimeout((function(){t.scrollTop=0}))},Hn=function(t,e,n){mt(t,n.showClass.backdrop),bt(e),mt(e,n.showClass.popup),mt([document.documentElement,document.body],N.shown),n.heightAuto&&n.backdrop&&!n.toast&&mt([document.documentElement,document.body],N["height-auto"])},Vn=function(t,e){"select"===e.input||"radio"===e.input?Yn(t,e):-1!==["text","email","number","tel","textarea"].indexOf(e.input)&&(E(e.inputValue)||S(e.inputValue))&&Xn(t,e)},qn=function(t,e){var n=t.getInput();if(!n)return null;switch(e.input){case"checkbox":return Wn(n);case"radio":return Gn(n);case"file":return Kn(n);default:return e.inputAutoTrim?n.value.trim():n.value}},Wn=function(t){return t.checked?1:0},Gn=function(t){return t.checked?t.value:null},Kn=function(t){return t.files.length?null!==t.getAttribute("multiple")?t.files:t.files[0]:null},Yn=function(e,n){var r=V(),o=function(t){return Zn[n.input](r,Jn(t),n)};E(n.inputOptions)||S(n.inputOptions)?(Le(),j(n.inputOptions).then((function(t){e.hideLoading(),o(t)}))):"object"===t(n.inputOptions)?o(n.inputOptions):_("Unexpected type of inputOptions! Expected object, Map or Promise, got ".concat(t(n.inputOptions)))},Xn=function(t,e){var n=t.getInput();_t(n),j(e.inputValue).then((function(r){n.value="number"===e.input?parseFloat(r)||0:"".concat(r),bt(n),n.focus(),t.hideLoading()}))["catch"]((function(e){_("Error in inputValue promise: ".concat(e)),n.value="",bt(n),n.focus(),t.hideLoading()}))},Zn={select:function(t,e,n){var r=yt(t,N.select),o=function(t,e,r){var o=document.createElement("option");o.value=r,ct(o,e),n.inputValue.toString()===r.toString()&&(o.selected=!0),t.appendChild(o)};e.forEach((function(t){var e=t[0],n=t[1];if(Array.isArray(n)){var i=document.createElement("optgroup");i.label=e,i.disabled=!1,r.appendChild(i),n.forEach((function(t){return o(i,t[1],t[0])}))}else o(r,n,e)})),r.focus()},radio:function(t,e,n){var r=yt(t,N.radio);e.forEach((function(t){var e=t[0],o=t[1],i=document.createElement("input"),a=document.createElement("label");i.type="radio",i.name=N.radio,i.value=e,n.inputValue.toString()===e.toString()&&(i.checked=!0);var s=document.createElement("span");ct(s,o),s.className=N.label,a.appendChild(i),a.appendChild(s),r.appendChild(a)}));var o=r.querySelectorAll("input");o.length&&o[0].focus()}},Jn=function e(n){var r=[];return"undefined"!==typeof Map&&n instanceof Map?n.forEach((function(n,o){var i=n;"object"===t(i)&&(i=e(i)),r.push([o,i])})):Object.keys(n).forEach((function(o){var i=n[o];"object"===t(i)&&(i=e(i)),r.push([o,i])})),r},Qn=function(t,e){t.disableButtons(),e.input?er(t,e):rr(t,e,!0)},tr=function(t,e){t.disableButtons(),e(A.cancel)},er=function(t,e){var n=qn(t,e);if(e.inputValidator){t.disableInput();var r=Promise.resolve().then((function(){return j(e.inputValidator(n,e.validationMessage))}));r.then((function(r){t.enableButtons(),t.enableInput(),r?t.showValidationMessage(r):rr(t,e,n)}))}else t.getInput().checkValidity()?rr(t,e,n):(t.enableButtons(),t.showValidationMessage(e.validationMessage))},nr=function(t,e){t.closePopup({value:e})},rr=function(t,e,n){if(e.showLoaderOnConfirm&&Le(),e.preConfirm){t.resetValidationMessage();var r=Promise.resolve().then((function(){return j(e.preConfirm(n,e.validationMessage))}));r.then((function(e){Ot(K())||!1===e?t.hideLoading():nr(t,"undefined"===typeof e?n:e)}))}else nr(t,n)},or=function(t,e,n,r){e.keydownTarget&&e.keydownHandlerAdded&&(e.keydownTarget.removeEventListener("keydown",e.keydownHandler,{capture:e.keydownListenerCapture}),e.keydownHandlerAdded=!1),n.toast||(e.keydownHandler=function(e){return cr(t,e,r)},e.keydownTarget=n.keydownListenerCapture?window:M(),e.keydownListenerCapture=n.keydownListenerCapture,e.keydownTarget.addEventListener("keydown",e.keydownHandler,{capture:e.keydownListenerCapture}),e.keydownHandlerAdded=!0)},ir=function(t,e,n){for(var r=rt(),o=0;o:first-child,.swal2-container.swal2-bottom-left>:first-child,.swal2-container.swal2-bottom-right>:first-child,.swal2-container.swal2-bottom-start>:first-child,.swal2-container.swal2-bottom>:first-child{margin-top:auto}.swal2-container.swal2-grow-fullscreen>.swal2-modal{display:flex!important;flex:1;align-self:stretch;justify-content:center}.swal2-container.swal2-grow-row>.swal2-modal{display:flex!important;flex:1;align-content:center;justify-content:center}.swal2-container.swal2-grow-column{flex:1;flex-direction:column}.swal2-container.swal2-grow-column.swal2-bottom,.swal2-container.swal2-grow-column.swal2-center,.swal2-container.swal2-grow-column.swal2-top{align-items:center}.swal2-container.swal2-grow-column.swal2-bottom-left,.swal2-container.swal2-grow-column.swal2-bottom-start,.swal2-container.swal2-grow-column.swal2-center-left,.swal2-container.swal2-grow-column.swal2-center-start,.swal2-container.swal2-grow-column.swal2-top-left,.swal2-container.swal2-grow-column.swal2-top-start{align-items:flex-start}.swal2-container.swal2-grow-column.swal2-bottom-end,.swal2-container.swal2-grow-column.swal2-bottom-right,.swal2-container.swal2-grow-column.swal2-center-end,.swal2-container.swal2-grow-column.swal2-center-right,.swal2-container.swal2-grow-column.swal2-top-end,.swal2-container.swal2-grow-column.swal2-top-right{align-items:flex-end}.swal2-container.swal2-grow-column>.swal2-modal{display:flex!important;flex:1;align-content:center;justify-content:center}.swal2-container.swal2-no-transition{transition:none!important}.swal2-container:not(.swal2-top):not(.swal2-top-start):not(.swal2-top-end):not(.swal2-top-left):not(.swal2-top-right):not(.swal2-center-start):not(.swal2-center-end):not(.swal2-center-left):not(.swal2-center-right):not(.swal2-bottom):not(.swal2-bottom-start):not(.swal2-bottom-end):not(.swal2-bottom-left):not(.swal2-bottom-right):not(.swal2-grow-fullscreen)>.swal2-modal{margin:auto}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.swal2-container .swal2-modal{margin:0!important}}.swal2-popup{display:none;position:relative;box-sizing:border-box;flex-direction:column;justify-content:center;width:32em;max-width:100%;padding:1.25em;border:none;border-radius:.3125em;background:#fff;font-family:inherit;font-size:1rem}.swal2-popup:focus{outline:0}.swal2-popup.swal2-loading{overflow-y:hidden}.swal2-header{display:flex;flex-direction:column;align-items:center;padding:0 1.8em}.swal2-title{position:relative;max-width:100%;margin:0 0 .4em;padding:0;color:#595959;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;word-wrap:break-word}.swal2-actions{display:flex;z-index:1;flex-wrap:wrap;align-items:center;justify-content:center;width:100%;margin:1.25em auto 0}.swal2-actions:not(.swal2-loading) .swal2-styled[disabled]{opacity:.4}.swal2-actions:not(.swal2-loading) .swal2-styled:hover{background-image:linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.1))}.swal2-actions:not(.swal2-loading) .swal2-styled:active{background-image:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.2))}.swal2-actions.swal2-loading .swal2-styled.swal2-confirm{box-sizing:border-box;width:2.5em;height:2.5em;margin:.46875em;padding:0;-webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border:.25em solid transparent;border-radius:100%;border-color:transparent;background-color:transparent!important;color:transparent!important;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.swal2-actions.swal2-loading .swal2-styled.swal2-cancel{margin-right:30px;margin-left:30px}.swal2-actions.swal2-loading :not(.swal2-styled).swal2-confirm::after{content:"";display:inline-block;width:15px;height:15px;margin-left:5px;-webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border:3px solid #999;border-radius:50%;border-right-color:transparent;box-shadow:1px 1px 1px #fff}.swal2-styled{margin:.3125em;padding:.625em 2em;box-shadow:none;font-weight:500}.swal2-styled:not([disabled]){cursor:pointer}.swal2-styled.swal2-confirm{border:0;border-radius:.25em;background:initial;background-color:#3085d6;color:#fff;font-size:1.0625em}.swal2-styled.swal2-cancel{border:0;border-radius:.25em;background:initial;background-color:#aaa;color:#fff;font-size:1.0625em}.swal2-styled:focus{outline:0;box-shadow:0 0 0 1px #fff,0 0 0 3px rgba(50,100,150,.4)}.swal2-styled::-moz-focus-inner{border:0}.swal2-footer{justify-content:center;margin:1.25em 0 0;padding:1em 0 0;border-top:1px solid #eee;color:#545454;font-size:1em}.swal2-timer-progress-bar-container{position:absolute;right:0;bottom:0;left:0;height:.25em;overflow:hidden;border-bottom-right-radius:.3125em;border-bottom-left-radius:.3125em}.swal2-timer-progress-bar{width:100%;height:.25em;background:rgba(0,0,0,.2)}.swal2-image{max-width:100%;margin:1.25em auto}.swal2-close{position:absolute;z-index:2;top:0;right:0;align-items:center;justify-content:center;width:1.2em;height:1.2em;padding:0;overflow:hidden;transition:color .1s ease-out;border:none;border-radius:0;background:0 0;color:#ccc;font-family:serif;font-size:2.5em;line-height:1.2;cursor:pointer}.swal2-close:hover{transform:none;background:0 0;color:#f27474}.swal2-close::-moz-focus-inner{border:0}.swal2-content{z-index:1;justify-content:center;margin:0;padding:0 1.6em;color:#545454;font-size:1.125em;font-weight:400;line-height:normal;text-align:center;word-wrap:break-word}.swal2-checkbox,.swal2-file,.swal2-input,.swal2-radio,.swal2-select,.swal2-textarea{margin:1em auto}.swal2-file,.swal2-input,.swal2-textarea{box-sizing:border-box;width:100%;transition:border-color .3s,box-shadow .3s;border:1px solid #d9d9d9;border-radius:.1875em;background:inherit;box-shadow:inset 0 1px 1px rgba(0,0,0,.06);color:inherit;font-size:1.125em}.swal2-file.swal2-inputerror,.swal2-input.swal2-inputerror,.swal2-textarea.swal2-inputerror{border-color:#f27474!important;box-shadow:0 0 2px #f27474!important}.swal2-file:focus,.swal2-input:focus,.swal2-textarea:focus{border:1px solid #b4dbed;outline:0;box-shadow:0 0 3px #c4e6f5}.swal2-file::-moz-placeholder,.swal2-input::-moz-placeholder,.swal2-textarea::-moz-placeholder{color:#ccc}.swal2-file:-ms-input-placeholder,.swal2-input:-ms-input-placeholder,.swal2-textarea:-ms-input-placeholder{color:#ccc}.swal2-file::-ms-input-placeholder,.swal2-input::-ms-input-placeholder,.swal2-textarea::-ms-input-placeholder{color:#ccc}.swal2-file::placeholder,.swal2-input::placeholder,.swal2-textarea::placeholder{color:#ccc}.swal2-range{margin:1em auto;background:#fff}.swal2-range input{width:80%}.swal2-range output{width:20%;color:inherit;font-weight:600;text-align:center}.swal2-range input,.swal2-range output{height:2.625em;padding:0;font-size:1.125em;line-height:2.625em}.swal2-input{height:2.625em;padding:0 .75em}.swal2-input[type=number]{max-width:10em}.swal2-file{background:inherit;font-size:1.125em}.swal2-textarea{height:6.75em;padding:.75em}.swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;background:inherit;color:inherit;font-size:1.125em}.swal2-checkbox,.swal2-radio{align-items:center;justify-content:center;background:#fff;color:inherit}.swal2-checkbox label,.swal2-radio label{margin:0 .6em;font-size:1.125em}.swal2-checkbox input,.swal2-radio input{margin:0 .4em}.swal2-validation-message{display:none;align-items:center;justify-content:center;padding:.625em;overflow:hidden;background:#f0f0f0;color:#666;font-size:1em;font-weight:300}.swal2-validation-message::before{content:"!";display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center}.swal2-icon{position:relative;box-sizing:content-box;justify-content:center;width:5em;height:5em;margin:1.25em auto 1.875em;border:.25em solid transparent;border-radius:50%;font-family:inherit;line-height:5em;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.swal2-icon .swal2-icon-content{display:flex;align-items:center;font-size:3.75em}.swal2-icon.swal2-error{border-color:#f27474;color:#f27474}.swal2-icon.swal2-error .swal2-x-mark{position:relative;flex-grow:1}.swal2-icon.swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;transform:rotate(45deg)}.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;transform:rotate(-45deg)}.swal2-icon.swal2-error.swal2-icon-show{-webkit-animation:swal2-animate-error-icon .5s;animation:swal2-animate-error-icon .5s}.swal2-icon.swal2-error.swal2-icon-show .swal2-x-mark{-webkit-animation:swal2-animate-error-x-mark .5s;animation:swal2-animate-error-x-mark .5s}.swal2-icon.swal2-warning{border-color:#facea8;color:#f8bb86}.swal2-icon.swal2-info{border-color:#9de0f6;color:#3fc3ee}.swal2-icon.swal2-question{border-color:#c9dae1;color:#87adbd}.swal2-icon.swal2-success{border-color:#a5dc86;color:#a5dc86}.swal2-icon.swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;transform:rotate(45deg);border-radius:50%}.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=left]{top:-.4375em;left:-2.0635em;transform:rotate(-45deg);transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=right]{top:-.6875em;left:1.875em;transform:rotate(-45deg);transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}.swal2-icon.swal2-success .swal2-success-ring{position:absolute;z-index:2;top:-.25em;left:-.25em;box-sizing:content-box;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%}.swal2-icon.swal2-success .swal2-success-fix{position:absolute;z-index:1;top:.5em;left:1.625em;width:.4375em;height:5.625em;transform:rotate(-45deg)}.swal2-icon.swal2-success [class^=swal2-success-line]{display:block;position:absolute;z-index:2;height:.3125em;border-radius:.125em;background-color:#a5dc86}.swal2-icon.swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.8125em;width:1.5625em;transform:rotate(45deg)}.swal2-icon.swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;transform:rotate(-45deg)}.swal2-icon.swal2-success.swal2-icon-show .swal2-success-line-tip{-webkit-animation:swal2-animate-success-line-tip .75s;animation:swal2-animate-success-line-tip .75s}.swal2-icon.swal2-success.swal2-icon-show .swal2-success-line-long{-webkit-animation:swal2-animate-success-line-long .75s;animation:swal2-animate-success-line-long .75s}.swal2-icon.swal2-success.swal2-icon-show .swal2-success-circular-line-right{-webkit-animation:swal2-rotate-success-circular-line 4.25s ease-in;animation:swal2-rotate-success-circular-line 4.25s ease-in}.swal2-progress-steps{align-items:center;margin:0 0 1.25em;padding:0;background:inherit;font-weight:600}.swal2-progress-steps li{display:inline-block;position:relative}.swal2-progress-steps .swal2-progress-step{z-index:20;width:2em;height:2em;border-radius:2em;background:#3085d6;color:#fff;line-height:2em;text-align:center}.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:#3085d6}.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step{background:#add8e6;color:#fff}.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line{background:#add8e6}.swal2-progress-steps .swal2-progress-step-line{z-index:10;width:2.5em;height:.4em;margin:0 -1px;background:#3085d6}[class^=swal2]{-webkit-tap-highlight-color:transparent}.swal2-show{-webkit-animation:swal2-show .3s;animation:swal2-show .3s}.swal2-hide{-webkit-animation:swal2-hide .15s forwards;animation:swal2-hide .15s forwards}.swal2-noanimation{transition:none}.swal2-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.swal2-rtl .swal2-close{right:auto;left:0}.swal2-rtl .swal2-timer-progress-bar{right:0;left:auto}@supports (-ms-accelerator:true){.swal2-range input{width:100%!important}.swal2-range output{display:none}}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.swal2-range input{width:100%!important}.swal2-range output{display:none}}@-moz-document url-prefix(){.swal2-close:focus{outline:2px solid rgba(50,100,150,.4)}}@-webkit-keyframes swal2-toast-show{0%{transform:translateY(-.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0)}}@keyframes swal2-toast-show{0%{transform:translateY(-.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0)}}@-webkit-keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@-webkit-keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@-webkit-keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}@keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}@-webkit-keyframes swal2-show{0%{transform:scale(.7)}45%{transform:scale(1.05)}80%{transform:scale(.95)}100%{transform:scale(1)}}@keyframes swal2-show{0%{transform:scale(.7)}45%{transform:scale(1.05)}80%{transform:scale(.95)}100%{transform:scale(1)}}@-webkit-keyframes swal2-hide{0%{transform:scale(1);opacity:1}100%{transform:scale(.5);opacity:0}}@keyframes swal2-hide{0%{transform:scale(1);opacity:1}100%{transform:scale(.5);opacity:0}}@-webkit-keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.8125em;width:1.5625em}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.8125em;width:1.5625em}}@-webkit-keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@-webkit-keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@-webkit-keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(.4);opacity:0}50%{margin-top:1.625em;transform:scale(.4);opacity:0}80%{margin-top:-.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(.4);opacity:0}50%{margin-top:1.625em;transform:scale(.4);opacity:0}80%{margin-top:-.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@-webkit-keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0);opacity:1}}@keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0);opacity:1}}@-webkit-keyframes swal2-rotate-loading{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes swal2-rotate-loading{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow:hidden}body.swal2-height-auto{height:auto!important}body.swal2-no-backdrop .swal2-container{top:auto;right:auto;bottom:auto;left:auto;max-width:calc(100% - .625em * 2);background-color:transparent!important}body.swal2-no-backdrop .swal2-container>.swal2-modal{box-shadow:0 0 10px rgba(0,0,0,.4)}body.swal2-no-backdrop .swal2-container.swal2-top{top:0;left:50%;transform:translateX(-50%)}body.swal2-no-backdrop .swal2-container.swal2-top-left,body.swal2-no-backdrop .swal2-container.swal2-top-start{top:0;left:0}body.swal2-no-backdrop .swal2-container.swal2-top-end,body.swal2-no-backdrop .swal2-container.swal2-top-right{top:0;right:0}body.swal2-no-backdrop .swal2-container.swal2-center{top:50%;left:50%;transform:translate(-50%,-50%)}body.swal2-no-backdrop .swal2-container.swal2-center-left,body.swal2-no-backdrop .swal2-container.swal2-center-start{top:50%;left:0;transform:translateY(-50%)}body.swal2-no-backdrop .swal2-container.swal2-center-end,body.swal2-no-backdrop .swal2-container.swal2-center-right{top:50%;right:0;transform:translateY(-50%)}body.swal2-no-backdrop .swal2-container.swal2-bottom{bottom:0;left:50%;transform:translateX(-50%)}body.swal2-no-backdrop .swal2-container.swal2-bottom-left,body.swal2-no-backdrop .swal2-container.swal2-bottom-start{bottom:0;left:0}body.swal2-no-backdrop .swal2-container.swal2-bottom-end,body.swal2-no-backdrop .swal2-container.swal2-bottom-right{right:0;bottom:0}@media print{body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow-y:scroll!important}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown)>[aria-hidden=true]{display:none}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) .swal2-container{position:static!important}}body.swal2-toast-shown .swal2-container{background-color:transparent}body.swal2-toast-shown .swal2-container.swal2-top{top:0;right:auto;bottom:auto;left:50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-top-end,body.swal2-toast-shown .swal2-container.swal2-top-right{top:0;right:0;bottom:auto;left:auto}body.swal2-toast-shown .swal2-container.swal2-top-left,body.swal2-toast-shown .swal2-container.swal2-top-start{top:0;right:auto;bottom:auto;left:0}body.swal2-toast-shown .swal2-container.swal2-center-left,body.swal2-toast-shown .swal2-container.swal2-center-start{top:50%;right:auto;bottom:auto;left:0;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-center{top:50%;right:auto;bottom:auto;left:50%;transform:translate(-50%,-50%)}body.swal2-toast-shown .swal2-container.swal2-center-end,body.swal2-toast-shown .swal2-container.swal2-center-right{top:50%;right:0;bottom:auto;left:auto;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-left,body.swal2-toast-shown .swal2-container.swal2-bottom-start{top:auto;right:auto;bottom:0;left:0}body.swal2-toast-shown .swal2-container.swal2-bottom{top:auto;right:auto;bottom:0;left:50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-end,body.swal2-toast-shown .swal2-container.swal2-bottom-right{top:auto;right:0;bottom:0;left:auto}body.swal2-toast-column .swal2-toast{flex-direction:column;align-items:stretch}body.swal2-toast-column .swal2-toast .swal2-actions{flex:1;align-self:stretch;height:2.2em;margin-top:.3125em}body.swal2-toast-column .swal2-toast .swal2-loading{justify-content:center}body.swal2-toast-column .swal2-toast .swal2-input{height:2em;margin:.3125em auto;font-size:1em}body.swal2-toast-column .swal2-toast .swal2-validation-message{font-size:1em}')},6352:function(t,e,n){"use strict";function r(t){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},r(t)}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function a(t,e){for(var n=0;n=0)return 1;return 0}();function l(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then((function(){e=!1,t()})))}}function f(t){var e=!1;return function(){e||(e=!0,setTimeout((function(){e=!1,t()}),u))}}var p=c&&window.Promise,d=p?l:f;function h(t){var e={};return t&&"[object Function]"===e.toString.call(t)}function v(t,e){if(1!==t.nodeType)return[];var n=t.ownerDocument.defaultView,r=n.getComputedStyle(t,null);return e?r[e]:r}function m(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function g(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=v(t),n=e.overflow,r=e.overflowX,o=e.overflowY;return/(auto|scroll|overlay)/.test(n+o+r)?t:g(m(t))}function y(t){return t&&t.referenceNode?t.referenceNode:t}var w=c&&!(!window.MSInputMethodContext||!document.documentMode),b=c&&/MSIE 10/.test(navigator.userAgent);function _(t){return 11===t?w:10===t?b:w||b}function x(t){if(!t)return document.documentElement;var e=_(10)?document.body:null,n=t.offsetParent||null;while(n===e&&t.nextElementSibling)n=(t=t.nextElementSibling).offsetParent;var r=n&&n.nodeName;return r&&"BODY"!==r&&"HTML"!==r?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===v(n,"position")?x(n):n:t?t.ownerDocument.documentElement:document.documentElement}function O(t){var e=t.nodeName;return"BODY"!==e&&("HTML"===e||x(t.firstElementChild)===t)}function k(t){return null!==t.parentNode?k(t.parentNode):t}function C(t,e){if(!t||!t.nodeType||!e||!e.nodeType)return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,r=n?t:e,o=n?e:t,i=document.createRange();i.setStart(r,0),i.setEnd(o,0);var a=i.commonAncestorContainer;if(t!==a&&e!==a||r.contains(o))return O(a)?a:x(a);var s=k(t);return s.host?C(s.host,e):C(t,k(e).host)}function j(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",n="top"===e?"scrollTop":"scrollLeft",r=t.nodeName;if("BODY"===r||"HTML"===r){var o=t.ownerDocument.documentElement,i=t.ownerDocument.scrollingElement||o;return i[n]}return t[n]}function S(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=j(e,"top"),o=j(e,"left"),i=n?-1:1;return t.top+=r*i,t.bottom+=r*i,t.left+=o*i,t.right+=o*i,t}function E(t,e){var n="x"===e?"Left":"Top",r="Left"===n?"Right":"Bottom";return parseFloat(t["border"+n+"Width"])+parseFloat(t["border"+r+"Width"])}function A(t,e,n,r){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],_(10)?parseInt(n["offset"+t])+parseInt(r["margin"+("Height"===t?"Top":"Left")])+parseInt(r["margin"+("Height"===t?"Bottom":"Right")]):0)}function $(t){var e=t.body,n=t.documentElement,r=_(10)&&getComputedStyle(n);return{height:A("Height",e,n,r),width:A("Width",e,n,r)}}var T=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},P=function(){function t(t,e){for(var n=0;n2&&void 0!==arguments[2]&&arguments[2],r=_(10),o="HTML"===e.nodeName,i=R(t),a=R(e),s=g(t),c=v(e),u=parseFloat(c.borderTopWidth),l=parseFloat(c.borderLeftWidth);n&&o&&(a.top=Math.max(a.top,0),a.left=Math.max(a.left,0));var f=N({top:i.top-a.top-u,left:i.left-a.left-l,width:i.width,height:i.height});if(f.marginTop=0,f.marginLeft=0,!r&&o){var p=parseFloat(c.marginTop),d=parseFloat(c.marginLeft);f.top-=u-p,f.bottom-=u-p,f.left-=l-d,f.right-=l-d,f.marginTop=p,f.marginLeft=d}return(r&&!n?e.contains(s):e===s&&"BODY"!==s.nodeName)&&(f=S(f,e)),f}function M(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.ownerDocument.documentElement,r=D(t,n),o=Math.max(n.clientWidth,window.innerWidth||0),i=Math.max(n.clientHeight,window.innerHeight||0),a=e?0:j(n),s=e?0:j(n,"left"),c={top:a-r.top+r.marginTop,left:s-r.left+r.marginLeft,width:o,height:i};return N(c)}function B(t){var e=t.nodeName;if("BODY"===e||"HTML"===e)return!1;if("fixed"===v(t,"position"))return!0;var n=m(t);return!!n&&B(n)}function F(t){if(!t||!t.parentElement||_())return document.documentElement;var e=t.parentElement;while(e&&"none"===v(e,"transform"))e=e.parentElement;return e||document.documentElement}function z(t,e,n,r){var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],i={top:0,left:0},a=o?F(t):C(t,y(e));if("viewport"===r)i=M(a,o);else{var s=void 0;"scrollParent"===r?(s=g(m(e)),"BODY"===s.nodeName&&(s=t.ownerDocument.documentElement)):s="window"===r?t.ownerDocument.documentElement:r;var c=D(s,a,o);if("HTML"!==s.nodeName||B(a))i=c;else{var u=$(t.ownerDocument),l=u.height,f=u.width;i.top+=c.top-c.marginTop,i.bottom=l+c.top,i.left+=c.left-c.marginLeft,i.right=f+c.left}}n=n||0;var p="number"===typeof n;return i.left+=p?n:n.left||0,i.top+=p?n:n.top||0,i.right-=p?n:n.right||0,i.bottom-=p?n:n.bottom||0,i}function H(t){var e=t.width,n=t.height;return e*n}function U(t,e,n,r,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var a=z(n,r,i,o),s={top:{width:a.width,height:e.top-a.top},right:{width:a.right-e.right,height:a.height},bottom:{width:a.width,height:a.bottom-e.bottom},left:{width:e.left-a.left,height:a.height}},c=Object.keys(s).map((function(t){return I({key:t},s[t],{area:H(s[t])})})).sort((function(t,e){return e.area-t.area})),u=c.filter((function(t){var e=t.width,r=t.height;return e>=n.clientWidth&&r>=n.clientHeight})),l=u.length>0?u[0].key:c[0].key,f=t.split("-")[1];return l+(f?"-"+f:"")}function V(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=r?F(e):C(e,y(n));return D(n,o,r)}function q(t){var e=t.ownerDocument.defaultView,n=e.getComputedStyle(t),r=parseFloat(n.marginTop||0)+parseFloat(n.marginBottom||0),o=parseFloat(n.marginLeft||0)+parseFloat(n.marginRight||0),i={width:t.offsetWidth+o,height:t.offsetHeight+r};return i}function W(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,(function(t){return e[t]}))}function G(t,e,n){n=n.split("-")[0];var r=q(t),o={width:r.width,height:r.height},i=-1!==["right","left"].indexOf(n),a=i?"top":"left",s=i?"left":"top",c=i?"height":"width",u=i?"width":"height";return o[a]=e[a]+e[c]/2-r[c]/2,o[s]=n===s?e[s]-r[u]:e[W(s)],o}function Z(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function K(t,e,n){if(Array.prototype.findIndex)return t.findIndex((function(t){return t[e]===n}));var r=Z(t,(function(t){return t[e]===n}));return t.indexOf(r)}function Y(t,e,n){var r=void 0===n?t:t.slice(0,K(t,"name",n));return r.forEach((function(t){t["function"]&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=t["function"]||t.fn;t.enabled&&h(n)&&(e.offsets.popper=N(e.offsets.popper),e.offsets.reference=N(e.offsets.reference),e=n(e,t))})),e}function X(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=V(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=U(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=G(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=Y(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function J(t,e){return t.some((function(t){var n=t.name,r=t.enabled;return r&&n===e}))}function Q(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),r=0;ra[d]&&(t.offsets.popper[f]+=s[f]+h-a[d]),t.offsets.popper=N(t.offsets.popper);var m=s[f]+s[u]/2-h/2,g=v(t.instance.popper),y=parseFloat(g["margin"+l]),w=parseFloat(g["border"+l+"Width"]),b=m-t.offsets.popper[f]-y-w;return b=Math.max(Math.min(a[u]-h,b),0),t.arrowElement=r,t.offsets.arrow=(n={},L(n,f,Math.round(b)),L(n,p,""),n),t}function gt(t){return"end"===t?"start":"start"===t?"end":t}var yt=["auto-start","auto","auto-end","top-start","top","top-end","right-start","right","right-end","bottom-end","bottom","bottom-start","left-end","left","left-start"],wt=yt.slice(3);function bt(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=wt.indexOf(t),r=wt.slice(n+1).concat(wt.slice(0,n));return e?r.reverse():r}var _t={FLIP:"flip",CLOCKWISE:"clockwise",COUNTERCLOCKWISE:"counterclockwise"};function xt(t,e){if(J(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=z(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),r=t.placement.split("-")[0],o=W(r),i=t.placement.split("-")[1]||"",a=[];switch(e.behavior){case _t.FLIP:a=[r,o];break;case _t.CLOCKWISE:a=bt(r);break;case _t.COUNTERCLOCKWISE:a=bt(r,!0);break;default:a=e.behavior}return a.forEach((function(s,c){if(r!==s||a.length===c+1)return t;r=t.placement.split("-")[0],o=W(r);var u=t.offsets.popper,l=t.offsets.reference,f=Math.floor,p="left"===r&&f(u.right)>f(l.left)||"right"===r&&f(u.left)f(l.top)||"bottom"===r&&f(u.top)f(n.right),v=f(u.top)f(n.bottom),g="left"===r&&d||"right"===r&&h||"top"===r&&v||"bottom"===r&&m,y=-1!==["top","bottom"].indexOf(r),w=!!e.flipVariations&&(y&&"start"===i&&d||y&&"end"===i&&h||!y&&"start"===i&&v||!y&&"end"===i&&m),b=!!e.flipVariationsByContent&&(y&&"start"===i&&h||y&&"end"===i&&d||!y&&"start"===i&&m||!y&&"end"===i&&v),_=w||b;(p||g||_)&&(t.flipped=!0,(p||g)&&(r=a[c+1]),_&&(i=gt(i)),t.placement=r+(i?"-"+i:""),t.offsets.popper=I({},t.offsets.popper,G(t.instance.popper,t.offsets.reference,t.placement)),t=Y(t.instance.modifiers,t,"flip"))})),t}function Ot(t){var e=t.offsets,n=e.popper,r=e.reference,o=t.placement.split("-")[0],i=Math.floor,a=-1!==["top","bottom"].indexOf(o),s=a?"right":"bottom",c=a?"left":"top",u=a?"width":"height";return n[s]i(r[s])&&(t.offsets.popper[c]=i(r[s])),t}function kt(t,e,n,r){var o=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),i=+o[1],a=o[2];if(!i)return t;if(0===a.indexOf("%")){var s=void 0;switch(a){case"%p":s=n;break;case"%":case"%r":default:s=r}var c=N(s);return c[e]/100*i}if("vh"===a||"vw"===a){var u=void 0;return u="vh"===a?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0),u/100*i}return i}function Ct(t,e,n,r){var o=[0,0],i=-1!==["right","left"].indexOf(r),a=t.split(/(\+|\-)/).map((function(t){return t.trim()})),s=a.indexOf(Z(a,(function(t){return-1!==t.search(/,|\s/)})));a[s]&&-1===a[s].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var c=/\s*,\s*|\s+/,u=-1!==s?[a.slice(0,s).concat([a[s].split(c)[0]]),[a[s].split(c)[1]].concat(a.slice(s+1))]:[a];return u=u.map((function(t,r){var o=(1===r?!i:i)?"height":"width",a=!1;return t.reduce((function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,a=!0,t):a?(t[t.length-1]+=e,a=!1,t):t.concat(e)}),[]).map((function(t){return kt(t,o,e,n)}))})),u.forEach((function(t,e){t.forEach((function(n,r){st(n)&&(o[e]+=n*("-"===t[r-1]?-1:1))}))})),o}function jt(t,e){var n=e.offset,r=t.placement,o=t.offsets,i=o.popper,a=o.reference,s=r.split("-")[0],c=void 0;return c=st(+n)?[+n,0]:Ct(n,i,a,s),"left"===s?(i.top+=c[0],i.left-=c[1]):"right"===s?(i.top+=c[0],i.left+=c[1]):"top"===s?(i.left+=c[0],i.top-=c[1]):"bottom"===s&&(i.left+=c[0],i.top+=c[1]),t.popper=i,t}function St(t,e){var n=e.boundariesElement||x(t.instance.popper);t.instance.reference===n&&(n=x(n));var r=Q("transform"),o=t.instance.popper.style,i=o.top,a=o.left,s=o[r];o.top="",o.left="",o[r]="";var c=z(t.instance.popper,t.instance.reference,e.padding,n,t.positionFixed);o.top=i,o.left=a,o[r]=s,e.boundaries=c;var u=e.priority,l=t.offsets.popper,f={primary:function(t){var n=l[t];return l[t]c[t]&&!e.escapeWithReference&&(r=Math.min(l[n],c[t]-("right"===t?l.width:l.height))),L({},n,r)}};return u.forEach((function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";l=I({},l,f[e](t))})),t.offsets.popper=l,t}function Et(t){var e=t.placement,n=e.split("-")[0],r=e.split("-")[1];if(r){var o=t.offsets,i=o.reference,a=o.popper,s=-1!==["bottom","top"].indexOf(n),c=s?"left":"top",u=s?"width":"height",l={start:L({},c,i[c]),end:L({},c,i[c]+i[u]-a[u])};t.offsets.popper=I({},a,l[r])}return t}function At(t){if(!vt(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=Z(t.instance.modifiers,(function(t){return"preventOverflow"===t.name})).boundaries;if(e.bottomn.right||e.top>n.bottom||e.right2&&void 0!==arguments[2]?arguments[2]:{};T(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=d(this.update.bind(this)),this.options=I({},t.Defaults,o),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(I({},t.Defaults.modifiers,o.modifiers)).forEach((function(e){r.options.modifiers[e]=I({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return I({name:t},r.options.modifiers[t])})).sort((function(t,e){return t.order-e.order})),this.modifiers.forEach((function(t){t.enabled&&h(t.onLoad)&&t.onLoad(r.reference,r.popper,r.options,t,r.state)})),this.update();var i=this.options.eventsEnabled;i&&this.enableEventListeners(),this.state.eventsEnabled=i}return P(t,[{key:"update",value:function(){return X.call(this)}},{key:"destroy",value:function(){return tt.call(this)}},{key:"enableEventListeners",value:function(){return ot.call(this)}},{key:"disableEventListeners",value:function(){return at.call(this)}}]),t}();Lt.Utils=("undefined"!==typeof window?window:n.g).PopperUtils,Lt.placements=yt,Lt.Defaults=Pt;var It,Nt=Lt,Rt=n(8446),Dt=n.n(Rt);function Mt(){var t=window.navigator.userAgent,e=t.indexOf("MSIE ");if(e>0)return parseInt(t.substring(e+5,t.indexOf(".",e)),10);var n=t.indexOf("Trident/");if(n>0){var r=t.indexOf("rv:");return parseInt(t.substring(r+3,t.indexOf(".",r)),10)}var o=t.indexOf("Edge/");return o>0?parseInt(t.substring(o+5,t.indexOf(".",o)),10):-1}function Bt(){Bt.init||(Bt.init=!0,It=-1!==Mt())}var Ft={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},mounted:function(){var t=this;Bt(),this.$nextTick((function(){t._w=t.$el.offsetWidth,t._h=t.$el.offsetHeight,t.emitOnMount&&t.emitSize()}));var e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",It&&this.$el.appendChild(e),e.data="about:blank",It||this.$el.appendChild(e)},beforeDestroy:function(){this.removeResizeHandlers()},methods:{compareAndNotify:function(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize:function(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!It&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};function zt(t,e,n,r,o,i,a,s,c,u){"boolean"!==typeof a&&(c=s,s=a,a=!1);var l,f="function"===typeof n?n.options:n;if(t&&t.render&&(f.render=t.render,f.staticRenderFns=t.staticRenderFns,f._compiled=!0,o&&(f.functional=!0)),r&&(f._scopeId=r),i?(l=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"===typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,c(t)),t&&t._registeredComponents&&t._registeredComponents.add(i)},f._ssrRegister=l):e&&(l=a?function(t){e.call(this,u(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,s(t))}),l)if(f.functional){var p=f.render;f.render=function(t,e){return l.call(e),p(t,e)}}else{var d=f.beforeCreate;f.beforeCreate=d?[].concat(d,l):[l]}return n}var Ht=Ft,Ut=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})},Vt=[];Ut._withStripped=!0;var qt=void 0,Wt="data-v-8859cc6c",Gt=void 0,Zt=!1,Kt=zt({render:Ut,staticRenderFns:Vt},qt,Ht,Wt,Zt,Gt,!1,void 0,void 0,void 0);function Yt(t){t.component("resize-observer",Kt),t.component("ResizeObserver",Kt)}var Xt={version:"1.0.1",install:Yt},Jt=null;"undefined"!==typeof window?Jt=window.Vue:"undefined"!==typeof n.g&&(Jt=n.g.Vue),Jt&&Jt.use(Xt);var Qt=n(3857),te=n.n(Qt),ee=function(){};function ne(t){return"string"===typeof t&&(t=t.split(" ")),t}function re(t,e){var n,r=ne(e);n=t.className instanceof ee?ne(t.className.baseVal):ne(t.className),r.forEach((function(t){-1===n.indexOf(t)&&n.push(t)})),t instanceof SVGElement?t.setAttribute("class",n.join(" ")):t.className=n.join(" ")}function oe(t,e){var n,r=ne(e);n=t.className instanceof ee?ne(t.className.baseVal):ne(t.className),r.forEach((function(t){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})),t instanceof SVGElement?t.setAttribute("class",n.join(" ")):t.className=n.join(" ")}"undefined"!==typeof window&&(ee=window.SVGAnimatedString);var ie=!1;if("undefined"!==typeof window){ie=!1;try{var ae=Object.defineProperty({},"passive",{get:function(){ie=!0}});window.addEventListener("test",null,ae)}catch(nn){}}function se(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ce(t){for(var e=1;e
      ',trigger:"hover focus",offset:0},le=[],fe=function(){function t(e,n){var r=this;(0,i.Z)(this,t),(0,o.Z)(this,"_events",[]),(0,o.Z)(this,"_setTooltipNodeEvent",(function(t,e,n,o){var i=t.relatedreference||t.toElement||t.relatedTarget,a=function n(i){var a=i.relatedreference||i.toElement||i.relatedTarget;r._tooltipNode.removeEventListener(t.type,n),e.contains(a)||r._scheduleHide(e,o.delay,o,i)};return!!r._tooltipNode.contains(i)&&(r._tooltipNode.addEventListener(t.type,a),!0)})),n=ce(ce({},ue),n),e.jquery&&(e=e[0]),this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.reference=e,this.options=n,this._isOpen=!1,this._init()}return s(t,[{key:"show",value:function(){this._show(this.reference,this.options)}},{key:"hide",value:function(){this._hide()}},{key:"dispose",value:function(){this._dispose()}},{key:"toggle",value:function(){return this._isOpen?this.hide():this.show()}},{key:"setClasses",value:function(t){this._classes=t}},{key:"setContent",value:function(t){this.options.title=t,this._tooltipNode&&this._setContent(t,this.options)}},{key:"setOptions",value:function(t){var e=!1,n=t&&t.classes||Oe.options.defaultClass;Dt()(this._classes,n)||(this.setClasses(n),e=!0),t=ge(t);var r=!1,o=!1;for(var i in this.options.offset===t.offset&&this.options.placement===t.placement||(r=!0),(this.options.template!==t.template||this.options.trigger!==t.trigger||this.options.container!==t.container||e)&&(o=!0),t)this.options[i]=t[i];if(this._tooltipNode)if(o){var a=this._isOpen;this.dispose(),this._init(),a&&this.show()}else r&&this.popperInstance.update()}},{key:"_init",value:function(){var t="string"===typeof this.options.trigger?this.options.trigger.split(" "):[];this._isDisposed=!1,this._enableDocumentTouch=-1===t.indexOf("manual"),t=t.filter((function(t){return-1!==["click","hover","focus"].indexOf(t)})),this._setEventListeners(this.reference,t,this.options),this.$_originalTitle=this.reference.getAttribute("title"),this.reference.removeAttribute("title"),this.reference.setAttribute("data-original-title",this.$_originalTitle)}},{key:"_create",value:function(t,e){var n=this,r=window.document.createElement("div");r.innerHTML=e.trim();var o=r.childNodes[0];return o.id=this.options.ariaId||"tooltip_".concat(Math.random().toString(36).substr(2,10)),o.setAttribute("aria-hidden","true"),this.options.autoHide&&-1!==this.options.trigger.indexOf("hover")&&(o.addEventListener("mouseenter",(function(e){return n._scheduleHide(t,n.options.delay,n.options,e)})),o.addEventListener("click",(function(e){return n._scheduleHide(t,n.options.delay,n.options,e)}))),o}},{key:"_setContent",value:function(t,e){var n=this;this.asyncContent=!1,this._applyContent(t,e).then((function(){n.popperInstance&&n.popperInstance.update()}))}},{key:"_applyContent",value:function(t,e){var n=this;return new Promise((function(r,o){var i=e.html,a=n._tooltipNode;if(a){var s=a.querySelector(n.options.innerSelector);if(1===t.nodeType){if(i){while(s.firstChild)s.removeChild(s.firstChild);s.appendChild(t)}}else{if("function"===typeof t){var c=t();return void(c&&"function"===typeof c.then?(n.asyncContent=!0,e.loadingClass&&re(a,e.loadingClass),e.loadingContent&&n._applyContent(e.loadingContent,e),c.then((function(t){return e.loadingClass&&oe(a,e.loadingClass),n._applyContent(t,e)})).then(r).catch(o)):n._applyContent(c,e).then(r).catch(o))}i?s.innerHTML=t:s.innerText=t}r()}}))}},{key:"_show",value:function(t,e){if(e&&"string"===typeof e.container){var n=document.querySelector(e.container);if(!n)return}clearTimeout(this._disposeTimer),e=Object.assign({},e),delete e.offset;var r=!0;this._tooltipNode&&(re(this._tooltipNode,this._classes),r=!1);var o=this._ensureShown(t,e);return r&&this._tooltipNode&&re(this._tooltipNode,this._classes),re(t,["v-tooltip-open"]),o}},{key:"_ensureShown",value:function(t,e){var n=this;if(this._isOpen)return this;if(this._isOpen=!0,le.push(this),this._tooltipNode)return this._tooltipNode.style.display="",this._tooltipNode.setAttribute("aria-hidden","false"),this.popperInstance.enableEventListeners(),this.popperInstance.update(),this.asyncContent&&this._setContent(e.title,e),this;var r=t.getAttribute("title")||e.title;if(!r)return this;var o=this._create(t,e.template);this._tooltipNode=o,t.setAttribute("aria-describedby",o.id);var i=this._findContainer(e.container,t);this._append(o,i);var a=ce(ce({},e.popperOptions),{},{placement:e.placement});return a.modifiers=ce(ce({},a.modifiers),{},{arrow:{element:this.options.arrowSelector}}),e.boundariesElement&&(a.modifiers.preventOverflow={boundariesElement:e.boundariesElement}),this.popperInstance=new Nt(t,o,a),this._setContent(r,e),requestAnimationFrame((function(){!n._isDisposed&&n.popperInstance?(n.popperInstance.update(),requestAnimationFrame((function(){n._isDisposed?n.dispose():n._isOpen&&o.setAttribute("aria-hidden","false")}))):n.dispose()})),this}},{key:"_noLongerOpen",value:function(){var t=le.indexOf(this);-1!==t&&le.splice(t,1)}},{key:"_hide",value:function(){var t=this;if(!this._isOpen)return this;this._isOpen=!1,this._noLongerOpen(),this._tooltipNode.style.display="none",this._tooltipNode.setAttribute("aria-hidden","true"),this.popperInstance&&this.popperInstance.disableEventListeners(),clearTimeout(this._disposeTimer);var e=Oe.options.disposeTimeout;return null!==e&&(this._disposeTimer=setTimeout((function(){t._tooltipNode&&(t._tooltipNode.removeEventListener("mouseenter",t.hide),t._tooltipNode.removeEventListener("click",t.hide),t._removeTooltipNode())}),e)),oe(this.reference,["v-tooltip-open"]),this}},{key:"_removeTooltipNode",value:function(){if(this._tooltipNode){var t=this._tooltipNode.parentNode;t&&(t.removeChild(this._tooltipNode),this.reference.removeAttribute("aria-describedby")),this._tooltipNode=null}}},{key:"_dispose",value:function(){var t=this;return this._isDisposed=!0,this.reference.removeAttribute("data-original-title"),this.$_originalTitle&&this.reference.setAttribute("title",this.$_originalTitle),this._events.forEach((function(e){var n=e.func,r=e.event;t.reference.removeEventListener(r,n)})),this._events=[],this._tooltipNode?(this._hide(),this._tooltipNode.removeEventListener("mouseenter",this.hide),this._tooltipNode.removeEventListener("click",this.hide),this.popperInstance.destroy(),this.popperInstance.options.removeOnDestroy||this._removeTooltipNode()):this._noLongerOpen(),this}},{key:"_findContainer",value:function(t,e){return"string"===typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t}},{key:"_append",value:function(t,e){e.appendChild(t)}},{key:"_setEventListeners",value:function(t,e,n){var r=this,o=[],i=[];e.forEach((function(t){switch(t){case"hover":o.push("mouseenter"),i.push("mouseleave"),r.options.hideOnTargetClick&&i.push("click");break;case"focus":o.push("focus"),i.push("blur"),r.options.hideOnTargetClick&&i.push("click");break;case"click":o.push("click"),i.push("click");break}})),o.forEach((function(e){var o=function(e){!0!==r._isOpen&&(e.usedByTooltip=!0,r._scheduleShow(t,n.delay,n,e))};r._events.push({event:e,func:o}),t.addEventListener(e,o)})),i.forEach((function(e){var o=function(e){!0!==e.usedByTooltip&&r._scheduleHide(t,n.delay,n,e)};r._events.push({event:e,func:o}),t.addEventListener(e,o)}))}},{key:"_onDocumentTouch",value:function(t){this._enableDocumentTouch&&this._scheduleHide(this.reference,this.options.delay,this.options,t)}},{key:"_scheduleShow",value:function(t,e,n){var r=this,o=e&&e.show||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){return r._show(t,n)}),o)}},{key:"_scheduleHide",value:function(t,e,n,r){var o=this,i=e&&e.hide||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){if(!1!==o._isOpen&&o._tooltipNode.ownerDocument.body.contains(o._tooltipNode)){if("mouseleave"===r.type){var i=o._setTooltipNodeEvent(r,t,e,n);if(i)return}o._hide(t,n)}}),i)}}]),t}();function pe(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function de(t){for(var e=1;e
      ',defaultArrowSelector:".tooltip-arrow, .tooltip__arrow",defaultInnerSelector:".tooltip-inner, .tooltip__inner",defaultDelay:0,defaultTrigger:"hover focus",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultLoadingClass:"tooltip-loading",defaultLoadingContent:"...",autoHide:!0,defaultHideOnTargetClick:!0,disposeTimeout:5e3,popover:{defaultPlacement:"bottom",defaultClass:"vue-popover-theme",defaultBaseClass:"tooltip popover",defaultWrapperClass:"wrapper",defaultInnerClass:"tooltip-inner popover-inner",defaultArrowClass:"tooltip-arrow popover-arrow",defaultOpenClass:"open",defaultDelay:0,defaultTrigger:"click",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultAutoHide:!0,defaultHandleResize:!0}};function ge(t){var e={placement:"undefined"!==typeof t.placement?t.placement:Oe.options.defaultPlacement,delay:"undefined"!==typeof t.delay?t.delay:Oe.options.defaultDelay,html:"undefined"!==typeof t.html?t.html:Oe.options.defaultHtml,template:"undefined"!==typeof t.template?t.template:Oe.options.defaultTemplate,arrowSelector:"undefined"!==typeof t.arrowSelector?t.arrowSelector:Oe.options.defaultArrowSelector,innerSelector:"undefined"!==typeof t.innerSelector?t.innerSelector:Oe.options.defaultInnerSelector,trigger:"undefined"!==typeof t.trigger?t.trigger:Oe.options.defaultTrigger,offset:"undefined"!==typeof t.offset?t.offset:Oe.options.defaultOffset,container:"undefined"!==typeof t.container?t.container:Oe.options.defaultContainer,boundariesElement:"undefined"!==typeof t.boundariesElement?t.boundariesElement:Oe.options.defaultBoundariesElement,autoHide:"undefined"!==typeof t.autoHide?t.autoHide:Oe.options.autoHide,hideOnTargetClick:"undefined"!==typeof t.hideOnTargetClick?t.hideOnTargetClick:Oe.options.defaultHideOnTargetClick,loadingClass:"undefined"!==typeof t.loadingClass?t.loadingClass:Oe.options.defaultLoadingClass,loadingContent:"undefined"!==typeof t.loadingContent?t.loadingContent:Oe.options.defaultLoadingContent,popperOptions:de({},"undefined"!==typeof t.popperOptions?t.popperOptions:Oe.options.defaultPopperOptions)};if(e.offset){var n=r(e.offset),o=e.offset;("number"===n||"string"===n&&-1===o.indexOf(","))&&(o="0, ".concat(o)),e.popperOptions.modifiers||(e.popperOptions.modifiers={}),e.popperOptions.modifiers.offset={offset:o}}return e.trigger&&-1!==e.trigger.indexOf("click")&&(e.hideOnTargetClick=!1),e}function ye(t,e){for(var n=t.placement,r=0;r2&&void 0!==arguments[2]?arguments[2]:{},o=we(e),i="undefined"!==typeof e.classes?e.classes:Oe.options.defaultClass,a=de({title:o},ge(de(de({},"object"===r(e)?e:{}),{},{placement:ye(e,n)}))),s=t._tooltip=new fe(t,a);s.setClasses(i),s._vueEl=t;var c="undefined"!==typeof e.targetClasses?e.targetClasses:Oe.options.defaultTargetClass;return t._tooltipTargetClasses=c,re(t,c),s}function _e(t){t._tooltip&&(t._tooltip.dispose(),delete t._tooltip,delete t._tooltipOldShow),t._tooltipTargetClasses&&(oe(t,t._tooltipTargetClasses),delete t._tooltipTargetClasses)}function xe(t,e){var n=e.value;e.oldValue;var r,o=e.modifiers,i=we(n);i&&he.enabled?(t._tooltip?(r=t._tooltip,r.setContent(i),r.setOptions(de(de({},n),{},{placement:ye(n,o)}))):r=be(t,n,o),"undefined"!==typeof n.show&&n.show!==t._tooltipOldShow&&(t._tooltipOldShow=n.show,n.show?r.show():r.hide())):_e(t)}var Oe={options:me,bind:xe,update:xe,unbind:function(t){_e(t)}};function ke(t){t.addEventListener("click",je),t.addEventListener("touchstart",Se,!!ie&&{passive:!0})}function Ce(t){t.removeEventListener("click",je),t.removeEventListener("touchstart",Se),t.removeEventListener("touchend",Ee),t.removeEventListener("touchcancel",Ae)}function je(t){var e=t.currentTarget;t.closePopover=!e.$_vclosepopover_touch,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}function Se(t){if(1===t.changedTouches.length){var e=t.currentTarget;e.$_vclosepopover_touch=!0;var n=t.changedTouches[0];e.$_vclosepopover_touchPoint=n,e.addEventListener("touchend",Ee),e.addEventListener("touchcancel",Ae)}}function Ee(t){var e=t.currentTarget;if(e.$_vclosepopover_touch=!1,1===t.changedTouches.length){var n=t.changedTouches[0],r=e.$_vclosepopover_touchPoint;t.closePopover=Math.abs(n.screenY-r.screenY)<20&&Math.abs(n.screenX-r.screenX)<20,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}}function Ae(t){var e=t.currentTarget;e.$_vclosepopover_touch=!1}var $e={bind:function(t,e){var n=e.value,r=e.modifiers;t.$_closePopoverModifiers=r,("undefined"===typeof n||n)&&ke(t)},update:function(t,e){var n=e.value,r=e.oldValue,o=e.modifiers;t.$_closePopoverModifiers=o,n!==r&&("undefined"===typeof n||n?ke(t):Ce(t))},unbind:function(t){Ce(t)}};function Te(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Pe(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:{},n=e.event;e.skipDelay;var r=e.force,o=void 0!==r&&r;!o&&this.disabled||(this.$_scheduleShow(n),this.$emit("show")),this.$emit("update:open",!0),this.$_beingShowed=!0,requestAnimationFrame((function(){t.$_beingShowed=!1}))},hide:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.event;t.skipDelay,this.$_scheduleHide(e),this.$emit("hide"),this.$emit("update:open",!1)},dispose:function(){if(this.$_isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.popperInstance&&(this.popperInstance.destroy(),!this.popperInstance.options.removeOnDestroy)){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t)}this.$_mounted=!1,this.popperInstance=null,this.isOpen=!1,this.$emit("dispose")},$_init:function(){-1===this.trigger.indexOf("manual")&&this.$_addEventListeners()},$_show:function(){var t=this,e=this.$refs.trigger,n=this.$refs.popover;if(clearTimeout(this.$_disposeTimer),!this.isOpen){if(this.popperInstance&&(this.isOpen=!0,this.popperInstance.enableEventListeners(),this.popperInstance.scheduleUpdate()),!this.$_mounted){var r=this.$_findContainer(this.container,e);if(!r)return void console.warn("No container for popover",this);r.appendChild(n),this.$_mounted=!0,this.isOpen=!1,this.popperInstance&&requestAnimationFrame((function(){t.hidden||(t.isOpen=!0)}))}if(!this.popperInstance){var o=Pe(Pe({},this.popperOptions),{},{placement:this.placement});if(o.modifiers=Pe(Pe({},o.modifiers),{},{arrow:Pe(Pe({},o.modifiers&&o.modifiers.arrow),{},{element:this.$refs.arrow})}),this.offset){var i=this.$_getOffset();o.modifiers.offset=Pe(Pe({},o.modifiers&&o.modifiers.offset),{},{offset:i})}this.boundariesElement&&(o.modifiers.preventOverflow=Pe(Pe({},o.modifiers&&o.modifiers.preventOverflow),{},{boundariesElement:this.boundariesElement})),this.popperInstance=new Nt(e,n,o),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();!t.$_isDisposed&&t.popperInstance?(t.popperInstance.scheduleUpdate(),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();t.$_isDisposed?t.dispose():t.isOpen=!0}))):t.dispose()}))}var a=this.openGroup;if(a)for(var s,c=0;c1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),t)this.$_show();else{var e=parseInt(this.delay&&this.delay.show||this.delay||0);this.$_scheduleTimer=setTimeout(this.$_show.bind(this),e)}},$_scheduleHide:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),n)this.$_hide();else{var r=parseInt(this.delay&&this.delay.hide||this.delay||0);this.$_scheduleTimer=setTimeout((function(){if(t.isOpen){if(e&&"mouseleave"===e.type){var n=t.$_setTooltipNodeEvent(e);if(n)return}t.$_hide()}}),r)}},$_setTooltipNodeEvent:function(t){var e=this,n=this.$refs.trigger,r=this.$refs.popover,o=t.relatedreference||t.toElement||t.relatedTarget,i=function o(i){var a=i.relatedreference||i.toElement||i.relatedTarget;r.removeEventListener(t.type,o),n.contains(a)||e.hide({event:i})};return!!r.contains(o)&&(r.addEventListener(t.type,i),!0)},$_removeEventListeners:function(){var t=this.$refs.trigger;this.$_events.forEach((function(e){var n=e.func,r=e.event;t.removeEventListener(r,n)})),this.$_events=[]},$_updatePopper:function(t){this.popperInstance&&(t(),this.isOpen&&this.popperInstance.scheduleUpdate())},$_restartPopper:function(){if(this.popperInstance){var t=this.isOpen;this.dispose(),this.$_isDisposed=!1,this.$_init(),t&&this.show({skipDelay:!0,force:!0})}},$_handleGlobalClose:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.$_beingShowed||(this.hide({event:t}),t.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),n&&(this.$_preventOpen=!0,setTimeout((function(){e.$_preventOpen=!1}),300)))},$_handleResize:function(){this.isOpen&&this.popperInstance&&(this.popperInstance.scheduleUpdate(),this.$emit("resize"))}}};function Me(t){Fe(t)}function Be(t){Fe(t,!0)}function Fe(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=function(n){var r=Ne[n];if(r.$refs.popover){var o=r.$refs.popover.contains(t.target);requestAnimationFrame((function(){(t.closeAllPopover||t.closePopover&&o||r.autoHide&&!o)&&r.$_handleGlobalClose(t,e)}))}},r=0;r1&&void 0!==arguments[1]?arguments[1]:{};if(!Je.installed){Je.installed=!0;var n={};te()(n,me,e),Qe.options=n,Oe.options=n,t.directive("tooltip",Oe),t.directive("close-popover",$e),t.component("VPopover",Ke)}}Ye(Xe);var Qe={install:Je,get enabled(){return he.enabled},set enabled(t){he.enabled=t}},tn=null;"undefined"!==typeof window?tn=window.Vue:"undefined"!==typeof n.g&&(tn=n.g.Vue),tn&&tn.use(Qe);var en=Qe},528:function(t,e,n){"use strict";var r=n(3465),o=n.n(r);function i(t){void 0===t&&(t={shift:!1,ctrl:!1,left:!1}),document.addEventListener(t.left?"click":"contextmenu",(function(e){if((!t.ctrl||e.ctrlKey)&&(!t.shift||e.shiftKey)){t.stop&&(e.preventDefault(),e.stopPropagation());var n=u(e.target);n&&l(n)}}))}function a(t){while(t.length<8)t+=" ";return t}function s(t){console.log(a(t)+" %cnone","color:grey")}i.install=function(t,e){i(e)};var c="background:#42b983;color:white;border-radius:99px;padding:0px 6px;";function u(t){var e=t&&t.__vue__;return e||(t.parentNode?u(t.parentNode):void console.info("no Vue component found"))}function l(t,e){if(e?console.groupCollapsed("%cparent %c"+(t.$parent?t.$options.name||t.$options._componentTag||"anonymous":"Root"),"font-weight:normal",c,t):console.group("%c"+(t.$parent?t.$options.name||t.$options._componentTag||"anonymous":"Root"),c,t),Object.keys(t.$data).length?console.log(a("data"),o()(t.$data)):s("data"),t._computedWatchers&&Object.keys(t._computedWatchers).length){var n={};for(var r in t._computedWatchers)try{n[r]=o()(t[r])}catch(i){n[r]="["+i.message+"]"}console.log(a("computed"),n)}else s("computed");t._props&&Object.keys(t._props).length?console.log(a("props"),o()(t._props)):s("props"),console.log(a("element"),t.$el),!e&&t.$route&&console.log(a("route"),t.$route),t.$parent?l(t.$parent,!0):s("parent"),console.groupEnd()}},4952:function(t,e){(function(t,n){n(e)})(0,(function(t){"use strict";var e={};function n(t){return Object.keys(t).reduce((function(e,n){return!1!==t[n]&&null!==t[n]&&void 0!==t[n]&&(e[n]=t[n]),e}),{})}var r={name:"InlineSvg",inheritAttrs:!1,render:function(t){return this.svgElSource?t("svg",{on:this.$listeners,attrs:Object.assign(this.getSvgAttrs(this.svgElSource),n(this.$attrs)),domProps:{innerHTML:this.getSvgContent(this.svgElSource)}}):null},props:{src:{type:String,required:!0},title:{type:String},transformSource:{type:Function,default:function(t){return t}},keepDuringLoading:{type:Boolean,default:!0}},data:function(){return{svgElSource:null}},watch:{src:function(t){this.getSource(t)}},mounted:function(){this.getSource(this.src)},methods:{getSvgAttrs:function(t){var e={},n=t.attributes;if(!n)return e;for(var r=n.length-1;r>=0;r--)e[n[r].name]=n[r].value;return e},getSvgContent:function(t){return t=t.cloneNode(!0),t=this.transformSource(t),this.title&&o(t,this.title),t.innerHTML},getSource:function(t){var n=this;e[t]||(e[t]=this.download(t)),this.svgElSource&&e[t].isPending()&&!this.keepDuringLoading&&(this.svgElSource=null,this.$emit("unloaded")),e[t].then((function(t){n.svgElSource=t,n.$nextTick((function(){n.$emit("loaded",n.$el)}))}))["catch"]((function(r){n.svgElSource&&(n.svgElSource=null,n.$emit("unloaded")),delete e[t],n.$emit("error",r)}))},download:function(t){return i(new Promise((function(e,n){var r=new XMLHttpRequest;r.open("GET",t,!0),r.onload=function(){if(r.status>=200&&r.status<400)try{var t=new DOMParser,o=t.parseFromString(r.responseText,"text/xml"),i=o.getElementsByTagName("svg")[0];i?e(i):n(new Error('Loaded file is not valid SVG"'))}catch(a){n(a)}else n(new Error("Error loading SVG"))},r.onerror=n,r.send()})))}}};function o(t,e){var n=t.getElementsByTagName("title");if(n.length)n[0].textContent=e;else{var r=document.createElementNS("http://www.w3.org/2000/svg","title");r.textContent=e,t.appendChild(r)}}function i(t){if(t.isPending)return t;var e=!0,n=t.then((function(t){return e=!1,t}),(function(t){throw e=!1,t}));return n.isPending=function(){return e},n}var a={install:function(t){t.component("inline-svg",r)}};t.InlineSvgComponent=r,t.InlineSvgPlugin=a,t["default"]=r,Object.defineProperty(t,"__esModule",{value:!0})}))},8345:function(t,e,n){"use strict";function r(t,e){for(var n in e)t[n]=e[n];return t}n.d(e,{ZP:function(){return xe}});var o=/[!'()*]/g,i=function(t){return"%"+t.charCodeAt(0).toString(16)},a=/%2C/g,s=function(t){return encodeURIComponent(t).replace(o,i).replace(a,",")};function c(t){try{return decodeURIComponent(t)}catch(e){0}return t}function u(t,e,n){void 0===e&&(e={});var r,o=n||f;try{r=o(t||"")}catch(s){r={}}for(var i in e){var a=e[i];r[i]=Array.isArray(a)?a.map(l):l(a)}return r}var l=function(t){return null==t||"object"===typeof t?t:String(t)};function f(t){var e={};return t=t.trim().replace(/^(\?|#|&)/,""),t?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=c(n.shift()),o=n.length>0?c(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function p(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return s(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(s(e)):r.push(s(e)+"="+s(t)))})),r.join("&")}return s(e)+"="+s(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var d=/\/?$/;function h(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=v(i)}catch(s){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:y(e,o),matched:t?g(t):[]};return n&&(a.redirectedFrom=y(n,o)),Object.freeze(a)}function v(t){if(Array.isArray(t))return t.map(v);if(t&&"object"===typeof t){var e={};for(var n in t)e[n]=v(t[n]);return e}return t}var m=h(null,{path:"/"});function g(t){var e=[];while(t)e.unshift(t),t=t.parent;return e}function y(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;void 0===o&&(o="");var i=e||p;return(n||"/")+i(r)+o}function w(t,e,n){return e===m?t===e:!!e&&(t.path&&e.path?t.path.replace(d,"")===e.path.replace(d,"")&&(n||t.hash===e.hash&&b(t.query,e.query)):!(!t.name||!e.name)&&(t.name===e.name&&(n||t.hash===e.hash&&b(t.query,e.query)&&b(t.params,e.params))))}function b(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t).sort(),r=Object.keys(e).sort();return n.length===r.length&&n.every((function(n,o){var i=t[n],a=r[o];if(a!==n)return!1;var s=e[n];return null==i||null==s?i===s:"object"===typeof i&&"object"===typeof s?b(i,s):String(i)===String(s)}))}function _(t,e){return 0===t.path.replace(d,"/").indexOf(e.path.replace(d,"/"))&&(!e.hash||t.hash===e.hash)&&x(t.query,e.query)}function x(t,e){for(var n in e)if(!(n in t))return!1;return!0}function O(t){for(var e=0;e=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}function A(t){return t.replace(/\/(?:\s*\/)+/g,"/")}var $=Array.isArray||function(t){return"[object Array]"==Object.prototype.toString.call(t)},T=Y,P=D,L=M,I=z,N=K,R=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function D(t,e){var n,r=[],o=0,i=0,a="",s=e&&e.delimiter||"/";while(null!=(n=R.exec(t))){var c=n[0],u=n[1],l=n.index;if(a+=t.slice(i,l),i=l+c.length,u)a+=u[1];else{var f=t[i],p=n[2],d=n[3],h=n[4],v=n[5],m=n[6],g=n[7];a&&(r.push(a),a="");var y=null!=p&&null!=f&&f!==p,w="+"===m||"*"===m,b="?"===m||"*"===m,_=n[2]||s,x=h||v;r.push({name:d||o++,prefix:p||"",delimiter:_,optional:b,repeat:w,partial:y,asterisk:!!g,pattern:x?U(x):g?".*":"[^"+H(_)+"]+?"})}}return i1||!k.length)return 0===k.length?t():t("span",{},k)}if("a"===this.tag)O.on=x,O.attrs={href:c,"aria-current":y};else{var C=at(this.$slots.default);if(C){C.isStatic=!1;var j=C.data=r({},C.data);for(var S in j.on=j.on||{},j.on){var E=j.on[S];S in x&&(j.on[S]=Array.isArray(E)?E:[E])}for(var A in x)A in j.on?j.on[A].push(x[A]):j.on[A]=b;var $=C.data.attrs=r({},C.data.attrs);$.href=c,$["aria-current"]=y}else O.on=x}return t(this.tag,O,this.$slots.default)}};function it(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&(void 0===t.button||0===t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){var e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function at(t){if(t)for(var e,n=0;n-1&&(s.params[f]=n.params[f]);return s.path=J(u.path,s.params,'named route "'+c+'"'),p(u,s,a)}if(s.path){s.params={};for(var d=0;d-1}function Wt(t,e){return qt(t)&&t._isRouter&&(null==e||t.type===e)}function Gt(t,e,n){var r=function(o){o>=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function Zt(t){return function(e,n,r){var o=!1,i=0,a=null;Kt(t,(function(t,e,n,s){if("function"===typeof t&&void 0===t.cid){o=!0,i++;var c,u=Qt((function(e){Jt(e)&&(e=e.default),t.resolved="function"===typeof e?e:tt.extend(e),n.components[s]=e,i--,i<=0&&r()})),l=Qt((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=qt(t)?t:new Error(e),r(a))}));try{c=t(u,l)}catch(p){l(p)}if(c)if("function"===typeof c.then)c.then(u,l);else{var f=c.component;f&&"function"===typeof f.then&&f.then(u,l)}}})),o||r()}}function Kt(t,e){return Yt(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Yt(t){return Array.prototype.concat.apply([],t)}var Xt="function"===typeof Symbol&&"symbol"===typeof Symbol.toStringTag;function Jt(t){return t.__esModule||Xt&&"Module"===t[Symbol.toStringTag]}function Qt(t){var e=!1;return function(){var n=[],r=arguments.length;while(r--)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var te=function(t,e){this.router=t,this.base=ee(e),this.current=m,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function ee(t){if(!t)if(ct){var e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^https?:\/\/[^\/]+/,"")}else t="/";return"/"!==t.charAt(0)&&(t="/"+t),t.replace(/\/$/,"")}function ne(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,r=It&&n;r&&this.listeners.push(xt());var o=function(){var n=t.current,o=fe(t.base);t.current===m&&o===t._startLocation||t.transitionTo(o,(function(t){r&&Ot(e,t,n,!0)}))};window.addEventListener("popstate",o),this.listeners.push((function(){window.removeEventListener("popstate",o)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,o=this,i=o.current;this.transitionTo(t,(function(t){Nt(A(r.base+t.fullPath)),Ot(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this,i=o.current;this.transitionTo(t,(function(t){Rt(A(r.base+t.fullPath)),Ot(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(fe(this.base)!==this.current.fullPath){var e=A(this.base+this.current.fullPath);t?Nt(e):Rt(e)}},e.prototype.getCurrentLocation=function(){return fe(this.base)},e}(te);function fe(t){var e=window.location.pathname,n=e.toLowerCase(),r=t.toLowerCase();return!t||n!==r&&0!==n.indexOf(A(r+"/"))||(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var pe=function(t){function e(e,n,r){t.call(this,e,n),r&&de(this.base)||he()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router,n=e.options.scrollBehavior,r=It&&n;r&&this.listeners.push(xt());var o=function(){var e=t.current;he()&&t.transitionTo(ve(),(function(n){r&&Ot(t.router,n,e,!0),It||ye(n.fullPath)}))},i=It?"popstate":"hashchange";window.addEventListener(i,o),this.listeners.push((function(){window.removeEventListener(i,o)}))}},e.prototype.push=function(t,e,n){var r=this,o=this,i=o.current;this.transitionTo(t,(function(t){ge(t.fullPath),Ot(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this,i=o.current;this.transitionTo(t,(function(t){ye(t.fullPath),Ot(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;ve()!==e&&(t?ge(e):ye(e))},e.prototype.getCurrentLocation=function(){return ve()},e}(te);function de(t){var e=fe(t);if(!/^\/#/.test(e))return window.location.replace(A(t+"/#"+e)),!0}function he(){var t=ve();return"/"===t.charAt(0)||(ye("/"+t),!1)}function ve(){var t=window.location.href,e=t.indexOf("#");return e<0?"":(t=t.slice(e+1),t)}function me(t){var e=window.location.href,n=e.indexOf("#"),r=n>=0?e.slice(0,n):e;return r+"#"+t}function ge(t){It?Nt(me(t)):window.location.hash=t}function ye(t){It?Rt(me(t)):window.location.replace(me(t))}var we=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){Wt(t,Dt.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(te),be=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=dt(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!It&&!1!==t.fallback,this.fallback&&(e="hash"),ct||(e="abstract"),this.mode=e,e){case"history":this.history=new le(this,t.base);break;case"hash":this.history=new pe(this,t.base,this.fallback);break;case"abstract":this.history=new we(this,t.base);break;default:0}},_e={currentRoute:{configurable:!0}};be.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},_e.currentRoute.get=function(){return this.history&&this.history.current},be.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof le||n instanceof pe){var r=function(t){var r=n.current,o=e.options.scrollBehavior,i=It&&o;i&&"fullPath"in t&&Ot(e,t,r,!1)},o=function(t){n.setupListeners(),r(t)};n.transitionTo(n.getCurrentLocation(),o,o)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},be.prototype.beforeEach=function(t){return Oe(this.beforeHooks,t)},be.prototype.beforeResolve=function(t){return Oe(this.resolveHooks,t)},be.prototype.afterEach=function(t){return Oe(this.afterHooks,t)},be.prototype.onReady=function(t,e){this.history.onReady(t,e)},be.prototype.onError=function(t){this.history.onError(t)},be.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!==typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},be.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!==typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},be.prototype.go=function(t){this.history.go(t)},be.prototype.back=function(){this.go(-1)},be.prototype.forward=function(){this.go(1)},be.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},be.prototype.resolve=function(t,e,n){e=e||this.history.current;var r=Q(t,e,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath,a=this.history.base,s=ke(a,i,this.mode);return{location:r,route:o,href:s,normalizedTo:r,resolved:o}},be.prototype.getRoutes=function(){return this.matcher.getRoutes()},be.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==m&&this.history.transitionTo(this.history.getCurrentLocation())},be.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==m&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(be.prototype,_e);var xe=be;function Oe(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}function ke(t,e,n){var r="hash"===n?"#"+e:e;return t?A(t+"/"+r):r}be.install=st,be.version="3.6.5",be.isNavigationFailure=Wt,be.NavigationFailureType=Dt,be.START_LOCATION=m,ct&&window.Vue&&window.Vue.use(be)},9516:function(t,e,n){"use strict";var r=n(6455),o=n.n(r),i=function(){for(var t=0,e=0,n=arguments.length;e=0)return 1;return 0}();function l(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then((function(){e=!1,t()})))}}function f(t){var e=!1;return function(){e||(e=!0,setTimeout((function(){e=!1,t()}),u))}}var p=c&&window.Promise,d=p?l:f;function h(t){var e={};return t&&"[object Function]"===e.toString.call(t)}function v(t,e){if(1!==t.nodeType)return[];var n=t.ownerDocument.defaultView,r=n.getComputedStyle(t,null);return e?r[e]:r}function m(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function g(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=v(t),n=e.overflow,r=e.overflowX,o=e.overflowY;return/(auto|scroll|overlay)/.test(n+o+r)?t:g(m(t))}function y(t){return t&&t.referenceNode?t.referenceNode:t}var w=c&&!(!window.MSInputMethodContext||!document.documentMode),b=c&&/MSIE 10/.test(navigator.userAgent);function _(t){return 11===t?w:10===t?b:w||b}function x(t){if(!t)return document.documentElement;var e=_(10)?document.body:null,n=t.offsetParent||null;while(n===e&&t.nextElementSibling)n=(t=t.nextElementSibling).offsetParent;var r=n&&n.nodeName;return r&&"BODY"!==r&&"HTML"!==r?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===v(n,"position")?x(n):n:t?t.ownerDocument.documentElement:document.documentElement}function O(t){var e=t.nodeName;return"BODY"!==e&&("HTML"===e||x(t.firstElementChild)===t)}function k(t){return null!==t.parentNode?k(t.parentNode):t}function C(t,e){if(!t||!t.nodeType||!e||!e.nodeType)return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,r=n?t:e,o=n?e:t,i=document.createRange();i.setStart(r,0),i.setEnd(o,0);var a=i.commonAncestorContainer;if(t!==a&&e!==a||r.contains(o))return O(a)?a:x(a);var s=k(t);return s.host?C(s.host,e):C(t,k(e).host)}function E(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",n="top"===e?"scrollTop":"scrollLeft",r=t.nodeName;if("BODY"===r||"HTML"===r){var o=t.ownerDocument.documentElement,i=t.ownerDocument.scrollingElement||o;return i[n]}return t[n]}function j(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=E(e,"top"),o=E(e,"left"),i=n?-1:1;return t.top+=r*i,t.bottom+=r*i,t.left+=o*i,t.right+=o*i,t}function S(t,e){var n="x"===e?"Left":"Top",r="Left"===n?"Right":"Bottom";return parseFloat(t["border"+n+"Width"])+parseFloat(t["border"+r+"Width"])}function A(t,e,n,r){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],_(10)?parseInt(n["offset"+t])+parseInt(r["margin"+("Height"===t?"Top":"Left")])+parseInt(r["margin"+("Height"===t?"Bottom":"Right")]):0)}function T(t){var e=t.body,n=t.documentElement,r=_(10)&&getComputedStyle(n);return{height:A("Height",e,n,r),width:A("Width",e,n,r)}}var $=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},P=function(){function t(t,e){for(var n=0;n2&&void 0!==arguments[2]&&arguments[2],r=_(10),o="HTML"===e.nodeName,i=I(t),a=I(e),s=g(t),c=v(e),u=parseFloat(c.borderTopWidth),l=parseFloat(c.borderLeftWidth);n&&o&&(a.top=Math.max(a.top,0),a.left=Math.max(a.left,0));var f=N({top:i.top-a.top-u,left:i.left-a.left-l,width:i.width,height:i.height});if(f.marginTop=0,f.marginLeft=0,!r&&o){var p=parseFloat(c.marginTop),d=parseFloat(c.marginLeft);f.top-=u-p,f.bottom-=u-p,f.left-=l-d,f.right-=l-d,f.marginTop=p,f.marginLeft=d}return(r&&!n?e.contains(s):e===s&&"BODY"!==s.nodeName)&&(f=j(f,e)),f}function D(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.ownerDocument.documentElement,r=F(t,n),o=Math.max(n.clientWidth,window.innerWidth||0),i=Math.max(n.clientHeight,window.innerHeight||0),a=e?0:E(n),s=e?0:E(n,"left"),c={top:a-r.top+r.marginTop,left:s-r.left+r.marginLeft,width:o,height:i};return N(c)}function B(t){var e=t.nodeName;if("BODY"===e||"HTML"===e)return!1;if("fixed"===v(t,"position"))return!0;var n=m(t);return!!n&&B(n)}function M(t){if(!t||!t.parentElement||_())return document.documentElement;var e=t.parentElement;while(e&&"none"===v(e,"transform"))e=e.parentElement;return e||document.documentElement}function z(t,e,n,r){var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],i={top:0,left:0},a=o?M(t):C(t,y(e));if("viewport"===r)i=D(a,o);else{var s=void 0;"scrollParent"===r?(s=g(m(e)),"BODY"===s.nodeName&&(s=t.ownerDocument.documentElement)):s="window"===r?t.ownerDocument.documentElement:r;var c=F(s,a,o);if("HTML"!==s.nodeName||B(a))i=c;else{var u=T(t.ownerDocument),l=u.height,f=u.width;i.top+=c.top-c.marginTop,i.bottom=l+c.top,i.left+=c.left-c.marginLeft,i.right=f+c.left}}n=n||0;var p="number"===typeof n;return i.left+=p?n:n.left||0,i.top+=p?n:n.top||0,i.right-=p?n:n.right||0,i.bottom-=p?n:n.bottom||0,i}function U(t){var e=t.width,n=t.height;return e*n}function H(t,e,n,r,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var a=z(n,r,i,o),s={top:{width:a.width,height:e.top-a.top},right:{width:a.right-e.right,height:a.height},bottom:{width:a.width,height:a.bottom-e.bottom},left:{width:e.left-a.left,height:a.height}},c=Object.keys(s).map((function(t){return R({key:t},s[t],{area:U(s[t])})})).sort((function(t,e){return e.area-t.area})),u=c.filter((function(t){var e=t.width,r=t.height;return e>=n.clientWidth&&r>=n.clientHeight})),l=u.length>0?u[0].key:c[0].key,f=t.split("-")[1];return l+(f?"-"+f:"")}function V(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=r?M(e):C(e,y(n));return F(n,o,r)}function q(t){var e=t.ownerDocument.defaultView,n=e.getComputedStyle(t),r=parseFloat(n.marginTop||0)+parseFloat(n.marginBottom||0),o=parseFloat(n.marginLeft||0)+parseFloat(n.marginRight||0),i={width:t.offsetWidth+o,height:t.offsetHeight+r};return i}function W(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,(function(t){return e[t]}))}function G(t,e,n){n=n.split("-")[0];var r=q(t),o={width:r.width,height:r.height},i=-1!==["right","left"].indexOf(n),a=i?"top":"left",s=i?"left":"top",c=i?"height":"width",u=i?"width":"height";return o[a]=e[a]+e[c]/2-r[c]/2,o[s]=n===s?e[s]-r[u]:e[W(s)],o}function K(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function Y(t,e,n){if(Array.prototype.findIndex)return t.findIndex((function(t){return t[e]===n}));var r=K(t,(function(t){return t[e]===n}));return t.indexOf(r)}function X(t,e,n){var r=void 0===n?t:t.slice(0,Y(t,"name",n));return r.forEach((function(t){t["function"]&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=t["function"]||t.fn;t.enabled&&h(n)&&(e.offsets.popper=N(e.offsets.popper),e.offsets.reference=N(e.offsets.reference),e=n(e,t))})),e}function Z(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=V(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=H(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=G(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=X(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function J(t,e){return t.some((function(t){var n=t.name,r=t.enabled;return r&&n===e}))}function Q(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),r=0;ra[d]&&(t.offsets.popper[f]+=s[f]+h-a[d]),t.offsets.popper=N(t.offsets.popper);var m=s[f]+s[u]/2-h/2,g=v(t.instance.popper),y=parseFloat(g["margin"+l]),w=parseFloat(g["border"+l+"Width"]),b=m-t.offsets.popper[f]-y-w;return b=Math.max(Math.min(a[u]-h,b),0),t.arrowElement=r,t.offsets.arrow=(n={},L(n,f,Math.round(b)),L(n,p,""),n),t}function gt(t){return"end"===t?"start":"start"===t?"end":t}var yt=["auto-start","auto","auto-end","top-start","top","top-end","right-start","right","right-end","bottom-end","bottom","bottom-start","left-end","left","left-start"],wt=yt.slice(3);function bt(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=wt.indexOf(t),r=wt.slice(n+1).concat(wt.slice(0,n));return e?r.reverse():r}var _t={FLIP:"flip",CLOCKWISE:"clockwise",COUNTERCLOCKWISE:"counterclockwise"};function xt(t,e){if(J(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=z(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),r=t.placement.split("-")[0],o=W(r),i=t.placement.split("-")[1]||"",a=[];switch(e.behavior){case _t.FLIP:a=[r,o];break;case _t.CLOCKWISE:a=bt(r);break;case _t.COUNTERCLOCKWISE:a=bt(r,!0);break;default:a=e.behavior}return a.forEach((function(s,c){if(r!==s||a.length===c+1)return t;r=t.placement.split("-")[0],o=W(r);var u=t.offsets.popper,l=t.offsets.reference,f=Math.floor,p="left"===r&&f(u.right)>f(l.left)||"right"===r&&f(u.left)f(l.top)||"bottom"===r&&f(u.top)f(n.right),v=f(u.top)f(n.bottom),g="left"===r&&d||"right"===r&&h||"top"===r&&v||"bottom"===r&&m,y=-1!==["top","bottom"].indexOf(r),w=!!e.flipVariations&&(y&&"start"===i&&d||y&&"end"===i&&h||!y&&"start"===i&&v||!y&&"end"===i&&m),b=!!e.flipVariationsByContent&&(y&&"start"===i&&h||y&&"end"===i&&d||!y&&"start"===i&&m||!y&&"end"===i&&v),_=w||b;(p||g||_)&&(t.flipped=!0,(p||g)&&(r=a[c+1]),_&&(i=gt(i)),t.placement=r+(i?"-"+i:""),t.offsets.popper=R({},t.offsets.popper,G(t.instance.popper,t.offsets.reference,t.placement)),t=X(t.instance.modifiers,t,"flip"))})),t}function Ot(t){var e=t.offsets,n=e.popper,r=e.reference,o=t.placement.split("-")[0],i=Math.floor,a=-1!==["top","bottom"].indexOf(o),s=a?"right":"bottom",c=a?"left":"top",u=a?"width":"height";return n[s]i(r[s])&&(t.offsets.popper[c]=i(r[s])),t}function kt(t,e,n,r){var o=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),i=+o[1],a=o[2];if(!i)return t;if(0===a.indexOf("%")){var s=void 0;switch(a){case"%p":s=n;break;case"%":case"%r":default:s=r}var c=N(s);return c[e]/100*i}if("vh"===a||"vw"===a){var u=void 0;return u="vh"===a?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0),u/100*i}return i}function Ct(t,e,n,r){var o=[0,0],i=-1!==["right","left"].indexOf(r),a=t.split(/(\+|\-)/).map((function(t){return t.trim()})),s=a.indexOf(K(a,(function(t){return-1!==t.search(/,|\s/)})));a[s]&&-1===a[s].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var c=/\s*,\s*|\s+/,u=-1!==s?[a.slice(0,s).concat([a[s].split(c)[0]]),[a[s].split(c)[1]].concat(a.slice(s+1))]:[a];return u=u.map((function(t,r){var o=(1===r?!i:i)?"height":"width",a=!1;return t.reduce((function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,a=!0,t):a?(t[t.length-1]+=e,a=!1,t):t.concat(e)}),[]).map((function(t){return kt(t,o,e,n)}))})),u.forEach((function(t,e){t.forEach((function(n,r){st(n)&&(o[e]+=n*("-"===t[r-1]?-1:1))}))})),o}function Et(t,e){var n=e.offset,r=t.placement,o=t.offsets,i=o.popper,a=o.reference,s=r.split("-")[0],c=void 0;return c=st(+n)?[+n,0]:Ct(n,i,a,s),"left"===s?(i.top+=c[0],i.left-=c[1]):"right"===s?(i.top+=c[0],i.left+=c[1]):"top"===s?(i.left+=c[0],i.top-=c[1]):"bottom"===s&&(i.left+=c[0],i.top+=c[1]),t.popper=i,t}function jt(t,e){var n=e.boundariesElement||x(t.instance.popper);t.instance.reference===n&&(n=x(n));var r=Q("transform"),o=t.instance.popper.style,i=o.top,a=o.left,s=o[r];o.top="",o.left="",o[r]="";var c=z(t.instance.popper,t.instance.reference,e.padding,n,t.positionFixed);o.top=i,o.left=a,o[r]=s,e.boundaries=c;var u=e.priority,l=t.offsets.popper,f={primary:function(t){var n=l[t];return l[t]c[t]&&!e.escapeWithReference&&(r=Math.min(l[n],c[t]-("right"===t?l.width:l.height))),L({},n,r)}};return u.forEach((function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";l=R({},l,f[e](t))})),t.offsets.popper=l,t}function St(t){var e=t.placement,n=e.split("-")[0],r=e.split("-")[1];if(r){var o=t.offsets,i=o.reference,a=o.popper,s=-1!==["bottom","top"].indexOf(n),c=s?"left":"top",u=s?"width":"height",l={start:L({},c,i[c]),end:L({},c,i[c]+i[u]-a[u])};t.offsets.popper=R({},a,l[r])}return t}function At(t){if(!vt(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=K(t.instance.modifiers,(function(t){return"preventOverflow"===t.name})).boundaries;if(e.bottomn.right||e.top>n.bottom||e.right2&&void 0!==arguments[2]?arguments[2]:{};$(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=d(this.update.bind(this)),this.options=R({},t.Defaults,o),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(R({},t.Defaults.modifiers,o.modifiers)).forEach((function(e){r.options.modifiers[e]=R({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return R({name:t},r.options.modifiers[t])})).sort((function(t,e){return t.order-e.order})),this.modifiers.forEach((function(t){t.enabled&&h(t.onLoad)&&t.onLoad(r.reference,r.popper,r.options,t,r.state)})),this.update();var i=this.options.eventsEnabled;i&&this.enableEventListeners(),this.state.eventsEnabled=i}return P(t,[{key:"update",value:function(){return Z.call(this)}},{key:"destroy",value:function(){return tt.call(this)}},{key:"enableEventListeners",value:function(){return ot.call(this)}},{key:"disableEventListeners",value:function(){return at.call(this)}}]),t}();Lt.Utils=("undefined"!==typeof window?window:n.g).PopperUtils,Lt.placements=yt,Lt.Defaults=Pt;var Rt,Nt=Lt,It=n(8446),Ft=n.n(It);function Dt(){var t=window.navigator.userAgent,e=t.indexOf("MSIE ");if(e>0)return parseInt(t.substring(e+5,t.indexOf(".",e)),10);var n=t.indexOf("Trident/");if(n>0){var r=t.indexOf("rv:");return parseInt(t.substring(r+3,t.indexOf(".",r)),10)}var o=t.indexOf("Edge/");return o>0?parseInt(t.substring(o+5,t.indexOf(".",o)),10):-1}function Bt(){Bt.init||(Bt.init=!0,Rt=-1!==Dt())}var Mt={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},mounted:function(){var t=this;Bt(),this.$nextTick((function(){t._w=t.$el.offsetWidth,t._h=t.$el.offsetHeight,t.emitOnMount&&t.emitSize()}));var e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",Rt&&this.$el.appendChild(e),e.data="about:blank",Rt||this.$el.appendChild(e)},beforeDestroy:function(){this.removeResizeHandlers()},methods:{compareAndNotify:function(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize:function(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!Rt&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}};function zt(t,e,n,r,o,i,a,s,c,u){"boolean"!==typeof a&&(c=s,s=a,a=!1);var l,f="function"===typeof n?n.options:n;if(t&&t.render&&(f.render=t.render,f.staticRenderFns=t.staticRenderFns,f._compiled=!0,o&&(f.functional=!0)),r&&(f._scopeId=r),i?(l=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"===typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,c(t)),t&&t._registeredComponents&&t._registeredComponents.add(i)},f._ssrRegister=l):e&&(l=a?function(t){e.call(this,u(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,s(t))}),l)if(f.functional){var p=f.render;f.render=function(t,e){return l.call(e),p(t,e)}}else{var d=f.beforeCreate;f.beforeCreate=d?[].concat(d,l):[l]}return n}var Ut=Mt,Ht=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})},Vt=[];Ht._withStripped=!0;var qt=void 0,Wt="data-v-8859cc6c",Gt=void 0,Kt=!1,Yt=zt({render:Ht,staticRenderFns:Vt},qt,Ut,Wt,Kt,Gt,!1,void 0,void 0,void 0);function Xt(t){t.component("resize-observer",Yt),t.component("ResizeObserver",Yt)}var Zt={version:"1.0.1",install:Xt},Jt=null;"undefined"!==typeof window?Jt=window.Vue:"undefined"!==typeof n.g&&(Jt=n.g.Vue),Jt&&Jt.use(Zt);var Qt=n(3857),te=n.n(Qt),ee=function(){};function ne(t){return"string"===typeof t&&(t=t.split(" ")),t}function re(t,e){var n,r=ne(e);n=t.className instanceof ee?ne(t.className.baseVal):ne(t.className),r.forEach((function(t){-1===n.indexOf(t)&&n.push(t)})),t instanceof SVGElement?t.setAttribute("class",n.join(" ")):t.className=n.join(" ")}function oe(t,e){var n,r=ne(e);n=t.className instanceof ee?ne(t.className.baseVal):ne(t.className),r.forEach((function(t){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})),t instanceof SVGElement?t.setAttribute("class",n.join(" ")):t.className=n.join(" ")}"undefined"!==typeof window&&(ee=window.SVGAnimatedString);var ie=!1;if("undefined"!==typeof window){ie=!1;try{var ae=Object.defineProperty({},"passive",{get:function(){ie=!0}});window.addEventListener("test",null,ae)}catch(nn){}}function se(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ce(t){for(var e=1;e
      ',trigger:"hover focus",offset:0},le=[],fe=function(){function t(e,n){var r=this;i(this,t),o(this,"_events",[]),o(this,"_setTooltipNodeEvent",(function(t,e,n,o){var i=t.relatedreference||t.toElement||t.relatedTarget,a=function n(i){var a=i.relatedreference||i.toElement||i.relatedTarget;r._tooltipNode.removeEventListener(t.type,n),e.contains(a)||r._scheduleHide(e,o.delay,o,i)};return!!r._tooltipNode.contains(i)&&(r._tooltipNode.addEventListener(t.type,a),!0)})),n=ce(ce({},ue),n),e.jquery&&(e=e[0]),this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.reference=e,this.options=n,this._isOpen=!1,this._init()}return s(t,[{key:"show",value:function(){this._show(this.reference,this.options)}},{key:"hide",value:function(){this._hide()}},{key:"dispose",value:function(){this._dispose()}},{key:"toggle",value:function(){return this._isOpen?this.hide():this.show()}},{key:"setClasses",value:function(t){this._classes=t}},{key:"setContent",value:function(t){this.options.title=t,this._tooltipNode&&this._setContent(t,this.options)}},{key:"setOptions",value:function(t){var e=!1,n=t&&t.classes||Oe.options.defaultClass;Ft()(this._classes,n)||(this.setClasses(n),e=!0),t=ge(t);var r=!1,o=!1;for(var i in this.options.offset===t.offset&&this.options.placement===t.placement||(r=!0),(this.options.template!==t.template||this.options.trigger!==t.trigger||this.options.container!==t.container||e)&&(o=!0),t)this.options[i]=t[i];if(this._tooltipNode)if(o){var a=this._isOpen;this.dispose(),this._init(),a&&this.show()}else r&&this.popperInstance.update()}},{key:"_init",value:function(){var t="string"===typeof this.options.trigger?this.options.trigger.split(" "):[];this._isDisposed=!1,this._enableDocumentTouch=-1===t.indexOf("manual"),t=t.filter((function(t){return-1!==["click","hover","focus"].indexOf(t)})),this._setEventListeners(this.reference,t,this.options),this.$_originalTitle=this.reference.getAttribute("title"),this.reference.removeAttribute("title"),this.reference.setAttribute("data-original-title",this.$_originalTitle)}},{key:"_create",value:function(t,e){var n=this,r=window.document.createElement("div");r.innerHTML=e.trim();var o=r.childNodes[0];return o.id=this.options.ariaId||"tooltip_".concat(Math.random().toString(36).substr(2,10)),o.setAttribute("aria-hidden","true"),this.options.autoHide&&-1!==this.options.trigger.indexOf("hover")&&(o.addEventListener("mouseenter",(function(e){return n._scheduleHide(t,n.options.delay,n.options,e)})),o.addEventListener("click",(function(e){return n._scheduleHide(t,n.options.delay,n.options,e)}))),o}},{key:"_setContent",value:function(t,e){var n=this;this.asyncContent=!1,this._applyContent(t,e).then((function(){n.popperInstance&&n.popperInstance.update()}))}},{key:"_applyContent",value:function(t,e){var n=this;return new Promise((function(r,o){var i=e.html,a=n._tooltipNode;if(a){var s=a.querySelector(n.options.innerSelector);if(1===t.nodeType){if(i){while(s.firstChild)s.removeChild(s.firstChild);s.appendChild(t)}}else{if("function"===typeof t){var c=t();return void(c&&"function"===typeof c.then?(n.asyncContent=!0,e.loadingClass&&re(a,e.loadingClass),e.loadingContent&&n._applyContent(e.loadingContent,e),c.then((function(t){return e.loadingClass&&oe(a,e.loadingClass),n._applyContent(t,e)})).then(r).catch(o)):n._applyContent(c,e).then(r).catch(o))}i?s.innerHTML=t:s.innerText=t}r()}}))}},{key:"_show",value:function(t,e){if(e&&"string"===typeof e.container){var n=document.querySelector(e.container);if(!n)return}clearTimeout(this._disposeTimer),e=Object.assign({},e),delete e.offset;var r=!0;this._tooltipNode&&(re(this._tooltipNode,this._classes),r=!1);var o=this._ensureShown(t,e);return r&&this._tooltipNode&&re(this._tooltipNode,this._classes),re(t,["v-tooltip-open"]),o}},{key:"_ensureShown",value:function(t,e){var n=this;if(this._isOpen)return this;if(this._isOpen=!0,le.push(this),this._tooltipNode)return this._tooltipNode.style.display="",this._tooltipNode.setAttribute("aria-hidden","false"),this.popperInstance.enableEventListeners(),this.popperInstance.update(),this.asyncContent&&this._setContent(e.title,e),this;var r=t.getAttribute("title")||e.title;if(!r)return this;var o=this._create(t,e.template);this._tooltipNode=o,t.setAttribute("aria-describedby",o.id);var i=this._findContainer(e.container,t);this._append(o,i);var a=ce(ce({},e.popperOptions),{},{placement:e.placement});return a.modifiers=ce(ce({},a.modifiers),{},{arrow:{element:this.options.arrowSelector}}),e.boundariesElement&&(a.modifiers.preventOverflow={boundariesElement:e.boundariesElement}),this.popperInstance=new Nt(t,o,a),this._setContent(r,e),requestAnimationFrame((function(){!n._isDisposed&&n.popperInstance?(n.popperInstance.update(),requestAnimationFrame((function(){n._isDisposed?n.dispose():n._isOpen&&o.setAttribute("aria-hidden","false")}))):n.dispose()})),this}},{key:"_noLongerOpen",value:function(){var t=le.indexOf(this);-1!==t&&le.splice(t,1)}},{key:"_hide",value:function(){var t=this;if(!this._isOpen)return this;this._isOpen=!1,this._noLongerOpen(),this._tooltipNode.style.display="none",this._tooltipNode.setAttribute("aria-hidden","true"),this.popperInstance&&this.popperInstance.disableEventListeners(),clearTimeout(this._disposeTimer);var e=Oe.options.disposeTimeout;return null!==e&&(this._disposeTimer=setTimeout((function(){t._tooltipNode&&(t._tooltipNode.removeEventListener("mouseenter",t.hide),t._tooltipNode.removeEventListener("click",t.hide),t._removeTooltipNode())}),e)),oe(this.reference,["v-tooltip-open"]),this}},{key:"_removeTooltipNode",value:function(){if(this._tooltipNode){var t=this._tooltipNode.parentNode;t&&(t.removeChild(this._tooltipNode),this.reference.removeAttribute("aria-describedby")),this._tooltipNode=null}}},{key:"_dispose",value:function(){var t=this;return this._isDisposed=!0,this.reference.removeAttribute("data-original-title"),this.$_originalTitle&&this.reference.setAttribute("title",this.$_originalTitle),this._events.forEach((function(e){var n=e.func,r=e.event;t.reference.removeEventListener(r,n)})),this._events=[],this._tooltipNode?(this._hide(),this._tooltipNode.removeEventListener("mouseenter",this.hide),this._tooltipNode.removeEventListener("click",this.hide),this.popperInstance.destroy(),this.popperInstance.options.removeOnDestroy||this._removeTooltipNode()):this._noLongerOpen(),this}},{key:"_findContainer",value:function(t,e){return"string"===typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t}},{key:"_append",value:function(t,e){e.appendChild(t)}},{key:"_setEventListeners",value:function(t,e,n){var r=this,o=[],i=[];e.forEach((function(t){switch(t){case"hover":o.push("mouseenter"),i.push("mouseleave"),r.options.hideOnTargetClick&&i.push("click");break;case"focus":o.push("focus"),i.push("blur"),r.options.hideOnTargetClick&&i.push("click");break;case"click":o.push("click"),i.push("click");break}})),o.forEach((function(e){var o=function(e){!0!==r._isOpen&&(e.usedByTooltip=!0,r._scheduleShow(t,n.delay,n,e))};r._events.push({event:e,func:o}),t.addEventListener(e,o)})),i.forEach((function(e){var o=function(e){!0!==e.usedByTooltip&&r._scheduleHide(t,n.delay,n,e)};r._events.push({event:e,func:o}),t.addEventListener(e,o)}))}},{key:"_onDocumentTouch",value:function(t){this._enableDocumentTouch&&this._scheduleHide(this.reference,this.options.delay,this.options,t)}},{key:"_scheduleShow",value:function(t,e,n){var r=this,o=e&&e.show||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){return r._show(t,n)}),o)}},{key:"_scheduleHide",value:function(t,e,n,r){var o=this,i=e&&e.hide||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){if(!1!==o._isOpen&&o._tooltipNode.ownerDocument.body.contains(o._tooltipNode)){if("mouseleave"===r.type){var i=o._setTooltipNodeEvent(r,t,e,n);if(i)return}o._hide(t,n)}}),i)}}]),t}();function pe(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function de(t){for(var e=1;e
      ',defaultArrowSelector:".tooltip-arrow, .tooltip__arrow",defaultInnerSelector:".tooltip-inner, .tooltip__inner",defaultDelay:0,defaultTrigger:"hover focus",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultLoadingClass:"tooltip-loading",defaultLoadingContent:"...",autoHide:!0,defaultHideOnTargetClick:!0,disposeTimeout:5e3,popover:{defaultPlacement:"bottom",defaultClass:"vue-popover-theme",defaultBaseClass:"tooltip popover",defaultWrapperClass:"wrapper",defaultInnerClass:"tooltip-inner popover-inner",defaultArrowClass:"tooltip-arrow popover-arrow",defaultOpenClass:"open",defaultDelay:0,defaultTrigger:"click",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultAutoHide:!0,defaultHandleResize:!0}};function ge(t){var e={placement:"undefined"!==typeof t.placement?t.placement:Oe.options.defaultPlacement,delay:"undefined"!==typeof t.delay?t.delay:Oe.options.defaultDelay,html:"undefined"!==typeof t.html?t.html:Oe.options.defaultHtml,template:"undefined"!==typeof t.template?t.template:Oe.options.defaultTemplate,arrowSelector:"undefined"!==typeof t.arrowSelector?t.arrowSelector:Oe.options.defaultArrowSelector,innerSelector:"undefined"!==typeof t.innerSelector?t.innerSelector:Oe.options.defaultInnerSelector,trigger:"undefined"!==typeof t.trigger?t.trigger:Oe.options.defaultTrigger,offset:"undefined"!==typeof t.offset?t.offset:Oe.options.defaultOffset,container:"undefined"!==typeof t.container?t.container:Oe.options.defaultContainer,boundariesElement:"undefined"!==typeof t.boundariesElement?t.boundariesElement:Oe.options.defaultBoundariesElement,autoHide:"undefined"!==typeof t.autoHide?t.autoHide:Oe.options.autoHide,hideOnTargetClick:"undefined"!==typeof t.hideOnTargetClick?t.hideOnTargetClick:Oe.options.defaultHideOnTargetClick,loadingClass:"undefined"!==typeof t.loadingClass?t.loadingClass:Oe.options.defaultLoadingClass,loadingContent:"undefined"!==typeof t.loadingContent?t.loadingContent:Oe.options.defaultLoadingContent,popperOptions:de({},"undefined"!==typeof t.popperOptions?t.popperOptions:Oe.options.defaultPopperOptions)};if(e.offset){var n=r(e.offset),o=e.offset;("number"===n||"string"===n&&-1===o.indexOf(","))&&(o="0, ".concat(o)),e.popperOptions.modifiers||(e.popperOptions.modifiers={}),e.popperOptions.modifiers.offset={offset:o}}return e.trigger&&-1!==e.trigger.indexOf("click")&&(e.hideOnTargetClick=!1),e}function ye(t,e){for(var n=t.placement,r=0;r2&&void 0!==arguments[2]?arguments[2]:{},o=we(e),i="undefined"!==typeof e.classes?e.classes:Oe.options.defaultClass,a=de({title:o},ge(de(de({},"object"===r(e)?e:{}),{},{placement:ye(e,n)}))),s=t._tooltip=new fe(t,a);s.setClasses(i),s._vueEl=t;var c="undefined"!==typeof e.targetClasses?e.targetClasses:Oe.options.defaultTargetClass;return t._tooltipTargetClasses=c,re(t,c),s}function _e(t){t._tooltip&&(t._tooltip.dispose(),delete t._tooltip,delete t._tooltipOldShow),t._tooltipTargetClasses&&(oe(t,t._tooltipTargetClasses),delete t._tooltipTargetClasses)}function xe(t,e){var n=e.value;e.oldValue;var r,o=e.modifiers,i=we(n);i&&he.enabled?(t._tooltip?(r=t._tooltip,r.setContent(i),r.setOptions(de(de({},n),{},{placement:ye(n,o)}))):r=be(t,n,o),"undefined"!==typeof n.show&&n.show!==t._tooltipOldShow&&(t._tooltipOldShow=n.show,n.show?r.show():r.hide())):_e(t)}var Oe={options:me,bind:xe,update:xe,unbind:function(t){_e(t)}};function ke(t){t.addEventListener("click",Ee),t.addEventListener("touchstart",je,!!ie&&{passive:!0})}function Ce(t){t.removeEventListener("click",Ee),t.removeEventListener("touchstart",je),t.removeEventListener("touchend",Se),t.removeEventListener("touchcancel",Ae)}function Ee(t){var e=t.currentTarget;t.closePopover=!e.$_vclosepopover_touch,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}function je(t){if(1===t.changedTouches.length){var e=t.currentTarget;e.$_vclosepopover_touch=!0;var n=t.changedTouches[0];e.$_vclosepopover_touchPoint=n,e.addEventListener("touchend",Se),e.addEventListener("touchcancel",Ae)}}function Se(t){var e=t.currentTarget;if(e.$_vclosepopover_touch=!1,1===t.changedTouches.length){var n=t.changedTouches[0],r=e.$_vclosepopover_touchPoint;t.closePopover=Math.abs(n.screenY-r.screenY)<20&&Math.abs(n.screenX-r.screenX)<20,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}}function Ae(t){var e=t.currentTarget;e.$_vclosepopover_touch=!1}var Te={bind:function(t,e){var n=e.value,r=e.modifiers;t.$_closePopoverModifiers=r,("undefined"===typeof n||n)&&ke(t)},update:function(t,e){var n=e.value,r=e.oldValue,o=e.modifiers;t.$_closePopoverModifiers=o,n!==r&&("undefined"===typeof n||n?ke(t):Ce(t))},unbind:function(t){Ce(t)}};function $e(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Pe(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:{},n=e.event;e.skipDelay;var r=e.force,o=void 0!==r&&r;!o&&this.disabled||(this.$_scheduleShow(n),this.$emit("show")),this.$emit("update:open",!0),this.$_beingShowed=!0,requestAnimationFrame((function(){t.$_beingShowed=!1}))},hide:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.event;t.skipDelay,this.$_scheduleHide(e),this.$emit("hide"),this.$emit("update:open",!1)},dispose:function(){if(this.$_isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.popperInstance&&(this.popperInstance.destroy(),!this.popperInstance.options.removeOnDestroy)){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t)}this.$_mounted=!1,this.popperInstance=null,this.isOpen=!1,this.$emit("dispose")},$_init:function(){-1===this.trigger.indexOf("manual")&&this.$_addEventListeners()},$_show:function(){var t=this,e=this.$refs.trigger,n=this.$refs.popover;if(clearTimeout(this.$_disposeTimer),!this.isOpen){if(this.popperInstance&&(this.isOpen=!0,this.popperInstance.enableEventListeners(),this.popperInstance.scheduleUpdate()),!this.$_mounted){var r=this.$_findContainer(this.container,e);if(!r)return void console.warn("No container for popover",this);r.appendChild(n),this.$_mounted=!0,this.isOpen=!1,this.popperInstance&&requestAnimationFrame((function(){t.hidden||(t.isOpen=!0)}))}if(!this.popperInstance){var o=Pe(Pe({},this.popperOptions),{},{placement:this.placement});if(o.modifiers=Pe(Pe({},o.modifiers),{},{arrow:Pe(Pe({},o.modifiers&&o.modifiers.arrow),{},{element:this.$refs.arrow})}),this.offset){var i=this.$_getOffset();o.modifiers.offset=Pe(Pe({},o.modifiers&&o.modifiers.offset),{},{offset:i})}this.boundariesElement&&(o.modifiers.preventOverflow=Pe(Pe({},o.modifiers&&o.modifiers.preventOverflow),{},{boundariesElement:this.boundariesElement})),this.popperInstance=new Nt(e,n,o),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();!t.$_isDisposed&&t.popperInstance?(t.popperInstance.scheduleUpdate(),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();t.$_isDisposed?t.dispose():t.isOpen=!0}))):t.dispose()}))}var a=this.openGroup;if(a)for(var s,c=0;c1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),t)this.$_show();else{var e=parseInt(this.delay&&this.delay.show||this.delay||0);this.$_scheduleTimer=setTimeout(this.$_show.bind(this),e)}},$_scheduleHide:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),n)this.$_hide();else{var r=parseInt(this.delay&&this.delay.hide||this.delay||0);this.$_scheduleTimer=setTimeout((function(){if(t.isOpen){if(e&&"mouseleave"===e.type){var n=t.$_setTooltipNodeEvent(e);if(n)return}t.$_hide()}}),r)}},$_setTooltipNodeEvent:function(t){var e=this,n=this.$refs.trigger,r=this.$refs.popover,o=t.relatedreference||t.toElement||t.relatedTarget,i=function o(i){var a=i.relatedreference||i.toElement||i.relatedTarget;r.removeEventListener(t.type,o),n.contains(a)||e.hide({event:i})};return!!r.contains(o)&&(r.addEventListener(t.type,i),!0)},$_removeEventListeners:function(){var t=this.$refs.trigger;this.$_events.forEach((function(e){var n=e.func,r=e.event;t.removeEventListener(r,n)})),this.$_events=[]},$_updatePopper:function(t){this.popperInstance&&(t(),this.isOpen&&this.popperInstance.scheduleUpdate())},$_restartPopper:function(){if(this.popperInstance){var t=this.isOpen;this.dispose(),this.$_isDisposed=!1,this.$_init(),t&&this.show({skipDelay:!0,force:!0})}},$_handleGlobalClose:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.$_beingShowed||(this.hide({event:t}),t.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),n&&(this.$_preventOpen=!0,setTimeout((function(){e.$_preventOpen=!1}),300)))},$_handleResize:function(){this.isOpen&&this.popperInstance&&(this.popperInstance.scheduleUpdate(),this.$emit("resize"))}}};function De(t){Me(t)}function Be(t){Me(t,!0)}function Me(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=function(n){var r=Ne[n];if(r.$refs.popover){var o=r.$refs.popover.contains(t.target);requestAnimationFrame((function(){(t.closeAllPopover||t.closePopover&&o||r.autoHide&&!o)&&r.$_handleGlobalClose(t,e)}))}},r=0;r1&&void 0!==arguments[1]?arguments[1]:{};if(!Je.installed){Je.installed=!0;var n={};te()(n,me,e),Qe.options=n,Oe.options=n,t.directive("tooltip",Oe),t.directive("close-popover",Te),t.component("VPopover",Ye)}}Xe(Ze);var Qe={install:Je,get enabled(){return he.enabled},set enabled(t){he.enabled=t}},tn=null;"undefined"!==typeof window?tn=window.Vue:"undefined"!==typeof n.g&&(tn=n.g.Vue),tn&&tn.use(Qe);var en=Qe},528:function(t,e,n){"use strict";var r=n(3465),o=n.n(r);function i(t){void 0===t&&(t={shift:!1,ctrl:!1,left:!1}),document.addEventListener(t.left?"click":"contextmenu",(function(e){if((!t.ctrl||e.ctrlKey)&&(!t.shift||e.shiftKey)){t.stop&&(e.preventDefault(),e.stopPropagation());var n=u(e.target);n&&l(n)}}))}function a(t){while(t.length<8)t+=" ";return t}function s(t){console.log(a(t)+" %cnone","color:grey")}i.install=function(t,e){i(e)};var c="background:#42b983;color:white;border-radius:99px;padding:0px 6px;";function u(t){var e=t&&t.__vue__;return e||(t.parentNode?u(t.parentNode):void console.info("no Vue component found"))}function l(t,e){if(e?console.groupCollapsed("%cparent %c"+(t.$parent?t.$options.name||t.$options._componentTag||"anonymous":"Root"),"font-weight:normal",c,t):console.group("%c"+(t.$parent?t.$options.name||t.$options._componentTag||"anonymous":"Root"),c,t),Object.keys(t.$data).length?console.log(a("data"),o()(t.$data)):s("data"),t._computedWatchers&&Object.keys(t._computedWatchers).length){var n={};for(var r in t._computedWatchers)try{n[r]=o()(t[r])}catch(i){n[r]="["+i.message+"]"}console.log(a("computed"),n)}else s("computed");t._props&&Object.keys(t._props).length?console.log(a("props"),o()(t._props)):s("props"),console.log(a("element"),t.$el),!e&&t.$route&&console.log(a("route"),t.$route),t.$parent?l(t.$parent,!0):s("parent"),console.groupEnd()}},8345:function(t,e,n){"use strict";function r(t,e){for(var n in e)t[n]=e[n];return t}n.d(e,{ZP:function(){return xe}});var o=/[!'()*]/g,i=function(t){return"%"+t.charCodeAt(0).toString(16)},a=/%2C/g,s=function(t){return encodeURIComponent(t).replace(o,i).replace(a,",")};function c(t){try{return decodeURIComponent(t)}catch(e){0}return t}function u(t,e,n){void 0===e&&(e={});var r,o=n||f;try{r=o(t||"")}catch(s){r={}}for(var i in e){var a=e[i];r[i]=Array.isArray(a)?a.map(l):l(a)}return r}var l=function(t){return null==t||"object"===typeof t?t:String(t)};function f(t){var e={};return t=t.trim().replace(/^(\?|#|&)/,""),t?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=c(n.shift()),o=n.length>0?c(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function p(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return s(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(s(e)):r.push(s(e)+"="+s(t)))})),r.join("&")}return s(e)+"="+s(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var d=/\/?$/;function h(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=v(i)}catch(s){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:y(e,o),matched:t?g(t):[]};return n&&(a.redirectedFrom=y(n,o)),Object.freeze(a)}function v(t){if(Array.isArray(t))return t.map(v);if(t&&"object"===typeof t){var e={};for(var n in t)e[n]=v(t[n]);return e}return t}var m=h(null,{path:"/"});function g(t){var e=[];while(t)e.unshift(t),t=t.parent;return e}function y(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;void 0===o&&(o="");var i=e||p;return(n||"/")+i(r)+o}function w(t,e,n){return e===m?t===e:!!e&&(t.path&&e.path?t.path.replace(d,"")===e.path.replace(d,"")&&(n||t.hash===e.hash&&b(t.query,e.query)):!(!t.name||!e.name)&&(t.name===e.name&&(n||t.hash===e.hash&&b(t.query,e.query)&&b(t.params,e.params))))}function b(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t).sort(),r=Object.keys(e).sort();return n.length===r.length&&n.every((function(n,o){var i=t[n],a=r[o];if(a!==n)return!1;var s=e[n];return null==i||null==s?i===s:"object"===typeof i&&"object"===typeof s?b(i,s):String(i)===String(s)}))}function _(t,e){return 0===t.path.replace(d,"/").indexOf(e.path.replace(d,"/"))&&(!e.hash||t.hash===e.hash)&&x(t.query,e.query)}function x(t,e){for(var n in e)if(!(n in t))return!1;return!0}function O(t){for(var e=0;e=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}function A(t){return t.replace(/\/(?:\s*\/)+/g,"/")}var T=Array.isArray||function(t){return"[object Array]"==Object.prototype.toString.call(t)},$=X,P=F,L=D,R=z,N=Y,I=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function F(t,e){var n,r=[],o=0,i=0,a="",s=e&&e.delimiter||"/";while(null!=(n=I.exec(t))){var c=n[0],u=n[1],l=n.index;if(a+=t.slice(i,l),i=l+c.length,u)a+=u[1];else{var f=t[i],p=n[2],d=n[3],h=n[4],v=n[5],m=n[6],g=n[7];a&&(r.push(a),a="");var y=null!=p&&null!=f&&f!==p,w="+"===m||"*"===m,b="?"===m||"*"===m,_=n[2]||s,x=h||v;r.push({name:d||o++,prefix:p||"",delimiter:_,optional:b,repeat:w,partial:y,asterisk:!!g,pattern:x?H(x):g?".*":"[^"+U(_)+"]+?"})}}return i1||!k.length)return 0===k.length?t():t("span",{},k)}if("a"===this.tag)O.on=x,O.attrs={href:c,"aria-current":y};else{var C=at(this.$slots.default);if(C){C.isStatic=!1;var E=C.data=r({},C.data);for(var j in E.on=E.on||{},E.on){var S=E.on[j];j in x&&(E.on[j]=Array.isArray(S)?S:[S])}for(var A in x)A in E.on?E.on[A].push(x[A]):E.on[A]=b;var T=C.data.attrs=r({},C.data.attrs);T.href=c,T["aria-current"]=y}else O.on=x}return t(this.tag,O,this.$slots.default)}};function it(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&(void 0===t.button||0===t.button)){if(t.currentTarget&&t.currentTarget.getAttribute){var e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function at(t){if(t)for(var e,n=0;n-1&&(s.params[f]=n.params[f]);return s.path=J(u.path,s.params,'named route "'+c+'"'),p(u,s,a)}if(s.path){s.params={};for(var d=0;d-1}function Wt(t,e){return qt(t)&&t._isRouter&&(null==e||t.type===e)}function Gt(t,e,n){var r=function(o){o>=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function Kt(t){return function(e,n,r){var o=!1,i=0,a=null;Yt(t,(function(t,e,n,s){if("function"===typeof t&&void 0===t.cid){o=!0,i++;var c,u=Qt((function(e){Jt(e)&&(e=e.default),t.resolved="function"===typeof e?e:tt.extend(e),n.components[s]=e,i--,i<=0&&r()})),l=Qt((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=qt(t)?t:new Error(e),r(a))}));try{c=t(u,l)}catch(p){l(p)}if(c)if("function"===typeof c.then)c.then(u,l);else{var f=c.component;f&&"function"===typeof f.then&&f.then(u,l)}}})),o||r()}}function Yt(t,e){return Xt(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Xt(t){return Array.prototype.concat.apply([],t)}var Zt="function"===typeof Symbol&&"symbol"===typeof Symbol.toStringTag;function Jt(t){return t.__esModule||Zt&&"Module"===t[Symbol.toStringTag]}function Qt(t){var e=!1;return function(){var n=[],r=arguments.length;while(r--)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var te=function(t,e){this.router=t,this.base=ee(e),this.current=m,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function ee(t){if(!t)if(ct){var e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^https?:\/\/[^\/]+/,"")}else t="/";return"/"!==t.charAt(0)&&(t="/"+t),t.replace(/\/$/,"")}function ne(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,r=Rt&&n;r&&this.listeners.push(xt());var o=function(){var n=t.current,o=fe(t.base);t.current===m&&o===t._startLocation||t.transitionTo(o,(function(t){r&&Ot(e,t,n,!0)}))};window.addEventListener("popstate",o),this.listeners.push((function(){window.removeEventListener("popstate",o)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,o=this,i=o.current;this.transitionTo(t,(function(t){Nt(A(r.base+t.fullPath)),Ot(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this,i=o.current;this.transitionTo(t,(function(t){It(A(r.base+t.fullPath)),Ot(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(fe(this.base)!==this.current.fullPath){var e=A(this.base+this.current.fullPath);t?Nt(e):It(e)}},e.prototype.getCurrentLocation=function(){return fe(this.base)},e}(te);function fe(t){var e=window.location.pathname,n=e.toLowerCase(),r=t.toLowerCase();return!t||n!==r&&0!==n.indexOf(A(r+"/"))||(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var pe=function(t){function e(e,n,r){t.call(this,e,n),r&&de(this.base)||he()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router,n=e.options.scrollBehavior,r=Rt&&n;r&&this.listeners.push(xt());var o=function(){var e=t.current;he()&&t.transitionTo(ve(),(function(n){r&&Ot(t.router,n,e,!0),Rt||ye(n.fullPath)}))},i=Rt?"popstate":"hashchange";window.addEventListener(i,o),this.listeners.push((function(){window.removeEventListener(i,o)}))}},e.prototype.push=function(t,e,n){var r=this,o=this,i=o.current;this.transitionTo(t,(function(t){ge(t.fullPath),Ot(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this,i=o.current;this.transitionTo(t,(function(t){ye(t.fullPath),Ot(r.router,t,i,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;ve()!==e&&(t?ge(e):ye(e))},e.prototype.getCurrentLocation=function(){return ve()},e}(te);function de(t){var e=fe(t);if(!/^\/#/.test(e))return window.location.replace(A(t+"/#"+e)),!0}function he(){var t=ve();return"/"===t.charAt(0)||(ye("/"+t),!1)}function ve(){var t=window.location.href,e=t.indexOf("#");return e<0?"":(t=t.slice(e+1),t)}function me(t){var e=window.location.href,n=e.indexOf("#"),r=n>=0?e.slice(0,n):e;return r+"#"+t}function ge(t){Rt?Nt(me(t)):window.location.hash=t}function ye(t){Rt?It(me(t)):window.location.replace(me(t))}var we=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){Wt(t,Ft.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(te),be=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=dt(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!Rt&&!1!==t.fallback,this.fallback&&(e="hash"),ct||(e="abstract"),this.mode=e,e){case"history":this.history=new le(this,t.base);break;case"hash":this.history=new pe(this,t.base,this.fallback);break;case"abstract":this.history=new we(this,t.base);break;default:0}},_e={currentRoute:{configurable:!0}};be.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},_e.currentRoute.get=function(){return this.history&&this.history.current},be.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof le||n instanceof pe){var r=function(t){var r=n.current,o=e.options.scrollBehavior,i=Rt&&o;i&&"fullPath"in t&&Ot(e,t,r,!1)},o=function(t){n.setupListeners(),r(t)};n.transitionTo(n.getCurrentLocation(),o,o)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},be.prototype.beforeEach=function(t){return Oe(this.beforeHooks,t)},be.prototype.beforeResolve=function(t){return Oe(this.resolveHooks,t)},be.prototype.afterEach=function(t){return Oe(this.afterHooks,t)},be.prototype.onReady=function(t,e){this.history.onReady(t,e)},be.prototype.onError=function(t){this.history.onError(t)},be.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!==typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},be.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!==typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},be.prototype.go=function(t){this.history.go(t)},be.prototype.back=function(){this.go(-1)},be.prototype.forward=function(){this.go(1)},be.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},be.prototype.resolve=function(t,e,n){e=e||this.history.current;var r=Q(t,e,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath,a=this.history.base,s=ke(a,i,this.mode);return{location:r,route:o,href:s,normalizedTo:r,resolved:o}},be.prototype.getRoutes=function(){return this.matcher.getRoutes()},be.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==m&&this.history.transitionTo(this.history.getCurrentLocation())},be.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==m&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(be.prototype,_e);var xe=be;function Oe(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}function ke(t,e,n){var r="hash"===n?"#"+e:e;return t?A(t+"/"+r):r}be.install=st,be.version="3.6.5",be.isNavigationFailure=Wt,be.NavigationFailureType=Ft,be.START_LOCATION=m,ct&&window.Vue&&window.Vue.use(be)},9516:function(t,e,n){"use strict";var r=n(6455),o=n.n(r),i=function(){for(var t=0,e=0,n=arguments.length;e=0&&Math.floor(e)===e&&isFinite(t)}function m(t){return a(t)&&"function"===typeof t.then&&"function"===typeof t.catch}function g(t){return null==t?"":Array.isArray(t)||d(t)&&t.toString===p?JSON.stringify(t,null,2):String(t)}function y(t){var e=parseFloat(t);return isNaN(e)?t:e}function w(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(r,1)}}var x=Object.prototype.hasOwnProperty;function O(t,e){return x.call(t,e)}function k(t){var e=Object.create(null);return function(n){var r=e[n];return r||(e[n]=t(n))}}var C=/-(\w)/g,j=k((function(t){return t.replace(C,(function(t,e){return e?e.toUpperCase():""}))})),S=k((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),E=/\B([A-Z])/g,A=k((function(t){return t.replace(E,"-$1").toLowerCase()}));function $(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n}function T(t,e){return t.bind(e)}var P=Function.prototype.bind?T:$;function L(t,e){e=e||0;var n=t.length-e,r=new Array(n);while(n--)r[n]=t[n+e];return r}function I(t,e){for(var n in e)t[n]=e[n];return t}function N(t){for(var e={},n=0;n0,rt=tt&&tt.indexOf("edge/")>0;tt&&tt.indexOf("android");var ot=tt&&/iphone|ipad|ipod|ios/.test(tt);tt&&/chrome\/\d+/.test(tt),tt&&/phantomjs/.test(tt);var it,at=tt&&tt.match(/firefox\/(\d+)/),st={}.watch,ct=!1;if(Q)try{var ut={};Object.defineProperty(ut,"passive",{get:function(){ct=!0}}),window.addEventListener("test-passive",null,ut)}catch(Xa){}var lt=function(){return void 0===it&&(it=!Q&&"undefined"!==typeof n.g&&(n.g["process"]&&"server"===n.g["process"].env.VUE_ENV)),it},ft=Q&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function pt(t){return"function"===typeof t&&/native code/.test(t.toString())}var dt,ht="undefined"!==typeof Symbol&&pt(Symbol)&&"undefined"!==typeof Reflect&&pt(Reflect.ownKeys);dt="undefined"!==typeof Set&&pt(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var vt=null;function mt(t){void 0===t&&(t=null),t||vt&&vt._scope.off(),vt=t,t&&t._scope.on()}var gt=function(){function t(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),yt=function(t){void 0===t&&(t="");var e=new gt;return e.text=t,e.isComment=!0,e};function wt(t){return new gt(void 0,void 0,void 0,String(t))}function bt(t){var e=new gt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var _t=0,xt=[],Ot=function(){for(var t=0;t0&&(r=se(r,"".concat(e||"","_").concat(n)),ae(r[0])&&ae(l)&&(f[c]=wt(l.text+r[0].text),r.shift()),f.push.apply(f,r)):u(r)?ae(l)?f[c]=wt(l.text+r):""!==r&&f.push(wt(r)):ae(r)&&ae(l)?f[c]=wt(l.text+r.text):(s(t._isVList)&&a(r.tag)&&i(r.key)&&a(e)&&(r.key="__vlist".concat(e,"_").concat(n,"__")),f.push(r)));return f}function ce(t,e){var n,r,i,s,c=null;if(o(t)||"string"===typeof t)for(c=new Array(t.length),n=0,r=t.length;n0,s=e?!!e.$stable:!a,c=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(s&&o&&o!==r&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},e)e[u]&&"$"!==u[0]&&(i[u]=Se(t,n,u,e[u]))}else i={};for(var l in n)l in i||(i[l]=Ee(n,l));return e&&Object.isExtensible(e)&&(e._normalized=i),K(i,"$stable",s),K(i,"$key",c),K(i,"$hasNormal",a),i}function Se(t,e,n,r){var i=function(){var e=vt;mt(t);var n=arguments.length?r.apply(null,arguments):r({});n=n&&"object"===typeof n&&!o(n)?[n]:ie(n);var i=n&&n[0];return mt(e),n&&(!i||1===n.length&&i.isComment&&!Ce(i))?void 0:n};return r.proxy&&Object.defineProperty(e,n,{get:i,enumerable:!0,configurable:!0}),i}function Ee(t,e){return function(){return t[e]}}function Ae(t){var e=t.$options,n=e.setup;if(n){var r=t._setupContext=$e(t);mt(t),jt();var o=Ke(n,null,[t._props||Ht({}),r],t,"setup");if(St(),mt(),l(o))e.render=o;else if(f(o))if(t._setupState=o,o.__sfc){var i=t._setupProxy={};for(var a in o)"__sfc"!==a&&Wt(i,o,a)}else for(var a in o)Z(a)||Wt(t,o,a);else 0}}function $e(t){return{get attrs(){if(!t._attrsProxy){var e=t._attrsProxy={};K(e,"_v_attr_proxy",!0),Te(e,t.$attrs,r,t,"$attrs")}return t._attrsProxy},get listeners(){if(!t._listenersProxy){var e=t._listenersProxy={};Te(e,t.$listeners,r,t,"$listeners")}return t._listenersProxy},get slots(){return Le(t)},emit:P(t.$emit,t),expose:function(e){e&&Object.keys(e).forEach((function(n){return Wt(t,e,n)}))}}}function Te(t,e,n,r,o){var i=!1;for(var a in e)a in t?e[a]!==n[a]&&(i=!0):(i=!0,Pe(t,a,r,o));for(var a in t)a in e||(i=!0,delete t[a]);return i}function Pe(t,e,n,r){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[r][e]}})}function Le(t){return t._slotsProxy||Ie(t._slotsProxy={},t.$scopedSlots),t._slotsProxy}function Ie(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}function Ne(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,o=n&&n.context;t.$slots=Oe(e._renderChildren,o),t.$scopedSlots=n?je(t.$parent,n.data.scopedSlots,t.$slots):r,t._c=function(e,n,r,o){return Ve(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return Ve(t,e,n,r,o,!0)};var i=n&&n.data;Mt(t,"$attrs",i&&i.attrs||r,null,!0),Mt(t,"$listeners",e._parentListeners||r,null,!0)}var Re=null;function De(t){xe(t.prototype),t.prototype.$nextTick=function(t){return cn(t,this)},t.prototype._render=function(){var t,e=this,n=e.$options,r=n.render,i=n._parentVnode;i&&e._isMounted&&(e.$scopedSlots=je(e.$parent,i.data.scopedSlots,e.$slots,e.$scopedSlots),e._slotsProxy&&Ie(e._slotsProxy,e.$scopedSlots)),e.$vnode=i;try{mt(e),Re=e,t=r.call(e._renderProxy,e.$createElement)}catch(Xa){Ze(Xa,e,"render"),t=e._vnode}finally{Re=null,mt()}return o(t)&&1===t.length&&(t=t[0]),t instanceof gt||(t=yt()),t.parent=i,t}}function Me(t,e){return(t.__esModule||ht&&"Module"===t[Symbol.toStringTag])&&(t=t.default),f(t)?e.extend(t):t}function Be(t,e,n,r,o){var i=yt();return i.asyncFactory=t,i.asyncMeta={data:e,context:n,children:r,tag:o},i}function Fe(t,e){if(s(t.error)&&a(t.errorComp))return t.errorComp;if(a(t.resolved))return t.resolved;var n=Re;if(n&&a(t.owners)&&-1===t.owners.indexOf(n)&&t.owners.push(n),s(t.loading)&&a(t.loadingComp))return t.loadingComp;if(n&&!a(t.owners)){var r=t.owners=[n],o=!0,c=null,u=null;n.$on("hook:destroyed",(function(){return _(r,n)}));var l=function(t){for(var e=0,n=r.length;e1?L(n):n;for(var r=L(arguments,1),o='event handler for "'.concat(t,'"'),i=0,a=n.length;idocument.createEvent("Event").timeStamp&&(Hn=function(){return Un.now()})}var Vn=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function qn(){var t,e;for(zn=Hn(),Mn=!0,In.sort(Vn),Bn=0;BnBn&&In[n].id>t.id)n--;In.splice(n+1,0,t)}else In.push(t);Dn||(Dn=!0,cn(qn))}}function Yn(t){var e=t.$options.provide;if(e){var n=l(e)?e.call(t):e;if(!f(n))return;for(var r=Xt(t),o=ht?Reflect.ownKeys(n):Object.keys(n),i=0;i-1)if(i&&!O(o,"default"))a=!1;else if(""===a||a===A(t)){var c=Ar(String,o.type);(c<0||s-1)return this;var n=L(arguments,1);return n.unshift(this),l(t.install)?t.install.apply(t,n):l(t)&&t.apply(null,n),e.push(t),this}}function Jr(t){t.mixin=function(t){return this.options=xr(this.options,t),this}}function Qr(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,r=n.cid,o=t._Ctor||(t._Ctor={});if(o[r])return o[r];var i=rr(t)||rr(n.options);var a=function(t){this._init(t)};return a.prototype=Object.create(n.prototype),a.prototype.constructor=a,a.cid=e++,a.options=xr(n.options,t),a["super"]=n,a.options.props&&to(a),a.options.computed&&eo(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,V.forEach((function(t){a[t]=n[t]})),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=t,a.sealedOptions=I({},a.options),o[r]=a,a}}function to(t){var e=t.options.props;for(var n in e)Tr(t.prototype,"_props",n)}function eo(t){var e=t.options.computed;for(var n in e)Mr(t.prototype,n,e[n])}function no(t){V.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&d(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&l(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}function ro(t){return t&&(rr(t.Ctor.options)||t.tag)}function oo(t,e){return o(t)?t.indexOf(e)>-1:"string"===typeof t?t.split(",").indexOf(e)>-1:!!h(t)&&t.test(e)}function io(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!e(s)&&ao(n,i,r,o)}}}function ao(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,_(n,e)}Wr(Yr),Vr(Yr),On(Yr),Sn(Yr),De(Yr);var so=[String,RegExp,Array],co={name:"keep-alive",abstract:!0,props:{include:so,exclude:so,max:[String,Number]},methods:{cacheVNode:function(){var t=this,e=t.cache,n=t.keys,r=t.vnodeToCache,o=t.keyToCache;if(r){var i=r.tag,a=r.componentInstance,s=r.componentOptions;e[o]={name:ro(s),tag:i,componentInstance:a},n.push(o),this.max&&n.length>parseInt(this.max)&&ao(e,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)ao(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){io(t,(function(t){return oo(e,t)}))})),this.$watch("exclude",(function(e){io(t,(function(t){return!oo(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=ze(t),n=e&&e.componentOptions;if(n){var r=ro(n),o=this,i=o.include,a=o.exclude;if(i&&(!r||!oo(i,r))||a&&r&&oo(a,r))return e;var s=this,c=s.cache,u=s.keys,l=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;c[l]?(e.componentInstance=c[l].componentInstance,_(u,l),u.push(l)):(this.vnodeToCache=e,this.keyToCache=l),e.data.keepAlive=!0}return e||t&&t[0]}},uo={KeepAlive:co};function lo(t){var e={get:function(){return W}};Object.defineProperty(t,"config",e),t.util={warn:fr,extend:I,mergeOptions:xr,defineReactive:Mt},t.set=Bt,t.delete=Ft,t.nextTick=cn,t.observable=function(t){return Dt(t),t},t.options=Object.create(null),V.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,I(t.options.components,uo),Xr(t),Jr(t),Qr(t),no(t)}lo(Yr),Object.defineProperty(Yr.prototype,"$isServer",{get:lt}),Object.defineProperty(Yr.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Yr,"FunctionalRenderContext",{value:Qn}),Yr.version=fn;var fo=w("style,class"),po=w("input,textarea,option,select,progress"),ho=function(t,e,n){return"value"===n&&po(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},vo=w("contenteditable,draggable,spellcheck"),mo=w("events,caret,typing,plaintext-only"),go=function(t,e){return xo(e)||"false"===e?"false":"contenteditable"===t&&mo(e)?e:"true"},yo=w("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),wo="http://www.w3.org/1999/xlink",bo=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},_o=function(t){return bo(t)?t.slice(6,t.length):""},xo=function(t){return null==t||!1===t};function Oo(t){var e=t.data,n=t,r=t;while(a(r.componentInstance))r=r.componentInstance._vnode,r&&r.data&&(e=ko(r.data,e));while(a(n=n.parent))n&&n.data&&(e=ko(e,n.data));return Co(e.staticClass,e.class)}function ko(t,e){return{staticClass:jo(t.staticClass,e.staticClass),class:a(t.class)?[t.class,e.class]:e.class}}function Co(t,e){return a(t)||a(e)?jo(t,So(e)):""}function jo(t,e){return t?e?t+" "+e:t:e||""}function So(t){return Array.isArray(t)?Eo(t):f(t)?Ao(t):"string"===typeof t?t:""}function Eo(t){for(var e,n="",r=0,o=t.length;r-1?No[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:No[t]=/HTMLUnknownElement/.test(e.toString())}var Do=w("text,number,password,search,email,tel,url");function Mo(t){if("string"===typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}function Bo(t,e){var n=document.createElement(t);return"select"!==t||e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n}function Fo(t,e){return document.createElementNS($o[t],e)}function zo(t){return document.createTextNode(t)}function Ho(t){return document.createComment(t)}function Uo(t,e,n){t.insertBefore(e,n)}function Vo(t,e){t.removeChild(e)}function qo(t,e){t.appendChild(e)}function Wo(t){return t.parentNode}function Go(t){return t.nextSibling}function Zo(t){return t.tagName}function Ko(t,e){t.textContent=e}function Yo(t,e){t.setAttribute(e,"")}var Xo=Object.freeze({__proto__:null,createElement:Bo,createElementNS:Fo,createTextNode:zo,createComment:Ho,insertBefore:Uo,removeChild:Vo,appendChild:qo,parentNode:Wo,nextSibling:Go,tagName:Zo,setTextContent:Ko,setStyleScope:Yo}),Jo={create:function(t,e){Qo(e)},update:function(t,e){t.data.ref!==e.data.ref&&(Qo(t,!0),Qo(e))},destroy:function(t){Qo(t,!0)}};function Qo(t,e){var n=t.data.ref;if(a(n)){var r=t.context,i=t.componentInstance||t.elm,s=e?null:i,c=e?void 0:i;if(l(n))Ke(n,r,[s],r,"template ref function");else{var u=t.data.refInFor,f="string"===typeof n||"number"===typeof n,p=qt(n),d=r.$refs;if(f||p)if(u){var h=f?d[n]:n.value;e?o(h)&&_(h,i):o(h)?h.includes(i)||h.push(i):f?(d[n]=[i],ti(r,n,d[n])):n.value=[i]}else if(f){if(e&&d[n]!==i)return;d[n]=c,ti(r,n,s)}else if(p){if(e&&n.value!==i)return;n.value=s}else 0}}}function ti(t,e,n){var r=t._setupState;r&&O(r,e)&&(qt(r[e])?r[e].value=n:r[e]=n)}var ei=new gt("",{},[]),ni=["create","activate","update","remove","destroy"];function ri(t,e){return t.key===e.key&&t.asyncFactory===e.asyncFactory&&(t.tag===e.tag&&t.isComment===e.isComment&&a(t.data)===a(e.data)&&oi(t,e)||s(t.isAsyncPlaceholder)&&i(e.asyncFactory.error))}function oi(t,e){if("input"!==t.tag)return!0;var n,r=a(n=t.data)&&a(n=n.attrs)&&n.type,o=a(n=e.data)&&a(n=n.attrs)&&n.type;return r===o||Do(r)&&Do(o)}function ii(t,e,n){var r,o,i={};for(r=e;r<=n;++r)o=t[r].key,a(o)&&(i[o]=r);return i}function ai(t){var e,n,r={},c=t.modules,l=t.nodeOps;for(e=0;ev?(f=i(n[y+1])?null:n[y+1].elm,k(t,f,n,d,y,r)):d>y&&j(e,p,v)}function A(t,e,n,r){for(var o=n;o-1?gi(t,e,n):yo(e)?xo(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):vo(e)?t.setAttribute(e,go(e,n)):bo(e)?xo(n)?t.removeAttributeNS(wo,_o(e)):t.setAttributeNS(wo,e,n):gi(t,e,n)}function gi(t,e,n){if(xo(n))t.removeAttribute(e);else{if(et&&!nt&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var yi={create:vi,update:vi};function wi(t,e){var n=e.elm,r=e.data,o=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=Oo(e),c=n._transitionClasses;a(c)&&(s=jo(s,So(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var bi,_i={create:wi,update:wi},xi="__r",Oi="__c";function ki(t){if(a(t[xi])){var e=et?"change":"input";t[e]=[].concat(t[xi],t[e]||[]),delete t[xi]}a(t[Oi])&&(t.change=[].concat(t[Oi],t.change||[]),delete t[Oi])}function Ci(t,e,n){var r=bi;return function o(){var i=e.apply(null,arguments);null!==i&&Ei(t,o,n,r)}}var ji=Qe&&!(at&&Number(at[1])<=53);function Si(t,e,n,r){if(ji){var o=zn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}bi.addEventListener(t,e,ct?{capture:n,passive:r}:n)}function Ei(t,e,n,r){(r||bi).removeEventListener(t,e._wrapper||e,n)}function Ai(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},r=t.data.on||{};bi=e.elm||t.elm,ki(n),te(n,r,Si,Ei,Ci,e.context),bi=void 0}}var $i,Ti={create:Ai,update:Ai,destroy:function(t){return Ai(t,ei)}};function Pi(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,o=e.elm,c=t.data.domProps||{},u=e.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=e.data.domProps=I({},u)),c)n in u||(o[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===c[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var l=i(r)?"":String(r);Li(o,l)&&(o.value=l)}else if("innerHTML"===n&&Po(o.tagName)&&i(o.innerHTML)){$i=$i||document.createElement("div"),$i.innerHTML="".concat(r,"");var f=$i.firstChild;while(o.firstChild)o.removeChild(o.firstChild);while(f.firstChild)o.appendChild(f.firstChild)}else if(r!==c[n])try{o[n]=r}catch(Xa){}}}}function Li(t,e){return!t.composing&&("OPTION"===t.tagName||Ii(t,e)||Ni(t,e))}function Ii(t,e){var n=!0;try{n=document.activeElement!==t}catch(Xa){}return n&&t.value!==e}function Ni(t,e){var n=t.value,r=t._vModifiers;if(a(r)){if(r.number)return y(n)!==y(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}var Ri={create:Pi,update:Pi},Di=k((function(t){var e={},n=/;(?![^(]*\))/g,r=/:(.+)/;return t.split(n).forEach((function(t){if(t){var n=t.split(r);n.length>1&&(e[n[0].trim()]=n[1].trim())}})),e}));function Mi(t){var e=Bi(t.style);return t.staticStyle?I(t.staticStyle,e):e}function Bi(t){return Array.isArray(t)?N(t):"string"===typeof t?Di(t):t}function Fi(t,e){var n,r={};if(e){var o=t;while(o.componentInstance)o=o.componentInstance._vnode,o&&o.data&&(n=Mi(o.data))&&I(r,n)}(n=Mi(t.data))&&I(r,n);var i=t;while(i=i.parent)i.data&&(n=Mi(i.data))&&I(r,n);return r}var zi,Hi=/^--/,Ui=/\s*!important$/,Vi=function(t,e,n){if(Hi.test(e))t.style.setProperty(e,n);else if(Ui.test(n))t.style.setProperty(A(e),n.replace(Ui,""),"important");else{var r=Wi(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(Ki).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function Xi(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Ki).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{var n=" ".concat(t.getAttribute("class")||""," "),r=" "+e+" ";while(n.indexOf(r)>=0)n=n.replace(r," ");n=n.trim(),n?t.setAttribute("class",n):t.removeAttribute("class")}}function Ji(t){if(t){if("object"===typeof t){var e={};return!1!==t.css&&I(e,Qi(t.name||"v")),I(e,t),e}return"string"===typeof t?Qi(t):void 0}}var Qi=k((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),ta=Q&&!nt,ea="transition",na="animation",ra="transition",oa="transitionend",ia="animation",aa="animationend";ta&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ra="WebkitTransition",oa="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ia="WebkitAnimation",aa="webkitAnimationEnd"));var sa=Q?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function ca(t){sa((function(){sa(t)}))}function ua(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),Yi(t,e))}function la(t,e){t._transitionClasses&&_(t._transitionClasses,e),Xi(t,e)}function fa(t,e,n){var r=da(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===ea?oa:aa,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n=ea,l=a,f=i.length):e===na?u>0&&(n=na,l=u,f=c.length):(l=Math.max(a,u),n=l>0?a>u?ea:na:null,f=n?n===ea?i.length:c.length:0);var p=n===ea&&pa.test(r[ra+"Property"]);return{type:n,timeout:l,propCount:f,hasTransform:p}}function ha(t,e){while(t.length1}function ba(t,e){!0!==e.data.show&&ma(e)}var _a=Q?{create:ba,activate:ba,remove:function(t,e){!0!==t.data.show?ga(t,e):e()}}:{},xa=[yi,_i,Ti,Ri,Zi,_a],Oa=xa.concat(hi),ka=ai({nodeOps:Xo,modules:Oa});nt&&document.addEventListener("selectionchange",(function(){var t=document.activeElement;t&&t.vmodel&&Pa(t,"input")}));var Ca={inserted:function(t,e,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?ee(n,"postpatch",(function(){Ca.componentUpdated(t,e,n)})):ja(t,e,n.context),t._vOptions=[].map.call(t.options,Aa)):("textarea"===n.tag||Do(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("compositionstart",$a),t.addEventListener("compositionend",Ta),t.addEventListener("change",Ta),nt&&(t.vmodel=!0)))},componentUpdated:function(t,e,n){if("select"===n.tag){ja(t,e,n.context);var r=t._vOptions,o=t._vOptions=[].map.call(t.options,Aa);if(o.some((function(t,e){return!B(t,r[e])}))){var i=t.multiple?e.value.some((function(t){return Ea(t,o)})):e.value!==e.oldValue&&Ea(e.value,o);i&&Pa(t,"change")}}}};function ja(t,e,n){Sa(t,e,n),(et||rt)&&setTimeout((function(){Sa(t,e,n)}),0)}function Sa(t,e,n){var r=e.value,o=t.multiple;if(!o||Array.isArray(r)){for(var i,a,s=0,c=t.options.length;s-1,a.selected!==i&&(a.selected=i);else if(B(Aa(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function Ea(t,e){return e.every((function(e){return!B(e,t)}))}function Aa(t){return"_value"in t?t._value:t.value}function $a(t){t.target.composing=!0}function Ta(t){t.target.composing&&(t.target.composing=!1,Pa(t.target,"input"))}function Pa(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function La(t){return!t.componentInstance||t.data&&t.data.transition?t:La(t.componentInstance._vnode)}var Ia={bind:function(t,e,n){var r=e.value;n=La(n);var o=n.data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,ma(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value,o=e.oldValue;if(!r!==!o){n=La(n);var i=n.data&&n.data.transition;i?(n.data.show=!0,r?ma(n,(function(){t.style.display=t.__vOriginalDisplay})):ga(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none"}},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}},Na={model:Ca,show:Ia},Ra={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Da(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Da(ze(e.children)):t}function Ma(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var r in o)e[j(r)]=o[r];return e}function Ba(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}function Fa(t){while(t=t.parent)if(t.data.transition)return!0}function za(t,e){return e.key===t.key&&e.tag===t.tag}var Ha=function(t){return t.tag||Ce(t)},Ua=function(t){return"show"===t.name},Va={name:"transition",props:Ra,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Ha),n.length)){0;var r=this.mode;0;var o=n[0];if(Fa(this.$vnode))return o;var i=Da(o);if(!i)return o;if(this._leaving)return Ba(t,o);var a="__transition-".concat(this._uid,"-");i.key=null==i.key?i.isComment?a+"comment":a+i.tag:u(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Ma(this),c=this._vnode,l=Da(c);if(i.data.directives&&i.data.directives.some(Ua)&&(i.data.show=!0),l&&l.data&&!za(i,l)&&!Ce(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=I({},s);if("out-in"===r)return this._leaving=!0,ee(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Ba(t,o);if("in-out"===r){if(Ce(i))return c;var p,d=function(){p()};ee(s,"afterEnter",d),ee(s,"enterCancelled",d),ee(f,"delayLeave",(function(t){p=t}))}}return o}}},qa=I({tag:String,moveClass:String},Ra);delete qa.mode;var Wa={props:qa,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Cn(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Ma(this),s=0;st.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&void 0!==arguments[0]?arguments[0]:[];return t.reduce((function(t,e){var n=e.split(".").slice(-1)[0];if(t[n])throw new Error("The key `".concat(n,"` is already in use."));return t[n]=e,t}),{})}function l(t){return Object.keys(t).map((function(e){return[e,t[e]]}))}function f(t){return function(){for(var e=arguments.length,n=new Array(e),o=0;o=0&&Math.floor(e)===e&&isFinite(t)}function m(t){return a(t)&&"function"===typeof t.then&&"function"===typeof t.catch}function g(t){return null==t?"":Array.isArray(t)||d(t)&&t.toString===p?JSON.stringify(t,null,2):String(t)}function y(t){var e=parseFloat(t);return isNaN(e)?t:e}function w(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(r,1)}}var x=Object.prototype.hasOwnProperty;function O(t,e){return x.call(t,e)}function k(t){var e=Object.create(null);return function(n){var r=e[n];return r||(e[n]=t(n))}}var C=/-(\w)/g,E=k((function(t){return t.replace(C,(function(t,e){return e?e.toUpperCase():""}))})),j=k((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),S=/\B([A-Z])/g,A=k((function(t){return t.replace(S,"-$1").toLowerCase()}));function T(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n}function $(t,e){return t.bind(e)}var P=Function.prototype.bind?$:T;function L(t,e){e=e||0;var n=t.length-e,r=new Array(n);while(n--)r[n]=t[n+e];return r}function R(t,e){for(var n in e)t[n]=e[n];return t}function N(t){for(var e={},n=0;n0,rt=tt&&tt.indexOf("edge/")>0;tt&&tt.indexOf("android");var ot=tt&&/iphone|ipad|ipod|ios/.test(tt);tt&&/chrome\/\d+/.test(tt),tt&&/phantomjs/.test(tt);var it,at=tt&&tt.match(/firefox\/(\d+)/),st={}.watch,ct=!1;if(Q)try{var ut={};Object.defineProperty(ut,"passive",{get:function(){ct=!0}}),window.addEventListener("test-passive",null,ut)}catch(Za){}var lt=function(){return void 0===it&&(it=!Q&&"undefined"!==typeof n.g&&(n.g["process"]&&"server"===n.g["process"].env.VUE_ENV)),it},ft=Q&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function pt(t){return"function"===typeof t&&/native code/.test(t.toString())}var dt,ht="undefined"!==typeof Symbol&&pt(Symbol)&&"undefined"!==typeof Reflect&&pt(Reflect.ownKeys);dt="undefined"!==typeof Set&&pt(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var vt=null;function mt(t){void 0===t&&(t=null),t||vt&&vt._scope.off(),vt=t,t&&t._scope.on()}var gt=function(){function t(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),yt=function(t){void 0===t&&(t="");var e=new gt;return e.text=t,e.isComment=!0,e};function wt(t){return new gt(void 0,void 0,void 0,String(t))}function bt(t){var e=new gt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var _t=0,xt=[],Ot=function(){for(var t=0;t0&&(r=se(r,"".concat(e||"","_").concat(n)),ae(r[0])&&ae(l)&&(f[c]=wt(l.text+r[0].text),r.shift()),f.push.apply(f,r)):u(r)?ae(l)?f[c]=wt(l.text+r):""!==r&&f.push(wt(r)):ae(r)&&ae(l)?f[c]=wt(l.text+r.text):(s(t._isVList)&&a(r.tag)&&i(r.key)&&a(e)&&(r.key="__vlist".concat(e,"_").concat(n,"__")),f.push(r)));return f}function ce(t,e){var n,r,i,s,c=null;if(o(t)||"string"===typeof t)for(c=new Array(t.length),n=0,r=t.length;n0,s=e?!!e.$stable:!a,c=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(s&&o&&o!==r&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},e)e[u]&&"$"!==u[0]&&(i[u]=je(t,n,u,e[u]))}else i={};for(var l in n)l in i||(i[l]=Se(n,l));return e&&Object.isExtensible(e)&&(e._normalized=i),Y(i,"$stable",s),Y(i,"$key",c),Y(i,"$hasNormal",a),i}function je(t,e,n,r){var i=function(){var e=vt;mt(t);var n=arguments.length?r.apply(null,arguments):r({});n=n&&"object"===typeof n&&!o(n)?[n]:ie(n);var i=n&&n[0];return mt(e),n&&(!i||1===n.length&&i.isComment&&!Ce(i))?void 0:n};return r.proxy&&Object.defineProperty(e,n,{get:i,enumerable:!0,configurable:!0}),i}function Se(t,e){return function(){return t[e]}}function Ae(t){var e=t.$options,n=e.setup;if(n){var r=t._setupContext=Te(t);mt(t),Et();var o=Ye(n,null,[t._props||Ut({}),r],t,"setup");if(jt(),mt(),l(o))e.render=o;else if(f(o))if(t._setupState=o,o.__sfc){var i=t._setupProxy={};for(var a in o)"__sfc"!==a&&Wt(i,o,a)}else for(var a in o)K(a)||Wt(t,o,a);else 0}}function Te(t){return{get attrs(){if(!t._attrsProxy){var e=t._attrsProxy={};Y(e,"_v_attr_proxy",!0),$e(e,t.$attrs,r,t,"$attrs")}return t._attrsProxy},get listeners(){if(!t._listenersProxy){var e=t._listenersProxy={};$e(e,t.$listeners,r,t,"$listeners")}return t._listenersProxy},get slots(){return Le(t)},emit:P(t.$emit,t),expose:function(e){e&&Object.keys(e).forEach((function(n){return Wt(t,e,n)}))}}}function $e(t,e,n,r,o){var i=!1;for(var a in e)a in t?e[a]!==n[a]&&(i=!0):(i=!0,Pe(t,a,r,o));for(var a in t)a in e||(i=!0,delete t[a]);return i}function Pe(t,e,n,r){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[r][e]}})}function Le(t){return t._slotsProxy||Re(t._slotsProxy={},t.$scopedSlots),t._slotsProxy}function Re(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}function Ne(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,o=n&&n.context;t.$slots=Oe(e._renderChildren,o),t.$scopedSlots=n?Ee(t.$parent,n.data.scopedSlots,t.$slots):r,t._c=function(e,n,r,o){return Ve(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return Ve(t,e,n,r,o,!0)};var i=n&&n.data;Dt(t,"$attrs",i&&i.attrs||r,null,!0),Dt(t,"$listeners",e._parentListeners||r,null,!0)}var Ie=null;function Fe(t){xe(t.prototype),t.prototype.$nextTick=function(t){return cn(t,this)},t.prototype._render=function(){var t,e=this,n=e.$options,r=n.render,i=n._parentVnode;i&&e._isMounted&&(e.$scopedSlots=Ee(e.$parent,i.data.scopedSlots,e.$slots,e.$scopedSlots),e._slotsProxy&&Re(e._slotsProxy,e.$scopedSlots)),e.$vnode=i;try{mt(e),Ie=e,t=r.call(e._renderProxy,e.$createElement)}catch(Za){Ke(Za,e,"render"),t=e._vnode}finally{Ie=null,mt()}return o(t)&&1===t.length&&(t=t[0]),t instanceof gt||(t=yt()),t.parent=i,t}}function De(t,e){return(t.__esModule||ht&&"Module"===t[Symbol.toStringTag])&&(t=t.default),f(t)?e.extend(t):t}function Be(t,e,n,r,o){var i=yt();return i.asyncFactory=t,i.asyncMeta={data:e,context:n,children:r,tag:o},i}function Me(t,e){if(s(t.error)&&a(t.errorComp))return t.errorComp;if(a(t.resolved))return t.resolved;var n=Ie;if(n&&a(t.owners)&&-1===t.owners.indexOf(n)&&t.owners.push(n),s(t.loading)&&a(t.loadingComp))return t.loadingComp;if(n&&!a(t.owners)){var r=t.owners=[n],o=!0,c=null,u=null;n.$on("hook:destroyed",(function(){return _(r,n)}));var l=function(t){for(var e=0,n=r.length;e1?L(n):n;for(var r=L(arguments,1),o='event handler for "'.concat(t,'"'),i=0,a=n.length;idocument.createEvent("Event").timeStamp&&(Un=function(){return Hn.now()})}var Vn=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function qn(){var t,e;for(zn=Un(),Dn=!0,Rn.sort(Vn),Bn=0;BnBn&&Rn[n].id>t.id)n--;Rn.splice(n+1,0,t)}else Rn.push(t);Fn||(Fn=!0,cn(qn))}}function Xn(t){var e=t.$options.provide;if(e){var n=l(e)?e.call(t):e;if(!f(n))return;for(var r=Zt(t),o=ht?Reflect.ownKeys(n):Object.keys(n),i=0;i-1)if(i&&!O(o,"default"))a=!1;else if(""===a||a===A(t)){var c=Ar(String,o.type);(c<0||s-1)return this;var n=L(arguments,1);return n.unshift(this),l(t.install)?t.install.apply(t,n):l(t)&&t.apply(null,n),e.push(t),this}}function Jr(t){t.mixin=function(t){return this.options=xr(this.options,t),this}}function Qr(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,r=n.cid,o=t._Ctor||(t._Ctor={});if(o[r])return o[r];var i=rr(t)||rr(n.options);var a=function(t){this._init(t)};return a.prototype=Object.create(n.prototype),a.prototype.constructor=a,a.cid=e++,a.options=xr(n.options,t),a["super"]=n,a.options.props&&to(a),a.options.computed&&eo(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,V.forEach((function(t){a[t]=n[t]})),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=t,a.sealedOptions=R({},a.options),o[r]=a,a}}function to(t){var e=t.options.props;for(var n in e)$r(t.prototype,"_props",n)}function eo(t){var e=t.options.computed;for(var n in e)Dr(t.prototype,n,e[n])}function no(t){V.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&d(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&l(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}function ro(t){return t&&(rr(t.Ctor.options)||t.tag)}function oo(t,e){return o(t)?t.indexOf(e)>-1:"string"===typeof t?t.split(",").indexOf(e)>-1:!!h(t)&&t.test(e)}function io(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!e(s)&&ao(n,i,r,o)}}}function ao(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,_(n,e)}Wr(Xr),Vr(Xr),On(Xr),jn(Xr),Fe(Xr);var so=[String,RegExp,Array],co={name:"keep-alive",abstract:!0,props:{include:so,exclude:so,max:[String,Number]},methods:{cacheVNode:function(){var t=this,e=t.cache,n=t.keys,r=t.vnodeToCache,o=t.keyToCache;if(r){var i=r.tag,a=r.componentInstance,s=r.componentOptions;e[o]={name:ro(s),tag:i,componentInstance:a},n.push(o),this.max&&n.length>parseInt(this.max)&&ao(e,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)ao(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){io(t,(function(t){return oo(e,t)}))})),this.$watch("exclude",(function(e){io(t,(function(t){return!oo(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=ze(t),n=e&&e.componentOptions;if(n){var r=ro(n),o=this,i=o.include,a=o.exclude;if(i&&(!r||!oo(i,r))||a&&r&&oo(a,r))return e;var s=this,c=s.cache,u=s.keys,l=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;c[l]?(e.componentInstance=c[l].componentInstance,_(u,l),u.push(l)):(this.vnodeToCache=e,this.keyToCache=l),e.data.keepAlive=!0}return e||t&&t[0]}},uo={KeepAlive:co};function lo(t){var e={get:function(){return W}};Object.defineProperty(t,"config",e),t.util={warn:fr,extend:R,mergeOptions:xr,defineReactive:Dt},t.set=Bt,t.delete=Mt,t.nextTick=cn,t.observable=function(t){return Ft(t),t},t.options=Object.create(null),V.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,R(t.options.components,uo),Zr(t),Jr(t),Qr(t),no(t)}lo(Xr),Object.defineProperty(Xr.prototype,"$isServer",{get:lt}),Object.defineProperty(Xr.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Xr,"FunctionalRenderContext",{value:Qn}),Xr.version=fn;var fo=w("style,class"),po=w("input,textarea,option,select,progress"),ho=function(t,e,n){return"value"===n&&po(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},vo=w("contenteditable,draggable,spellcheck"),mo=w("events,caret,typing,plaintext-only"),go=function(t,e){return xo(e)||"false"===e?"false":"contenteditable"===t&&mo(e)?e:"true"},yo=w("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),wo="http://www.w3.org/1999/xlink",bo=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},_o=function(t){return bo(t)?t.slice(6,t.length):""},xo=function(t){return null==t||!1===t};function Oo(t){var e=t.data,n=t,r=t;while(a(r.componentInstance))r=r.componentInstance._vnode,r&&r.data&&(e=ko(r.data,e));while(a(n=n.parent))n&&n.data&&(e=ko(e,n.data));return Co(e.staticClass,e.class)}function ko(t,e){return{staticClass:Eo(t.staticClass,e.staticClass),class:a(t.class)?[t.class,e.class]:e.class}}function Co(t,e){return a(t)||a(e)?Eo(t,jo(e)):""}function Eo(t,e){return t?e?t+" "+e:t:e||""}function jo(t){return Array.isArray(t)?So(t):f(t)?Ao(t):"string"===typeof t?t:""}function So(t){for(var e,n="",r=0,o=t.length;r-1?No[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:No[t]=/HTMLUnknownElement/.test(e.toString())}var Fo=w("text,number,password,search,email,tel,url");function Do(t){if("string"===typeof t){var e=document.querySelector(t);return e||document.createElement("div")}return t}function Bo(t,e){var n=document.createElement(t);return"select"!==t||e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n}function Mo(t,e){return document.createElementNS(To[t],e)}function zo(t){return document.createTextNode(t)}function Uo(t){return document.createComment(t)}function Ho(t,e,n){t.insertBefore(e,n)}function Vo(t,e){t.removeChild(e)}function qo(t,e){t.appendChild(e)}function Wo(t){return t.parentNode}function Go(t){return t.nextSibling}function Ko(t){return t.tagName}function Yo(t,e){t.textContent=e}function Xo(t,e){t.setAttribute(e,"")}var Zo=Object.freeze({__proto__:null,createElement:Bo,createElementNS:Mo,createTextNode:zo,createComment:Uo,insertBefore:Ho,removeChild:Vo,appendChild:qo,parentNode:Wo,nextSibling:Go,tagName:Ko,setTextContent:Yo,setStyleScope:Xo}),Jo={create:function(t,e){Qo(e)},update:function(t,e){t.data.ref!==e.data.ref&&(Qo(t,!0),Qo(e))},destroy:function(t){Qo(t,!0)}};function Qo(t,e){var n=t.data.ref;if(a(n)){var r=t.context,i=t.componentInstance||t.elm,s=e?null:i,c=e?void 0:i;if(l(n))Ye(n,r,[s],r,"template ref function");else{var u=t.data.refInFor,f="string"===typeof n||"number"===typeof n,p=qt(n),d=r.$refs;if(f||p)if(u){var h=f?d[n]:n.value;e?o(h)&&_(h,i):o(h)?h.includes(i)||h.push(i):f?(d[n]=[i],ti(r,n,d[n])):n.value=[i]}else if(f){if(e&&d[n]!==i)return;d[n]=c,ti(r,n,s)}else if(p){if(e&&n.value!==i)return;n.value=s}else 0}}}function ti(t,e,n){var r=t._setupState;r&&O(r,e)&&(qt(r[e])?r[e].value=n:r[e]=n)}var ei=new gt("",{},[]),ni=["create","activate","update","remove","destroy"];function ri(t,e){return t.key===e.key&&t.asyncFactory===e.asyncFactory&&(t.tag===e.tag&&t.isComment===e.isComment&&a(t.data)===a(e.data)&&oi(t,e)||s(t.isAsyncPlaceholder)&&i(e.asyncFactory.error))}function oi(t,e){if("input"!==t.tag)return!0;var n,r=a(n=t.data)&&a(n=n.attrs)&&n.type,o=a(n=e.data)&&a(n=n.attrs)&&n.type;return r===o||Fo(r)&&Fo(o)}function ii(t,e,n){var r,o,i={};for(r=e;r<=n;++r)o=t[r].key,a(o)&&(i[o]=r);return i}function ai(t){var e,n,r={},c=t.modules,l=t.nodeOps;for(e=0;ev?(f=i(n[y+1])?null:n[y+1].elm,k(t,f,n,d,y,r)):d>y&&E(e,p,v)}function A(t,e,n,r){for(var o=n;o-1?gi(t,e,n):yo(e)?xo(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):vo(e)?t.setAttribute(e,go(e,n)):bo(e)?xo(n)?t.removeAttributeNS(wo,_o(e)):t.setAttributeNS(wo,e,n):gi(t,e,n)}function gi(t,e,n){if(xo(n))t.removeAttribute(e);else{if(et&&!nt&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var yi={create:vi,update:vi};function wi(t,e){var n=e.elm,r=e.data,o=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=Oo(e),c=n._transitionClasses;a(c)&&(s=Eo(s,jo(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var bi,_i={create:wi,update:wi},xi="__r",Oi="__c";function ki(t){if(a(t[xi])){var e=et?"change":"input";t[e]=[].concat(t[xi],t[e]||[]),delete t[xi]}a(t[Oi])&&(t.change=[].concat(t[Oi],t.change||[]),delete t[Oi])}function Ci(t,e,n){var r=bi;return function o(){var i=e.apply(null,arguments);null!==i&&Si(t,o,n,r)}}var Ei=Qe&&!(at&&Number(at[1])<=53);function ji(t,e,n,r){if(Ei){var o=zn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}bi.addEventListener(t,e,ct?{capture:n,passive:r}:n)}function Si(t,e,n,r){(r||bi).removeEventListener(t,e._wrapper||e,n)}function Ai(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},r=t.data.on||{};bi=e.elm||t.elm,ki(n),te(n,r,ji,Si,Ci,e.context),bi=void 0}}var Ti,$i={create:Ai,update:Ai,destroy:function(t){return Ai(t,ei)}};function Pi(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,o=e.elm,c=t.data.domProps||{},u=e.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=e.data.domProps=R({},u)),c)n in u||(o[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===c[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var l=i(r)?"":String(r);Li(o,l)&&(o.value=l)}else if("innerHTML"===n&&Po(o.tagName)&&i(o.innerHTML)){Ti=Ti||document.createElement("div"),Ti.innerHTML="".concat(r,"");var f=Ti.firstChild;while(o.firstChild)o.removeChild(o.firstChild);while(f.firstChild)o.appendChild(f.firstChild)}else if(r!==c[n])try{o[n]=r}catch(Za){}}}}function Li(t,e){return!t.composing&&("OPTION"===t.tagName||Ri(t,e)||Ni(t,e))}function Ri(t,e){var n=!0;try{n=document.activeElement!==t}catch(Za){}return n&&t.value!==e}function Ni(t,e){var n=t.value,r=t._vModifiers;if(a(r)){if(r.number)return y(n)!==y(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}var Ii={create:Pi,update:Pi},Fi=k((function(t){var e={},n=/;(?![^(]*\))/g,r=/:(.+)/;return t.split(n).forEach((function(t){if(t){var n=t.split(r);n.length>1&&(e[n[0].trim()]=n[1].trim())}})),e}));function Di(t){var e=Bi(t.style);return t.staticStyle?R(t.staticStyle,e):e}function Bi(t){return Array.isArray(t)?N(t):"string"===typeof t?Fi(t):t}function Mi(t,e){var n,r={};if(e){var o=t;while(o.componentInstance)o=o.componentInstance._vnode,o&&o.data&&(n=Di(o.data))&&R(r,n)}(n=Di(t.data))&&R(r,n);var i=t;while(i=i.parent)i.data&&(n=Di(i.data))&&R(r,n);return r}var zi,Ui=/^--/,Hi=/\s*!important$/,Vi=function(t,e,n){if(Ui.test(e))t.style.setProperty(e,n);else if(Hi.test(n))t.style.setProperty(A(e),n.replace(Hi,""),"important");else{var r=Wi(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(Yi).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function Zi(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Yi).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{var n=" ".concat(t.getAttribute("class")||""," "),r=" "+e+" ";while(n.indexOf(r)>=0)n=n.replace(r," ");n=n.trim(),n?t.setAttribute("class",n):t.removeAttribute("class")}}function Ji(t){if(t){if("object"===typeof t){var e={};return!1!==t.css&&R(e,Qi(t.name||"v")),R(e,t),e}return"string"===typeof t?Qi(t):void 0}}var Qi=k((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),ta=Q&&!nt,ea="transition",na="animation",ra="transition",oa="transitionend",ia="animation",aa="animationend";ta&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ra="WebkitTransition",oa="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ia="WebkitAnimation",aa="webkitAnimationEnd"));var sa=Q?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function ca(t){sa((function(){sa(t)}))}function ua(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),Xi(t,e))}function la(t,e){t._transitionClasses&&_(t._transitionClasses,e),Zi(t,e)}function fa(t,e,n){var r=da(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===ea?oa:aa,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n=ea,l=a,f=i.length):e===na?u>0&&(n=na,l=u,f=c.length):(l=Math.max(a,u),n=l>0?a>u?ea:na:null,f=n?n===ea?i.length:c.length:0);var p=n===ea&&pa.test(r[ra+"Property"]);return{type:n,timeout:l,propCount:f,hasTransform:p}}function ha(t,e){while(t.length1}function ba(t,e){!0!==e.data.show&&ma(e)}var _a=Q?{create:ba,activate:ba,remove:function(t,e){!0!==t.data.show?ga(t,e):e()}}:{},xa=[yi,_i,$i,Ii,Ki,_a],Oa=xa.concat(hi),ka=ai({nodeOps:Zo,modules:Oa});nt&&document.addEventListener("selectionchange",(function(){var t=document.activeElement;t&&t.vmodel&&Pa(t,"input")}));var Ca={inserted:function(t,e,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?ee(n,"postpatch",(function(){Ca.componentUpdated(t,e,n)})):Ea(t,e,n.context),t._vOptions=[].map.call(t.options,Aa)):("textarea"===n.tag||Fo(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("compositionstart",Ta),t.addEventListener("compositionend",$a),t.addEventListener("change",$a),nt&&(t.vmodel=!0)))},componentUpdated:function(t,e,n){if("select"===n.tag){Ea(t,e,n.context);var r=t._vOptions,o=t._vOptions=[].map.call(t.options,Aa);if(o.some((function(t,e){return!B(t,r[e])}))){var i=t.multiple?e.value.some((function(t){return Sa(t,o)})):e.value!==e.oldValue&&Sa(e.value,o);i&&Pa(t,"change")}}}};function Ea(t,e,n){ja(t,e,n),(et||rt)&&setTimeout((function(){ja(t,e,n)}),0)}function ja(t,e,n){var r=e.value,o=t.multiple;if(!o||Array.isArray(r)){for(var i,a,s=0,c=t.options.length;s-1,a.selected!==i&&(a.selected=i);else if(B(Aa(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function Sa(t,e){return e.every((function(e){return!B(e,t)}))}function Aa(t){return"_value"in t?t._value:t.value}function Ta(t){t.target.composing=!0}function $a(t){t.target.composing&&(t.target.composing=!1,Pa(t.target,"input"))}function Pa(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function La(t){return!t.componentInstance||t.data&&t.data.transition?t:La(t.componentInstance._vnode)}var Ra={bind:function(t,e,n){var r=e.value;n=La(n);var o=n.data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,ma(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value,o=e.oldValue;if(!r!==!o){n=La(n);var i=n.data&&n.data.transition;i?(n.data.show=!0,r?ma(n,(function(){t.style.display=t.__vOriginalDisplay})):ga(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none"}},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}},Na={model:Ca,show:Ra},Ia={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Fa(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Fa(ze(e.children)):t}function Da(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var r in o)e[E(r)]=o[r];return e}function Ba(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}function Ma(t){while(t=t.parent)if(t.data.transition)return!0}function za(t,e){return e.key===t.key&&e.tag===t.tag}var Ua=function(t){return t.tag||Ce(t)},Ha=function(t){return"show"===t.name},Va={name:"transition",props:Ia,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Ua),n.length)){0;var r=this.mode;0;var o=n[0];if(Ma(this.$vnode))return o;var i=Fa(o);if(!i)return o;if(this._leaving)return Ba(t,o);var a="__transition-".concat(this._uid,"-");i.key=null==i.key?i.isComment?a+"comment":a+i.tag:u(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Da(this),c=this._vnode,l=Fa(c);if(i.data.directives&&i.data.directives.some(Ha)&&(i.data.show=!0),l&&l.data&&!za(i,l)&&!Ce(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=R({},s);if("out-in"===r)return this._leaving=!0,ee(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Ba(t,o);if("in-out"===r){if(Ce(i))return c;var p,d=function(){p()};ee(s,"afterEnter",d),ee(s,"enterCancelled",d),ee(f,"delayLeave",(function(t){p=t}))}}return o}}},qa=R({tag:String,moveClass:String},Ia);delete qa.mode;var Wa={props:qa,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Cn(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Da(this),s=0;st.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&void 0!==arguments[0]?arguments[0]:[];return t.reduce((function(t,e){var n=e.split(".").slice(-1)[0];if(t[n])throw new Error("The key `".concat(n,"` is already in use."));return t[n]=e,t}),{})}function l(t){return Object.keys(t).map((function(e){return[e,t[e]]}))}function f(t){return function(){for(var e=arguments.length,n=new Array(e),o=0;o=2)t.mixin({beforeCreate:r});else{var n=t.prototype._init;t.prototype._init=function(t){void 0===t&&(t={}),t.init=t.init?[r].concat(t.init):r,n.call(this,t)}}function r(){var t=this.$options;t.store?this.$store="function"===typeof t.store?t.store():t.store:t.parent&&t.parent.$store&&(this.$store=t.parent.$store)}}n.d(e,{Se:function(){return N}});var o="undefined"!==typeof window?window:"undefined"!==typeof n.g?n.g:{},i=o.__VUE_DEVTOOLS_GLOBAL_HOOK__;function a(t){i&&(t._devtoolHook=i,i.emit("vuex:init",t),i.on("vuex:travel-to-state",(function(e){t.replaceState(e)})),t.subscribe((function(t,e){i.emit("vuex:mutation",t,e)}),{prepend:!0}),t.subscribeAction((function(t,e){i.emit("vuex:action",t,e)}),{prepend:!0}))}function s(t,e){return t.filter(e)[0]}function c(t,e){if(void 0===e&&(e=[]),null===t||"object"!==typeof t)return t;var n=s(e,(function(e){return e.original===t}));if(n)return n.copy;var r=Array.isArray(t)?[]:{};return e.push({original:t,copy:r}),Object.keys(t).forEach((function(n){r[n]=c(t[n],e)})),r}function u(t,e){Object.keys(t).forEach((function(n){return e(t[n],n)}))}function l(t){return null!==t&&"object"===typeof t}function f(t){return t&&"function"===typeof t.then}function p(t,e){return function(){return t(e)}}var d=function(t,e){this.runtime=e,this._children=Object.create(null),this._rawModule=t;var n=t.state;this.state=("function"===typeof n?n():n)||{}},h={namespaced:{configurable:!0}};h.namespaced.get=function(){return!!this._rawModule.namespaced},d.prototype.addChild=function(t,e){this._children[t]=e},d.prototype.removeChild=function(t){delete this._children[t]},d.prototype.getChild=function(t){return this._children[t]},d.prototype.hasChild=function(t){return t in this._children},d.prototype.update=function(t){this._rawModule.namespaced=t.namespaced,t.actions&&(this._rawModule.actions=t.actions),t.mutations&&(this._rawModule.mutations=t.mutations),t.getters&&(this._rawModule.getters=t.getters)},d.prototype.forEachChild=function(t){u(this._children,t)},d.prototype.forEachGetter=function(t){this._rawModule.getters&&u(this._rawModule.getters,t)},d.prototype.forEachAction=function(t){this._rawModule.actions&&u(this._rawModule.actions,t)},d.prototype.forEachMutation=function(t){this._rawModule.mutations&&u(this._rawModule.mutations,t)},Object.defineProperties(d.prototype,h);var v=function(t){this.register([],t,!1)};function m(t,e,n){if(e.update(n),n.modules)for(var r in n.modules){if(!e.getChild(r))return void 0;m(t.concat(r),e.getChild(r),n.modules[r])}}v.prototype.get=function(t){return t.reduce((function(t,e){return t.getChild(e)}),this.root)},v.prototype.getNamespace=function(t){var e=this.root;return t.reduce((function(t,n){return e=e.getChild(n),t+(e.namespaced?n+"/":"")}),"")},v.prototype.update=function(t){m([],this.root,t)},v.prototype.register=function(t,e,n){var r=this;void 0===n&&(n=!0);var o=new d(e,n);if(0===t.length)this.root=o;else{var i=this.get(t.slice(0,-1));i.addChild(t[t.length-1],o)}e.modules&&u(e.modules,(function(e,o){r.register(t.concat(o),e,n)}))},v.prototype.unregister=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1],r=e.getChild(n);r&&r.runtime&&e.removeChild(n)},v.prototype.isRegistered=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1];return!!e&&e.hasChild(n)};var g;var y=function(t){var e=this;void 0===t&&(t={}),!g&&"undefined"!==typeof window&&window.Vue&&P(window.Vue);var n=t.plugins;void 0===n&&(n=[]);var r=t.strict;void 0===r&&(r=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new v(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new g,this._makeLocalGettersCache=Object.create(null);var o=this,i=this,s=i.dispatch,c=i.commit;this.dispatch=function(t,e){return s.call(o,t,e)},this.commit=function(t,e,n){return c.call(o,t,e,n)},this.strict=r;var u=this._modules.root.state;O(this,u,[],this._modules.root),x(this,u),n.forEach((function(t){return t(e)}));var l=void 0!==t.devtools?t.devtools:g.config.devtools;l&&a(this)},w={state:{configurable:!0}};function b(t,e,n){return e.indexOf(t)<0&&(n&&n.prepend?e.unshift(t):e.push(t)),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function _(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;O(t,n,[],t._modules.root,!0),x(t,n,e)}function x(t,e,n){var r=t._vm;t.getters={},t._makeLocalGettersCache=Object.create(null);var o=t._wrappedGetters,i={};u(o,(function(e,n){i[n]=p(e,t),Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})}));var a=g.config.silent;g.config.silent=!0,t._vm=new g({data:{$$state:e},computed:i}),g.config.silent=a,t.strict&&A(t),r&&(n&&t._withCommit((function(){r._data.$$state=null})),g.nextTick((function(){return r.$destroy()})))}function O(t,e,n,r,o){var i=!n.length,a=t._modules.getNamespace(n);if(r.namespaced&&(t._modulesNamespaceMap[a],t._modulesNamespaceMap[a]=r),!i&&!o){var s=$(e,n.slice(0,-1)),c=n[n.length-1];t._withCommit((function(){g.set(s,c,r.state)}))}var u=r.context=k(t,a,n);r.forEachMutation((function(e,n){var r=a+n;j(t,r,e,u)})),r.forEachAction((function(e,n){var r=e.root?n:a+n,o=e.handler||e;S(t,r,o,u)})),r.forEachGetter((function(e,n){var r=a+n;E(t,r,e,u)})),r.forEachChild((function(r,i){O(t,e,n.concat(i),r,o)}))}function k(t,e,n){var r=""===e,o={dispatch:r?t.dispatch:function(n,r,o){var i=T(n,r,o),a=i.payload,s=i.options,c=i.type;return s&&s.root||(c=e+c),t.dispatch(c,a)},commit:r?t.commit:function(n,r,o){var i=T(n,r,o),a=i.payload,s=i.options,c=i.type;s&&s.root||(c=e+c),t.commit(c,a,s)}};return Object.defineProperties(o,{getters:{get:r?function(){return t.getters}:function(){return C(t,e)}},state:{get:function(){return $(t.state,n)}}}),o}function C(t,e){if(!t._makeLocalGettersCache[e]){var n={},r=e.length;Object.keys(t.getters).forEach((function(o){if(o.slice(0,r)===e){var i=o.slice(r);Object.defineProperty(n,i,{get:function(){return t.getters[o]},enumerable:!0})}})),t._makeLocalGettersCache[e]=n}return t._makeLocalGettersCache[e]}function j(t,e,n,r){var o=t._mutations[e]||(t._mutations[e]=[]);o.push((function(e){n.call(t,r.state,e)}))}function S(t,e,n,r){var o=t._actions[e]||(t._actions[e]=[]);o.push((function(e){var o=n.call(t,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:t.getters,rootState:t.state},e);return f(o)||(o=Promise.resolve(o)),t._devtoolHook?o.catch((function(e){throw t._devtoolHook.emit("vuex:error",e),e})):o}))}function E(t,e,n,r){t._wrappedGetters[e]||(t._wrappedGetters[e]=function(t){return n(r.state,r.getters,t.state,t.getters)})}function A(t){t._vm.$watch((function(){return this._data.$$state}),(function(){0}),{deep:!0,sync:!0})}function $(t,e){return e.reduce((function(t,e){return t[e]}),t)}function T(t,e,n){return l(t)&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function P(t){g&&t===g||(g=t,r(g))}w.state.get=function(){return this._vm._data.$$state},w.state.set=function(t){0},y.prototype.commit=function(t,e,n){var r=this,o=T(t,e,n),i=o.type,a=o.payload,s=(o.options,{type:i,payload:a}),c=this._mutations[i];c&&(this._withCommit((function(){c.forEach((function(t){t(a)}))})),this._subscribers.slice().forEach((function(t){return t(s,r.state)})))},y.prototype.dispatch=function(t,e){var n=this,r=T(t,e),o=r.type,i=r.payload,a={type:o,payload:i},s=this._actions[o];if(s){try{this._actionSubscribers.slice().filter((function(t){return t.before})).forEach((function(t){return t.before(a,n.state)}))}catch(u){0}var c=s.length>1?Promise.all(s.map((function(t){return t(i)}))):s[0](i);return new Promise((function(t,e){c.then((function(e){try{n._actionSubscribers.filter((function(t){return t.after})).forEach((function(t){return t.after(a,n.state)}))}catch(u){0}t(e)}),(function(t){try{n._actionSubscribers.filter((function(t){return t.error})).forEach((function(e){return e.error(a,n.state,t)}))}catch(u){0}e(t)}))}))}},y.prototype.subscribe=function(t,e){return b(t,this._subscribers,e)},y.prototype.subscribeAction=function(t,e){var n="function"===typeof t?{before:t}:t;return b(n,this._actionSubscribers,e)},y.prototype.watch=function(t,e,n){var r=this;return this._watcherVM.$watch((function(){return t(r.state,r.getters)}),e,n)},y.prototype.replaceState=function(t){var e=this;this._withCommit((function(){e._vm._data.$$state=t}))},y.prototype.registerModule=function(t,e,n){void 0===n&&(n={}),"string"===typeof t&&(t=[t]),this._modules.register(t,e),O(this,this.state,t,this._modules.get(t),n.preserveState),x(this,this.state)},y.prototype.unregisterModule=function(t){var e=this;"string"===typeof t&&(t=[t]),this._modules.unregister(t),this._withCommit((function(){var n=$(e.state,t.slice(0,-1));g.delete(n,t[t.length-1])})),_(this)},y.prototype.hasModule=function(t){return"string"===typeof t&&(t=[t]),this._modules.isRegistered(t)},y.prototype.hotUpdate=function(t){this._modules.update(t),_(this,!0)},y.prototype._withCommit=function(t){var e=this._committing;this._committing=!0,t(),this._committing=e},Object.defineProperties(y.prototype,w);var L=F((function(t,e){var n={};return M(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=this.$store.state,n=this.$store.getters;if(t){var r=z(this.$store,"mapState",t);if(!r)return;e=r.context.state,n=r.context.getters}return"function"===typeof o?o.call(this,e,n):e[o]},n[r].vuex=!0})),n})),I=F((function(t,e){var n={};return M(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.commit;if(t){var i=z(this.$store,"mapMutations",t);if(!i)return;r=i.context.commit}return"function"===typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}})),n})),N=F((function(t,e){var n={};return M(e).forEach((function(e){var r=e.key,o=e.val;o=t+o,n[r]=function(){if(!t||z(this.$store,"mapGetters",t))return this.$store.getters[o]},n[r].vuex=!0})),n})),R=F((function(t,e){var n={};return M(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.dispatch;if(t){var i=z(this.$store,"mapActions",t);if(!i)return;r=i.context.dispatch}return"function"===typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}})),n})),D=function(t){return{mapState:L.bind(null,t),mapGetters:N.bind(null,t),mapMutations:I.bind(null,t),mapActions:R.bind(null,t)}};function M(t){return B(t)?Array.isArray(t)?t.map((function(t){return{key:t,val:t}})):Object.keys(t).map((function(e){return{key:e,val:t[e]}})):[]}function B(t){return Array.isArray(t)||l(t)}function F(t){return function(e,n){return"string"!==typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function z(t,e,n){var r=t._modulesNamespaceMap[n];return r}function H(t){void 0===t&&(t={});var e=t.collapsed;void 0===e&&(e=!0);var n=t.filter;void 0===n&&(n=function(t,e,n){return!0});var r=t.transformer;void 0===r&&(r=function(t){return t});var o=t.mutationTransformer;void 0===o&&(o=function(t){return t});var i=t.actionFilter;void 0===i&&(i=function(t,e){return!0});var a=t.actionTransformer;void 0===a&&(a=function(t){return t});var s=t.logMutations;void 0===s&&(s=!0);var u=t.logActions;void 0===u&&(u=!0);var l=t.logger;return void 0===l&&(l=console),function(t){var f=c(t.state);"undefined"!==typeof l&&(s&&t.subscribe((function(t,i){var a=c(i);if(n(t,f,a)){var s=q(),u=o(t),p="mutation "+t.type+s;U(l,p,e),l.log("%c prev state","color: #9E9E9E; font-weight: bold",r(f)),l.log("%c mutation","color: #03A9F4; font-weight: bold",u),l.log("%c next state","color: #4CAF50; font-weight: bold",r(a)),V(l)}f=a})),u&&t.subscribeAction((function(t,n){if(i(t,n)){var r=q(),o=a(t),s="action "+t.type+r;U(l,s,e),l.log("%c action","color: #03A9F4; font-weight: bold",o),V(l)}})))}}function U(t,e,n){var r=n?t.groupCollapsed:t.group;try{r.call(t,e)}catch(o){t.log(e)}}function V(t){try{t.groupEnd()}catch(e){t.log("—— log end ——")}}function q(){var t=new Date;return" @ "+G(t.getHours(),2)+":"+G(t.getMinutes(),2)+":"+G(t.getSeconds(),2)+"."+G(t.getMilliseconds(),3)}function W(t,e){return new Array(e+1).join(t)}function G(t,e){return W("0",e-t.toString().length)+t}var Z={Store:y,install:P,version:"3.6.2",mapState:L,mapMutations:I,mapGetters:N,mapActions:R,createNamespacedHelpers:D,createLogger:H};e.ZP=Z},5226:function(t,e,n){"use strict";function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}n.d(e,{Z:function(){return r}})},4503:function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}n.d(e,{Z:function(){return r}})}}]); \ No newline at end of file +function r(t){var e=Number(t.version.split(".")[0]);if(e>=2)t.mixin({beforeCreate:r});else{var n=t.prototype._init;t.prototype._init=function(t){void 0===t&&(t={}),t.init=t.init?[r].concat(t.init):r,n.call(this,t)}}function r(){var t=this.$options;t.store?this.$store="function"===typeof t.store?t.store():t.store:t.parent&&t.parent.$store&&(this.$store=t.parent.$store)}}n.d(e,{Se:function(){return N}});var o="undefined"!==typeof window?window:"undefined"!==typeof n.g?n.g:{},i=o.__VUE_DEVTOOLS_GLOBAL_HOOK__;function a(t){i&&(t._devtoolHook=i,i.emit("vuex:init",t),i.on("vuex:travel-to-state",(function(e){t.replaceState(e)})),t.subscribe((function(t,e){i.emit("vuex:mutation",t,e)}),{prepend:!0}),t.subscribeAction((function(t,e){i.emit("vuex:action",t,e)}),{prepend:!0}))}function s(t,e){return t.filter(e)[0]}function c(t,e){if(void 0===e&&(e=[]),null===t||"object"!==typeof t)return t;var n=s(e,(function(e){return e.original===t}));if(n)return n.copy;var r=Array.isArray(t)?[]:{};return e.push({original:t,copy:r}),Object.keys(t).forEach((function(n){r[n]=c(t[n],e)})),r}function u(t,e){Object.keys(t).forEach((function(n){return e(t[n],n)}))}function l(t){return null!==t&&"object"===typeof t}function f(t){return t&&"function"===typeof t.then}function p(t,e){return function(){return t(e)}}var d=function(t,e){this.runtime=e,this._children=Object.create(null),this._rawModule=t;var n=t.state;this.state=("function"===typeof n?n():n)||{}},h={namespaced:{configurable:!0}};h.namespaced.get=function(){return!!this._rawModule.namespaced},d.prototype.addChild=function(t,e){this._children[t]=e},d.prototype.removeChild=function(t){delete this._children[t]},d.prototype.getChild=function(t){return this._children[t]},d.prototype.hasChild=function(t){return t in this._children},d.prototype.update=function(t){this._rawModule.namespaced=t.namespaced,t.actions&&(this._rawModule.actions=t.actions),t.mutations&&(this._rawModule.mutations=t.mutations),t.getters&&(this._rawModule.getters=t.getters)},d.prototype.forEachChild=function(t){u(this._children,t)},d.prototype.forEachGetter=function(t){this._rawModule.getters&&u(this._rawModule.getters,t)},d.prototype.forEachAction=function(t){this._rawModule.actions&&u(this._rawModule.actions,t)},d.prototype.forEachMutation=function(t){this._rawModule.mutations&&u(this._rawModule.mutations,t)},Object.defineProperties(d.prototype,h);var v=function(t){this.register([],t,!1)};function m(t,e,n){if(e.update(n),n.modules)for(var r in n.modules){if(!e.getChild(r))return void 0;m(t.concat(r),e.getChild(r),n.modules[r])}}v.prototype.get=function(t){return t.reduce((function(t,e){return t.getChild(e)}),this.root)},v.prototype.getNamespace=function(t){var e=this.root;return t.reduce((function(t,n){return e=e.getChild(n),t+(e.namespaced?n+"/":"")}),"")},v.prototype.update=function(t){m([],this.root,t)},v.prototype.register=function(t,e,n){var r=this;void 0===n&&(n=!0);var o=new d(e,n);if(0===t.length)this.root=o;else{var i=this.get(t.slice(0,-1));i.addChild(t[t.length-1],o)}e.modules&&u(e.modules,(function(e,o){r.register(t.concat(o),e,n)}))},v.prototype.unregister=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1],r=e.getChild(n);r&&r.runtime&&e.removeChild(n)},v.prototype.isRegistered=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1];return!!e&&e.hasChild(n)};var g;var y=function(t){var e=this;void 0===t&&(t={}),!g&&"undefined"!==typeof window&&window.Vue&&P(window.Vue);var n=t.plugins;void 0===n&&(n=[]);var r=t.strict;void 0===r&&(r=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new v(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new g,this._makeLocalGettersCache=Object.create(null);var o=this,i=this,s=i.dispatch,c=i.commit;this.dispatch=function(t,e){return s.call(o,t,e)},this.commit=function(t,e,n){return c.call(o,t,e,n)},this.strict=r;var u=this._modules.root.state;O(this,u,[],this._modules.root),x(this,u),n.forEach((function(t){return t(e)}));var l=void 0!==t.devtools?t.devtools:g.config.devtools;l&&a(this)},w={state:{configurable:!0}};function b(t,e,n){return e.indexOf(t)<0&&(n&&n.prepend?e.unshift(t):e.push(t)),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function _(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;O(t,n,[],t._modules.root,!0),x(t,n,e)}function x(t,e,n){var r=t._vm;t.getters={},t._makeLocalGettersCache=Object.create(null);var o=t._wrappedGetters,i={};u(o,(function(e,n){i[n]=p(e,t),Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})}));var a=g.config.silent;g.config.silent=!0,t._vm=new g({data:{$$state:e},computed:i}),g.config.silent=a,t.strict&&A(t),r&&(n&&t._withCommit((function(){r._data.$$state=null})),g.nextTick((function(){return r.$destroy()})))}function O(t,e,n,r,o){var i=!n.length,a=t._modules.getNamespace(n);if(r.namespaced&&(t._modulesNamespaceMap[a],t._modulesNamespaceMap[a]=r),!i&&!o){var s=T(e,n.slice(0,-1)),c=n[n.length-1];t._withCommit((function(){g.set(s,c,r.state)}))}var u=r.context=k(t,a,n);r.forEachMutation((function(e,n){var r=a+n;E(t,r,e,u)})),r.forEachAction((function(e,n){var r=e.root?n:a+n,o=e.handler||e;j(t,r,o,u)})),r.forEachGetter((function(e,n){var r=a+n;S(t,r,e,u)})),r.forEachChild((function(r,i){O(t,e,n.concat(i),r,o)}))}function k(t,e,n){var r=""===e,o={dispatch:r?t.dispatch:function(n,r,o){var i=$(n,r,o),a=i.payload,s=i.options,c=i.type;return s&&s.root||(c=e+c),t.dispatch(c,a)},commit:r?t.commit:function(n,r,o){var i=$(n,r,o),a=i.payload,s=i.options,c=i.type;s&&s.root||(c=e+c),t.commit(c,a,s)}};return Object.defineProperties(o,{getters:{get:r?function(){return t.getters}:function(){return C(t,e)}},state:{get:function(){return T(t.state,n)}}}),o}function C(t,e){if(!t._makeLocalGettersCache[e]){var n={},r=e.length;Object.keys(t.getters).forEach((function(o){if(o.slice(0,r)===e){var i=o.slice(r);Object.defineProperty(n,i,{get:function(){return t.getters[o]},enumerable:!0})}})),t._makeLocalGettersCache[e]=n}return t._makeLocalGettersCache[e]}function E(t,e,n,r){var o=t._mutations[e]||(t._mutations[e]=[]);o.push((function(e){n.call(t,r.state,e)}))}function j(t,e,n,r){var o=t._actions[e]||(t._actions[e]=[]);o.push((function(e){var o=n.call(t,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:t.getters,rootState:t.state},e);return f(o)||(o=Promise.resolve(o)),t._devtoolHook?o.catch((function(e){throw t._devtoolHook.emit("vuex:error",e),e})):o}))}function S(t,e,n,r){t._wrappedGetters[e]||(t._wrappedGetters[e]=function(t){return n(r.state,r.getters,t.state,t.getters)})}function A(t){t._vm.$watch((function(){return this._data.$$state}),(function(){0}),{deep:!0,sync:!0})}function T(t,e){return e.reduce((function(t,e){return t[e]}),t)}function $(t,e,n){return l(t)&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function P(t){g&&t===g||(g=t,r(g))}w.state.get=function(){return this._vm._data.$$state},w.state.set=function(t){0},y.prototype.commit=function(t,e,n){var r=this,o=$(t,e,n),i=o.type,a=o.payload,s=(o.options,{type:i,payload:a}),c=this._mutations[i];c&&(this._withCommit((function(){c.forEach((function(t){t(a)}))})),this._subscribers.slice().forEach((function(t){return t(s,r.state)})))},y.prototype.dispatch=function(t,e){var n=this,r=$(t,e),o=r.type,i=r.payload,a={type:o,payload:i},s=this._actions[o];if(s){try{this._actionSubscribers.slice().filter((function(t){return t.before})).forEach((function(t){return t.before(a,n.state)}))}catch(u){0}var c=s.length>1?Promise.all(s.map((function(t){return t(i)}))):s[0](i);return new Promise((function(t,e){c.then((function(e){try{n._actionSubscribers.filter((function(t){return t.after})).forEach((function(t){return t.after(a,n.state)}))}catch(u){0}t(e)}),(function(t){try{n._actionSubscribers.filter((function(t){return t.error})).forEach((function(e){return e.error(a,n.state,t)}))}catch(u){0}e(t)}))}))}},y.prototype.subscribe=function(t,e){return b(t,this._subscribers,e)},y.prototype.subscribeAction=function(t,e){var n="function"===typeof t?{before:t}:t;return b(n,this._actionSubscribers,e)},y.prototype.watch=function(t,e,n){var r=this;return this._watcherVM.$watch((function(){return t(r.state,r.getters)}),e,n)},y.prototype.replaceState=function(t){var e=this;this._withCommit((function(){e._vm._data.$$state=t}))},y.prototype.registerModule=function(t,e,n){void 0===n&&(n={}),"string"===typeof t&&(t=[t]),this._modules.register(t,e),O(this,this.state,t,this._modules.get(t),n.preserveState),x(this,this.state)},y.prototype.unregisterModule=function(t){var e=this;"string"===typeof t&&(t=[t]),this._modules.unregister(t),this._withCommit((function(){var n=T(e.state,t.slice(0,-1));g.delete(n,t[t.length-1])})),_(this)},y.prototype.hasModule=function(t){return"string"===typeof t&&(t=[t]),this._modules.isRegistered(t)},y.prototype.hotUpdate=function(t){this._modules.update(t),_(this,!0)},y.prototype._withCommit=function(t){var e=this._committing;this._committing=!0,t(),this._committing=e},Object.defineProperties(y.prototype,w);var L=M((function(t,e){var n={};return D(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=this.$store.state,n=this.$store.getters;if(t){var r=z(this.$store,"mapState",t);if(!r)return;e=r.context.state,n=r.context.getters}return"function"===typeof o?o.call(this,e,n):e[o]},n[r].vuex=!0})),n})),R=M((function(t,e){var n={};return D(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.commit;if(t){var i=z(this.$store,"mapMutations",t);if(!i)return;r=i.context.commit}return"function"===typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}})),n})),N=M((function(t,e){var n={};return D(e).forEach((function(e){var r=e.key,o=e.val;o=t+o,n[r]=function(){if(!t||z(this.$store,"mapGetters",t))return this.$store.getters[o]},n[r].vuex=!0})),n})),I=M((function(t,e){var n={};return D(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=[],n=arguments.length;while(n--)e[n]=arguments[n];var r=this.$store.dispatch;if(t){var i=z(this.$store,"mapActions",t);if(!i)return;r=i.context.dispatch}return"function"===typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}})),n})),F=function(t){return{mapState:L.bind(null,t),mapGetters:N.bind(null,t),mapMutations:R.bind(null,t),mapActions:I.bind(null,t)}};function D(t){return B(t)?Array.isArray(t)?t.map((function(t){return{key:t,val:t}})):Object.keys(t).map((function(e){return{key:e,val:t[e]}})):[]}function B(t){return Array.isArray(t)||l(t)}function M(t){return function(e,n){return"string"!==typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function z(t,e,n){var r=t._modulesNamespaceMap[n];return r}function U(t){void 0===t&&(t={});var e=t.collapsed;void 0===e&&(e=!0);var n=t.filter;void 0===n&&(n=function(t,e,n){return!0});var r=t.transformer;void 0===r&&(r=function(t){return t});var o=t.mutationTransformer;void 0===o&&(o=function(t){return t});var i=t.actionFilter;void 0===i&&(i=function(t,e){return!0});var a=t.actionTransformer;void 0===a&&(a=function(t){return t});var s=t.logMutations;void 0===s&&(s=!0);var u=t.logActions;void 0===u&&(u=!0);var l=t.logger;return void 0===l&&(l=console),function(t){var f=c(t.state);"undefined"!==typeof l&&(s&&t.subscribe((function(t,i){var a=c(i);if(n(t,f,a)){var s=q(),u=o(t),p="mutation "+t.type+s;H(l,p,e),l.log("%c prev state","color: #9E9E9E; font-weight: bold",r(f)),l.log("%c mutation","color: #03A9F4; font-weight: bold",u),l.log("%c next state","color: #4CAF50; font-weight: bold",r(a)),V(l)}f=a})),u&&t.subscribeAction((function(t,n){if(i(t,n)){var r=q(),o=a(t),s="action "+t.type+r;H(l,s,e),l.log("%c action","color: #03A9F4; font-weight: bold",o),V(l)}})))}}function H(t,e,n){var r=n?t.groupCollapsed:t.group;try{r.call(t,e)}catch(o){t.log(e)}}function V(t){try{t.groupEnd()}catch(e){t.log("—— log end ——")}}function q(){var t=new Date;return" @ "+G(t.getHours(),2)+":"+G(t.getMinutes(),2)+":"+G(t.getSeconds(),2)+"."+G(t.getMilliseconds(),3)}function W(t,e){return new Array(e+1).join(t)}function G(t,e){return W("0",e-t.toString().length)+t}var K={Store:y,install:P,version:"3.6.2",mapState:L,mapMutations:R,mapGetters:N,mapActions:I,createNamespacedHelpers:F,createLogger:U};e.ZP=K},509:function(t,e,n){"use strict";var r=n(9985),o=n(3691),i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+" is not a function")}},5027:function(t,e,n){"use strict";var r=n(8999),o=String,i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+" is not an object")}},4328:function(t,e,n){"use strict";var r=n(5290),o=n(7578),i=n(6310),a=function(t){return function(e,n,a){var s,c=r(e),u=i(c),l=o(a,u);if(t&&n!==n){while(u>l)if(s=c[l++],s!==s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},5649:function(t,e,n){"use strict";var r=n(7697),o=n(2297),i=TypeError,a=Object.getOwnPropertyDescriptor,s=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(t){return t instanceof TypeError}}();t.exports=s?function(t,e){if(o(t)&&!a(t,"length").writable)throw new i("Cannot set read only .length");return t.length=e}:function(t,e){return t.length=e}},6648:function(t,e,n){"use strict";var r=n(8844),o=r({}.toString),i=r("".slice);t.exports=function(t){return i(o(t),8,-1)}},8758:function(t,e,n){"use strict";var r=n(6812),o=n(9152),i=n(2474),a=n(2560);t.exports=function(t,e,n){for(var s=o(e),c=a.f,u=i.f,l=0;ln)throw e("Maximum allowed index exceeded");return t}},71:function(t){"use strict";t.exports="undefined"!=typeof navigator&&String(navigator.userAgent)||""},3615:function(t,e,n){"use strict";var r,o,i=n(9037),a=n(71),s=i.process,c=i.Deno,u=s&&s.versions||c&&c.version,l=u&&u.v8;l&&(r=l.split("."),o=r[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(r=a.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/),r&&(o=+r[1]))),t.exports=o},2739:function(t){"use strict";t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},9989:function(t,e,n){"use strict";var r=n(9037),o=n(2474).f,i=n(5773),a=n(1880),s=n(5014),c=n(8758),u=n(5266);t.exports=function(t,e){var n,l,f,p,d,h,v=t.target,m=t.global,g=t.stat;if(l=m?r:g?r[v]||s(v,{}):r[v]&&r[v].prototype,l)for(f in e){if(d=e[f],t.dontCallGetSet?(h=o(l,f),p=h&&h.value):p=l[f],n=u(m?f:v+(g?".":"#")+f,t.forced),!n&&void 0!==p){if(typeof d==typeof p)continue;c(d,p)}(t.sham||p&&p.sham)&&i(d,"sham",!0),a(l,f,d,t)}}},3689:function(t){"use strict";t.exports=function(t){try{return!!t()}catch(e){return!0}}},7215:function(t,e,n){"use strict";var r=n(3689);t.exports=!r((function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}))},2615:function(t,e,n){"use strict";var r=n(7215),o=Function.prototype.call;t.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},1236:function(t,e,n){"use strict";var r=n(7697),o=n(6812),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,s=o(i,"name"),c=s&&"something"===function(){}.name,u=s&&(!r||r&&a(i,"name").configurable);t.exports={EXISTS:s,PROPER:c,CONFIGURABLE:u}},8844:function(t,e,n){"use strict";var r=n(7215),o=Function.prototype,i=o.call,a=r&&o.bind.bind(i,i);t.exports=r?a:function(t){return function(){return i.apply(t,arguments)}}},6058:function(t,e,n){"use strict";var r=n(9037),o=n(9985),i=function(t){return o(t)?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t]):r[t]&&r[t][e]}},4849:function(t,e,n){"use strict";var r=n(509),o=n(981);t.exports=function(t,e){var n=t[e];return o(n)?void 0:r(n)}},9037:function(t,e,n){"use strict";var r=function(t){return t&&t.Math===Math&&t};t.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||r("object"==typeof this&&this)||function(){return this}()||Function("return this")()},6812:function(t,e,n){"use strict";var r=n(8844),o=n(690),i=r({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return i(o(t),e)}},7248:function(t){"use strict";t.exports={}},8506:function(t,e,n){"use strict";var r=n(7697),o=n(3689),i=n(6420);t.exports=!r&&!o((function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},4413:function(t,e,n){"use strict";var r=n(8844),o=n(3689),i=n(6648),a=Object,s=r("".split);t.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(t){return"String"===i(t)?s(t,""):a(t)}:a},6738:function(t,e,n){"use strict";var r=n(8844),o=n(9985),i=n(4091),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(t){return a(t)}),t.exports=i.inspectSource},618:function(t,e,n){"use strict";var r,o,i,a=n(9834),s=n(9037),c=n(8999),u=n(5773),l=n(6812),f=n(4091),p=n(2713),d=n(7248),h="Object already initialized",v=s.TypeError,m=s.WeakMap,g=function(t){return i(t)?o(t):r(t,{})},y=function(t){return function(e){var n;if(!c(e)||(n=o(e)).type!==t)throw new v("Incompatible receiver, "+t+" required");return n}};if(a||f.state){var w=f.state||(f.state=new m);w.get=w.get,w.has=w.has,w.set=w.set,r=function(t,e){if(w.has(t))throw new v(h);return e.facade=t,w.set(t,e),e},o=function(t){return w.get(t)||{}},i=function(t){return w.has(t)}}else{var b=p("state");d[b]=!0,r=function(t,e){if(l(t,b))throw new v(h);return e.facade=t,u(t,b,e),e},o=function(t){return l(t,b)?t[b]:{}},i=function(t){return l(t,b)}}t.exports={set:r,get:o,has:i,enforce:g,getterFor:y}},2297:function(t,e,n){"use strict";var r=n(6648);t.exports=Array.isArray||function(t){return"Array"===r(t)}},9985:function(t){"use strict";var e="object"==typeof document&&document.all;t.exports="undefined"==typeof e&&void 0!==e?function(t){return"function"==typeof t||t===e}:function(t){return"function"==typeof t}},5266:function(t,e,n){"use strict";var r=n(3689),o=n(9985),i=/#|\.prototype\./,a=function(t,e){var n=c[s(t)];return n===l||n!==u&&(o(e)?r(e):!!e)},s=a.normalize=function(t){return String(t).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",l=a.POLYFILL="P";t.exports=a},981:function(t){"use strict";t.exports=function(t){return null===t||void 0===t}},8999:function(t,e,n){"use strict";var r=n(9985);t.exports=function(t){return"object"==typeof t?null!==t:r(t)}},3931:function(t){"use strict";t.exports=!1},734:function(t,e,n){"use strict";var r=n(6058),o=n(9985),i=n(3622),a=n(9525),s=Object;t.exports=a?function(t){return"symbol"==typeof t}:function(t){var e=r("Symbol");return o(e)&&i(e.prototype,s(t))}},6310:function(t,e,n){"use strict";var r=n(3126);t.exports=function(t){return r(t.length)}},8702:function(t,e,n){"use strict";var r=n(8844),o=n(3689),i=n(9985),a=n(6812),s=n(7697),c=n(1236).CONFIGURABLE,u=n(6738),l=n(618),f=l.enforce,p=l.get,d=String,h=Object.defineProperty,v=r("".slice),m=r("".replace),g=r([].join),y=s&&!o((function(){return 8!==h((function(){}),"length",{value:8}).length})),w=String(String).split("String"),b=t.exports=function(t,e,n){"Symbol("===v(d(e),0,7)&&(e="["+m(d(e),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),n&&n.getter&&(e="get "+e),n&&n.setter&&(e="set "+e),(!a(t,"name")||c&&t.name!==e)&&(s?h(t,"name",{value:e,configurable:!0}):t.name=e),y&&n&&a(n,"arity")&&t.length!==n.arity&&h(t,"length",{value:n.arity});try{n&&a(n,"constructor")&&n.constructor?s&&h(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(o){}var r=f(t);return a(r,"source")||(r.source=g(w,"string"==typeof e?e:"")),t};Function.prototype.toString=b((function(){return i(this)&&p(this).source||u(this)}),"toString")},8828:function(t){"use strict";var e=Math.ceil,n=Math.floor;t.exports=Math.trunc||function(t){var r=+t;return(r>0?n:e)(r)}},2560:function(t,e,n){"use strict";var r=n(7697),o=n(8506),i=n(5648),a=n(5027),s=n(8360),c=TypeError,u=Object.defineProperty,l=Object.getOwnPropertyDescriptor,f="enumerable",p="configurable",d="writable";e.f=r?i?function(t,e,n){if(a(t),e=s(e),a(n),"function"===typeof t&&"prototype"===e&&"value"in n&&d in n&&!n[d]){var r=l(t,e);r&&r[d]&&(t[e]=n.value,n={configurable:p in n?n[p]:r[p],enumerable:f in n?n[f]:r[f],writable:!1})}return u(t,e,n)}:u:function(t,e,n){if(a(t),e=s(e),a(n),o)try{return u(t,e,n)}catch(r){}if("get"in n||"set"in n)throw new c("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},2474:function(t,e,n){"use strict";var r=n(7697),o=n(2615),i=n(9556),a=n(5684),s=n(5290),c=n(8360),u=n(6812),l=n(8506),f=Object.getOwnPropertyDescriptor;e.f=r?f:function(t,e){if(t=s(t),e=c(e),l)try{return f(t,e)}catch(n){}if(u(t,e))return a(!o(i.f,t,e),t[e])}},2741:function(t,e,n){"use strict";var r=n(4948),o=n(2739),i=o.concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,i)}},7518:function(t,e){"use strict";e.f=Object.getOwnPropertySymbols},3622:function(t,e,n){"use strict";var r=n(8844);t.exports=r({}.isPrototypeOf)},4948:function(t,e,n){"use strict";var r=n(8844),o=n(6812),i=n(5290),a=n(4328).indexOf,s=n(7248),c=r([].push);t.exports=function(t,e){var n,r=i(t),u=0,l=[];for(n in r)!o(s,n)&&o(r,n)&&c(l,n);while(e.length>u)o(r,n=e[u++])&&(~a(l,n)||c(l,n));return l}},9556:function(t,e){"use strict";var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);e.f=o?function(t){var e=r(this,t);return!!e&&e.enumerable}:n},5899:function(t,e,n){"use strict";var r=n(2615),o=n(9985),i=n(8999),a=TypeError;t.exports=function(t,e){var n,s;if("string"===e&&o(n=t.toString)&&!i(s=r(n,t)))return s;if(o(n=t.valueOf)&&!i(s=r(n,t)))return s;if("string"!==e&&o(n=t.toString)&&!i(s=r(n,t)))return s;throw new a("Can't convert object to primitive value")}},9152:function(t,e,n){"use strict";var r=n(6058),o=n(8844),i=n(2741),a=n(7518),s=n(5027),c=o([].concat);t.exports=r("Reflect","ownKeys")||function(t){var e=i.f(s(t)),n=a.f;return n?c(e,n(t)):e}},4684:function(t,e,n){"use strict";var r=n(981),o=TypeError;t.exports=function(t){if(r(t))throw new o("Can't call method on "+t);return t}},2713:function(t,e,n){"use strict";var r=n(3430),o=n(4630),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},4091:function(t,e,n){"use strict";var r=n(9037),o=n(5014),i="__core-js_shared__",a=r[i]||o(i,{});t.exports=a},3430:function(t,e,n){"use strict";var r=n(3931),o=n(4091);(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.35.1",mode:r?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.35.1/LICENSE",source:"https://github.com/zloirock/core-js"})},146:function(t,e,n){"use strict";var r=n(3615),o=n(3689),i=n(9037),a=i.String;t.exports=!!Object.getOwnPropertySymbols&&!o((function(){var t=Symbol("symbol detection");return!a(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},7578:function(t,e,n){"use strict";var r=n(8700),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},5290:function(t,e,n){"use strict";var r=n(4413),o=n(4684);t.exports=function(t){return r(o(t))}},8700:function(t,e,n){"use strict";var r=n(8828);t.exports=function(t){var e=+t;return e!==e||0===e?0:r(e)}},3126:function(t,e,n){"use strict";var r=n(8700),o=Math.min;t.exports=function(t){var e=r(t);return e>0?o(e,9007199254740991):0}},690:function(t,e,n){"use strict";var r=n(4684),o=Object;t.exports=function(t){return o(r(t))}},8732:function(t,e,n){"use strict";var r=n(2615),o=n(8999),i=n(734),a=n(4849),s=n(5899),c=n(4201),u=TypeError,l=c("toPrimitive");t.exports=function(t,e){if(!o(t)||i(t))return t;var n,c=a(t,l);if(c){if(void 0===e&&(e="default"),n=r(c,t,e),!o(n)||i(n))return n;throw new u("Can't convert object to primitive value")}return void 0===e&&(e="number"),s(t,e)}},8360:function(t,e,n){"use strict";var r=n(8732),o=n(734);t.exports=function(t){var e=r(t,"string");return o(e)?e:e+""}},3691:function(t){"use strict";var e=String;t.exports=function(t){try{return e(t)}catch(n){return"Object"}}},4630:function(t,e,n){"use strict";var r=n(8844),o=0,i=Math.random(),a=r(1..toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+a(++o+i,36)}},9525:function(t,e,n){"use strict";var r=n(146);t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},5648:function(t,e,n){"use strict";var r=n(7697),o=n(3689);t.exports=r&&o((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},9834:function(t,e,n){"use strict";var r=n(9037),o=n(9985),i=r.WeakMap;t.exports=o(i)&&/native code/.test(String(i))},4201:function(t,e,n){"use strict";var r=n(9037),o=n(3430),i=n(6812),a=n(4630),s=n(146),c=n(9525),u=r.Symbol,l=o("wks"),f=c?u["for"]||u:u&&u.withoutSetter||a;t.exports=function(t){return i(l,t)||(l[t]=s&&i(u,t)?u[t]:f("Symbol."+t)),l[t]}},560:function(t,e,n){"use strict";var r=n(9989),o=n(690),i=n(6310),a=n(5649),s=n(5565),c=n(3689),u=c((function(){return 4294967297!==[].push.call({length:4294967296},1)})),l=function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(t){return t instanceof TypeError}},f=u||!l();r({target:"Array",proto:!0,arity:1,forced:f},{push:function(t){var e=o(this),n=i(e),r=arguments.length;s(n+r);for(var c=0;ce=>{const n=i.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),c=t=>(t=t.toLowerCase(),e=>s(e)===t),u=t=>e=>typeof e===t,{isArray:l}=Array,f=u("undefined");function p(t){return null!==t&&!f(t)&&null!==t.constructor&&!f(t.constructor)&&m(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const d=c("ArrayBuffer");function h(t){let e;return e="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&d(t.buffer),e}const v=u("string"),m=u("function"),g=u("number"),y=t=>null!==t&&"object"===typeof t,w=t=>!0===t||!1===t,b=t=>{if("object"!==s(t))return!1;const e=a(t);return(null===e||e===Object.prototype||null===Object.getPrototypeOf(e))&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},_=c("Date"),x=c("File"),O=c("Blob"),k=c("FileList"),C=t=>y(t)&&m(t.pipe),E=t=>{let e;return t&&("function"===typeof FormData&&t instanceof FormData||m(t.append)&&("formdata"===(e=s(t))||"object"===e&&m(t.toString)&&"[object FormData]"===t.toString()))},j=c("URLSearchParams"),S=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function A(t,e,{allOwnKeys:n=!1}={}){if(null===t||"undefined"===typeof t)return;let r,o;if("object"!==typeof t&&(t=[t]),l(t))for(r=0,o=t.length;r0)if(r=n[o],e===r.toLowerCase())return r;return null}const $=(()=>"undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:global)(),P=t=>!f(t)&&t!==$;function L(){const{caseless:t}=P(this)&&this||{},e={},n=(n,r)=>{const o=t&&T(e,r)||r;b(e[o])&&b(n)?e[o]=L(e[o],n):b(n)?e[o]=L({},n):l(n)?e[o]=n.slice():e[o]=n};for(let r=0,o=arguments.length;r(A(e,((e,r)=>{n&&m(e)?t[r]=o(e,n):t[r]=e}),{allOwnKeys:r}),t),N=t=>(65279===t.charCodeAt(0)&&(t=t.slice(1)),t),I=(t,e,n,r)=>{t.prototype=Object.create(e.prototype,r),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},F=(t,e,n,r)=>{let o,i,s;const c={};if(e=e||{},null==t)return e;do{o=Object.getOwnPropertyNames(t),i=o.length;while(i-- >0)s=o[i],r&&!r(s,t,e)||c[s]||(e[s]=t[s],c[s]=!0);t=!1!==n&&a(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},D=(t,e,n)=>{t=String(t),(void 0===n||n>t.length)&&(n=t.length),n-=e.length;const r=t.indexOf(e,n);return-1!==r&&r===n},B=t=>{if(!t)return null;if(l(t))return t;let e=t.length;if(!g(e))return null;const n=new Array(e);while(e-- >0)n[e]=t[e];return n},M=(t=>e=>t&&e instanceof t)("undefined"!==typeof Uint8Array&&a(Uint8Array)),z=(t,e)=>{const n=t&&t[Symbol.iterator],r=n.call(t);let o;while((o=r.next())&&!o.done){const n=o.value;e.call(t,n[0],n[1])}},U=(t,e)=>{let n;const r=[];while(null!==(n=t.exec(e)))r.push(n);return r},H=c("HTMLFormElement"),V=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(t,e,n){return e.toUpperCase()+n})),q=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),W=c("RegExp"),G=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),r={};A(n,((n,o)=>{let i;!1!==(i=e(n,o,t))&&(r[o]=i||n)})),Object.defineProperties(t,r)},K=t=>{G(t,((e,n)=>{if(m(t)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=t[n];m(r)&&(e.enumerable=!1,"writable"in e?e.writable=!1:e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},Y=(t,e)=>{const n={},r=t=>{t.forEach((t=>{n[t]=!0}))};return l(t)?r(t):r(String(t).split(e)),n},X=()=>{},Z=(t,e)=>(t=+t,Number.isFinite(t)?t:e),J="abcdefghijklmnopqrstuvwxyz",Q="0123456789",tt={DIGIT:Q,ALPHA:J,ALPHA_DIGIT:J+J.toUpperCase()+Q},et=(t=16,e=tt.ALPHA_DIGIT)=>{let n="";const{length:r}=e;while(t--)n+=e[Math.random()*r|0];return n};function nt(t){return!!(t&&m(t.append)&&"FormData"===t[Symbol.toStringTag]&&t[Symbol.iterator])}const rt=t=>{const e=new Array(10),n=(t,r)=>{if(y(t)){if(e.indexOf(t)>=0)return;if(!("toJSON"in t)){e[r]=t;const o=l(t)?[]:{};return A(t,((t,e)=>{const i=n(t,r+1);!f(i)&&(o[e]=i)})),e[r]=void 0,o}}return t};return n(t,0)},ot=c("AsyncFunction"),it=t=>t&&(y(t)||m(t))&&m(t.then)&&m(t.catch);var at={isArray:l,isArrayBuffer:d,isBuffer:p,isFormData:E,isArrayBufferView:h,isString:v,isNumber:g,isBoolean:w,isObject:y,isPlainObject:b,isUndefined:f,isDate:_,isFile:x,isBlob:O,isRegExp:W,isFunction:m,isStream:C,isURLSearchParams:j,isTypedArray:M,isFileList:k,forEach:A,merge:L,extend:R,trim:S,stripBOM:N,inherits:I,toFlatObject:F,kindOf:s,kindOfTest:c,endsWith:D,toArray:B,forEachEntry:z,matchAll:U,isHTMLForm:H,hasOwnProperty:q,hasOwnProp:q,reduceDescriptors:G,freezeMethods:K,toObjectSet:Y,toCamelCase:V,noop:X,toFiniteNumber:Z,findKey:T,global:$,isContextDefined:P,ALPHABET:tt,generateString:et,isSpecCompliantForm:nt,toJSONObject:rt,isAsyncFn:ot,isThenable:it};function st(t,e,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o)}at.inherits(st,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:at.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const ct=st.prototype,ut={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((t=>{ut[t]={value:t}})),Object.defineProperties(st,ut),Object.defineProperty(ct,"isAxiosError",{value:!0}),st.from=(t,e,n,r,o,i)=>{const a=Object.create(ct);return at.toFlatObject(t,a,(function(t){return t!==Error.prototype}),(t=>"isAxiosError"!==t)),st.call(a,t.message,e,n,r,o),a.cause=t,a.name=t.name,i&&Object.assign(a,i),a};var lt=st,ft=null;function pt(t){return at.isPlainObject(t)||at.isArray(t)}function dt(t){return at.endsWith(t,"[]")?t.slice(0,-2):t}function ht(t,e,n){return t?t.concat(e).map((function(t,e){return t=dt(t),!n&&e?"["+t+"]":t})).join(n?".":""):e}function vt(t){return at.isArray(t)&&!t.some(pt)}const mt=at.toFlatObject(at,{},null,(function(t){return/^is[A-Z]/.test(t)}));function gt(t,e,n){if(!at.isObject(t))throw new TypeError("target must be an object");e=e||new(ft||FormData),n=at.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(t,e){return!at.isUndefined(e[t])}));const r=n.metaTokens,o=n.visitor||l,i=n.dots,a=n.indexes,s=n.Blob||"undefined"!==typeof Blob&&Blob,c=s&&at.isSpecCompliantForm(e);if(!at.isFunction(o))throw new TypeError("visitor must be a function");function u(t){if(null===t)return"";if(at.isDate(t))return t.toISOString();if(!c&&at.isBlob(t))throw new lt("Blob is not supported. Use a Buffer instead.");return at.isArrayBuffer(t)||at.isTypedArray(t)?c&&"function"===typeof Blob?new Blob([t]):Buffer.from(t):t}function l(t,n,o){let s=t;if(t&&!o&&"object"===typeof t)if(at.endsWith(n,"{}"))n=r?n:n.slice(0,-2),t=JSON.stringify(t);else if(at.isArray(t)&&vt(t)||(at.isFileList(t)||at.endsWith(n,"[]"))&&(s=at.toArray(t)))return n=dt(n),s.forEach((function(t,r){!at.isUndefined(t)&&null!==t&&e.append(!0===a?ht([n],r,i):null===a?n:n+"[]",u(t))})),!1;return!!pt(t)||(e.append(ht(o,n,i),u(t)),!1)}const f=[],p=Object.assign(mt,{defaultVisitor:l,convertValue:u,isVisitable:pt});function d(t,n){if(!at.isUndefined(t)){if(-1!==f.indexOf(t))throw Error("Circular reference detected in "+n.join("."));f.push(t),at.forEach(t,(function(t,r){const i=!(at.isUndefined(t)||null===t)&&o.call(e,t,at.isString(r)?r.trim():r,n,p);!0===i&&d(t,n?n.concat(r):[r])})),f.pop()}}if(!at.isObject(t))throw new TypeError("data must be an object");return d(t),e}var yt=gt;function wt(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,(function(t){return e[t]}))}function bt(t,e){this._pairs=[],t&&yt(t,this,e)}const _t=bt.prototype;_t.append=function(t,e){this._pairs.push([t,e])},_t.toString=function(t){const e=t?function(e){return t.call(this,e,wt)}:wt;return this._pairs.map((function(t){return e(t[0])+"="+e(t[1])}),"").join("&")};var xt=bt;function Ot(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function kt(t,e,n){if(!e)return t;const r=n&&n.encode||Ot,o=n&&n.serialize;let i;if(i=o?o(e,n):at.isURLSearchParams(e)?e.toString():new xt(e,n).toString(r),i){const e=t.indexOf("#");-1!==e&&(t=t.slice(0,e)),t+=(-1===t.indexOf("?")?"?":"&")+i}return t}class Ct{constructor(){this.handlers=[]}use(t,e,n){return this.handlers.push({fulfilled:t,rejected:e,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){at.forEach(this.handlers,(function(e){null!==e&&t(e)}))}}var Et=Ct,jt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},St="undefined"!==typeof URLSearchParams?URLSearchParams:xt,At="undefined"!==typeof FormData?FormData:null,Tt="undefined"!==typeof Blob?Blob:null,$t={isBrowser:!0,classes:{URLSearchParams:St,FormData:At,Blob:Tt},protocols:["http","https","file","blob","url","data"]};const Pt="undefined"!==typeof window&&"undefined"!==typeof document,Lt=(t=>Pt&&["ReactNative","NativeScript","NS"].indexOf(t)<0)("undefined"!==typeof navigator&&navigator.product),Rt=(()=>"undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"===typeof self.importScripts)();var Nt={...r,...$t};function It(t,e){return yt(t,new Nt.classes.URLSearchParams,Object.assign({visitor:function(t,e,n,r){return Nt.isNode&&at.isBuffer(t)?(this.append(e,t.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},e))}function Ft(t){return at.matchAll(/\w+|\[(\w*)]/g,t).map((t=>"[]"===t[0]?"":t[1]||t[0]))}function Dt(t){const e={},n=Object.keys(t);let r;const o=n.length;let i;for(r=0;r=t.length;if(i=!i&&at.isArray(r)?r.length:i,s)return at.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!a;r[i]&&at.isObject(r[i])||(r[i]=[]);const c=e(t,n,r[i],o);return c&&at.isArray(r[i])&&(r[i]=Dt(r[i])),!a}if(at.isFormData(t)&&at.isFunction(t.entries)){const n={};return at.forEachEntry(t,((t,r)=>{e(Ft(t),r,n,0)})),n}return null}var Mt=Bt;function zt(t,e,n){if(at.isString(t))try{return(e||JSON.parse)(t),at.trim(t)}catch(r){if("SyntaxError"!==r.name)throw r}return(n||JSON.stringify)(t)}const Ut={transitional:jt,adapter:["xhr","http"],transformRequest:[function(t,e){const n=e.getContentType()||"",r=n.indexOf("application/json")>-1,o=at.isObject(t);o&&at.isHTMLForm(t)&&(t=new FormData(t));const i=at.isFormData(t);if(i)return r?JSON.stringify(Mt(t)):t;if(at.isArrayBuffer(t)||at.isBuffer(t)||at.isStream(t)||at.isFile(t)||at.isBlob(t))return t;if(at.isArrayBufferView(t))return t.buffer;if(at.isURLSearchParams(t))return e.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return It(t,this.formSerializer).toString();if((a=at.isFileList(t))||n.indexOf("multipart/form-data")>-1){const e=this.env&&this.env.FormData;return yt(a?{"files[]":t}:t,e&&new e,this.formSerializer)}}return o||r?(e.setContentType("application/json",!1),zt(t)):t}],transformResponse:[function(t){const e=this.transitional||Ut.transitional,n=e&&e.forcedJSONParsing,r="json"===this.responseType;if(t&&at.isString(t)&&(n&&!this.responseType||r)){const n=e&&e.silentJSONParsing,i=!n&&r;try{return JSON.parse(t)}catch(o){if(i){if("SyntaxError"===o.name)throw lt.from(o,lt.ERR_BAD_RESPONSE,this,null,this.response);throw o}}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Nt.classes.FormData,Blob:Nt.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};at.forEach(["delete","get","head","post","put","patch"],(t=>{Ut.headers[t]={}}));var Ht=Ut;const Vt=at.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);var qt=t=>{const e={};let n,r,o;return t&&t.split("\n").forEach((function(t){o=t.indexOf(":"),n=t.substring(0,o).trim().toLowerCase(),r=t.substring(o+1).trim(),!n||e[n]&&Vt[n]||("set-cookie"===n?e[n]?e[n].push(r):e[n]=[r]:e[n]=e[n]?e[n]+", "+r:r)})),e};const Wt=Symbol("internals");function Gt(t){return t&&String(t).trim().toLowerCase()}function Kt(t){return!1===t||null==t?t:at.isArray(t)?t.map(Kt):String(t)}function Yt(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;while(r=n.exec(t))e[r[1]]=r[2];return e}const Xt=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Zt(t,e,n,r,o){return at.isFunction(r)?r.call(this,e,n):(o&&(e=n),at.isString(e)?at.isString(r)?-1!==e.indexOf(r):at.isRegExp(r)?r.test(e):void 0:void 0)}function Jt(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((t,e,n)=>e.toUpperCase()+n))}function Qt(t,e){const n=at.toCamelCase(" "+e);["get","set","has"].forEach((r=>{Object.defineProperty(t,r+n,{value:function(t,n,o){return this[r].call(this,e,t,n,o)},configurable:!0})}))}class te{constructor(t){t&&this.set(t)}set(t,e,n){const r=this;function o(t,e,n){const o=Gt(e);if(!o)throw new Error("header name must be a non-empty string");const i=at.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||e]=Kt(t))}const i=(t,e)=>at.forEach(t,((t,n)=>o(t,n,e)));return at.isPlainObject(t)||t instanceof this.constructor?i(t,e):at.isString(t)&&(t=t.trim())&&!Xt(t)?i(qt(t),e):null!=t&&o(e,t,n),this}get(t,e){if(t=Gt(t),t){const n=at.findKey(this,t);if(n){const t=this[n];if(!e)return t;if(!0===e)return Yt(t);if(at.isFunction(e))return e.call(this,t,n);if(at.isRegExp(e))return e.exec(t);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,e){if(t=Gt(t),t){const n=at.findKey(this,t);return!(!n||void 0===this[n]||e&&!Zt(this,this[n],n,e))}return!1}delete(t,e){const n=this;let r=!1;function o(t){if(t=Gt(t),t){const o=at.findKey(n,t);!o||e&&!Zt(n,n[o],o,e)||(delete n[o],r=!0)}}return at.isArray(t)?t.forEach(o):o(t),r}clear(t){const e=Object.keys(this);let n=e.length,r=!1;while(n--){const o=e[n];t&&!Zt(this,this[o],o,t,!0)||(delete this[o],r=!0)}return r}normalize(t){const e=this,n={};return at.forEach(this,((r,o)=>{const i=at.findKey(n,o);if(i)return e[i]=Kt(r),void delete e[o];const a=t?Jt(o):String(o).trim();a!==o&&delete e[o],e[a]=Kt(r),n[a]=!0})),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const e=Object.create(null);return at.forEach(this,((n,r)=>{null!=n&&!1!==n&&(e[r]=t&&at.isArray(n)?n.join(", "):n)})),e}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([t,e])=>t+": "+e)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...e){const n=new this(t);return e.forEach((t=>n.set(t))),n}static accessor(t){const e=this[Wt]=this[Wt]={accessors:{}},n=e.accessors,r=this.prototype;function o(t){const e=Gt(t);n[e]||(Qt(r,t),n[e]=!0)}return at.isArray(t)?t.forEach(o):o(t),this}}te.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),at.reduceDescriptors(te.prototype,(({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(t){this[n]=t}}})),at.freezeMethods(te);var ee=te;function ne(t,e){const n=this||Ht,r=e||n,o=ee.from(r.headers);let i=r.data;return at.forEach(t,(function(t){i=t.call(n,i,o.normalize(),e?e.status:void 0)})),o.normalize(),i}function re(t){return!(!t||!t.__CANCEL__)}function oe(t,e,n){lt.call(this,null==t?"canceled":t,lt.ERR_CANCELED,e,n),this.name="CanceledError"}at.inherits(oe,lt,{__CANCEL__:!0});var ie=oe;function ae(t,e,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?e(new lt("Request failed with status code "+n.status,[lt.ERR_BAD_REQUEST,lt.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):t(n)}var se=Nt.hasStandardBrowserEnv?{write(t,e,n,r,o,i){const a=[t+"="+encodeURIComponent(e)];at.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),at.isString(r)&&a.push("path="+r),at.isString(o)&&a.push("domain="+o),!0===i&&a.push("secure"),document.cookie=a.join("; ")},read(t){const e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function ce(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function ue(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function le(t,e){return t&&!ce(e)?ue(t,e):e}var fe=Nt.hasStandardBrowserEnv?function(){const t=/(msie|trident)/i.test(navigator.userAgent),e=document.createElement("a");let n;function r(n){let r=n;return t&&(e.setAttribute("href",r),r=e.href),e.setAttribute("href",r),{href:e.href,protocol:e.protocol?e.protocol.replace(/:$/,""):"",host:e.host,search:e.search?e.search.replace(/^\?/,""):"",hash:e.hash?e.hash.replace(/^#/,""):"",hostname:e.hostname,port:e.port,pathname:"/"===e.pathname.charAt(0)?e.pathname:"/"+e.pathname}}return n=r(window.location.href),function(t){const e=at.isString(t)?r(t):t;return e.protocol===n.protocol&&e.host===n.host}}():function(){return function(){return!0}}();function pe(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function de(t,e){t=t||10;const n=new Array(t),r=new Array(t);let o,i=0,a=0;return e=void 0!==e?e:1e3,function(s){const c=Date.now(),u=r[a];o||(o=c),n[i]=s,r[i]=c;let l=a,f=0;while(l!==i)f+=n[l++],l%=t;if(i=(i+1)%t,i===a&&(a=(a+1)%t),c-o{const i=o.loaded,a=o.lengthComputable?o.total:void 0,s=i-n,c=r(s),u=i<=a;n=i;const l={loaded:i,total:a,progress:a?i/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&u?(a-i)/c:void 0,event:o};l[e?"download":"upload"]=!0,t(l)}}const me="undefined"!==typeof XMLHttpRequest;var ge=me&&function(t){return new Promise((function(e,n){let r=t.data;const o=ee.from(t.headers).normalize();let i,a,{responseType:s,withXSRFToken:c}=t;function u(){t.cancelToken&&t.cancelToken.unsubscribe(i),t.signal&&t.signal.removeEventListener("abort",i)}if(at.isFormData(r))if(Nt.hasStandardBrowserEnv||Nt.hasStandardBrowserWebWorkerEnv)o.setContentType(!1);else if(!1!==(a=o.getContentType())){const[t,...e]=a?a.split(";").map((t=>t.trim())).filter(Boolean):[];o.setContentType([t||"multipart/form-data",...e].join("; "))}let l=new XMLHttpRequest;if(t.auth){const e=t.auth.username||"",n=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";o.set("Authorization","Basic "+btoa(e+":"+n))}const f=le(t.baseURL,t.url);function p(){if(!l)return;const r=ee.from("getAllResponseHeaders"in l&&l.getAllResponseHeaders()),o=s&&"text"!==s&&"json"!==s?l.response:l.responseText,i={data:o,status:l.status,statusText:l.statusText,headers:r,config:t,request:l};ae((function(t){e(t),u()}),(function(t){n(t),u()}),i),l=null}if(l.open(t.method.toUpperCase(),kt(f,t.params,t.paramsSerializer),!0),l.timeout=t.timeout,"onloadend"in l?l.onloadend=p:l.onreadystatechange=function(){l&&4===l.readyState&&(0!==l.status||l.responseURL&&0===l.responseURL.indexOf("file:"))&&setTimeout(p)},l.onabort=function(){l&&(n(new lt("Request aborted",lt.ECONNABORTED,t,l)),l=null)},l.onerror=function(){n(new lt("Network Error",lt.ERR_NETWORK,t,l)),l=null},l.ontimeout=function(){let e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded";const r=t.transitional||jt;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),n(new lt(e,r.clarifyTimeoutError?lt.ETIMEDOUT:lt.ECONNABORTED,t,l)),l=null},Nt.hasStandardBrowserEnv&&(c&&at.isFunction(c)&&(c=c(t)),c||!1!==c&&fe(f))){const e=t.xsrfHeaderName&&t.xsrfCookieName&&se.read(t.xsrfCookieName);e&&o.set(t.xsrfHeaderName,e)}void 0===r&&o.setContentType(null),"setRequestHeader"in l&&at.forEach(o.toJSON(),(function(t,e){l.setRequestHeader(e,t)})),at.isUndefined(t.withCredentials)||(l.withCredentials=!!t.withCredentials),s&&"json"!==s&&(l.responseType=t.responseType),"function"===typeof t.onDownloadProgress&&l.addEventListener("progress",ve(t.onDownloadProgress,!0)),"function"===typeof t.onUploadProgress&&l.upload&&l.upload.addEventListener("progress",ve(t.onUploadProgress)),(t.cancelToken||t.signal)&&(i=e=>{l&&(n(!e||e.type?new ie(null,t,l):e),l.abort(),l=null)},t.cancelToken&&t.cancelToken.subscribe(i),t.signal&&(t.signal.aborted?i():t.signal.addEventListener("abort",i)));const d=pe(f);d&&-1===Nt.protocols.indexOf(d)?n(new lt("Unsupported protocol "+d+":",lt.ERR_BAD_REQUEST,t)):l.send(r||null)}))};const ye={http:ft,xhr:ge};at.forEach(ye,((t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch(n){}Object.defineProperty(t,"adapterName",{value:e})}}));const we=t=>`- ${t}`,be=t=>at.isFunction(t)||null===t||!1===t;var _e={getAdapter:t=>{t=at.isArray(t)?t:[t];const{length:e}=t;let n,r;const o={};for(let i=0;i`adapter ${t} `+(!1===e?"is not supported by the environment":"is not available in the build")));let n=e?t.length>1?"since :\n"+t.map(we).join("\n"):" "+we(t[0]):"as no adapter specified";throw new lt("There is no suitable adapter to dispatch the request "+n,"ERR_NOT_SUPPORT")}return r},adapters:ye};function xe(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new ie(null,t)}function Oe(t){xe(t),t.headers=ee.from(t.headers),t.data=ne.call(t,t.transformRequest),-1!==["post","put","patch"].indexOf(t.method)&&t.headers.setContentType("application/x-www-form-urlencoded",!1);const e=_e.getAdapter(t.adapter||Ht.adapter);return e(t).then((function(e){return xe(t),e.data=ne.call(t,t.transformResponse,e),e.headers=ee.from(e.headers),e}),(function(e){return re(e)||(xe(t),e&&e.response&&(e.response.data=ne.call(t,t.transformResponse,e.response),e.response.headers=ee.from(e.response.headers))),Promise.reject(e)}))}const ke=t=>t instanceof ee?t.toJSON():t;function Ce(t,e){e=e||{};const n={};function r(t,e,n){return at.isPlainObject(t)&&at.isPlainObject(e)?at.merge.call({caseless:n},t,e):at.isPlainObject(e)?at.merge({},e):at.isArray(e)?e.slice():e}function o(t,e,n){return at.isUndefined(e)?at.isUndefined(t)?void 0:r(void 0,t,n):r(t,e,n)}function i(t,e){if(!at.isUndefined(e))return r(void 0,e)}function a(t,e){return at.isUndefined(e)?at.isUndefined(t)?void 0:r(void 0,t):r(void 0,e)}function s(n,o,i){return i in e?r(n,o):i in t?r(void 0,n):void 0}const c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(t,e)=>o(ke(t),ke(e),!0)};return at.forEach(Object.keys(Object.assign({},t,e)),(function(r){const i=c[r]||o,a=i(t[r],e[r],r);at.isUndefined(a)&&i!==s||(n[r]=a)})),n}const Ee="1.6.7",je={};["object","boolean","number","function","string","symbol"].forEach(((t,e)=>{je[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));const Se={};function Ae(t,e,n){if("object"!==typeof t)throw new lt("options must be an object",lt.ERR_BAD_OPTION_VALUE);const r=Object.keys(t);let o=r.length;while(o-- >0){const i=r[o],a=e[i];if(a){const e=t[i],n=void 0===e||a(e,i,t);if(!0!==n)throw new lt("option "+i+" must be "+n,lt.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new lt("Unknown option "+i,lt.ERR_BAD_OPTION)}}je.transitional=function(t,e,n){function r(t,e){return"[Axios v"+Ee+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}return(n,o,i)=>{if(!1===t)throw new lt(r(o," has been removed"+(e?" in "+e:"")),lt.ERR_DEPRECATED);return e&&!Se[o]&&(Se[o]=!0,console.warn(r(o," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(n,o,i)}};var Te={assertOptions:Ae,validators:je};const $e=Te.validators;class Pe{constructor(t){this.defaults=t,this.interceptors={request:new Et,response:new Et}}async request(t,e){try{return await this._request(t,e)}catch(n){if(n instanceof Error){let t;Error.captureStackTrace?Error.captureStackTrace(t={}):t=new Error;const e=t.stack?t.stack.replace(/^.+\n/,""):"";n.stack?e&&!String(n.stack).endsWith(e.replace(/^.+\n.+\n/,""))&&(n.stack+="\n"+e):n.stack=e}throw n}}_request(t,e){"string"===typeof t?(e=e||{},e.url=t):e=t||{},e=Ce(this.defaults,e);const{transitional:n,paramsSerializer:r,headers:o}=e;void 0!==n&&Te.assertOptions(n,{silentJSONParsing:$e.transitional($e.boolean),forcedJSONParsing:$e.transitional($e.boolean),clarifyTimeoutError:$e.transitional($e.boolean)},!1),null!=r&&(at.isFunction(r)?e.paramsSerializer={serialize:r}:Te.assertOptions(r,{encode:$e.function,serialize:$e.function},!0)),e.method=(e.method||this.defaults.method||"get").toLowerCase();let i=o&&at.merge(o.common,o[e.method]);o&&at.forEach(["delete","get","head","post","put","patch","common"],(t=>{delete o[t]})),e.headers=ee.concat(i,o);const a=[];let s=!0;this.interceptors.request.forEach((function(t){"function"===typeof t.runWhen&&!1===t.runWhen(e)||(s=s&&t.synchronous,a.unshift(t.fulfilled,t.rejected))}));const c=[];let u;this.interceptors.response.forEach((function(t){c.push(t.fulfilled,t.rejected)}));let l,f=0;if(!s){const t=[Oe.bind(this),void 0];t.unshift.apply(t,a),t.push.apply(t,c),l=t.length,u=Promise.resolve(e);while(f{if(!n._listeners)return;let e=n._listeners.length;while(e-- >0)n._listeners[e](t);n._listeners=null})),this.promise.then=t=>{let e;const r=new Promise((t=>{n.subscribe(t),e=t})).then(t);return r.cancel=function(){n.unsubscribe(e)},r},t((function(t,r,o){n.reason||(n.reason=new ie(t,r,o),e(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){this.reason?t(this.reason):this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const e=this._listeners.indexOf(t);-1!==e&&this._listeners.splice(e,1)}static source(){let t;const e=new Re((function(e){t=e}));return{token:e,cancel:t}}}var Ne=Re;function Ie(t){return function(e){return t.apply(null,e)}}function Fe(t){return at.isObject(t)&&!0===t.isAxiosError}const De={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(De).forEach((([t,e])=>{De[e]=t}));var Be=De;function Me(t){const e=new Le(t),n=o(Le.prototype.request,e);return at.extend(n,Le.prototype,e,{allOwnKeys:!0}),at.extend(n,e,null,{allOwnKeys:!0}),n.create=function(e){return Me(Ce(t,e))},n}const ze=Me(Ht);ze.Axios=Le,ze.CanceledError=ie,ze.CancelToken=Ne,ze.isCancel=re,ze.VERSION=Ee,ze.toFormData=yt,ze.AxiosError=lt,ze.Cancel=ze.CanceledError,ze.all=function(t){return Promise.all(t)},ze.spread=Ie,ze.isAxiosError=Fe,ze.mergeConfig=Ce,ze.AxiosHeaders=ee,ze.formToJSON=t=>Mt(at.isHTMLForm(t)?new FormData(t):t),ze.getAdapter=_e.getAdapter,ze.HttpStatusCode=Be,ze.default=ze;var Ue=ze},5482:function(t,e,n){"use strict";n.d(e,{qK:function(){return c}});const r={};function o(t){return Object.keys(t).reduce(((e,n)=>(!1!==t[n]&&null!==t[n]&&void 0!==t[n]&&(e[n]=t[n]),e)),{})}const i={name:"InlineSvg",inheritAttrs:!1,render(t){return this.svgElSource?t("svg",{on:this.$listeners,attrs:Object.assign(this.getSvgAttrs(this.svgElSource),o(this.$attrs)),domProps:{innerHTML:this.getSvgContent(this.svgElSource)}}):null},props:{src:{type:String,required:!0},title:{type:String},transformSource:{type:Function,default:t=>t},keepDuringLoading:{type:Boolean,default:!0}},data(){return{svgElSource:null}},watch:{src(t){this.getSource(t)}},mounted(){this.getSource(this.src)},methods:{getSvgAttrs(t){let e={};const n=t.attributes;if(!n)return e;for(let r=n.length-1;r>=0;r--)e[n[r].name]=n[r].value;return e},getSvgContent(t){return t=t.cloneNode(!0),t=this.transformSource(t),this.title&&a(t,this.title),t.innerHTML},getSource(t){r[t]||(r[t]=this.download(t)),this.svgElSource&&r[t].getIsPending()&&!this.keepDuringLoading&&(this.svgElSource=null,this.$emit("unloaded")),r[t].then((t=>{this.svgElSource=t,this.$nextTick((()=>{this.$emit("loaded",this.$el)}))})).catch((e=>{this.svgElSource&&(this.svgElSource=null,this.$emit("unloaded")),delete r[t],this.$emit("error",e)}))},download(t){return s(new Promise(((e,n)=>{const r=new XMLHttpRequest;r.open("GET",t,!0),r.onload=()=>{if(r.status>=200&&r.status<400)try{const t=new DOMParser,o=t.parseFromString(r.responseText,"text/xml");let i=o.getElementsByTagName("svg")[0];i?e(i):n(new Error('Loaded file is not valid SVG"'))}catch(t){n(t)}else n(new Error("Error loading SVG"))},r.onerror=n,r.send()})))}}};function a(t,e){const n=t.getElementsByTagName("title");if(n.length)n[0].textContent=e;else{const n=document.createElementNS("http://www.w3.org/2000/svg","title");n.textContent=e,t.insertBefore(n,t.firstChild)}}function s(t){if(t.getIsPending)return t;let e=!0,n=t.then((t=>(e=!1,t)),(t=>{throw e=!1,t}));return n.getIsPending=function(){return e},n}const c={install(t){t.component("inline-svg",i)}}}}]); \ No newline at end of file diff --git a/wp/wp-content/plugins/wp-mail-smtp/assets/vue/js/wizard.min.js b/wp/wp-content/plugins/wp-mail-smtp/assets/vue/js/wizard.min.js index e3a1b559..35d8aa77 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/assets/vue/js/wizard.min.js +++ b/wp/wp-content/plugins/wp-mail-smtp/assets/vue/js/wizard.min.js @@ -1 +1 @@ -(function(){var t={9808:function(t,e,s){"use strict";s(7658);var i=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-admin-page"},[e("router-view"),t.blocked?e("div",{staticClass:"wp-mail-smtp-blocked"}):t.loading?e("div",{staticClass:"wp-mail-smtp-loading"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(969),width:"195"}})],1):t._e()],1)},a=[],n=s(8345),o=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-welcome"},[e("the-wizard-header"),e("div",{staticClass:"wp-mail-smtp-setup-wizard-container"},[e("main",{staticClass:"wp-mail-smtp-setup-wizard-content"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main wp-mail-smtp-button-large",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.nextStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_button)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"22"}})],1)])],1)]),e("footer",[e("p",{staticClass:"wp-mail-smtp-exit-link"},[e("a",{attrs:{href:t.exit_href}},[t._v(t._s(t.text_exit_link))])])])])],1)},r=[],l=s(3165),p=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-content-header"},[e("h2",{domProps:{innerHTML:t._s(t.title)}}),t.subtitle?e("p",{staticClass:"subtitle",domProps:{innerHTML:t._s(t.subtitle)}}):t._e()])},m=[],_={name:"ContentHeader",props:{title:String,subtitle:String}},c=_,d=s(1001),u=(0,d.Z)(c,p,m,!1,null,null,null),h=u.exports,g=function(){var t=this,e=t._self._c;return e("header",{staticClass:"wp-mail-smtp-setup-wizard-header"},[e("h1",{staticClass:"wp-mail-smtp-setup-wizard-logo"},[e("div",{staticClass:"wp-mail-smtp-logo"},[e("img",{staticClass:"wp-mail-smtp-logo-img",attrs:{src:s(6375),alt:t.text_logo_alt}})])])])},w=[],f={name:"TheWizardHeader",data(){return{text_logo_alt:(0,l.__)("WP Mail SMTP logo","wp-mail-smtp")}}},A=f,b=(0,d.Z)(A,g,w,!1,null,null,null),v=b.exports,x={name:"SetupWizardWelcome",components:{ContentHeader:h,TheWizardHeader:v},data(){return{text_header_title:(0,l.__)("Welcome to the WP Mail SMTP Setup Wizard!","wp-mail-smtp"),text_header_subtitle:(0,l.__)("We’ll guide you through each step needed to get WP Mail SMTP fully set up on your site.","wp-mail-smtp"),text_button:(0,l.__)("Let's Get Started","wp-mail-smtp"),text_exit_link:(0,l.__)("Go back to the Dashboard","wp-mail-smtp"),exit_href:this.$wpms.exit_url}},methods:{nextStep:function(){this.$store.dispatch("$_wizard/started"),this.$router.push({name:this.$wizard_steps[0]})}}},k=x,y=(0,d.Z)(k,o,r,!1,null,null,null),C=y.exports,S=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-step"},[e("the-wizard-header"),e("the-wizard-timeline"),e("div",{staticClass:"wp-mail-smtp-setup-wizard-container"},[e("main",{staticClass:"wp-mail-smtp-setup-wizard-content"},[e("router-view",{on:{displayContentBelow:t.displayContentBelow}})],1),e("footer",[t.content_below.length>0?e("div",{staticClass:"wp-mail-smtp-step-below-content",domProps:{innerHTML:t._s(t.content_below)}}):t._e(),t.display_exit_link?e("p",{staticClass:"wp-mail-smtp-exit-link"},[e("a",{attrs:{href:t.exit_href}},[t._v(t._s(t.text_exit_link))])]):t._e()])])],1)},P=[],M=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-container"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-timeline"},[t._l(t.steps,(function(i,a){return[a>0?e("div",{key:a+"line",class:t.lineClass(a)}):t._e(),e("div",{key:a,class:t.stepClass(a)},[e("inline-svg",{staticClass:"icon icon-success",attrs:{src:s(7579),width:"10",height:"10"}}),e("inline-svg",{staticClass:"icon icon-failed",attrs:{src:s(3531),width:"8",height:"11"}})],1)]}))],2)])},E=[],B={name:"TheWizardTimeline",data(){return{steps:this.$wizard_steps}},methods:{stepClass(t){let e="wp-mail-smtp-setup-wizard-timeline-step";const s=this.steps.findIndex((t=>this.$route.name.includes(t)));return(tthis.$route.name.includes(t)));return t<=s&&(e+=" wp-mail-smtp-setup-wizard-timeline-line-active"),e}}},T=B,I=(0,d.Z)(T,M,E,!1,null,null,null),F=I.exports,D={name:"SetupWizardSteps",components:{TheWizardHeader:v,TheWizardTimeline:F},data(){return{text_exit_link:(0,l.__)("Close and exit the Setup Wizard","wp-mail-smtp"),exit_href:this.$wpms.exit_url,content_below:""}},computed:{display_exit_link:function(){return!this.$route.name.includes("check_configuration_step")}},methods:{displayContentBelow:function(t){this.content_below=t}},mounted(){this.$store.dispatch("$_app/start_loading"),Promise.all([this.$store.dispatch("$_settings/getSettings"),this.$store.dispatch("$_plugins/getPlugins")]).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))}},z=D,Z=(0,d.Z)(z,S,P,!1,null,null,null),O=Z.exports,L=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-import"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("form",[e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-row"},[e("settings-input-radios-with-icons",{attrs:{name:"import_from_plugin",options:t.options},model:{value:t.selectedImport,callback:function(e){t.selectedImport=e},expression:"selectedImport"}})],1)])])],1),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"skip_step"},domProps:{textContent:t._s(t.text_skip)},on:{click:function(e){return e.preventDefault(),t.nextStep.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step",disabled:null===t.selectedImport},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},W=[],R=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-input-radios-with-icons"},t._l(t.options,(function(i){return e("label",{key:i.value,class:t.labelClass(i),attrs:{for:"wp-mail-smtp-settings-radio-"+t.name+"["+i.value+"]"},on:{click:function(e){return t.clicked(i)}}},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.selectedImport,expression:"selectedImport"}],attrs:{id:"wp-mail-smtp-settings-radio-"+t.name+"["+i.value+"]",type:"radio",name:t.name,autocomplete:"off",disabled:i.disabled||!1},domProps:{value:i.value,checked:t.isChecked(i.value),checked:t._q(t.selectedImport,i.value)},on:{change:function(e){t.selectedImport=i.value}}}),e("span",{class:t.titleClass(i.value)},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}})],1),i.logo.length?e("img",{staticClass:"wp-mail-smtp-logo-icon",attrs:{src:i.logo,alt:i.label}}):t._e(),e("span",{staticClass:"wp-mail-smtp-styled-radio-text"},[t._v(t._s(i.label))]),i.is_pro?e("inline-svg",{staticClass:"wp-mail-smtp-pro-badge",attrs:{src:s(330),width:"46",height:"26"}}):t._e()],1)})),0)},Q=[],U={name:"SettingsInputRadiosWithIcons",props:{options:Array,name:String,value:String},data(){return{has_error:!1}},computed:{selectedImport:{get(){return this.value},set(t){this.$emit("input",t)}}},methods:{titleClass(t){let e="wp-mail-smtp-styled-radio";return this.isChecked(t)&&(e+=" wp-mail-smtp-styled-radio-checked"),e},labelClass(t){let e="";return this.isChecked(t.value)&&(e+=" wp-mail-smtp-styled-radio-label-checked"),t.disabled&&(e+=" wp-mail-smtp-styled-radio-label-disabled"),t.readonly&&(e+=" wp-mail-smtp-styled-radio-label-readonly"),e},isChecked(t){return t===this.selectedImport},clicked(t){t.is_pro&&this.$emit("clicked-disabled",t)}}},N=U,G=(0,d.Z)(N,R,Q,!1,null,"2d9202de",null),H=G.exports,Y=function(){var t=this,e=t._self._c;return e("p",{staticClass:"wp-mail-smtp-setup-wizard-step-count"},[t._v(" "+t._s(t.stepValue)+" ")])},V=[],K={name:"TheWizardStepCounter",computed:{stepValue:function(){const t=this.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))+1;return(0,l.gB)((0,l.__)("Step %1$s of %2$s","wp-mail-smtp"),t,this.$wizard_steps.length)}}},J=K,q=(0,d.Z)(J,Y,V,!1,null,"44fd4a93",null),X=q.exports,j={name:"WizardStepImport",components:{SettingsInputRadiosWithIcons:H,ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Import data from your current plugins","wp-mail-smtp"),text_header_subtitle:(0,l.__)("We have detected other SMTP plugins installed on your website. Select which plugin's data you would like to import to WP Mail SMTP.","wp-mail-smtp"),text_save:(0,l.__)("Import Data and Continue","wp-mail-smtp"),text_skip:(0,l.__)("Skip this Step","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),options:[{value:"easy-smtp",label:(0,l.__)("Easy WP SMTP","wp-mail-smtp"),logo:s(9515),disabled:!this.$wpms.other_smtp_plugins.includes("easy-smtp"),readonly:!this.$wpms.other_smtp_plugins.includes("easy-smtp")},{value:"fluent-smtp",label:(0,l.__)("FluentSMTP","wp-mail-smtp"),logo:s(5529),disabled:!this.$wpms.other_smtp_plugins.includes("fluent-smtp"),readonly:!this.$wpms.other_smtp_plugins.includes("fluent-smtp")},{value:"post-smtp-mailer",label:(0,l.__)("Post SMTP Mailer","wp-mail-smtp"),logo:s(6557),disabled:!this.$wpms.other_smtp_plugins.includes("post-smtp-mailer"),readonly:!this.$wpms.other_smtp_plugins.includes("post-smtp-mailer")},{value:"smtp-mailer",label:(0,l.__)("SMTP Mailer","wp-mail-smtp"),logo:s(5543),disabled:!this.$wpms.other_smtp_plugins.includes("smtp-mailer"),readonly:!this.$wpms.other_smtp_plugins.includes("smtp-mailer")},{value:"wp-smtp",label:(0,l.__)("WP SMTP","wp-mail-smtp"),logo:s(7445),disabled:!this.$wpms.other_smtp_plugins.includes("wp-smtp"),readonly:!this.$wpms.other_smtp_plugins.includes("wp-smtp")}],selectedImport:null}},methods:{handleSubmit(){null!==this.selectedImport&&(this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/importOtherPlugin",{value:this.selectedImport}).then((t=>{t?this.nextStep():this.$wpms_error_toast({})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")})))},nextStep(){this.$next_step()},previousStep(){this.$previous_step()}}},$=j,tt=(0,d.Z)($,L,W,!1,null,null,null),et=tt.exports,st=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-choose-mailer"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}}),t.mailer_set_via_constants?e("div",{staticClass:"wp-mail-smtp-notice wp-mail-smtp-notice--info"},[e("p",{domProps:{innerHTML:t._s(t.text_mailer_set_via_constants)}})]):t._e(),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("form",[e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-row wp-mail-smtp-setup-wizard-form-row-highlight"},[e("h3",[t._v(t._s(t.text_recommended_mailers))]),e("settings-input-radios-with-icons",{attrs:{name:"choose_mailer",options:t.recommended_options},model:{value:t.selectedMailer,callback:function(e){t.selectedMailer=e},expression:"selectedMailer"}})],1),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-row"},[e("settings-input-radios-with-icons",{attrs:{name:"choose_mailer",options:t.options},on:{"clicked-disabled":t.clickedDisabledOption},model:{value:t.selectedMailer,callback:function(e){t.selectedMailer=e},expression:"selectedMailer"}})],1)])])],1),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step",disabled:null===t.selectedMailer||"mail"===t.selectedMailer},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},it=[],at=s(629),nt={name:"WizardStepChooseMailer",components:{SettingsInputRadiosWithIcons:H,ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Choose Your SMTP Mailer","wp-mail-smtp"),text_header_subtitle:(0,l.gB)((0,l.__)("Which mailer would you like to use to send emails? Not sure which mailer to choose? Check out our %1$scomplete mailer guide%2$s for details on each option.","wp-mail-smtp"),'',""),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_recommended_mailers:(0,l.__)("Recommended Mailers","wp-mail-smtp"),text_mailer_set_via_constants:(0,l.__)("Your mailer is already configured in a WP Mail SMTP constant, so the options below have been disabled. To change your mailer, please edit or remove the WPMS_MAILER constant in your wp-config.php file.","wp-mail-smtp"),mailer_set_via_constants:this.$wpms.defined_constants.includes("WPMS_MAILER"),recommended_options:[{value:"sendlayer",label:this.$wpms.mailer_options["sendlayer"].title,logo:s(9857),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"smtpcom",label:this.$wpms.mailer_options["smtpcom"].title,logo:s(7536),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"sendinblue",label:this.$wpms.mailer_options["sendinblue"].title,logo:s(2451),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")}],options:[{value:"amazonses",label:this.$wpms.mailer_options["amazonses"].title,logo:s(7557),is_pro:!this.$wpms.is_pro,notice:this.$wpms.mailer_options["amazonses"].edu_notice,readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:!this.$wpms.is_pro||this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"gmail",label:this.$wpms.mailer_options["gmail"].title,logo:s(7526),notice:this.$wpms.mailer_options["gmail"].edu_notice,readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"mailgun",label:this.$wpms.mailer_options["mailgun"].title,logo:s(5567),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"outlook",label:this.$wpms.is_pro?(0,l.__)("Microsoft 365 / Outlook","wp-mail-smtp"):this.$wpms.mailer_options["outlook"].title,logo:s(6703),is_pro:!this.$wpms.is_pro,notice:this.$wpms.mailer_options["outlook"].edu_notice,readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:!this.$wpms.is_pro||this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"postmark",label:this.$wpms.mailer_options["postmark"].title,logo:s(5699),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"sendgrid",label:this.$wpms.mailer_options["sendgrid"].title,logo:s(2763),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"sparkpost",label:this.$wpms.mailer_options["sparkpost"].title,logo:s(2091),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"zoho",label:this.$wpms.mailer_options["zoho"].title,logo:s(9349),is_pro:!this.$wpms.is_pro,readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:!this.$wpms.is_pro||this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"smtp",label:this.$wpms.mailer_options["smtp"].title,logo:s(450),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")}],selectedMailer:this.currentMailer}},watch:{currentMailer:function(t){this.selectedMailer=t}},computed:{...(0,at.Se)({currentMailer:"$_settings/mailer"}),selectedMailerOptions:function(){return this.recommended_options.concat(this.options).find((t=>t.value===this.selectedMailer))}},methods:{handleSubmit(t,e=!1){null!==this.selectedMailer&&"mail"!==this.selectedMailer&&(void 0===this.selectedMailerOptions.notice||e?(this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/updateSettings",{value:{mail:{mailer:this.selectedMailer}}}).then((t=>{t.success?(this.$store.dispatch("$_settings/setMailer",this.selectedMailer),this.nextStep()):this.$wpms_error_toast({})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))):this.$swal({title:this.selectedMailerOptions.label+" "+(0,l.__)("Mailer","wp-mail-smtp"),html:this.selectedMailerOptions.notice,width:650,showCloseButton:!0,allowOutsideClick:!1,allowEscapeKey:!1,allowEnterKey:!1,customClass:{container:"wp-mail-smtp-swal"},confirmButtonText:(0,l.__)("I Understand, Continue","wp-mail-smtp"),cancelButtonText:(0,l.__)("Choose a Different Mailer","wp-mail-smtp"),showCancelButton:!0,reverseButtons:!0}).then((t=>{t.value?this.handleSubmit(null,!0):void 0===t.dismiss||"cancel"!==t.dismiss||this.$wpms.defined_constants.includes("WPMS_MAILER")||(this.selectedMailer=null)})))},nextStep(){const t=this.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))+1;this.$router.push({name:`${this.$wizard_steps[t]}_${this.selectedMailer}`})},previousStep(){this.$previous_step()},clickedDisabledOption(t){var e=/(\?)/.test(this.$wpms.education.upgrade_url)?"&":"?",i=this.$wpms.education.upgrade_url+e+"utm_content="+encodeURIComponent(t.value);this.$swal({title:t.label+" "+(0,l.__)("is a PRO Feature","wp-mail-smtp"),html:`

      ${this.$wpms.education.upgrade_text.replace("%mailer%",t.label)}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_button}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_bonus}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_doc}

      `,width:550,imageUrl:s(4523),imageWidth:31,imageHeight:35,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-upgrade-popup"},showConfirmButton:!1})}},mounted(){this.selectedMailer=this.currentMailer}},ot=nt,rt=(0,d.Z)(ot,st,it,!1,null,"1e0dc98d",null),lt=rt.exports,pt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-configure-mailer"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-configure-mailer-header"},[e("div",{staticClass:"wp-mail-smtp-configure-mailer-header-container"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("span",{staticClass:"wp-mail-smtp-configure-mailer-logo"},[e("inline-svg",{attrs:{src:t.logo(t.mailer),height:"40"}})],1)]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("router-view",{ref:"mailerConfiguration"})],1),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step",disabled:null===t.mailer||!0===t.blocked_step},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},mt=[],_t=s(7452),ct={name:"WizardStepConfigureMailer",components:{ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Configure Mailer Settings","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Below, we'll show you all of the settings required to set up this mailer.","wp-mail-smtp"),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp")}},computed:{...(0,at.Se)({mailer:"$_settings/mailer"}),...(0,_t.vn)("$_wizard",["blocked_step"])},methods:{handleSubmit(){return!this.blocked_step&&(this.$refs.mailerConfiguration.areRequiredFieldsValid()?(this.$store.dispatch("$_app/start_loading"),void this.$store.dispatch("$_settings/saveCurrentSettings").then((t=>{t.success?this.$next_step():this.$wpms_error_toast({})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))):(this.$required_fields_modal(),!1))},previousStep(){this.blocked_step=!1,this.$previous_step()},logo(t){return"mail"===t?t="smtp":"sendinblue"===t&&(t="brevo"),s(5016)(`./${t}.svg`)}}},dt=ct,ut=(0,d.Z)(dt,pt,mt,!1,null,null,null),ht=ut.exports,gt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-plugin-features"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-plugin-features-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"wp-mail-smtp-plugin-features-list"},[e("settings-input-long-checkbox",{attrs:{value:!0,name:"improved_deliverability",label:t.text_improved_email_deliverability,description:t.text_improved_email_deliverability_desc,disabled:""}}),e("settings-input-long-checkbox",{attrs:{value:!0,name:"error_tracking",label:t.text_error_tracking,description:t.text_error_tracking_desc,disabled:""}}),t.contact_form_already_installed?t._e():e("settings-input-long-checkbox",{attrs:{name:"smart_contact_form",label:t.text_smart_contact_form,description:t.text_smart_contact_form_desc},model:{value:t.smart_contact_form,callback:function(e){t.smart_contact_form=e},expression:"smart_contact_form"}}),t.is_pro?t._e():e("settings-input-long-checkbox",{attrs:{name:"summary_report_email",label:t.text_summary_report_email,description:t.text_summary_report_email_desc},model:{value:t.summary_report_email,callback:function(e){t.summary_report_email=e},expression:"summary_report_email"}}),e("settings-input-long-checkbox",{attrs:{name:"email_log",constant:"WPMS_LOGS_ENABLED",label:t.text_email_log,description:t.text_email_log_desc,show_pro:!t.is_pro},on:{input:t.emailLogEnabledChanged},model:{value:t.email_log,callback:function(e){t.email_log=e},expression:"email_log"}}),t.email_log||!t.is_pro?e("settings-input-long-checkbox",{attrs:{value:t.complete_email_report,name:"complete_email_report",label:t.text_complete_email_report,description:t.text_complete_email_report_desc,show_pro:!t.is_pro,disabled:!!t.is_pro},model:{value:t.complete_email_report,callback:function(e){t.complete_email_report=e},expression:"complete_email_report"}}):t._e(),t.is_pro&&t.email_log?e("settings-input-long-checkbox",{attrs:{name:"summary_report_email",constant:"WPMS_SUMMARY_REPORT_EMAIL_DISABLED",label:t.text_summary_report_email,description:t.text_summary_report_email_desc},model:{value:t.summary_report_email,callback:function(e){t.summary_report_email=e},expression:"summary_report_email"}}):t._e(),e("settings-input-long-checkbox",{attrs:{name:"instant_email_alert_input",label:t.text_instant_email_alert,description:t.text_instant_email_alert_desc,constant:"WPMS_ALERT_EMAIL_SEND_TO",show_pro:!t.is_pro},model:{value:t.instant_email_alert,callback:function(e){t.instant_email_alert=e},expression:"instant_email_alert"}}),t.is_pro?t._e():e("settings-input-long-checkbox",{attrs:{name:"manage_notifications",label:t.text_manage_notifications,description:t.text_manage_notifications_desc,show_pro:!t.is_pro},model:{value:t.manage_notifications,callback:function(e){t.manage_notifications=e},expression:"manage_notifications"}}),t.is_multisite&&!t.is_pro?e("settings-input-long-checkbox",{attrs:{name:"network_settings",label:t.text_network_settings,description:t.text_network_settings_desc,show_pro:!t.is_pro},model:{value:t.network_settings,callback:function(e){t.network_settings=e},expression:"network_settings"}}):t._e()],1)]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step"},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},wt=[],ft=function(){var t=this,e=t._self._c;return e("label",{staticClass:"settings-input-long-checkbox",class:{"settings-input-long-checkbox-checked":t.value,"settings-input-long-checkbox-disabled":t.disabled||t.is_constant_set},attrs:{for:"wp-mail-smtp-settings-long-checkbox-"+t.name}},[e("div",{staticClass:"settings-input-long-checkbox-header"},[e("span",{staticClass:"title-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))]),t.show_pro?e("inline-svg",{staticClass:"wp-mail-smtp-pro-badge",attrs:{src:s(330),width:"46",height:"24"}}):t._e()],1),t.description?e("p",{staticClass:"description"},[t._v(t._s(t.description))]):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()]),e("span",{staticClass:"settings-input-long-checkbox-container"},[e("input",{attrs:{id:"wp-mail-smtp-settings-long-checkbox-"+t.name,type:"checkbox",name:t.name,disabled:t.disabled||t.is_constant_set},domProps:{checked:t.value},on:{input:function(e){return t.$emit("input",e.target.checked)}}}),e("span",{staticClass:"checkbox",class:{"checkbox-checked":t.value,"checkbox-disabled":t.disabled||t.is_constant_set}},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}})],1)])])},At=[],bt={name:"SettingsInputLongCheckbox",props:{label:String,name:String,value:Boolean,description:String,constant:String,disabled:Boolean,show_pro:Boolean},computed:{is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}}},vt=bt,xt=(0,d.Z)(vt,ft,At,!1,null,null,null),kt=xt.exports,yt={name:"WizardStepPluginFeatures",components:{ContentHeader:h,TheWizardStepCounter:X,SettingsInputLongCheckbox:kt},data(){return{text_header_title:(0,l.__)("Which email features do you want to enable?","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Make sure you're getting the most out of WP Mail SMTP. Just check all of the features you'd like to use, and we'll go ahead and enable those for you.","wp-mail-smtp"),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_improved_email_deliverability:(0,l.__)("Improved Email Deliverability","wp-mail-smtp"),text_improved_email_deliverability_desc:(0,l.__)("Ensure your emails are sent successfully and reliably.","wp-mail-smtp"),text_error_tracking:(0,l.__)("Email Error Tracking","wp-mail-smtp"),text_error_tracking_desc:(0,l.__)("Easily spot errors causing delivery issues.","wp-mail-smtp"),text_smart_contact_form:(0,l.__)("Smart Contact Form","wp-mail-smtp"),text_smart_contact_form_desc:(0,l.__)("Install the WPForms plugin and create beautiful contact forms with just a few clicks.","wp-mail-smtp"),text_email_log:(0,l.__)("Detailed Email Logs","wp-mail-smtp"),text_email_log_desc:(0,l.__)("Keep records of every email that's sent out from your website.","wp-mail-smtp"),text_instant_email_alert:(0,l.__)("Instant Email Alerts","wp-mail-smtp"),text_instant_email_alert_desc:(0,l.__)("Get notifications via email, SMS, Slack, or webhook when emails fail to send.","wp-mail-smtp"),text_complete_email_report:(0,l.__)("Complete Email Reports","wp-mail-smtp"),text_complete_email_report_desc:(0,l.__)("See the delivery status, track opens and clicks, and create deliverability graphs.","wp-mail-smtp"),text_summary_report_email:(0,l.__)("Weekly Email Summary","wp-mail-smtp"),text_summary_report_email_desc:(0,l.__)("Get statistics about emails you've sent.","wp-mail-smtp"),text_manage_notifications:(0,l.__)("Manage Default Notifications","wp-mail-smtp"),text_manage_notifications_desc:(0,l.__)("Control which email notifications your WordPress site sends.","wp-mail-smtp"),text_network_settings:(0,l.__)("Multisite Network Settings","wp-mail-smtp"),text_network_settings_desc:(0,l.__)("Save time with powerful WordPress Multisite controls.","wp-mail-smtp"),is_pro:this.$wpms.is_pro,is_multisite:this.$wpms.is_multisite,email_log:!1,complete_email_report:!!this.$wpms.is_pro,summary_report_email:!1,manage_notifications:!1,network_settings:!1}},computed:{...(0,at.Se)({contact_form_already_installed:"$_plugins/contact_form_plugin_already_installed",email_log_setting:"$_settings/email_log_enabled",summary_report_email_setting:"$_settings/summary_report_email_enabled"}),...(0,_t.vn)("$_plugins",{smart_contact_form:"smart_contact_form_setting"}),...(0,_t.vn)("$_settings",{alert_email_connections:"settings.alert_email.connections",instant_email_alert:"settings.alert_email.enabled"})},watch:{smart_contact_form:function(){if(this.contact_form_already_installed)return!1;this.showPluginInstallFooterNotice()},contact_form_already_installed:function(){this.showPluginInstallFooterNotice()},email_log_setting:function(t){this.email_log=t},summary_report_email_setting:function(t){this.summary_report_email=t}},methods:{handleSubmit(){this.$store.dispatch("$_app/start_loading");let t=[],e={value:{general:{summary_report_email_disabled:!this.summary_report_email}}};if(t.push(this.$store.dispatch("$_settings/setSummaryReportEmail",!this.summary_report_email)),this.is_pro){e.value={...e.value,logs:{enabled:this.email_log}},t.push(this.$store.dispatch("$_settings/setLogs",this.email_log));let s={enabled:this.instant_email_alert};this.instant_email_alert&&0===Object.values(this.alert_email_connections).length&&(s.connections=[{send_to:this.$wpms.current_user_email}]),e.value={...e.value,alert_email:s}}if(t.push(this.$store.dispatch("$_settings/updateSettings",e)),t.push(Promise.resolve({success:!0}).then((t=>this.smart_contact_form&&!this.contact_form_already_installed?this.$store.dispatch("$_plugins/installPlugin","wpforms-lite"):t))),!this.is_pro){const e=[];this.email_log&&e.push("email_log"),this.complete_email_report&&e.push("complete_email_report"),this.instant_email_alert&&e.push("instant_email_alert"),this.manage_notifications&&e.push("manage_notifications"),this.network_settings&&e.push("network_settings"),t.push(this.$store.dispatch("$_settings/savePluginFeatures",e))}Promise.all(t).then((t=>{const e=t.filter((t=>t.success));if(e.length===t.length){this.$emit("displayContentBelow","");let t=this.is_pro&&!this.$store.getters["$_settings/email_log_enabled"]?1:0;this.$next_step(t)}})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},previousStep(){this.$emit("displayContentBelow","");const t=this.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))-1;this.$router.push({name:`${this.$wizard_steps[t]}_${this.$store.getters["$_settings/mailer"]}`})},showPluginInstallFooterNotice(){let t=[];this.smart_contact_form&&!this.contact_form_already_installed&&t.push("WPForms");let e="";t.length>0&&(e=(0,l.__)("The following plugin will be installed for free:","wp-mail-smtp"),e=`

      ${e} ${t.join(", ")}

      `),this.$emit("displayContentBelow",e)},emailLogEnabledChanged(){"0"===this.$wpms.completed_time&&sessionStorage.setItem("wp_mail_smtp_email_log_enabled_changed","true")}},mounted(){if(this.showPluginInstallFooterNotice(),this.$wpms.is_pro&&"0"===this.$wpms.completed_time&&"true"!==sessionStorage.getItem("wp_mail_smtp_email_log_enabled_changed")?this.email_log=!0:this.email_log=this.$store.getters["$_settings/email_log_enabled"],this.summary_report_email=this.$store.getters["$_settings/summary_report_email_enabled"],!this.$wpms.is_pro){const t=this.$store.getters["$_settings/plugin_features"];t.includes("email_log")&&(this.email_log=!0),t.includes("complete_email_report")&&(this.complete_email_report=!0),t.includes("instant_email_alert")&&(this.instant_email_alert=!0),t.includes("manage_notifications")&&(this.manage_notifications=!0),t.includes("network_settings")&&(this.network_settings=!0)}}},Ct=yt,St=(0,d.Z)(Ct,gt,wt,!1,null,null,null),Pt=St.exports,Mt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-help-improve"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-help-improve-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("settings-input-text",{attrs:{name:"email",type:"email",label:t.text_email_label,description:t.text_email_description},model:{value:t.current_user_email,callback:function(e){t.current_user_email=e},expression:"current_user_email"}}),e("settings-input-checkbox",{attrs:{name:"usage_tracking",label:t.text_usage_tracking_label,description:t.text_usage_tracking_description,tooltip:t.text_usage_tracking_tooltip},model:{value:t.usage_tracking,callback:function(e){t.usage_tracking=e},expression:"usage_tracking"}})],1),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"skip_step"},domProps:{textContent:t._s(t.text_skip)},on:{click:function(e){return e.preventDefault(),t.nextStep.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step"},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},Et=[],Bt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-text",class:{"settings-input-text-with-copy":t.copy,"input-error":t.has_errors||t.field_error}},[e("label",{staticClass:"settings-input-label-container",attrs:{for:t.id}},[t.label?e("span",{staticClass:"label",domProps:{innerHTML:t._s(t.label)}}):t._e(),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1),e("span",{staticClass:"settings-input-container"},["checkbox"===t.type?e("input",{directives:[{name:"model",rawName:"v-model",value:t.currentValue,expression:"currentValue"}],ref:"input",attrs:{id:t.id,name:t.name,placeholder:t.placeholder,readonly:t.readonly,disabled:t.disabled||t.is_constant_set,type:"checkbox"},domProps:{checked:Array.isArray(t.currentValue)?t._i(t.currentValue,null)>-1:t.currentValue},on:{change:[function(e){var s=t.currentValue,i=e.target,a=!!i.checked;if(Array.isArray(s)){var n=null,o=t._i(s,n);i.checked?o<0&&(t.currentValue=s.concat([n])):o>-1&&(t.currentValue=s.slice(0,o).concat(s.slice(o+1)))}else t.currentValue=a},t.inputUpdate]}}):"radio"===t.type?e("input",{directives:[{name:"model",rawName:"v-model",value:t.currentValue,expression:"currentValue"}],ref:"input",attrs:{id:t.id,name:t.name,placeholder:t.placeholder,readonly:t.readonly,disabled:t.disabled||t.is_constant_set,type:"radio"},domProps:{checked:t._q(t.currentValue,null)},on:{change:[function(e){t.currentValue=null},t.inputUpdate]}}):e("input",{directives:[{name:"model",rawName:"v-model",value:t.currentValue,expression:"currentValue"}],ref:"input",attrs:{id:t.id,name:t.name,placeholder:t.placeholder,readonly:t.readonly,disabled:t.disabled||t.is_constant_set,type:t.type},domProps:{value:t.currentValue},on:{change:t.inputUpdate,input:function(e){e.target.composing||(t.currentValue=e.target.value)}}}),t.copy?e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-small",class:{"wp-mail-smtp-button-copied":t.show_copied},attrs:{title:t.text_copy_button},on:{click:function(e){return e.preventDefault(),t.copyValue.apply(null,arguments)}}},[e("span",{staticClass:"copy-button-container"},[e("inline-svg",{staticClass:"icon",class:{active:!t.show_copied},attrs:{src:s(8098),width:"16",height:"16"}}),e("inline-svg",{staticClass:"icon copied",class:{active:t.show_copied},attrs:{src:s(5561),width:"16",height:"16"}})],1)]):t._e()]),t.has_errors?e("p",{staticClass:"error"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(4186),width:"16"}}),e("span",{domProps:{innerHTML:t._s(t.text_error)}})],1):t._e(),t.description?e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.description)}}):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()])},Tt=[],It=function(){var t=this,e=t._self._c;return e("span",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip_data,expression:"tooltip_data"}],staticClass:"wp-mail-smtp-info",attrs:{tabindex:"0"}},[e("inline-svg",{staticClass:"icon",attrs:{src:s(1004),width:"14",height:"14"}})],1)},Ft=[],Dt={name:"SettingsInfoTooltip",props:{content:String},data(){return{tooltip_data:{content:this.content,autoHide:!1,trigger:"hover focus click"}}}},zt=Dt,Zt=(0,d.Z)(zt,It,Ft,!1,null,"74a4d2ae",null),Ot=Zt.exports,Lt={name:"SettingsInputText",components:{SettingsInfoTooltip:Ot},props:{name:String,value:String,label:String,description:String,constant:String,placeholder:String,type:{type:String,default:"text"},tooltip:String,readonly:Boolean,disabled:Boolean,format:RegExp,error:{type:String,default:""},copy:{type:Boolean,default:!1},is_error:Boolean},data(){return{has_error:!1,id:"input-"+this.name,text_copy_button:(0,l.__)("Copy input value","wp-mail-smtp"),text_copied:(0,l.__)("Copied!","wp-mail-smtp"),show_copied:!1}},computed:{currentValue:{get(){return this.value},set(t){this.$emit("is_error_update",!1),this.$emit("input",t)}},field_error:{get(){return this.is_error},set(t){this.$emit("is_error_update",t)}},has_errors:function(){return this.error.length>0||this.has_error},text_error:function(){return this.error.length>0?this.error:(0,l.__)("The value entered does not match the required format","wp-mail-smtp")},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}},methods:{inputUpdate:function(t){if(this.disabled)return!1;if(this.has_error=!1,this.format||this.type&&"email"===this.type){const e=this.format?this.format:/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;if(!e.test(t.target.value))return this.has_error=!0,this.$emit("error_detected",this.text_error),!1}},copyValue:function(){const t=this.$refs.input;t.select(),document.execCommand("copy"),this.show_copied=!0;let e=this;setTimeout((function(){e.show_copied=!1}),1e3)}}},Wt=Lt,Rt=(0,d.Z)(Wt,Bt,Tt,!1,null,null,null),Qt=Rt.exports,Ut=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-checkbox",class:{"settings-input-checkbox-checked":t.value,"settings-input-checkbox-disabled":t.disabled}},[e("span",{staticClass:"settings-input-label-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))]),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1),e("label",{staticClass:"settings-input-checkbox-container",attrs:{for:"wp-mail-smtp-settings-checkbox-"+t.name}},[e("input",{attrs:{id:"wp-mail-smtp-settings-checkbox-"+t.name,type:"checkbox",name:t.name,disabled:t.disabled},domProps:{checked:t.value},on:{input:function(e){return t.$emit("input",e.target.checked)}}}),e("span",{staticClass:"checkbox",class:{"checkbox-checked":t.value,"checkbox-disabled":t.disabled}},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"14",height:"14"}})],1),t.description?e("span",{staticClass:"input-label"},[t._v(t._s(t.description))]):t._e()])])},Nt=[],Gt={name:"SettingsInputCheckbox",components:{SettingsInfoTooltip:Ot},props:{label:String,name:String,value:Boolean,description:String,tooltip:String,disabled:Boolean}},Ht=Gt,Yt=(0,d.Z)(Ht,Ut,Nt,!1,null,null,null),Vt=Yt.exports,Kt={name:"WizardStepHelpImprove",components:{ContentHeader:h,TheWizardStepCounter:X,SettingsInputText:Qt,SettingsInputCheckbox:Vt},data(){return{text_header_title:(0,l.__)("Help Improve WP Mail SMTP + Smart Recommendations","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Get helpful suggestions from WP Mail SMTP on how to optimize your email deliverability and grow your business.","wp-mail-smtp"),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_skip:(0,l.__)("Skip this Step","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_email_label:(0,l.__)("Your Email Address","wp-mail-smtp"),text_email_description:(0,l.__)("Your email is needed, so you can receive recommendations.","wp-mail-smtp"),text_usage_tracking_label:(0,l.__)("Help make WP Mail SMTP better for everyone","wp-mail-smtp"),text_usage_tracking_description:(0,l.__)("Yes, count me in","wp-mail-smtp"),text_usage_tracking_tooltip:(0,l.__)("By allowing us to track usage data we can better help you because we know with which WordPress configurations, themes and plugins we should test.","wp-mail-smtp"),is_pro:this.$wpms.is_pro,usage_tracking:!1}},computed:{...(0,_t.vn)("$_wizard",["current_user_email"])},methods:{handleSubmit(){this.$store.dispatch("$_app/start_loading");let t=[];if(this.current_user_email&&t.push(this.$store.dispatch("$_settings/subscribeToNewsletter",this.current_user_email)),this.usage_tracking){const e={value:{general:{"usage-tracking-enabled":!0}}};t.push(this.$store.dispatch("$_settings/updateSettings",e))}Promise.all(t).then((()=>{this.nextStep()})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},nextStep(){this.$next_step()},previousStep(){this.$previous_step()}}},Jt=Kt,qt=(0,d.Z)(Jt,Mt,Et,!1,null,null,null),Xt=qt.exports,jt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-license"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-license-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),t.is_pro?t._e():e("div",{staticClass:"upgrade-content"},[e("p",{staticClass:"medium-bold",domProps:{innerHTML:t._s(t.text_upgrade_paragraph)}}),e("div",{staticClass:"checked-item-list"},[e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_email_log))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_complete_email_report))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_instant_email_alert))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_summary_report_email))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_manage_notifications))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_network_settings))])],1)])]),t.verified?e("div",{staticClass:"verified-license"},[e("p",{domProps:{innerHTML:t._s(t.text_verified_license)}})]):e("div",{staticClass:"license-form",class:{"license-form-error":t.license_error}},[e("p",{domProps:{innerHTML:t._s(t.text_license_form)}}),e("div",{staticClass:"license-control"},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.license,expression:"license"}],attrs:{name:"license",type:"password",placeholder:t.text_license_input_placeholder,"aria-label":t.text_aria_label_for_license_input},domProps:{value:t.license},on:{input:function(e){e.target.composing||(t.license=e.target.value)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-success wp-mail-smtp-button-small",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.handleLicenseSubmit.apply(null,arguments)}}},[t._v(" "+t._s(t.text_license_button)+" ")])]),t.license_error?e("p",{staticClass:"error-message",domProps:{textContent:t._s(t.text_license_error)}}):t._e()])]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[t.verified?e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step"},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)]):e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"skip_step"},domProps:{textContent:t._s(t.text_skip)},on:{click:function(e){return e.preventDefault(),t.nextStep.apply(null,arguments)}}})])])])},$t=[],te=s(8394),ee=s.n(te),se={name:"WizardStepLicense",components:{ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Enter your WP Mail SMTP License Key","wp-mail-smtp"),text_header_subtitle:this.$wpms.is_pro?"":(0,l.gB)((0,l.__)("You're currently using %1$sWP Mail SMTP Lite%2$s - no license needed. Enjoy!","wp-mail-smtp"),'',"")+" 🙂",text_save:(0,l.__)("Continue","wp-mail-smtp"),text_skip:(0,l.__)("Skip this Step","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_upgrade_paragraph:(0,l.gB)((0,l.__)("To unlock selected features, %1$sUpgrade to Pro%2$s and enter your license key below.","wp-mail-smtp"),'',""),text_network_settings:(0,l.__)("Multisite Network Settings","wp-mail-smtp"),text_manage_notifications:(0,l.__)("Manage Default Notifications","wp-mail-smtp"),text_email_log:(0,l.__)("Detailed Email Logs","wp-mail-smtp"),text_summary_report_email:(0,l.__)("Enhanced Weekly Email Summary","wp-mail-smtp"),text_license_form_lite:(0,l.gB)((0,l.__)("Already purchased? Enter your license key below to connect with %1$sWP Mail SMTP Pro%2$s!","wp-mail-smtp"),"",""),text_license_form_pro:(0,l.__)("Enter your license key below to unlock plugin updates!","wp-mail-smtp"),text_license_button:this.$wpms.is_pro?(0,l.__)("Verify License Key","wp-mail-smtp"):(0,l.__)("Connect","wp-mail-smtp"),text_license_error:(0,l.__)("The License Key format is incorrect. Please enter a valid key and try again.","wp-mail-smtp"),text_verified_license:(0,l.__)("Your license was successfully verified! You are ready for the next step.","wp-mail-smtp"),text_email_log_desc:(0,l.__)("Keep records of every email that's sent out from your website.","wp-mail-smtp"),text_manage_notifications_desc:(0,l.__)("Control which email notifications your WordPress site sends.","wp-mail-smtp"),text_network_settings_desc:(0,l.__)("Save time with powerful WordPress Multisite controls.","wp-mail-smtp"),text_instant_email_alert:(0,l.__)("Instant Email Alerts","wp-mail-smtp"),text_instant_email_alert_desc:(0,l.__)("Get notifications via email, SMS, Slack, or webhook when emails fail to send.","wp-mail-smtp"),text_complete_email_report:(0,l.__)("Complete Email Reports","wp-mail-smtp"),text_complete_email_report_desc:(0,l.__)("See the delivery status, track opens and clicks, and create deliverability graphs.","wp-mail-smtp"),text_pro_badge:(0,l.__)("Pro badge","wp-mail-smtp"),text_aria_label_for_license_input:(0,l.__)("License key input","wp-mail-smtp"),text_license_input_placeholder:(0,l.__)("Paste your license key here","wp-mail-smtp"),pro_badge:s(330),is_pro:this.$wpms.is_pro,verified:!1,license:"",license_error:!1}},computed:{text_license_form:function(){return this.is_pro?this.text_license_form_pro:this.text_license_form_lite},...(0,at.Se)({selectedProFeatures:"$_settings/plugin_features"})},methods:{handleLicenseSubmit(){return this.license_error=!1,!(!this.is_pro&&0===this.license.length)&&(this.is_pro&&this.license.length<16?(this.license_error=!0,!1):(this.$store.dispatch("$_app/start_loading"),void(this.is_pro?this.$store.dispatch("$_settings/verifyLicense",this.license).then((t=>{t.success?(this.verified=!0,this.$swal({title:(0,l.__)("Successful Verification!","wp-mail-smtp"),html:t.data.message,width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})):this.$swal({title:(0,l.__)("Verification Error!","wp-mail-smtp"),html:t.data,width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")})):this.$store.dispatch("$_settings/upgradePlugin",this.license).then((t=>{if(t.success&&ee()(t,"data.redirect_url"))return window.location=t.data.redirect_url;this.$store.dispatch("$_app/stop_loading"),this.$swal({title:t.success?(0,l.__)("Successful Upgrade!","wp-mail-smtp"):(0,l.__)("Upgrade Failed!","wp-mail-smtp"),html:t.data,width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})})))))},handleSubmit(){this.nextStep()},nextStep(){this.$next_step()},previousStep(){let t=this.is_pro&&!this.$store.getters["$_settings/email_log_enabled"]?1:0;this.$previous_step(t)},prepareLongCheckbox(t,e){return``},prepareProFeaturesHtml(){let t="
      ";return this.selectedProFeatures.includes("email_log")&&(t+=this.prepareLongCheckbox(this.text_email_log,this.text_email_log_desc)),this.selectedProFeatures.includes("complete_email_report")&&(t+=this.prepareLongCheckbox(this.text_complete_email_report,this.text_complete_email_report_desc)),this.selectedProFeatures.includes("instant_email_alert")&&(t+=this.prepareLongCheckbox(this.text_instant_email_alert,this.text_instant_email_alert_desc)),this.selectedProFeatures.includes("manage_notifications")&&(t+=this.prepareLongCheckbox(this.text_manage_notifications,this.text_manage_notifications_desc)),this.selectedProFeatures.includes("network_settings")&&(t+=this.prepareLongCheckbox(this.text_network_settings,this.text_network_settings_desc)),t+"
      "}},mounted(){if(!this.is_pro&&this.selectedProFeatures.length>0){const t=this.prepareProFeaturesHtml();this.$swal({title:(0,l.__)("Would you like to purchase the following features now?","wp-mail-smtp"),html:`

      ${(0,l.__)("These features are available as part of WP Mail SMTP Pro plan.","wp-mail-smtp")}

      \n\t\t\t\t\t\t\t${t}\n\t\t\t\t\t\t\t

      ${(0,l.gB)((0,l.__)("%1$sBonus:%2$s You can upgrade to the Pro plan and %3$ssave %5$s today%4$s, automatically applied at checkout.","wp-mail-smtp"),"","",'',"","$50")}

      \n\t\t\t\t\t\t`,width:850,showCloseButton:!0,allowOutsideClick:!1,allowEscapeKey:!1,allowEnterKey:!1,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-plugin-upgrade"},confirmButtonText:(0,l.__)("Purchase Now","wp-mail-smtp"),cancelButtonText:(0,l.__)("I'll do it later","wp-mail-smtp"),showCancelButton:!0,reverseButtons:!0}).then((t=>{if(t.value){const t=window.open(this.$wpms.upgrade_link,"_blank");t.focus()}}))}this.verified=this.$wpms.license_exists},created(){const t=new URLSearchParams(window.location.search);this.$wpms.license_exists&&!t.has("upgrade-redirect")&&this.nextStep()}},ie=se,ae=(0,d.Z)(ie,jt,$t,!1,null,null,null),ne=ae.exports,oe=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-check-configuration"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-check-configuration-header"},[e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"check-configuration-loading-image-container"},[e("img",{attrs:{src:s(7764),alt:t.text_image_alt}})])])])},re=[],le={name:"WizardStepCheckConfiguration",components:{ContentHeader:h},data(){return{text_header_title:(0,l.__)("Checking Mailer Configuration","wp-mail-smtp"),text_header_subtitle:(0,l.__)("We're running some tests in the background to make sure everything is set up properly.","wp-mail-smtp"),text_image_alt:(0,l.__)("Checking mailer configuration image","wp-mail-smtp")}},mounted(){this.$store.dispatch("$_wizard/checkMailerConfiguration").then((t=>{t.success?this.$router.push({name:"check_configuration_step_success"}):this.$router.push({name:"check_configuration_step_failure"})}))}},pe=le,me=(0,d.Z)(pe,oe,re,!1,null,null,null),_e=me.exports,ce=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-configuration-success"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-configuration-success-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"plugin-item-container"},[e("p",{staticClass:"medium-bold",domProps:{textContent:t._s(t.text_free_plugins_header)}}),e("div",t._l(t.plugins,(function(t,s){return e("plugin-item",{key:s,attrs:{name:t.name,slug:t.slug,is_installed:t.is_installed,is_activated:t.is_activated}})})),1)]),t.is_pro?t._e():e("div",{staticClass:"upgrade-banner-container"},[e("div",{staticClass:"upgrade-banner"},[e("h2",{domProps:{textContent:t._s(t.text_upgrade_title)}}),e("p",{staticClass:"subtitle",domProps:{textContent:t._s(t.text_upgrade_subtitle)}}),e("div",{staticClass:"checked-item-list"},[e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_email_log))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_manage_notifications))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_network_settings))])],1)]),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-success",attrs:{type:"button"},domProps:{textContent:t._s(t.text_upgrade_button)},on:{click:t.openUpgradePage}})]),e("p",{staticClass:"bonus",domProps:{innerHTML:t._s(t.text_bonus)}})])]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"send_test_email"},domProps:{textContent:t._s(t.text_test_email)},on:{click:function(e){return e.preventDefault(),t.handleTestEmail.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"send_feedback"},domProps:{textContent:t._s(t.text_send_feedback)},on:{click:function(e){return e.preventDefault(),t.handleFeedback.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"button",name:"finish_setup"},domProps:{textContent:t._s(t.text_finish)},on:{click:function(e){return e.preventDefault(),t.handleFinish.apply(null,arguments)}}})])])},de=[],ue=function(){var t=this,e=t._self._c;return e("div",{class:`wp-mail-smtp-plugin-item wp-mail-smtp-plugin-${t.slug}`},[e("span",{staticClass:"wp-mail-smtp-plugin-item-title-container"},[t.logo.length?e("img",{staticClass:"wp-mail-smtp-logo-icon",attrs:{src:t.logo2x,srcset:t.logo_srcset,alt:t.name}}):t._e(),e("span",{domProps:{textContent:t._s(t.name)}})]),e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",disabled:t.is_activated||t.is_installed},on:{click:function(e){return e.preventDefault(),t.handleClick.apply(null,arguments)}}},[t.loading?e("spin-loader",{attrs:{color:"white"}}):e("span",[t._v(" "+t._s(t.text_button_label)+" ")])],1)])},he=[],ge=function(){var t=this,e=t._self._c;return e("img",{class:`wp-mail-smtp-loader wp-mail-smtp-loader-${t.size}`,attrs:{src:t.image,alt:t.text_loading}})},we=[],fe={name:"SpinLoader",props:{color:{type:String,default:""},size:{type:String,default:"sm"}},data(){return{image:s(7630)(`./loading${this.color.length?"-"+this.color:""}.svg`),text_loading:(0,l.__)("Loading","wp-mail-smtp")}}},Ae=fe,be=(0,d.Z)(Ae,ge,we,!1,null,null,null),ve=be.exports,xe={name:"PluginItem",components:{SpinLoader:ve},props:{slug:String,name:String,is_installed:Boolean,is_activated:Boolean},data(){return{loading:!1,logo:s(8517)(`./${this.slug}.png`),logo2x:s(833)(`./${this.slug}@2x.png`)}},computed:{text_button_label:function(){let t=(0,l.__)("Install","wp-mail-smtp");return this.is_installed&&!this.is_activated&&(t=(0,l.__)("Installed","wp-mail-smtp")),this.is_activated&&(t=(0,l.__)("Activated","wp-mail-smtp")),t},logo_srcset:function(){return`${this.logo}, ${this.logo2x} 2x`}},methods:{handleClick(){this.loading||(this.loading=!0,this.$store.dispatch("$_plugins/installPlugin",this.slug).then((t=>{t.success&&this.$wpms_success_toast({title:`Plugin: ${this.name} installed!`}),this.loading=!1})))}}},ke=xe,ye=(0,d.Z)(ke,ue,he,!1,null,"2e2edfa6",null),Ce=ye.exports,Se={name:"WizardStepConfigurationSuccess",components:{ContentHeader:h,TheWizardStepCounter:X,PluginItem:Ce},data(){return{text_header_title:(0,l.__)("Congrats, you’ve successfully set up WP Mail SMTP!","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Here’s what to do next:","wp-mail-smtp"),text_free_plugins_header:(0,l.__)("Check out our other free WordPress plugins:","wp-mail-smtp"),text_upgrade_title:(0,l.__)("Upgrade to Unlock Powerful SMTP Features","wp-mail-smtp"),text_upgrade_subtitle:(0,l.__)("Upgrade to WP Mail SMTP Pro to unlock more awesome features and experience why WP Mail SMTP is used by over 3,000,000 websites.","wp-mail-smtp"),text_network_settings:(0,l.__)("Multisite Network Settings","wp-mail-smtp"),text_manage_notifications:(0,l.__)("Manage Default Notifications","wp-mail-smtp"),text_email_log:(0,l.__)("Detailed Email Logs","wp-mail-smtp"),text_upgrade_button:(0,l.__)("Upgrade to Pro Today","wp-mail-smtp"),text_test_email:(0,l.__)("Send a Test Email","wp-mail-smtp"),text_send_feedback:(0,l.__)("Send us Feedback","wp-mail-smtp"),text_finish:(0,l.__)("Finish Setup","wp-mail-smtp"),text_bonus:(0,l.gB)((0,l.__)("%1$sBonus:%2$s You can upgrade to the Pro plan and %3$ssave %5$s today%4$s, automatically applied at checkout.","wp-mail-smtp"),"","",'',"","$50"),star_image_html:`${(0,l.__)(`,is_pro:this.$wpms.is_pro}},computed:{...(0,at.Se)({plugins:"$_plugins/partner_plugins"})},methods:{handleTestEmail(){return window.location=this.$wpms.email_test_tab_url},goodFeedback(){this.$swal({title:(0,l.__)("Thanks for the feedback!","wp-mail-smtp"),html:`${(0,l.gB)((0,l.__)("Help us spread the word %1$sby giving WP Mail SMTP a 5-star rating %3$s(%4$s) on WordPress.org%2$s. Thanks for your support and we look forward to bringing you more awesome features.","wp-mail-smtp"),'',"","
      ",this.star_image_html+""+this.star_image_html+this.star_image_html+this.star_image_html+this.star_image_html)}`,width:650,showCloseButton:!0,allowEnterKey:!1,confirmButtonText:(0,l.__)("Rate on WordPress.org","wp-mail-smtp"),customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-feedback-good"}}).then((t=>{if(t.value){const t=window.open("https://wordpress.org/support/plugin/wp-mail-smtp/reviews/#new-post","_blank");t.focus()}}))},badFeedback(){this.$swal({title:(0,l.__)("What could we do to improve?","wp-mail-smtp"),html:`${(0,l.__)("We're sorry things didn't go smoothly for you, and want to keep improving. Please let us know any specific parts of this process that you think could be better. We really appreciate any details you're willing to share!","wp-mail-smtp")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t`,width:650,showCloseButton:!0,allowEnterKey:!1,allowOutsideClick:!1,allowEscapeKey:!1,confirmButtonText:(0,l.__)("Submit Feedback","wp-mail-smtp"),customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-feedback-bad"},preConfirm:()=>[document.getElementById("feedback").value,document.getElementById("permission").checked]}).then((t=>{if(t.value){const e=t.value[0],s=t.value[1];this.$store.dispatch("$_wizard/sendFeedback",{feedback:e,permission:s})}}))},handleFeedback(){this.$swal({title:(0,l.__)("How was your WP Mail SMTP setup experience?","wp-mail-smtp"),text:(0,l.__)("Our goal is to make your SMTP setup as simple and straightforward as possible. We'd love to know how this process went for you!","wp-mail-smtp"),width:650,showCloseButton:!0,allowEnterKey:!1,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-feedback"},showCancelButton:!0}).then((t=>{t.value?this.goodFeedback():void 0!==t.dismiss&&"cancel"===t.dismiss&&this.badFeedback()}))},handleFinish(){return window.location=this.$wpms.exit_url},openUpgradePage:function(){const t=window.open(this.$wpms.upgrade_link,"_blank");t.focus()}}},Pe=Se,Me=(0,d.Z)(Pe,ce,de,!1,null,null,null),Ee=Me.exports,Be=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-configuration-failure"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-configuration-failure-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"start-troubleshooting-arrow-container"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(1122),width:"112",height:"112"}})],1)]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"button",name:"start_troubleshooting"},domProps:{textContent:t._s(t.text_start_troubleshooting)},on:{click:function(e){return e.preventDefault(),t.handleTroubleshooting.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"finish_setup"},domProps:{textContent:t._s(t.text_finish)},on:{click:function(e){return e.preventDefault(),t.handleFinish.apply(null,arguments)}}})])])},Te=[],Ie={name:"WizardStepConfigurationFailure",components:{ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Whoops, looks like things aren’t configured properly.","wp-mail-smtp"),text_header_subtitle:(0,l.__)("We just tried to send a test email, but something prevented that from working. To see more details about the issue we detected, as well as our suggestions to fix it, please start troubleshooting.","wp-mail-smtp"),text_start_troubleshooting:(0,l.__)("Start Troubleshooting","wp-mail-smtp"),text_send_feedback:(0,l.__)("Send us Feedback","wp-mail-smtp"),text_finish:(0,l.__)("Finish Setup","wp-mail-smtp")}},methods:{handleTroubleshooting(){return window.location=`${this.$wpms.email_test_tab_url}&auto-start=1`},handleFinish(){return window.location=this.$wpms.exit_url}}},Fe=Ie,De=(0,d.Z)(Fe,Be,Te,!1,null,null,null),ze=De.exports,Ze=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-smtp"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"host",constant:"WPMS_SMTP_HOST",label:t.text_host_label,is_error:t.field_errors.includes("host")},on:{is_error_update:function(e){return t.removeFieldError("host")}},model:{value:t.host,callback:function(e){t.host=e},expression:"host"}}),e("settings-input-radio",{attrs:{name:"encryption",constant:"WPMS_SSL",label:t.text_encryption_label,options:t.encryptionOptions,description:t.text_encryption_description},on:{input:t.encryptionChanged},model:{value:t.encryption,callback:function(e){t.encryption=e},expression:"encryption"}}),e("settings-input-number",{attrs:{name:"port",constant:"WPMS_SMTP_PORT",label:t.text_port_label,is_error:t.field_errors.includes("port")},on:{is_error_update:function(e){return t.removeFieldError("port")}},model:{value:t.port,callback:function(e){t.port=e},expression:"port"}}),e("settings-input-switch",{directives:[{name:"show",rawName:"v-show",value:t.show_autotls,expression:"show_autotls"}],attrs:{name:"autotls",constant:"WPMS_SMTP_AUTOTLS",title:t.text_autotls_title,label:t.text_autotls_label,description:t.text_autotls_description},model:{value:t.autotls,callback:function(e){t.autotls=e},expression:"autotls"}}),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-switch",{attrs:{name:"auth",constant:"WPMS_SMTP_AUTH",title:t.text_auth_title,label:t.text_auth_label},model:{value:t.auth,callback:function(e){t.auth=e},expression:"auth"}}),e("settings-input-text",{directives:[{name:"show",rawName:"v-show",value:t.auth,expression:"auth"}],attrs:{name:"user",constant:"WPMS_SMTP_USER",label:t.text_user_label,is_error:t.field_errors.includes("user")},on:{is_error_update:function(e){return t.removeFieldError("user")}},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}}),e("settings-input-text",{directives:[{name:"show",rawName:"v-show",value:t.auth,expression:"auth"}],attrs:{name:"pass",constant:"WPMS_SMTP_PASS",type:"password",label:t.text_pass_label,is_error:t.field_errors.includes("pass")},on:{is_error_update:function(e){return t.removeFieldError("pass")}},model:{value:t.pass,callback:function(e){t.pass=e},expression:"pass"}}),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Oe=[],Le=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-radio"},[t.label?e("span",{staticClass:"settings-input-label-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))])]):t._e(),e("div",{staticClass:"settings-input-radio-container"},t._l(t.options,(function(s){return e("label",{key:s.value,class:t.labelClass(s.value),attrs:{for:"wp-mail-smtp-settings-radio-"+t.name+"["+s.value+"]"}},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.selected,expression:"selected"}],attrs:{id:"wp-mail-smtp-settings-radio-"+t.name+"["+s.value+"]",type:"radio",name:t.name,autocomplete:"off",readonly:t.disabled,disabled:t.is_constant_set},domProps:{value:s.value,checked:t.isChecked(s.value),checked:t._q(t.selected,s.value)},on:{change:[function(e){t.selected=s.value},t.updateSetting]}}),e("span",{class:t.titleClass(s.value)}),e("span",{staticClass:"input-label"},[t._v(t._s(s.label))])])})),0),t.description?e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.description)}}):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()])},We=[],Re={name:"SettingsInputRadio",props:{options:Array,label:String,name:String,value:String,description:String,constant:String,disabled:Boolean},data(){return{has_error:!1}},computed:{selected:{get(){return this.value},set(t){this.$emit("input",t)}},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}},methods:{updateSetting:function(){if(this.disabled)return!1},titleClass(t){let e="wp-mail-smtp-styled-radio";return this.isChecked(t)&&(e+=" wp-mail-smtp-styled-radio-checked"),this.is_constant_set&&(e+=" wp-mail-smtp-styled-radio-disabled"),e},labelClass(t){let e="";return this.isChecked(t)&&(e+=" wp-mail-smtp-styled-radio-label-checked"),this.is_constant_set&&(e+=" wp-mail-smtp-styled-radio-label-disabled"),e},isChecked(t){return t===this.selected}}},Qe=Re,Ue=(0,d.Z)(Qe,Le,We,!1,null,null,null),Ne=Ue.exports,Ge=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-number",class:{"settings-input-number-error":t.field_error}},[e("label",{staticClass:"settings-input-label-container",attrs:{for:t.id}},[t.label?e("span",{staticClass:"label"},[t._v(t._s(t.label))]):t._e(),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1),e("input",{directives:[{name:"model",rawName:"v-model",value:t.currentValue,expression:"currentValue"}],attrs:{id:t.id,type:"number",name:t.name,placeholder:t.placeholder,min:t.min,max:t.max,step:t.step,readonly:t.disabled,disabled:t.is_constant_set},domProps:{value:t.currentValue},on:{change:t.inputUpdate,input:function(e){e.target.composing||(t.currentValue=e.target.value)}}}),t.has_error?e("p",{staticClass:"error"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(4186),width:"16"}}),e("span",{domProps:{innerHTML:t._s(t.has_error)}})],1):t._e(),t.description?e("p",{staticClass:"description"},[t._v(" "+t._s(t.description)+" ")]):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()])},He=[],Ye={name:"SettingsInputNumber",components:{SettingsInfoTooltip:Ot},props:{name:String,value:[Number,String],label:String,description:String,constant:String,placeholder:String,type:{type:String,default:"text"},tooltip:String,default_value:String,min:Number,max:Number,disabled:Boolean,step:{type:Number,default:1},round:{type:Boolean,default:!1},is_error:Boolean},data(){return{has_error:!1,id:"input-"+this.name,text_error_value:(0,l.gB)((0,l.__)("Please enter a value between %1$s and %2$s","wp-mail-smtp"),""+this.min+"",""+this.max+""),text_error_round:(0,l.__)("Value has to be a round number","wp-mail-smtp")}},computed:{currentValue:{get(){return this.value},set(t){this.$emit("is_error_update",!1),this.$emit("input",parseInt(t,10))}},field_error:{get(){return this.is_error},set(t){this.$emit("is_error_update",t)}},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}},methods:{inputUpdate:function(t){if(this.disabled)return!1;this.has_error=!1;const e=parseFloat(t.target.value);return this.round&&e%1!==0?(this.has_error=this.text_error_round,!1):e>this.max||e-1:t.currentValue},on:{change:[function(e){var s=t.currentValue,i=e.target,a=!!i.checked;if(Array.isArray(s)){var n=null,o=t._i(s,n);i.checked?o<0&&(t.currentValue=s.concat([n])):o>-1&&(t.currentValue=s.slice(0,o).concat(s.slice(o+1)))}else t.currentValue=a},t.inputUpdate],click:t.inputClicked}}),e("span",{class:{"toggle-switch":!0,"toggle-switch-with-label":t.label}}),t.label?e("span",{staticClass:"label-description",domProps:{innerHTML:t._s(t.label)}}):t._e()])])])},Xe=[],je={name:"SettingsInputSwitch",components:{SettingsInfoTooltip:Ot},props:{name:String,value:Boolean,title:String,label:String,description:String,constant:String,tooltip:String,classname:String,disabled:Boolean,show_pro:Boolean},data(){return{has_error:!1,id:"input-"+this.name}},computed:{currentValue:{get(){return this.value},set(t){this.$emit("input",!!t)}},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}},methods:{inputUpdate:function(){if(this.disabled)return!1},inputClicked(t){this.$emit("clicked",t)}}},$e=je,ts=(0,d.Z)($e,qe,Xe,!1,null,null,null),es=ts.exports,ss={name:"WizardStepConfigureMailerSmtp",components:{SettingsInputText:Qt,SettingsInputRadio:Ne,SettingsInputNumber:Je,SettingsInputSwitch:es},data(){return{mailer:"smtp",text_host_label:(0,l.__)("SMTP Host","wp-mail-smtp"),text_encryption_label:(0,l.__)("Encryption","wp-mail-smtp"),text_port_label:(0,l.__)("SMTP Port","wp-mail-smtp"),text_autotls_title:(0,l.__)("Auto TLS","wp-mail-smtp"),text_autotls_label:(0,l.__)("Enable Auto TLS","wp-mail-smtp"),text_autotls_description:(0,l.__)("By default, TLS encryption is automatically used if the server supports it (recommended). In some cases, due to server misconfigurations, this can cause issues and may need to be disabled.","wp-mail-smtp"),text_auth_title:(0,l.__)("Authentication","wp-mail-smtp"),text_auth_label:(0,l.__)("Enable Authentication","wp-mail-smtp"),text_user_label:(0,l.__)("SMTP Username","wp-mail-smtp"),text_pass_label:(0,l.__)("SMTP Password","wp-mail-smtp"),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_encryption_description:(0,l.__)("For most servers TLS is the recommended option. If your SMTP provider offers both SSL and TLS options, we recommend using TLS.","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),description:this.$wpms.mailer_options.smtp.description,encryptionOptions:[{label:(0,l.__)("None","wp-mail-smtp"),value:"none",default_port:25},{label:(0,l.__)("SSL","wp-mail-smtp"),value:"ssl",default_port:465},{label:(0,l.__)("TLS","wp-mail-smtp"),value:"tls",default_port:587}],show_autotls:!0,show_user_and_pass:!0,field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.smtp.host","settings.smtp.auth","settings.smtp.port","settings.smtp.encryption","settings.smtp.user","settings.smtp.pass","settings.smtp.autotls","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},watch:{encryption:function(t){this.show_autotls="tls"!==t}},methods:{getEncryptionDefaultPort(t){return this.encryptionOptions.find((e=>e.value===t)).default_port},encryptionChanged(t){this.port=this.getEncryptionDefaultPort(t)},areRequiredFieldsValid(){return""===this.host&&this.field_errors.push("host"),(""===this.port||isNaN(this.port))&&this.field_errors.push("port"),this.auth&&(""===this.user&&this.field_errors.push("user"),""===this.pass&&this.field_errors.push("pass")),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}},mounted(){"tls"===this.encryption&&(this.show_autotls=!1)}},is=ss,as=(0,d.Z)(is,Ze,Oe,!1,null,null,null),ns=as.exports,os=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-sendlayer"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-small wp-mail-smtp-button-secondary",attrs:{href:t.get_started_button_url,target:"_blank",rel:"noopener noreferrer"}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_get_started_button)),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"23"}})],1)]),e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SENDLAYER_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},rs=[],ls={name:"WizardStepConfigureMailerSendlayer",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"sendlayer",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for SendLayer.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_get_started_button:(0,l.__)("Get Started with SendLayer","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up SendLayer","wp-mail-smtp"),description:this.$wpms.mailer_options.sendlayer.description.substr(0,this.$wpms.mailer_options.sendlayer.description.lastIndexOf("

      ")),get_started_button_url:this.$getUTMUrl("https://sendlayer.com/wp-mail-smtp/",{source:"wpmailsmtpplugin",medium:"WordPress",content:"Setup Wizard - Mailer Button"}),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-sendlayer-mailer-in-wp-mail-smtp/",{content:"Read how to set up SendLayer"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.sendlayer.api_key","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},ps=ls,ms=(0,d.Z)(ps,os,rs,!1,null,null,null),_s=ms.exports,cs=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-smtpcom"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-small wp-mail-smtp-button-secondary",attrs:{href:"https://wpmailsmtp.com/go/smtp/",target:"_blank",rel:"noopener noreferrer"}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_get_started_button)),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"23"}})],1)]),e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))]),e("span",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.disclosure_tooltip_data,expression:"disclosure_tooltip_data"}],staticClass:"mailer-offer-link-disclosure"},[t._v(t._s(t.text_disclosure))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SMTPCOM_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"channel",constant:"WPMS_SMTPCOM_CHANNEL",label:t.text_channel_label,description:t.text_channel_description,is_error:t.field_errors.includes("channel")},on:{is_error_update:function(e){return t.removeFieldError("channel")}},model:{value:t.channel,callback:function(e){t.channel=e},expression:"channel"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},ds=[],us={name:"WizardStepConfigureMailerSmtpCom",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"smtpcom",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_channel_label:(0,l.__)("Sender Name","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for SMTP.com.","wp-mail-smtp"),'',""),text_channel_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get a Sender Name for SMTP.com.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_get_started_button:(0,l.__)("Get Started with SMTP.com","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up SMTP.com","wp-mail-smtp"),text_disclosure:(0,l.__)("Transparency and Disclosure","wp-mail-smtp"),disclosure_tooltip_data:{content:(0,l.__)("We believe in full transparency. The SMTP.com links above are tracking links as part of our partnership with SMTP (j2 Global). We can recommend just about any SMTP service, but we only recommend products that we believe will add value to our users.","wp-mail-smtp"),autoHide:!0,trigger:"hover"},description:this.$wpms.mailer_options.smtpcom.description.substr(0,this.$wpms.mailer_options.smtpcom.description.lastIndexOf("

      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-smtp-com-mailer-in-wp-mail-smtp",{content:"Read how to set up SMTP.com"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.smtpcom.api_key","settings.smtpcom.channel","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.channel&&this.field_errors.push("channel"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},hs=us,gs=(0,d.Z)(hs,cs,ds,!1,null,null,null),ws=gs.exports,fs=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-sendinblue"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-small wp-mail-smtp-button-secondary",attrs:{href:"https://wpmailsmtp.com/go/sendinblue/",target:"_blank",rel:"noopener noreferrer"}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_get_started_button)),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"23"}})],1)]),e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))]),e("span",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.disclosure_tooltip_data,expression:"disclosure_tooltip_data"}],staticClass:"mailer-offer-link-disclosure"},[t._v(t._s(t.text_disclosure))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SENDINBLUE_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"domain",constant:"WPMS_SENDINBLUE_DOMAIN",label:t.text_domain_label,description:t.text_domain_description},model:{value:t.domain,callback:function(e){t.domain=e},expression:"domain"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},As=[],bs={name:"WizardStepConfigureMailerSendinblue",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"sendinblue",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_domain_label:(0,l.__)("Sending Domain","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for Brevo.","wp-mail-smtp"),'',""),text_domain_description:(0,l.gB)((0,l.__)("Please input the sending domain/subdomain you configured in your Brevo dashboard. More information can be found in our %1$sBrevo documentation%2$s","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_get_started_button:(0,l.__)("Get Started with Brevo","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Brevo","wp-mail-smtp"),text_disclosure:(0,l.__)("Transparency and Disclosure","wp-mail-smtp"),disclosure_tooltip_data:{content:(0,l.__)("We believe in full transparency. The Brevo links above are tracking links as part of our partnership with Brevo. We can recommend just about any SMTP service, but we only recommend products that we believe will add value to our users.","wp-mail-smtp"),autoHide:!0,trigger:"hover"},description:this.$wpms.mailer_options.sendinblue.description.substr(0,this.$wpms.mailer_options.sendinblue.description.lastIndexOf("

      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-sendinblue-mailer-in-wp-mail-smtp",{content:"Read how to set up Brevo"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.sendinblue.api_key","settings.sendinblue.domain","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},vs=bs,xs=(0,d.Z)(vs,fs,As,!1,null,null,null),ks=xs.exports,ys=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-mailgun"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_MAILGUN_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"domain",constant:"WPMS_MAILGUN_DOMAIN",label:t.text_domain_label,description:t.text_domain_description,is_error:t.field_errors.includes("domain")},on:{is_error_update:function(e){return t.removeFieldError("domain")}},model:{value:t.domain,callback:function(e){t.domain=e},expression:"domain"}}),e("settings-input-radio",{attrs:{name:"region",constant:"WPMS_MAILGUN_REGION",label:t.text_region_label,options:t.regionOptions,description:t.text_region_description},model:{value:t.region,callback:function(e){t.region=e},expression:"region"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Cs=[],Ss={name:"WizardStepConfigureMailerMailgun",components:{SettingsInputText:Qt,SettingsInputRadio:Ne,SettingsInputSwitch:es},data(){return{mailer:"mailgun",text_api_key_label:(0,l.__)("Mailgun API Key","wp-mail-smtp"),text_domain_label:(0,l.__)("Domain Name","wp-mail-smtp"),text_region_label:(0,l.__)("Region","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)('%1$sFollow this link%2$s to get a Mailgun API Key. Generate a key in the "Mailgun API Keys" section.',"wp-mail-smtp"),'',""),text_domain_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get a Domain Name from Mailgun.","wp-mail-smtp"),'',""),text_region_description:(0,l.gB)((0,l.__)("Define which endpoint you want to use for sending messages. If you are operating under EU laws, you may be required to use EU region. %1$sMore information%2$s on Mailgun.com.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Mailgun","wp-mail-smtp"),description:this.$wpms.mailer_options.mailgun.description.substr(0,this.$wpms.mailer_options.mailgun.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-mailgun-mailer-in-wp-mail-smtp/",{content:"Read how to set up Mailgun"}),regionOptions:[{label:(0,l.__)("US","wp-mail-smtp"),value:"US"},{label:(0,l.__)("EU","wp-mail-smtp"),value:"EU"}],field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.mailgun.api_key","settings.mailgun.domain","settings.mailgun.region","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.domain&&this.field_errors.push("domain"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},Ps=Ss,Ms=(0,d.Z)(Ps,ys,Cs,!1,null,null,null),Es=Ms.exports,Bs=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-sendgrid"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SENDGRID_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"domain",constant:"WPMS_SENDGRID_DOMAIN",label:t.text_domain_label,description:t.text_domain_description},model:{value:t.domain,callback:function(e){t.domain=e},expression:"domain"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Ts=[],Is={name:"WizardStepConfigureMailerSendgrid",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"sendgrid",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_domain_label:(0,l.__)("Sending Domain","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for Sendgrid.","wp-mail-smtp"),'',"")+"
      "+(0,l.gB)((0,l.__)("To send emails you will need only a %1$sMail Send%2$s access level for this API key.","wp-mail-smtp"),"",""),text_domain_description:(0,l.gB)((0,l.__)("Please input the sending domain/subdomain you configured in your SendGrid dashboard. More information can be found in our %1$sSendGrid documentation%2$s","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up SendGrid","wp-mail-smtp"),description:this.$wpms.mailer_options.sendgrid.description.substr(0,this.$wpms.mailer_options.sendgrid.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-sendgrid-mailer-in-wp-mail-smtp/",{content:"Read how to set up Sendgrid"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.sendgrid.api_key","settings.sendgrid.domain","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},Fs=Is,Ds=(0,d.Z)(Fs,Bs,Ts,!1,null,null,null),zs=Ds.exports,Zs=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-sparkpost"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SPARKPOST_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-radio",{attrs:{name:"region",constant:"WPMS_SPARKPOST_REGION",label:t.text_region_label,options:t.regionOptions,description:t.text_region_description},model:{value:t.region,callback:function(e){t.region=e},expression:"region"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Os=[],Ls={name:"WizardStepConfigureMailerSparkPost",components:{SettingsInputText:Qt,SettingsInputRadio:Ne,SettingsInputSwitch:es},data(){return{mailer:"sparkpost",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_region_label:(0,l.__)("Region","wp-mail-smtp"),text_region_description:(0,l.gB)((0,l.__)("Select your SparkPost account region. %1$sMore information%2$s on SparkPost.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up SparkPost","wp-mail-smtp"),description:this.$wpms.mailer_options.sparkpost.description.substr(0,this.$wpms.mailer_options.sparkpost.description.lastIndexOf("

      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-sparkpost-mailer-in-wp-mail-smtp/",{content:"Read how to set up SparkPost"}),regionOptions:[{label:(0,l.__)("US","wp-mail-smtp"),value:"US"},{label:(0,l.__)("EU","wp-mail-smtp"),value:"EU"}],field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.sparkpost.api_key","settings.sparkpost.region","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"]),text_api_key_description:function(){let t="EU"===this.region?"eu.":"";return(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for SparkPost.","wp-mail-smtp"),'',"")}},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},Ws=Ls,Rs=(0,d.Z)(Ws,Zs,Os,!1,null,null,null),Qs=Rs.exports,Us=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-postmark"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"server_api_token",type:"password",constant:"WPMS_POSTMARK_SERVER_API_TOKEN",label:t.text_server_api_token_label,description:t.text_server_api_token_description,is_error:t.field_errors.includes("server_api_token")},on:{is_error_update:function(e){return t.removeFieldError("server_api_token")}},model:{value:t.server_api_token,callback:function(e){t.server_api_token=e},expression:"server_api_token"}}),e("settings-input-text",{attrs:{name:"message_stream",constant:"WPMS_POSTMARK_MESSAGE_STREAM",label:t.text_message_stream_label,description:t.text_message_stream_description},model:{value:t.message_stream,callback:function(e){t.message_stream=e},expression:"message_stream"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Ns=[],Gs={name:"WizardStepConfigureMailerPostmark",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"postmark",text_server_api_token_label:(0,l.__)("Server API Token","wp-mail-smtp"),text_message_stream_label:(0,l.__)("Message Stream ID","wp-mail-smtp"),text_server_api_token_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get a Server API Token for Postmark.","wp-mail-smtp"),'',""),text_message_stream_description:(0,l.gB)((0,l.__)("Message Stream ID is optional. By default outbound (Default Transactional Stream) will be used. More information can be found in our %1$sPostmark documentation%2$s.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Postmark","wp-mail-smtp"),description:this.$wpms.mailer_options.postmark.description.substr(0,this.$wpms.mailer_options.postmark.description.lastIndexOf("

      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-postmark-mailer-in-wp-mail-smtp/",{content:"Read how to set up Postmark"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.postmark.server_api_token","settings.postmark.message_stream","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.server_api_token&&this.field_errors.push("server_api_token"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},Hs=Gs,Ys=(0,d.Z)(Hs,Us,Ns,!1,null,null,null),Vs=Ys.exports,Ks=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-amazonses"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("b",[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])])]),t.is_ssl?e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"client_id",constant:"WPMS_AMAZONSES_CLIENT_ID",label:t.text_client_id_label,is_error:t.field_errors.includes("client_id")},on:{is_error_update:function(e){return t.removeFieldError("client_id")}},model:{value:t.client_id,callback:function(e){t.client_id=e},expression:"client_id"}}),e("settings-input-text",{attrs:{name:"client_secret",type:"password",constant:"WPMS_AMAZONSES_CLIENT_SECRET",label:t.text_client_secret_label,is_error:t.field_errors.includes("client_secret")},on:{is_error_update:function(e){return t.removeFieldError("client_secret")}},model:{value:t.client_secret,callback:function(e){t.client_secret=e},expression:"client_secret"}}),e("settings-input-select",{attrs:{name:"region",constant:"WPMS_AMAZONSES_REGION",label:t.text_region_label,options:t.regionOptions,description:t.text_region_description,is_error:t.field_errors.includes("region")},on:{is_error_update:function(e){return t.removeFieldError("region")}},model:{value:t.region,callback:function(e){t.region=e},expression:"region"}}),t.is_api_auth_missing?t._e():e("div",[t.display_identities?e("div",[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-amazon-s-e-s-identities",{attrs:{options:t.identities,label:t.text_identities_label,columns:t.identities_columns}})],1):t._e(),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)],1):e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("div",{staticClass:"wp-mail-smtp-notice wp-mail-smtp-notice--error"},[e("p",[e("span",[t._v(t._s(t.text_no_ssl))]),t._v(" "),e("a",{attrs:{href:"https://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/",target:"_blank",rel:"noopener"}},[t._v(t._s(t.text_no_ssl_link_text))]),t._v(".")]),e("p",[t._v(t._s(t.text_no_ssl_diff_mailer))])])])])},Js=[],qs=s(1296),Xs=s.n(qs),js=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-select",class:{"settings-input-select-error":t.field_error}},[e("label",{staticClass:"settings-input-label-container",attrs:{for:`wp-mail-smtp-settings-select-${t.name}`}},[e("span",{staticClass:"label"},[t._v(t._s(t.label))])]),e("div",{staticClass:"settings-input-select-container"},[e("select",{directives:[{name:"model",rawName:"v-model",value:t.selected,expression:"selected"}],attrs:{id:`wp-mail-smtp-settings-select-${t.name}`,name:t.name,readonly:t.disabled,disabled:t.is_constant_set},on:{change:function(e){var s=Array.prototype.filter.call(e.target.options,(function(t){return t.selected})).map((function(t){var e="_value"in t?t._value:t.value;return e}));t.selected=e.target.multiple?s:s[0]}}},t._l(t.options,(function(s){return e("option",{key:s.value,domProps:{value:s.value}},[t._v(" "+t._s(s.label)+" ")])})),0)]),t.description?e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.description)}}):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()])},$s=[],ti={name:"SettingsInputSelect",props:{options:Array,label:String,name:String,value:String,description:String,constant:String,disabled:Boolean,is_error:Boolean},computed:{selected:{get(){return this.value},set(t){this.$emit("is_error_update",!1),this.$emit("input",t)}},field_error:{get(){return this.is_error},set(t){this.$emit("is_error_update",t)}},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}}},ei=ti,si=(0,d.Z)(ei,js,$s,!1,null,null,null),ii=si.exports,ai=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-amazon-ses-identities"},[e("label",{staticClass:"settings-input-label-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))]),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1),t.options?e("div",[t.options&&0!==t.options.length?e("p",{staticClass:"description"},[t._v(" "+t._s(t.text_identities_table_description)+" ")]):e("p",{staticClass:"description"},[e("strong",[t._v(t._s(t.text_no_registered_identities_title))]),t._v(" "+t._s(t.text_no_registered_identities_content)+" ")]),e("div",{staticClass:"ses-identities-container"},[t.options&&t.options.length>0?e("div",{staticClass:"ses-identities-table-container"},[e("table",[t.columns?e("tr",{staticClass:"ses-identity-columns"},t._l(t.filtered_columns,(function(s){return e("th",{key:s.key,class:`ses-identity-column ses-identity-column-${s.key}`},[t._v(" "+t._s(s.label)+" ")])})),0):t._e(),t._l(t.options,(function(s,i){return e("tr",{key:i},[e("td",[t._v(" "+t._s(s.value)+" ")]),e("td",[t._v(" "+t._s(s.type)+" ")]),e("td",[t._v(" "+t._s(s.status)+" ")])])})),t.show_identity_form?t._e():e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main wp-mail-smtp-button-small",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.addNewIdentity.apply(null,arguments)}}},[t._v(" "+t._s(t.text_add_new_identity)+" ")])],2)]):t._e(),t.show_identity_form||!t.options||0===t.options.length?e("div",{staticClass:"wp-mail-smtp-amazonses-identity-form"},[t.options&&0!==t.options.length?t._e():e("h3",[t._v(" "+t._s(t.text_verify_identity)+" ")]),e("div",{directives:[{name:"show",rawName:"v-show",value:1===t.verify_identity_step,expression:"verify_identity_step === 1"}],staticClass:"amazonses-identity-form-step"},[e("settings-input-radio",{attrs:{name:"identity_type",options:t.identity_type_options},model:{value:t.identity_type,callback:function(e){t.identity_type=e},expression:"identity_type"}}),e("p",{domProps:{textContent:t._s(t.verify_identity_text)}}),e("settings-input-text",{attrs:{name:"identity_value",placeholder:t.identity_value_placeholder},model:{value:t.identity_value,callback:function(e){t.identity_value=e},expression:"identity_value"}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main wp-mail-smtp-button-small wp-mail-smtp-button-verify",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.verifyIdentity.apply(null,arguments)}}},[t.loading_verify_identity?e("spin-loader",{attrs:{color:"white"}}):e("span",[t._v(t._s(t.text_verify))])],1)],1),e("div",{directives:[{name:"show",rawName:"v-show",value:2===t.verify_identity_step&&"domain"===t.verify_identity_result.type,expression:"verify_identity_step === 2 && verify_identity_result.type === 'domain'"}],staticClass:"amazonses-identity-form-step amazonses-identity-form-step-domain"},[e("p",{domProps:{innerHTML:t._s(t.text_verify_identity_step2_domain_text)}}),e("div",{staticClass:"amazonses-dns-records"},[e("div",{staticClass:"amazonses-dns-records__row amazonses-dns-records__row--heading"},[e("div",{staticClass:"amazonses-dns-records__col amazonses-dns-records__col--heading"},[t._v(" "+t._s(t.text_name)+" ")]),e("div",{staticClass:"amazonses-dns-records__col amazonses-dns-records__col--heading"},[t._v(" "+t._s(t.text_value)+" ")])]),t._l(t.verify_identity_result.domain_dkim_dns_records,(function(t,s){return e("div",{key:t.value,staticClass:"amazonses-dns-records__row amazonses-dns-records__row--record"},[e("div",{staticClass:"amazonses-dns-records__col amazonses-dns-records__col--record"},[e("settings-input-text",{attrs:{name:`dns_record_name[${s}]`,value:t.name,readonly:"",copy:""}})],1),e("div",{staticClass:"amazonses-dns-records__col amazonses-dns-records__col--record"},[e("settings-input-text",{attrs:{name:`dns_record_value[${s}]`,value:t.value,readonly:"",copy:""}})],1)])}))],2)]),e("div",{directives:[{name:"show",rawName:"v-show",value:2===t.verify_identity_step&&"email"===t.verify_identity_result.type,expression:"verify_identity_step === 2 && verify_identity_result.type === 'email'"}],staticClass:"amazonses-identity-form-step"},[e("p",{staticClass:"ses-identities-email-success-notice"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(2411),width:"16",height:"16"}}),t._v(" "),e("span",{domProps:{innerHTML:t._s(t.text_verify_identity_step2_email_text)}})],1)])]):t._e()])]):e("spin-loader",{attrs:{size:"md"}})],1)},ni=[],oi={name:"SettingsAmazonSESIdentities",components:{SettingsInfoTooltip:Ot,SettingsInputRadio:Ne,SettingsInputText:Qt,SpinLoader:ve},props:{options:Array,columns:Array,label:String,tooltip:String},computed:{filtered_columns:function(){return this.columns.filter((t=>"action"!==t.key))},identity_value_placeholder:function(){return"domain"===this.identity_type?(0,l.__)("Please enter a domain","wp-mail-smtp"):(0,l.__)("Please enter a valid email address","wp-mail-smtp")},verify_identity_text:function(){return"domain"===this.identity_type?(0,l.__)("Enter the domain name to verify it on Amazon SES and generate the required DNS CNAME records.","wp-mail-smtp"):(0,l.__)("Enter a valid email address. A verification email will be sent to the email address you entered.","wp-mail-smtp")},text_verify_identity_step2_email_text:function(){return(0,l.gB)((0,l.__)("Please check the inbox of %s for a confirmation email.","wp-mail-smtp"),this.verify_identity_result.value)},text_verify:function(){return"domain"===this.identity_type?(0,l.__)("Verify Domain","wp-mail-smtp"):(0,l.__)("Verify Email","wp-mail-smtp")}},data(){return{text_no_registered_identities_title:(0,l.__)("No registered domains or emails.","wp-mail-smtp"),text_no_registered_identities_content:(0,l.__)("You will not be able to send emails until you verify at least one domain or email address for the selected Amazon SES Region.","wp-mail-smtp"),text_view_dns:(0,l.__)("View DNS","wp-mail-smtp"),text_resend:(0,l.__)("Resend","wp-mail-smtp"),text_identities_table_description:(0,l.__)("Here are the domains and email addresses that have been verified and can be used as the From Email.","wp-mail-smtp"),text_verify_identity:(0,l.__)("Verify SES Identity","wp-mail-smtp"),text_add_new_identity:(0,l.__)("Add New SES Identity","wp-mail-smtp"),text_name:(0,l.__)("Name","wp-mail-smtp"),text_value:(0,l.__)("Value","wp-mail-smtp"),text_verify_identity_step2_domain_text:(0,l.gB)((0,l.__)("Please add these CNAME records to your domain's DNS settings. For information on how to add CNAME DNS records, please refer to the %1$sAmazon SES documentation%2$s.","wp-mail-smtp"),'',""),show_identity_form:!1,identity_type:"domain",identity_type_options:[{label:(0,l.__)("Verify Domain","wp-mail-smtp"),value:"domain"},{label:(0,l.__)("Verify Email Address","wp-mail-smtp"),value:"email"}],identity_value:"",verify_identity_step:1,verify_identity_result:{},loading_verify_identity:!1}},methods:{verifyIdentity:function(){if(this.loading_verify_identity)return;this.loading_verify_identity=!0;const t=this;this.$store.dispatch("$_settings/amazonSESRegisterIdentity",{value:this.identity_value,type:this.identity_type}).then((function(e){t.loading_verify_identity=!1,e.success&&e.data&&(t.verify_identity_result=e.data,t.verify_identity_step=2)}))},addNewIdentity:function(){this.show_identity_form=!0}}},ri=oi,li=(0,d.Z)(ri,ai,ni,!1,null,null,null),pi=li.exports,mi={name:"WizardStepConfigureMailerAmazonSES",components:{SettingsInputText:Qt,SettingsInputSelect:ii,SettingsInputSwitch:es,SettingsAmazonSESIdentities:pi},data(){return{mailer:"amazonses",text_client_id_label:(0,l.__)("Access Key ID","wp-mail-smtp"),text_client_secret_label:(0,l.__)("Secret Access Key",{NODE_ENV:"production",VUE_APP_TEXTDOMAIN:"wp-mail-smtp",VUE_APP_PRODUCT_NAME:"WPMailSMTP",BASE_URL:""}.VUE_APP_TEXTclient_id),text_region_label:(0,l.__)("Region","wp-mail-smtp"),text_identities_label:(0,l.__)("SES Identities","wp-mail-smtp"),text_region_description:(0,l.__)("Please select the Amazon SES API region which is the closest to where your website is hosted. This can help to decrease network latency between your site and Amazon SES, which will speed up email sending.","wp-mail-smtp"),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Amazon SES","wp-mail-smtp"),text_no_ssl:(0,l.__)("Amazon SES requires an SSL certificate, and so is not currently compatible with your site. Please contact your host to request a SSL certificate, or check out ","wp-mail-smtp"),text_no_ssl_link_text:(0,l.__)("WPBeginner's tutorial on how to set up SSL","wp-mail-smtp"),text_no_ssl_diff_mailer:(0,l.__)("If you'd prefer not to set up SSL, or need an SMTP solution in the meantime, please go back and select a different mailer option.","wp-mail-smtp"),description:this.$wpms.mailer_options.amazonses.description.substr(0,this.$wpms.mailer_options.amazonses.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-amazon-ses-mailer-in-wp-mail-smtp/",{content:"Read how to set up Amazon SES"}),regionOptions:this.$wpms.mailer_options.amazonses.region_options||[],fetching_identities:!1,is_ssl:this.$wpms.is_ssl,field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.amazonses.client_id","settings.amazonses.client_secret","settings.amazonses.region","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"]),...(0,_t.vn)("$_settings",{identities_columns:"amazonses_identities.columns",identities:"amazonses_identities.data",display_identities:"amazonses_display_identities"}),...(0,_t.vn)("$_wizard",["blocked_step"]),is_api_auth_missing:function(){return!this.client_id||!this.client_secret||!this.region}},watch:{client_id:function(){this.getIdentitiesDelayed()},client_secret:function(){this.getIdentitiesDelayed()},region:function(){this.getIdentities()}},methods:{getIdentities:function(){this.display_identities&&(this.fetching_identities||this.client_id.length<20||this.client_secret.length<40||!this.region||(this.fetching_identities=!0,this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/getAmazonSESIdentities").then((()=>{this.fetching_identities=!1})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))))},getIdentitiesDelayed:Xs()((function(){this.getIdentities()}),500),areRequiredFieldsValid(){return""===this.client_id&&this.field_errors.push("client_id"),""===this.client_secret&&this.field_errors.push("client_secret"),""===this.region&&this.field_errors.push("region"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}},mounted(){this.getIdentities(),this.$wpms.is_ssl||(this.blocked_step=!0)}},_i=mi,ci=(0,d.Z)(_i,Ks,Js,!1,null,"05d90eba",null),di=ci.exports,ui=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-gmail"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("b",[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-switch",{attrs:{classname:"wp-mail-smtp-gmail-one-click-setup-switch",name:"one_click_setup_enabled",title:t.text_one_click_setup_title,label:t.one_click_setup_enabled?t.text_enabled:t.text_disabled,description:t.text_one_click_setup_description,show_pro:!t.is_pro},on:{clicked:t.oneClickSetupOptionClicked},model:{value:t.one_click_setup_enabled,callback:function(e){t.one_click_setup_enabled=e},expression:"one_click_setup_enabled"}}),t.one_click_setup_enabled?[t.is_license_verification_required?[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("div",{staticClass:"license-form",class:{"license-form-error":t.license_error}},[e("p",{domProps:{innerHTML:t._s(t.text_license_form)}}),e("div",{staticClass:"license-control"},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.license,expression:"license"}],attrs:{name:"license",type:"password",placeholder:t.text_license_input_placeholder,"aria-label":t.text_aria_label_for_license_input},domProps:{value:t.license},on:{input:function(e){e.target.composing||(t.license=e.target.value)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-success wp-mail-smtp-button-small",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.handleLicenseSubmit.apply(null,arguments)}}},[t._v(" "+t._s(t.text_license_button)+" ")])]),t.license_error?e("p",{staticClass:"error-message",domProps:{textContent:t._s(t.text_license_error)}}):t._e()]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"})]:t._e(),e("settings-o-auth-connection",{attrs:{hide_description:!0,mailer:t.mailer,connected_email:t.one_click_setup_connected_email_address,is_auth_required:t.is_auth_required,disabled:t.is_license_verification_required}})]:[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"client_id",constant:"WPMS_GMAIL_CLIENT_ID",label:t.text_client_id_label,is_error:t.field_errors.includes("client_id")},on:{is_error_update:function(e){return t.removeFieldError("client_id")}},model:{value:t.client_id,callback:function(e){t.client_id=e},expression:"client_id"}}),e("settings-input-text",{attrs:{name:"client_secret",type:"password",constant:"WPMS_GMAIL_CLIENT_SECRET",label:t.text_client_secret_label,is_error:t.field_errors.includes("client_secret")},on:{is_error_update:function(e){return t.removeFieldError("client_secret")}},model:{value:t.client_secret,callback:function(e){t.client_secret=e},expression:"client_secret"}}),e("settings-input-text",{attrs:{value:t.redirect_uri,name:"redirect_uri",label:t.text_redirect_uri_label,copy:"",readonly:""}}),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-o-auth-connection",{attrs:{label:t.text_authorization_label,mailer:t.mailer,connected_email:t.connected_email_address,is_auth_required:t.is_auth_required,client_id:t.client_id,client_secret:t.client_secret}})],t.is_auth_required?t._e():e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-general-settings"},[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)],2)])},hi=[],gi=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-oauth-connection"},[t.label?e("label",{staticClass:"settings-input-label-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))]),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1):t._e(),t.is_auth_required?e("div",{staticClass:"add-authorization-container"},[t.hide_description?t._e():e("p",{staticClass:"description",domProps:{textContent:t._s(t.text_authorization_button_description)}}),"gmail"===t.mailer&&t.gmail_one_click_setup_enabled?e("button",{staticClass:"wp-mail-smtp-google-sign-in-btn",attrs:{type:"button",disabled:!t.are_client_details_ready||t.disabled},on:{click:function(e){return e.preventDefault(),t.authorize.apply(null,arguments)}}},[e("span",{staticClass:"wp-mail-smtp-google-sign-in-btn__icon"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(214),width:"46",height:"46"}})],1),e("span",{staticClass:"wp-mail-smtp-google-sign-in-btn__text"},[t._v(" "+t._s(t.text_google_authorization_button)+" ")])]):e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main wp-mail-smtp-button-small",attrs:{type:"button",disabled:!t.are_client_details_ready||t.disabled},on:{click:function(e){return e.preventDefault(),t.authorize.apply(null,arguments)}}},[t._v(" "+t._s(t.text_authorization_button)+" ")])]):e("div",{staticClass:"remove-authorization-container"},[t.connected_email?e("p",{staticClass:"description connected-as"},[e("span",{domProps:{innerHTML:t._s(t.text_connected_as_with_email)}}),t._v(" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(2546),width:"16",height:"16"}})],1):t._e(),"gmail"===t.mailer?e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.text_remove_authorization_button_description_google)}}):t._e(),e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.text_remove_authorization_button_description)}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-red wp-mail-smtp-button-small",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.removeAuthorization.apply(null,arguments)}}},[t._v(" "+t._s(t.text_remove_authorization_button)+" ")])])])},wi=[],fi={name:"SettingsOAuthConnection",components:{SettingsInfoTooltip:Ot},props:{label:String,hide_description:Boolean,mailer:String,connected_email:String,is_auth_required:Boolean,client_id:String,client_secret:String,tooltip:String,disabled:Boolean},data(){return{text_allow_button:(0,l.__)("Connect to %s","wp-mail-smtp"),text_google_authorization_button:(0,l.__)("Sign in with Google","wp-mail-smtp"),text_authorization_button_description_general:(0,l.__)("Before continuing, you'll need to allow this plugin to send emails using your %s account.","wp-mail-smtp"),text_remove_authorization_button:(0,l.__)("Remove OAuth Connection","wp-mail-smtp"),text_remove_authorization_button_description_google:(0,l.gB)((0,l.__)("If you want to use a different From Email address you can setup a Google email alias. %1$sFollow these instructions%2$s, then select the alias in the From Email section below.","wp-mail-smtp"),'',""),text_remove_authorization_button_desc_template:(0,l.__)("Removing this OAuth connection will give you the ability to redo the OAuth connection or connect to different %s account.","wp-mail-smtp"),text_connected_as:(0,l.__)("Connected as","wp-mail-smtp")}},computed:{...(0,at.Se)({gmail_one_click_setup_enabled:"$_settings/gmail_one_click_setup_enabled"}),are_client_details_ready:function(){return!("gmail"!==this.mailer||!this.gmail_one_click_setup_enabled)||!!this.client_id&&!!this.client_secret},mailer_name:function(){let t="Google";return"outlook"===this.mailer?t="Microsoft Outlook":"zoho"===this.mailer&&(t="Zoho Mail"),t},text_authorization_button:function(){return(0,l.gB)(this.text_allow_button,this.mailer_name)},text_authorization_button_description:function(){return(0,l.gB)(this.text_authorization_button_description_general,this.mailer_name)},text_remove_authorization_button_description:function(){return(0,l.gB)(this.text_remove_authorization_button_desc_template,this.mailer_name)},text_connected_as_with_email:function(){return`${this.text_connected_as} ${this.connected_email}`}},methods:{authorize:function(){this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/getAuthUrl",this.mailer).then((function(t){t.success&&t.data.oauth_url&&(window.location.href=t.data.oauth_url)})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},removeAuthorization:function(){this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/removeAuth",this.mailer).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},removeUrlParam:function(t,e,s){e.delete(s),t.search=e.toString(),window.history.replaceState({},document.title,t.toString())},catchAuthNotice:function(){const t=new URL(window.location.href),e=new URLSearchParams(t.search);let s="",i="",a=!1;switch(e.has("success")?(s=e.get("success"),a=!0,this.removeUrlParam(t,e,"success")):e.has("error")&&(s=e.get("error"),this.removeUrlParam(t,e,"error")),s){case"oauth_invalid_state":i=(0,l.__)("There was an error while processing the authentication request. The state key is invalid. Please try again.","wp-mail-smtp");break;case"google_no_code_scope":case"google_access_denied":case"zoho_access_denied":i=(0,l.__)("There was an error while processing the authentication request. Please try again.","wp-mail-smtp");break;case"google_no_clients":case"zoho_no_clients":case"microsoft_unsuccessful_oauth":case"google_unsuccessful_oauth":i=(0,l.__)("There was an error while processing the authentication request. Please recheck your Client ID and Client Secret and try again.","wp-mail-smtp");break;case"google_one_click_setup_unsuccessful_oauth":i=(0,l.__)("There was an error while processing the authentication request.","wp-mail-smtp");break;case"google_invalid_nonce":case"microsoft_invalid_nonce":case"zoho_invalid_nonce":i=(0,l.__)("There was an error while processing the authentication request. The nonce is invalid. Please try again.","wp-mail-smtp");break;case"microsoft_no_code":case"zoho_no_code":i=(0,l.__)("There was an error while processing the authentication request. The authorization code is missing. Please try again.","wp-mail-smtp");break;case"zoho_unsuccessful_oauth":i=(0,l.__)("There was an error while processing the authentication request. Please recheck your Region, Client ID and Client Secret and try again.","wp-mail-smtp");break;case"google_site_linked":i=(0,l.__)("You have successfully linked the current site with your Google API project. Now you can start sending emails through Gmail.","wp-mail-smtp");break;case"google_one_click_setup_site_linked":i=(0,l.__)("You have successfully connected your site with your Gmail account. Now you can start sending emails through Gmail.","wp-mail-smtp");break;case"microsoft_site_linked":i=(0,l.__)("You have successfully linked the current site with your Microsoft API project. Now you can start sending emails through Outlook.","wp-mail-smtp");break;case"zoho_site_linked":i=(0,l.__)("You have successfully linked the current site with your Zoho Mail API project. Now you can start sending emails through Zoho Mail.","wp-mail-smtp");break}i.length>0&&this.$swal({title:a?(0,l.__)("Successful Authorization","wp-mail-smtp"):(0,l.__)("Authorization Error!","wp-mail-smtp"),text:i,width:550,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})}},mounted(){this.catchAuthNotice()}},Ai=fi,bi=(0,d.Z)(Ai,gi,wi,!1,null,null,null),vi=bi.exports,xi={name:"WizardStepConfigureMailerGmail",components:{SettingsInputText:Qt,SettingsInputSwitch:es,SettingsOAuthConnection:vi},data(){return{mailer:"gmail",text_one_click_setup_title:(0,l.__)("One-Click Setup","wp-mail-smtp"),text_one_click_setup_description:(0,l.__)("Provides a quick and easy way to connect to Google that doesn't require creating your own app.","wp-mail-smtp"),text_client_id_label:(0,l.__)("Client ID","wp-mail-smtp"),text_client_secret_label:(0,l.__)("Client Secret","wp-mail-smtp"),text_redirect_uri_label:(0,l.__)("Authorized Redirect URI","wp-mail-smtp"),text_authorization_label:(0,l.__)("Authorization","wp-mail-smtp"),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from. You can use only the connected email address or its alias.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up the Gmail mailer","wp-mail-smtp"),text_enabled:(0,l.__)("Enabled","wp-mail-smtp"),text_disabled:(0,l.__)("Disabled","wp-mail-smtp"),text_one_click_setup_upgrade_title:(0,l.__)("One-Click Setup for Google Mailer
      is a Pro Feature","wp-mail-smtp"),text_one_click_setup_upgrade_content:(0,l.__)("We're sorry, One-Click Setup for Google Mailer is not available on your plan. Please upgrade to the Pro plan to unlock all these awesome features.","wp-mail-smtp"),description:this.$wpms.mailer_options.gmail.description.substr(0,this.$wpms.mailer_options.gmail.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-gmail-mailer-in-wp-mail-smtp/#create-app",{content:"Read how to set up the Gmail mailer"}),redirect_uri:this.$wpms.mailer_options.gmail.redirect_uri,field_errors:[],license_verified:!1,license:"",license_error:!1,text_license_form:(0,l.__)("One-Click Setup for Google Mailer requires an active license. Verify your license to proceed with this One-Click Setup, please.","wp-mail-smtp"),text_license_input_placeholder:(0,l.__)("Paste your license key here","wp-mail-smtp"),text_aria_label_for_license_input:(0,l.__)("License key input","wp-mail-smtp"),text_license_button:(0,l.__)("Verify License Key","wp-mail-smtp"),text_license_error:(0,l.__)("The License Key format is incorrect. Please enter a valid key and try again.","wp-mail-smtp"),is_pro:this.$wpms.is_pro,one_click_setup_enabled:!1}},computed:{...(0,_t.vn)("$_settings",["settings.gmail.client_id","settings.gmail.client_secret","settings.gmail.access_token","settings.gmail.refresh_token","settings.gmail.one_click_setup_credentials","settings.mail.from_email","settings.mail.from_email_force","settings.mail.from_name","settings.mail.from_name_force"]),...(0,_t.vn)("$_wizard",["blocked_step"]),...(0,at.Se)({is_valid_license:"$_settings/is_valid_license",one_click_setup_enabled_setting:"$_settings/gmail_one_click_setup_enabled",connected_email_address:"$_settings/gmail_email",one_click_setup_connected_email_address:"$_settings/gmail_one_click_setup_email"}),is_auth_required:function(){return this.one_click_setup_enabled?!this.one_click_setup_credentials?.key||!this.one_click_setup_credentials?.token:!this.access_token||!this.refresh_token},is_license_verification_required:function(){return!this.license_verified&&!this.is_valid_license&&this.is_auth_required}},watch:{is_auth_required:function(t){this.blocked_step=t},one_click_setup_enabled:function(t){this.is_pro&&this.$store.dispatch("$_settings/setGmailUseOneClickSetup",t)},one_click_setup_enabled_setting:function(t){this.is_pro&&(this.one_click_setup_enabled=t)}},methods:{areRequiredFieldsValid(){let t=!0;return""===this.from_email&&(t=!1,this.field_errors.push("from_email")),this.one_click_setup_enabled||(""===this.client_id&&(t=!1,this.field_errors.push("client_id")),""===this.client_secret&&(t=!1,this.field_errors.push("client_secret"))),t},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},handleLicenseSubmit(){if(this.license_error=!1,this.license.length<16)return this.license_error=!0,!1;this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/verifyLicense",this.license).then((t=>{t.success?(this.license_verified=!0,this.$swal({title:(0,l.__)("Successful Verification!","wp-mail-smtp"),html:(0,l.__)("Now you can continue mailer configuration.","wp-mail-smtp"),width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})):this.$swal({title:(0,l.__)("Verification Error!","wp-mail-smtp"),html:t.data,width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},oneClickSetupOptionClicked(t){this.is_pro||(t.preventDefault(),this.oneClickSetupUpgradePopup())},oneClickSetupUpgradePopup(){var t=/(\?)/.test(this.$wpms.education.upgrade_url)?"&":"?",e=this.$wpms.education.upgrade_url+t+"utm_content="+encodeURIComponent("gmail-one-click-setup");this.$swal({title:this.text_one_click_setup_upgrade_title,html:`

      ${this.text_one_click_setup_upgrade_content}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_button}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_bonus}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_doc}

      `,width:550,imageUrl:s(4523),imageWidth:31,imageHeight:35,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-upgrade-popup"},showConfirmButton:!1})}},mounted(){this.is_auth_required&&(this.blocked_step=!0),this.is_pro&&(this.one_click_setup_enabled=this.one_click_setup_enabled_setting)}},ki=xi,yi=(0,d.Z)(ki,ui,hi,!1,null,null,null),Ci=yi.exports,Si=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-outlook"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),t.is_ssl?e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"client_id",constant:"WPMS_OUTLOOK_CLIENT_ID",label:t.text_client_id_label,is_error:t.field_errors.includes("client_id")},on:{is_error_update:function(e){return t.removeFieldError("client_id")}},model:{value:t.client_id,callback:function(e){t.client_id=e},expression:"client_id"}}),e("settings-input-text",{attrs:{name:"client_secret",type:"password",constant:"WPMS_OUTLOOK_CLIENT_SECRET",label:t.text_client_secret_label,is_error:t.field_errors.includes("client_secret")},on:{is_error_update:function(e){return t.removeFieldError("client_secret")}},model:{value:t.client_secret,callback:function(e){t.client_secret=e},expression:"client_secret"}}),e("settings-input-text",{attrs:{value:t.redirect_uri,name:"redirect_uri",label:t.text_redirect_uri_label,copy:"",readonly:""}}),e("settings-o-auth-connection",{attrs:{label:t.text_authorization_label,mailer:t.mailer,connected_email:t.connected_email_address,is_auth_required:t.is_auth_required,client_id:t.client_id,client_secret:t.client_secret}}),t.is_auth_required?t._e():e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-general-settings"},[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)],1):e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("div",{staticClass:"wp-mail-smtp-notice wp-mail-smtp-notice--error"},[e("p",[e("span",[t._v(t._s(t.text_no_ssl))]),t._v(" "),e("a",{attrs:{href:"https://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/",target:"_blank",rel:"noopener"}},[t._v(t._s(t.text_no_ssl_link_text))]),t._v(".")]),e("p",[t._v(t._s(t.text_no_ssl_diff_mailer))])])])])},Pi=[],Mi={name:"WizardStepConfigureMailerOutlook",components:{SettingsInputText:Qt,SettingsInputSwitch:es,SettingsOAuthConnection:vi},data(){return{mailer:"outlook",text_client_id_label:(0,l.__)("Application ID","wp-mail-smtp"),text_client_secret_label:(0,l.__)("Application Password","wp-mail-smtp"),text_redirect_uri_label:(0,l.__)("Redirect URI","wp-mail-smtp"),text_authorization_label:(0,l.__)("Authorization","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Microsoft Outlook / 365","wp-mail-smtp"),text_no_ssl:(0,l.__)("Outlook / 365 requires an SSL certificate, and so is not currently compatible with your site. Please contact your host to request a SSL certificate, or check out ","wp-mail-smtp"),text_no_ssl_link_text:(0,l.__)("WPBeginner's tutorial on how to set up SSL","wp-mail-smtp"),text_no_ssl_diff_mailer:(0,l.__)("If you'd prefer not to set up SSL, or need an SMTP solution in the meantime, please go back and select a different mailer option.","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),description:this.$wpms.mailer_options.outlook.description.substr(0,this.$wpms.mailer_options.outlook.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-outlook-mailer-in-wp-mail-smtp/#microsoft-setup",{content:"Read how to set up Microsoft Outlook / 365"}),redirect_uri:this.$wpms.mailer_options.outlook.redirect_uri,field_errors:[],is_ssl:this.$wpms.is_ssl}},computed:{...(0,_t.vn)("$_settings",["settings.outlook.client_id","settings.outlook.client_secret","settings.outlook.access_token","settings.outlook.refresh_token","settings.mail.from_email","settings.mail.from_email_force"]),...(0,_t.vn)("$_wizard",["blocked_step"]),...(0,at.Se)({connected_email_address:"$_settings/outlook_email"}),is_auth_required:function(){return!this.access_token||!this.refresh_token}},watch:{is_auth_required:function(t){this.blocked_step=t}},methods:{areRequiredFieldsValid(){return""===this.client_id&&this.field_errors.push("client_id"),""===this.client_secret&&this.field_errors.push("client_secret"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}},mounted(){this.is_auth_required&&(this.blocked_step=!0),this.$wpms.is_ssl||(this.blocked_step=!0)}},Ei=Mi,Bi=(0,d.Z)(Ei,Si,Pi,!1,null,"1230186a",null),Ti=Bi.exports,Ii=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-zoho"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-select",{attrs:{name:"domain",constant:"WPMS_ZOHO_DOMAIN",label:t.text_domain_label,options:t.domain_options,description:t.text_domain_description,is_error:t.field_errors.includes("domain")},on:{is_error_update:function(e){return t.removeFieldError("domain")}},model:{value:t.domain,callback:function(e){t.domain=e},expression:"domain"}}),e("settings-input-text",{attrs:{name:"client_id",constant:"WPMS_ZOHO_CLIENT_ID",label:t.text_client_id_label,is_error:t.field_errors.includes("client_id")},on:{is_error_update:function(e){return t.removeFieldError("client_id")}},model:{value:t.client_id,callback:function(e){t.client_id=e},expression:"client_id"}}),e("settings-input-text",{attrs:{name:"client_secret",constant:"WPMS_ZOHO_CLIENT_SECRET",type:"password",label:t.text_client_secret_label,is_error:t.field_errors.includes("client_secret")},on:{is_error_update:function(e){return t.removeFieldError("client_secret")}},model:{value:t.client_secret,callback:function(e){t.client_secret=e},expression:"client_secret"}}),e("settings-input-text",{attrs:{value:t.redirect_uri,name:"redirect_uri",label:t.text_redirect_uri_label,copy:"",readonly:""}}),e("settings-o-auth-connection",{attrs:{label:t.text_authorization_label,mailer:t.mailer,connected_email:t.connected_email_address,is_auth_required:t.is_auth_required,client_id:t.client_id,client_secret:t.client_secret}}),t.is_auth_required?t._e():e("div",[e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}})],1)],1)])},Fi=[],Di={name:"WizardStepConfigureMailerZoho",components:{SettingsInputText:Qt,SettingsInputSwitch:es,SettingsInputSelect:ii,SettingsOAuthConnection:vi},data(){return{mailer:"zoho",text_domain_label:(0,l.__)("Region","wp-mail-smtp"),text_domain_description:(0,l.__)("The data center location used by your Zoho account.","wp-mail-smtp"),text_client_id_label:(0,l.__)("Client ID","wp-mail-smtp"),text_client_secret_label:(0,l.__)("Client Secret","wp-mail-smtp"),text_redirect_uri_label:(0,l.__)("Redirect URI","wp-mail-smtp"),text_authorization_label:(0,l.__)("Authorization","wp-mail-smtp"),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Zoho Mail","wp-mail-smtp"),description:this.$wpms.mailer_options.zoho.description.substr(0,this.$wpms.mailer_options.zoho.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-zoho-mailer-in-wp-mail-smtp/#zoho-account",{content:"Read how to set up Zoho Mail"}),redirect_uri:this.$wpms.mailer_options.zoho.redirect_uri,domain_options:this.$wpms.mailer_options.zoho.domain_options,field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.zoho.domain","settings.zoho.client_id","settings.zoho.client_secret","settings.zoho.access_token","settings.zoho.refresh_token","settings.mail.from_name","settings.mail.from_name_force"]),...(0,_t.vn)("$_wizard",["blocked_step"]),...(0,at.Se)({connected_email_address:"$_settings/zoho_email"}),is_auth_required:function(){return!this.access_token||!this.refresh_token}},watch:{is_auth_required:function(t){this.blocked_step=t}},methods:{areRequiredFieldsValid(){let t=!0;return""===this.domain&&(t=!1,this.field_errors.push("domain")),""===this.client_id&&(t=!1,this.field_errors.push("client_id")),""===this.client_secret&&(t=!1,this.field_errors.push("client_secret")),t},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))}},mounted(){this.is_auth_required&&(this.blocked_step=!0)}},zi=Di,Zi=(0,d.Z)(zi,Ii,Fi,!1,null,null,null),Oi=Zi.exports,Li=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-configure-email-logs"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-configure-email-logs-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"wp-mail-smtp-plugin-configure-email-logs"},[e("settings-input-long-checkbox",{attrs:{name:"log_email_content",label:t.text_log_email_content,description:t.text_log_email_content_desc},model:{value:t.log_email_content,callback:function(e){t.log_email_content=e},expression:"log_email_content"}}),e("settings-input-long-checkbox",{attrs:{name:"save_attachments",label:t.text_save_attachments,description:t.text_save_attachments_desc},model:{value:t.save_attachments,callback:function(e){t.save_attachments=e},expression:"save_attachments"}}),e("settings-input-long-checkbox",{attrs:{name:"open_email_tracking",label:t.text_open_email_tracking,description:t.text_open_email_tracking_desc},model:{value:t.open_email_tracking,callback:function(e){t.open_email_tracking=e},expression:"open_email_tracking"}}),e("settings-input-long-checkbox",{attrs:{name:"click_link_tracking",label:t.text_click_link_tracking,description:t.text_click_link_tracking_desc},model:{value:t.click_link_tracking,callback:function(e){t.click_link_tracking=e},expression:"click_link_tracking"}})],1)]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step"},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},Wi=[],Ri={name:"WizardStepConfigureEmailLogs",components:{ContentHeader:h,TheWizardStepCounter:X,SettingsInputLongCheckbox:kt},data(){return{text_header_title:(0,l.__)("Configure Email Logs","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Enable these powerful logging features for more control of your WordPress emails.","wp-mail-smtp"),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_log_email_content:(0,l.__)("Store the content for all sent emails","wp-mail-smtp"),text_log_email_content_desc:(0,l.__)("This option must be enabled if you'd like to be able to resend emails. Please be aware that all email content will be stored in your WordPress database. This may include sensitive data, passwords, and personal details.","wp-mail-smtp"),text_save_attachments:(0,l.__)("Save file attachments sent from WordPress","wp-mail-smtp"),text_save_attachments_desc:(0,l.__)("All file attachments sent from your site will be saved to the WordPress Uploads folder. Please note that this may reduce available disk space on your server.","wp-mail-smtp"),text_open_email_tracking:(0,l.__)("Track when an email is opened","wp-mail-smtp"),text_open_email_tracking_desc:(0,l.__)("See which emails were opened by the recipients. Email open tracking works with emails that are sent in HTML format.","wp-mail-smtp"),text_click_link_tracking:(0,l.__)("Track when a link in an email is clicked","wp-mail-smtp"),text_click_link_tracking_desc:(0,l.__)("See which links were clicked in emails sent from your WordPress site. Click tracking works with emails that are sent in HTML format.","wp-mail-smtp")}},computed:{...(0,_t.vn)("$_settings",["settings.logs.log_email_content","settings.logs.save_attachments","settings.logs.open_email_tracking","settings.logs.click_link_tracking"])},methods:{handleSubmit(){this.$store.dispatch("$_app/start_loading");let t={value:{logs:{log_email_content:this.log_email_content,save_attachments:this.save_attachments,open_email_tracking:this.open_email_tracking,click_link_tracking:this.click_link_tracking}}};this.$store.dispatch("$_settings/updateSettings",t).then((t=>{t.success?this.nextStep():this.$wpms_error_toast({})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},previousStep(){this.$previous_step()},nextStep(){this.$next_step()}}},Qi=Ri,Ui=(0,d.Z)(Qi,Li,Wi,!1,null,null,null),Ni=Ui.exports,Gi=new n.ZP({routes:[{path:"*",redirect:"/"},{path:"/",name:"welcome",component:C},{path:"/step",name:"step",component:O,children:[{path:"import",name:"import_step",component:et},{path:"choose_mailer",name:"choose_mailer_step",component:lt},{path:"configure_mailer",name:"configure_mailer_step",component:ht,children:[{path:"smtp",name:"configure_mailer_step_smtp",component:ns},{path:"sendlayer",name:"configure_mailer_step_sendlayer",component:_s},{path:"smtpcom",name:"configure_mailer_step_smtpcom",component:ws},{path:"sendinblue",name:"configure_mailer_step_sendinblue",component:ks},{path:"mailgun",name:"configure_mailer_step_mailgun",component:Es},{path:"sendgrid",name:"configure_mailer_step_sendgrid",component:zs},{path:"sparkpost",name:"configure_mailer_step_sparkpost",component:Qs},{path:"postmark",name:"configure_mailer_step_postmark",component:Vs},{path:"amazoneses",name:"configure_mailer_step_amazonses",component:di},{path:"gmail",name:"configure_mailer_step_gmail",component:Ci},{path:"outlook",name:"configure_mailer_step_outlook",component:Ti},{path:"zoho",name:"configure_mailer_step_zoho",component:Oi}]},{path:"plugin_features",name:"plugin_features_step",component:Pt},{path:"configure_email_logs",name:"configure_email_logs_step",component:Ni},{path:"help_improve",name:"help_improve_step",component:Xt},{path:"license",name:"license_step",component:ne},{path:"check_configuration",name:"check_configuration_step",component:_e},{path:"successful_configuration",name:"check_configuration_step_success",component:Ee},{path:"failed_configuration",name:"check_configuration_step_failure",component:ze}]}],scrollBehavior(){return{x:0,y:0}}}),Hi={name:"SetupWizardApp",router:Gi,computed:{...(0,at.Se)({blocked:"$_app/blocked",loading:"$_app/loading"})}},Yi=Hi,Vi=(0,d.Z)(Yi,i,a,!1,null,null,null),Ki=Vi.exports,Ji=s(144),qi=s(9516);const Xi={install(t){window.wp_mail_smtp_vue&&(t.prototype.$wpms=window.wp_mail_smtp_vue),t.prototype.$isPro=ji,t.prototype.$addQueryArg=$i,t.prototype.$getUTMUrl=ta}};function ji(){return window.wp_mail_smtp_vue.is_pro}function $i(t,e,s){var i=new RegExp("([?&])"+e+"=.*?(&|#|$)","i");if(t.match(i))return t.replace(i,"$1"+e+"="+s+"$2");var a="";-1!==t.indexOf("#")&&(a=t.replace(/.*#/,"#"),t=t.replace(/#.*/,""));var n=-1!==t.indexOf("?")?"&":"?";return t+n+e+"="+s+a}function ta(t,e){e={source:"WordPress",medium:"setup-wizard",campaign:ji()?"plugin":"liteplugin",content:"general",...e};for(const[s,i]of Object.entries(e))t=$i(t,`utm_${s}`,encodeURIComponent(i));return t}var ea=Xi;const sa={install(t){t.prototype.$next_step=function(e=0){const s=t.prototype.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))+1+e;this.$router.push({name:t.prototype.$wizard_steps[s]})},t.prototype.$previous_step=function(e=0){let s="welcome";const i=t.prototype.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))-1-e;i>=0&&(s=t.prototype.$wizard_steps[i]),this.$router.push({name:s})},t.prototype.$swal&&(t.prototype.$wpms_success_toast=function(e){let{animation:s=!1,toast:i=!0,position:a="top-end",showConfirmButton:n=!1,icon:o="success",timer:r=3e3,showCloseButton:p=!0,title:m=(0,l.__)("Settings Updated","wp-mail-smtp"),showCancelButton:_=!1,confirmButtonText:c="",cancelButtonText:d="",text:u=""}=e;return t.prototype.$swal({animation:s,toast:i,position:a,showConfirmButton:n,icon:o,showCloseButton:p,title:m,timer:r,showCancelButton:_,confirmButtonText:c,cancelButtonText:d,text:u})},t.prototype.$wpms_error_toast=function(e){let{animation:s=!1,toast:i=!0,position:a="top-end",showConfirmButton:n=!1,icon:o="error",showCloseButton:r=!0,title:p=(0,l.__)("Could Not Save Changes","wp-mail-smtp"),text:m=""}=e;return t.prototype.$swal({animation:s,toast:i,position:a,showConfirmButton:n,icon:o,showCloseButton:r,title:p,text:m,onOpen:function(){t.prototype.$swal.hideLoading()}})},t.prototype.$wpms_error_modal=function(e){let{position:s="center",width:i=650,showConfirmButton:a=!0,confirmButtonText:n=(0,l.__)("Return to Mailer Settings","wp-mail-smtp"),customClass:o={container:"wp-mail-smtp-swal wp-mail-smtp-swal-error"},showCloseButton:r=!0,title:p=(0,l.__)("Whoops, we found an issue!","wp-mail-smtp"),subtitle:m=(0,l.__)("It looks like something went wrong...","wp-mail-smtp"),detailedError:_=""}=e;return t.prototype.$swal({position:s,width:i,showConfirmButton:a,confirmButtonText:n,customClass:o,showCloseButton:r,title:p,html:`\n\t\t\t\t\t\t

      ${m}

      \n\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t

      ${(0,l.__)("Error Message:","wp-mail-smtp")}

      \n\t\t\t\t\t\t\t
      ${_}
      \n\t\t\t\t\t\t
      \n\t\t\t\t\t`,allowEscapeKey:!1,allowOutsideClick:!1,onOpen:function(){t.prototype.$swal.hideLoading()}})},t.prototype.$required_fields_modal=function(){return t.prototype.$swal({position:"center",width:450,showConfirmButton:!0,confirmButtonText:(0,l.__)("OK","wp-mail-smtp"),customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"},showCloseButton:!0,title:(0,l.__)("Heads up!","wp-mail-smtp"),text:(0,l.__)("Please fill out all the required fields to continue.","wp-mail-smtp"),allowEscapeKey:!1,allowOutsideClick:!1})})}};var ia=sa,aa=s(9669),na=s.n(aa);const oa=function(t,e){return new Promise(((s,i)=>{let a=new FormData;a.append("action","wp_mail_smtp_vue_install_plugin"),a.append("nonce",Ji.ZP.prototype.$wpms.nonce),a.append("slug",e),na().post(Ji.ZP.prototype.$wpms.ajax_url,a).then((e=>{if(e.data.success)t.commit("PLUGIN_INSTALLED",e.data);else{let t="";ee()(e.data,"data[0].message")?t=e.data.data[0].message:ee()(e.data,"data")&&(t=e.data.data),Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like the plugin installation failed!","wp-mail-smtp"),detailedError:t})}s(e.data)})).catch((function(t){if(i(t),t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't install the plugin.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline. Plugin not installed.","wp-mail-smtp")})}))}))},ra=function(t){return new Promise(((e,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_get_partner_plugins_info"),i.append("nonce",Ji.ZP.prototype.$wpms.nonce),na().post(Ji.ZP.prototype.$wpms.ajax_url,i).then((s=>{s.data.success?t.commit("PLUGINS_FETCHED",s.data):Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Can't fetch plugins information.","wp-mail-smtp")}),e(s.data)})).catch((function(t){if(s(t),t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't fetch plugins information.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline. Plugin information not retrieved.","wp-mail-smtp")})}))}))};var la={installPlugin:oa,fetchPlugins:ra};const pa=function(t,e){return la.installPlugin(t,e)},ma=function(t){return la.fetchPlugins(t)};var _a={installPlugin:pa,getPlugins:ma};const ca=t=>t.plugins,da=t=>t.plugins.filter((t=>"wpforms-lite"!==t.slug)),ua=t=>t.contact_form_plugin_already_installed;var ha={getField:_t.rz,plugins:ca,partner_plugins:da,contact_form_plugin_already_installed:ua};const ga=(t,e)=>{t.plugins.map((s=>(s.slug===e.data.slug&&(s.is_installed=e.data.is_installed,s.is_activated=e.data.is_activated),"wpforms-lite"===e.data.slug&&(t.contact_form_plugin_already_installed=!0),s)))},wa=(t,e)=>{t.plugins=e.data.plugins,t.contact_form_plugin_already_installed=e.data.contact_form_plugin_already_installed};var fa={updateField:_t.L4,PLUGIN_INSTALLED:ga,PLUGINS_FETCHED:wa};const Aa={plugins:[],contact_form_plugin_already_installed:!1,smart_contact_form_setting:!0};var ba={namespaced:!0,state:Aa,actions:_a,getters:ha,mutations:fa};const va=t=>new Promise(((e,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_get_settings"),i.append("nonce",Ji.ZP.prototype.$wpms.nonce),na().post(Ji.ZP.prototype.$wpms.ajax_url,i).then((t=>{t.data.success?e(t.data):s(t.data)})).catch((function(e){if(t.dispatch("$_app/block",!1,{root:!0}),e.response){const t=e.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load the settings.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),t.status,t.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))})),xa=(t,e)=>new Promise(((t,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_get_amazon_ses_identities"),i.append("nonce",Ji.ZP.prototype.$wpms.nonce),!1!==e&&i.append("value",JSON.stringify(e)),na().post(Ji.ZP.prototype.$wpms.ajax_url,i).then((e=>{e.data.success?t(e.data):s(e.data)})).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't retrieve Amazon SES Identities.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Can't retrieve Amazon SES Identities.","wp-mail-smtp")})}))})),ka=(t,e)=>new Promise(((t,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_amazon_ses_identity_registration"),i.append("nonce",Ji.ZP.prototype.$wpms.nonce),!1!==e.value&&i.append("value",e.value),!1!==e.value&&i.append("type",e.type),na().post(Ji.ZP.prototype.$wpms.ajax_url,i).then((e=>{e.data.success?t(e.data):s(e.data)})).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't register the Amazon SES Identity.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Can't register the Amazon SES Identity","wp-mail-smtp")})}))})),ya=(t,e)=>new Promise((t=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_update_settings"),s.append("nonce",Ji.ZP.prototype.$wpms.nonce),void 0!==e.overwrite&&s.append("overwrite",e.overwrite),!1!==e.value&&s.append("value",JSON.stringify(e.value)),na().post(Ji.ZP.prototype.$wpms.ajax_url,s).then((e=>{t(e.data)})).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't save the settings.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Network error encountered. Settings not saved.","wp-mail-smtp")})}))})),Ca=(t,e)=>new Promise((t=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_import_settings"),s.append("nonce",Ji.ZP.prototype.$wpms.nonce),!1!==e.value&&s.append("value",e.value),na().post(Ji.ZP.prototype.$wpms.ajax_url,s).then((e=>{t(e.data)})).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't import the plugin settings.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Network error encountered. SMTP plugin import failed!","wp-mail-smtp")})}))})),Sa=function(t,e){return new Promise(((s,i)=>{let a=new FormData;a.append("action","wp_mail_smtp_vue_get_oauth_url"),a.append("nonce",Ji.ZP.prototype.$wpms.nonce),!1!==t&&a.append("mailer",t),!1!==e&&a.append("settings",JSON.stringify(e)),na().post(Ji.ZP.prototype.$wpms.ajax_url,a).then((t=>{t.data.success?s(t.data):i(t.data)})).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load authentication details.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))}))},Pa=function(t){return new Promise(((e,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_remove_oauth_connection"),i.append("nonce",Ji.ZP.prototype.$wpms.nonce),!1!==t&&i.append("mailer",t),na().post(Ji.ZP.prototype.$wpms.ajax_url,i).then((t=>{t.data.success?e(t.data):s(t.data)})).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't remove OAuth connection.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))}))},Ma=function(t){return new Promise(((e,s)=>{let i=new FormData;t?i.append("action","wp_mail_smtp_vue_remove_gmail_one_click_setup_oauth_connection"):i.append("action","wp_mail_smtp_vue_remove_oauth_connection"),i.append("nonce",Ji.ZP.prototype.$wpms.nonce),i.append("mailer","gmail"),na().post(Ji.ZP.prototype.$wpms.ajax_url,i).then((t=>{t.data.success?e(t.data):s(t.data)})).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't remove OAuth connection.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))}))},Ea=function(t){return new Promise(((e,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_get_connected_data"),i.append("nonce",Ji.ZP.prototype.$wpms.nonce),!1!==t&&i.append("mailer",t),na().post(Ji.ZP.prototype.$wpms.ajax_url,i).then((t=>{t.data.success?e(t.data):s(t.data)})).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load oAuth connected data.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))}))},Ba=function(t){return new Promise((e=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_subscribe_to_newsletter"),s.append("nonce",Ji.ZP.prototype.$wpms.nonce),s.append("email",t),na().post(Ji.ZP.prototype.$wpms.ajax_url,s).then((t=>{e(t.data)}))}))},Ta=function(t){return new Promise((e=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_verify_license_key"),s.append("nonce",Ji.ZP.prototype.$wpms.nonce),s.append("license_key",t),na().post(Ji.ZP.prototype.$wpms.ajax_url,s).then((t=>{e(t.data)}))}))},Ia=function(t){return new Promise((e=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_upgrade_plugin"),s.append("nonce",Ji.ZP.prototype.$wpms.nonce),s.append("license_key",t),na().post(Ji.ZP.prototype.$wpms.ajax_url,s).then((t=>{e(t.data)}))}))};var Fa={fetchSettings:va,saveSettings:ya,importOtherPluginSettings:Ca,fetchAmazonSESIdentities:xa,amazonSESRegisterIdentity:ka,getAuthRedirect:Sa,removeAuth:Pa,removeGmailAuth:Ma,getConnectedData:Ea,subscribeToNewsletter:Ba,verifyLicense:Ta,upgradePlugin:Ia};const Da=t=>Fa.fetchSettings(t).then((e=>{t.commit("SETTINGS_UPDATED",e.data)})).catch((t=>{if(t.data)return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load existing settings.","wp-mail-smtp"),detailedError:t.data})})),za=t=>{const e=t.getters.settings.amazonses;if(0!==Object.keys(e).length)return Fa.fetchAmazonSESIdentities(t,e).then((e=>{t.commit("AMAZONSES_IDENTITIES_UPDATED",e),Ji.ZP.swal.close()})).catch((t=>{Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't retrieve the Amazon SES Identities.","wp-mail-smtp"),detailedError:t.data?t.data:""})}))},Za=(t,e)=>Fa.amazonSESRegisterIdentity(t,e).catch((t=>{Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't register the Amazon SES Identity.","wp-mail-smtp"),detailedError:t.data})})),Oa=(t,e)=>{t.commit("MAILER_UPDATE",e)},La=(t,e)=>new Promise((function(s){t.commit("LOGS_UPDATE",e),s({success:!0})})),Wa=(t,e)=>new Promise((function(s){t.commit("SUMMARY_REPORT_EMAIL_UPDATE",e),s({success:!0})})),Ra=(t,e)=>{t.commit("SETTINGS_SAVE_START");let s=Fa.saveSettings(t,e);return s.then((function(){t.commit("SETTINGS_SAVE_END")})),s},Qa=t=>{const e=t.getters.settings;t.commit("SETTINGS_SAVE_START");let s=Fa.saveSettings(t,{value:e});return s.then((function(){t.commit("SETTINGS_SAVE_END")})),s},Ua=(t,e)=>(t.commit("SETTINGS_SAVE_START"),new Promise((function(s){Fa.importOtherPluginSettings(t,e).then((function(e){t.commit("SETTINGS_SAVE_END"),e.success?Da(t).then((function(){s(!0)})):s(!1)}))}))),Na=(t,e)=>Fa.getAuthRedirect(e,t.getters.settings[e]).catch((t=>{Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load oAuth redirect.","wp-mail-smtp"),detailedError:t.data})})),Ga=(t,e)=>Fa.getConnectedData(e).catch((t=>{Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load oAuth connected data.","wp-mail-smtp"),detailedError:t.data})})),Ha=(t,e)=>{let s;return s="gmail"===e?Fa.removeGmailAuth(t.getters.gmail_one_click_setup_enabled).then((function(){t.commit("SETTINGS_REMOVE_GMAIL_AUTH",t.getters.gmail_one_click_setup_enabled)})):Fa.removeAuth(e).then((function(){t.commit("SETTINGS_REMOVE_AUTH",e)})),s.catch((t=>{Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't remove oAuth connection.","wp-mail-smtp"),detailedError:t.data})})),s},Ya=(t,e)=>new Promise((s=>{t.commit("SETTINGS_SAVE_PLUGIN_FEATURES",e),s({success:!0,features:e})})),Va=(t,e)=>Fa.subscribeToNewsletter(e),Ka=(t,e)=>Fa.verifyLicense(e),Ja=(t,e)=>Fa.upgradePlugin(e),qa=(t,e)=>{t.commit("GMAIL_ONE_CLICK_SETUP_ENABLED_UPDATE",e)};var Xa={getSettings:Da,updateSettings:Ra,importOtherPlugin:Ua,setMailer:Oa,setLogs:La,setSummaryReportEmail:Wa,saveCurrentSettings:Qa,getAmazonSESIdentities:za,amazonSESRegisterIdentity:Za,getAuthUrl:Na,removeAuth:Ha,getConnectedData:Ga,savePluginFeatures:Ya,subscribeToNewsletter:Va,verifyLicense:Ka,upgradePlugin:Ja,setGmailUseOneClickSetup:qa};const ja=t=>t.settings,$a=t=>t.settings.mail.mailer,tn=t=>t.settings.outlook.user_details?t.settings.outlook.user_details.email:null,en=t=>t.settings.zoho.user_details?t.settings.zoho.user_details.email:null,sn=t=>t.settings.gmail.user_details?t.settings.gmail.user_details.email:null,an=t=>t.settings.gmail.one_click_setup_user_details?t.settings.gmail.one_click_setup_user_details.email:null,nn=t=>t.plugin_features,on=t=>!!t.settings.logs.enabled&&t.settings.logs.enabled,rn=t=>!t.settings.general.summary_report_email_disabled,ln=t=>e=>{let s=!1;const i=t.amazonses_identities.data,a=e.split("@").pop();return void 0!==i&&(i.forEach((t=>{("email"===t.type&&t.value===e||"domain"===t.type&&t.value===a)&&(s=!0)})),s)},pn=t=>"string"===typeof t.settings.license.key&&t.settings.license.key.length>0&&!t.settings.license.is_expired&&!t.settings.license.is_disabled&&!t.settings.license.is_invalid,mn=t=>!!ji()&&t.settings.gmail.one_click_setup_enabled;var _n={getField:_t.rz,settings:ja,mailer:$a,outlook_email:tn,zoho_email:en,gmail_email:sn,gmail_one_click_setup_email:an,plugin_features:nn,amazonses_is_email_registered:ln,email_log_enabled:on,summary_report_email_enabled:rn,is_valid_license:pn,gmail_one_click_setup_enabled:mn},cn=s(2378),dn=s.n(cn);const un=(t,e)=>{t.is_saving=!1,t.settings=dn()(t.settings,e)},hn=(t,e)=>{t.amazonses_identities=e.data},gn=(t,e)=>{t.settings.mail.mailer=e},wn=(t,e)=>{t.settings.logs.enabled=e},fn=(t,e)=>{t.settings.general.summary_report_email_disabled=e},An=t=>{t.is_saving=!0},bn=t=>{t.is_saving=!1},vn=(t,e)=>{const s=t.settings[e];t.settings[e]={client_id:s.client_id,client_secret:s.client_secret},"zoho"===e&&(t.settings[e].domain=s.domain)},xn=(t,e)=>{e?(t.settings.gmail.one_click_setup_credentials={key:"",token:""},t.settings.gmail.one_click_setup_user_details={email:""},delete t.settings.gmail.one_click_setup_status):(t.settings.gmail.access_token={},t.settings.gmail.refresh_token="",t.settings.gmail.user_details={email:""},delete t.settings.gmail.auth_code)},kn=(t,e)=>{t.plugin_features=e},yn=(t,e)=>{t.settings.gmail.one_click_setup_enabled=e};var Cn={updateField:_t.L4,SETTINGS_UPDATED:un,SETTINGS_SAVE_START:An,SETTINGS_SAVE_END:bn,MAILER_UPDATE:gn,LOGS_UPDATE:wn,SUMMARY_REPORT_EMAIL_UPDATE:fn,AMAZONSES_IDENTITIES_UPDATED:hn,SETTINGS_REMOVE_AUTH:vn,SETTINGS_REMOVE_GMAIL_AUTH:xn,SETTINGS_SAVE_PLUGIN_FEATURES:kn,GMAIL_ONE_CLICK_SETUP_ENABLED_UPDATE:yn};const Sn={settings:{mail:{mailer:"mail",from_email:"",from_name:"",return_path:!1,from_email_force:!0,from_name_force:!1},smtp:{host:"",port:"587",encryption:"tls",autotls:!0,auth:!0,user:"",pass:""},sendlayer:{api_key:""},smtpcom:{api_key:"",channel:""},sendinblue:{api_key:"",domain:""},mailgun:{api_key:"",domain:"",region:"US"},sendgrid:{api_key:"",domain:""},sparkpost:{api_key:"",region:"US"},postmark:{server_api_token:"",message_stream:""},amazonses:{client_id:"",client_secret:"",region:"us-east-1"},gmail:{client_id:"",client_secret:"",access_token:{},refresh_token:"",user_details:{email:""},one_click_setup_enabled:!1,one_click_setup_credentials:{key:"",token:""},one_click_setup_user_details:{email:""}},outlook:{client_id:"",client_secret:"",access_token:{},refresh_token:"",user_details:{email:""}},zoho:{client_id:"",client_secret:"",domain:"com",access_token:{},refresh_token:"",user_details:{email:""}},logs:{enabled:!1,log_email_content:!1,save_attachments:!1,open_email_tracking:!1,click_link_tracking:!1},general:{summary_report_email_disabled:!1},alert_email:{enabled:!1,connections:{}},license:{key:"",is_expired:!1,is_disabled:!1,is_invalid:!1}},amazonses_identities:{},amazonses_display_identities:window.wp_mail_smtp_vue.mailer_options.amazonses.display_identities,plugin_features:[]};var Pn={namespaced:!0,state:Sn,actions:Xa,getters:_n,mutations:Cn};const Mn=()=>new Promise((t=>{let e=new FormData;e.append("action","wp_mail_smtp_vue_check_mailer_configuration"),e.append("nonce",Ji.ZP.prototype.$wpms.nonce),na().post(Ji.ZP.prototype.$wpms.ajax_url,e).then((e=>{t(e.data)})).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't perform the mailer configuration check.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))})),En=t=>{let e=new FormData;e.append("action","wp_mail_smtp_vue_send_feedback"),e.append("nonce",Ji.ZP.prototype.$wpms.nonce),e.append("data",JSON.stringify(t)),na().post(Ji.ZP.prototype.$wpms.ajax_url,e).catch((function(t){if(t.response){const e=t.response;return Ji.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't send the feedback.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}Ji.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))},Bn=()=>{let t=new FormData;t.append("action","wp_mail_smtp_vue_wizard_steps_started"),t.append("nonce",Ji.ZP.prototype.$wpms.nonce),na().post(Ji.ZP.prototype.$wpms.ajax_url,t)};var Tn={checkMailerConfiguration:Mn,sendFeedback:En,started:Bn};const In=()=>Tn.checkMailerConfiguration(),Fn=(t,e)=>{Tn.sendFeedback(e)},Dn=()=>{Tn.started()};var zn={checkMailerConfiguration:In,sendFeedback:Fn,started:Dn};const Zn=t=>t.blocked_step,On=t=>t.current_user_email;var Ln={getField:_t.rz,blocked_step:Zn,current_user_email:On},Wn={updateField:_t.L4};const Rn={blocked_step:!1,current_user_email:window.wp_mail_smtp_vue.current_user_email};var Qn={namespaced:!0,state:Rn,actions:zn,getters:Ln,mutations:Wn};const Un=t=>{t.commit("INIT")},Nn=t=>{t.commit("BLOCK_APP")},Gn=t=>{t.commit("UNBLOCK_APP")},Hn=t=>{t.commit("APP_LOADING_START")},Yn=t=>{t.commit("APP_LOADING_STOP")};var Vn={init:Un,block:Nn,unblock:Gn,start_loading:Hn,stop_loading:Yn};const Kn=t=>t.blocked,Jn=t=>t.loading,qn=t=>t.wpms;var Xn={blocked:Kn,loading:Jn,wpms:qn};const jn=()=>{},$n=t=>{t.blocked=!0},to=t=>{t.blocked=!1},eo=t=>{t.loading=!0},so=t=>{t.loading=!1};var io={INIT:jn,BLOCK_APP:$n,UNBLOCK_APP:to,APP_LOADING_START:eo,APP_LOADING_STOP:so};const ao={blocked:!1,loading:!1,wpms:window.wp_mail_smtp_vue?window.wp_mail_smtp_vue:{}};var no={namespaced:!0,state:ao,actions:Vn,getters:Xn,mutations:io};const oo=t=>{t.subscribe(((e,s)=>{if("$_app/INIT"===e.type){const e=s["$_app"].wpms.versions;let i="",a="";e.php_version_below_55?(i=(0,l.__)("Yikes! PHP Update Required","wp-mail-smtp"),a=(0,l.gB)((0,l.__)("WP Mail SMTP has detected that your site is running an outdated, insecure version of PHP (%1$s), which could be putting your site at risk for being hacked. WordPress stopped supporting your PHP version in April, 2019. Updating to the recommended version (PHP %2$s) only takes a few minutes and will make your website significantly faster and more secure.","wp-mail-smtp"),e.php_version,"7.4")):e.php_version_below_56?(i=(0,l.__)("Yikes! PHP Update Required","wp-mail-smtp"),a=(0,l.gB)((0,l.__)("WP Mail SMTP has detected that your site is running an outdated, insecure version of PHP (%1$s). Some mailers require at least PHP version 5.6. Updating to the recommended version (PHP %2$s) only takes a few minutes and will make your website significantly faster and more secure.","wp-mail-smtp"),e.php_version,"7.4")):e.wp_version_below_49&&(i=(0,l.__)("Yikes! WordPress Update Required","wp-mail-smtp"),a=(0,l.gB)((0,l.__)("WP Mail SMTP has detected that your site is running an outdated version of WordPress (%s). WP Mail SMTP requires at least WordPress version 4.9.","wp-mail-smtp"),e.wp_version)),Ji.ZP.prototype.$swal&&i.length&&(t.dispatch("$_app/block"),Ji.ZP.prototype.$swal.close(),Ji.ZP.prototype.$swal({title:i,html:`

      ${a}

      ${(0,l.__)("Return to Plugin Settings","wp-mail-smtp")}

      `,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"},allowOutsideClick:!1,allowEscapeKey:!1,allowEnterKey:!1,showConfirmButton:!1,onOpen:function(){Ji.ZP.prototype.$swal.hideLoading()}}))}}))};var ro=oo;Ji.ZP.use(at.ZP);const lo=[ro];var po=new at.ZP.Store({modules:{$_app:no,$_plugins:ba,$_settings:Pn,$_wizard:Qn},plugins:lo}),mo=s(7575),_o=(s(528),s(4952));const co=document.getElementById("wp-mail-smtp-vue-setup-wizard");Ji.ZP.config.productionTip=!1,s.p=window.wp_mail_smtp_vue.public_url,Ji.ZP.use(_o.InlineSvgPlugin),Ji.ZP.use(n.ZP),Ji.ZP.use(qi.Z),Ji.ZP.use(mo.ZP,{defaultTemplate:'',defaultArrowSelector:".wp-mail-smtp-tooltip-arrow, .wp-mail-smtp-tooltip__arrow",defaultInnerSelector:".wp-mail-smtp-tooltip-inner, .wp-mail-smtp-tooltip__inner"}),Ji.ZP.use(ea),(0,l.l5)(window.wp_mail_smtp_vue.translations,"wp-mail-smtp");const uo={install(t){t.prototype.$wizard_steps=[],t.prototype.$wpms&&t.prototype.$wpms.other_smtp_plugins.length>0&&t.prototype.$wizard_steps.push("import_step"),t.prototype.$wizard_steps.push("choose_mailer_step"),t.prototype.$wizard_steps.push("configure_mailer_step"),t.prototype.$wizard_steps.push("plugin_features_step"),t.prototype.$wpms&&t.prototype.$wpms.is_pro&&t.prototype.$wizard_steps.push("configure_email_logs_step"),t.prototype.$wpms&&!t.prototype.$wpms.is_pro&&t.prototype.$wizard_steps.push("help_improve_step"),t.prototype.$wizard_steps.push("license_step"),t.prototype.$wizard_steps.push("check_configuration_step")}};Ji.ZP.use(uo),Ji.ZP.use(ia),new Ji.ZP({store:po,mounted:()=>{po.dispatch("$_app/init")},render:t=>t(Ki)}).$mount(co)},7630:function(t,e,s){var i={"./loading-blue.svg":7064,"./loading-white.svg":9438,"./loading.svg":7061};function a(t){var e=n(t);return s(e)}function n(t){if(!s.o(i,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return i[t]}a.keys=function(){return Object.keys(i)},a.resolve=n,t.exports=a,a.id=7630},5016:function(t,e,s){var i={"./amazonses.svg":7557,"./brevo.svg":2451,"./gmail.svg":7526,"./mailgun.svg":5567,"./outlook.svg":6703,"./postmark.svg":5699,"./sendgrid.svg":2763,"./sendlayer.svg":9857,"./smtp.svg":450,"./smtpcom.svg":7536,"./sparkpost.svg":2091,"./zoho.svg":9349};function a(t){var e=n(t);return s(e)}function n(t){if(!s.o(i,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return i[t]}a.keys=function(){return Object.keys(i)},a.resolve=n,t.exports=a,a.id=5016},833:function(t,e,s){var i={"./all-in-one-seo-pack@2x.png":5720,"./coming-soon@2x.png":6717,"./google-analytics-for-wordpress@2x.png":4166,"./insert-headers-and-footers@2x.png":2292,"./instagram-feed@2x.png":4545,"./rafflepress@2x.png":3025,"./wp-call-button@2x.png":3277};function a(t){var e=n(t);return s(e)}function n(t){if(!s.o(i,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return i[t]}a.keys=function(){return Object.keys(i)},a.resolve=n,t.exports=a,a.id=833},8517:function(t,e,s){var i={"./all-in-one-seo-pack.png":4444,"./all-in-one-seo-pack@2x.png":5720,"./coming-soon.png":7289,"./coming-soon@2x.png":6717,"./google-analytics-for-wordpress.png":2598,"./google-analytics-for-wordpress@2x.png":4166,"./insert-headers-and-footers.png":4694,"./insert-headers-and-footers@2x.png":2292,"./instagram-feed.png":9228,"./instagram-feed@2x.png":4545,"./rafflepress.png":6270,"./rafflepress@2x.png":3025,"./wp-call-button.png":7896,"./wp-call-button@2x.png":3277};function a(t){var e=n(t);return s(e)}function n(t){if(!s.o(i,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return i[t]}a.keys=function(){return Object.keys(i)},a.resolve=n,t.exports=a,a.id=8517},7064:function(t,e,s){"use strict";t.exports=s.p+"img/loading-blue.svg"},9438:function(t,e,s){"use strict";t.exports=s.p+"img/loading-white.svg"},7061:function(t,e,s){"use strict";t.exports=s.p+"img/loading.svg"},969:function(t,e,s){"use strict";t.exports=s.p+"img/loading-pattie.svg"},1122:function(t,e,s){"use strict";t.exports=s.p+"img/arrow.svg"},214:function(t,e,s){"use strict";t.exports=s.p+"img/gmail-sign-in-btn.svg"},5561:function(t,e,s){"use strict";t.exports=s.p+"img/check-circle-solid-white.svg"},2546:function(t,e,s){"use strict";t.exports=s.p+"img/check-circle-solid.svg"},7579:function(t,e,s){"use strict";t.exports=s.p+"img/check-solid.svg"},8098:function(t,e,s){"use strict";t.exports=s.p+"img/copy-solid.svg"},4186:function(t,e,s){"use strict";t.exports=s.p+"img/exclamation-circle-solid.svg"},2411:function(t,e,s){"use strict";t.exports=s.p+"img/info-circle-solid.svg"},4523:function(t,e,s){"use strict";t.exports=s.p+"img/lock-solid.svg"},9238:function(t,e,s){"use strict";t.exports=s.p+"img/long-arrow-alt-left-regular.svg"},7706:function(t,e,s){"use strict";t.exports=s.p+"img/long-arrow-alt-right-regular.svg"},1004:function(t,e,s){"use strict";t.exports=s.p+"img/question-circle-solid.svg"},3481:function(t,e,s){"use strict";t.exports=s.p+"img/star-solid.svg"},3531:function(t,e,s){"use strict";t.exports=s.p+"img/times-solid.svg"},6375:function(t,e,s){"use strict";t.exports=s.p+"img/logo.svg"},7557:function(t,e,s){"use strict";t.exports=s.p+"img/amazonses.svg"},2451:function(t,e,s){"use strict";t.exports=s.p+"img/brevo.svg"},7526:function(t,e,s){"use strict";t.exports=s.p+"img/gmail.svg"},5567:function(t,e,s){"use strict";t.exports=s.p+"img/mailgun.svg"},6703:function(t,e,s){"use strict";t.exports=s.p+"img/outlook.svg"},5699:function(t,e,s){"use strict";t.exports=s.p+"img/postmark.svg"},2763:function(t,e,s){"use strict";t.exports=s.p+"img/sendgrid.svg"},9857:function(t,e,s){"use strict";t.exports=s.p+"img/sendlayer.svg"},450:function(t,e,s){"use strict";t.exports=s.p+"img/smtp.svg"},7536:function(t,e,s){"use strict";t.exports=s.p+"img/smtpcom.svg"},2091:function(t,e,s){"use strict";t.exports=s.p+"img/sparkpost.svg"},9349:function(t,e,s){"use strict";t.exports=s.p+"img/zoho.svg"},330:function(t,e,s){"use strict";t.exports=s.p+"img/pro-badge.svg"},7764:function(t,e,s){"use strict";t.exports=s.p+"img/working.svg"},4444:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAABKdJREFUWIWtl11sFFUUx39ndqf0C0EhiKVluy01ARuoxMRo1CBBIqKRqNV2C4Sg8cGowQcViUFtFOmDCSYaE9SEqN0tluiDIRBBosYHQlBDowbSwu62fNTKh/JRSnd3jg9TdruzMzsN8H+79/zP+f/vzZ17zwgTRfNAGSWZh1FZCtoI3A6YwBRgECGBcghhD6R+oLPh/ETKii9j9dHZpAPrgVVA5QTtXgS2kTG2sH320Wsz0PxnCWZ5O8grQMkEhZ24gmgHZ9Ob2NVwZeIGVg7Mwcp8Ddx5jcJO9GClH6VrzoC/gdbkHRi6F2XmDRK/ipOotYxYXc/4SSOPsioRRvRHT3HlBOiHwBGXaA8q7wP9HgaqEGMXLX017gbWxEvJsAOY7lGgn3SggWh4HYb1ODAyLnaJACuIhTZQWTIXYdDbRPA7lvVOKjSQMt4CFnok2tzumssAfFV3BGUxIq+jvAbWYr6sjQOwtWoYJehZRVjAzcE3ckOASLIO9C9gklceoJRoOdvCI0U40NZ7E2r+V5QDV0DmEQ0ds3dAdb2POKhs9hUH6Gw4j8hmH9YkRNcBCKsGK8iMnAImOxR7QXqBeajEiIU2+IqPR1viXZSngB6ERpS5DsYFSkdmCa3JpxHd7ghmwKonWpd0L368mlEdprvmLGAf4FGrhmh9ryu/JV6LIX1AwLHIFQaG3ueS8runOICmOzDTL2fHo8ZjENjhye8KJ4CegnmRpQYqd7ukNNGWWOtZEEwQM1dITQTTnapCJPEisKAwxIIgaJVLVhDlc1qT1cRC7dnZRRqkKnk/yK2IpokklwBg0YhoBZHkElJl++mecTGbE0m2A296LCQUBKZ5rlM0/y2ojtdjGftAQQG01eZll7QHc/hJ4JtxWY2e9WGaQcHBuE6o431R26oHUgbg1Tgowt58ejDtayBgpPLGhuwCLA/2ZQPkmFsA1UforP04b3bKUD+QcuHnoNqXN+4MfYrqYuwmxQE5YqB6qLAIR4mFdxfMb70rBXQXkf+VhtmHC2Zj4Z9QCjsj0T8MRPcVBmgkEm9ylbCMV4FCERgCfY63Jbfda+KlAETiTQjzCzJUvxfWHp7MSOkgUO4InwZOAnMR/ZaKMyvHdgCaB27BtF4C3YD9DXxEMLOFL+rtXuD5gyYXpkcRngD6gBnAVEf9i6QCM8Zew8RnwLOuK86hi2goApI71W2JUygW0dpZecxIIga0+NT7hGjtC2P9QKYDv8MFLbT1Tfbh2O07POPDGkGCm+BqQxKt70XY4pN0Mq/Xbx4oQ5kCTB0TtWE3LfGilYQP6Kw+njMAYOpGYH+RtFJa+u1ru3mokmCmEygDyjGtGGsP27tjc4rt1EEqTr+T8zIeKxO3YXEAqPZIHgZ2Y7frYUesH/vFewiv5kY5gcgDREPZu8elLT82HzF2FjFxrfgb1UXEwnmfsFFAi9X1kEotBPn5Bor/RoB7nOLuBgC6G/7h3OhSRNuBS9chfBnhPc6l7s12zQ74/5w2x2diykZgNVAxQeF/EaIEMh3Zy8kD/gayRoYqKbm0HIwHQZtQwti3WxrkDOhx0AOI8Qujxs7sP4QP/gdLfYuNd8XCxgAAAABJRU5ErkJggg=="},5720:function(t){"use strict";t.exports="data:image/png;base64,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"},7289:function(t){"use strict";t.exports="data:image/png;base64,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"},6717:function(t){"use strict";t.exports="data:image/png;base64,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"},2598:function(t){"use strict";t.exports="data:image/png;base64,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"},4166:function(t){"use strict";t.exports="data:image/png;base64,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"},4694:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAgCAMAAACrZuH4AAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAG/UExURQBm/wBl/wC//wBk/wBq/wBw/wBn/wBp/wBg/wBk/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBk/wBl/wBl/wBl/wBl/wBl/wBk/wBm/wBl/wBl/wBo/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBi/wBl/wBl/wBl/wBl/wBl/wBl/wBa/wBl/wBl/wBl/wBl/wBl/wBl/wBc/wBl/wBl/wBn/wBl/wBl/wBl/wBn/wBl/wBl/wBm/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBn/wBl/wBl/wBl/wBl/wBm/wBl/wBk/wBl/wBl/wBl/wBl/wBl/wBo/wBk/wBl/wBl/wBl/wBl/wBl/wBi/wBn/wBl/wBl/wBl/wBk/wBl/wBl/wBl/wBn/wBq/wBl/wBl/wBm/wBk/wBl/wBl/wBl/wBk/wBl/wBl/wBl/wBl/wBj/wBl/wBl/wBl/wBl/wBl/wBl/wBk/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBo/wBl/wBm/wBl/////4qMBKkAAACTdFJOUwAAAAAAAAAAAARd0fvUYQZQ5ehWrrXJytLq/s86Lr79b4DeKAmwmwM4+raj7PNKhb0VBWDBEhu5DAFc53NZ+fYB4CsIq/eCCuOeBDTmg1Lh9E1+C1vxxBQXfRLDd1PwbAIVxuItpO8EAWf1ogYv7moEAuntAwNl6xYUxXtOqQQFbuQwwB8QdBAq3/xUIZOtVQTTBeGbJwwAAAABYktHRJR/Z0oVAAAAB3RJTUUH5wgXEgAa2OsrGQAAAWJJREFUOMtj4OTi5pmMC/Dw8vEzCAhOxgeEhBlEJuMHogxiBFRwM4gTUCGBpkJSSAq/CmkZWTm8KuQVGBgU8apQUmZUUcWrQk2dQUNSU0tbB5cKXT1GJv3JBoZGxkI4VJiYMppJTza3YLS0ssaqQsqGkdHWbrK9ogqjg60gNhWOTszOLkDa1c2dkUXYA4sKTy9Gbx8Qw9VXhZHVzx9DRUAgI2MQhOnqG8zAFhKKriIsnDECxrGL5GSOikZTIRXDwBjrCuXExScwJiahqUhOYeRPhbLT4tMZMzKz0FRk5zDmQt2fl1/AUMhXhObSLAFm9hgIszizhLG0rBzdt0kVjJVVEBPKShi98vPQQ0yqmoOhJgDMrK1jrG9Iwwj1xibGek+IUHNLa1soZsyZtDN2dEKEusTlsrDEvk93Ty96CkVzaWij5mT8KnACCSJyVB8BFaIMNY14FVj3M0ywwlc6TDSeBAAsQvZl6HikOwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMy0wOC0yM1QxODowMDowMSswMDowMKDKy60AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjMtMDgtMjNUMTg6MDA6MDErMDA6MDDRl3MRAAAAKHRFWHRkYXRlOnRpbWVzdGFtcAAyMDIzLTA4LTIzVDE4OjAwOjI2KzAwOjAwAQBrPQAAAABJRU5ErkJggg=="},2292:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEEAAABACAMAAAByderSAAAB0VBMVEUAAAAAAP8AgP8AVf8AgP8AZv8AVf8Abf8AYP8AZv8AXf8AYv8Abf8AZv8AYP8Aaf8AY/8Aa/8AZv8AYf8AaP8AZP8Aav8AZv8AYv8AaP8AYf8AY/8AZP8AY/8AZf8AZv8AZ/8AZf8AY/8AZv8AZP8AZ/8AZf8AY/8AZf8AY/8AZv8AZ/8AZf8AZP8AZ/8AZP8AZv8AZP8AZ/8AZP8AZf8AZf8AZv8AZP8AZv8AZP8AZv8AZP8AZf8AZf8AZf8AZv8AZf8AZv8AZf8AZP8AZf8AZP8AZv8AZv8AZf8AZP8AZf8AZv8AZf8AZf8AZf8AZP8AZf8AZf8AZP8AZf8AZP8AZf8AZf8AZv8AZf8AZP8AZf8AZP8AZv8AZP8AZf8AZf8AZv8AZf8AZv8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZP8AZf8AZf8AZv8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZv8AZf8AZf8AZf8AZf8AZf8AZv8AZf8AZf8AZf8AZP8AZf8AZf8AZP8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf////+EMc0jAAAAmXRSTlMAAQIDBAUGBwgKCw0ODxAREhMUFRYXGBkaGx0fISQmKCorLC0uLzAxNTY3OTo9PkBBQkNFSU5QVFVcX2Fiam1ub3F0dXl6e31+f4GFhoiJjI6QkZOWl5iZmpudoKOlpqeorK2ur7Cxs7i5vb7CxMfIysvMzc7P0NHS1dbX2Nna297f4uPl5ufq6+zt7vDx8vP09fb3+vv8/f66JvsWAAAAAWJLR0SamN9nEgAAAl5JREFUWMPt19lXEzEUwOFfW8EFARGpKKioqLii1h0VXEDEBXfqLopWRYRa26IFd8UNEGql97/1IaOn25Dp5FHzNndyvjmZJDe5AOUd4Ukpvk1Fu6oAYMsncdu+BgDWTIj7ltwEDIhJG/axQcxaM4cNhU5OGQqXOGMoBP8F4VvaTIg2UnHZRJiuBzyPDYTrANoVN5uwFYAO98KoB4Cn7oVjAKxy/ydTfgDOuRfuAlA6JiITbasDg8ULuwDYKyIz24HS+8UK730APBSRGAAlfUUKXQAs/yUiYZWQS/uKEmbqAOgUEfm5djbCTngEgPetiIgkarAfiJ2wD4CA9TSy1CLuORa+zAXgzp/nhD1hI3QDUJX8G0io9YXvtkOhAYC2jIgtUVgYUL1jmbH4You45URoAaApOxizDuqSkF4YXwDAldykZxELx7RCDwDzx3PjzxcpolsrbATgQP6LSBkA+3VCXH3pSYHV4wWgRSe0ArAybQcQ1AhJNdqz+YBKnNRNaYSbas7yLlc9FlAZ1c3mDgD25IavWkOoGNKtqDeqZ8gGqAxrV3U7AP6UDfBMu7NStQC0Fwaq4/rd/QAAz+uC07hk2EGG2Q1Ac1bsmjULNS8cZLkPcwC4kRl7N08B/pdOMu1pNWPTmbFeBdSOOMn26RUAHMre1QAsG3V04vSrz0WyOx0E6l85O/WOALA+p1O69+iFSYcnr0pvFw1ugyGA6u8m98nz5TQOGt5Ii624gv/v9pZgXiWZVmonWGcobIN+IyDuhYZxk6q5CWDzR9fA550qHZQdH3JTvf+InKwEfgNIA2UV0Nw41AAAAABJRU5ErkJggg=="},9228:function(t){"use strict";t.exports="data:image/png;base64,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"},4545:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAABlmWCKAAATC0lEQVR4AbVbSY9lV1KON2RmZY2u0VV22+4qm8G0utVN00ICsUAIiV3v+AeskFjDig0/gD0/gQUSWyQWSEDTom2QkNsT7XKVXVXpqhwqyzm9fPke3/dFxLlx38t0tVriuO49MXwRJ+LcM9xzX3rw8MeX55ZlUIhGQ5b0IIjGEw8mxao7PuVGu8B4Hbxklaa74OW6rxucqSu4GuNL8FQP2Y4KmEY0GpKkq2MCJcct9KlOvqs7TM+m2oePU5P3oKCqfoJe9JFBUH4m3mMXFDjvADliSyAa7SylcqZaXGA6bLa7jOswv3LydHFmMuEfVQucdAsoaMmIQYFO6rAZdglDIqHjGp3OUheGqU91a7ThQDRaLTtf7Zu+YivNeCtfaDrHP2+j0BlQ6rJWCP3kaRtTIBxE7u6UzmnN2qteYxQ3+SIOfNOFA/KSha7pgxes0vRf+VNoiOSUtS4JgqYseMGWk6cNOgD3gmt0GqdOdYdNdWuk4TqM+wpe+kpHgJIv0ow9sBF8Ly7ayC4w4iVw+RIfydMXDaUnObBxcxw6VstJhTLbiHoZF84D3musNpxtVD+FHoxXbLC6ZoOVNbOVc6qdPwfe5YNx1MARY/OZzfa2bPr4QzvZ+ZItRKIl+exUteUNjh0ZYBlFJBmQAGBSnPIcAou8fMSNupVVJMMkcNWkgpacSSkR1EwMdvP5idkMOzRrXHMkyCSdn4GEbLJn86MXLmdbq+u2+mu/Z9OvPrXjB+/rQWaYckoMr/IwvAMkpDyI5IVNBj25WpKJoJmcnkpNSDTlq/SARDxwTyqTQAKSk5/a/HBitv/cE6cNY8mmxVMWRMoX+cmBzba/tPGr79hsf8tmWw9o0PmqeNJoo5sCZyQ/evXbtvLmuza6fEO+9ATY+5FUSw4yPaHZ1GYHR2Z72/4Ea7BJK6gILGh0r/uPwJKVUDJXN7nguDWdBADNbfb1pq3c+U07YgdkRy7iI98YAWGcPtgWAKu/8SMb33nH5i+e2cnGZ96YdLyxFLvagCu98YT1fNO0s/3lk+9s1DZZiYqc5PTAhldexRLPTQ7TKDGsdUkgGiMgGOhagWz06ltKfvbsC4jTCcgG75z0Gkgn6ZewZhN00b00+UV/4uGw+Q3nyQcr2BhT8ASjkeCmD4B4ToEsIc8OWXnjXTz5TWjPTv7w8ND29/cxC2Y2Gg3t4uVLmPZotCS4lHwK0N5S8hkLa8YzwvPhAoqFUesMF0gullBON+/jSWPdYFEyUacACyd3kfkJME1PAkU8bvh35iI4unTNTp49dIM0EofGp8f25YNHtr21ZZP9PRuipwcMFo3evH3TXrv7FmIfeUPpgY0OgTl/UTvCMJOJum1rCNqThc8hfdCwlGBH175lRz//50im6JkVMdgxuMNolyCffpJmjYKInFiqNX+gk0FgwBxPJvbJR5/awd6erV65bvf+8Md2cjyxzZ+/ZwdPvrSvNjbt8ODQ3v7eb+VrpnwMzl20c9/9IxusrcNLNhr+0z3rompBp77pBja88Eo/NulwCwx3HL1HkD8jeWLLCOiMiZ9zeLET4MgLPZk9+PyhHewf2Mr5S/b9P/9ru/jaXfgf2P7Tx/be3/6lHe1s2e7OC3v88LG9/uadCAhryo03lHyLkM7cJSkvlc+gl3QDTMq5TTc+6exlh1vaKwFsrxhdTUhd9Rl8jIDO2DHgj7F4jDAEp+wAorFNY7jv7uyKHmKonrt6CyMNWyL+W795xy6+ftcOtzdtCLvNxxt249Y1W1vH+wDMZ3s7vpy4q3QpX7zRh2FqsePn0yN/AKpBYx73ZMcHNselIn+4Nb9BI65uBACZyROnyw0wAsKgYZyfowM4B+fpGeIXz1/gRQUSOJvsPbfJi+e2voYEicGcW79+RzoINFV2nz2zm29+S+rZ8w07+vBfbHjxWj+5kmy/hyIguPYQSAQdZJM3HkTSjJzrCfmUJV06o60B7ckHeH58qBW4NQpigvmvIOFxfnJix+iE8zdvq1PmJzM7ePaoawyY6XQavM/62c4Tmz1/4hEtBsXFEAHr4vYVZ4DZ4a7Ndh4rjKVkKGh+Cg2h1gBOAelDR7okT1prwGLyNOKQG5y70GtgmM4Uztw+/vu/sx/8xd/YCFvTwdYT2/wQ799qEcMZI+X8jdvi02x0E7vD5Vu+yvOMwIQZJJN35/Ksm4zgBh198N4/uNuQ9ZIimAmkjgRpnhs4ApKnbCF5qsanJU+gpgD2dqTihgBfvHzRNp48hXMGNrO9R/dterhno7U1W71wxW59//dt+6P/suOvd2314gW7fP2qDaaHHhDsV+/9jrZLulSBzGs+MQSs+Y/5jpcXLcLgT1581ew7GxgW20bXZLkLcCQRpysMKg1Vbw2oQI4ArGYwhkXYXr5+3dbXH9nh5MSuvv0de+tP/tRWL11Vh4ywvX33z/7Kjp5v2eb//IfZxi9sON3qAoCTyac/scH65VjQ4F+Lmy9w2EuVX7bVe1quiTi6eGpsgig5UKjZoVyo5W/xyRNMN5C3NcCBcuNG3AXw4iJ5Ew/s3nfetfH3/tiu/eAPtANwqKvA4QzvA2N0xJVbd2z69INiy9aQ7zbWCF6g/SIRpXT0UvKJp1GaVDxdJJ967gJj7kAhYFXo/OCiNaAFVBrgEBxgCnQFHvBvbQ0fKx6+b4evXLGV196mV/ilbohdYRvn8A9s/uC/sQ3su2kGlo4UCM1IRKmYlKc68Qoy8ahTT1HaVxl3gZwCiVFNOICB9REgphPSIdcATQEaEU2McBheB8/t6Kf/aEc4ca3evos5i2F8tIdj6I7Nd2POyqz4DDfuJxwtYl6WPJ/HiIsnrlw8+RrORPHSNt38DMMMUynj5LpCHM8DaguqkjxxPgJIZUyscWkNGGANSF3VyxuG/u4GnvpGs9Vm13Agko7GxWeSSoTbHoKP3aAl8oyJIGjoVt/8oQ2xbujLEncLjLRWFvwPL1y1yX2sPxkzOoAdlQciJZ/GtEUsGAElUDl0r+oAHHA86LBylTNph+93Q+7ZfAr8EsQgtfjgPeApEsFUUiLYAYbnkQj1fGpMpPkLIiq+LE1+8e82vnHXxjj0qEjXDIottGl3Dv4zecrYAYhlPnmB9gLESpfz/UWwGudQCjsZIfDVd36kRDQEmTAc+2sOHLMkHuTw0nWbfPJvNr7FRN7o6TpcGFQ7PnGWssD2jAu28wM8Ole89JjGxhHAzpa3TpcCyLtFkJYECqwbnl6sA3EgGt++h6eCRLLIJLCUFZLscP2Sy5jIgo76Jqw60OpcGOTQbbhiUs1FA69RKF/hMHcCNk5R1YnHqbIJKyBoLYR1J0AerQBz1pMXhj44FYBSIs1Qosp1NG1YOJ1Au10KIS9kjybDf5xWQ9iykNcUcF+Od5zoGAU+ESFfAkCk12EthNQjEY4IFvmhUZRCShK8niRovdUtYRO07EPzlZ2QqzchtY1KezDp3RdV6D0/XwSXc+va9hEgnlaloUyYR2J6o44dIJJMlEJK0niMD35PGK24HZVF18M2uaTeBhcvLqAsVV9pD8Yxce/mPB6YXod9FMqHbHFjHX5OmQJUOqi9CwR4jvP6S4e9AnF7klqFc0FNnRRiWiDBBe/zWR0QbVdTx3ZtVNtcP5QgP90vLIw1eeaJR4TCRrKhfNoQ+dsg3wVQqM8pkDzrLGlPYKNB6knG1ElF6rPu+Qghp8AMH0h6O0EBnmqL9mL9cGSdApDQJu0iT4yAlFAJOlnWuQtI3F8DoO1K2lBSafJ8AvixZCmRRZz4Tqj3eNpzHejEEIDp8S4ilAofAc75d8FcFItdybOMgOKVJEBa9HAibMMeQ1mfrty/34tZrzOpZZvaCWIhTGzW6Ud8EYLUGyLq/g5CRRpF3fjUhYAVd4ER3w1SB1mPxqYhhxSysNLlvL4J9L4OQ37WNEgfchR+WHFIsugHCtTuWiLdxBdhkhEovwh5gSJ1aQ2eI4sPana0i1+Fv7DpzueRA0FcA9B+2i0kT4W/ChNLkK5AsypTIHtO6wJefZtT2YYNaZbGgohX3tnhC7xBXnF93oVzsBJhJ2HIM2n98AHcBCfP2T5+Z0QyHA1ciNmZGhlcXLFOdO0BRnfuEkQU7kSYhk2e7aLu3gRTSBvQ3ItzCij58DU72PV3+uCrjiK+fs7xXYBfeGeHz/2EBn+TBz/TL7Z4ZJ4I5za2ufb1hwGyMA7FIk4dMn36cZFBiaeqH2PO4U0TtLY+rfY4f2zfl02LS1shfiA5/todyjdurOkqCXEhzIODtiF+FWKhDmXy2X/iE7f/ZEa9MEqENJ5gJkJw+CPJZKdPIhH5wo1/CMFkmAjWCk+EQxZH2y2eCPF0eSJ847dtuHbZpxMT1nSDvfzIu9/AD8/jRPjwp50QHc71ZA5Xjg+7sI3DUCfM5AXGU9LHygBLxkQefwRnKYRjdhIaGaydR5A8DSIJ1giWw3fGIzP41beQCA86oeufCDNAj314AQepz3+CQ9S3bXzldRe2JiNel/Z0A50IQ8EYeY7RQkhZ2KUf6P28S4Gu0BTaRwE2C6yoKtCNbiIo/BGCJ8tEMcdSyTrckOSucfjBP9noym0bX8XRtnYcAVmKDUU6SEkXB5CmB9HoMC78AN8ZVKIdnQi1E4VdYkPfmwLS8ZZBgtZiwyeMr8DZSat3f4iR4ctHF0x4jsqDoAnetnS85YmwKtmOUF0dLHEcPdTPF98i0yaxC7U6INshllshRpzaStuib6/CkhFQlAogP41V3dLbWXjOBhhUpZFMfz8v+oqTXQg4bOGEi6QXyBexwoc6K27b0XnCt3eBANT8IAIavU3HeRGXNBRc2AZ5IKIORdOiBRNE4wGoNFk8AdnQmCX1WbsU8k6gtYhTi7sFDTpVopdlYe+jgDDEj/OARpPYcJK+gB/KhgIJcUs6g8Gi130cJW7hqcgxb1HkJxnUwOttUImQPxtXrETybwjqR86ePv2ksPCecAqwCGoKBJ/iyC/eBOkFGioFCBQqfxfwN2Y9IarYKZlJQCFoItHiXcmAeqOm2hRcs5MM7jhy2hQo2iX7MMhK0yfwWgNyYQxZJM+qrQG95NmALp8Ci78Q6W0sGwuf2R/J9oazEmGnoSwFvyhIDOScy1wEc8051b4Iw1U35GmKH0jaNkjfDorK14CzkqdrPgH/UxVyKLDUqKhxVzowwuaNifBoy3fzXlk0hFIi3PiPdihtAV2EJ5agopMdecmW14BMnvrTp0Ai6KCuASFvAS00TLYGknwG1FsICVSAQvlNfCfPxUztnYWl5ZKu86H3l7IGZGpuo8NQeKATXeEtaF8D8B6QlpTzlZcloM4kX4RBah8miJ3JgxQNC4wq5xfkPEih6A+d+LqcRbbhgFU5XxCrEyGxAWlmyavGDf+++U0QAC1C9UjM9rgwyUm6zsaKsJDZeTMEN1zHibDq6EI8bzza+vlijuPtdOe+dJNH79v4gCfCcpDCrjKf4eLuwnWChS7Sd9T8sDI72MoQurZC370J1idMOgAatnwTDJ41j7Y8vvbODQ3gQcz5FYjJoLOmTz+V/eQLHG0zEf49EDuSCXB9UCILCyXbZCzQTZ99HDGAp5xFdTCsenIChjgc4VemRz8j0+ELrjsMJSA7QjyQDGzBuX4c/d9/hfNXEDh6H5h8cqKZGM8OpSExTIRH21RA782RYIMote7FEsqqT3DKiv1gvK7kT3Ye2Gz3i/ALYGKj/oYpkMFg7d7HX3itrGMOx19mwQv/1me2+wQO0yPxyw14gyEXNPAUJR8ixq9CvvrVCMR6zZo/1OC3igF/ryDP6Ym1QjrSgZ0f7ujJf1PybOOMKdAPgP8Twtrbv+v/IwL3ZAXYxyjgTKRXg0k8iQh6qNoT6CUDuX5PUIJIDMnNY4rklJmf4M/iMcpy2rCmTjXWBY5CbNbqS7XNG2NgabUT0QEhZaWr8nja2w8wdG/a+OY9jIZNfw9gA+ptBMyzQvS+gm/J8UnFU5EMfrkTZMCkJ/ieJ96TaLqQ+atwSSZHRoS43PFxtmnJAtiwFKKkD5CxBlCYV6DFd86OH7yHL0HPbHz7123Ecz0TjkXO5z8XtEwm/sipJMoVW09G7nGTf7RJ4lSaqtAFrAVOvGQLejhquQmzqIdRA5B+yTbYsBHICUbCyfbDLuAEsLHAMK5G1yAYywIvR7KVkVh1RvURqha4fJQ2Uv8rJE/T7k1wIZlkz0qmF9CZyTNQv745+Q4HynuqJRq85LyhtOBIS9CJgu86knqUJRvKWgdEa6wAbFgSkslDRycg8F1jFR+NnmZPgyYvODUTumiyBUO8ZEE0+xqvAO47yJ5NT+YMl1lhPKDqDPLSSKMX8JLLV8VDkJ1HkqDTfFW7JVoC3txWNZ2gFF8ZjmTZTmIaWETnp8ixkqHI4f9T8tkRih23FjzbDV4xVDqCWsSGOJP9pZKnj7QLsj70WANq40HLsNDZGuWnBS58X6dXZeEjgkb3cX1/Z2BDfHry9EcAStaV7smCier/AMJqTt2MKqTzAAAAAElFTkSuQmCC"},6270:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACPTkDJAAAFG0lEQVRYCaVXa0xcRRQ+M/exsJTFUgOCpawGLU9taBuB1kdqjRQxwWhMQNPaNqExjTXGgk3sDxOLptb+ayRVafyDRVJfNAImPtpQCdSaKK8mDW1poU2BQq0sLNzde8e5d5m7d+5ddhc9f+acb86c883MnTNzEfwHCbz1dDnM+ZpxwJ/qu3NbE7wFfVKKZ4frva/7lhsOLWcASyyoSiobNzM6zFQQ8kv+XC6RuAgEP9j+Erkx3CQs+D1mNqqonlXgT3sAyK8tVhjE4i3Dck7hTml3wzmuI4IRlYAxY8X/FZeYaBDMzAGx5h1AuRthcnYehMnrILV+DKSnHWDuHzONTkR0iS9G25qIBEhFRnbgobU/ibN3c8xoNLHqLQCx9jBA2moT1gkwwbN3QW7/FEjbcZ5IybZO99nWanQG/ma+rHUQUOoqmvHUWA3GAvMBNTvPkZh1WgkwDFEiLp1IyxEGAVqVoUiPPP5+4oGmQyZIFZOAsdwz09/TtDJz0EQJ8JvHjKVmmL2NRID5GFtzbB+QgW4GAfbm3ZIzsp5l22IQUA+9Ug9X+g+jxVkTjQDZWgNCdZ05UO3rArX3R8AFJSCWVZq4lYD8eyfga4OgFZSCkldm+sgXOgE1vQswMRrC3B4il5bXJtY3fW4QCOxapwoYYWD7fLDZHKwrCwcqQRofASTSxVGDQN4+TomUGj6MgHB1AMT9W8xx6LEKmK//wrR1xdVKt+R06PtAqenznpPDiVjvMJLTVttYDqItebCxDuSpm6HkhrMIcO2irnEizM9wNulth8SOzzhs4WW6orsbDIxMjyfoCg68kLmZeaGsh5kabvu7wvqipkUgAOPXHX7Q84MDI+lrOAyrsryBQ2wGIsSGUJOuiEMmnAQijOSG+Z5JWmdsAYfaDHJ/uBTYujgTI/NAhfFCc3HDmEUjAronJgG8fqtlSEglk2NO7KrzHtK8hQ4/OxCbwLadALZtwEq4+rGAeDZcgg3M7QGFftSxJCYBPYDqzefi4AU/Z+uGZik2Rufzexw+kYC4CBj1n9YIUwR6FH3hsq6XXk702T9Xy0FLGTRSHEIvH3VTFQjdbaazureM7owGrgnniSD0rJOkFNM3mhLXCmiX+0Dt+oaLg+UEEFxuDmMGohVPHBlk5pJtcqfvDBYU5cKSHosdgYZXQdaXPV6hRUn4aEdc3lj69ua5aJ7aHz8vLzkLRknEswoxt0C7eJ6FNFr9ptSvabsIRZsApWVxMB78jbMjGRwBMnrJ6TMywGH4w9MgNPaCakkmV70OSUc6IPkTPqHjdNBIyHZnGASISqdFBZ/vgCDd76jiXmF0E8G5CvZxyFaeE04dBThx0HBDK9OMamZ8WcG01Uel22P7gT5IhJEhUGvXA6raC7hilz0mBPY9SY+YByT97C9+mMp3jaBe6QfNNjttsYKKQ90g0sSEvhkMSUwmUvFTb0DLZf5Jhnx32jAh5tTUlHsB0r0gXFr6oFj/C+xsSWUt4LkZIL+cNLtwdu4tOXMN/yQze6kSepTeoI9S7vOwunB6NAJWR5R6nyI9+sTSj1Krs/4sV9bmn5VmprOteCQ9JgG63GLuhjZ3T9trcT3LrUmMl/KC7xQtVklW3KpHIyAUbR6SVrir2QvYOo7pEV4RrCvc6r9m2ujwCTHgTw6jIS0SAT2xK694z//+NbMni0TESoD+nP5Ff063R5uxPWZcK2AfpG8NmfN9KQTmV/qmxlXhwaKB5SZmMf8F4cLeesegrcIAAAAASUVORK5CYII="},3025:function(t){"use strict";t.exports="data:image/png;base64,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"},7896:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACPTkDJAAADyklEQVRYCbVXa0hTURz/nW0+Ssc0zdIQDR+RFoGGFFkolYkUZCJYIfSgiB4U1Kc+mN8qUnp8KAjC3g+KRZRlKZSlZUGZZaa23maumWXTzW262zkrL9vuPdPpdi6Xc87/8fv/7rn3f87/EvxrJPFwVgEBWQQiBPyX+aUjEOxDdvLsfavxIk4+txEWJelI1iUavMgvETmggiDUBvYackhSedZyoiQ3OXZ+FdsFYbuCKJDp1ygewOnyz1cIBEEebESVJkgtjn01IARKlRyYSqFCalQS0qJnIS2G3tGpiJgYjr01h6BtqZJzGbNMQkBJ38nt4grEhU2TgG6euxrXW+5CoJevmsIdKFgVLBuc2U0Pj0Vm3Fx3l3HNJQTMg2bYBTsXtHhOPlc3FoWEAE0NdPf3cLEWxmcgTiN9PVyHERQSAsz+46+vXDeWt/kpy7h6bxWyBF7r27k4A4MWPPvWxNV7q5Al8LSjURany2jA2qs78fjLc1n9WISSNGQgDZSA0dIHdVCoiPnu5yes1+6BwcT/PkRjLwayK2AdsqGy7b4LTPgEDfptZheZLyayBBjwuSatSzpG0p1wa0axL2K6YHAJ6Ho+4057rYvxhrRCpMfMdpGNd8IlwIDL6k/CbBsQYygVShzL24dp6imibLwDjwQ6jXoHCecgkSGTcKagHDEcEjMnJ2JTehGi1VHObtyxMiI3PpdWQ/N4Fq/0rUiOmI7EiDjRRBOsRl5SNhq/v0FXn0GUs5W5UHgUixMWgG3ZMyIT0E2zhj0IpzWPSIA5Pvj4BPNj0zBVPVnECQmcSHfEHATQE72pq4X2AajIL0OsJsZhw3ZMRnpVSi6WJmTCZDWj7ecH0f//oJnQevAwXYFd7hr3OdsTTq08iDlTZ7qrwDaob/Qp02nt4KktrliDjj9dTibCZY/fgJOlY2Nap92Nal2ds9gxZiszUnDLoBX6vm6J76gJME8TzYgdlSXY//A42JngTXutb4PNPihx8YoA82a10OnGa1hxfiNq3teBltcSUDnBi+/NcmJ4TWAY5UtvJ7bdKkHB5S248fYeBmyeV+RFpzyBUWXBcFC53kCLl2q6EmdfavH2hw69FiMILXdDaZawzGDtz4ARBx6dgGXI6g7RLHsauluNZm6iB1WVrtZxD9urA0MQGhTi+ID7rKZhsUuvIgIscPyguch9MjFa+8FuXqP/JEMKWgPW8wz8LbcLaGDPTpKPZF+hfaG/Azrj0+ypE5QdS/4tfikUyWFZhTSjsunrGNWvmjOYN2MBxEaT+anut+EcSt9Y/wKYPTFLjUA+DAAAAABJRU5ErkJggg=="},3277:function(t){"use strict";t.exports="data:image/png;base64,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"},9515:function(t){"use strict";t.exports="data:image/png;base64,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"},5529:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAA8FBMVEUAAADHFsHHFsHHFsHHFsHHFsHHFsHGFsLHFsHHFsHuuu3////HDMHinODXc9PJHMPJHsPHE8Hut+zuue3+/P778/vrr+rnpuXOScjMQ8fstOvjmeDgpN3diNrck9jaftfRXczPU8rKMMTrx+npqufmouTYdtTUbtDTZc7SYM346vfx1+/nuuThld7cg9jWftLQWcvJK8TJJsPIIsLHD8HHBcH99/389fv57vn25PXz3vLu0O3tzuvov+bks+LendvZe9XUdNDMP8bKNcXy2/Hu1u3v0u3lteLjsOHejdvYidTXg9PLOsXiq9/hqN7gkd0zo4LZAAAACXRSTlMAsajs60tKB6cVFYoAAAACW0lEQVRYw+2XWXPaMBCA7YSErA024rS5be5wX4GQcJW0SZO0/f//ppKMJw4xtmS/9KHfEzOwn7Sr3WFWwFyJlxCAS/FKIEQvIDAXUSzA8SEM+P4QimtBhFCIgl/91NZLFc4TEcCDebX4kJFlDTw4K4hp5dpSJixj/ILJsHeflo/0gE8wb7107+QPMjqHYD7aPmbkT6TfgFGA3su1W/mUzBuwCVB5lZa/cPv8DdgEk8evZ/8okgZgFKxPEn/a7KcIgFnQcV7/fv1q0mAOwcYOXta2Gg3mFNAKLLq/O3BkavAJvqdXz8OEfbSBJ6DLJ2iZYDHTj83Q4xNQkOmYgD23QP/lnIAn4BWUF7KDuzavoCw7WQyBU3D4NIIPI+AVFJ0TYCDgFtSsCVht9irY8DUSntz16/sMbLhT2BpzCIYANv+SAMV8mXkIpoN6SvIj2WijM4JpQ2IiVTkjGEiMJDVXAarj73Ij1ZNEM49/VXIVxGj+qb7H/wHq5CRCwV1gX3AwAXe0wrHG8bOCKq1jVgEXzFKS3PBPxUuQACVLFLnq6VyS5DENAxRvAYytgwo6OGnX6dVaAH4CjF6gpSiZH8nHJUweF8dfQKnm6HlNFQiHn0n7eVgFoDatUnRw8pU8/ThCwCqgmPRYKa5YySs4nE9gJ26VYwzAL6ClJ5AHCSYAdZfHdUAQTEA5kJcPLKD8F/AIZrj1dPCnIkl9VwE0cMc3FT/IaOzcBe2UxEZ27C5AlSRbvAEUl6VLKxXifvR3Y6BEQq99oRfPkKvvDVm+b0LERwXCtRiBAETEaxz8F/cVtnqf0nH2AAAAAElFTkSuQmCC"},6557:function(t){"use strict";t.exports="data:image/png;base64,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"},5543:function(t){"use strict";t.exports="data:image/png;base64,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"},7445:function(t){"use strict";t.exports="data:image/png;base64,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"}},e={};function s(i){var a=e[i];if(void 0!==a)return a.exports;var n=e[i]={id:i,loaded:!1,exports:{}};return t[i].call(n.exports,n,n.exports,s),n.loaded=!0,n.exports}s.m=t,function(){var t=[];s.O=function(e,i,a,n){if(!i){var o=1/0;for(m=0;m=n)&&Object.keys(s.O).every((function(t){return s.O[t](i[l])}))?i.splice(l--,1):(r=!1,n0&&t[m-1][2]>n;m--)t[m]=t[m-1];t[m]=[i,a,n]}}(),function(){s.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return s.d(e,{a:e}),e}}(),function(){s.d=function(t,e){for(var i in e)s.o(e,i)&&!s.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})}}(),function(){s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"===typeof window)return window}}()}(),function(){s.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)}}(),function(){s.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t}}(),function(){s.p=""}(),function(){var t={32:0};s.O.j=function(e){return 0===t[e]};var e=function(e,i){var a,n,o=i[0],r=i[1],l=i[2],p=0;if(o.some((function(e){return 0!==t[e]}))){for(a in r)s.o(r,a)&&(s.m[a]=r[a]);if(l)var m=l(s)}for(e&&e(i);p0?e("div",{staticClass:"wp-mail-smtp-step-below-content",domProps:{innerHTML:t._s(t.content_below)}}):t._e(),t.display_exit_link?e("p",{staticClass:"wp-mail-smtp-exit-link"},[e("a",{attrs:{href:t.exit_href}},[t._v(t._s(t.text_exit_link))])]):t._e()])])],1)},P=[],M=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-container"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-timeline"},[t._l(t.steps,(function(i,a){return[a>0?e("div",{key:a+"line",class:t.lineClass(a)}):t._e(),e("div",{key:a,class:t.stepClass(a)},[e("inline-svg",{staticClass:"icon icon-success",attrs:{src:s(7579),width:"10",height:"10"}}),e("inline-svg",{staticClass:"icon icon-failed",attrs:{src:s(3531),width:"8",height:"11"}})],1)]}))],2)])},E=[],B={name:"TheWizardTimeline",data(){return{steps:this.$wizard_steps}},methods:{stepClass(t){let e="wp-mail-smtp-setup-wizard-timeline-step";const s=this.steps.findIndex((t=>this.$route.name.includes(t)));return(tthis.$route.name.includes(t)));return t<=s&&(e+=" wp-mail-smtp-setup-wizard-timeline-line-active"),e}}},T=B,I=(0,d.Z)(T,M,E,!1,null,null,null),F=I.exports,D={name:"SetupWizardSteps",components:{TheWizardHeader:v,TheWizardTimeline:F},data(){return{text_exit_link:(0,l.__)("Close and exit the Setup Wizard","wp-mail-smtp"),exit_href:this.$wpms.exit_url,content_below:""}},computed:{display_exit_link:function(){return!this.$route.name.includes("check_configuration_step")}},methods:{displayContentBelow:function(t){this.content_below=t}},mounted(){this.$store.dispatch("$_app/start_loading"),Promise.all([this.$store.dispatch("$_settings/getSettings"),this.$store.dispatch("$_plugins/getPlugins")]).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))}},z=D,Z=(0,d.Z)(z,S,P,!1,null,null,null),O=Z.exports,L=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-import"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("form",[e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-row"},[e("settings-input-radios-with-icons",{attrs:{name:"import_from_plugin",options:t.options},model:{value:t.selectedImport,callback:function(e){t.selectedImport=e},expression:"selectedImport"}})],1)])])],1),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"skip_step"},domProps:{textContent:t._s(t.text_skip)},on:{click:function(e){return e.preventDefault(),t.nextStep.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step",disabled:null===t.selectedImport},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},W=[],R=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-input-radios-with-icons"},t._l(t.options,(function(i){return e("label",{key:i.value,class:t.labelClass(i),attrs:{for:"wp-mail-smtp-settings-radio-"+t.name+"["+i.value+"]"},on:{click:function(e){return t.clicked(i)}}},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.selectedImport,expression:"selectedImport"}],attrs:{id:"wp-mail-smtp-settings-radio-"+t.name+"["+i.value+"]",type:"radio",name:t.name,autocomplete:"off",disabled:i.disabled||!1},domProps:{value:i.value,checked:t.isChecked(i.value),checked:t._q(t.selectedImport,i.value)},on:{change:function(e){t.selectedImport=i.value}}}),e("span",{class:t.titleClass(i.value)},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}})],1),i.logo.length?e("img",{staticClass:"wp-mail-smtp-logo-icon",attrs:{src:i.logo,alt:i.label}}):t._e(),e("span",{staticClass:"wp-mail-smtp-styled-radio-text"},[t._v(t._s(i.label))]),i.is_pro?e("inline-svg",{staticClass:"wp-mail-smtp-pro-badge",attrs:{src:s(330),width:"46",height:"26"}}):t._e()],1)})),0)},Q=[],U={name:"SettingsInputRadiosWithIcons",props:{options:Array,name:String,value:String},data(){return{has_error:!1}},computed:{selectedImport:{get(){return this.value},set(t){this.$emit("input",t)}}},methods:{titleClass(t){let e="wp-mail-smtp-styled-radio";return this.isChecked(t)&&(e+=" wp-mail-smtp-styled-radio-checked"),e},labelClass(t){let e="";return this.isChecked(t.value)&&(e+=" wp-mail-smtp-styled-radio-label-checked"),t.disabled&&(e+=" wp-mail-smtp-styled-radio-label-disabled"),t.readonly&&(e+=" wp-mail-smtp-styled-radio-label-readonly"),e},isChecked(t){return t===this.selectedImport},clicked(t){t.is_pro&&this.$emit("clicked-disabled",t)}}},N=U,G=(0,d.Z)(N,R,Q,!1,null,"2d9202de",null),H=G.exports,Y=function(){var t=this,e=t._self._c;return e("p",{staticClass:"wp-mail-smtp-setup-wizard-step-count"},[t._v(" "+t._s(t.stepValue)+" ")])},V=[],K={name:"TheWizardStepCounter",computed:{stepValue:function(){const t=this.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))+1;return(0,l.gB)((0,l.__)("Step %1$s of %2$s","wp-mail-smtp"),t,this.$wizard_steps.length)}}},q=K,J=(0,d.Z)(q,Y,V,!1,null,"44fd4a93",null),X=J.exports,j={name:"WizardStepImport",components:{SettingsInputRadiosWithIcons:H,ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Import data from your current plugins","wp-mail-smtp"),text_header_subtitle:(0,l.__)("We have detected other SMTP plugins installed on your website. Select which plugin's data you would like to import to WP Mail SMTP.","wp-mail-smtp"),text_save:(0,l.__)("Import Data and Continue","wp-mail-smtp"),text_skip:(0,l.__)("Skip this Step","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),options:[{value:"easy-smtp",label:(0,l.__)("Easy WP SMTP","wp-mail-smtp"),logo:s(9515),disabled:!this.$wpms.other_smtp_plugins.includes("easy-smtp"),readonly:!this.$wpms.other_smtp_plugins.includes("easy-smtp")},{value:"fluent-smtp",label:(0,l.__)("FluentSMTP","wp-mail-smtp"),logo:s(5529),disabled:!this.$wpms.other_smtp_plugins.includes("fluent-smtp"),readonly:!this.$wpms.other_smtp_plugins.includes("fluent-smtp")},{value:"post-smtp-mailer",label:(0,l.__)("Post SMTP Mailer","wp-mail-smtp"),logo:s(6557),disabled:!this.$wpms.other_smtp_plugins.includes("post-smtp-mailer"),readonly:!this.$wpms.other_smtp_plugins.includes("post-smtp-mailer")},{value:"smtp-mailer",label:(0,l.__)("SMTP Mailer","wp-mail-smtp"),logo:s(5543),disabled:!this.$wpms.other_smtp_plugins.includes("smtp-mailer"),readonly:!this.$wpms.other_smtp_plugins.includes("smtp-mailer")},{value:"wp-smtp",label:(0,l.__)("WP SMTP","wp-mail-smtp"),logo:s(7445),disabled:!this.$wpms.other_smtp_plugins.includes("wp-smtp"),readonly:!this.$wpms.other_smtp_plugins.includes("wp-smtp")}],selectedImport:null}},methods:{handleSubmit(){null!==this.selectedImport&&(this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/importOtherPlugin",{value:this.selectedImport}).then((t=>{t?this.nextStep():this.$wpms_error_toast({})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")})))},nextStep(){this.$next_step()},previousStep(){this.$previous_step()}}},$=j,tt=(0,d.Z)($,L,W,!1,null,null,null),et=tt.exports,st=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-choose-mailer"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}}),t.mailer_set_via_constants?e("div",{staticClass:"wp-mail-smtp-notice wp-mail-smtp-notice--info"},[e("p",{domProps:{innerHTML:t._s(t.text_mailer_set_via_constants)}})]):t._e(),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("form",[e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-row wp-mail-smtp-setup-wizard-form-row-highlight"},[e("h3",[t._v(t._s(t.text_recommended_mailers))]),e("settings-input-radios-with-icons",{attrs:{name:"choose_mailer",options:t.recommended_options},model:{value:t.selectedMailer,callback:function(e){t.selectedMailer=e},expression:"selectedMailer"}})],1),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-row"},[e("settings-input-radios-with-icons",{attrs:{name:"choose_mailer",options:t.options},on:{"clicked-disabled":t.clickedDisabledOption},model:{value:t.selectedMailer,callback:function(e){t.selectedMailer=e},expression:"selectedMailer"}})],1)])])],1),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step",disabled:null===t.selectedMailer||"mail"===t.selectedMailer},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},it=[],at=s(629),nt={name:"WizardStepChooseMailer",components:{SettingsInputRadiosWithIcons:H,ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Choose Your SMTP Mailer","wp-mail-smtp"),text_header_subtitle:(0,l.gB)((0,l.__)("Which mailer would you like to use to send emails? Not sure which mailer to choose? Check out our %1$scomplete mailer guide%2$s for details on each option.","wp-mail-smtp"),'',""),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_recommended_mailers:(0,l.__)("Recommended Mailers","wp-mail-smtp"),text_mailer_set_via_constants:(0,l.__)("Your mailer is already configured in a WP Mail SMTP constant, so the options below have been disabled. To change your mailer, please edit or remove the WPMS_MAILER constant in your wp-config.php file.","wp-mail-smtp"),mailer_set_via_constants:this.$wpms.defined_constants.includes("WPMS_MAILER"),recommended_options:[{value:"sendlayer",label:this.$wpms.mailer_options["sendlayer"].title,logo:s(9857),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"smtpcom",label:this.$wpms.mailer_options["smtpcom"].title,logo:s(7536),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"sendinblue",label:this.$wpms.mailer_options["sendinblue"].title,logo:s(2451),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")}],options:[{value:"amazonses",label:this.$wpms.mailer_options["amazonses"].title,logo:s(7557),is_pro:!this.$wpms.is_pro,notice:this.$wpms.mailer_options["amazonses"].edu_notice,readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:!this.$wpms.is_pro||this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"gmail",label:this.$wpms.mailer_options["gmail"].title,logo:s(7526),notice:this.$wpms.mailer_options["gmail"].edu_notice,readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"mailgun",label:this.$wpms.mailer_options["mailgun"].title,logo:s(5567),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"outlook",label:this.$wpms.is_pro?(0,l.__)("Microsoft 365 / Outlook","wp-mail-smtp"):this.$wpms.mailer_options["outlook"].title,logo:s(6703),is_pro:!this.$wpms.is_pro,notice:this.$wpms.mailer_options["outlook"].edu_notice,readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:!this.$wpms.is_pro||this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"postmark",label:this.$wpms.mailer_options["postmark"].title,logo:s(5699),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"sendgrid",label:this.$wpms.mailer_options["sendgrid"].title,logo:s(2763),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"sparkpost",label:this.$wpms.mailer_options["sparkpost"].title,logo:s(2091),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"zoho",label:this.$wpms.mailer_options["zoho"].title,logo:s(9349),is_pro:!this.$wpms.is_pro,readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:!this.$wpms.is_pro||this.$wpms.defined_constants.includes("WPMS_MAILER")},{value:"smtp",label:this.$wpms.mailer_options["smtp"].title,logo:s(450),readonly:this.$wpms.defined_constants.includes("WPMS_MAILER"),disabled:this.$wpms.defined_constants.includes("WPMS_MAILER")}],selectedMailer:this.currentMailer}},watch:{currentMailer:function(t){this.selectedMailer=t}},computed:{...(0,at.Se)({currentMailer:"$_settings/mailer"}),selectedMailerOptions:function(){return this.recommended_options.concat(this.options).find((t=>t.value===this.selectedMailer))}},methods:{handleSubmit(t,e=!1){null!==this.selectedMailer&&"mail"!==this.selectedMailer&&(void 0===this.selectedMailerOptions.notice||e?(this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/updateSettings",{value:{mail:{mailer:this.selectedMailer}}}).then((t=>{t.success?(this.$store.dispatch("$_settings/setMailer",this.selectedMailer),this.nextStep()):this.$wpms_error_toast({})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))):this.$swal({title:this.selectedMailerOptions.label+" "+(0,l.__)("Mailer","wp-mail-smtp"),html:this.selectedMailerOptions.notice,width:650,showCloseButton:!0,allowOutsideClick:!1,allowEscapeKey:!1,allowEnterKey:!1,customClass:{container:"wp-mail-smtp-swal"},confirmButtonText:(0,l.__)("I Understand, Continue","wp-mail-smtp"),cancelButtonText:(0,l.__)("Choose a Different Mailer","wp-mail-smtp"),showCancelButton:!0,reverseButtons:!0}).then((t=>{t.value?this.handleSubmit(null,!0):void 0===t.dismiss||"cancel"!==t.dismiss||this.$wpms.defined_constants.includes("WPMS_MAILER")||(this.selectedMailer=null)})))},nextStep(){const t=this.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))+1;this.$router.push({name:`${this.$wizard_steps[t]}_${this.selectedMailer}`})},previousStep(){this.$previous_step()},clickedDisabledOption(t){var e=/(\?)/.test(this.$wpms.education.upgrade_url)?"&":"?",i=this.$wpms.education.upgrade_url+e+"utm_content="+encodeURIComponent(t.value);this.$swal({title:t.label+" "+(0,l.__)("is a PRO Feature","wp-mail-smtp"),html:`

      ${this.$wpms.education.upgrade_text.replace("%mailer%",t.label)}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_button}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_bonus}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_doc}

      `,width:550,imageUrl:s(4523),imageWidth:31,imageHeight:35,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-upgrade-popup"},showConfirmButton:!1})}},mounted(){this.selectedMailer=this.currentMailer}},ot=nt,rt=(0,d.Z)(ot,st,it,!1,null,"1e0dc98d",null),lt=rt.exports,pt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-configure-mailer"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-configure-mailer-header"},[e("div",{staticClass:"wp-mail-smtp-configure-mailer-header-container"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("span",{staticClass:"wp-mail-smtp-configure-mailer-logo"},[e("inline-svg",{attrs:{src:t.logo(t.mailer),height:"40"}})],1)]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("router-view",{ref:"mailerConfiguration"})],1),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step",disabled:null===t.mailer||!0===t.blocked_step},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},mt=[],_t=s(7452),ct={name:"WizardStepConfigureMailer",components:{ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Configure Mailer Settings","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Below, we'll show you all of the settings required to set up this mailer.","wp-mail-smtp"),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp")}},computed:{...(0,at.Se)({mailer:"$_settings/mailer"}),...(0,_t.vn)("$_wizard",["blocked_step"])},methods:{handleSubmit(){return!this.blocked_step&&(this.$refs.mailerConfiguration.areRequiredFieldsValid()?(this.$store.dispatch("$_app/start_loading"),void this.$store.dispatch("$_settings/saveCurrentSettings").then((t=>{t.success?this.$next_step():this.$wpms_error_toast({})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))):(this.$required_fields_modal(),!1))},previousStep(){this.blocked_step=!1,this.$previous_step()},logo(t){return"mail"===t?t="smtp":"sendinblue"===t&&(t="brevo"),s(5016)(`./${t}.svg`)}}},dt=ct,ut=(0,d.Z)(dt,pt,mt,!1,null,null,null),ht=ut.exports,gt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-plugin-features"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-plugin-features-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"wp-mail-smtp-plugin-features-list"},[e("settings-input-long-checkbox",{attrs:{value:!0,name:"improved_deliverability",label:t.text_improved_email_deliverability,description:t.text_improved_email_deliverability_desc,disabled:""}}),e("settings-input-long-checkbox",{attrs:{value:!0,name:"error_tracking",label:t.text_error_tracking,description:t.text_error_tracking_desc,disabled:""}}),t.contact_form_already_installed?t._e():e("settings-input-long-checkbox",{attrs:{name:"smart_contact_form",label:t.text_smart_contact_form,description:t.text_smart_contact_form_desc},model:{value:t.smart_contact_form,callback:function(e){t.smart_contact_form=e},expression:"smart_contact_form"}}),t.is_pro?t._e():e("settings-input-long-checkbox",{attrs:{name:"summary_report_email",label:t.text_summary_report_email,description:t.text_summary_report_email_desc},model:{value:t.summary_report_email,callback:function(e){t.summary_report_email=e},expression:"summary_report_email"}}),e("settings-input-long-checkbox",{attrs:{name:"email_log",constant:"WPMS_LOGS_ENABLED",label:t.text_email_log,description:t.text_email_log_desc,show_pro:!t.is_pro},on:{input:t.emailLogEnabledChanged},model:{value:t.email_log,callback:function(e){t.email_log=e},expression:"email_log"}}),t.email_log||!t.is_pro?e("settings-input-long-checkbox",{attrs:{value:t.complete_email_report,name:"complete_email_report",label:t.text_complete_email_report,description:t.text_complete_email_report_desc,show_pro:!t.is_pro,disabled:!!t.is_pro},model:{value:t.complete_email_report,callback:function(e){t.complete_email_report=e},expression:"complete_email_report"}}):t._e(),t.is_pro&&t.email_log?e("settings-input-long-checkbox",{attrs:{name:"summary_report_email",constant:"WPMS_SUMMARY_REPORT_EMAIL_DISABLED",label:t.text_summary_report_email,description:t.text_summary_report_email_desc},model:{value:t.summary_report_email,callback:function(e){t.summary_report_email=e},expression:"summary_report_email"}}):t._e(),e("settings-input-long-checkbox",{attrs:{name:"instant_email_alert_input",label:t.text_instant_email_alert,description:t.text_instant_email_alert_desc,constant:"WPMS_ALERT_EMAIL_SEND_TO",show_pro:!t.is_pro},model:{value:t.instant_email_alert,callback:function(e){t.instant_email_alert=e},expression:"instant_email_alert"}}),t.is_pro?t._e():e("settings-input-long-checkbox",{attrs:{name:"manage_notifications",label:t.text_manage_notifications,description:t.text_manage_notifications_desc,show_pro:!t.is_pro},model:{value:t.manage_notifications,callback:function(e){t.manage_notifications=e},expression:"manage_notifications"}}),t.is_multisite&&!t.is_pro?e("settings-input-long-checkbox",{attrs:{name:"network_settings",label:t.text_network_settings,description:t.text_network_settings_desc,show_pro:!t.is_pro},model:{value:t.network_settings,callback:function(e){t.network_settings=e},expression:"network_settings"}}):t._e()],1)]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step"},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},wt=[],ft=function(){var t=this,e=t._self._c;return e("label",{staticClass:"settings-input-long-checkbox",class:{"settings-input-long-checkbox-checked":t.value,"settings-input-long-checkbox-disabled":t.disabled||t.is_constant_set},attrs:{for:"wp-mail-smtp-settings-long-checkbox-"+t.name}},[e("div",{staticClass:"settings-input-long-checkbox-header"},[e("span",{staticClass:"title-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))]),t.show_pro?e("inline-svg",{staticClass:"wp-mail-smtp-pro-badge",attrs:{src:s(330),width:"46",height:"24"}}):t._e()],1),t.description?e("p",{staticClass:"description"},[t._v(t._s(t.description))]):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()]),e("span",{staticClass:"settings-input-long-checkbox-container"},[e("input",{attrs:{id:"wp-mail-smtp-settings-long-checkbox-"+t.name,type:"checkbox",name:t.name,disabled:t.disabled||t.is_constant_set},domProps:{checked:t.value},on:{input:function(e){return t.$emit("input",e.target.checked)}}}),e("span",{staticClass:"checkbox",class:{"checkbox-checked":t.value,"checkbox-disabled":t.disabled||t.is_constant_set}},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}})],1)])])},At=[],bt={name:"SettingsInputLongCheckbox",props:{label:String,name:String,value:Boolean,description:String,constant:String,disabled:Boolean,show_pro:Boolean},computed:{is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}}},vt=bt,xt=(0,d.Z)(vt,ft,At,!1,null,null,null),kt=xt.exports,yt={name:"WizardStepPluginFeatures",components:{ContentHeader:h,TheWizardStepCounter:X,SettingsInputLongCheckbox:kt},data(){return{text_header_title:(0,l.__)("Which email features do you want to enable?","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Make sure you're getting the most out of WP Mail SMTP. Just check all of the features you'd like to use, and we'll go ahead and enable those for you.","wp-mail-smtp"),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_improved_email_deliverability:(0,l.__)("Improved Email Deliverability","wp-mail-smtp"),text_improved_email_deliverability_desc:(0,l.__)("Ensure your emails are sent successfully and reliably.","wp-mail-smtp"),text_error_tracking:(0,l.__)("Email Error Tracking","wp-mail-smtp"),text_error_tracking_desc:(0,l.__)("Easily spot errors causing delivery issues.","wp-mail-smtp"),text_smart_contact_form:(0,l.__)("Smart Contact Form","wp-mail-smtp"),text_smart_contact_form_desc:(0,l.__)("Install the WPForms plugin and create beautiful contact forms with just a few clicks.","wp-mail-smtp"),text_email_log:(0,l.__)("Detailed Email Logs","wp-mail-smtp"),text_email_log_desc:(0,l.__)("Keep records of every email that's sent out from your website.","wp-mail-smtp"),text_instant_email_alert:(0,l.__)("Instant Email Alerts","wp-mail-smtp"),text_instant_email_alert_desc:(0,l.__)("Get notifications via email, SMS, Slack, or webhook when emails fail to send.","wp-mail-smtp"),text_complete_email_report:(0,l.__)("Complete Email Reports","wp-mail-smtp"),text_complete_email_report_desc:(0,l.__)("See the delivery status, track opens and clicks, and create deliverability graphs.","wp-mail-smtp"),text_summary_report_email:(0,l.__)("Weekly Email Summary","wp-mail-smtp"),text_summary_report_email_desc:(0,l.__)("Get statistics about emails you've sent.","wp-mail-smtp"),text_manage_notifications:(0,l.__)("Manage Default Notifications","wp-mail-smtp"),text_manage_notifications_desc:(0,l.__)("Control which email notifications your WordPress site sends.","wp-mail-smtp"),text_network_settings:(0,l.__)("Multisite Network Settings","wp-mail-smtp"),text_network_settings_desc:(0,l.__)("Save time with powerful WordPress Multisite controls.","wp-mail-smtp"),is_pro:this.$wpms.is_pro,is_multisite:this.$wpms.is_multisite,email_log:!1,complete_email_report:!!this.$wpms.is_pro,summary_report_email:!1,manage_notifications:!1,network_settings:!1}},computed:{...(0,at.Se)({contact_form_already_installed:"$_plugins/contact_form_plugin_already_installed",email_log_setting:"$_settings/email_log_enabled",summary_report_email_setting:"$_settings/summary_report_email_enabled"}),...(0,_t.vn)("$_plugins",{smart_contact_form:"smart_contact_form_setting"}),...(0,_t.vn)("$_settings",{alert_email_connections:"settings.alert_email.connections",instant_email_alert:"settings.alert_email.enabled"})},watch:{smart_contact_form:function(){if(this.contact_form_already_installed)return!1;this.showPluginInstallFooterNotice()},contact_form_already_installed:function(){this.showPluginInstallFooterNotice()},email_log_setting:function(t){this.email_log=t},summary_report_email_setting:function(t){this.summary_report_email=t}},methods:{handleSubmit(){this.$store.dispatch("$_app/start_loading");let t=[],e={value:{general:{summary_report_email_disabled:!this.summary_report_email}}};if(t.push(this.$store.dispatch("$_settings/setSummaryReportEmail",!this.summary_report_email)),this.is_pro){e.value={...e.value,logs:{enabled:this.email_log}},t.push(this.$store.dispatch("$_settings/setLogs",this.email_log));let s={enabled:this.instant_email_alert};this.instant_email_alert&&0===Object.values(this.alert_email_connections).length&&(s.connections=[{send_to:this.$wpms.current_user_email}]),e.value={...e.value,alert_email:s}}if(t.push(this.$store.dispatch("$_settings/updateSettings",e)),t.push(Promise.resolve({success:!0}).then((t=>this.smart_contact_form&&!this.contact_form_already_installed?this.$store.dispatch("$_plugins/installPlugin","wpforms-lite"):t))),!this.is_pro){const e=[];this.email_log&&e.push("email_log"),this.complete_email_report&&e.push("complete_email_report"),this.instant_email_alert&&e.push("instant_email_alert"),this.manage_notifications&&e.push("manage_notifications"),this.network_settings&&e.push("network_settings"),t.push(this.$store.dispatch("$_settings/savePluginFeatures",e))}Promise.all(t).then((t=>{const e=t.filter((t=>t.success));if(e.length===t.length){this.$emit("displayContentBelow","");let t=this.is_pro&&!this.$store.getters["$_settings/email_log_enabled"]?1:0;this.$next_step(t)}})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},previousStep(){this.$emit("displayContentBelow","");const t=this.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))-1;this.$router.push({name:`${this.$wizard_steps[t]}_${this.$store.getters["$_settings/mailer"]}`})},showPluginInstallFooterNotice(){let t=[];this.smart_contact_form&&!this.contact_form_already_installed&&t.push("WPForms");let e="";t.length>0&&(e=(0,l.__)("The following plugin will be installed for free:","wp-mail-smtp"),e=`

      ${e} ${t.join(", ")}

      `),this.$emit("displayContentBelow",e)},emailLogEnabledChanged(){"0"===this.$wpms.completed_time&&sessionStorage.setItem("wp_mail_smtp_email_log_enabled_changed","true")}},mounted(){if(this.showPluginInstallFooterNotice(),this.$wpms.is_pro&&"0"===this.$wpms.completed_time&&"true"!==sessionStorage.getItem("wp_mail_smtp_email_log_enabled_changed")?this.email_log=!0:this.email_log=this.$store.getters["$_settings/email_log_enabled"],this.summary_report_email=this.$store.getters["$_settings/summary_report_email_enabled"],!this.$wpms.is_pro){const t=this.$store.getters["$_settings/plugin_features"];t.includes("email_log")&&(this.email_log=!0),t.includes("complete_email_report")&&(this.complete_email_report=!0),t.includes("instant_email_alert")&&(this.instant_email_alert=!0),t.includes("manage_notifications")&&(this.manage_notifications=!0),t.includes("network_settings")&&(this.network_settings=!0)}}},Ct=yt,St=(0,d.Z)(Ct,gt,wt,!1,null,null,null),Pt=St.exports,Mt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-help-improve"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-help-improve-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("settings-input-text",{attrs:{name:"email",type:"email",label:t.text_email_label,description:t.text_email_description},model:{value:t.current_user_email,callback:function(e){t.current_user_email=e},expression:"current_user_email"}}),e("settings-input-checkbox",{attrs:{name:"usage_tracking",label:t.text_usage_tracking_label,description:t.text_usage_tracking_description,tooltip:t.text_usage_tracking_tooltip},model:{value:t.usage_tracking,callback:function(e){t.usage_tracking=e},expression:"usage_tracking"}})],1),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"skip_step"},domProps:{textContent:t._s(t.text_skip)},on:{click:function(e){return e.preventDefault(),t.nextStep.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step"},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},Et=[],Bt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-text",class:{"settings-input-text-with-copy":t.copy,"input-error":t.has_errors||t.field_error}},[e("label",{staticClass:"settings-input-label-container",attrs:{for:t.id}},[t.label?e("span",{staticClass:"label",domProps:{innerHTML:t._s(t.label)}}):t._e(),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1),e("span",{staticClass:"settings-input-container"},["checkbox"===t.type?e("input",{directives:[{name:"model",rawName:"v-model",value:t.currentValue,expression:"currentValue"}],ref:"input",attrs:{id:t.id,name:t.name,placeholder:t.placeholder,readonly:t.readonly,disabled:t.disabled||t.is_constant_set,type:"checkbox"},domProps:{checked:Array.isArray(t.currentValue)?t._i(t.currentValue,null)>-1:t.currentValue},on:{change:[function(e){var s=t.currentValue,i=e.target,a=!!i.checked;if(Array.isArray(s)){var n=null,o=t._i(s,n);i.checked?o<0&&(t.currentValue=s.concat([n])):o>-1&&(t.currentValue=s.slice(0,o).concat(s.slice(o+1)))}else t.currentValue=a},t.inputUpdate]}}):"radio"===t.type?e("input",{directives:[{name:"model",rawName:"v-model",value:t.currentValue,expression:"currentValue"}],ref:"input",attrs:{id:t.id,name:t.name,placeholder:t.placeholder,readonly:t.readonly,disabled:t.disabled||t.is_constant_set,type:"radio"},domProps:{checked:t._q(t.currentValue,null)},on:{change:[function(e){t.currentValue=null},t.inputUpdate]}}):e("input",{directives:[{name:"model",rawName:"v-model",value:t.currentValue,expression:"currentValue"}],ref:"input",attrs:{id:t.id,name:t.name,placeholder:t.placeholder,readonly:t.readonly,disabled:t.disabled||t.is_constant_set,type:t.type},domProps:{value:t.currentValue},on:{change:t.inputUpdate,input:function(e){e.target.composing||(t.currentValue=e.target.value)}}}),t.copy?e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-small",class:{"wp-mail-smtp-button-copied":t.show_copied},attrs:{title:t.text_copy_button},on:{click:function(e){return e.preventDefault(),t.copyValue.apply(null,arguments)}}},[e("span",{staticClass:"copy-button-container"},[e("inline-svg",{staticClass:"icon",class:{active:!t.show_copied},attrs:{src:s(8098),width:"16",height:"16"}}),e("inline-svg",{staticClass:"icon copied",class:{active:t.show_copied},attrs:{src:s(5561),width:"16",height:"16"}})],1)]):t._e()]),t.has_errors?e("p",{staticClass:"error"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(4186),width:"16"}}),e("span",{domProps:{innerHTML:t._s(t.text_error)}})],1):t._e(),t.description?e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.description)}}):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()])},Tt=[],It=function(){var t=this,e=t._self._c;return e("span",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.tooltip_data,expression:"tooltip_data"}],staticClass:"wp-mail-smtp-info",attrs:{tabindex:"0"}},[e("inline-svg",{staticClass:"icon",attrs:{src:s(1004),width:"14",height:"14"}})],1)},Ft=[],Dt={name:"SettingsInfoTooltip",props:{content:String},data(){return{tooltip_data:{content:this.content,autoHide:!1,trigger:"hover focus click"}}}},zt=Dt,Zt=(0,d.Z)(zt,It,Ft,!1,null,"74a4d2ae",null),Ot=Zt.exports,Lt={name:"SettingsInputText",components:{SettingsInfoTooltip:Ot},props:{name:String,value:String,label:String,description:String,constant:String,placeholder:String,type:{type:String,default:"text"},tooltip:String,readonly:Boolean,disabled:Boolean,format:RegExp,error:{type:String,default:""},copy:{type:Boolean,default:!1},is_error:Boolean},data(){return{has_error:!1,id:"input-"+this.name,text_copy_button:(0,l.__)("Copy input value","wp-mail-smtp"),text_copied:(0,l.__)("Copied!","wp-mail-smtp"),show_copied:!1}},computed:{currentValue:{get(){return this.value},set(t){this.$emit("is_error_update",!1),this.$emit("input",t)}},field_error:{get(){return this.is_error},set(t){this.$emit("is_error_update",t)}},has_errors:function(){return this.error.length>0||this.has_error},text_error:function(){return this.error.length>0?this.error:(0,l.__)("The value entered does not match the required format","wp-mail-smtp")},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}},methods:{inputUpdate:function(t){if(this.disabled)return!1;if(this.has_error=!1,this.format||this.type&&"email"===this.type){const e=this.format?this.format:/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;if(!e.test(t.target.value))return this.has_error=!0,this.$emit("error_detected",this.text_error),!1}},copyValue:function(){const t=this.$refs.input;t.select(),document.execCommand("copy"),this.show_copied=!0;let e=this;setTimeout((function(){e.show_copied=!1}),1e3)}}},Wt=Lt,Rt=(0,d.Z)(Wt,Bt,Tt,!1,null,null,null),Qt=Rt.exports,Ut=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-checkbox",class:{"settings-input-checkbox-checked":t.value,"settings-input-checkbox-disabled":t.disabled}},[e("span",{staticClass:"settings-input-label-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))]),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1),e("label",{staticClass:"settings-input-checkbox-container",attrs:{for:"wp-mail-smtp-settings-checkbox-"+t.name}},[e("input",{attrs:{id:"wp-mail-smtp-settings-checkbox-"+t.name,type:"checkbox",name:t.name,disabled:t.disabled},domProps:{checked:t.value},on:{input:function(e){return t.$emit("input",e.target.checked)}}}),e("span",{staticClass:"checkbox",class:{"checkbox-checked":t.value,"checkbox-disabled":t.disabled}},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"14",height:"14"}})],1),t.description?e("span",{staticClass:"input-label"},[t._v(t._s(t.description))]):t._e()])])},Nt=[],Gt={name:"SettingsInputCheckbox",components:{SettingsInfoTooltip:Ot},props:{label:String,name:String,value:Boolean,description:String,tooltip:String,disabled:Boolean}},Ht=Gt,Yt=(0,d.Z)(Ht,Ut,Nt,!1,null,null,null),Vt=Yt.exports,Kt={name:"WizardStepHelpImprove",components:{ContentHeader:h,TheWizardStepCounter:X,SettingsInputText:Qt,SettingsInputCheckbox:Vt},data(){return{text_header_title:(0,l.__)("Help Improve WP Mail SMTP + Smart Recommendations","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Get helpful suggestions from WP Mail SMTP on how to optimize your email deliverability and grow your business.","wp-mail-smtp"),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_skip:(0,l.__)("Skip this Step","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_email_label:(0,l.__)("Your Email Address","wp-mail-smtp"),text_email_description:(0,l.__)("Your email is needed, so you can receive recommendations.","wp-mail-smtp"),text_usage_tracking_label:(0,l.__)("Help make WP Mail SMTP better for everyone","wp-mail-smtp"),text_usage_tracking_description:(0,l.__)("Yes, count me in","wp-mail-smtp"),text_usage_tracking_tooltip:(0,l.__)("By allowing us to track usage data we can better help you because we know with which WordPress configurations, themes and plugins we should test.","wp-mail-smtp"),is_pro:this.$wpms.is_pro,usage_tracking:!1}},computed:{...(0,_t.vn)("$_wizard",["current_user_email"])},methods:{handleSubmit(){this.$store.dispatch("$_app/start_loading");let t=[];if(this.current_user_email&&t.push(this.$store.dispatch("$_settings/subscribeToNewsletter",this.current_user_email)),this.usage_tracking){const e={value:{general:{"usage-tracking-enabled":!0}}};t.push(this.$store.dispatch("$_settings/updateSettings",e))}Promise.all(t).then((()=>{this.nextStep()})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},nextStep(){this.$next_step()},previousStep(){this.$previous_step()}}},qt=Kt,Jt=(0,d.Z)(qt,Mt,Et,!1,null,null,null),Xt=Jt.exports,jt=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-license"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-license-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),t.is_pro?t._e():e("div",{staticClass:"upgrade-content"},[e("p",{staticClass:"medium-bold",domProps:{innerHTML:t._s(t.text_upgrade_paragraph)}}),e("div",{staticClass:"checked-item-list"},[e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_email_log))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_complete_email_report))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_instant_email_alert))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_summary_report_email))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_manage_notifications))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_network_settings))])],1)])]),t.verified?e("div",{staticClass:"verified-license"},[e("p",{domProps:{innerHTML:t._s(t.text_verified_license)}})]):e("div",{staticClass:"license-form",class:{"license-form-error":t.license_error}},[e("p",{domProps:{innerHTML:t._s(t.text_license_form)}}),e("div",{staticClass:"license-control"},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.license,expression:"license"}],attrs:{name:"license",type:"password",placeholder:t.text_license_input_placeholder,"aria-label":t.text_aria_label_for_license_input},domProps:{value:t.license},on:{input:function(e){e.target.composing||(t.license=e.target.value)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-success wp-mail-smtp-button-small",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.handleLicenseSubmit.apply(null,arguments)}}},[t._v(" "+t._s(t.text_license_button)+" ")])]),t.license_error?e("p",{staticClass:"error-message",domProps:{textContent:t._s(t.text_license_error)}}):t._e()])]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[t.verified?e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step"},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)]):e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"skip_step"},domProps:{textContent:t._s(t.text_skip)},on:{click:function(e){return e.preventDefault(),t.nextStep.apply(null,arguments)}}})])])])},$t=[],te=s(8394),ee=s.n(te),se={name:"WizardStepLicense",components:{ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Enter your WP Mail SMTP License Key","wp-mail-smtp"),text_header_subtitle:this.$wpms.is_pro?"":(0,l.gB)((0,l.__)("You're currently using %1$sWP Mail SMTP Lite%2$s - no license needed. Enjoy!","wp-mail-smtp"),'',"")+" 🙂",text_save:(0,l.__)("Continue","wp-mail-smtp"),text_skip:(0,l.__)("Skip this Step","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_upgrade_paragraph:(0,l.gB)((0,l.__)("To unlock selected features, %1$sUpgrade to Pro%2$s and enter your license key below.","wp-mail-smtp"),'',""),text_network_settings:(0,l.__)("Multisite Network Settings","wp-mail-smtp"),text_manage_notifications:(0,l.__)("Manage Default Notifications","wp-mail-smtp"),text_email_log:(0,l.__)("Detailed Email Logs","wp-mail-smtp"),text_summary_report_email:(0,l.__)("Enhanced Weekly Email Summary","wp-mail-smtp"),text_license_form_lite:(0,l.gB)((0,l.__)("Already purchased? Enter your license key below to connect with %1$sWP Mail SMTP Pro%2$s!","wp-mail-smtp"),"",""),text_license_form_pro:(0,l.__)("Enter your license key below to unlock plugin updates!","wp-mail-smtp"),text_license_button:this.$wpms.is_pro?(0,l.__)("Verify License Key","wp-mail-smtp"):(0,l.__)("Connect","wp-mail-smtp"),text_license_error:(0,l.__)("The License Key format is incorrect. Please enter a valid key and try again.","wp-mail-smtp"),text_verified_license:(0,l.__)("Your license was successfully verified! You are ready for the next step.","wp-mail-smtp"),text_email_log_desc:(0,l.__)("Keep records of every email that's sent out from your website.","wp-mail-smtp"),text_manage_notifications_desc:(0,l.__)("Control which email notifications your WordPress site sends.","wp-mail-smtp"),text_network_settings_desc:(0,l.__)("Save time with powerful WordPress Multisite controls.","wp-mail-smtp"),text_instant_email_alert:(0,l.__)("Instant Email Alerts","wp-mail-smtp"),text_instant_email_alert_desc:(0,l.__)("Get notifications via email, SMS, Slack, or webhook when emails fail to send.","wp-mail-smtp"),text_complete_email_report:(0,l.__)("Complete Email Reports","wp-mail-smtp"),text_complete_email_report_desc:(0,l.__)("See the delivery status, track opens and clicks, and create deliverability graphs.","wp-mail-smtp"),text_pro_badge:(0,l.__)("Pro badge","wp-mail-smtp"),text_aria_label_for_license_input:(0,l.__)("License key input","wp-mail-smtp"),text_license_input_placeholder:(0,l.__)("Paste your license key here","wp-mail-smtp"),pro_badge:s(330),is_pro:this.$wpms.is_pro,verified:!1,license:"",license_error:!1}},computed:{text_license_form:function(){return this.is_pro?this.text_license_form_pro:this.text_license_form_lite},...(0,at.Se)({selectedProFeatures:"$_settings/plugin_features"})},methods:{handleLicenseSubmit(){return this.license_error=!1,!(!this.is_pro&&0===this.license.length)&&(this.is_pro&&this.license.length<16?(this.license_error=!0,!1):(this.$store.dispatch("$_app/start_loading"),void(this.is_pro?this.$store.dispatch("$_settings/verifyLicense",this.license).then((t=>{t.success?(this.verified=!0,this.$swal({title:(0,l.__)("Successful Verification!","wp-mail-smtp"),html:t.data.message,width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})):this.$swal({title:(0,l.__)("Verification Error!","wp-mail-smtp"),html:t.data,width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")})):this.$store.dispatch("$_settings/upgradePlugin",this.license).then((t=>{if(t.success&&ee()(t,"data.redirect_url"))return window.location=t.data.redirect_url;this.$store.dispatch("$_app/stop_loading"),this.$swal({title:t.success?(0,l.__)("Successful Upgrade!","wp-mail-smtp"):(0,l.__)("Upgrade Failed!","wp-mail-smtp"),html:t.data,width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})})))))},handleSubmit(){this.nextStep()},nextStep(){this.$next_step()},previousStep(){let t=this.is_pro&&!this.$store.getters["$_settings/email_log_enabled"]?1:0;this.$previous_step(t)},prepareLongCheckbox(t,e){return``},prepareProFeaturesHtml(){let t="
      ";return this.selectedProFeatures.includes("email_log")&&(t+=this.prepareLongCheckbox(this.text_email_log,this.text_email_log_desc)),this.selectedProFeatures.includes("complete_email_report")&&(t+=this.prepareLongCheckbox(this.text_complete_email_report,this.text_complete_email_report_desc)),this.selectedProFeatures.includes("instant_email_alert")&&(t+=this.prepareLongCheckbox(this.text_instant_email_alert,this.text_instant_email_alert_desc)),this.selectedProFeatures.includes("manage_notifications")&&(t+=this.prepareLongCheckbox(this.text_manage_notifications,this.text_manage_notifications_desc)),this.selectedProFeatures.includes("network_settings")&&(t+=this.prepareLongCheckbox(this.text_network_settings,this.text_network_settings_desc)),t+"
      "}},mounted(){if(!this.is_pro&&this.selectedProFeatures.length>0){const t=this.prepareProFeaturesHtml();this.$swal({title:(0,l.__)("Would you like to purchase the following features now?","wp-mail-smtp"),html:`

      ${(0,l.__)("These features are available as part of WP Mail SMTP Pro plan.","wp-mail-smtp")}

      \n\t\t\t\t\t\t\t${t}\n\t\t\t\t\t\t\t

      ${(0,l.gB)((0,l.__)("%1$sBonus:%2$s You can upgrade to the Pro plan and %3$ssave %5$s today%4$s, automatically applied at checkout.","wp-mail-smtp"),"","",'',"","$50")}

      \n\t\t\t\t\t\t`,width:850,showCloseButton:!0,allowOutsideClick:!1,allowEscapeKey:!1,allowEnterKey:!1,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-plugin-upgrade"},confirmButtonText:(0,l.__)("Purchase Now","wp-mail-smtp"),cancelButtonText:(0,l.__)("I'll do it later","wp-mail-smtp"),showCancelButton:!0,reverseButtons:!0}).then((t=>{if(t.value){const t=window.open(this.$wpms.upgrade_link,"_blank");t.focus()}}))}this.verified=this.$wpms.license_exists},created(){const t=new URLSearchParams(window.location.search);this.$wpms.license_exists&&!t.has("upgrade-redirect")&&this.nextStep()}},ie=se,ae=(0,d.Z)(ie,jt,$t,!1,null,null,null),ne=ae.exports,oe=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-check-configuration"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-check-configuration-header"},[e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"check-configuration-loading-image-container"},[e("img",{attrs:{src:s(7764),alt:t.text_image_alt}})])])])},re=[],le={name:"WizardStepCheckConfiguration",components:{ContentHeader:h},data(){return{text_header_title:(0,l.__)("Checking Mailer Configuration","wp-mail-smtp"),text_header_subtitle:(0,l.__)("We're running some tests in the background to make sure everything is set up properly.","wp-mail-smtp"),text_image_alt:(0,l.__)("Checking mailer configuration image","wp-mail-smtp")}},mounted(){this.$store.dispatch("$_wizard/checkMailerConfiguration").then((t=>{t.success?this.$router.push({name:"check_configuration_step_success"}):this.$router.push({name:"check_configuration_step_failure"})}))}},pe=le,me=(0,d.Z)(pe,oe,re,!1,null,null,null),_e=me.exports,ce=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-configuration-success"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-configuration-success-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"plugin-item-container"},[e("p",{staticClass:"medium-bold",domProps:{textContent:t._s(t.text_free_plugins_header)}}),e("div",t._l(t.plugins,(function(t,s){return e("plugin-item",{key:s,attrs:{name:t.name,slug:t.slug,is_installed:t.is_installed,is_activated:t.is_activated}})})),1)]),t.is_pro?t._e():e("div",{staticClass:"upgrade-banner-container"},[e("div",{staticClass:"upgrade-banner"},[e("h2",{domProps:{textContent:t._s(t.text_upgrade_title)}}),e("p",{staticClass:"subtitle",domProps:{textContent:t._s(t.text_upgrade_subtitle)}}),e("div",{staticClass:"checked-item-list"},[e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_email_log))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_manage_notifications))])],1),e("span",{staticClass:"checked-item"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(7579),width:"16",height:"16"}}),t._v(" "),e("span",[t._v(t._s(t.text_network_settings))])],1)]),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-success",attrs:{type:"button"},domProps:{textContent:t._s(t.text_upgrade_button)},on:{click:t.openUpgradePage}})]),e("p",{staticClass:"bonus",domProps:{innerHTML:t._s(t.text_bonus)}})])]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"send_test_email"},domProps:{textContent:t._s(t.text_test_email)},on:{click:function(e){return e.preventDefault(),t.handleTestEmail.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"send_feedback"},domProps:{textContent:t._s(t.text_send_feedback)},on:{click:function(e){return e.preventDefault(),t.handleFeedback.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"button",name:"finish_setup"},domProps:{textContent:t._s(t.text_finish)},on:{click:function(e){return e.preventDefault(),t.handleFinish.apply(null,arguments)}}})])])},de=[],ue=function(){var t=this,e=t._self._c;return e("div",{class:`wp-mail-smtp-plugin-item wp-mail-smtp-plugin-${t.slug}`},[e("span",{staticClass:"wp-mail-smtp-plugin-item-title-container"},[t.logo.length?e("img",{staticClass:"wp-mail-smtp-logo-icon",attrs:{src:t.logo2x,srcset:t.logo_srcset,alt:t.name}}):t._e(),e("span",{domProps:{textContent:t._s(t.name)}})]),e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",disabled:t.is_activated||t.is_installed},on:{click:function(e){return e.preventDefault(),t.handleClick.apply(null,arguments)}}},[t.loading?e("spin-loader",{attrs:{color:"white"}}):e("span",[t._v(" "+t._s(t.text_button_label)+" ")])],1)])},he=[],ge=function(){var t=this,e=t._self._c;return e("img",{class:`wp-mail-smtp-loader wp-mail-smtp-loader-${t.size}`,attrs:{src:t.image,alt:t.text_loading}})},we=[],fe={name:"SpinLoader",props:{color:{type:String,default:""},size:{type:String,default:"sm"}},data(){return{image:s(7630)(`./loading${this.color.length?"-"+this.color:""}.svg`),text_loading:(0,l.__)("Loading","wp-mail-smtp")}}},Ae=fe,be=(0,d.Z)(Ae,ge,we,!1,null,null,null),ve=be.exports,xe={name:"PluginItem",components:{SpinLoader:ve},props:{slug:String,name:String,is_installed:Boolean,is_activated:Boolean},data(){return{loading:!1,logo:s(8517)(`./${this.slug}.png`),logo2x:s(833)(`./${this.slug}@2x.png`)}},computed:{text_button_label:function(){let t=(0,l.__)("Install","wp-mail-smtp");return this.is_installed&&!this.is_activated&&(t=(0,l.__)("Installed","wp-mail-smtp")),this.is_activated&&(t=(0,l.__)("Activated","wp-mail-smtp")),t},logo_srcset:function(){return`${this.logo}, ${this.logo2x} 2x`}},methods:{handleClick(){this.loading||(this.loading=!0,this.$store.dispatch("$_plugins/installPlugin",this.slug).then((t=>{t.success&&this.$wpms_success_toast({title:`Plugin: ${this.name} installed!`}),this.loading=!1})))}}},ke=xe,ye=(0,d.Z)(ke,ue,he,!1,null,"2e2edfa6",null),Ce=ye.exports,Se={name:"WizardStepConfigurationSuccess",components:{ContentHeader:h,TheWizardStepCounter:X,PluginItem:Ce},data(){return{text_header_title:(0,l.__)("Congrats, you’ve successfully set up WP Mail SMTP!","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Here’s what to do next:","wp-mail-smtp"),text_free_plugins_header:(0,l.__)("Check out our other free WordPress plugins:","wp-mail-smtp"),text_upgrade_title:(0,l.__)("Upgrade to Unlock Powerful SMTP Features","wp-mail-smtp"),text_upgrade_subtitle:(0,l.__)("Upgrade to WP Mail SMTP Pro to unlock more awesome features and experience why WP Mail SMTP is used by over 3,000,000 websites.","wp-mail-smtp"),text_network_settings:(0,l.__)("Multisite Network Settings","wp-mail-smtp"),text_manage_notifications:(0,l.__)("Manage Default Notifications","wp-mail-smtp"),text_email_log:(0,l.__)("Detailed Email Logs","wp-mail-smtp"),text_upgrade_button:(0,l.__)("Upgrade to Pro Today","wp-mail-smtp"),text_test_email:(0,l.__)("Send a Test Email","wp-mail-smtp"),text_send_feedback:(0,l.__)("Send us Feedback","wp-mail-smtp"),text_finish:(0,l.__)("Finish Setup","wp-mail-smtp"),text_bonus:(0,l.gB)((0,l.__)("%1$sBonus:%2$s You can upgrade to the Pro plan and %3$ssave %5$s today%4$s, automatically applied at checkout.","wp-mail-smtp"),"","",'',"","$50"),star_image_html:`${(0,l.__)(`,is_pro:this.$wpms.is_pro}},computed:{...(0,at.Se)({plugins:"$_plugins/partner_plugins"})},methods:{handleTestEmail(){return window.location=this.$wpms.email_test_tab_url},goodFeedback(){this.$swal({title:(0,l.__)("Thanks for the feedback!","wp-mail-smtp"),html:`${(0,l.gB)((0,l.__)("Help us spread the word %1$sby giving WP Mail SMTP a 5-star rating %3$s(%4$s) on WordPress.org%2$s. Thanks for your support and we look forward to bringing you more awesome features.","wp-mail-smtp"),'',"","
      ",this.star_image_html+""+this.star_image_html+this.star_image_html+this.star_image_html+this.star_image_html)}`,width:650,showCloseButton:!0,allowEnterKey:!1,confirmButtonText:(0,l.__)("Rate on WordPress.org","wp-mail-smtp"),customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-feedback-good"}}).then((t=>{if(t.value){const t=window.open("https://wordpress.org/support/plugin/wp-mail-smtp/reviews/#new-post","_blank");t.focus()}}))},badFeedback(){this.$swal({title:(0,l.__)("What could we do to improve?","wp-mail-smtp"),html:`${(0,l.__)("We're sorry things didn't go smoothly for you, and want to keep improving. Please let us know any specific parts of this process that you think could be better. We really appreciate any details you're willing to share!","wp-mail-smtp")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t`,width:650,showCloseButton:!0,allowEnterKey:!1,allowOutsideClick:!1,allowEscapeKey:!1,confirmButtonText:(0,l.__)("Submit Feedback","wp-mail-smtp"),customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-feedback-bad"},preConfirm:()=>[document.getElementById("feedback").value,document.getElementById("permission").checked]}).then((t=>{if(t.value){const e=t.value[0],s=t.value[1];this.$store.dispatch("$_wizard/sendFeedback",{feedback:e,permission:s})}}))},handleFeedback(){this.$swal({title:(0,l.__)("How was your WP Mail SMTP setup experience?","wp-mail-smtp"),text:(0,l.__)("Our goal is to make your SMTP setup as simple and straightforward as possible. We'd love to know how this process went for you!","wp-mail-smtp"),width:650,showCloseButton:!0,allowEnterKey:!1,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-feedback"},showCancelButton:!0}).then((t=>{t.value?this.goodFeedback():void 0!==t.dismiss&&"cancel"===t.dismiss&&this.badFeedback()}))},handleFinish(){return window.location=this.$wpms.exit_url},openUpgradePage:function(){const t=window.open(this.$wpms.upgrade_link,"_blank");t.focus()}}},Pe=Se,Me=(0,d.Z)(Pe,ce,de,!1,null,null,null),Ee=Me.exports,Be=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-configuration-failure"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-configuration-failure-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"start-troubleshooting-arrow-container"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(1122),width:"112",height:"112"}})],1)]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"button",name:"start_troubleshooting"},domProps:{textContent:t._s(t.text_start_troubleshooting)},on:{click:function(e){return e.preventDefault(),t.handleTroubleshooting.apply(null,arguments)}}}),e("button",{staticClass:"wp-mail-smtp-button",attrs:{type:"button",name:"finish_setup"},domProps:{textContent:t._s(t.text_finish)},on:{click:function(e){return e.preventDefault(),t.handleFinish.apply(null,arguments)}}})])])},Te=[],Ie={name:"WizardStepConfigurationFailure",components:{ContentHeader:h,TheWizardStepCounter:X},data(){return{text_header_title:(0,l.__)("Whoops, looks like things aren’t configured properly.","wp-mail-smtp"),text_header_subtitle:(0,l.__)("We just tried to send a test email, but something prevented that from working. To see more details about the issue we detected, as well as our suggestions to fix it, please start troubleshooting.","wp-mail-smtp"),text_start_troubleshooting:(0,l.__)("Start Troubleshooting","wp-mail-smtp"),text_send_feedback:(0,l.__)("Send us Feedback","wp-mail-smtp"),text_finish:(0,l.__)("Finish Setup","wp-mail-smtp")}},methods:{handleTroubleshooting(){return window.location=`${this.$wpms.email_test_tab_url}&auto-start=1`},handleFinish(){return window.location=this.$wpms.exit_url}}},Fe=Ie,De=(0,d.Z)(Fe,Be,Te,!1,null,null,null),ze=De.exports,Ze=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-smtp"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"host",constant:"WPMS_SMTP_HOST",label:t.text_host_label,is_error:t.field_errors.includes("host")},on:{is_error_update:function(e){return t.removeFieldError("host")}},model:{value:t.host,callback:function(e){t.host=e},expression:"host"}}),e("settings-input-radio",{attrs:{name:"encryption",constant:"WPMS_SSL",label:t.text_encryption_label,options:t.encryptionOptions,description:t.text_encryption_description},on:{input:t.encryptionChanged},model:{value:t.encryption,callback:function(e){t.encryption=e},expression:"encryption"}}),e("settings-input-number",{attrs:{name:"port",constant:"WPMS_SMTP_PORT",label:t.text_port_label,is_error:t.field_errors.includes("port")},on:{is_error_update:function(e){return t.removeFieldError("port")}},model:{value:t.port,callback:function(e){t.port=e},expression:"port"}}),e("settings-input-switch",{directives:[{name:"show",rawName:"v-show",value:t.show_autotls,expression:"show_autotls"}],attrs:{name:"autotls",constant:"WPMS_SMTP_AUTOTLS",title:t.text_autotls_title,label:t.text_autotls_label,description:t.text_autotls_description},model:{value:t.autotls,callback:function(e){t.autotls=e},expression:"autotls"}}),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-switch",{attrs:{name:"auth",constant:"WPMS_SMTP_AUTH",title:t.text_auth_title,label:t.text_auth_label},model:{value:t.auth,callback:function(e){t.auth=e},expression:"auth"}}),e("settings-input-text",{directives:[{name:"show",rawName:"v-show",value:t.auth,expression:"auth"}],attrs:{name:"user",constant:"WPMS_SMTP_USER",label:t.text_user_label,is_error:t.field_errors.includes("user")},on:{is_error_update:function(e){return t.removeFieldError("user")}},model:{value:t.user,callback:function(e){t.user=e},expression:"user"}}),e("settings-input-text",{directives:[{name:"show",rawName:"v-show",value:t.auth,expression:"auth"}],attrs:{name:"pass",constant:"WPMS_SMTP_PASS",type:"password",label:t.text_pass_label,is_error:t.field_errors.includes("pass")},on:{is_error_update:function(e){return t.removeFieldError("pass")}},model:{value:t.pass,callback:function(e){t.pass=e},expression:"pass"}}),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Oe=[],Le=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-radio"},[t.label?e("span",{staticClass:"settings-input-label-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))])]):t._e(),e("div",{staticClass:"settings-input-radio-container"},t._l(t.options,(function(s){return e("label",{key:s.value,class:t.labelClass(s.value),attrs:{for:"wp-mail-smtp-settings-radio-"+t.name+"["+s.value+"]"}},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.selected,expression:"selected"}],attrs:{id:"wp-mail-smtp-settings-radio-"+t.name+"["+s.value+"]",type:"radio",name:t.name,autocomplete:"off",readonly:t.disabled,disabled:t.is_constant_set},domProps:{value:s.value,checked:t.isChecked(s.value),checked:t._q(t.selected,s.value)},on:{change:[function(e){t.selected=s.value},t.updateSetting]}}),e("span",{class:t.titleClass(s.value)}),e("span",{staticClass:"input-label"},[t._v(t._s(s.label))])])})),0),t.description?e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.description)}}):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()])},We=[],Re={name:"SettingsInputRadio",props:{options:Array,label:String,name:String,value:String,description:String,constant:String,disabled:Boolean},data(){return{has_error:!1}},computed:{selected:{get(){return this.value},set(t){this.$emit("input",t)}},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}},methods:{updateSetting:function(){if(this.disabled)return!1},titleClass(t){let e="wp-mail-smtp-styled-radio";return this.isChecked(t)&&(e+=" wp-mail-smtp-styled-radio-checked"),this.is_constant_set&&(e+=" wp-mail-smtp-styled-radio-disabled"),e},labelClass(t){let e="";return this.isChecked(t)&&(e+=" wp-mail-smtp-styled-radio-label-checked"),this.is_constant_set&&(e+=" wp-mail-smtp-styled-radio-label-disabled"),e},isChecked(t){return t===this.selected}}},Qe=Re,Ue=(0,d.Z)(Qe,Le,We,!1,null,null,null),Ne=Ue.exports,Ge=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-number",class:{"settings-input-number-error":t.field_error}},[e("label",{staticClass:"settings-input-label-container",attrs:{for:t.id}},[t.label?e("span",{staticClass:"label"},[t._v(t._s(t.label))]):t._e(),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1),e("input",{directives:[{name:"model",rawName:"v-model",value:t.currentValue,expression:"currentValue"}],attrs:{id:t.id,type:"number",name:t.name,placeholder:t.placeholder,min:t.min,max:t.max,step:t.step,readonly:t.disabled,disabled:t.is_constant_set},domProps:{value:t.currentValue},on:{change:t.inputUpdate,input:function(e){e.target.composing||(t.currentValue=e.target.value)}}}),t.has_error?e("p",{staticClass:"error"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(4186),width:"16"}}),e("span",{domProps:{innerHTML:t._s(t.has_error)}})],1):t._e(),t.description?e("p",{staticClass:"description"},[t._v(" "+t._s(t.description)+" ")]):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()])},He=[],Ye={name:"SettingsInputNumber",components:{SettingsInfoTooltip:Ot},props:{name:String,value:[Number,String],label:String,description:String,constant:String,placeholder:String,type:{type:String,default:"text"},tooltip:String,default_value:String,min:Number,max:Number,disabled:Boolean,step:{type:Number,default:1},round:{type:Boolean,default:!1},is_error:Boolean},data(){return{has_error:!1,id:"input-"+this.name,text_error_value:(0,l.gB)((0,l.__)("Please enter a value between %1$s and %2$s","wp-mail-smtp"),""+this.min+"",""+this.max+""),text_error_round:(0,l.__)("Value has to be a round number","wp-mail-smtp")}},computed:{currentValue:{get(){return this.value},set(t){this.$emit("is_error_update",!1),this.$emit("input",parseInt(t,10))}},field_error:{get(){return this.is_error},set(t){this.$emit("is_error_update",t)}},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}},methods:{inputUpdate:function(t){if(this.disabled)return!1;this.has_error=!1;const e=parseFloat(t.target.value);return this.round&&e%1!==0?(this.has_error=this.text_error_round,!1):e>this.max||e-1:t.currentValue},on:{change:[function(e){var s=t.currentValue,i=e.target,a=!!i.checked;if(Array.isArray(s)){var n=null,o=t._i(s,n);i.checked?o<0&&(t.currentValue=s.concat([n])):o>-1&&(t.currentValue=s.slice(0,o).concat(s.slice(o+1)))}else t.currentValue=a},t.inputUpdate],click:t.inputClicked}}),e("span",{class:{"toggle-switch":!0,"toggle-switch-with-label":t.label}}),t.label?e("span",{staticClass:"label-description",domProps:{innerHTML:t._s(t.label)}}):t._e()])])])},Xe=[],je={name:"SettingsInputSwitch",components:{SettingsInfoTooltip:Ot},props:{name:String,value:Boolean,title:String,label:String,description:String,constant:String,tooltip:String,classname:String,disabled:Boolean,show_pro:Boolean},data(){return{has_error:!1,id:"input-"+this.name}},computed:{currentValue:{get(){return this.value},set(t){this.$emit("input",!!t)}},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}},methods:{inputUpdate:function(){if(this.disabled)return!1},inputClicked(t){this.$emit("clicked",t)}}},$e=je,ts=(0,d.Z)($e,Je,Xe,!1,null,null,null),es=ts.exports,ss={name:"WizardStepConfigureMailerSmtp",components:{SettingsInputText:Qt,SettingsInputRadio:Ne,SettingsInputNumber:qe,SettingsInputSwitch:es},data(){return{mailer:"smtp",text_host_label:(0,l.__)("SMTP Host","wp-mail-smtp"),text_encryption_label:(0,l.__)("Encryption","wp-mail-smtp"),text_port_label:(0,l.__)("SMTP Port","wp-mail-smtp"),text_autotls_title:(0,l.__)("Auto TLS","wp-mail-smtp"),text_autotls_label:(0,l.__)("Enable Auto TLS","wp-mail-smtp"),text_autotls_description:(0,l.__)("By default, TLS encryption is automatically used if the server supports it (recommended). In some cases, due to server misconfigurations, this can cause issues and may need to be disabled.","wp-mail-smtp"),text_auth_title:(0,l.__)("Authentication","wp-mail-smtp"),text_auth_label:(0,l.__)("Enable Authentication","wp-mail-smtp"),text_user_label:(0,l.__)("SMTP Username","wp-mail-smtp"),text_pass_label:(0,l.__)("SMTP Password","wp-mail-smtp"),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_encryption_description:(0,l.__)("For most servers TLS is the recommended option. If your SMTP provider offers both SSL and TLS options, we recommend using TLS.","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),description:this.$wpms.mailer_options.smtp.description,encryptionOptions:[{label:(0,l.__)("None","wp-mail-smtp"),value:"none",default_port:25},{label:(0,l.__)("SSL","wp-mail-smtp"),value:"ssl",default_port:465},{label:(0,l.__)("TLS","wp-mail-smtp"),value:"tls",default_port:587}],show_autotls:!0,show_user_and_pass:!0,field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.smtp.host","settings.smtp.auth","settings.smtp.port","settings.smtp.encryption","settings.smtp.user","settings.smtp.pass","settings.smtp.autotls","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},watch:{encryption:function(t){this.show_autotls="tls"!==t}},methods:{getEncryptionDefaultPort(t){return this.encryptionOptions.find((e=>e.value===t)).default_port},encryptionChanged(t){this.port=this.getEncryptionDefaultPort(t)},areRequiredFieldsValid(){return""===this.host&&this.field_errors.push("host"),(""===this.port||isNaN(this.port))&&this.field_errors.push("port"),this.auth&&(""===this.user&&this.field_errors.push("user"),""===this.pass&&this.field_errors.push("pass")),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}},mounted(){"tls"===this.encryption&&(this.show_autotls=!1)}},is=ss,as=(0,d.Z)(is,Ze,Oe,!1,null,null,null),ns=as.exports,os=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-sendlayer"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-small wp-mail-smtp-button-secondary",attrs:{href:t.get_started_button_url,target:"_blank",rel:"noopener noreferrer"}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_get_started_button)),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"23"}})],1)]),e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SENDLAYER_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},rs=[],ls={name:"WizardStepConfigureMailerSendlayer",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"sendlayer",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for SendLayer.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_get_started_button:(0,l.__)("Get Started with SendLayer","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up SendLayer","wp-mail-smtp"),description:this.$wpms.mailer_options.sendlayer.description.substr(0,this.$wpms.mailer_options.sendlayer.description.lastIndexOf("

      ")),get_started_button_url:this.$getUTMUrl("https://sendlayer.com/wp-mail-smtp/",{source:"wpmailsmtpplugin",medium:"WordPress",content:"Setup Wizard - Mailer Button"}),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-sendlayer-mailer-in-wp-mail-smtp/",{content:"Read how to set up SendLayer"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.sendlayer.api_key","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},ps=ls,ms=(0,d.Z)(ps,os,rs,!1,null,null,null),_s=ms.exports,cs=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-smtpcom"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-small wp-mail-smtp-button-secondary",attrs:{href:"https://wpmailsmtp.com/go/smtp/",target:"_blank",rel:"noopener noreferrer"}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_get_started_button)),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"23"}})],1)]),e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))]),e("span",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.disclosure_tooltip_data,expression:"disclosure_tooltip_data"}],staticClass:"mailer-offer-link-disclosure"},[t._v(t._s(t.text_disclosure))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SMTPCOM_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"channel",constant:"WPMS_SMTPCOM_CHANNEL",label:t.text_channel_label,description:t.text_channel_description,is_error:t.field_errors.includes("channel")},on:{is_error_update:function(e){return t.removeFieldError("channel")}},model:{value:t.channel,callback:function(e){t.channel=e},expression:"channel"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},ds=[],us={name:"WizardStepConfigureMailerSmtpCom",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"smtpcom",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_channel_label:(0,l.__)("Sender Name","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for SMTP.com.","wp-mail-smtp"),'',""),text_channel_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get a Sender Name for SMTP.com.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_get_started_button:(0,l.__)("Get Started with SMTP.com","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up SMTP.com","wp-mail-smtp"),text_disclosure:(0,l.__)("Transparency and Disclosure","wp-mail-smtp"),disclosure_tooltip_data:{content:(0,l.__)("We believe in full transparency. The SMTP.com links above are tracking links as part of our partnership with SMTP (j2 Global). We can recommend just about any SMTP service, but we only recommend products that we believe will add value to our users.","wp-mail-smtp"),autoHide:!0,trigger:"hover"},description:this.$wpms.mailer_options.smtpcom.description.substr(0,this.$wpms.mailer_options.smtpcom.description.lastIndexOf("

      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-smtp-com-mailer-in-wp-mail-smtp",{content:"Read how to set up SMTP.com"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.smtpcom.api_key","settings.smtpcom.channel","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.channel&&this.field_errors.push("channel"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},hs=us,gs=(0,d.Z)(hs,cs,ds,!1,null,null,null),ws=gs.exports,fs=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-sendinblue"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-small wp-mail-smtp-button-secondary",attrs:{href:"https://wpmailsmtp.com/go/sendinblue/",target:"_blank",rel:"noopener noreferrer"}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_get_started_button)),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"23"}})],1)]),e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))]),e("span",{directives:[{name:"tooltip",rawName:"v-tooltip",value:t.disclosure_tooltip_data,expression:"disclosure_tooltip_data"}],staticClass:"mailer-offer-link-disclosure"},[t._v(t._s(t.text_disclosure))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SENDINBLUE_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"domain",constant:"WPMS_SENDINBLUE_DOMAIN",label:t.text_domain_label,description:t.text_domain_description},model:{value:t.domain,callback:function(e){t.domain=e},expression:"domain"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},As=[],bs={name:"WizardStepConfigureMailerSendinblue",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"sendinblue",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_domain_label:(0,l.__)("Sending Domain","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for Brevo.","wp-mail-smtp"),'',""),text_domain_description:(0,l.gB)((0,l.__)("Please input the sending domain/subdomain you configured in your Brevo dashboard. More information can be found in our %1$sBrevo documentation%2$s","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_get_started_button:(0,l.__)("Get Started with Brevo","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Brevo","wp-mail-smtp"),text_disclosure:(0,l.__)("Transparency and Disclosure","wp-mail-smtp"),disclosure_tooltip_data:{content:(0,l.__)("We believe in full transparency. The Brevo links above are tracking links as part of our partnership with Brevo. We can recommend just about any SMTP service, but we only recommend products that we believe will add value to our users.","wp-mail-smtp"),autoHide:!0,trigger:"hover"},description:this.$wpms.mailer_options.sendinblue.description.substr(0,this.$wpms.mailer_options.sendinblue.description.lastIndexOf("

      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-sendinblue-mailer-in-wp-mail-smtp",{content:"Read how to set up Brevo"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.sendinblue.api_key","settings.sendinblue.domain","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},vs=bs,xs=(0,d.Z)(vs,fs,As,!1,null,null,null),ks=xs.exports,ys=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-mailgun"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_MAILGUN_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"domain",constant:"WPMS_MAILGUN_DOMAIN",label:t.text_domain_label,description:t.text_domain_description,is_error:t.field_errors.includes("domain")},on:{is_error_update:function(e){return t.removeFieldError("domain")}},model:{value:t.domain,callback:function(e){t.domain=e},expression:"domain"}}),e("settings-input-radio",{attrs:{name:"region",constant:"WPMS_MAILGUN_REGION",label:t.text_region_label,options:t.regionOptions,description:t.text_region_description},model:{value:t.region,callback:function(e){t.region=e},expression:"region"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Cs=[],Ss={name:"WizardStepConfigureMailerMailgun",components:{SettingsInputText:Qt,SettingsInputRadio:Ne,SettingsInputSwitch:es},data(){return{mailer:"mailgun",text_api_key_label:(0,l.__)("Mailgun API Key","wp-mail-smtp"),text_domain_label:(0,l.__)("Domain Name","wp-mail-smtp"),text_region_label:(0,l.__)("Region","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)('%1$sFollow this link%2$s to get a Mailgun API Key. Generate a key in the "Mailgun API Keys" section.',"wp-mail-smtp"),'',""),text_domain_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get a Domain Name from Mailgun.","wp-mail-smtp"),'',""),text_region_description:(0,l.gB)((0,l.__)("Define which endpoint you want to use for sending messages. If you are operating under EU laws, you may be required to use EU region. %1$sMore information%2$s on Mailgun.com.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Mailgun","wp-mail-smtp"),description:this.$wpms.mailer_options.mailgun.description.substr(0,this.$wpms.mailer_options.mailgun.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-mailgun-mailer-in-wp-mail-smtp/",{content:"Read how to set up Mailgun"}),regionOptions:[{label:(0,l.__)("US","wp-mail-smtp"),value:"US"},{label:(0,l.__)("EU","wp-mail-smtp"),value:"EU"}],field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.mailgun.api_key","settings.mailgun.domain","settings.mailgun.region","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.domain&&this.field_errors.push("domain"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},Ps=Ss,Ms=(0,d.Z)(Ps,ys,Cs,!1,null,null,null),Es=Ms.exports,Bs=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-sendgrid"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SENDGRID_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-text",{attrs:{name:"domain",constant:"WPMS_SENDGRID_DOMAIN",label:t.text_domain_label,description:t.text_domain_description},model:{value:t.domain,callback:function(e){t.domain=e},expression:"domain"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Ts=[],Is={name:"WizardStepConfigureMailerSendgrid",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"sendgrid",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_domain_label:(0,l.__)("Sending Domain","wp-mail-smtp"),text_api_key_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for Sendgrid.","wp-mail-smtp"),'',"")+"
      "+(0,l.gB)((0,l.__)("To send emails you will need only a %1$sMail Send%2$s access level for this API key.","wp-mail-smtp"),"",""),text_domain_description:(0,l.gB)((0,l.__)("Please input the sending domain/subdomain you configured in your SendGrid dashboard. More information can be found in our %1$sSendGrid documentation%2$s","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up SendGrid","wp-mail-smtp"),description:this.$wpms.mailer_options.sendgrid.description.substr(0,this.$wpms.mailer_options.sendgrid.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-sendgrid-mailer-in-wp-mail-smtp/",{content:"Read how to set up Sendgrid"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.sendgrid.api_key","settings.sendgrid.domain","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},Fs=Is,Ds=(0,d.Z)(Fs,Bs,Ts,!1,null,null,null),zs=Ds.exports,Zs=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-sparkpost"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"api_key",type:"password",constant:"WPMS_SPARKPOST_API_KEY",label:t.text_api_key_label,description:t.text_api_key_description,is_error:t.field_errors.includes("api_key")},on:{is_error_update:function(e){return t.removeFieldError("api_key")}},model:{value:t.api_key,callback:function(e){t.api_key=e},expression:"api_key"}}),e("settings-input-radio",{attrs:{name:"region",constant:"WPMS_SPARKPOST_REGION",label:t.text_region_label,options:t.regionOptions,description:t.text_region_description},model:{value:t.region,callback:function(e){t.region=e},expression:"region"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Os=[],Ls={name:"WizardStepConfigureMailerSparkPost",components:{SettingsInputText:Qt,SettingsInputRadio:Ne,SettingsInputSwitch:es},data(){return{mailer:"sparkpost",text_api_key_label:(0,l.__)("API Key","wp-mail-smtp"),text_region_label:(0,l.__)("Region","wp-mail-smtp"),text_region_description:(0,l.gB)((0,l.__)("Select your SparkPost account region. %1$sMore information%2$s on SparkPost.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up SparkPost","wp-mail-smtp"),description:this.$wpms.mailer_options.sparkpost.description.substr(0,this.$wpms.mailer_options.sparkpost.description.lastIndexOf("

      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-sparkpost-mailer-in-wp-mail-smtp/",{content:"Read how to set up SparkPost"}),regionOptions:[{label:(0,l.__)("US","wp-mail-smtp"),value:"US"},{label:(0,l.__)("EU","wp-mail-smtp"),value:"EU"}],field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.sparkpost.api_key","settings.sparkpost.region","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"]),text_api_key_description:function(){let t="EU"===this.region?"eu.":"";return(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get an API Key for SparkPost.","wp-mail-smtp"),'',"")}},methods:{areRequiredFieldsValid(){return""===this.api_key&&this.field_errors.push("api_key"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},Ws=Ls,Rs=(0,d.Z)(Ws,Zs,Os,!1,null,null,null),Qs=Rs.exports,Us=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-postmark"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link wp-mail-smtp-link-docs",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"server_api_token",type:"password",constant:"WPMS_POSTMARK_SERVER_API_TOKEN",label:t.text_server_api_token_label,description:t.text_server_api_token_description,is_error:t.field_errors.includes("server_api_token")},on:{is_error_update:function(e){return t.removeFieldError("server_api_token")}},model:{value:t.server_api_token,callback:function(e){t.server_api_token=e},expression:"server_api_token"}}),e("settings-input-text",{attrs:{name:"message_stream",constant:"WPMS_POSTMARK_MESSAGE_STREAM",label:t.text_message_stream_label,description:t.text_message_stream_description},model:{value:t.message_stream,callback:function(e){t.message_stream=e},expression:"message_stream"}}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)])},Ns=[],Gs={name:"WizardStepConfigureMailerPostmark",components:{SettingsInputText:Qt,SettingsInputSwitch:es},data(){return{mailer:"postmark",text_server_api_token_label:(0,l.__)("Server API Token","wp-mail-smtp"),text_message_stream_label:(0,l.__)("Message Stream ID","wp-mail-smtp"),text_server_api_token_description:(0,l.gB)((0,l.__)("%1$sFollow this link%2$s to get a Server API Token for Postmark.","wp-mail-smtp"),'',""),text_message_stream_description:(0,l.gB)((0,l.__)("Message Stream ID is optional. By default outbound (Default Transactional Stream) will be used. More information can be found in our %1$sPostmark documentation%2$s.","wp-mail-smtp"),'',""),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Postmark","wp-mail-smtp"),description:this.$wpms.mailer_options.postmark.description.substr(0,this.$wpms.mailer_options.postmark.description.lastIndexOf("

      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-postmark-mailer-in-wp-mail-smtp/",{content:"Read how to set up Postmark"}),field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.postmark.server_api_token","settings.postmark.message_stream","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"])},methods:{areRequiredFieldsValid(){return""===this.server_api_token&&this.field_errors.push("server_api_token"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}}},Hs=Gs,Ys=(0,d.Z)(Hs,Us,Ns,!1,null,null,null),Vs=Ys.exports,Ks=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-amazonses"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("b",[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])])]),t.is_ssl?e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"client_id",constant:"WPMS_AMAZONSES_CLIENT_ID",label:t.text_client_id_label,is_error:t.field_errors.includes("client_id")},on:{is_error_update:function(e){return t.removeFieldError("client_id")}},model:{value:t.client_id,callback:function(e){t.client_id=e},expression:"client_id"}}),e("settings-input-text",{attrs:{name:"client_secret",type:"password",constant:"WPMS_AMAZONSES_CLIENT_SECRET",label:t.text_client_secret_label,is_error:t.field_errors.includes("client_secret")},on:{is_error_update:function(e){return t.removeFieldError("client_secret")}},model:{value:t.client_secret,callback:function(e){t.client_secret=e},expression:"client_secret"}}),e("settings-input-select",{attrs:{name:"region",constant:"WPMS_AMAZONSES_REGION",label:t.text_region_label,options:t.regionOptions,description:t.text_region_description,is_error:t.field_errors.includes("region")},on:{is_error_update:function(e){return t.removeFieldError("region")}},model:{value:t.region,callback:function(e){t.region=e},expression:"region"}}),t.is_api_auth_missing?t._e():e("div",[t.display_identities?e("div",[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-amazon-s-e-s-identities",{attrs:{options:t.identities,label:t.text_identities_label,columns:t.identities_columns}})],1):t._e(),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)],1):e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("div",{staticClass:"wp-mail-smtp-notice wp-mail-smtp-notice--error"},[e("p",[e("span",[t._v(t._s(t.text_no_ssl))]),t._v(" "),e("a",{attrs:{href:"https://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/",target:"_blank",rel:"noopener"}},[t._v(t._s(t.text_no_ssl_link_text))]),t._v(".")]),e("p",[t._v(t._s(t.text_no_ssl_diff_mailer))])])])])},qs=[],Js=s(1296),Xs=s.n(Js),js=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-input-select",class:{"settings-input-select-error":t.field_error}},[e("label",{staticClass:"settings-input-label-container",attrs:{for:`wp-mail-smtp-settings-select-${t.name}`}},[e("span",{staticClass:"label"},[t._v(t._s(t.label))])]),e("div",{staticClass:"settings-input-select-container"},[e("select",{directives:[{name:"model",rawName:"v-model",value:t.selected,expression:"selected"}],attrs:{id:`wp-mail-smtp-settings-select-${t.name}`,name:t.name,readonly:t.disabled,disabled:t.is_constant_set},on:{change:function(e){var s=Array.prototype.filter.call(e.target.options,(function(t){return t.selected})).map((function(t){var e="_value"in t?t._value:t.value;return e}));t.selected=e.target.multiple?s:s[0]}}},t._l(t.options,(function(s){return e("option",{key:s.value,domProps:{value:s.value}},[t._v(" "+t._s(s.label)+" ")])})),0)]),t.description?e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.description)}}):t._e(),t.is_constant_set?e("p",{staticClass:"description description--constant",domProps:{innerHTML:t._s(t.text_constant)}}):t._e()])},$s=[],ti={name:"SettingsInputSelect",props:{options:Array,label:String,name:String,value:String,description:String,constant:String,disabled:Boolean,is_error:Boolean},computed:{selected:{get(){return this.value},set(t){this.$emit("is_error_update",!1),this.$emit("input",t)}},field_error:{get(){return this.is_error},set(t){this.$emit("is_error_update",t)}},is_constant_set:function(){return this.$wpms.defined_constants.includes(this.constant)},text_constant:function(){return(0,l.__)("This setting is already configured with the WP Mail SMTP constant. To change it, please edit or remove the "+this.constant+" constant in your wp-config.php file.","wp-mail-smtp")}}},ei=ti,si=(0,d.Z)(ei,js,$s,!1,null,null,null),ii=si.exports,ai=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-amazon-ses-identities"},[e("label",{staticClass:"settings-input-label-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))]),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1),t.options?e("div",[t.options&&0!==t.options.length?e("p",{staticClass:"description"},[t._v(" "+t._s(t.text_identities_table_description)+" ")]):e("p",{staticClass:"description"},[e("strong",[t._v(t._s(t.text_no_registered_identities_title))]),t._v(" "+t._s(t.text_no_registered_identities_content)+" ")]),e("div",{staticClass:"ses-identities-container"},[t.options&&t.options.length>0?e("div",{staticClass:"ses-identities-table-container"},[e("table",[t.columns?e("tr",{staticClass:"ses-identity-columns"},t._l(t.filtered_columns,(function(s){return e("th",{key:s.key,class:`ses-identity-column ses-identity-column-${s.key}`},[t._v(" "+t._s(s.label)+" ")])})),0):t._e(),t._l(t.options,(function(s,i){return e("tr",{key:i},[e("td",[t._v(" "+t._s(s.value)+" ")]),e("td",[t._v(" "+t._s(s.type)+" ")]),e("td",[t._v(" "+t._s(s.status)+" ")])])})),t.show_identity_form?t._e():e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main wp-mail-smtp-button-small",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.addNewIdentity.apply(null,arguments)}}},[t._v(" "+t._s(t.text_add_new_identity)+" ")])],2)]):t._e(),t.show_identity_form||!t.options||0===t.options.length?e("div",{staticClass:"wp-mail-smtp-amazonses-identity-form"},[t.options&&0!==t.options.length?t._e():e("h3",[t._v(" "+t._s(t.text_verify_identity)+" ")]),e("div",{directives:[{name:"show",rawName:"v-show",value:1===t.verify_identity_step,expression:"verify_identity_step === 1"}],staticClass:"amazonses-identity-form-step"},[e("settings-input-radio",{attrs:{name:"identity_type",options:t.identity_type_options},model:{value:t.identity_type,callback:function(e){t.identity_type=e},expression:"identity_type"}}),e("p",{domProps:{textContent:t._s(t.verify_identity_text)}}),e("settings-input-text",{attrs:{name:"identity_value",placeholder:t.identity_value_placeholder},model:{value:t.identity_value,callback:function(e){t.identity_value=e},expression:"identity_value"}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main wp-mail-smtp-button-small wp-mail-smtp-button-verify",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.verifyIdentity.apply(null,arguments)}}},[t.loading_verify_identity?e("spin-loader",{attrs:{color:"white"}}):e("span",[t._v(t._s(t.text_verify))])],1)],1),e("div",{directives:[{name:"show",rawName:"v-show",value:2===t.verify_identity_step&&"domain"===t.verify_identity_result.type,expression:"verify_identity_step === 2 && verify_identity_result.type === 'domain'"}],staticClass:"amazonses-identity-form-step amazonses-identity-form-step-domain"},[e("p",{domProps:{innerHTML:t._s(t.text_verify_identity_step2_domain_text)}}),e("div",{staticClass:"amazonses-dns-records"},[e("div",{staticClass:"amazonses-dns-records__row amazonses-dns-records__row--heading"},[e("div",{staticClass:"amazonses-dns-records__col amazonses-dns-records__col--heading"},[t._v(" "+t._s(t.text_name)+" ")]),e("div",{staticClass:"amazonses-dns-records__col amazonses-dns-records__col--heading"},[t._v(" "+t._s(t.text_value)+" ")])]),t._l(t.verify_identity_result.domain_dkim_dns_records,(function(t,s){return e("div",{key:t.value,staticClass:"amazonses-dns-records__row amazonses-dns-records__row--record"},[e("div",{staticClass:"amazonses-dns-records__col amazonses-dns-records__col--record"},[e("settings-input-text",{attrs:{name:`dns_record_name[${s}]`,value:t.name,readonly:"",copy:""}})],1),e("div",{staticClass:"amazonses-dns-records__col amazonses-dns-records__col--record"},[e("settings-input-text",{attrs:{name:`dns_record_value[${s}]`,value:t.value,readonly:"",copy:""}})],1)])}))],2)]),e("div",{directives:[{name:"show",rawName:"v-show",value:2===t.verify_identity_step&&"email"===t.verify_identity_result.type,expression:"verify_identity_step === 2 && verify_identity_result.type === 'email'"}],staticClass:"amazonses-identity-form-step"},[e("p",{staticClass:"ses-identities-email-success-notice"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(2411),width:"16",height:"16"}}),t._v(" "),e("span",{domProps:{innerHTML:t._s(t.text_verify_identity_step2_email_text)}})],1)])]):t._e()])]):e("spin-loader",{attrs:{size:"md"}})],1)},ni=[],oi={name:"SettingsAmazonSESIdentities",components:{SettingsInfoTooltip:Ot,SettingsInputRadio:Ne,SettingsInputText:Qt,SpinLoader:ve},props:{options:Array,columns:Array,label:String,tooltip:String},computed:{filtered_columns:function(){return this.columns.filter((t=>"action"!==t.key))},identity_value_placeholder:function(){return"domain"===this.identity_type?(0,l.__)("Please enter a domain","wp-mail-smtp"):(0,l.__)("Please enter a valid email address","wp-mail-smtp")},verify_identity_text:function(){return"domain"===this.identity_type?(0,l.__)("Enter the domain name to verify it on Amazon SES and generate the required DNS CNAME records.","wp-mail-smtp"):(0,l.__)("Enter a valid email address. A verification email will be sent to the email address you entered.","wp-mail-smtp")},text_verify_identity_step2_email_text:function(){return(0,l.gB)((0,l.__)("Please check the inbox of %s for a confirmation email.","wp-mail-smtp"),this.verify_identity_result.value)},text_verify:function(){return"domain"===this.identity_type?(0,l.__)("Verify Domain","wp-mail-smtp"):(0,l.__)("Verify Email","wp-mail-smtp")}},data(){return{text_no_registered_identities_title:(0,l.__)("No registered domains or emails.","wp-mail-smtp"),text_no_registered_identities_content:(0,l.__)("You will not be able to send emails until you verify at least one domain or email address for the selected Amazon SES Region.","wp-mail-smtp"),text_view_dns:(0,l.__)("View DNS","wp-mail-smtp"),text_resend:(0,l.__)("Resend","wp-mail-smtp"),text_identities_table_description:(0,l.__)("Here are the domains and email addresses that have been verified and can be used as the From Email.","wp-mail-smtp"),text_verify_identity:(0,l.__)("Verify SES Identity","wp-mail-smtp"),text_add_new_identity:(0,l.__)("Add New SES Identity","wp-mail-smtp"),text_name:(0,l.__)("Name","wp-mail-smtp"),text_value:(0,l.__)("Value","wp-mail-smtp"),text_verify_identity_step2_domain_text:(0,l.gB)((0,l.__)("Please add these CNAME records to your domain's DNS settings. For information on how to add CNAME DNS records, please refer to the %1$sAmazon SES documentation%2$s.","wp-mail-smtp"),'',""),show_identity_form:!1,identity_type:"domain",identity_type_options:[{label:(0,l.__)("Verify Domain","wp-mail-smtp"),value:"domain"},{label:(0,l.__)("Verify Email Address","wp-mail-smtp"),value:"email"}],identity_value:"",verify_identity_step:1,verify_identity_result:{},loading_verify_identity:!1}},methods:{verifyIdentity:function(){if(this.loading_verify_identity)return;this.loading_verify_identity=!0;const t=this;this.$store.dispatch("$_settings/amazonSESRegisterIdentity",{value:this.identity_value,type:this.identity_type}).then((function(e){t.loading_verify_identity=!1,e.success&&e.data&&(t.verify_identity_result=e.data,t.verify_identity_step=2)}))},addNewIdentity:function(){this.show_identity_form=!0}}},ri=oi,li=(0,d.Z)(ri,ai,ni,!1,null,null,null),pi=li.exports,mi={name:"WizardStepConfigureMailerAmazonSES",components:{SettingsInputText:Qt,SettingsInputSelect:ii,SettingsInputSwitch:es,SettingsAmazonSESIdentities:pi},data(){return{mailer:"amazonses",text_client_id_label:(0,l.__)("Access Key ID","wp-mail-smtp"),text_client_secret_label:(0,l.__)("Secret Access Key",{NODE_ENV:"production",VUE_APP_TEXTDOMAIN:"wp-mail-smtp",VUE_APP_PRODUCT_NAME:"WPMailSMTP",BASE_URL:""}.VUE_APP_TEXTclient_id),text_region_label:(0,l.__)("Region","wp-mail-smtp"),text_identities_label:(0,l.__)("SES Identities","wp-mail-smtp"),text_region_description:(0,l.__)("Please select the Amazon SES API region which is the closest to where your website is hosted. This can help to decrease network latency between your site and Amazon SES, which will speed up email sending.","wp-mail-smtp"),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Amazon SES","wp-mail-smtp"),text_no_ssl:(0,l.__)("Amazon SES requires an SSL certificate, and so is not currently compatible with your site. Please contact your host to request a SSL certificate, or check out ","wp-mail-smtp"),text_no_ssl_link_text:(0,l.__)("WPBeginner's tutorial on how to set up SSL","wp-mail-smtp"),text_no_ssl_diff_mailer:(0,l.__)("If you'd prefer not to set up SSL, or need an SMTP solution in the meantime, please go back and select a different mailer option.","wp-mail-smtp"),description:this.$wpms.mailer_options.amazonses.description.substr(0,this.$wpms.mailer_options.amazonses.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-amazon-ses-mailer-in-wp-mail-smtp/",{content:"Read how to set up Amazon SES"}),regionOptions:this.$wpms.mailer_options.amazonses.region_options||[],fetching_identities:!1,is_ssl:this.$wpms.is_ssl,field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.amazonses.client_id","settings.amazonses.client_secret","settings.amazonses.region","settings.mail.from_email","settings.mail.from_name","settings.mail.from_email_force","settings.mail.from_name_force"]),...(0,_t.vn)("$_settings",{identities_columns:"amazonses_identities.columns",identities:"amazonses_identities.data",display_identities:"amazonses_display_identities"}),...(0,_t.vn)("$_wizard",["blocked_step"]),is_api_auth_missing:function(){return!this.client_id||!this.client_secret||!this.region}},watch:{client_id:function(){this.getIdentitiesDelayed()},client_secret:function(){this.getIdentitiesDelayed()},region:function(){this.getIdentities()}},methods:{getIdentities:function(){this.display_identities&&(this.fetching_identities||this.client_id.length<20||this.client_secret.length<40||!this.region||(this.fetching_identities=!0,this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/getAmazonSESIdentities").then((()=>{this.fetching_identities=!1})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))))},getIdentitiesDelayed:Xs()((function(){this.getIdentities()}),500),areRequiredFieldsValid(){return""===this.client_id&&this.field_errors.push("client_id"),""===this.client_secret&&this.field_errors.push("client_secret"),""===this.region&&this.field_errors.push("region"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}},mounted(){this.getIdentities(),this.$wpms.is_ssl||(this.blocked_step=!0)}},_i=mi,ci=(0,d.Z)(_i,Ks,qs,!1,null,"05d90eba",null),di=ci.exports,ui=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-gmail"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("b",[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-switch",{attrs:{classname:"wp-mail-smtp-gmail-one-click-setup-switch",name:"one_click_setup_enabled",title:t.text_one_click_setup_title,label:t.one_click_setup_enabled?t.text_enabled:t.text_disabled,description:t.text_one_click_setup_description,show_pro:!t.is_pro},on:{clicked:t.oneClickSetupOptionClicked},model:{value:t.one_click_setup_enabled,callback:function(e){t.one_click_setup_enabled=e},expression:"one_click_setup_enabled"}}),t.one_click_setup_enabled?[t.is_license_verification_required?[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("div",{staticClass:"license-form",class:{"license-form-error":t.license_error}},[e("p",{domProps:{innerHTML:t._s(t.text_license_form)}}),e("div",{staticClass:"license-control"},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.license,expression:"license"}],attrs:{name:"license",type:"password",placeholder:t.text_license_input_placeholder,"aria-label":t.text_aria_label_for_license_input},domProps:{value:t.license},on:{input:function(e){e.target.composing||(t.license=e.target.value)}}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-success wp-mail-smtp-button-small",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.handleLicenseSubmit.apply(null,arguments)}}},[t._v(" "+t._s(t.text_license_button)+" ")])]),t.license_error?e("p",{staticClass:"error-message",domProps:{textContent:t._s(t.text_license_error)}}):t._e()]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"})]:t._e(),e("settings-o-auth-connection",{attrs:{hide_description:!0,mailer:t.mailer,connected_email:t.one_click_setup_connected_email_address,is_auth_required:t.is_auth_required,disabled:t.is_license_verification_required}})]:[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"client_id",constant:"WPMS_GMAIL_CLIENT_ID",label:t.text_client_id_label,is_error:t.field_errors.includes("client_id")},on:{is_error_update:function(e){return t.removeFieldError("client_id")}},model:{value:t.client_id,callback:function(e){t.client_id=e},expression:"client_id"}}),e("settings-input-text",{attrs:{name:"client_secret",type:"password",constant:"WPMS_GMAIL_CLIENT_SECRET",label:t.text_client_secret_label,is_error:t.field_errors.includes("client_secret")},on:{is_error_update:function(e){return t.removeFieldError("client_secret")}},model:{value:t.client_secret,callback:function(e){t.client_secret=e},expression:"client_secret"}}),e("settings-input-text",{attrs:{value:t.redirect_uri,name:"redirect_uri",label:t.text_redirect_uri_label,copy:"",readonly:""}}),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-o-auth-connection",{attrs:{label:t.text_authorization_label,mailer:t.mailer,connected_email:t.connected_email_address,is_auth_required:t.is_auth_required,client_id:t.client_id,client_secret:t.client_secret}})],t.is_auth_required?t._e():e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-general-settings"},[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)],2)])},hi=[],gi=function(){var t=this,e=t._self._c;return e("div",{staticClass:"settings-oauth-connection"},[t.label?e("label",{staticClass:"settings-input-label-container"},[e("span",{staticClass:"label"},[t._v(t._s(t.label))]),t.tooltip?e("settings-info-tooltip",{attrs:{content:t.tooltip}}):t._e()],1):t._e(),t.is_auth_required?e("div",{staticClass:"add-authorization-container"},[t.hide_description?t._e():e("p",{staticClass:"description",domProps:{textContent:t._s(t.text_authorization_button_description)}}),"gmail"===t.mailer&&t.gmail_one_click_setup_enabled?e("button",{staticClass:"wp-mail-smtp-google-sign-in-btn",attrs:{type:"button",disabled:!t.are_client_details_ready||t.disabled},on:{click:function(e){return e.preventDefault(),t.authorize.apply(null,arguments)}}},[e("span",{staticClass:"wp-mail-smtp-google-sign-in-btn__icon"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(214),width:"46",height:"46"}})],1),e("span",{staticClass:"wp-mail-smtp-google-sign-in-btn__text"},[t._v(" "+t._s(t.text_google_authorization_button)+" ")])]):e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main wp-mail-smtp-button-small",attrs:{type:"button",disabled:!t.are_client_details_ready||t.disabled},on:{click:function(e){return e.preventDefault(),t.authorize.apply(null,arguments)}}},[t._v(" "+t._s(t.text_authorization_button)+" ")])]):e("div",{staticClass:"remove-authorization-container"},[t.connected_email?e("p",{staticClass:"description connected-as"},[e("span",{domProps:{innerHTML:t._s(t.text_connected_as_with_email)}}),t._v(" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(2546),width:"16",height:"16"}})],1):t._e(),"gmail"===t.mailer?e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.text_remove_authorization_button_description_google)}}):t._e(),e("p",{staticClass:"description",domProps:{innerHTML:t._s(t.text_remove_authorization_button_description)}}),e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-red wp-mail-smtp-button-small",attrs:{type:"button"},on:{click:function(e){return e.preventDefault(),t.removeAuthorization.apply(null,arguments)}}},[t._v(" "+t._s(t.text_remove_authorization_button)+" ")])])])},wi=[],fi={name:"SettingsOAuthConnection",components:{SettingsInfoTooltip:Ot},props:{label:String,hide_description:Boolean,mailer:String,connected_email:String,is_auth_required:Boolean,client_id:String,client_secret:String,tooltip:String,disabled:Boolean},data(){return{text_allow_button:(0,l.__)("Connect to %s","wp-mail-smtp"),text_google_authorization_button:(0,l.__)("Sign in with Google","wp-mail-smtp"),text_authorization_button_description_general:(0,l.__)("Before continuing, you'll need to allow this plugin to send emails using your %s account.","wp-mail-smtp"),text_remove_authorization_button:(0,l.__)("Remove OAuth Connection","wp-mail-smtp"),text_remove_authorization_button_description_google:(0,l.gB)((0,l.__)("If you want to use a different From Email address you can setup a Google email alias. %1$sFollow these instructions%2$s, then select the alias in the From Email section below.","wp-mail-smtp"),'',""),text_remove_authorization_button_desc_template:(0,l.__)("Removing this OAuth connection will give you the ability to redo the OAuth connection or connect to different %s account.","wp-mail-smtp"),text_connected_as:(0,l.__)("Connected as","wp-mail-smtp")}},computed:{...(0,at.Se)({gmail_one_click_setup_enabled:"$_settings/gmail_one_click_setup_enabled"}),are_client_details_ready:function(){return!("gmail"!==this.mailer||!this.gmail_one_click_setup_enabled)||!!this.client_id&&!!this.client_secret},mailer_name:function(){let t="Google";return"outlook"===this.mailer?t="Microsoft Outlook":"zoho"===this.mailer&&(t="Zoho Mail"),t},text_authorization_button:function(){return(0,l.gB)(this.text_allow_button,this.mailer_name)},text_authorization_button_description:function(){return(0,l.gB)(this.text_authorization_button_description_general,this.mailer_name)},text_remove_authorization_button_description:function(){return(0,l.gB)(this.text_remove_authorization_button_desc_template,this.mailer_name)},text_connected_as_with_email:function(){return`${this.text_connected_as} ${this.connected_email}`}},methods:{authorize:function(){this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/getAuthUrl",this.mailer).then((function(t){t.success&&t.data.oauth_url&&(window.location.href=t.data.oauth_url)})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},removeAuthorization:function(){this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/removeAuth",this.mailer).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},removeUrlParam:function(t,e,s){e.delete(s),t.search=e.toString(),window.history.replaceState({},document.title,t.toString())},catchAuthNotice:function(){const t=new URL(window.location.href),e=new URLSearchParams(t.search);let s="",i="",a=!1;switch(e.has("success")?(s=e.get("success"),a=!0,this.removeUrlParam(t,e,"success")):e.has("error")&&(s=e.get("error"),this.removeUrlParam(t,e,"error")),s){case"oauth_invalid_state":i=(0,l.__)("There was an error while processing the authentication request. The state key is invalid. Please try again.","wp-mail-smtp");break;case"google_no_code_scope":case"google_access_denied":case"zoho_access_denied":i=(0,l.__)("There was an error while processing the authentication request. Please try again.","wp-mail-smtp");break;case"google_no_clients":case"zoho_no_clients":case"microsoft_unsuccessful_oauth":case"google_unsuccessful_oauth":i=(0,l.__)("There was an error while processing the authentication request. Please recheck your Client ID and Client Secret and try again.","wp-mail-smtp");break;case"google_one_click_setup_unsuccessful_oauth":i=(0,l.__)("There was an error while processing the authentication request.","wp-mail-smtp");break;case"google_invalid_nonce":case"microsoft_invalid_nonce":case"zoho_invalid_nonce":i=(0,l.__)("There was an error while processing the authentication request. The nonce is invalid. Please try again.","wp-mail-smtp");break;case"microsoft_no_code":case"zoho_no_code":i=(0,l.__)("There was an error while processing the authentication request. The authorization code is missing. Please try again.","wp-mail-smtp");break;case"zoho_unsuccessful_oauth":i=(0,l.__)("There was an error while processing the authentication request. Please recheck your Region, Client ID and Client Secret and try again.","wp-mail-smtp");break;case"google_site_linked":i=(0,l.__)("You have successfully linked the current site with your Google API project. Now you can start sending emails through Gmail.","wp-mail-smtp");break;case"google_one_click_setup_site_linked":i=(0,l.__)("You have successfully connected your site with your Gmail account. Now you can start sending emails through Gmail.","wp-mail-smtp");break;case"microsoft_site_linked":i=(0,l.__)("You have successfully linked the current site with your Microsoft API project. Now you can start sending emails through Outlook.","wp-mail-smtp");break;case"zoho_site_linked":i=(0,l.__)("You have successfully linked the current site with your Zoho Mail API project. Now you can start sending emails through Zoho Mail.","wp-mail-smtp");break}i.length>0&&this.$swal({title:a?(0,l.__)("Successful Authorization","wp-mail-smtp"):(0,l.__)("Authorization Error!","wp-mail-smtp"),text:i,width:550,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})}},mounted(){this.catchAuthNotice()}},Ai=fi,bi=(0,d.Z)(Ai,gi,wi,!1,null,null,null),vi=bi.exports,xi={name:"WizardStepConfigureMailerGmail",components:{SettingsInputText:Qt,SettingsInputSwitch:es,SettingsOAuthConnection:vi},data(){return{mailer:"gmail",text_one_click_setup_title:(0,l.__)("One-Click Setup","wp-mail-smtp"),text_one_click_setup_description:(0,l.__)("Provides a quick and easy way to connect to Google that doesn't require creating your own app.","wp-mail-smtp"),text_client_id_label:(0,l.__)("Client ID","wp-mail-smtp"),text_client_secret_label:(0,l.__)("Client Secret","wp-mail-smtp"),text_redirect_uri_label:(0,l.__)("Authorized Redirect URI","wp-mail-smtp"),text_authorization_label:(0,l.__)("Authorization","wp-mail-smtp"),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from. You can use only the connected email address or its alias.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up the Gmail mailer","wp-mail-smtp"),text_enabled:(0,l.__)("Enabled","wp-mail-smtp"),text_disabled:(0,l.__)("Disabled","wp-mail-smtp"),text_one_click_setup_upgrade_title:(0,l.__)("One-Click Setup for Google Mailer
      is a Pro Feature","wp-mail-smtp"),text_one_click_setup_upgrade_content:(0,l.__)("We're sorry, One-Click Setup for Google Mailer is not available on your plan. Please upgrade to the Pro plan to unlock all these awesome features.","wp-mail-smtp"),description:this.$wpms.mailer_options.gmail.description.substr(0,this.$wpms.mailer_options.gmail.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-gmail-mailer-in-wp-mail-smtp/#create-app",{content:"Read how to set up the Gmail mailer"}),redirect_uri:this.$wpms.mailer_options.gmail.redirect_uri,field_errors:[],license_verified:!1,license:"",license_error:!1,text_license_form:(0,l.__)("One-Click Setup for Google Mailer requires an active license. Verify your license to proceed with this One-Click Setup, please.","wp-mail-smtp"),text_license_input_placeholder:(0,l.__)("Paste your license key here","wp-mail-smtp"),text_aria_label_for_license_input:(0,l.__)("License key input","wp-mail-smtp"),text_license_button:(0,l.__)("Verify License Key","wp-mail-smtp"),text_license_error:(0,l.__)("The License Key format is incorrect. Please enter a valid key and try again.","wp-mail-smtp"),is_pro:this.$wpms.is_pro,one_click_setup_enabled:!1}},computed:{...(0,_t.vn)("$_settings",["settings.gmail.client_id","settings.gmail.client_secret","settings.gmail.access_token","settings.gmail.refresh_token","settings.gmail.one_click_setup_credentials","settings.mail.from_email","settings.mail.from_email_force","settings.mail.from_name","settings.mail.from_name_force"]),...(0,_t.vn)("$_wizard",["blocked_step"]),...(0,at.Se)({is_valid_license:"$_settings/is_valid_license",one_click_setup_enabled_setting:"$_settings/gmail_one_click_setup_enabled",connected_email_address:"$_settings/gmail_email",one_click_setup_connected_email_address:"$_settings/gmail_one_click_setup_email"}),is_auth_required:function(){return this.one_click_setup_enabled?!this.one_click_setup_credentials?.key||!this.one_click_setup_credentials?.token:!this.access_token||!this.refresh_token},is_license_verification_required:function(){return!this.license_verified&&!this.is_valid_license&&this.is_auth_required}},watch:{is_auth_required:function(t){this.blocked_step=t},one_click_setup_enabled:function(t){this.is_pro&&this.$store.dispatch("$_settings/setGmailUseOneClickSetup",t)},one_click_setup_enabled_setting:function(t){this.is_pro&&(this.one_click_setup_enabled=t)}},methods:{areRequiredFieldsValid(){let t=!0;return""===this.from_email&&(t=!1,this.field_errors.push("from_email")),this.one_click_setup_enabled||(""===this.client_id&&(t=!1,this.field_errors.push("client_id")),""===this.client_secret&&(t=!1,this.field_errors.push("client_secret"))),t},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},handleLicenseSubmit(){if(this.license_error=!1,this.license.length<16)return this.license_error=!0,!1;this.$store.dispatch("$_app/start_loading"),this.$store.dispatch("$_settings/verifyLicense",this.license).then((t=>{t.success?(this.license_verified=!0,this.$swal({title:(0,l.__)("Successful Verification!","wp-mail-smtp"),html:(0,l.__)("Now you can continue mailer configuration.","wp-mail-smtp"),width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})):this.$swal({title:(0,l.__)("Verification Error!","wp-mail-smtp"),html:t.data,width:450,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"}})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},oneClickSetupOptionClicked(t){this.is_pro||(t.preventDefault(),this.oneClickSetupUpgradePopup())},oneClickSetupUpgradePopup(){var t=/(\?)/.test(this.$wpms.education.upgrade_url)?"&":"?",e=this.$wpms.education.upgrade_url+t+"utm_content="+encodeURIComponent("gmail-one-click-setup");this.$swal({title:this.text_one_click_setup_upgrade_title,html:`

      ${this.text_one_click_setup_upgrade_content}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_button}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_bonus}

      \n\t\t\t\t\t\t\t

      ${this.$wpms.education.upgrade_doc}

      `,width:550,imageUrl:s(4523),imageWidth:31,imageHeight:35,showCloseButton:!0,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-upgrade-popup"},showConfirmButton:!1})}},mounted(){this.is_auth_required&&(this.blocked_step=!0),this.is_pro&&(this.one_click_setup_enabled=this.one_click_setup_enabled_setting)}},ki=xi,yi=(0,d.Z)(ki,ui,hi,!1,null,null,null),Ci=yi.exports,Si=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-outlook"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),t.is_ssl?e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-text",{attrs:{name:"client_id",constant:"WPMS_OUTLOOK_CLIENT_ID",label:t.text_client_id_label,is_error:t.field_errors.includes("client_id")},on:{is_error_update:function(e){return t.removeFieldError("client_id")}},model:{value:t.client_id,callback:function(e){t.client_id=e},expression:"client_id"}}),e("settings-input-text",{attrs:{name:"client_secret",type:"password",constant:"WPMS_OUTLOOK_CLIENT_SECRET",label:t.text_client_secret_label,is_error:t.field_errors.includes("client_secret")},on:{is_error_update:function(e){return t.removeFieldError("client_secret")}},model:{value:t.client_secret,callback:function(e){t.client_secret=e},expression:"client_secret"}}),e("settings-input-text",{attrs:{value:t.redirect_uri,name:"redirect_uri",label:t.text_redirect_uri_label,copy:"",readonly:""}}),e("settings-o-auth-connection",{attrs:{label:t.text_authorization_label,mailer:t.mailer,connected_email:t.connected_email_address,is_auth_required:t.is_auth_required,client_id:t.client_id,client_secret:t.client_secret}}),t.is_auth_required?t._e():e("div",{staticClass:"wp-mail-smtp-setup-wizard-form-general-settings"},[e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-big-margin"}),e("settings-input-text",{attrs:{name:"from_email",type:"email",constant:"WPMS_MAIL_FROM",label:t.text_from_email_label,description:t.text_from_email_description,is_error:t.field_errors.includes("from_email")},on:{is_error_update:function(e){return t.removeFieldError("from_email")},error_detected:e=>t.errorDetected(e,"from_email")},model:{value:t.from_email,callback:function(e){t.from_email=e},expression:"from_email"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_email_force",constant:"WPMS_MAIL_FROM_FORCE",title:t.text_force_from_email_title,label:t.text_force_from_email_label},model:{value:t.from_email_force,callback:function(e){t.from_email_force=e},expression:"from_email_force"}})],1)],1):e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("div",{staticClass:"wp-mail-smtp-notice wp-mail-smtp-notice--error"},[e("p",[e("span",[t._v(t._s(t.text_no_ssl))]),t._v(" "),e("a",{attrs:{href:"https://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/",target:"_blank",rel:"noopener"}},[t._v(t._s(t.text_no_ssl_link_text))]),t._v(".")]),e("p",[t._v(t._s(t.text_no_ssl_diff_mailer))])])])])},Pi=[],Mi={name:"WizardStepConfigureMailerOutlook",components:{SettingsInputText:Qt,SettingsInputSwitch:es,SettingsOAuthConnection:vi},data(){return{mailer:"outlook",text_client_id_label:(0,l.__)("Application ID","wp-mail-smtp"),text_client_secret_label:(0,l.__)("Application Password","wp-mail-smtp"),text_redirect_uri_label:(0,l.__)("Redirect URI","wp-mail-smtp"),text_authorization_label:(0,l.__)("Authorization","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Microsoft Outlook / 365","wp-mail-smtp"),text_no_ssl:(0,l.__)("Outlook / 365 requires an SSL certificate, and so is not currently compatible with your site. Please contact your host to request a SSL certificate, or check out ","wp-mail-smtp"),text_no_ssl_link_text:(0,l.__)("WPBeginner's tutorial on how to set up SSL","wp-mail-smtp"),text_no_ssl_diff_mailer:(0,l.__)("If you'd prefer not to set up SSL, or need an SMTP solution in the meantime, please go back and select a different mailer option.","wp-mail-smtp"),text_from_email_label:(0,l.__)("From Email","wp-mail-smtp"),text_from_email_description:(0,l.__)("The email address that emails are sent from.","wp-mail-smtp"),text_force_from_email_title:(0,l.__)("Force From Email","wp-mail-smtp"),text_force_from_email_label:(0,l.__)("If enabled, the From Email setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),description:this.$wpms.mailer_options.outlook.description.substr(0,this.$wpms.mailer_options.outlook.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-outlook-mailer-in-wp-mail-smtp/#microsoft-setup",{content:"Read how to set up Microsoft Outlook / 365"}),redirect_uri:this.$wpms.mailer_options.outlook.redirect_uri,field_errors:[],is_ssl:this.$wpms.is_ssl}},computed:{...(0,_t.vn)("$_settings",["settings.outlook.client_id","settings.outlook.client_secret","settings.outlook.access_token","settings.outlook.refresh_token","settings.mail.from_email","settings.mail.from_email_force"]),...(0,_t.vn)("$_wizard",["blocked_step"]),...(0,at.Se)({connected_email_address:"$_settings/outlook_email"}),is_auth_required:function(){return!this.access_token||!this.refresh_token}},watch:{is_auth_required:function(t){this.blocked_step=t}},methods:{areRequiredFieldsValid(){return""===this.client_id&&this.field_errors.push("client_id"),""===this.client_secret&&this.field_errors.push("client_secret"),""===this.from_email&&this.field_errors.push("from_email"),0===this.field_errors.length},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))},errorDetected(t,e){this.field_errors.push(e)}},mounted(){this.is_auth_required&&(this.blocked_step=!0),this.$wpms.is_ssl||(this.blocked_step=!0)}},Ei=Mi,Bi=(0,d.Z)(Ei,Si,Pi,!1,null,"1230186a",null),Ti=Bi.exports,Ii=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-configure-mailer-settings wp-mail-smtp-setup-wizard-step-configure-mailer-settings-zoho"},[e("p",{staticClass:"mailer-description",domProps:{innerHTML:t._s(t.description)}}),e("p",{staticClass:"mailer-description mailer-description-links"},[e("a",{staticClass:"wp-mail-smtp-link",attrs:{href:t.documentation_link_url,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.text_documentation_link))])]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-form"},[e("settings-input-select",{attrs:{name:"domain",constant:"WPMS_ZOHO_DOMAIN",label:t.text_domain_label,options:t.domain_options,description:t.text_domain_description,is_error:t.field_errors.includes("domain")},on:{is_error_update:function(e){return t.removeFieldError("domain")}},model:{value:t.domain,callback:function(e){t.domain=e},expression:"domain"}}),e("settings-input-text",{attrs:{name:"client_id",constant:"WPMS_ZOHO_CLIENT_ID",label:t.text_client_id_label,is_error:t.field_errors.includes("client_id")},on:{is_error_update:function(e){return t.removeFieldError("client_id")}},model:{value:t.client_id,callback:function(e){t.client_id=e},expression:"client_id"}}),e("settings-input-text",{attrs:{name:"client_secret",constant:"WPMS_ZOHO_CLIENT_SECRET",type:"password",label:t.text_client_secret_label,is_error:t.field_errors.includes("client_secret")},on:{is_error_update:function(e){return t.removeFieldError("client_secret")}},model:{value:t.client_secret,callback:function(e){t.client_secret=e},expression:"client_secret"}}),e("settings-input-text",{attrs:{value:t.redirect_uri,name:"redirect_uri",label:t.text_redirect_uri_label,copy:"",readonly:""}}),e("settings-o-auth-connection",{attrs:{label:t.text_authorization_label,mailer:t.mailer,connected_email:t.connected_email_address,is_auth_required:t.is_auth_required,client_id:t.client_id,client_secret:t.client_secret}}),t.is_auth_required?t._e():e("div",[e("settings-input-text",{attrs:{name:"from_name",constant:"WPMS_MAIL_FROM_NAME",label:t.text_from_name_label,description:t.text_from_name_description},model:{value:t.from_name,callback:function(e){t.from_name=e},expression:"from_name"}}),e("settings-input-switch",{attrs:{classname:"sub_setting",name:"from_name_force",constant:"WPMS_MAIL_FROM_NAME_FORCE",title:t.text_force_from_name_title,label:t.text_force_from_name_label},model:{value:t.from_name_force,callback:function(e){t.from_name_force=e},expression:"from_name_force"}})],1)],1)])},Fi=[],Di={name:"WizardStepConfigureMailerZoho",components:{SettingsInputText:Qt,SettingsInputSwitch:es,SettingsInputSelect:ii,SettingsOAuthConnection:vi},data(){return{mailer:"zoho",text_domain_label:(0,l.__)("Region","wp-mail-smtp"),text_domain_description:(0,l.__)("The data center location used by your Zoho account.","wp-mail-smtp"),text_client_id_label:(0,l.__)("Client ID","wp-mail-smtp"),text_client_secret_label:(0,l.__)("Client Secret","wp-mail-smtp"),text_redirect_uri_label:(0,l.__)("Redirect URI","wp-mail-smtp"),text_authorization_label:(0,l.__)("Authorization","wp-mail-smtp"),text_from_name_label:(0,l.__)("From Name","wp-mail-smtp"),text_force_from_name_title:(0,l.__)("Force From Name","wp-mail-smtp"),text_force_from_name_label:(0,l.__)("If enabled, the From Name setting above will be used for all emails, ignoring values set by other plugins.","wp-mail-smtp"),text_from_name_description:(0,l.__)("The name that emails are sent from.","wp-mail-smtp"),text_documentation_link:(0,l.__)("Read how to set up Zoho Mail","wp-mail-smtp"),description:this.$wpms.mailer_options.zoho.description.substr(0,this.$wpms.mailer_options.zoho.description.indexOf("
      ")),documentation_link_url:this.$getUTMUrl("https://wpmailsmtp.com/docs/how-to-set-up-the-zoho-mailer-in-wp-mail-smtp/#zoho-account",{content:"Read how to set up Zoho Mail"}),redirect_uri:this.$wpms.mailer_options.zoho.redirect_uri,domain_options:this.$wpms.mailer_options.zoho.domain_options,field_errors:[]}},computed:{...(0,_t.vn)("$_settings",["settings.zoho.domain","settings.zoho.client_id","settings.zoho.client_secret","settings.zoho.access_token","settings.zoho.refresh_token","settings.mail.from_name","settings.mail.from_name_force"]),...(0,_t.vn)("$_wizard",["blocked_step"]),...(0,at.Se)({connected_email_address:"$_settings/zoho_email"}),is_auth_required:function(){return!this.access_token||!this.refresh_token}},watch:{is_auth_required:function(t){this.blocked_step=t}},methods:{areRequiredFieldsValid(){let t=!0;return""===this.domain&&(t=!1,this.field_errors.push("domain")),""===this.client_id&&(t=!1,this.field_errors.push("client_id")),""===this.client_secret&&(t=!1,this.field_errors.push("client_secret")),t},removeFieldError(t){this.field_errors=this.field_errors.filter((e=>e!==t))}},mounted(){this.is_auth_required&&(this.blocked_step=!0)}},zi=Di,Zi=(0,d.Z)(zi,Ii,Fi,!1,null,null,null),Oi=Zi.exports,Li=function(){var t=this,e=t._self._c;return e("div",{staticClass:"wp-mail-smtp-setup-wizard-step wp-mail-smtp-setup-wizard-step-configure-email-logs"},[e("div",{staticClass:"wp-mail-smtp-setup-wizard-content-container"},[e("div",{staticClass:"wp-mail-smtp-configure-email-logs-header"},[e("the-wizard-step-counter"),e("content-header",{attrs:{title:t.text_header_title,subtitle:t.text_header_subtitle}})],1),e("div",{staticClass:"wp-mail-smtp-plugin-configure-email-logs"},[e("settings-input-long-checkbox",{attrs:{name:"log_email_content",label:t.text_log_email_content,description:t.text_log_email_content_desc},model:{value:t.log_email_content,callback:function(e){t.log_email_content=e},expression:"log_email_content"}}),e("settings-input-long-checkbox",{attrs:{name:"save_attachments",label:t.text_save_attachments,description:t.text_save_attachments_desc},model:{value:t.save_attachments,callback:function(e){t.save_attachments=e},expression:"save_attachments"}}),e("settings-input-long-checkbox",{attrs:{name:"open_email_tracking",label:t.text_open_email_tracking,description:t.text_open_email_tracking_desc},model:{value:t.open_email_tracking,callback:function(e){t.open_email_tracking=e},expression:"open_email_tracking"}}),e("settings-input-long-checkbox",{attrs:{name:"click_link_tracking",label:t.text_click_link_tracking,description:t.text_click_link_tracking_desc},model:{value:t.click_link_tracking,callback:function(e){t.click_link_tracking=e},expression:"click_link_tracking"}})],1)]),e("div",{staticClass:"wp-mail-smtp-separator wp-mail-smtp-separator-no-margin"}),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer"},[e("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.previousStep.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-left"},[e("inline-svg",{staticClass:"icon",attrs:{src:s(9238),width:"16",height:"18"}}),t._v(t._s(t.text_previous_step)+" ")],1)]),e("div",{staticClass:"wp-mail-smtp-setup-wizard-step-footer-buttons"},[e("button",{staticClass:"wp-mail-smtp-button wp-mail-smtp-button-main",attrs:{type:"submit",name:"next_step"},on:{click:function(e){return e.preventDefault(),t.handleSubmit.apply(null,arguments)}}},[e("span",{staticClass:"text-with-arrow text-with-arrow-right"},[t._v(" "+t._s(t.text_save)+" "),e("inline-svg",{staticClass:"icon",attrs:{src:s(7706),width:"16",height:"19"}})],1)])])])])},Wi=[],Ri={name:"WizardStepConfigureEmailLogs",components:{ContentHeader:h,TheWizardStepCounter:X,SettingsInputLongCheckbox:kt},data(){return{text_header_title:(0,l.__)("Configure Email Logs","wp-mail-smtp"),text_header_subtitle:(0,l.__)("Enable these powerful logging features for more control of your WordPress emails.","wp-mail-smtp"),text_save:(0,l.__)("Save and Continue","wp-mail-smtp"),text_previous_step:(0,l.__)("Previous Step","wp-mail-smtp"),text_log_email_content:(0,l.__)("Store the content for all sent emails","wp-mail-smtp"),text_log_email_content_desc:(0,l.__)("This option must be enabled if you'd like to be able to resend emails. Please be aware that all email content will be stored in your WordPress database. This may include sensitive data, passwords, and personal details.","wp-mail-smtp"),text_save_attachments:(0,l.__)("Save file attachments sent from WordPress","wp-mail-smtp"),text_save_attachments_desc:(0,l.__)("All file attachments sent from your site will be saved to the WordPress Uploads folder. Please note that this may reduce available disk space on your server.","wp-mail-smtp"),text_open_email_tracking:(0,l.__)("Track when an email is opened","wp-mail-smtp"),text_open_email_tracking_desc:(0,l.__)("See which emails were opened by the recipients. Email open tracking works with emails that are sent in HTML format.","wp-mail-smtp"),text_click_link_tracking:(0,l.__)("Track when a link in an email is clicked","wp-mail-smtp"),text_click_link_tracking_desc:(0,l.__)("See which links were clicked in emails sent from your WordPress site. Click tracking works with emails that are sent in HTML format.","wp-mail-smtp")}},computed:{...(0,_t.vn)("$_settings",["settings.logs.log_email_content","settings.logs.save_attachments","settings.logs.open_email_tracking","settings.logs.click_link_tracking"])},methods:{handleSubmit(){this.$store.dispatch("$_app/start_loading");let t={value:{logs:{log_email_content:this.log_email_content,save_attachments:this.save_attachments,open_email_tracking:this.open_email_tracking,click_link_tracking:this.click_link_tracking}}};this.$store.dispatch("$_settings/updateSettings",t).then((t=>{t.success?this.nextStep():this.$wpms_error_toast({})})).finally((()=>{this.$store.dispatch("$_app/stop_loading")}))},previousStep(){this.$previous_step()},nextStep(){this.$next_step()}}},Qi=Ri,Ui=(0,d.Z)(Qi,Li,Wi,!1,null,null,null),Ni=Ui.exports,Gi=new n.ZP({routes:[{path:"*",redirect:"/"},{path:"/",name:"welcome",component:C},{path:"/step",name:"step",component:O,children:[{path:"import",name:"import_step",component:et},{path:"choose_mailer",name:"choose_mailer_step",component:lt},{path:"configure_mailer",name:"configure_mailer_step",component:ht,children:[{path:"smtp",name:"configure_mailer_step_smtp",component:ns},{path:"sendlayer",name:"configure_mailer_step_sendlayer",component:_s},{path:"smtpcom",name:"configure_mailer_step_smtpcom",component:ws},{path:"sendinblue",name:"configure_mailer_step_sendinblue",component:ks},{path:"mailgun",name:"configure_mailer_step_mailgun",component:Es},{path:"sendgrid",name:"configure_mailer_step_sendgrid",component:zs},{path:"sparkpost",name:"configure_mailer_step_sparkpost",component:Qs},{path:"postmark",name:"configure_mailer_step_postmark",component:Vs},{path:"amazoneses",name:"configure_mailer_step_amazonses",component:di},{path:"gmail",name:"configure_mailer_step_gmail",component:Ci},{path:"outlook",name:"configure_mailer_step_outlook",component:Ti},{path:"zoho",name:"configure_mailer_step_zoho",component:Oi}]},{path:"plugin_features",name:"plugin_features_step",component:Pt},{path:"configure_email_logs",name:"configure_email_logs_step",component:Ni},{path:"help_improve",name:"help_improve_step",component:Xt},{path:"license",name:"license_step",component:ne},{path:"check_configuration",name:"check_configuration_step",component:_e},{path:"successful_configuration",name:"check_configuration_step_success",component:Ee},{path:"failed_configuration",name:"check_configuration_step_failure",component:ze}]}],scrollBehavior(){return{x:0,y:0}}}),Hi={name:"SetupWizardApp",router:Gi,computed:{...(0,at.Se)({blocked:"$_app/blocked",loading:"$_app/loading"})}},Yi=Hi,Vi=(0,d.Z)(Yi,i,a,!1,null,null,null),Ki=Vi.exports,qi=s(144),Ji=s(9516);const Xi={install(t){window.wp_mail_smtp_vue&&(t.prototype.$wpms=window.wp_mail_smtp_vue),t.prototype.$isPro=ji,t.prototype.$addQueryArg=$i,t.prototype.$getUTMUrl=ta}};function ji(){return window.wp_mail_smtp_vue.is_pro}function $i(t,e,s){var i=new RegExp("([?&])"+e+"=.*?(&|#|$)","i");if(t.match(i))return t.replace(i,"$1"+e+"="+s+"$2");var a="";-1!==t.indexOf("#")&&(a=t.replace(/.*#/,"#"),t=t.replace(/#.*/,""));var n=-1!==t.indexOf("?")?"&":"?";return t+n+e+"="+s+a}function ta(t,e){e={source:"WordPress",medium:"setup-wizard",campaign:ji()?"plugin":"liteplugin",content:"general",...e};for(const[s,i]of Object.entries(e))t=$i(t,`utm_${s}`,encodeURIComponent(i));return t}var ea=Xi;const sa={install(t){t.prototype.$next_step=function(e=0){const s=t.prototype.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))+1+e;this.$router.push({name:t.prototype.$wizard_steps[s]})},t.prototype.$previous_step=function(e=0){let s="welcome";const i=t.prototype.$wizard_steps.findIndex((t=>this.$route.name.includes(t)))-1-e;i>=0&&(s=t.prototype.$wizard_steps[i]),this.$router.push({name:s})},t.prototype.$swal&&(t.prototype.$wpms_success_toast=function(e){let{animation:s=!1,toast:i=!0,position:a="top-end",showConfirmButton:n=!1,icon:o="success",timer:r=3e3,showCloseButton:p=!0,title:m=(0,l.__)("Settings Updated","wp-mail-smtp"),showCancelButton:_=!1,confirmButtonText:c="",cancelButtonText:d="",text:u=""}=e;return t.prototype.$swal({animation:s,toast:i,position:a,showConfirmButton:n,icon:o,showCloseButton:p,title:m,timer:r,showCancelButton:_,confirmButtonText:c,cancelButtonText:d,text:u})},t.prototype.$wpms_error_toast=function(e){let{animation:s=!1,toast:i=!0,position:a="top-end",showConfirmButton:n=!1,icon:o="error",showCloseButton:r=!0,title:p=(0,l.__)("Could Not Save Changes","wp-mail-smtp"),text:m=""}=e;return t.prototype.$swal({animation:s,toast:i,position:a,showConfirmButton:n,icon:o,showCloseButton:r,title:p,text:m,onOpen:function(){t.prototype.$swal.hideLoading()}})},t.prototype.$wpms_error_modal=function(e){let{position:s="center",width:i=650,showConfirmButton:a=!0,confirmButtonText:n=(0,l.__)("Return to Mailer Settings","wp-mail-smtp"),customClass:o={container:"wp-mail-smtp-swal wp-mail-smtp-swal-error"},showCloseButton:r=!0,title:p=(0,l.__)("Whoops, we found an issue!","wp-mail-smtp"),subtitle:m=(0,l.__)("It looks like something went wrong...","wp-mail-smtp"),detailedError:_=""}=e;return t.prototype.$swal({position:s,width:i,showConfirmButton:a,confirmButtonText:n,customClass:o,showCloseButton:r,title:p,html:`\n\t\t\t\t\t\t

      ${m}

      \n\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t

      ${(0,l.__)("Error Message:","wp-mail-smtp")}

      \n\t\t\t\t\t\t\t
      ${_}
      \n\t\t\t\t\t\t
      \n\t\t\t\t\t`,allowEscapeKey:!1,allowOutsideClick:!1,onOpen:function(){t.prototype.$swal.hideLoading()}})},t.prototype.$required_fields_modal=function(){return t.prototype.$swal({position:"center",width:450,showConfirmButton:!0,confirmButtonText:(0,l.__)("OK","wp-mail-smtp"),customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"},showCloseButton:!0,title:(0,l.__)("Heads up!","wp-mail-smtp"),text:(0,l.__)("Please fill out all the required fields to continue.","wp-mail-smtp"),allowEscapeKey:!1,allowOutsideClick:!1})})}};var ia=sa,aa=s(5121);const na=function(t,e){return new Promise(((s,i)=>{let a=new FormData;a.append("action","wp_mail_smtp_vue_install_plugin"),a.append("nonce",qi.ZP.prototype.$wpms.nonce),a.append("slug",e),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,a).then((e=>{if(e.data.success)t.commit("PLUGIN_INSTALLED",e.data);else{let t="";ee()(e.data,"data[0].message")?t=e.data.data[0].message:ee()(e.data,"data")&&(t=e.data.data),qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like the plugin installation failed!","wp-mail-smtp"),detailedError:t})}s(e.data)})).catch((function(t){if(i(t),t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't install the plugin.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline. Plugin not installed.","wp-mail-smtp")})}))}))},oa=function(t){return new Promise(((e,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_get_partner_plugins_info"),i.append("nonce",qi.ZP.prototype.$wpms.nonce),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,i).then((s=>{s.data.success?t.commit("PLUGINS_FETCHED",s.data):qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Can't fetch plugins information.","wp-mail-smtp")}),e(s.data)})).catch((function(t){if(s(t),t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't fetch plugins information.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline. Plugin information not retrieved.","wp-mail-smtp")})}))}))};var ra={installPlugin:na,fetchPlugins:oa};const la=function(t,e){return ra.installPlugin(t,e)},pa=function(t){return ra.fetchPlugins(t)};var ma={installPlugin:la,getPlugins:pa};const _a=t=>t.plugins,ca=t=>t.plugins.filter((t=>"wpforms-lite"!==t.slug)),da=t=>t.contact_form_plugin_already_installed;var ua={getField:_t.rz,plugins:_a,partner_plugins:ca,contact_form_plugin_already_installed:da};const ha=(t,e)=>{t.plugins.map((s=>(s.slug===e.data.slug&&(s.is_installed=e.data.is_installed,s.is_activated=e.data.is_activated),"wpforms-lite"===e.data.slug&&(t.contact_form_plugin_already_installed=!0),s)))},ga=(t,e)=>{t.plugins=e.data.plugins,t.contact_form_plugin_already_installed=e.data.contact_form_plugin_already_installed};var wa={updateField:_t.L4,PLUGIN_INSTALLED:ha,PLUGINS_FETCHED:ga};const fa={plugins:[],contact_form_plugin_already_installed:!1,smart_contact_form_setting:!0};var Aa={namespaced:!0,state:fa,actions:ma,getters:ua,mutations:wa};const ba=t=>new Promise(((e,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_get_settings"),i.append("nonce",qi.ZP.prototype.$wpms.nonce),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,i).then((t=>{t.data.success?e(t.data):s(t.data)})).catch((function(e){if(t.dispatch("$_app/block",!1,{root:!0}),e.response){const t=e.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load the settings.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),t.status,t.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))})),va=(t,e)=>new Promise(((t,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_get_amazon_ses_identities"),i.append("nonce",qi.ZP.prototype.$wpms.nonce),!1!==e&&i.append("value",JSON.stringify(e)),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,i).then((e=>{e.data.success?t(e.data):s(e.data)})).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't retrieve Amazon SES Identities.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Can't retrieve Amazon SES Identities.","wp-mail-smtp")})}))})),xa=(t,e)=>new Promise(((t,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_amazon_ses_identity_registration"),i.append("nonce",qi.ZP.prototype.$wpms.nonce),!1!==e.value&&i.append("value",e.value),!1!==e.value&&i.append("type",e.type),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,i).then((e=>{e.data.success?t(e.data):s(e.data)})).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't register the Amazon SES Identity.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Can't register the Amazon SES Identity","wp-mail-smtp")})}))})),ka=(t,e)=>new Promise((t=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_update_settings"),s.append("nonce",qi.ZP.prototype.$wpms.nonce),void 0!==e.overwrite&&s.append("overwrite",e.overwrite),!1!==e.value&&s.append("value",JSON.stringify(e.value)),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,s).then((e=>{t(e.data)})).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't save the settings.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Network error encountered. Settings not saved.","wp-mail-smtp")})}))})),ya=(t,e)=>new Promise((t=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_import_settings"),s.append("nonce",qi.ZP.prototype.$wpms.nonce),!1!==e.value&&s.append("value",e.value),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,s).then((e=>{t(e.data)})).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't import the plugin settings.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("Network error encountered. SMTP plugin import failed!","wp-mail-smtp")})}))})),Ca=function(t,e){return new Promise(((s,i)=>{let a=new FormData;a.append("action","wp_mail_smtp_vue_get_oauth_url"),a.append("nonce",qi.ZP.prototype.$wpms.nonce),!1!==t&&a.append("mailer",t),!1!==e&&a.append("settings",JSON.stringify(e)),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,a).then((t=>{t.data.success?s(t.data):i(t.data)})).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load authentication details.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))}))},Sa=function(t){return new Promise(((e,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_remove_oauth_connection"),i.append("nonce",qi.ZP.prototype.$wpms.nonce),!1!==t&&i.append("mailer",t),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,i).then((t=>{t.data.success?e(t.data):s(t.data)})).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't remove OAuth connection.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))}))},Pa=function(t){return new Promise(((e,s)=>{let i=new FormData;t?i.append("action","wp_mail_smtp_vue_remove_gmail_one_click_setup_oauth_connection"):i.append("action","wp_mail_smtp_vue_remove_oauth_connection"),i.append("nonce",qi.ZP.prototype.$wpms.nonce),i.append("mailer","gmail"),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,i).then((t=>{t.data.success?e(t.data):s(t.data)})).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't remove OAuth connection.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))}))},Ma=function(t){return new Promise(((e,s)=>{let i=new FormData;i.append("action","wp_mail_smtp_vue_get_connected_data"),i.append("nonce",qi.ZP.prototype.$wpms.nonce),!1!==t&&i.append("mailer",t),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,i).then((t=>{t.data.success?e(t.data):s(t.data)})).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load oAuth connected data.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))}))},Ea=function(t){return new Promise((e=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_subscribe_to_newsletter"),s.append("nonce",qi.ZP.prototype.$wpms.nonce),s.append("email",t),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,s).then((t=>{e(t.data)}))}))},Ba=function(t){return new Promise((e=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_verify_license_key"),s.append("nonce",qi.ZP.prototype.$wpms.nonce),s.append("license_key",t),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,s).then((t=>{e(t.data)}))}))},Ta=function(t){return new Promise((e=>{let s=new FormData;s.append("action","wp_mail_smtp_vue_upgrade_plugin"),s.append("nonce",qi.ZP.prototype.$wpms.nonce),s.append("license_key",t),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,s).then((t=>{e(t.data)}))}))};var Ia={fetchSettings:ba,saveSettings:ka,importOtherPluginSettings:ya,fetchAmazonSESIdentities:va,amazonSESRegisterIdentity:xa,getAuthRedirect:Ca,removeAuth:Sa,removeGmailAuth:Pa,getConnectedData:Ma,subscribeToNewsletter:Ea,verifyLicense:Ba,upgradePlugin:Ta};const Fa=t=>Ia.fetchSettings(t).then((e=>{t.commit("SETTINGS_UPDATED",e.data)})).catch((t=>{if(t.data)return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load existing settings.","wp-mail-smtp"),detailedError:t.data})})),Da=t=>{const e=t.getters.settings.amazonses;if(0!==Object.keys(e).length)return Ia.fetchAmazonSESIdentities(t,e).then((e=>{t.commit("AMAZONSES_IDENTITIES_UPDATED",e),qi.ZP.swal.close()})).catch((t=>{qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't retrieve the Amazon SES Identities.","wp-mail-smtp"),detailedError:t.data?t.data:""})}))},za=(t,e)=>Ia.amazonSESRegisterIdentity(t,e).catch((t=>{qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't register the Amazon SES Identity.","wp-mail-smtp"),detailedError:t.data})})),Za=(t,e)=>{t.commit("MAILER_UPDATE",e)},Oa=(t,e)=>new Promise((function(s){t.commit("LOGS_UPDATE",e),s({success:!0})})),La=(t,e)=>new Promise((function(s){t.commit("SUMMARY_REPORT_EMAIL_UPDATE",e),s({success:!0})})),Wa=(t,e)=>{t.commit("SETTINGS_SAVE_START");let s=Ia.saveSettings(t,e);return s.then((function(){t.commit("SETTINGS_SAVE_END")})),s},Ra=t=>{const e=t.getters.settings;t.commit("SETTINGS_SAVE_START");let s=Ia.saveSettings(t,{value:e});return s.then((function(){t.commit("SETTINGS_SAVE_END")})),s},Qa=(t,e)=>(t.commit("SETTINGS_SAVE_START"),new Promise((function(s){Ia.importOtherPluginSettings(t,e).then((function(e){t.commit("SETTINGS_SAVE_END"),e.success?Fa(t).then((function(){s(!0)})):s(!1)}))}))),Ua=(t,e)=>Ia.getAuthRedirect(e,t.getters.settings[e]).catch((t=>{qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load oAuth redirect.","wp-mail-smtp"),detailedError:t.data})})),Na=(t,e)=>Ia.getConnectedData(e).catch((t=>{qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't load oAuth connected data.","wp-mail-smtp"),detailedError:t.data})})),Ga=(t,e)=>{let s;return s="gmail"===e?Ia.removeGmailAuth(t.getters.gmail_one_click_setup_enabled).then((function(){t.commit("SETTINGS_REMOVE_GMAIL_AUTH",t.getters.gmail_one_click_setup_enabled)})):Ia.removeAuth(e).then((function(){t.commit("SETTINGS_REMOVE_AUTH",e)})),s.catch((t=>{qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't remove oAuth connection.","wp-mail-smtp"),detailedError:t.data})})),s},Ha=(t,e)=>new Promise((s=>{t.commit("SETTINGS_SAVE_PLUGIN_FEATURES",e),s({success:!0,features:e})})),Ya=(t,e)=>Ia.subscribeToNewsletter(e),Va=(t,e)=>Ia.verifyLicense(e),Ka=(t,e)=>Ia.upgradePlugin(e),qa=(t,e)=>{t.commit("GMAIL_ONE_CLICK_SETUP_ENABLED_UPDATE",e)};var Ja={getSettings:Fa,updateSettings:Wa,importOtherPlugin:Qa,setMailer:Za,setLogs:Oa,setSummaryReportEmail:La,saveCurrentSettings:Ra,getAmazonSESIdentities:Da,amazonSESRegisterIdentity:za,getAuthUrl:Ua,removeAuth:Ga,getConnectedData:Na,savePluginFeatures:Ha,subscribeToNewsletter:Ya,verifyLicense:Va,upgradePlugin:Ka,setGmailUseOneClickSetup:qa};const Xa=t=>t.settings,ja=t=>t.settings.mail.mailer,$a=t=>t.settings.outlook.user_details?t.settings.outlook.user_details.email:null,tn=t=>t.settings.zoho.user_details?t.settings.zoho.user_details.email:null,en=t=>t.settings.gmail.user_details?t.settings.gmail.user_details.email:null,sn=t=>t.settings.gmail.one_click_setup_user_details?t.settings.gmail.one_click_setup_user_details.email:null,an=t=>t.plugin_features,nn=t=>!!t.settings.logs.enabled&&t.settings.logs.enabled,on=t=>!t.settings.general.summary_report_email_disabled,rn=t=>e=>{let s=!1;const i=t.amazonses_identities.data,a=e.split("@").pop();return void 0!==i&&(i.forEach((t=>{("email"===t.type&&t.value===e||"domain"===t.type&&t.value===a)&&(s=!0)})),s)},ln=t=>"string"===typeof t.settings.license.key&&t.settings.license.key.length>0&&!t.settings.license.is_expired&&!t.settings.license.is_disabled&&!t.settings.license.is_invalid,pn=t=>!!ji()&&t.settings.gmail.one_click_setup_enabled;var mn={getField:_t.rz,settings:Xa,mailer:ja,outlook_email:$a,zoho_email:tn,gmail_email:en,gmail_one_click_setup_email:sn,plugin_features:an,amazonses_is_email_registered:rn,email_log_enabled:nn,summary_report_email_enabled:on,is_valid_license:ln,gmail_one_click_setup_enabled:pn},_n=s(2378),cn=s.n(_n);const dn=(t,e)=>{t.is_saving=!1,t.settings=cn()(t.settings,e)},un=(t,e)=>{t.amazonses_identities=e.data},hn=(t,e)=>{t.settings.mail.mailer=e},gn=(t,e)=>{t.settings.logs.enabled=e},wn=(t,e)=>{t.settings.general.summary_report_email_disabled=e},fn=t=>{t.is_saving=!0},An=t=>{t.is_saving=!1},bn=(t,e)=>{const s=t.settings[e];t.settings[e]={client_id:s.client_id,client_secret:s.client_secret},"zoho"===e&&(t.settings[e].domain=s.domain)},vn=(t,e)=>{e?(t.settings.gmail.one_click_setup_credentials={key:"",token:""},t.settings.gmail.one_click_setup_user_details={email:""},delete t.settings.gmail.one_click_setup_status):(t.settings.gmail.access_token={},t.settings.gmail.refresh_token="",t.settings.gmail.user_details={email:""},delete t.settings.gmail.auth_code)},xn=(t,e)=>{t.plugin_features=e},kn=(t,e)=>{t.settings.gmail.one_click_setup_enabled=e};var yn={updateField:_t.L4,SETTINGS_UPDATED:dn,SETTINGS_SAVE_START:fn,SETTINGS_SAVE_END:An,MAILER_UPDATE:hn,LOGS_UPDATE:gn,SUMMARY_REPORT_EMAIL_UPDATE:wn,AMAZONSES_IDENTITIES_UPDATED:un,SETTINGS_REMOVE_AUTH:bn,SETTINGS_REMOVE_GMAIL_AUTH:vn,SETTINGS_SAVE_PLUGIN_FEATURES:xn,GMAIL_ONE_CLICK_SETUP_ENABLED_UPDATE:kn};const Cn={settings:{mail:{mailer:"mail",from_email:"",from_name:"",return_path:!1,from_email_force:!0,from_name_force:!1},smtp:{host:"",port:"587",encryption:"tls",autotls:!0,auth:!0,user:"",pass:""},sendlayer:{api_key:""},smtpcom:{api_key:"",channel:""},sendinblue:{api_key:"",domain:""},mailgun:{api_key:"",domain:"",region:"US"},sendgrid:{api_key:"",domain:""},sparkpost:{api_key:"",region:"US"},postmark:{server_api_token:"",message_stream:""},amazonses:{client_id:"",client_secret:"",region:"us-east-1"},gmail:{client_id:"",client_secret:"",access_token:{},refresh_token:"",user_details:{email:""},one_click_setup_enabled:!1,one_click_setup_credentials:{key:"",token:""},one_click_setup_user_details:{email:""}},outlook:{client_id:"",client_secret:"",access_token:{},refresh_token:"",user_details:{email:""}},zoho:{client_id:"",client_secret:"",domain:"com",access_token:{},refresh_token:"",user_details:{email:""}},logs:{enabled:!1,log_email_content:!1,save_attachments:!1,open_email_tracking:!1,click_link_tracking:!1},general:{summary_report_email_disabled:!1},alert_email:{enabled:!1,connections:{}},license:{key:"",is_expired:!1,is_disabled:!1,is_invalid:!1}},amazonses_identities:{},amazonses_display_identities:window.wp_mail_smtp_vue.mailer_options.amazonses.display_identities,plugin_features:[]};var Sn={namespaced:!0,state:Cn,actions:Ja,getters:mn,mutations:yn};const Pn=()=>new Promise((t=>{let e=new FormData;e.append("action","wp_mail_smtp_vue_check_mailer_configuration"),e.append("nonce",qi.ZP.prototype.$wpms.nonce),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,e).then((e=>{t(e.data)})).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't perform the mailer configuration check.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))})),Mn=t=>{let e=new FormData;e.append("action","wp_mail_smtp_vue_send_feedback"),e.append("nonce",qi.ZP.prototype.$wpms.nonce),e.append("data",JSON.stringify(t)),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,e).catch((function(t){if(t.response){const e=t.response;return qi.ZP.prototype.$wpms_error_modal({subtitle:(0,l.__)("It looks like we can't send the feedback.","wp-mail-smtp"),detailedError:(0,l.gB)((0,l.__)("%1$s, %2$s","wp-mail-smtp"),e.status,e.statusText)})}qi.ZP.prototype.$wpms_error_toast({title:(0,l.__)("You appear to be offline.","wp-mail-smtp")})}))},En=()=>{let t=new FormData;t.append("action","wp_mail_smtp_vue_wizard_steps_started"),t.append("nonce",qi.ZP.prototype.$wpms.nonce),aa.Z.post(qi.ZP.prototype.$wpms.ajax_url,t)};var Bn={checkMailerConfiguration:Pn,sendFeedback:Mn,started:En};const Tn=()=>Bn.checkMailerConfiguration(),In=(t,e)=>{Bn.sendFeedback(e)},Fn=()=>{Bn.started()};var Dn={checkMailerConfiguration:Tn,sendFeedback:In,started:Fn};const zn=t=>t.blocked_step,Zn=t=>t.current_user_email;var On={getField:_t.rz,blocked_step:zn,current_user_email:Zn},Ln={updateField:_t.L4};const Wn={blocked_step:!1,current_user_email:window.wp_mail_smtp_vue.current_user_email};var Rn={namespaced:!0,state:Wn,actions:Dn,getters:On,mutations:Ln};const Qn=t=>{t.commit("INIT")},Un=t=>{t.commit("BLOCK_APP")},Nn=t=>{t.commit("UNBLOCK_APP")},Gn=t=>{t.commit("APP_LOADING_START")},Hn=t=>{t.commit("APP_LOADING_STOP")};var Yn={init:Qn,block:Un,unblock:Nn,start_loading:Gn,stop_loading:Hn};const Vn=t=>t.blocked,Kn=t=>t.loading,qn=t=>t.wpms;var Jn={blocked:Vn,loading:Kn,wpms:qn};const Xn=()=>{},jn=t=>{t.blocked=!0},$n=t=>{t.blocked=!1},to=t=>{t.loading=!0},eo=t=>{t.loading=!1};var so={INIT:Xn,BLOCK_APP:jn,UNBLOCK_APP:$n,APP_LOADING_START:to,APP_LOADING_STOP:eo};const io={blocked:!1,loading:!1,wpms:window.wp_mail_smtp_vue?window.wp_mail_smtp_vue:{}};var ao={namespaced:!0,state:io,actions:Yn,getters:Jn,mutations:so};const no=t=>{t.subscribe(((e,s)=>{if("$_app/INIT"===e.type){const e=s["$_app"].wpms.versions;let i="",a="";e.php_version_below_55?(i=(0,l.__)("Yikes! PHP Update Required","wp-mail-smtp"),a=(0,l.gB)((0,l.__)("WP Mail SMTP has detected that your site is running an outdated, insecure version of PHP (%1$s), which could be putting your site at risk for being hacked. WordPress stopped supporting your PHP version in April, 2019. Updating to the recommended version (PHP %2$s) only takes a few minutes and will make your website significantly faster and more secure.","wp-mail-smtp"),e.php_version,"7.4")):e.php_version_below_56?(i=(0,l.__)("Yikes! PHP Update Required","wp-mail-smtp"),a=(0,l.gB)((0,l.__)("WP Mail SMTP has detected that your site is running an outdated, insecure version of PHP (%1$s). Some mailers require at least PHP version 5.6. Updating to the recommended version (PHP %2$s) only takes a few minutes and will make your website significantly faster and more secure.","wp-mail-smtp"),e.php_version,"7.4")):e.wp_version_below_49&&(i=(0,l.__)("Yikes! WordPress Update Required","wp-mail-smtp"),a=(0,l.gB)((0,l.__)("WP Mail SMTP has detected that your site is running an outdated version of WordPress (%s). WP Mail SMTP requires at least WordPress version 4.9.","wp-mail-smtp"),e.wp_version)),qi.ZP.prototype.$swal&&i.length&&(t.dispatch("$_app/block"),qi.ZP.prototype.$swal.close(),qi.ZP.prototype.$swal({title:i,html:`

      ${a}

      ${(0,l.__)("Return to Plugin Settings","wp-mail-smtp")}

      `,customClass:{container:"wp-mail-smtp-swal wp-mail-smtp-swal-alert"},allowOutsideClick:!1,allowEscapeKey:!1,allowEnterKey:!1,showConfirmButton:!1,onOpen:function(){qi.ZP.prototype.$swal.hideLoading()}}))}}))};var oo=no;qi.ZP.use(at.ZP);const ro=[oo];var lo=new at.ZP.Store({modules:{$_app:ao,$_plugins:Aa,$_settings:Sn,$_wizard:Rn},plugins:ro}),po=s(6352),mo=(s(528),s(5482));const _o=document.getElementById("wp-mail-smtp-vue-setup-wizard");qi.ZP.config.productionTip=!1,s.p=window.wp_mail_smtp_vue.public_url,qi.ZP.use(mo.qK),qi.ZP.use(n.ZP),qi.ZP.use(Ji.Z),qi.ZP.use(po.ZP,{defaultTemplate:'',defaultArrowSelector:".wp-mail-smtp-tooltip-arrow, .wp-mail-smtp-tooltip__arrow",defaultInnerSelector:".wp-mail-smtp-tooltip-inner, .wp-mail-smtp-tooltip__inner"}),qi.ZP.use(ea),(0,l.l5)(window.wp_mail_smtp_vue.translations,"wp-mail-smtp");const co={install(t){t.prototype.$wizard_steps=[],t.prototype.$wpms&&t.prototype.$wpms.other_smtp_plugins.length>0&&t.prototype.$wizard_steps.push("import_step"),t.prototype.$wizard_steps.push("choose_mailer_step"),t.prototype.$wizard_steps.push("configure_mailer_step"),t.prototype.$wizard_steps.push("plugin_features_step"),t.prototype.$wpms&&t.prototype.$wpms.is_pro&&t.prototype.$wizard_steps.push("configure_email_logs_step"),t.prototype.$wpms&&!t.prototype.$wpms.is_pro&&t.prototype.$wizard_steps.push("help_improve_step"),t.prototype.$wizard_steps.push("license_step"),t.prototype.$wizard_steps.push("check_configuration_step")}};qi.ZP.use(co),qi.ZP.use(ia),new qi.ZP({store:lo,mounted:()=>{lo.dispatch("$_app/init")},render:t=>t(Ki)}).$mount(_o)},7630:function(t,e,s){var i={"./loading-blue.svg":7064,"./loading-white.svg":9438,"./loading.svg":7061};function a(t){var e=n(t);return s(e)}function n(t){if(!s.o(i,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return i[t]}a.keys=function(){return Object.keys(i)},a.resolve=n,t.exports=a,a.id=7630},5016:function(t,e,s){var i={"./amazonses.svg":7557,"./brevo.svg":2451,"./gmail.svg":7526,"./mailgun.svg":5567,"./outlook.svg":6703,"./postmark.svg":5699,"./sendgrid.svg":2763,"./sendlayer.svg":9857,"./smtp.svg":450,"./smtpcom.svg":7536,"./sparkpost.svg":2091,"./zoho.svg":9349};function a(t){var e=n(t);return s(e)}function n(t){if(!s.o(i,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return i[t]}a.keys=function(){return Object.keys(i)},a.resolve=n,t.exports=a,a.id=5016},833:function(t,e,s){var i={"./all-in-one-seo-pack@2x.png":5720,"./coming-soon@2x.png":6717,"./google-analytics-for-wordpress@2x.png":4166,"./insert-headers-and-footers@2x.png":2292,"./instagram-feed@2x.png":4545,"./rafflepress@2x.png":3025,"./wp-call-button@2x.png":3277};function a(t){var e=n(t);return s(e)}function n(t){if(!s.o(i,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return i[t]}a.keys=function(){return Object.keys(i)},a.resolve=n,t.exports=a,a.id=833},8517:function(t,e,s){var i={"./all-in-one-seo-pack.png":4444,"./all-in-one-seo-pack@2x.png":5720,"./coming-soon.png":7289,"./coming-soon@2x.png":6717,"./google-analytics-for-wordpress.png":2598,"./google-analytics-for-wordpress@2x.png":4166,"./insert-headers-and-footers.png":4694,"./insert-headers-and-footers@2x.png":2292,"./instagram-feed.png":9228,"./instagram-feed@2x.png":4545,"./rafflepress.png":6270,"./rafflepress@2x.png":3025,"./wp-call-button.png":7896,"./wp-call-button@2x.png":3277};function a(t){var e=n(t);return s(e)}function n(t){if(!s.o(i,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return i[t]}a.keys=function(){return Object.keys(i)},a.resolve=n,t.exports=a,a.id=8517},7064:function(t,e,s){"use strict";t.exports=s.p+"img/loading-blue.svg"},9438:function(t,e,s){"use strict";t.exports=s.p+"img/loading-white.svg"},7061:function(t,e,s){"use strict";t.exports=s.p+"img/loading.svg"},969:function(t,e,s){"use strict";t.exports=s.p+"img/loading-pattie.svg"},1122:function(t,e,s){"use strict";t.exports=s.p+"img/arrow.svg"},214:function(t,e,s){"use strict";t.exports=s.p+"img/gmail-sign-in-btn.svg"},5561:function(t,e,s){"use strict";t.exports=s.p+"img/check-circle-solid-white.svg"},2546:function(t,e,s){"use strict";t.exports=s.p+"img/check-circle-solid.svg"},7579:function(t,e,s){"use strict";t.exports=s.p+"img/check-solid.svg"},8098:function(t,e,s){"use strict";t.exports=s.p+"img/copy-solid.svg"},4186:function(t,e,s){"use strict";t.exports=s.p+"img/exclamation-circle-solid.svg"},2411:function(t,e,s){"use strict";t.exports=s.p+"img/info-circle-solid.svg"},4523:function(t,e,s){"use strict";t.exports=s.p+"img/lock-solid.svg"},9238:function(t,e,s){"use strict";t.exports=s.p+"img/long-arrow-alt-left-regular.svg"},7706:function(t,e,s){"use strict";t.exports=s.p+"img/long-arrow-alt-right-regular.svg"},1004:function(t,e,s){"use strict";t.exports=s.p+"img/question-circle-solid.svg"},3481:function(t,e,s){"use strict";t.exports=s.p+"img/star-solid.svg"},3531:function(t,e,s){"use strict";t.exports=s.p+"img/times-solid.svg"},6375:function(t,e,s){"use strict";t.exports=s.p+"img/logo.svg"},7557:function(t,e,s){"use strict";t.exports=s.p+"img/amazonses.svg"},2451:function(t,e,s){"use strict";t.exports=s.p+"img/brevo.svg"},7526:function(t,e,s){"use strict";t.exports=s.p+"img/gmail.svg"},5567:function(t,e,s){"use strict";t.exports=s.p+"img/mailgun.svg"},6703:function(t,e,s){"use strict";t.exports=s.p+"img/outlook.svg"},5699:function(t,e,s){"use strict";t.exports=s.p+"img/postmark.svg"},2763:function(t,e,s){"use strict";t.exports=s.p+"img/sendgrid.svg"},9857:function(t,e,s){"use strict";t.exports=s.p+"img/sendlayer.svg"},450:function(t,e,s){"use strict";t.exports=s.p+"img/smtp.svg"},7536:function(t,e,s){"use strict";t.exports=s.p+"img/smtpcom.svg"},2091:function(t,e,s){"use strict";t.exports=s.p+"img/sparkpost.svg"},9349:function(t,e,s){"use strict";t.exports=s.p+"img/zoho.svg"},330:function(t,e,s){"use strict";t.exports=s.p+"img/pro-badge.svg"},7764:function(t,e,s){"use strict";t.exports=s.p+"img/working.svg"},4444:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAABKdJREFUWIWtl11sFFUUx39ndqf0C0EhiKVluy01ARuoxMRo1CBBIqKRqNV2C4Sg8cGowQcViUFtFOmDCSYaE9SEqN0tluiDIRBBosYHQlBDowbSwu62fNTKh/JRSnd3jg9TdruzMzsN8H+79/zP+f/vzZ17zwgTRfNAGSWZh1FZCtoI3A6YwBRgECGBcghhD6R+oLPh/ETKii9j9dHZpAPrgVVA5QTtXgS2kTG2sH320Wsz0PxnCWZ5O8grQMkEhZ24gmgHZ9Ob2NVwZeIGVg7Mwcp8Ddx5jcJO9GClH6VrzoC/gdbkHRi6F2XmDRK/ipOotYxYXc/4SSOPsioRRvRHT3HlBOiHwBGXaA8q7wP9HgaqEGMXLX017gbWxEvJsAOY7lGgn3SggWh4HYb1ODAyLnaJACuIhTZQWTIXYdDbRPA7lvVOKjSQMt4CFnok2tzumssAfFV3BGUxIq+jvAbWYr6sjQOwtWoYJehZRVjAzcE3ckOASLIO9C9gklceoJRoOdvCI0U40NZ7E2r+V5QDV0DmEQ0ds3dAdb2POKhs9hUH6Gw4j8hmH9YkRNcBCKsGK8iMnAImOxR7QXqBeajEiIU2+IqPR1viXZSngB6ERpS5DsYFSkdmCa3JpxHd7ghmwKonWpd0L368mlEdprvmLGAf4FGrhmh9ryu/JV6LIX1AwLHIFQaG3ueS8runOICmOzDTL2fHo8ZjENjhye8KJ4CegnmRpQYqd7ukNNGWWOtZEEwQM1dITQTTnapCJPEisKAwxIIgaJVLVhDlc1qT1cRC7dnZRRqkKnk/yK2IpokklwBg0YhoBZHkElJl++mecTGbE0m2A296LCQUBKZ5rlM0/y2ojtdjGftAQQG01eZll7QHc/hJ4JtxWY2e9WGaQcHBuE6o431R26oHUgbg1Tgowt58ejDtayBgpPLGhuwCLA/2ZQPkmFsA1UforP04b3bKUD+QcuHnoNqXN+4MfYrqYuwmxQE5YqB6qLAIR4mFdxfMb70rBXQXkf+VhtmHC2Zj4Z9QCjsj0T8MRPcVBmgkEm9ylbCMV4FCERgCfY63Jbfda+KlAETiTQjzCzJUvxfWHp7MSOkgUO4InwZOAnMR/ZaKMyvHdgCaB27BtF4C3YD9DXxEMLOFL+rtXuD5gyYXpkcRngD6gBnAVEf9i6QCM8Zew8RnwLOuK86hi2goApI71W2JUygW0dpZecxIIga0+NT7hGjtC2P9QKYDv8MFLbT1Tfbh2O07POPDGkGCm+BqQxKt70XY4pN0Mq/Xbx4oQ5kCTB0TtWE3LfGilYQP6Kw+njMAYOpGYH+RtFJa+u1ru3mokmCmEygDyjGtGGsP27tjc4rt1EEqTr+T8zIeKxO3YXEAqPZIHgZ2Y7frYUesH/vFewiv5kY5gcgDREPZu8elLT82HzF2FjFxrfgb1UXEwnmfsFFAi9X1kEotBPn5Bor/RoB7nOLuBgC6G/7h3OhSRNuBS9chfBnhPc6l7s12zQ74/5w2x2diykZgNVAxQeF/EaIEMh3Zy8kD/gayRoYqKbm0HIwHQZtQwti3WxrkDOhx0AOI8Qujxs7sP4QP/gdLfYuNd8XCxgAAAABJRU5ErkJggg=="},5720:function(t){"use strict";t.exports="data:image/png;base64,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"},7289:function(t){"use strict";t.exports="data:image/png;base64,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"},6717:function(t){"use strict";t.exports="data:image/png;base64,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"},2598:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACPTkDJAAAJO0lEQVRYCY1Xa3AT1xX+VruSVm/Jkh8E22Cbh20CY9K0QHhYQGDAkCm0hB/pDIHpJM1k0tTpn7QznUD/tdMfmB9N25RJITOdTDrJ0AAFCrQYUhJIeJinAWOMjbGNLFmyLK2k3dVuz11ZtgUKkzOj3at7zr3nu+ece85Z4DtS6/qTm1qDp7xPE//5hhOtT+MX43HFJh+fa113aqbFiZ6MpHRwmnlz27GV96fKMGC6Qz1gNpuCqqqtbDu8pn0q/2lj09OYeZ7GK7vKK51YuLyiiRe1K60tx5vyPGPsVK9U1nqCbr8IXcfOPO+7vIsCKFBAp7OY+VetogCzxYT5i0rdDo/1DJNhluF4U3tVnbfa5jBD13SINiFYsH4K2GKAhGKTGtD2i5YTUU4SdsCWDbp8NkNMy+oGiNkLfK5r58MHVVmJVNb6PFZbbhsyP6x2AVJKDZJb7ut2ZbcOMGstLKaHzRUFwIFrql/o99y9EV2lKvoldnpGiqLDynMGiNoGb1V4KFVFJzZ46ZRqvE3EN+n6q3Cq7/jLHdVj0Ywx/22PogDAwcObeTQtLXPHhuUgU8woI9EJxZzXeCELrz9nGYOXzgHQsho8AVuTL2BHJq1AoH2eRgW3gPmOzN/Mcdyu2QtKvR4fD3YijXyryjpSkoq7t0JQUyaQDM1n4fRaUDbNAykpw2LlCaAAkym3JjyUwGgkQ4GptxLs021H1nY8DqYAwLsvn9Jr6r2wOwXaHCDzw+aYjNMvT3VBlnRSYIJF5IlHUU9xESh3w+GyQpE1pCUFLq8VUkIm8ASUNEpJBaPhFIpd0QIXON0WWmw2QGp0YqttEl9oYJQsoKCmrgI+v+vxgxj/mcmZJUS7mQ5hmZBhQZqMy1BjpicsUAAgPCShttFDwlnIGc0wv6ckJ5IYk1HfWEUbi6hudMM7XYRM/h68Q2buTxvKnG4rucBsBCmbYFZgYJhLGLW1r4wZgymPAgDkq9PEa2bmZ8SuHfuxOCirKEHDsgAWrayARZh0S3yFggfhJHouxNB7LjahnK1n11Jne5F4itxQjAoA5AXs5HcpCToNXSlSzmj51io0zPPlRSbebqsZdeUu6IuBQK0dVz4bgkrWY+T2ihNylCF7J/5MGTwBQCHfmy0cxcLk9ZmzyF9UeX4fUeDht1uBMmDGYi+6T4/gQaQT94Yvg/MkyQ12xOzx6YubN/wty+l7vmk/MhELjwHg2jVNa05LHEU5nX7cd/O+X5rXVfDWhiOQL15HNjQCW1MDUE4BOkfA/z78GLOfr8J7v2mF6HAhS8cnEoYHh7bv/dPe7bxm2nXuzOHfssnJY9KfRbO3BSuqHUHoHHiB8iHd9Yo6J+YUMb3a04942z4DgNr7EPqZrwFZxh+PHkXz+mXY9soWZGh7FqgaAfDZLJhXVYHmVc3o6R8M6pqlt7+vq+MxC1C6zehweiZxmWyTAccQG0RRKtRUQtz5FpYuXw6O8sJMXcDL4Ueo3vgiXlq3Co8SaUNxfglP1kx+fBDZQyfxq9d/gp923tqzOLiuvWB32qddzuRSan6hTJGs5K/F+KQupYxRlp5MeTabxZV4BJ9JMbS0rEVYyhQon9jrbi/0ZArDV65i0+aNbi7LbyqwAKXcWXnh/Ds1oqB/VEKNz5mfQmLfp+guceL3hz5laRaSJBk8c80MuH2UR+TCQzAmC9TuVd9D7dplaFy0EFrfAPb++cPghAVYHXA4rXsyEjvXJI30ShilJHQ3MoZ4JneX+cppqDrxNR503sbY2Bil7dy1szichvK/R77Bhtvv46tEz8RGWVVBim60h5Qz8nq90MF5DQuwlsru4v5RXuWyx6M58zKhsSilT0XD5ztvYP5L0zBnaYBNA0t+AN/Zi/iocgH2hnowpGSwtaQS+/v6DbaSzmXGzr6bqHNyqLHEEb5zDnWrXzP47PHw4SA99fsGAM2uttY0ls3OpMZT4LiY02dBlgqMr0zEzSOP4ApYMW1urg7E3twO56HjeLujFCYpjcycOjwzNoLb125gmWrFc/U/xALbdCpCIVQd/SUELYOeB4vRLzyPAOWM//7nDOnX241w//Hat/7tL7fyaar3kVAK5dPtBoTUmAIzFZKKGQ5YLDzunItg9vJxK5jNkJ+th/TiCiTXr0LomXokejy4ePM4mltaMN3uN/YQ7Q7oZit03oKRuS1I6Ty6egew/y97B86cPLCNY+32s4sDB2xUgkdHVPR1RVnfN24D4F5nDO4SKzz0S4zKcAdEuCtt8FSKMFtNiFEhCndLSAzLxpru0CVwlWHsePP1iT2mDiKhMP7a9j5mmJplqd8zV9A4LciUM6Ib9QRVz3Kj61oUcWosXD4rkhQXzGzxHgnx2JPRXlf2HLr7L+G9t9/Fuh9tRNXMGfSrxp0bt9Bx4QJuXOjEioZN8LumWa5GQh8I/jLbmqlabQ4LtVJZKkS5ZBQLp1HX6KPynEVWpR5hfJ4354rU1LX5MQNRWdKIW8dv4tjAWWjmJJyiC9d7vsR83xbcvSjDtwIwi8ILgkkwTWMLmf+ZgmIUj6bhof6PJ0Pl60MxualzVkEEA2Idm4XKOjdlLA59/feoyZ6OZEJC6GGSlfqEYHeYjRrLzM9yP+uKuq5GWTMpWaymXDTSzunxG2KmYGTVktFI6MmO97G6/yiTUZJSQql92BvGXHEruuLHMce7BiPUQ2TS2gGhuzMc0TW/n/mXtVzMBi6q40MPxv5AJy73BmxvsA+OBHVJeZLJRamEsp+s0UHfAbtZf5gn0U6NLOX9aCTz1e7PV7/A5t/ZeOJfLp/YkpDisAul1KRwCA9GUw7d/2tTSk5eu3a554ur5wdx+/oARf3wJ333wtRgZiI+v/0Nf5kDgQonXU0XWKvNyGhSOO4+dZwd+YaFNaVMhsmW0Bp/mX0J+3Ji8rsPr9mQiKg73Db/kUHlXPpu4gTi8vBrrEUT9LS6gxPFmJQaO6br6u8++OKVf25f8cl9yNqh6Ii4Iqtnt/gCDoQGYxDFyUaTbTyVFErTAw+S8Je66HakkIiqt5HmJnpAasn3kfy+hqYlrY+yHcFB+fJZtv7bQ5lxiX62+uB5XdNKeYF3q5oas1kdRr6lkNlH7A7KnW1MLi2nKnjOFKDiRI07whk1u2pf++YJAEymGP0f66rSztLaxrAAAAAASUVORK5CYII="},4166:function(t){"use strict";t.exports="data:image/png;base64,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"},4694:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAgCAMAAACrZuH4AAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAG/UExURQBm/wBl/wC//wBk/wBq/wBw/wBn/wBp/wBg/wBk/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBk/wBl/wBl/wBl/wBl/wBl/wBk/wBm/wBl/wBl/wBo/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBi/wBl/wBl/wBl/wBl/wBl/wBl/wBa/wBl/wBl/wBl/wBl/wBl/wBl/wBc/wBl/wBl/wBn/wBl/wBl/wBl/wBn/wBl/wBl/wBm/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBn/wBl/wBl/wBl/wBl/wBm/wBl/wBk/wBl/wBl/wBl/wBl/wBl/wBo/wBk/wBl/wBl/wBl/wBl/wBl/wBi/wBn/wBl/wBl/wBl/wBk/wBl/wBl/wBl/wBn/wBq/wBl/wBl/wBm/wBk/wBl/wBl/wBl/wBk/wBl/wBl/wBl/wBl/wBj/wBl/wBl/wBl/wBl/wBl/wBl/wBk/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBl/wBo/wBl/wBm/wBl/////4qMBKkAAACTdFJOUwAAAAAAAAAAAARd0fvUYQZQ5ehWrrXJytLq/s86Lr79b4DeKAmwmwM4+raj7PNKhb0VBWDBEhu5DAFc53NZ+fYB4CsIq/eCCuOeBDTmg1Lh9E1+C1vxxBQXfRLDd1PwbAIVxuItpO8EAWf1ogYv7moEAuntAwNl6xYUxXtOqQQFbuQwwB8QdBAq3/xUIZOtVQTTBeGbJwwAAAABYktHRJR/Z0oVAAAAB3RJTUUH5wgXEgAa2OsrGQAAAWJJREFUOMtj4OTi5pmMC/Dw8vEzCAhOxgeEhBlEJuMHogxiBFRwM4gTUCGBpkJSSAq/CmkZWTm8KuQVGBgU8apQUmZUUcWrQk2dQUNSU0tbB5cKXT1GJv3JBoZGxkI4VJiYMppJTza3YLS0ssaqQsqGkdHWbrK9ogqjg60gNhWOTszOLkDa1c2dkUXYA4sKTy9Gbx8Qw9VXhZHVzx9DRUAgI2MQhOnqG8zAFhKKriIsnDECxrGL5GSOikZTIRXDwBjrCuXExScwJiahqUhOYeRPhbLT4tMZMzKz0FRk5zDmQt2fl1/AUMhXhObSLAFm9hgIszizhLG0rBzdt0kVjJVVEBPKShi98vPQQ0yqmoOhJgDMrK1jrG9Iwwj1xibGek+IUHNLa1soZsyZtDN2dEKEusTlsrDEvk93Ty96CkVzaWij5mT8KnACCSJyVB8BFaIMNY14FVj3M0ywwlc6TDSeBAAsQvZl6HikOwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMy0wOC0yM1QxODowMDowMSswMDowMKDKy60AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjMtMDgtMjNUMTg6MDA6MDErMDA6MDDRl3MRAAAAKHRFWHRkYXRlOnRpbWVzdGFtcAAyMDIzLTA4LTIzVDE4OjAwOjI2KzAwOjAwAQBrPQAAAABJRU5ErkJggg=="},2292:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEEAAABACAMAAAByderSAAAB0VBMVEUAAAAAAP8AgP8AVf8AgP8AZv8AVf8Abf8AYP8AZv8AXf8AYv8Abf8AZv8AYP8Aaf8AY/8Aa/8AZv8AYf8AaP8AZP8Aav8AZv8AYv8AaP8AYf8AY/8AZP8AY/8AZf8AZv8AZ/8AZf8AY/8AZv8AZP8AZ/8AZf8AY/8AZf8AY/8AZv8AZ/8AZf8AZP8AZ/8AZP8AZv8AZP8AZ/8AZP8AZf8AZf8AZv8AZP8AZv8AZP8AZv8AZP8AZf8AZf8AZf8AZv8AZf8AZv8AZf8AZP8AZf8AZP8AZv8AZv8AZf8AZP8AZf8AZv8AZf8AZf8AZf8AZP8AZf8AZf8AZP8AZf8AZP8AZf8AZf8AZv8AZf8AZP8AZf8AZP8AZv8AZP8AZf8AZf8AZv8AZf8AZv8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZP8AZf8AZf8AZv8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZv8AZf8AZf8AZf8AZf8AZf8AZv8AZf8AZf8AZf8AZP8AZf8AZf8AZP8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf8AZf////+EMc0jAAAAmXRSTlMAAQIDBAUGBwgKCw0ODxAREhMUFRYXGBkaGx0fISQmKCorLC0uLzAxNTY3OTo9PkBBQkNFSU5QVFVcX2Fiam1ub3F0dXl6e31+f4GFhoiJjI6QkZOWl5iZmpudoKOlpqeorK2ur7Cxs7i5vb7CxMfIysvMzc7P0NHS1dbX2Nna297f4uPl5ufq6+zt7vDx8vP09fb3+vv8/f66JvsWAAAAAWJLR0SamN9nEgAAAl5JREFUWMPt19lXEzEUwOFfW8EFARGpKKioqLii1h0VXEDEBXfqLopWRYRa26IFd8UNEGql97/1IaOn25Dp5FHzNndyvjmZJDe5AOUd4Ukpvk1Fu6oAYMsncdu+BgDWTIj7ltwEDIhJG/axQcxaM4cNhU5OGQqXOGMoBP8F4VvaTIg2UnHZRJiuBzyPDYTrANoVN5uwFYAO98KoB4Cn7oVjAKxy/ydTfgDOuRfuAlA6JiITbasDg8ULuwDYKyIz24HS+8UK730APBSRGAAlfUUKXQAs/yUiYZWQS/uKEmbqAOgUEfm5djbCTngEgPetiIgkarAfiJ2wD4CA9TSy1CLuORa+zAXgzp/nhD1hI3QDUJX8G0io9YXvtkOhAYC2jIgtUVgYUL1jmbH4You45URoAaApOxizDuqSkF4YXwDAldykZxELx7RCDwDzx3PjzxcpolsrbATgQP6LSBkA+3VCXH3pSYHV4wWgRSe0ArAybQcQ1AhJNdqz+YBKnNRNaYSbas7yLlc9FlAZ1c3mDgD25IavWkOoGNKtqDeqZ8gGqAxrV3U7AP6UDfBMu7NStQC0Fwaq4/rd/QAAz+uC07hk2EGG2Q1Ac1bsmjULNS8cZLkPcwC4kRl7N08B/pdOMu1pNWPTmbFeBdSOOMn26RUAHMre1QAsG3V04vSrz0WyOx0E6l85O/WOALA+p1O69+iFSYcnr0pvFw1ugyGA6u8m98nz5TQOGt5Ii624gv/v9pZgXiWZVmonWGcobIN+IyDuhYZxk6q5CWDzR9fA550qHZQdH3JTvf+InKwEfgNIA2UV0Nw41AAAAABJRU5ErkJggg=="},9228:function(t){"use strict";t.exports="data:image/png;base64,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"},4545:function(t){"use strict";t.exports="data:image/png;base64,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"},6270:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACPTkDJAAAFG0lEQVRYCaVXa0xcRRQ+M/exsJTFUgOCpawGLU9taBuB1kdqjRQxwWhMQNPaNqExjTXGgk3sDxOLptb+ayRVafyDRVJfNAImPtpQCdSaKK8mDW1poU2BQq0sLNzde8e5d5m7d+5ddhc9f+acb86c883MnTNzEfwHCbz1dDnM+ZpxwJ/qu3NbE7wFfVKKZ4frva/7lhsOLWcASyyoSiobNzM6zFQQ8kv+XC6RuAgEP9j+Erkx3CQs+D1mNqqonlXgT3sAyK8tVhjE4i3Dck7hTml3wzmuI4IRlYAxY8X/FZeYaBDMzAGx5h1AuRthcnYehMnrILV+DKSnHWDuHzONTkR0iS9G25qIBEhFRnbgobU/ibN3c8xoNLHqLQCx9jBA2moT1gkwwbN3QW7/FEjbcZ5IybZO99nWanQG/ma+rHUQUOoqmvHUWA3GAvMBNTvPkZh1WgkwDFEiLp1IyxEGAVqVoUiPPP5+4oGmQyZIFZOAsdwz09/TtDJz0EQJ8JvHjKVmmL2NRID5GFtzbB+QgW4GAfbm3ZIzsp5l22IQUA+9Ug9X+g+jxVkTjQDZWgNCdZ05UO3rArX3R8AFJSCWVZq4lYD8eyfga4OgFZSCkldm+sgXOgE1vQswMRrC3B4il5bXJtY3fW4QCOxapwoYYWD7fLDZHKwrCwcqQRofASTSxVGDQN4+TomUGj6MgHB1AMT9W8xx6LEKmK//wrR1xdVKt+R06PtAqenznpPDiVjvMJLTVttYDqItebCxDuSpm6HkhrMIcO2irnEizM9wNulth8SOzzhs4WW6orsbDIxMjyfoCg68kLmZeaGsh5kabvu7wvqipkUgAOPXHX7Q84MDI+lrOAyrsryBQ2wGIsSGUJOuiEMmnAQijOSG+Z5JWmdsAYfaDHJ/uBTYujgTI/NAhfFCc3HDmEUjAronJgG8fqtlSEglk2NO7KrzHtK8hQ4/OxCbwLadALZtwEq4+rGAeDZcgg3M7QGFftSxJCYBPYDqzefi4AU/Z+uGZik2Rufzexw+kYC4CBj1n9YIUwR6FH3hsq6XXk702T9Xy0FLGTRSHEIvH3VTFQjdbaazureM7owGrgnniSD0rJOkFNM3mhLXCmiX+0Dt+oaLg+UEEFxuDmMGohVPHBlk5pJtcqfvDBYU5cKSHosdgYZXQdaXPV6hRUn4aEdc3lj69ua5aJ7aHz8vLzkLRknEswoxt0C7eJ6FNFr9ptSvabsIRZsApWVxMB78jbMjGRwBMnrJ6TMywGH4w9MgNPaCakkmV70OSUc6IPkTPqHjdNBIyHZnGASISqdFBZ/vgCDd76jiXmF0E8G5CvZxyFaeE04dBThx0HBDK9OMamZ8WcG01Uel22P7gT5IhJEhUGvXA6raC7hilz0mBPY9SY+YByT97C9+mMp3jaBe6QfNNjttsYKKQ90g0sSEvhkMSUwmUvFTb0DLZf5Jhnx32jAh5tTUlHsB0r0gXFr6oFj/C+xsSWUt4LkZIL+cNLtwdu4tOXMN/yQze6kSepTeoI9S7vOwunB6NAJWR5R6nyI9+sTSj1Krs/4sV9bmn5VmprOteCQ9JgG63GLuhjZ3T9trcT3LrUmMl/KC7xQtVklW3KpHIyAUbR6SVrir2QvYOo7pEV4RrCvc6r9m2ujwCTHgTw6jIS0SAT2xK694z//+NbMni0TESoD+nP5Ff063R5uxPWZcK2AfpG8NmfN9KQTmV/qmxlXhwaKB5SZmMf8F4cLeesegrcIAAAAASUVORK5CYII="},3025:function(t){"use strict";t.exports="data:image/png;base64,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"},7896:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACPTkDJAAADyklEQVRYCbVXa0hTURz/nW0+Ssc0zdIQDR+RFoGGFFkolYkUZCJYIfSgiB4U1Kc+mN8qUnp8KAjC3g+KRZRlKZSlZUGZZaa23maumWXTzW262zkrL9vuPdPpdi6Xc87/8fv/7rn3f87/EvxrJPFwVgEBWQQiBPyX+aUjEOxDdvLsfavxIk4+txEWJelI1iUavMgvETmggiDUBvYackhSedZyoiQ3OXZ+FdsFYbuCKJDp1ygewOnyz1cIBEEebESVJkgtjn01IARKlRyYSqFCalQS0qJnIS2G3tGpiJgYjr01h6BtqZJzGbNMQkBJ38nt4grEhU2TgG6euxrXW+5CoJevmsIdKFgVLBuc2U0Pj0Vm3Fx3l3HNJQTMg2bYBTsXtHhOPlc3FoWEAE0NdPf3cLEWxmcgTiN9PVyHERQSAsz+46+vXDeWt/kpy7h6bxWyBF7r27k4A4MWPPvWxNV7q5Al8LSjURany2jA2qs78fjLc1n9WISSNGQgDZSA0dIHdVCoiPnu5yes1+6BwcT/PkRjLwayK2AdsqGy7b4LTPgEDfptZheZLyayBBjwuSatSzpG0p1wa0axL2K6YHAJ6Ho+4057rYvxhrRCpMfMdpGNd8IlwIDL6k/CbBsQYygVShzL24dp6imibLwDjwQ6jXoHCecgkSGTcKagHDEcEjMnJ2JTehGi1VHObtyxMiI3PpdWQ/N4Fq/0rUiOmI7EiDjRRBOsRl5SNhq/v0FXn0GUs5W5UHgUixMWgG3ZMyIT0E2zhj0IpzWPSIA5Pvj4BPNj0zBVPVnECQmcSHfEHATQE72pq4X2AajIL0OsJsZhw3ZMRnpVSi6WJmTCZDWj7ecH0f//oJnQevAwXYFd7hr3OdsTTq08iDlTZ7qrwDaob/Qp02nt4KktrliDjj9dTibCZY/fgJOlY2Nap92Nal2ds9gxZiszUnDLoBX6vm6J76gJME8TzYgdlSXY//A42JngTXutb4PNPihx8YoA82a10OnGa1hxfiNq3teBltcSUDnBi+/NcmJ4TWAY5UtvJ7bdKkHB5S248fYeBmyeV+RFpzyBUWXBcFC53kCLl2q6EmdfavH2hw69FiMILXdDaZawzGDtz4ARBx6dgGXI6g7RLHsauluNZm6iB1WVrtZxD9urA0MQGhTi+ID7rKZhsUuvIgIscPyguch9MjFa+8FuXqP/JEMKWgPW8wz8LbcLaGDPTpKPZF+hfaG/Azrj0+ypE5QdS/4tfikUyWFZhTSjsunrGNWvmjOYN2MBxEaT+anut+EcSt9Y/wKYPTFLjUA+DAAAAABJRU5ErkJggg=="},3277:function(t){"use strict";t.exports="data:image/png;base64,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"},9515:function(t){"use strict";t.exports="data:image/png;base64,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"},5529:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAA8FBMVEUAAADHFsHHFsHHFsHHFsHHFsHHFsHGFsLHFsHHFsHuuu3////HDMHinODXc9PJHMPJHsPHE8Hut+zuue3+/P778/vrr+rnpuXOScjMQ8fstOvjmeDgpN3diNrck9jaftfRXczPU8rKMMTrx+npqufmouTYdtTUbtDTZc7SYM346vfx1+/nuuThld7cg9jWftLQWcvJK8TJJsPIIsLHD8HHBcH99/389fv57vn25PXz3vLu0O3tzuvov+bks+LendvZe9XUdNDMP8bKNcXy2/Hu1u3v0u3lteLjsOHejdvYidTXg9PLOsXiq9/hqN7gkd0zo4LZAAAACXRSTlMAsajs60tKB6cVFYoAAAACW0lEQVRYw+2XWXPaMBCA7YSErA024rS5be5wX4GQcJW0SZO0/f//ppKMJw4xtmS/9KHfEzOwn7Sr3WFWwFyJlxCAS/FKIEQvIDAXUSzA8SEM+P4QimtBhFCIgl/91NZLFc4TEcCDebX4kJFlDTw4K4hp5dpSJixj/ILJsHeflo/0gE8wb7107+QPMjqHYD7aPmbkT6TfgFGA3su1W/mUzBuwCVB5lZa/cPv8DdgEk8evZ/8okgZgFKxPEn/a7KcIgFnQcV7/fv1q0mAOwcYOXta2Gg3mFNAKLLq/O3BkavAJvqdXz8OEfbSBJ6DLJ2iZYDHTj83Q4xNQkOmYgD23QP/lnIAn4BWUF7KDuzavoCw7WQyBU3D4NIIPI+AVFJ0TYCDgFtSsCVht9irY8DUSntz16/sMbLhT2BpzCIYANv+SAMV8mXkIpoN6SvIj2WijM4JpQ2IiVTkjGEiMJDVXAarj73Ij1ZNEM49/VXIVxGj+qb7H/wHq5CRCwV1gX3AwAXe0wrHG8bOCKq1jVgEXzFKS3PBPxUuQACVLFLnq6VyS5DENAxRvAYytgwo6OGnX6dVaAH4CjF6gpSiZH8nHJUweF8dfQKnm6HlNFQiHn0n7eVgFoDatUnRw8pU8/ThCwCqgmPRYKa5YySs4nE9gJ26VYwzAL6ClJ5AHCSYAdZfHdUAQTEA5kJcPLKD8F/AIZrj1dPCnIkl9VwE0cMc3FT/IaOzcBe2UxEZ27C5AlSRbvAEUl6VLKxXifvR3Y6BEQq99oRfPkKvvDVm+b0LERwXCtRiBAETEaxz8F/cVtnqf0nH2AAAAAElFTkSuQmCC"},6557:function(t){"use strict";t.exports="data:image/png;base64,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"},5543:function(t){"use strict";t.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAABlmWCKAAALjklEQVR4Ad1ba2wU1xU+M7uzfmAMpODFCQ8H8IMCogpKGrVSZKlpEqQQF8jKNmlTaByaJuRHErUhIT+o8iNNU9oqTZSSKkU0kbEzsgNOIiW/CmklmkqOEI2KxdMYiL2AAdevxbsz0+/c2bter3dt78yujX2l2fs+93znnnPvuXdmFcpwsIgUSfL0+vWzZxcWLiFFWWYZxjqyrDJUVqB+IdIFsp2IFaXftKwu1LeRx3NSUZTWsKqeG4pEzi/T9f/JtqjHEJkLMWbdkpTAmcELmzeX+jRtF8q2gK4WpW0gZuZ5TPlEq0TEdfLhek+0MoxYN8PhV29vampDA67jH27rOghibqgwQ8xM+6ZNxbma9gxyP0K+DOUqZllF3kKsIE5vLMuy4vqaCvKgeQrPxxHTfHOxrl+SY7vhPz2m4kbiwTnbVVOzFMz9HMlf4CkE02YUuGPaTHdUsAVi0ybqx/h7VaJ3ihobz3JbDIai9IMjJhl867p13ttLS59QLetPAO0BaNYFR/TSZjuqHRC8Cbv65TenT7+9rrU14kQIaTPMMDs3by73aFo90qsB3DtpwBMlZQsiguKTEct67I7GxuPpCgFaNPEgwFdXb/d4vUeRXjul4Jlt1jieAKKVmqIcCVZX72AeJ45ogo0F0UBA61LVP2DMp6IDpCW8dJhy2NYU/Sxr/2Aw+HTJ4cM3J6IN40qLwbdXVubk+f1NkPgPp3zWx5KO2CjIwCT9fcgwqhbpOgvBFkyKfmPOIoOHM+PL9fs/APgHb2nwDNBehD3g+weax6O3b93qE9qbArzokqpOgocn1wzCD6HdmMJKRWcKy9nx+qffMNaTrodSmcNYoJTZc+b8Lqr245rKFAJNPjQ7YUTfC6rqm4hT8p9UADz7wZqabej49C2v9snh2+Zgb9E/A5aUu8MoyTD4K1u2rDAN49+Y/ULQTyqkVOPeguW8CPbhoHVvcWNjGwAD4nAYAY7BU2WlxzDNAwA/G81G1A93m1YpxlCgKkrzxUAgV2CMY38UwCt+/08gpTVQ/VF1cf2mV5IPY0TLNVWtS2Q8ZgIsmW+qqhZ58vJOoxF7VzNHADZqNoWIEg6vLGpqOidNYQRIT27u41HwMcHYfWfEL2P1ml6v9GQFKAGUZ//Sxo23eXNy2lB6G54RghEtZ8KP7Slet0yzYqGuX2UtiAHVNG3HjAbPE8ieoqLMxZXbrzjHRSrPPkvCUtWNXOA2gB5ZfEjLxuOWuWh/zHoVBQJexs6LHXVv2rRoyLIqIAiWkONhcPFJSn4+acuWgbIg7ZhWYkdraIjCZ8+SdfMmKWpMcRObjZ/HjoDJWdphmqVLiP7LXCoRn28nYIv0+BSSt4BdUf6DD1JBbS2peXnJG7ksNXt7qff992nwyBFSPPLONE2i0QNTjqY9j551yoVAIA8npyswgnxhI2nSE82hNb7Vq2nezp22QUkaLrRJkgBfsaRIg2Y3xglfuEC4EhuuSydlL4aDqmn61Tyvdyn6zgJ4h9Rg81DPvPvvHwmeGWIGnTIp+3MsQ1T18x/C4RQa5zLkRVS1TA2b5p2CkO0tOaMJZtRZs6JkLBr47DPq3rWLQl99BfwOhYB+bFaDX3xB3S+/LGLOc1ALcfnsRrCCCugoSinf3a9B3nSs/lFiImKmsBD2HTpEkY4OuvHaaxQ6fJisMN5tTFQQ3A5AebHrP3iQet56iyJQ974PPxS0XWmU5NXeDvl9xRoVDK8WApCVbmK2eSxOnvnzbRXVNOrZu5euv/46mYODNuXoLCYdJloXCQap+5VXqE/XsTRjbY5EyFtcLGi72aUSxjTZIVLBcmlChfMsBAB6VPDoo6TwTgDGebUe+vpruvrss2IWjatXh7VBakU0Dp8/Tz3vvkvdL75IkYsX7e2OaUDlC2pqbM/FOXeJPZnVO9kZmIMUZzITsFDlrF1L8/fsod4DB+jml1+SFQqRNTBAfU1N1N/SQr677qJcPJ6iImLfwbh0iUJHj9LQiRP29iZ3D2hQ3n330WyAV+fOtfljYWUoYB2Zy3v/YjyZE0CUOXXOHCp8CueObdto4PPPqb+5mawbN+B8qzR07BgNtbYK8DywBTUXZonYgqkoWFALqqoo/5FHSPH5MrI8RdkajuzjfpE3ijyzAojOoFipc3Jo1oYNlPfAAxSBiodPnRIzbXR2ktnfL8xBzc0l78KFpJWXk1ZRQVpJCanwKGP2LjVimH33KZum7Qq7p5aCgmQcMYP0lZWRDyBnPfyw6CC3yKSureybgnSmitkEJicwIAkqutrHgEu7lvWTwxGPYvEieAGslSHj0LlOk1uANeDTD3zyCYXPnRPbpVZaKsxEOFOTJwTck1pB/oDhBksiTRjOmgP8zePHqfuFF8RpsXD7diqsqxO7xNXnnqOh07iNG8tPcDZqql4WqWqPFwdL/uri7lStMl2uYC2YB9eWFzoZCrdupdx77hm5BcrKbMaKcsZrqiq/U/9xNseJ0YZ680Io3FlWdanu0AzfypV2XpbFOmUtwdp/wosDwX+gAXwm4G9ywFWWQzxwOVSyMlmXjVhsP/B9gJ0PmO1iDBfHYdgSmX199sxmg+F4mpgns6dHXLnFFztJ4/OeU2pfMNiBaQdF8fLACR3hrfERWIRsLmJwm3ny+j/9dNh8HHEsOvUZAwOnPH9sbzf7V636FtThuyh2fNlm4ARnXL9O2ooVwulxzlfynrxNmdeuUe9774nDVcyHSN587FJ8yQZ6+4qbm1v4GkjpCwTm93s8HRBvjpt1gC8smDHvokX20XVsNtKrxeyHccfAwRV4e60Lq4axaoGunxECgAlYndXVrVgDvwP6jrWAmeOZymbIwCrN10onuw1j7bd1Pcz3AbAqLGOW1ZgJxpnBbD6Z4BF4dYAX3xXK2bbUUOgdEL+Cx/VtYyaYzBINxnYtFAr9HrFQViEA1oL5LS19OL7uiVZkW5OzhG9MshLTn0sOHuxhzNxaaoDoqYbDH8Ag+PJONhblM+SHMQ3iy5e/xOOJCUBoQXNzF14bbUODsNhw41tO57Tt+UUggR3Fus6n39gExwTA+LjiH4bxEZLHsB3OnLUAXi4Qn7lmGPWJ8wjMIwMaKp1btizBa6N/oaYIzwghjWw9LXL8iX03bqfvLaqvj30ZIjkfBY61oLi+vgMa8Dw68sfIMXWRnaZNLHlXlJeSgWccowTAhSwE/4EDjYh3QxCRaSkE2+Nju3/D39CwjzExtsSQVADcCB3MItP8DeL6abkeYA1TTPNQxDB+zVgSgct8SgEIIej60BHDeALpRmiBfRSTPW/VmGcevGLZO3jEsmrwxXhoLFYhnLEDL4pooVyurd0H2rUgPnX/EBmbVSg5wLPJEn3kr6iopd27+YyfVPUlqTE1gBsxATxmUSTyJOJXox1TqpQkPAWxzZNl/XYwN/enyu7d5njgmUe0mXhgbcCHx7Xo8Qakjde1CJNxjSYGSvFjzzrPfhDXey8taGjYPxHgklpaAuBOLIQrgYDf9Hg+xqD8bQG/vOOqtGlxJxeBbZ2vxsJQ4zbDMDYkenkToT2uCSQSYekW6XoXztPfx8XEYxAIv1fgMJlmwc4NK98NPFuvGsbdTsAz065mjbUBi2MRXmY8jpl4BvT4TTOrI9+4uqIt6MT/2KqOIREsqxP3F2+HVHX/4oaGTp6U+KbppF0zyUJgBi4HAgUwiyfB3DaULQf+HDDCnqQ9RnpmItRbALFvqzmPDwSVc7h2+5sXdxcLWlp65djpAE5s61oA8QTBkEqVlerFBQv8PkWpwz1THSbujlgb+4CFZjHNk+NzGQe7Lu5TfQiyE4V/jXg8e7va2oL4h6iBThkzN8mAPXwGfsGs0AiO+e+1S8rLS/CvzuU4XJVDGBUwl6VoUcJDwVmZJyJFucZ5hPMAfB7fGbXxwgZP7uxl02znuzswCqu3adtNM/P7fzVZgkVauHi3AAAAAElFTkSuQmCC"},7445:function(t){"use strict";t.exports="data:image/png;base64,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"}},e={};function s(i){var a=e[i];if(void 0!==a)return a.exports;var n=e[i]={id:i,loaded:!1,exports:{}};return t[i].call(n.exports,n,n.exports,s),n.loaded=!0,n.exports}s.m=t,function(){var t=[];s.O=function(e,i,a,n){if(!i){var o=1/0;for(m=0;m=n)&&Object.keys(s.O).every((function(t){return s.O[t](i[l])}))?i.splice(l--,1):(r=!1,n0&&t[m-1][2]>n;m--)t[m]=t[m-1];t[m]=[i,a,n]}}(),function(){s.n=function(t){var e=t&&t.__esModule?function(){return t["default"]}:function(){return t};return s.d(e,{a:e}),e}}(),function(){s.d=function(t,e){for(var i in e)s.o(e,i)&&!s.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})}}(),function(){s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"===typeof window)return window}}()}(),function(){s.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)}}(),function(){s.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}}(),function(){s.nmd=function(t){return t.paths=[],t.children||(t.children=[]),t}}(),function(){s.p=""}(),function(){var t={32:0};s.O.j=function(e){return 0===t[e]};var e=function(e,i){var a,n,o=i[0],r=i[1],l=i[2],p=0;if(o.some((function(e){return 0!==t[e]}))){for(a in r)s.o(r,a)&&(s.m[a]=r[a]);if(l)var m=l(s)}for(e&&e(i);p**WP Mail SMTP Pro** unlocks even more powerful features like email logging, advanced email reporting and stats, backup connections, email alerts, smart conditional routing, and much more. +[**WP Mail SMTP Pro**](https://wpmailsmtp.com/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) unlocks even more powerful features like email logging, advanced email reporting and stats, backup connections, email alerts, smart conditional routing, and much more. + +https://www.youtube.com/watch?v=QYJuPyiKKZc #### What is SMTP? -SMTP (Simple Mail Transfer Protocol) is an industry standard for sending emails. Proper SMTP configuration helps increase email deliverability by using authentication. +SMTP (Simple Mail Transfer Protocol) is an industry-standard for sending emails. Proper SMTP configuration helps increase email deliverability by adding authentication to the emails sent from your site. -Popular email clients like Gmail, Yahoo, Office 365, and Zoho are in a constant battle with email spammers. One of the things they look at is if an email is originating from the location it claims to be originating from. +Popular email clients like Gmail, Yahoo, Office 365, and Zoho are in a constant battle with email spammers, so they check whether emails are originating from a genuine sender. If the proper authentication isn't there, emails either go in the SPAM folder or, worse, disappear. -If the proper authentication isn't there, then emails either go in the SPAM folder or worst, don't get delivered at all. +This is a problem for a lot of WordPress sites. By default, WordPress uses the PHP mail function to send emails generated by WordPress or any contact form plugin like [WPForms](https://wpforms.com/?utm_source=wprepo-wpmailsmtp&utm_medium=link&utm_campaign=liteplugin&utm_content=readme). -This is a problem for a lot of WordPress sites because by default, WordPress uses the PHP mail function to send emails generated by WordPress or any contact form plugin like WPForms. +But most [WordPress hosting companies](https://www.wpbeginner.com/wordpress-hosting/) don't have their servers properly configured for sending PHP emails. -The issue is that most WordPress hosting companies don't have their servers properly configured for sending PHP emails. - -The combination of two causes your WordPress emails to not get delivered. +This is why WordPress emails aren’t delivered. #### How does WP Mail SMTP work? -WP Mail SMTP plugin easily resolves email delivery problems by improving and changing how your WordPress site sends email. We reconfigure the `wp_mail()` function to either use proper SMTP host credentials or leverage a built-in SMTP mail provider. +WP Mail SMTP plugin easily resolves email delivery problems by changing the way your WordPress site sends email. We reconfigure the `wp_mail()` function to use proper SMTP host credentials or an SMTP mail provider. -When using one of our built-in SMTP mail provider integrations (recommended), emails are sent using the provider's direct API. This means even if your web host is blocking SMTP ports, your emails still send successfully. +With our built-in SMTP mail provider integrations (recommended), emails are sent using the provider's direct API. Even if your web host is blocking SMTP ports, your emails will still be sent successfully. -This helps you fix all WordPress not sending email issues. +This helps you fix all [WordPress not sending email](https://wpmailsmtp.com/wordpress-not-sending-email/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) issues. -WP Mail SMTP plugin includes many different SMTP setup options: +WP Mail SMTP plugin includes many different SMTP mailers: 1. SendLayer (#1 Recommended) 2. SMTP.com (Recommended) @@ -56,25 +56,163 @@ WP Mail SMTP plugin includes many different SMTP setup options: 6. Postmark SMTP 7. SparkPost SMTP 8. Gmail SMTP (Gmail, Google Workspace, G Suite) -9. Microsoft SMTP (Outlook.com and Office 365) [Pro] -10. Amazon SES SMTP [Pro] -11. Zoho Mail SMTP [Pro] -12. All Other SMTP +9. Microsoft SMTP (Outlook.com and Office 365) [[Pro]](https://wpmailsmtp.com/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) +10. Amazon SES SMTP [[Pro]](https://wpmailsmtp.com/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) +11. Zoho Mail SMTP [[Pro]](https://wpmailsmtp.com/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) +12. Other SMTP -For most options, you can specify the "from name" and "email address" for outgoing emails. +For most options, you can specify the "from name" and "email address" for outgoing emails too. -Instead of having users use different SMTP plugins and workflows for different SMTP providers, we decided to bring it all in one. This is what makes WP Mail SMTP, the best SMTP solution for WordPress. +All of these powerful features make WP Mail SMTP the best SMTP solution for WordPress. + +If you don't know which mailer to choose, see our [Complete Guide to WP Mail SMTP Mailers](https://wpmailsmtp.com/docs/a-complete-guide-to-wp-mail-smtp-mailers/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme). #### SendLayer SendLayer is our #1 recommended transactional email service. +Its affordable pricing and simple setup make it the perfect choice for sending emails from WordPress. It also has open and click tracking and email logs. + +SendLayer is reliable, fast, and easy to set up. You can send hundreds of emails for free when you sign up for a trial. + +Read our [SendLayer documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-sendlayer-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. + +#### SMTP.COM + +SMTP.com is a recommended transactional email service. + +With over 22 years of email delivery expertise, SMTP.com has a reputation for being one of the most reliable senders on the internet. + +You can start sending emails in minutes and benefit from 50,000 free emails in your first 30 days. + +Read our [SMTP.com documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-smtp-com-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. + +#### Brevo (formerly Sendinblue) SMTP + +Brevo is a recommended transactional email service. It serves 80,000+ companies worldwide. + +Brevo is reliable, fast, and gives you 300 free emails per day. + +Read our [Brevo documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-sendinblue-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. + +### WP Mail SMTP PRO + +In addition to native Microsoft, Amazon SES, and Zoho Mail integrations, WP Mail SMTP Pro provides access to many other powerful features. + +[Click here to purchase WP Mail SMTP Pro now!](https://wpmailsmtp.com/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) + +### Email Log + +Email logging is a powerful feature that keeps a record of all sent emails in WordPress. Email logging helps you to archive, audit, resend, or test email delivery and formatting. + +Our [WordPress email logs](https://wpmailsmtp.com/log-emails-wordpress/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) also include: + +#### Email Log Details + +Our email logs provide a complete history of all emails sent from WordPress. View the subject, sender, recipients, content, headers, open and click rates, delivery status, source plugin, and more! + +#### Resend Emails + +Resend emails individually or in bulk, whether they failed or were delivered successfully. You can also forward important emails to an alternative email address. + +#### And many more Email Log Features + +Store all email attachments, export email logs, print emails, see delivery status, and more. + +### Email Reports + +Review weekly sent and failed emails in a dashboard chart. + +Email reports make it easy to track deliverability and engagement. Open rates and click-through rates are grouped by subject line, making it easy to see the performance of your campaigns or notifications. + +#### Weekly Email Summary + +Get statistics about WordPress emails, including how many emails are being sent and which ones are being opened and clicked. The Summary also shows you deliverability statistics without the need to log in to WordPress to check them. + +#### Track Email Opens and Clicks + +[View open and click stats for WordPress emails](https://wpmailsmtp.com/enable-wordpress-email-tracking/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme), grouped by subject line in your Email Report. + +### Email Alerts + +If your emails stop sending, get notified instantly via Slack, SMS/ Twilio, webhooks, or email (via secure API). + +In combination with our email logging and resending features, Email Alerts ensure that no important email will ever be lost. + +### Backup Connection + +Configure an extra connection that kicks in if your primary connection fails. WP Mail SMTP automatically detects connection issues and automatically switches to the backup mailer. It will also automatically retry emails that failed. + +### Smart Conditional Routing + +Create criteria to send different types of emails using different mailers. Filter by the contents of the email Subject or Message, From or To addresses, the plugin that generated the email, and more. + +This allows you to mix transactional and marketing providers to improve deliverability. + +### Rate Limiting + +Control the number of emails your WordPress site sends in a specific amount of time so you stay within your SMTP provider’s rate limits. + +WP Mail SMTP allows you to specify the maximum number of emails that will be sent every minute, hour, day, week, or month and automatically queues emails to stay within those limits. + +### Optimized Email Sending + +Are emails slowing down your site? Let WP Mail SMTP queue your emails for better performance. + +With optimized sending, emails are queued in the background and sent when your server has sufficient resources, avoiding bottlenecks that can slow down your site. + +### Manage WordPress Emails and Notifications + +Control the default notifications WordPress sends. Use a simple switch to disable specific types of notifications if you don’t want to receive them. + +### WordPress Multisite + +#### WordPress Multisite Network Settings + +For users running a multisite network, save time with a centralized location to easily configure your SMTP settings for all sites. + +#### Manage Multisite Email Logs Easily + +Network Admins can view and manage email logs for subsites with easy switching and dashboard views. + +### Expert Support + +We provide [limited support](https://wordpress.org/support/topic/wp-mail-smtp-support-policy/) on the WordPress.org forums. World-class one-on-one email support is available to [WP Mail SMTP Pro](https://wpmailsmtp.com/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) users. + +#### White Glove Setup + +If you’re not sure how to fix your emails, sit back and relax. We’ll set up WP Mail SMTP for you! + +White Glove Setup includes installation, configuration in WordPress, DNS configuration, full mailer setup, and testing. White Glove Setup is available for our recommended mailers: SendLayer, Brevo, and SMTP.com. + +### Credits + +WP Mail SMTP plugin was originally created by Callum Macdonald. It is now owned and maintained by the team behind [WPForms](https://wpforms.com/?utm_source=wprepo-wpmailsmtp&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) - the best drag & drop form builder for WordPress. + +You can try the [free version of WPForms plugin](https://wordpress.org/plugins/wpforms-lite/) to see why it's the best in the market. + +== Installation == + +1. Install WP Mail SMTP by WPForms either via the WordPress.org plugin repository or by uploading the files to your server. (See instructions on [how to install a WordPress plugin](http://www.wpbeginner.com/beginners-guide/step-by-step-guide-to-install-a-wordpress-plugin-for-beginners/)) +2. Activate WP Mail SMTP by WPForms. +3. Navigate to the Settings area of WP Mail SMTP in the WordPress admin. +4. Choose your SMTP option (SMTP.com, Brevo (formerly Sendinblue), Mailgun SMTP, SendGrid SMTP, Postmark, SparkPost, Gmail SMTP, or Other SMTP) and follow the instructions to set it up. +5. Need more help? Get support with [WP Mail SMTP PRO](https://wpmailsmtp.com/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme). + +== Frequently Asked Questions == + += Which email providers does WP Mail SMTP support? = + +**SendLayer** + +SendLayer is our #1 recommended transactional email service. + Its affordable pricing and simple setup make it the perfect choice for sending emails from WordPress. It also has open and click tracking, email logs, and email list management. SendLayer is the best choice if you want a mailer that's reliable, fast, and easy to set up. You can send hundreds of emails for free when you sign up for a trial. -Read our SendLayer documentation for more details. +Read our [SendLayer documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-sendlayer-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### SMTP.COM +**SMTP.COM** SMTP.com is a recommended transactional email service. @@ -82,9 +220,9 @@ With over 22 years of email delivery expertise, SMTP.com has been around for alm Their easy integration process lets you start sending emails in minutes and benefit from years of experience. SMTP.com provides users 50,000 free emails the first 30 days. -Read our SMTP.com documentation for more details. +Read our [SMTP.com documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-smtp-com-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### Brevo (formerly Sendinblue) SMTP +**Brevo (formerly Sendinblue) SMTP** Brevo is a recommended transactional email service. @@ -92,65 +230,65 @@ They serve 80,000+ growing companies around the world and send over 30 million e Their email deliverability experts are constantly at work optimizing the reliability and speed of their SMTP infrastructure. Brevo provides users 300 free emails per day. -Read our Brevo documentation for more details. +Read our [Brevo documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-sendinblue-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### Mailgun SMTP +**Mailgun SMTP** Mailgun SMTP is a popular SMTP service provider that allows you to send large quantities of emails. They provide 5,000 free emails per month for 3 months. WP Mail SMTP plugin offers a native integration with MailGun. All you have to do is connect your Mailgun account, and you will improve your email deliverability. -Read our Mailgun documentation for more details. +Read our [Mailgun documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-mailgun-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### SendGrid SMTP +**SendGrid SMTP** SendGrid has a free SMTP plan that you can use to send up to 100 emails per day. With our native SendGrid SMTP integration, you can easily and securely set up SendGrid SMTP on your WordPress site. -Read our SendGrid documentation for more details. +Read our [SendGrid documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-sendgrid-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### Postmark SMTP +**Postmark SMTP** Send emails securely using your Postmark account with our API integration. You can sign up for a free trial without a credit card, which allows you to send up to 100 emails per month. -Read our Postmark documentation for more details. +Read our [Postmark documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-postmark-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### SparkPost SMTP +**SparkPost SMTP** SparkPost is a transactional email provider that's trusted by big brands and small businesses. It sends more than 4 trillion emails each year and reports 99.9% uptime. You can get started with the free test account that lets you send up to 500 emails per month. -Read our SparkPost documentation for more details. +Read our [SparkPost documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-sparkpost-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### Gmail SMTP (Gmail, Google Workspace, G Suite) +**Gmail SMTP (Gmail, Google Workspace, G Suite)** Often bloggers and small business owners don't want to use third-party SMTP services. Well you can use your Gmail or Google Workspace (also known as G Suite/Google Apps) account for SMTP emails. -This allows you to use your professional email address and improve email deliverability. +This allows you to use your [professional email address](http://www.wpbeginner.com/beginners-guide/how-to-setup-a-professional-email-address-with-gmail-and-google-apps/) and improve email deliverability. Unlike other Gmail SMTP plugins, our Gmail SMTP option uses OAuth to authenticate your Google account, keeping your login information 100% secure. Our plugin also offers the "One-Click Setup" option, which allows you to start sending emails from your Gmail account with just a few clicks. It eliminates the need to manually configure your own Google App, which is a technical and time-consuming process. -Read our Gmail documentation for more details. +Read our [Gmail documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-gmail-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### Microsoft SMTP (Outlook.com and Office 365) +**Microsoft SMTP (Outlook.com and Office 365)** Many businesses use Outlook.com or Microsoft 365 to power their email. Our Microsoft mailer integration allows you to use your existing Outlook.com or Microsoft 365 account to send emails from WordPress for better deliverability. -Read our Outlook and Microsoft 365 documentation for more details. +Read our [Outlook and Microsoft 365 documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-outlook-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### Amazon SES SMTP +**Amazon SES SMTP** Advanced or technical users can harness the power of Amazon AWS (Amazon Web Services) with the Amazon SES mailer. With this integration, you can send a high volume of emails at a very reasonable rate. -Read our Amazon SES documentation for more details. +Read our [Amazon SES documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-amazon-ses-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### Zoho Mail SMTP +**Zoho Mail SMTP** Send emails using your personal or business Zoho Mail account, all while keeping your login credentials safe. -Read our Zoho Mail documentation for more details. +Read our [Zoho Mail documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-zoho-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) for more details. -#### Other SMTP +**Other SMTP** WP Mail SMTP plugin also works with all major email services such as Gmail, Yahoo, Outlook, Microsoft Live, and any other email sending service that offers SMTP. @@ -162,9 +300,23 @@ You can set the following options: * Choose to use SMTP authentication or not. * Specify an SMTP username and password. -To see recommended settings for the popular services as well as troubleshooting tips, check out our SMTP documentation. +To see recommended settings for the popular services as well as troubleshooting tips, check out our [SMTP documentation](https://wpmailsmtp.com/docs/how-to-set-up-the-other-smtp-mailer-in-wp-mail-smtp/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme). -#### One-Click Migration += Can I use this plugin to send email via Gmail, G Suite, Outlook.com, Office 365, Hotmail, Yahoo, or AOL SMTP? = + +Yes! We have extensive documentation that covers setting up SMTP most popular email services. + +[Read our docs](https://wpmailsmtp.com/docs/a-complete-guide-to-wp-mail-smtp-mailers/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin&utm_content=readme) to see the correct SMTP settings for each service. + += Help! I need support or have an issue. = + +Please read [our support policy](https://wordpress.org/support/topic/wp-mail-smtp-support-policy/) for more information. + +Limited support is available for WP Mail SMTP users via WordPress.org support forums. + +Email support and set up assistance is available to WP Mail SMTP Pro users. + += How can I migrate from a different SMTP plugin to WP Mail SMTP? = Want to switch from your old SMTP plugin to WP Mail SMTP? We made it easy for you to migrate your SMTP settings in one click! @@ -178,107 +330,7 @@ Our one-click migration tool supports all of these plugins: - SMTP Mailer - WP SMTP -### WP Mail SMTP PRO - -In addition to native Microsoft, Amazon SES, and Zoho Mail integrations, WP Mail SMTP Pro provides access to many other powerful features and services. - -Click here to purchase WP Mail SMTP Pro now! - -### Email Log - -Email Logging lets you log and view all emails sent from your site. Email logs are helpful for storing emails for your records, auditing outgoing emails, and debugging during site development. - -But that's just the beginning. Our powerful WordPress email logs unlock extra tools to help you measure email engagement and improve email deliverability: - -#### Email Log Details - -Each Email Log entry includes a lot of useful information about the email, including the subject, sender, recipients (TO, CC and BCC), email content, email headers, open&click tracking stats, delivery status, which WordPress plugin sent the email, and more! - -#### Resend Emails - -You resend any email or forward it to one or more email addresses, right from your email log. From the overview page, you can also resend multiple emails in bulk. This is an awesome way to resend emails that failed or forward important emails to an alternative email address. - -#### Store Email Attachments - -WP Mail SMTP lets you store all of the email attachments that are sent from your WordPress site. That makes it easy to review an attachment or archive it locally. - -#### Export Email Logs - -Easily export your WordPress email logs to CSV, EML, or Excel. You can filter the email logs before you export and only download the data you need. This feature lets you easily create your own deliverability reports. You can also use the data in 3rd party dashboards to track deliverability along with your other website statistics. - -#### Print Emails - -Once you've activated email logging, any individual log file can be printed in an easy-to-read format. If you want to archive an email log digitally, it's easy to export it to a PDF document too. - -### Email Reports - -Email reports make it easy to track deliverability and engagement at-a-glance. Your open and click-through rates are grouped by subject line, making it easy to review the performance of campaigns or notifications. The report also displays Sent and Failed emails each week so you can spot any issues quickly. You'll also see an email report chart right in your WordPress dashboard. - -#### Weekly Email Summary - -Get statistics about WordPress emails sent directly into your inbox. Our weekly emails reveal how many emails are being sent from your WordPress site, and which ones are getting opens and clicks. The Summary also shows you deliverability statistics at-a-glance so you can spot any issues without logging into WordPress. - -#### Track Email Opens and Clicks - -Wondering if your important emails were actually opened, or if any links in the email were clicked? Our email log allows you view open and click tracking stats for your WordPress emails and our Email Reports feature groups these stats by subject, so you can analyze their performance. - -### Email Alerts - -Get instantly notified about failed emails! If your site's mailer or SMTP service stops sending your emails, you'll immediately receive a notification. Choose from several helpful alert methods, including: - -- Email Notifications -- Slack Notifications -- SMS/Twilio Notifications -- Webhook Notifications - -In combination with Email Logging and Email Resend, Email Alerts let you ensure that no important email will ever be lost. - -### Backup Connection - -WP Mail SMTP Pro allows you to configure multiple mailer providers. The main configuration will be your Primary Connection, and you can set another as your Backup Connection. -If an email fails to send via your Primary Connection, WP Mail SMTP will automatically route it through your Backup Connection and try to send it again. This means fewer missed emails, even when something goes wrong. - -### Smart Conditional Routing - -Smart Routing enables you to send emails through different mailer providers based on custom criteria. Easily configure your Smart Routing conditions using dozens of pre-determined options, including the contents of the email Subject or Message, From or To addresses, or which plugin initiated the email, just to name a few. - -Using Smart Routing lets you choose the best mailer for each type of email you send. Select a transactional mailer to send out your eCommerce order confirmations, another mailer for your newsletter and marketing emails, and more! - -Selecting the best mailer for each type of email you need to send will improve your overall deliverability and make sure your emails arrive in users' inboxes. - -### Manage WordPress Emails and Notifications - -The Manage Notification feature gives you full control over which email notifications WordPress sends. This means you can disable different WordPress notification emails. Don't want to receive emails when new users are created? No problem, turn it off. - -### WordPress Multisite - -#### WordPress Multisite Network Settings - -For users running a multisite network, our network settings provide a centralized location to easily configure your SMTP settings for all sites, saving you time. - -#### Manage Multisite Email Logs Easily - -WP Mail SMTP makes it easy for Network Admins to view and manage email logs for subsites. You can access all of your deliverability information from the Network Admin dashboard and quickly switch between subsites. That makes it easy to review email logging data for all subsites on one centralized page. - -### Expert Support - -We provide limited support for the WP Mail SMTP plugin on the WordPress.org forums. Access to our world class one-on-one email support is available to WP Mail SMTP Pro users. - -#### White Glove Setup - -Our White Glove Setup service is a great option that anyone can benefit from. Whether you don't have the time or maybe you feel a bit in over your head - we've got you covered. - -You can sit back and relax while we set up everything for you. White glove setup includes WP Mail SMTP plugin installation and setup, configuration adjustments to your DNS for proper email domain name verification, SMTP.com or Mailgun setup, and final testing to confirm everything is passing with flying colors. - -### Security - -The WP Mail SMTP team takes security very seriously. Not only does the plugin follow all security best practices, but we have several options available to ensure your site is safe and secure. - -- Direct SMTP mailer integrations (recommended), such as SMTP.com, Brevo (formerly Sendinblue), Mailgun, SendGrid, Postmark and SparkPost, use the official provider APIs. This means you never enter your username or password in the plugin settings and these credentials are not stored in the database. Instead, we use tokens or API keys which are much more secure. - -- When using Other SMTP mailer, we provide the option to insert your password in your `wp-config.php` file, so it's not visible in your WordPress settings or saved in the database. - -### Languages += Is WP Mail SMTP available in other languages? = We know that majority of people do not speak English, so we professionally translated WP Mail SMTP and WP Mail SMTP Pro into the following languages: @@ -293,71 +345,24 @@ We know that majority of people do not speak English, so we professionally trans - Russian, - Turkish -If you have one of these languages configured in your WordPress admin area, then WP Mail SMTP's user interface will use that language as well. += How can I increase plugin security? = -### Credits +The WP Mail SMTP team takes security very seriously. Not only does the plugin follow all security best practices, but we have several options available to ensure your site is safe and secure. -WP Mail SMTP plugin was originally created by Callum Macdonald. It is now owned and maintained by the team behind WPForms - the best drag & drop form builder for WordPress. +- Direct SMTP mailer integrations (recommended), such as SendLayer, SMTP.com, Brevo (formerly Sendinblue), Mailgun, SendGrid, Postmark and SparkPost, use the official provider APIs. This means you never enter your username or password in the plugin settings and these credentials are not stored in the database. Instead, we use tokens or API keys which are much more secure. -You can try the free version of WPForms plugin to see why it's the best in the market. - -### What's Next - -If you like our WP Mail SMTP plugin, then consider checking out our other projects: - -* OptinMonster - Get more email subscribers with the most popular conversion optimization plugin for WordPress. -* WPForms - #1 drag & drop online form builder for WordPress (trusted by 5 million sites). -* AIOSEO - The original WordPress SEO plugin to help you rank higher in search results (trusted by over 3 million sites). -* MonsterInsights - See the stats that matter and grow your business with confidence. Best Google Analytics plugin for WordPress. -* SeedProd - Create beautiful landing pages with our powerful drag & drop landing page builder. -* Smash Balloon - #1 social feeds plugin for WordPress - display social media content in WordPress without code. -* WPCode - must have WordPress code snippet management plugin to help you future-proof website customization (trusted by 1.5 million sites). -* Duplicator - popular WordPress backup and migration plugin used by over 1 million websites. -* WP Simple Pay - #1 Stripe payments plugin for WordPress. Start accepting one-time or recurring payments without a shopping cart. -* PushEngage - Connect with visitors after they leave your website with the leading web push notification plugin. -* RafflePress - Best WordPress giveaway and contest plugin to grow traffic and social followers. -* TrustPulse - Add real-time social proof notifications to boost your store conversions by up to 15%. -* SearchWP - The most advanced custom WordPress search plugin to improve WordPress search quality. -* AffiliateWP - #1 affiliate management plugin for WordPress. Add a referral program to your online store. -* Easy Digital Downloads - The best WordPress eCommerce plugin to sell digital products (eBooks, software, music, and more). -* WPCharitable - Top-rated WordPress donation and fundraising plugin for WordPress. - -Visit WPBeginner to learn from our WordPress Tutorials and about the best WordPress plugins. - -== Installation == - -1. Install WP Mail SMTP by WPForms either via the WordPress.org plugin repository or by uploading the files to your server. (See instructions on how to install a WordPress plugin) -2. Activate WP Mail SMTP by WPForms. -3. Navigate to the Settings area of WP Mail SMTP in the WordPress admin. -4. Choose your SMTP option (SMTP.com, Brevo (formerly Sendinblue), Mailgun SMTP, SendGrid SMTP, Postmark, SparkPost, Gmail SMTP, or Other SMTP) and follow the instructions to set it up. -5. Need more help? Get support with WP Mail SMTP PRO. - -== Frequently Asked Questions == - -= Can I use this plugin to send email via Gmail, G Suite, Outlook.com, Office 365, Hotmail, Yahoo, or AOL SMTP? = - -Yes! We have extensive documentation that covers setting up SMTP most popular email services. - -Read our docs to see the correct SMTP settings for each service. - -= Help! I need support or have an issue. = - -Please read our support policy for more information. - -Limited support is available for WP Mail SMTP users via WordPress.org support forums. - -Email support and set up assistance is available to WP Mail SMTP Pro users. +- When using Other SMTP mailer, we provide the option to insert your password in your `wp-config.php` file, so it's not visible in your WordPress settings or saved in the database. = I found a bug, now what? = -If you've stumbled upon a bug, the best place to report it is in the WP Mail SMTP GitHub repository. GitHub is where the plugin is actively developed, and posting there will get your issue quickly seen by our developers (myself and Slava). Once posted, we'll review your bug report and triage the bug. When creating an issue, the more details you can add to your report, the faster the bug can be solved. +If you've stumbled upon a bug, the best place to report it is in the [WP Mail SMTP GitHub repository](https://github.com/awesomemotive/wp-mail-smtp). GitHub is where the plugin is actively developed, and posting there will get your issue quickly seen by our developers (myself and Slava). Once posted, we'll review your bug report and triage the bug. When creating an issue, the more details you can add to your report, the faster the bug can be solved. = Can you add feature x, y or z to the plugin? = Short answer: maybe. By all means please contact us to discuss features or options you'd like to see added to the plugin. We can't guarantee to add all of them, but we will consider all sensible requests. We can be contacted here: -https://wpmailsmtp.com/contact/ +[https://wpmailsmtp.com/contact/](https://wpmailsmtp.com/contact/). == Screenshots == @@ -380,6 +385,12 @@ By all means please contact us to discuss features or options you'd like to see == Changelog == += 4.0.1 - 2024-02-29 = +- Added: Optimized Email Sending - move email sending requests in the background process and speed up your site. +- Added: Automatic database table structure migrations after plugin update. +- Changed: Improved error handling when sending emails. +- Fixed: Database error while adding debug events if the `wpmailsmtp_debug_events` table does not exist. + = 3.11.1 - 2024-01-22 = - Fixed: Setup Wizard texts. - Fixed: Compatibility for List-Unsubscribe header. @@ -509,294 +520,3 @@ By all means please contact us to discuss features or options you'd like to see - Changed: Updated Action Scheduler library to 3.2.1. - Fixed: WP core admin spinner for the dashboard widget. - Fixed: PHP error when objects implementing `__invoke()` method were used as hook callbacks for admin notices. - -= 2.9.0 - 2021-06-24 = -* Added: Action Scheduler table to the Tools page. -* Added: Dashboard Widget with total emails sent counter. -* Changed: Notifications design. -* Changed: Sodium Compat library loading improved. -* Fixed: Plugin conflict with plugins that populate $_POST data (Ultimate Addons for Elementor, WishList Member, ...). -* Fixed: Sendinblue WooCommerce Email Marketing plugin conflict admin notice display. -* Fixed: jQuery deprecated notices. -* Fixed: Action Scheduler library loading issue. -* Fixed: Canceled Setup Wizard's OAuth authorization redirecting to the Setup Wizard when connecting via regular plugin settings. -* Fixed: Meta DB table not existing error notices on a WP Multisite subsite. - -= 2.8.0 - 2021-05-06 = -* Added: WP Site Health status check for the sending domain. -* Added: WP Mail SMTP WordPress admin menu position filter hook. -* Changed: Moved the Email Test tab to the new WP Mail SMTP > Tools page. -* Changed: Updated the list of conflicting plugins. -* Fixed: Removed the empty admin dashboard menu item for the Setup Wizard. -* Fixed: The Setup Wizard conflicting issue with Admin 2020 plugin. -* Fixed: The plugin settings pages not opening when WishList Member plugin was active. - -= 2.7.0 - 2021-03-25 = -* IMPORTANT: Support for PHP 5.5 has been discontinued. If you are running that version, you MUST upgrade PHP before installing or upgrading to WP Mail SMTP v2.7. Failure to do that will disable WP Mail SMTP functionality. -* Changed: Updated About us plugin page. -* Changed: Improved Domain Check Results section in Email Test tab. -* Changed: Allow the use of different Gmail aliases as From Email address by disabling the Force From Email setting. -* Changed: The Setup Wizard can now be launched via a button in the plugin settings. The Setup Wizard admin dashboard menu item was removed. -* Fixed: WP Multisite subsite admins couldn't remove oAuth connections (in the Gmail mailer). - -= 2.6.0 - 2021-02-04 = -* Added: New plugin Setup Wizard. -* Added: SendGrid Invalid API key error message and mitigation steps on the Email Test page. -* Fixed: PHP 8 support. - -= 2.5.1 - 2020-10-28 = -* Fixed: The automatic updates issue with Gmail mailer token refresh. -* Fixed: The 'wp-amil-smtp' typo in a plugin text-domain and a HTML class. - -= 2.5.0 - 2020-10-22 = -* Added: Other SMTP mailer password encryption/decryption. -* Changed: Gmail mailer suggested steps for `invalid_grant` error on the Settings > Email Test page. -* Changed: Gmail mailer redirect URI was changed to fix issues with `mod_security` or redirect blocking plugins/solutions. -* Fixed: Plugin options re-saving with unescaped magic quote characters. -* Fixed: SMTP.com mailer email delivery for certain SMTP servers if attachment's encoded string is too long. - -= 2.4.0 - 2020-09-17 = -* Added: Prefix all 3rd-party libraries to avoid compatibility issues with other plugins using different versions of the same libraries. -* Changed: Sendinblue SDK library version to 6.4. -* Changed: Google apiclient library version to 2.7. -* Changed: Improve plugin settings input and toggle focus states. -* Fixed: Hide admin bar menu when errors are present and the "Hide Email Delivery Errors" setting is enabled. -* Fixed: CSS sourcemaps warning messages in browser dev tools. -* Fixed: Action Scheduler tasks being registered too early and not getting assigned to the plugin group. -* Fixed: Admin bar CSS asset loading when the admin bar is not showing. -* Fixed: Fatal error on plugin uninstall if `ActionScheduler_QueueRunner::unhook_dispatch_async_request` method does not exist. -* Fixed: PHP Deprecated notice for `base_convert()` function usage in the Mailgun mailer. - -= 2.3.1 - 2020-08-20 = -* Added: A WP Mail SMTP admin bar menu if there is an email delivery error or notifications. -* Added: WordPress 5.5 compatibility. -* Changed: Improve copy button user experience for Gmail Authorized redirect URI option. -* Changed: Email delivery error admin notices are now displayed only on plugin pages. -* Changed: Improve plugin settings UI by hiding certain options if the mailer does not support them. -* Changed: Pepipost API mailer is no longer available for new installs. -* Fixed: WP Site Health check for missing DB tables. -* Fixed: PHP errors caused by Actions Scheduler library used inside the plugin. -* Fixed: PHP error on plugin settings and WP Site Health pages if the plugin mailer option is empty for some reason. - -= 2.2.1 - 2020-07-09 = -* Added: Gmail mailer now supports aliases. -* Added: Support both old PHPMailer v5 (WordPress <=5.4) and PHPMailer v6 (WordPress >=5.5). -* Changed: Pepipost mailer is now using the native API v5 instead of the SendGrid migration API. -* Fixed: Incorrect Mailgun Domain Name option was not showing an email delivery error. -* Fixed: Empty debug errors for the Sendinblue mailer are no more. -* Fixed: Properly compare From Email option value with a correct default email address from WP core. - -= 2.1.1 - 2020-06-08 = -* Changed: Remove current automatic default reply-to address and add WP filter `wp_mail_smtp_processor_set_default_reply_to` for setting default reply-to addresses. -* Changed: Improve description for several options with links to an article about how to properly use constants. -* Fixed: PHP parse error connected to Monolog library on PHP versions < 7.x. - -= 2.1.0 - 2020-06-04 = -* Added: Async/scheduled tasks management support. -* Added: New warning notification for selecting the "Default (none)" mailer and saving the plugin settings. -* Changed: Set the original From Email as Reply-To address if it was overwritten by the Force From Email option. -* Changed: The Force From Email option is now enabled by default, for new plugin installs. -* Changed: Reply-To header is now set when not provided, equals to From Name/Email. -* Fixed: Display a non-empty PHPMailer error when some non-SMTP mailers generate errors. -* Fixed: Display a more accurate message, when the "channel - not found" error is triggered by SMTP.com API. -* Fixed: Save and display debug errors for the "Other SMTP" mailer. -* Fixed: Improve the debug details for the "Invalid address (setFrom)" error in the Email Test tab. -* Fixed: Improve the debug details for SMTP CA verification fail, Gmail Guzzle requirements, and Gmail invalid grant errors. -* Fixed: Improve the uninstall cleanup procedure. - -= 2.0.1 - 2020-05-07 = -* Changed: Improved description of the "Do Not Send" plugin option. -* Fixed: Due to Pepipost API changes we now convert new lines so they are preserved in plain text emails. -* Fixed: Downgrade internal Guzzle dependency to 6.4 to temporarily fix compatibility issues with WordPress and Guzzle 6.5. Affects Gmail mailer. - -= 2.0.0 - 2020-04-27 = -* IMPORTANT: Support for PHP 5.2-5.4 has been discontinued. If you are running one of those versions, you MUST upgrade PHP before installing or upgrading to WP Mail SMTP v2.0. Failure to do that will disable WP Mail SMTP functionality. -* Added: new mailer - SMTP.com integration. -* Changed: Plugin filters that change the FROM Name/Email in emails are now always running last. -* Fixed: `false` value of the `WPMS_SMTP_AUTH`/`WPMS_SMTP_AUTOTLS` constants was not properly handled in UI. -* Fixed: various minor code and internal links improvements. - -= 1.9.0 - 2020-03-23 = -* Added: Add various Status tests and Info section on Tools > Site Health page. -* Added: Notify admin if there are unsaved changes in plugin admin area options. -* Fixed: Test email now has a proper bottom margin for better look. -* Changed: Update "About us" plugin page with relevant information. -* Changed: Save default WordPress FROM Email address when incorrect FROM Email address is saved by a user. - -= 1.8.1 - 2019-12-13 = -* Fixed: Revert Guzzle version to 6.4.1 because Sendinblue and Gmail mailers may experience issues under certain circumstances while sending emails (not all sites are affected). -* Fixed: Make compatible the WordPress PhpMailer class inline attachments management with the Sendgrid API. - -= 1.8.0 - 2019-12-12 = -* Added: New recommended mailer: Pepipost. -* Added: "Suggest a Mailer" link in a list of mailers to send us your ideas about new ones. -* Fixed: Sendgrid: Content ID for attachments missing. -* Changed: Timeout to HTTP requests (pepipost, sendgrid, mailgun), same as max_execution_time, to prevent fails when sending emails with big attachments. - -= 1.7.1 - 2019-11-11 = -* Fixed: Compatibility with WordPress 5.3. -* Fixed: `Processor::get_default_email()` always returns empty value when server incorrectly configured. - -= 1.7.0 - 2019-10-24 = -* Added: Add a new constant `WPMS_DO_NOT_SEND` to block email sending. -* Fixed: Default email (wordpress@example.com) rewriting in CLI mode. -* Fixed: Incorrect conflicts detection with certain plugins. -* Fixed: various typos in plugin settings. - -= 1.6.2 - 2019-09-02 = -* Fixed: Race condition when loading with certain plugins, that send emails very early. Makes email delivery more reliable. - -= 1.6.0 - 2019-08-21 = -* Added: New transactional mailer: Sendinblue. -* Added: Educate users to use transactional mailers for better deliverability. -* Added: New option and filter to disable admin area delivery error notices. -* Changed: Hide private API key saved in the DB for API based mailers using `input[type=password]`. -* Changed: Update links to various docs, pointing now to https://wpmailsmtp.com. - -= 1.5.2 - 2019-07-18 = -* Fixed: "Redirect URI mismatch" error for "Gmail" mailer when trying to re-authorize an account that was initially created with version < v1.5.0. -* Changed: Make "Authentication" setting in "Other SMTP" mailer ON by default for new users. -* Changed: Mailers docs links now point to wpmailsmtp.com own site. - -= 1.5.1 - 2019-07-12 = -* Fixed: Duplicated emails sent to the first recipient in a loop (and others not receiving their emails). - -= 1.5.0 - 2019-07-09 = -* Added: Loсo plugin support. -* Added: "About us" admin area page. -* Added: Display in debug output a possible conflicting plugin existence. -* Added: Lots of actions and filters to improve flexibility of the plugin. -* Changed: Plugin menu is now top level. -* Changed: Hide secrets/API keys in page DOM in plugin admin area. -* Changed: Do not save constant values into the database when plugin settings are saved. -* Changed: Lots of i18n improvements to support translation for both free and paid version of the plugin. -* Changed: Gmail mailer - allow to change From Name email header. -* Changed: Gmail mailer - display email used to create a connection. -* Changed: WordPress 4.9 is the minimum WordPress version we support. -* Fixed: X-Mailer header should be present in all emails. -* Fixed: PHP notices when migrating under certain circumstances from 0.x version of the plugin. -* Fixed: Options::get_group() now supports values set via constants. - -= 1.4.2 - 2019-03-23 = -* Changed: Tested up to WordPress 5.1.x. -* Changed: Removed TGMPA library. - -= 1.4.1 - 2018-12-03 = -* Fixed: correctly process backslashes in SMTP passwords defined via constants. -* Changed: allow to send a Test Email when Default (none) mailer is selected in plugin settings. - -= 1.4.0 - 2018-11-29 = -* Added: New option: Do Not Send - block emails from being sent. -* Added: New option: Send HTML or plain text emails when doing an Email Test. -* Added: New option: Mailgun region selection - US and EU (US is default to preserve compatibility). -* Fixed: Compatibility with WordPress 3.6+. -* Fixed: Compatibility with WordPress 5.0. -* Fixed: Constants usage is much more reliable now, works correctly on Multisite. Constants are global accross the whole network. -* Fixed: Preserve multipart emails when using Sendgrid/Mailgun mailers (were converted to HTML-only). -* Fixed: Security hardening. -* Changed: Prefill Email Test page From field with currently logged in user email. -* Changed: Update libraries: google/apiclient-services, google/auth, phpseclib/phpseclib and their dependecies. -* Changed: Display in debug output cURL version if Gmail mailing failed. -* Changed: Display in debug output OpenSSL version if it exists if Gmail/SMTP mailing failed. -* Changed: Display plugin version in dashboard error notice when emailing failed. -* Changed: Do not allow to send Test Email if mailer not configured properly. -* Changed: Notify in plugin admin area that Gmail doesn't allow to redefine From Name/Email etc. -* Changed: List all constants with descriptions in plugin main file: wp_mail_smtp.php. -* Changed: TGMPA: change descriptions from "Required" to "Recommended" (labels were incorrect). - -= 1.3.3 - 2018-07-05 = -* Fixed: Compatibility with other plugins, that are using Google Service or Google Client classes. -* Changed: Optimize code loading. - -= 1.3.2 - 2018-06-29 = -* Make sure that other plugins/themes are not conflicting with our TGMPA library. - -= 1.3.1 - 2018-06-29 = -* Fixed: Other SMTP: Clear new Debug messages about failed email delivery on next successful email sending. -* Fixed: Introduce conditional autoloader to workaround Gmail PHP 5.5 requirement and its library compatibility issues vs PHP 5.3+ minimum viable plugin version. - -= 1.3.0 - 2018-06-28 = -* Added: New option: force From Email rewrite regardless of the current value. -* Added: New option: force From Name rewrite regardless of the current value. -* Added: New option: remove all plugin data on plugin uninstall (when user deletes it). -* Added: Notify site admins in wp-admin area with a notice about last failed email delivery. Cleans up on successful delivery. -* Added: Notify site admins in wp-admin area with a notice about possible compatibility issues with other SMTP and email delivery plugins. -* Added: Improve User Debug Experience when doing Email Test - display helpful description and steps to fix the issue. -* Added: New users: provide default SMTP Port value for new users based on Encryption selection. -* Added: New users: notify about not configured plugin settings. -* Added: New users: Recommend free WPForms Lite plugin for those who don't have it. -* Added: SendGrid/Mailgun: provide support for multipart/alternative types of emails. -* Added: Gmail: new button to remove connection and to connect a new Google account. -* Fixed: Support plugin installation into /mu-plugins/ directory. -* Fixed: SendGrid: required text/plain part of email being the first one - fixes plain text emails not having links. -* Fixed: SendGrid and Mailgun: improperly sending plain text emails in html format. -* Fixed: SMTP Debug output was empty in some cases. -* Fixed: Compatibility with lots of other plugins that use Google Analytics library of different versions. -* Fixed: "client_id is empty" is no more a problem, should be fixed. -* Changed: For SendGrid and Mailgun allow using custom defined attachments names if present. Fallback to file name. -* Changed: Gmail: switch to a wider scope to prevent possible issues in certain circumstances. -* Changed: Remove whitespaces start/end of keys, secrets etc. -* Changed: Improved helpful description tests of various options. -* Changed: Improved plugin autoloading functionality. - -= 1.2.5 - 2017-02-05 = -* Fixed: `Return path` can't be turned off. -* Fixed: `Authentication` sometimes can't be turned off. -* Fixed: `Auto TLS` sometimes can't be turned off. -* Fixed: BCC support for Gmail was broken. -* Fixed: Debug output improved to handle SELinux and grsecurity. -* Fixed: Strip slashes from plugin settings (useful for `From Name` option). -* Fixed: Change the way sanitization is done to prevent accidental removal of useful data. -* Fixed: Plugin activation will not overwrite settings back to defaults. -* Fixed: Properly set `Auto TLS` option on plugin activation. -* Fixed: Providers autoloading improved for certain Windows-based installs. -* Fixed: Use the proper path to load translations from plugin's `/languages` directory. -* Changed: Do not autoload on each page request plugin settings from WordPress options table. -* Changed: Do not autoload Pepipost classes unless it's saved as active mailer in settings. - -= 1.2.4 - 2017-01-28 = -* Fixed: Improved escaping in debug reporting. - -= 1.2.3 - 2017-01-22 = -* Fixed: Gmail tokens were reset after clicking Save Settings. -* Fixed: Slight typo in Gmail success message. - -= 1.2.2 - 2017-12-27 = -* Fixed: Correctly handle Mailgun debug message for an incorrect api key. -* Fixed: Fatal error for Gmail and SMTP mailers with Nginx web-server (without Apache at all). -* Changed: Update X-Mailer emails header to show the real sender with a mailer and plugin version. - -= 1.2.1 - 2017-12-21 = -* Fixed: Failed SMTP connections generate fatal errors. - -= 1.2.0 - 2017-12-21 = -* Fixed: Decrease the factual minimum WordPress version from 3.9 to 3.6. -* Changed: Improve debug output for all mail providers. - -= 1.1.0 - 2017-12-18 = -* Added: New option "Auto TLS" for SMTP mailer. Default is enabled. Migration routine for all sites. -* Changed: Improve debug output - clear styles and context-aware content. -* Changed: Better exceptions handling for Google authentication process. -* Changed: Do not sanitize passwords, api keys etc - as they may contain special characters in certain order and sanitization will break those values. -* Changed: Improve wording of some helpful texts inside plugin admin area. -* Fixed: Do not include certain files in dependency libraries that are not used by Google mailer. This should stop flagging plugin by Wordfence and VaultPress. -* Fixed: Constants usage is working now, to define the SMTP password, for example. -* Fixed: Notice for default mailer. - -= 1.0.2 - 2017-12-12 = -* Fixed: PHPMailer using incorrect SMTPSecure value. - -= 1.0.1 - 2017-12-12 = -* Fixed: Global POST processing conflict. - -= 1.0.0 - 2017-12-12 = -* Added: Automatic migration tool to move options from older storage format to a new one. -* Added: Added Gmail & G Suite email provider integration - without your email and password. -* Added: Added SendGrid email provider integration - using the API key only. -* Added: Added Mailgun email provider integration - using the API key and configured domain only. -* Added: New compatibility mode - for PHP 5.2 old plugin will be loaded, for PHP 5.3 and higher - new version of admin area and new functionality. -* Changed: The new look of the admin area. -* Changed: SMTP password field now has "password" type. -* Changed: SMTP password field does not display real password at all when using constants in `wp-config.php` to define it. -* Changed: Escape properly all translations. -* Changed: More helpful test email content (with a mailer name). diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Area.php b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Area.php index 6f6d8cc3..19aecbe2 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Area.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Area.php @@ -53,17 +53,15 @@ class Area { * * @since 1.0.0 */ - public function __construct() { - - $this->hooks(); - } + public function __construct() {} /** * Assign all hooks to proper places. * * @since 1.0.0 + * @since 4.0.0 Changed visibility to public. */ - protected function hooks() { + public function hooks() { // Add the Settings link to a plugin on Plugins page. add_filter( 'plugin_action_links_' . plugin_basename( WPMS_PLUGIN_FILE ), [ $this, 'add_plugin_action_link' ], 10, 1 ); @@ -559,6 +557,10 @@ class Area { 'one_click_setup_upgrade_title' => wp_kses( __( 'One-Click Setup for Google Mailer
      is a Pro Feature', 'wp-mail-smtp' ), [ 'br' => [] ] ), 'one_click_setup_upgrade_content' => esc_html__( 'We\'re sorry, One-Click Setup for Google Mailer is not available on your plan. Please upgrade to the Pro plan to unlock all these awesome features.', 'wp-mail-smtp' ), ], + 'rate_limit' => [ + 'upgrade_title' => wp_kses( __( 'Email Rate Limiting
      is a Pro Feature', 'wp-mail-smtp' ), [ 'br' => [] ] ), + 'upgrade_content' => esc_html__( 'We\'re sorry, Email Rate Limiting is not available on your plan. Please upgrade to the Pro plan to unlock all these awesome features.', 'wp-mail-smtp' ), + ], ], 'all_mailers_supports' => wp_mail_smtp()->get_providers()->get_supports_all(), 'nonce' => wp_create_nonce( 'wp-mail-smtp-admin' ), diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/DashboardWidget.php b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/DashboardWidget.php index 575e1699..382f00b9 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/DashboardWidget.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/DashboardWidget.php @@ -40,15 +40,7 @@ class DashboardWidget { * * @since 2.9.0 */ - public function __construct() { - - // Prevent the class initialization, if the dashboard widget hidden setting is enabled. - if ( Options::init()->get( 'general', 'dashboard_widget_hidden' ) ) { - return; - } - - add_action( 'admin_init', [ $this, 'init' ] ); - } + public function __construct() {} /** * Init class. @@ -57,23 +49,34 @@ class DashboardWidget { */ public function init() { - // This widget should be displayed for certain high-level users only. - if ( ! current_user_can( wp_mail_smtp()->get_capability_manage_options() ) ) { + // Prevent the class initialization, if the dashboard widget hidden setting is enabled. + if ( Options::init()->get( 'general', 'dashboard_widget_hidden' ) ) { return; } - /** - * Filters whether the initialization of the dashboard widget should be allowed. - * - * @since 2.9.0 - * - * @param bool $var If the dashboard widget should be initialized. - */ - if ( ! apply_filters( 'wp_mail_smtp_admin_dashboard_widget', '__return_true' ) ) { - return; - } + add_action( + 'admin_init', + function() { - $this->hooks(); + // This widget should be displayed for certain high-level users only. + if ( ! current_user_can( wp_mail_smtp()->get_capability_manage_options() ) ) { + return; + } + + /** + * Filters whether the initialization of the dashboard widget should be allowed. + * + * @since 2.9.0 + * + * @param bool $var If the dashboard widget should be initialized. + */ + if ( ! apply_filters( 'wp_mail_smtp_admin_dashboard_widget', '__return_true' ) ) { + return; + } + + $this->hooks(); + } + ); } /** diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/DebugEvents/DebugEvents.php b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/DebugEvents/DebugEvents.php index 52b724cf..f70332e8 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/DebugEvents/DebugEvents.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/DebugEvents/DebugEvents.php @@ -104,6 +104,10 @@ class DebugEvents { wp_send_json_error( esc_html__( 'You don\'t have the capability to perform this action.', 'wp-mail-smtp' ) ); } + if ( ! self::is_valid_db() ) { + wp_send_json_error( esc_html__( 'For some reason the database table was not installed correctly. Please contact plugin support team to diagnose and fix the issue.', 'wp-mail-smtp' ) ); + } + global $wpdb; $table = self::get_table_name(); @@ -143,6 +147,10 @@ class DebugEvents { wp_send_json_error( esc_html__( 'You don\'t have the capability to perform this action.', 'wp-mail-smtp' ) ); } + if ( ! self::is_valid_db() ) { + wp_send_json_error( esc_html__( 'For some reason the database table was not installed correctly. Please contact plugin support team to diagnose and fix the issue.', 'wp-mail-smtp' ) ); + } + $event_id = isset( $_POST['id'] ) ? intval( $_POST['id'] ) : false; if ( empty( $event_id ) ) { @@ -171,6 +179,10 @@ class DebugEvents { */ public static function add( $message = '', $type = 0 ) { + if ( ! self::is_valid_db() ) { + return false; + } + if ( ! in_array( $type, array_keys( Event::get_types() ), true ) ) { return false; } @@ -277,6 +289,10 @@ class DebugEvents { return new WP_Error( 'wp_mail_smtp_admin_debug_events_get_error_debug_events_count_invalid_time', 'Invalid time span.' ); } + if ( ! self::is_valid_db() ) { + return 0; + } + $transient_key = self::ERROR_DEBUG_EVENTS_TRANSIENT . '_' . sanitize_title_with_dashes( $span_of_time ); $cached_error_events_count = get_transient( $transient_key ); diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/AboutTab.php b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/AboutTab.php index 91606d5f..067d7b8c 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/AboutTab.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/AboutTab.php @@ -645,6 +645,10 @@ class AboutTab extends PageAbstract { $plugin_basename = $installer->plugin_info(); + if ( $plugin_basename === 'wpforms-lite/wpforms.php' ) { + add_option( 'wpforms_installation_source', 'wp-mail-smtp-about-us' ); + } + // Activate the plugin silently. $activated = activate_plugin( $plugin_basename ); diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/DebugEventsTab.php b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/DebugEventsTab.php index b8b35779..a3e6e3d3 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/DebugEventsTab.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/DebugEventsTab.php @@ -470,6 +470,24 @@ class DebugEventsTab extends PageAbstract { private function display_debug_events_not_installed() { $error_message = get_option( Migration::ERROR_OPTION_NAME ); + + $create_missing_tables_url = wp_nonce_url( + add_query_arg( + [ + 'create-missing-db-tables' => 1, + ], + $this->get_link() + ), + Area::SLUG . '-create-missing-db-tables' + ); + + $contact_support_url = wp_mail_smtp()->get_utm_url( + 'https://wpmailsmtp.com/account/support/', + [ + 'medium' => 'debug-events', + 'content' => 'Debug Events not installed correctly', + ] + ); ?>
      @@ -478,11 +496,37 @@ class DebugEventsTab extends PageAbstract {

      create the missing DB tables by clicking on this link. If this issue persists, please contact our support and provide the error message below:', 'wp-mail-smtp' ), + esc_url( $create_missing_tables_url ), + esc_url( $contact_support_url ) + ), + [ + 'a' => [ + 'href' => [], + 'target' => [], + 'rel' => [], + ], + ] + ); echo '

      '; echo '' . esc_html( $error_message ) . ''; } else { - esc_html_e( 'For some reason the database table was not installed correctly. Please contact plugin support team to diagnose and fix the issue.', 'wp-mail-smtp' ); + echo wp_kses( + sprintf( /* translators: %1$s - create missing tables link; %2$s - contact support link. */ + __( 'WP Mail SMTP is using custom database tables for some of its features. In order to work properly, the custom tables should be created, and it seems they are missing. Please try to create the missing DB tables by clicking on this link. If this issue persists, please contact our support.', 'wp-mail-smtp' ), + esc_url( $create_missing_tables_url ), + esc_url( $contact_support_url ) + ), + [ + 'a' => [ + 'href' => [], + 'target' => [], + 'rel' => [], + ], + ] + ); } ?>

      diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/MiscTab.php b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/MiscTab.php index e70b250c..f7bb5c6e 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/MiscTab.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Pages/MiscTab.php @@ -5,6 +5,7 @@ namespace WPMailSMTP\Admin\Pages; use WPMailSMTP\Admin\Area; use WPMailSMTP\Admin\PageAbstract; use WPMailSMTP\Helpers\UI; +use WPMailSMTP\OptimizedEmailSending; use WPMailSMTP\Options; use WPMailSMTP\UsageTracking\UsageTracking; use WPMailSMTP\Reports\Emails\Summary as SummaryReportEmail; @@ -309,6 +310,55 @@ class MiscTab extends PageAbstract {
      + +
      +
      + +
      +
      + 'wp-mail-smtp[general][' . OptimizedEmailSending::SETTINGS_SLUG . ']', + 'id' => 'wp-mail-smtp-setting-optimize-email-sending', + 'value' => 'true', + 'checked' => (bool) OptimizedEmailSending::is_enabled(), + ] + ); + ?> +

      + Learn More', 'wp-mail-smtp' ), + [ + 'a' => [ + 'href' => [], + 'rel' => [], + 'target' => [], + ], + ] + ), + esc_url( + wp_mail_smtp()->get_utm_url( + 'https://wpmailsmtp.com/docs/a-complete-guide-to-miscellaneous-settings/#optimize-email-sending', + [ + 'medium' => 'misc-settings', + 'content' => 'Optimize Email Sending - support article', + ] + ) + ) + ); + ?> +

      +
      +
      + + + display_rate_limit_settings(); ?> +
      @@ -343,6 +393,57 @@ class MiscTab extends PageAbstract { +
      +
      + +
      +
      + 'wp-mail-smtp-setting-' . esc_attr( $this->get_slug() ) . '-rate_limit-lite', + ] + ); + ?> +

      + Learn More', 'wp-mail-smtp' ), + [ + 'a' => [ + 'href' => [], + 'rel' => [], + 'target' => [], + ], + ] + ), + esc_url( + wp_mail_smtp()->get_utm_url( + 'https://wpmailsmtp.com/docs/a-complete-guide-to-miscellaneous-settings/#email-rate-limiting', + [ + 'medium' => 'misc-settings', + 'content' => 'Email Rate Limiting - support article', + ] + ) + ) + ); + ?> +

      +
      +
      + is_option_changed( $options->parse_boolean( $data['general'][ SummaryReportEmail::SETTINGS_SLUG ] ), diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Review.php b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Review.php index e07a04c1..4c189e0b 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Review.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/Review.php @@ -136,8 +136,8 @@ class Review {

      -
      - +  •  +

      diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/SetupWizard.php b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/SetupWizard.php index 2340c9bc..82fdf50c 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Admin/SetupWizard.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Admin/SetupWizard.php @@ -944,6 +944,7 @@ class SetupWizard { // Disable the WPForms redirect after plugin activation. if ( $slug === 'wpforms-lite' ) { update_option( 'wpforms_activation_redirect', true ); + add_option( 'wpforms_installation_source', 'wp-mail-smtp-setup-wizard' ); } // Disable the AIOSEO redirect after plugin activation. diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Compatibility.php b/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Compatibility.php index 265d1e82..5a5aea6f 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Compatibility.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Compatibility.php @@ -28,10 +28,7 @@ class Compatibility { */ public function init() { - // Setup compatibility only in admin area. - if ( WP::in_wp_admin() ) { - $this->setup_compatibility(); - } + $this->setup_compatibility(); } /** @@ -42,7 +39,10 @@ class Compatibility { public function setup_compatibility() { $plugins = [ - 'admin-2020' => '\WPMailSMTP\Compatibility\Plugin\Admin2020', + 'admin-2020' => '\WPMailSMTP\Compatibility\Plugin\Admin2020', + 'wpforms-lite' => '\WPMailSMTP\Compatibility\Plugin\WPFormsLite', + 'wpforms' => '\WPMailSMTP\Compatibility\Plugin\WPForms', + 'woocommerce' => '\WPMailSMTP\Compatibility\Plugin\WooCommerce', ]; foreach ( $plugins as $key => $classname ) { diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/Admin2020.php b/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/Admin2020.php index be8fee16..e15f8413 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/Admin2020.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/Admin2020.php @@ -2,6 +2,8 @@ namespace WPMailSMTP\Compatibility\Plugin; +use WPMailSMTP\WP; + /** * Admin 2020 Lite compatibility plugin. * @@ -9,6 +11,18 @@ namespace WPMailSMTP\Compatibility\Plugin; */ class Admin2020 extends PluginAbstract { + /** + * If plugin can be loaded. + * + * @since 4.0.0 + * + * @return bool + */ + public static function is_applicable() { + + return parent::is_applicable() && WP::in_wp_admin(); + } + /** * Get plugin name. * diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/WPForms.php b/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/WPForms.php new file mode 100644 index 00000000..1a0f4ea5 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/WPForms.php @@ -0,0 +1,35 @@ +get_queue()->is_enabled() ) { + add_filter( 'wpforms_tasks_entry_emails_trigger_send_same_process', '__return_true', PHP_INT_MAX ); + } + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/WooCommerce.php b/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/WooCommerce.php new file mode 100644 index 00000000..415b0d90 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Compatibility/Plugin/WooCommerce.php @@ -0,0 +1,47 @@ +get_queue()->is_enabled() ) { + add_filter( 'woocommerce_defer_transactional_emails', '__return_false', PHP_INT_MAX ); + } + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Core.php b/wp/wp-content/plugins/wp-mail-smtp/src/Core.php index ea5d66fb..06936368 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Core.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Core.php @@ -6,13 +6,13 @@ use WPMailSMTP\Admin\AdminBarMenu; use WPMailSMTP\Admin\DashboardWidget; use WPMailSMTP\Admin\DebugEvents\DebugEvents; use WPMailSMTP\Admin\Notifications; -use WPMailSMTP\Helpers\Helpers; use WPMailSMTP\Tasks\Meta; use WPMailSMTP\UsageTracking\UsageTracking; use WPMailSMTP\Compatibility\Compatibility; use WPMailSMTP\Reports\Reports; use ReflectionFunction; use Exception; +use WPMailSMTP\Queue\Queue; /** * Class Core to handle all plugin initialization. @@ -114,6 +114,9 @@ class Core { // Activation hook. register_activation_hook( WPMS_PLUGIN_FILE, [ $this, 'activate' ] ); + // Initialize DB migrations. + add_action( 'plugins_loaded', [ $this, 'get_migrations' ] ); + // Load Pro if available. add_action( 'plugins_loaded', [ $this, 'get_pro' ] ); @@ -129,9 +132,6 @@ class Core { // Initialize Action Scheduler tasks. add_action( 'init', [ $this, 'get_tasks' ], 5 ); - // Initialize DB migrations. - add_action( 'admin_init', [ $this, 'init_migrations' ] ); - add_action( 'plugins_loaded', [ $this, 'get_usage_tracking' ] ); add_action( 'plugins_loaded', [ $this, 'get_admin_bar_menu' ] ); add_action( 'plugins_loaded', [ $this, 'get_notifications' ] ); @@ -142,6 +142,13 @@ class Core { add_action( 'plugins_loaded', [ $this, 'get_db_repair' ] ); add_action( 'plugins_loaded', [ $this, 'get_connections_manager' ], 20 ); add_action( 'plugins_loaded', [ $this, 'get_wp_mail_initiator' ] ); + add_action( 'plugins_loaded', [ $this, 'get_queue' ] ); + add_action( + 'plugins_loaded', + function() { + ( new OptimizedEmailSending() )->hooks(); + } + ); } /** @@ -284,7 +291,18 @@ class Core { static $processor; if ( ! isset( $processor ) ) { - $processor = apply_filters( 'wp_mail_smtp_core_get_processor', new Processor() ); + + /** + * Filters Processor instance. + * + * @since 4.0.0 + * + * @param Processor $processor Processor instance. + */ + $processor = apply_filters( + 'wp_mail_smtp_core_get_processor', + new Processor() + ); if ( method_exists( $processor, 'hooks' ) ) { $processor->hooks(); @@ -307,6 +325,10 @@ class Core { if ( ! isset( $admin ) ) { $admin = apply_filters( 'wp_mail_smtp_core_get_admin', new Admin\Area() ); + + if ( method_exists( $admin, 'hooks' ) ) { + $admin->hooks(); + } } return $admin; @@ -355,34 +377,35 @@ class Core { /** * Initialize DB migrations. * + * @deprecated 4.0.0 + * * @since 3.0.0 */ public function init_migrations() { - if ( WP::is_doing_ajax() || wp_doing_cron() ) { - return; + _deprecated_function( __METHOD__, '3.10.0', '\WPMailSMTP\Migrations::init_migrations_on_request' ); + + $this->get_migrations()->init_migrations_on_request(); + } + + /** + * Get the Migrations object. + * + * @since 4.0.0 + * + * @return Migrations + */ + public function get_migrations() { + + static $migrations; + + if ( ! isset( $migrations ) ) { + $migrations = new Migrations(); + + $migrations->hooks(); } - $migrations = [ - Migration::class, - \WPMailSMTP\Admin\DebugEvents\Migration::class, - ]; - - /** - * Filters DB migrations. - * - * @since 3.0.0 - * - * @param array $migrations Migrations classes. - */ - $migrations = apply_filters( 'wp_mail_smtp_core_init_migrations', $migrations ); - - foreach ( $migrations as $migration ) { - if ( is_subclass_of( $migration, '\WPMailSMTP\MigrationAbstract' ) && $migration::is_enabled() ) { - $new_migration = new $migration(); - $new_migration->init(); - } - } + return $migrations; } /** @@ -398,6 +421,10 @@ class Core { if ( ! isset( $upgrade ) ) { $upgrade = apply_filters( 'wp_mail_smtp_core_get_upgrade', new Upgrade() ); + + if ( method_exists( $upgrade, 'run' ) ) { + $upgrade->run(); + } } return $upgrade; @@ -871,6 +898,10 @@ class Core { DebugEvents::get_table_name(), ]; + if ( $this->get_queue()->is_enabled() ) { + $tables[] = Queue::get_table_name(); + } + return apply_filters( 'wp_mail_smtp_core_get_custom_db_tables', $tables ); } @@ -1147,6 +1178,10 @@ class Core { */ $class_name = apply_filters( 'wp_mail_smtp_core_get_dashboard_widget', DashboardWidget::class ); $dashboard_widget = new $class_name(); + + if ( method_exists( $dashboard_widget, 'init' ) ) { + $dashboard_widget->init(); + } } return $dashboard_widget; @@ -1365,4 +1400,29 @@ class Core { */ return apply_filters( 'wp_mail_smtp_core_get_capability_manage_options', 'manage_options' ); } + + /** + * Load the queue functionality. + * + * @since 4.0.0 + * + * @return Queue + */ + public function get_queue() { + + static $queue; + + if ( ! isset( $queue ) ) { + /** + * Filter the Queue object. + * + * @since 4.0.0 + * + * @param Queue $queue The Queue object. + */ + $queue = apply_filters( 'wp_mail_smtp_core_get_queue', new Queue() ); + } + + return $queue; + } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/DBRepair.php b/wp/wp-content/plugins/wp-mail-smtp/src/DBRepair.php index b17c1f49..cce4850f 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/DBRepair.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/DBRepair.php @@ -5,6 +5,8 @@ namespace WPMailSMTP; use WPMailSMTP\Admin\Area; use WPMailSMTP\Admin\DebugEvents\DebugEvents; use WPMailSMTP\Admin\DebugEvents\Migration as DebugMigration; +use WPMailSMTP\Queue\Migration as QueueMigration; +use WPMailSMTP\Queue\Queue; use WPMailSMTP\Tasks\Meta; /** @@ -49,11 +51,17 @@ class DBRepair { } $redirect_page = isset( $_GET['page'] ) ? sanitize_key( $_GET['page'] ) : Area::SLUG; + $redirect_tab = isset( $_GET['tab'] ) ? sanitize_key( $_GET['tab'] ) : ''; + $query_args = [ + 'check-db-tables' => 1, + ]; + + if ( ! empty( $redirect_tab ) ) { + $query_args['tab'] = $redirect_tab; + } $redirect_url = add_query_arg( - [ - 'check-db-tables' => 1, - ], + $query_args, wp_mail_smtp()->get_admin()->get_admin_page_url( $redirect_page ) ); @@ -76,6 +84,8 @@ class DBRepair { update_option( DebugMigration::OPTION_NAME, 0 ); } elseif ( $missing_table === Meta::get_table_name() ) { update_option( Migration::OPTION_NAME, 1 ); + } elseif ( $missing_table === Queue::get_table_name() ) { + update_option( QueueMigration::OPTION_NAME, 0 ); } } @@ -122,6 +132,11 @@ class DBRepair { $missing_table, get_option( Migration::ERROR_OPTION_NAME, $this->get_missing_table_default_error_message() ) ); + } elseif ( $missing_table === Queue::get_table_name() ) { + $reason .= $this->get_reason_output_message( + $missing_table, + get_option( QueueMigration::ERROR_OPTION_NAME, $this->get_missing_table_default_error_message() ) + ); } $reasons[] = $reason; diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Helpers/Helpers.php b/wp/wp-content/plugins/wp-mail-smtp/src/Helpers/Helpers.php index 26dc8adc..8f0b72d2 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Helpers/Helpers.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Helpers/Helpers.php @@ -167,4 +167,14 @@ class Helpers { /** \Plugin_Upgrader class */ require_once ABSPATH . 'wp-admin/includes/class-plugin-upgrader.php'; } + + /** + * Whether the current request is a WP CLI request. + * + * @since 4.0.0 + */ + public static function is_wp_cli() { + + return defined( 'WP_CLI' ) && WP_CLI; + } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcher.php b/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcher.php index 7a09cbcc..e96bbc66 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcher.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcher.php @@ -2,6 +2,8 @@ namespace WPMailSMTP; +use phpmailerException; + // Load PHPMailer class, so we can subclass it. if ( ! class_exists( 'PHPMailer', false ) ) { require_once ABSPATH . WPINC . '/class-phpmailer.php'; @@ -54,4 +56,18 @@ class MailCatcher extends \PHPMailer implements MailCatcherInterface { return $this->LE; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase } + + /** + * Throw PHPMailer exception. + * + * @since 4.0.0 + * + * @param string $error Error message. + * + * @throws phpmailerException PHPMailer exception. + */ + protected function throw_exception( $error ) { + + throw new phpmailerException( $error ); + } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcherTrait.php b/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcherTrait.php index ba629d1b..c95811e7 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcherTrait.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcherTrait.php @@ -79,10 +79,7 @@ trait MailCatcherTrait { * * @return bool */ - public function send() { // phpcs:ignore Generic.Metrics.CyclomaticComplexity.MaxExceeded, Generic.Metrics.NestingLevel.MaxExceeded - - $connection = wp_mail_smtp()->get_connections_manager()->get_mail_connection(); - $mail_mailer = $connection->get_mailer_slug(); + public function send() { // phpcs:ignore Generic.Metrics.CyclomaticComplexity.TooHigh // Reset email related variables. $this->debug_event_id = false; @@ -116,171 +113,257 @@ trait MailCatcherTrait { return false; } + // If it's not a test email, + // check if the email should be enqueued + // instead of being sent immediately. + if ( ! $this->is_test_email && ! $this->is_setup_wizard_test_email ) { + + /** + * Filters whether an email should be enqueued or sent immediately. + * + * @since 4.0.0 + * + * @param bool $should_enqueue Whether to enqueue an email, or send it. + * @param array $wp_mail_args Original arguments of the `wp_mail` call. + */ + $should_enqueue_email = apply_filters( + 'wp_mail_smtp_mail_catcher_send_enqueue_email', + false, + wp_mail_smtp()->get_processor()->get_filtered_wp_mail_args() + ); + + $queue = wp_mail_smtp()->get_queue(); + + // If we should enqueue the email, + // and the email has been enqueued, + // bail. + if ( $should_enqueue_email && $queue->enqueue_email() ) { + return true; + } + } + + $connection = wp_mail_smtp()->get_connections_manager()->get_mail_connection(); + $mailer_slug = $connection->get_mailer_slug(); + // Define a custom header, that will be used to identify the plugin and the mailer. - $this->XMailer = 'WPMailSMTP/Mailer/' . $mail_mailer . ' ' . WPMS_PLUGIN_VER; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase + // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase + $this->XMailer = 'WPMailSMTP/Mailer/' . $mailer_slug . ' ' . WPMS_PLUGIN_VER; // Use the default PHPMailer, as we inject our settings there for certain providers. if ( - $mail_mailer === 'mail' || - $mail_mailer === 'smtp' || - $mail_mailer === 'pepipost' + $mailer_slug === 'mail' || + $mailer_slug === 'smtp' || + $mailer_slug === 'pepipost' ) { - try { - if ( DebugEvents::is_debug_enabled() && ! $this->is_test_email ) { - $this->SMTPDebug = 3; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase - $this->Debugoutput = [ $this, 'debug_output_callback' ]; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase - } + return $this->smtp_send( $connection ); + } else { + return $this->api_send( $connection ); + } + } - /** - * Fires before email pre send via SMTP. - * - * Allow to hook early to catch any early failed emails. - * - * @since 2.9.0 - * - * @param MailCatcherInterface $mailcatcher The MailCatcher object. - */ - do_action( 'wp_mail_smtp_mailcatcher_smtp_pre_send_before', $this ); + /** + * Send email via SMTP. + * + * @since 4.0.0 + * + * @param ConnectionInterface $connection The connection object. + * + * @throws Exception When sending via PhpMailer fails for some reason. + * + * @return bool + */ + private function smtp_send( $connection ) { // phpcs:ignore Generic.Metrics.CyclomaticComplexity.TooHigh - // Prepare all the headers. - if ( ! $this->preSend() ) { - return false; - } + $mailer_slug = $connection->get_mailer_slug(); - /** - * Fires before email send via SMTP. - * - * Allow to hook after all the preparation before the actual sending. - * - * @since 2.9.0 - * - * @param MailCatcherInterface $mailcatcher The MailCatcher object. - */ - do_action( 'wp_mail_smtp_mailcatcher_smtp_send_before', $this ); - - $post_send = $this->postSend(); - - DebugEvents::add_debug( - esc_html__( 'An email request was sent.', 'wp-mail-smtp' ) - ); - - return $post_send; - } catch ( Exception $e ) { - - // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase - $this->mailHeader = ''; - - $this->setError( $e->getMessage() ); - - // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase - $error_message = 'Mailer: ' . esc_html( wp_mail_smtp()->get_providers()->get_options( $mail_mailer )->get_title() ) . "\r\n" . $this->ErrorInfo; - - // Set the debug error, but not for default PHP mailer. - if ( $mail_mailer !== 'mail' ) { - $this->debug_event_id = Debug::set( $error_message ); - $this->latest_error = $error_message; - - if ( DebugEvents::is_debug_enabled() && ! empty( $this->debug_output_buffer ) ) { - $debug_message = $error_message . "\r\n" . esc_html__( 'Debug Output:', 'wp-mail-smtp' ) . "\r\n"; - $debug_message .= implode( "\r\n", $this->debug_output_buffer ); - - $this->debug_event_id = DebugEvents::add_debug( $debug_message ); - } - } - - /** - * Fires after email sent failure via SMTP. - * - * @since 3.5.0 - * - * @param string $error_message Error message. - * @param MailCatcherInterface $mailcatcher The MailCatcher object. - * @param string $mail_mailer Current mailer name. - */ - do_action( 'wp_mail_smtp_mailcatcher_send_failed', $error_message, $this, $mail_mailer ); - - if ( $this->exceptions ) { - throw $e; - } - - return false; - } finally { - - // Clear debug output buffer. - $this->debug_output_buffer = []; + // phpcs:disable WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase + try { + if ( DebugEvents::is_debug_enabled() && ! $this->is_test_email ) { + $this->SMTPDebug = 3; + $this->Debugoutput = [ $this, 'debug_output_callback' ]; } - } - // We need this so that the \PHPMailer class will correctly prepare all the headers. - $this->Mailer = 'mail'; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase + /** + * Fires before email pre send via SMTP. + * + * Allow to hook early to catch any early failed emails. + * + * @since 2.9.0 + * + * @param MailCatcherInterface $mailcatcher The MailCatcher object. + */ + do_action( 'wp_mail_smtp_mailcatcher_smtp_pre_send_before', $this ); - /** - * Fires before email pre send. - * - * Allow to hook early to catch any early failed emails. - * - * @since 2.9.0 - * - * @param MailCatcherInterface $mailcatcher The MailCatcher object. - */ - do_action( 'wp_mail_smtp_mailcatcher_pre_send_before', $this ); + // Prepare all the headers. + if ( ! $this->preSend() ) { + $this->throw_exception( $this->ErrorInfo ); + } - // Prepare everything (including the message) for sending. - if ( ! $this->preSend() ) { - return false; - } + /** + * Fires before email send via SMTP. + * + * Allow to hook after all the preparation before the actual sending. + * + * @since 2.9.0 + * + * @param MailCatcherInterface $mailcatcher The MailCatcher object. + */ + do_action( 'wp_mail_smtp_mailcatcher_smtp_send_before', $this ); - $mailer = wp_mail_smtp()->get_providers()->get_mailer( $mail_mailer, $this, $connection ); + if ( ! $this->postSend() ) { + $this->throw_exception( $this->ErrorInfo ); + } - if ( ! $mailer ) { - return false; - } + DebugEvents::add_debug( + esc_html__( 'An email request was sent.', 'wp-mail-smtp' ) + ); - if ( ! $mailer->is_php_compatible() ) { - return false; - } + return true; + } catch ( Exception $e ) { + $this->mailHeader = ''; - /** - * Fires before email send. - * - * Allows to hook after all the preparation before the actual sending. - * - * @since 3.3.0 - * - * @param MailerAbstract $mailer The Mailer object. - */ - do_action( 'wp_mail_smtp_mailcatcher_send_before', $mailer ); + // We need this to append SMTP error to the `PHPMailer::ErrorInfo` property. + $this->setError( $e->getMessage() ); - /* - * Send the actual email. - * We reuse everything, that was preprocessed for usage in \PHPMailer. - */ - $mailer->send(); - - $is_sent = $mailer->is_email_sent(); - - if ( ! $is_sent ) { - $error = $mailer->get_response_error(); - $error_message = ''; - - if ( ! empty( $error ) ) { - // Add mailer to the beginning and save to display later. - $message = 'Mailer: ' . esc_html( wp_mail_smtp()->get_providers()->get_options( $mailer->get_mailer_name() )->get_title() ) . "\r\n"; - - $conflicts = new Conflicts(); - - if ( $conflicts->is_detected() ) { - $conflict_plugin_names = implode( ', ', $conflicts->get_all_conflict_names() ); - - $message .= 'Conflicts: ' . esc_html( $conflict_plugin_names ) . "\r\n"; - } - - $error_message = $message . $error; + // Set the debug error, but not for default PHP mailer. + if ( $mailer_slug !== 'mail' ) { + $error_message = 'Mailer: ' . esc_html( wp_mail_smtp()->get_providers()->get_options( $mailer_slug )->get_title() ) . "\r\n" . $this->ErrorInfo; $this->debug_event_id = Debug::set( $error_message ); $this->latest_error = $error_message; + + if ( DebugEvents::is_debug_enabled() && ! empty( $this->debug_output_buffer ) ) { + $debug_message = $error_message . "\r\n" . esc_html__( 'Debug Output:', 'wp-mail-smtp' ) . "\r\n"; + $debug_message .= implode( "\r\n", $this->debug_output_buffer ); + + $this->debug_event_id = DebugEvents::add_debug( $debug_message ); + } } + /** + * Fires after email sent failure via SMTP. + * + * @since 3.5.0 + * + * @param string $error_message Error message. + * @param MailCatcherInterface $mailcatcher The MailCatcher object. + * @param string $mailer_slug Current mailer name. + */ + do_action( 'wp_mail_smtp_mailcatcher_send_failed', $this->ErrorInfo, $this, $mailer_slug ); + + if ( $this->exceptions ) { + throw $e; + } + + return false; + } finally { + + // Clear debug output buffer. + $this->debug_output_buffer = []; + } + // phpcs:enable WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase + } + + /** + * Send email via API integration. + * + * @since 4.0.0 + * + * @param ConnectionInterface $connection The connection object. + * + * @throws Exception When sending fails for some reason. + * + * @return bool + */ + private function api_send( $connection ) { // phpcs:ignore Generic.Metrics.CyclomaticComplexity.TooHigh + + $mailer_slug = $connection->get_mailer_slug(); + + // phpcs:disable WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase + try { + // We need this so that the \PHPMailer class will correctly prepare all the headers. + $this->Mailer = 'mail'; + + /** + * Fires before email pre send. + * + * Allow to hook early to catch any early failed emails. + * + * @since 2.9.0 + * + * @param MailCatcherInterface $mailcatcher The MailCatcher object. + */ + do_action( 'wp_mail_smtp_mailcatcher_pre_send_before', $this ); + + // Prepare everything (including the message) for sending. + if ( ! $this->preSend() ) { + $this->throw_exception( $this->ErrorInfo ); + } + + $mailer = wp_mail_smtp()->get_providers()->get_mailer( $mailer_slug, $this, $connection ); + + if ( ! $mailer ) { + $this->throw_exception( esc_html__( 'The selected mailer not found.', 'wp-mail-smtp' ) ); + } + + if ( ! $mailer->is_php_compatible() ) { + $this->throw_exception( esc_html__( 'The selected mailer is not compatible with your PHP version.', 'wp-mail-smtp' ) ); + } + + /** + * Fires before email send. + * + * Allows to hook after all the preparation before the actual sending. + * + * @since 3.3.0 + * + * @param MailerAbstract $mailer The Mailer object. + */ + do_action( 'wp_mail_smtp_mailcatcher_send_before', $mailer ); + + /* + * Send the actual email. + * We reuse everything, that was preprocessed for usage in \PHPMailer. + */ + $mailer->send(); + + $is_sent = $mailer->is_email_sent(); + + /** + * Fires after email send. + * + * Allow to perform any actions with the data. + * + * @since 3.5.0 + * + * @param MailerAbstract $mailer The Mailer object. + * @param MailCatcherInterface $mailcatcher The MailCatcher object. + */ + do_action( 'wp_mail_smtp_mailcatcher_send_after', $mailer, $this ); + + if ( $is_sent !== true ) { + $this->throw_exception( $mailer->get_response_error() ); + } + + // Clear debug messages if email is successfully sent. + Debug::clear(); + + return true; + } catch ( Exception $e ) { + // Add mailer to the beginning and save to display later. + $message = 'Mailer: ' . esc_html( wp_mail_smtp()->get_providers()->get_options( $mailer_slug )->get_title() ) . "\r\n"; + + $conflicts = new Conflicts(); + + if ( $conflicts->is_detected() ) { + $conflict_plugin_names = implode( ', ', $conflicts->get_all_conflict_names() ); + $message .= 'Conflicts: ' . esc_html( $conflict_plugin_names ) . "\r\n"; + } + + $error_message = $message . $e->getMessage(); + $this->debug_event_id = Debug::set( $error_message ); + $this->latest_error = $error_message; + /** * Fires after email sent failure. * @@ -288,28 +371,17 @@ trait MailCatcherTrait { * * @param string $error_message Error message. * @param MailCatcherInterface $mailcatcher The MailCatcher object. - * @param string $mail_mailer Current mailer name. + * @param string $mailer_slug Current mailer name. */ - do_action( 'wp_mail_smtp_mailcatcher_send_failed', $error_message, $this, $mail_mailer ); - } else { + do_action( 'wp_mail_smtp_mailcatcher_send_failed', $e->getMessage(), $this, $mailer_slug ); - // Clear debug messages if email is successfully sent. - Debug::clear(); + if ( $this->exceptions ) { + throw $e; + } + + return false; } - - /** - * Fires after email send. - * - * Allow to perform any actions with the data. - * - * @since 3.5.0 - * - * @param MailerAbstract $mailer The Mailer object. - * @param MailCatcherInterface $mailcatcher The MailCatcher object. - */ - do_action( 'wp_mail_smtp_mailcatcher_send_after', $mailer, $this ); - - return $is_sent; + // phpcs:enable WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase } /** @@ -393,4 +465,84 @@ trait MailCatcherTrait { return $this->is_emailing_blocked; } + + /** + * Return the list of properties representing + * this class' state. + * + * @since 4.0.0 + * + * @return array State of this class. + */ + private function get_state_properties() { + + return [ + 'CharSet', + 'ContentType', + 'Encoding', + 'CustomHeader', + 'Subject', + 'Body', + 'AltBody', + 'ReplyTo', + 'to', + 'cc', + 'bcc', + 'attachment', + ]; + } + + /** + * Return an array of relevant properties. + * + * @since 4.0.0 + * + * @return array State of this class. + */ + public function get_state() { + + $state = []; + + foreach ( $this->get_state_properties() as $property ) { + $state[ $property ] = $this->{$property}; + } + + return $state; + } + + /** + * Set properties from a provided array of data. + * + * @since 4.0.0 + * + * @param array $state Array of properties to apply. + */ + public function set_state( $state ) { // phpcs:ignore Generic.Metrics.NestingLevel.MaxExceeded + + // Filter out non-allowed properties. + $state = array_intersect_key( + $state, + array_flip( $this->get_state_properties() ) + ); + + foreach ( $state as $property => $value ) { + if ( $property !== 'attachment' ) { + $this->{$property} = $value; + } else { + // Handle potential I/O exceptions + // in PHPMailer when attaching files. + $this->clearAttachments(); + + foreach ( $state['attachment'] as $attachment ) { + [ $path, , $name ] = $attachment; + + try { + $this->addAttachment( $path, $name ); + } catch ( Exception $e ) { + continue; + } + } + } + } + } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcherV6.php b/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcherV6.php index baabe474..f07bcb85 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcherV6.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/MailCatcherV6.php @@ -2,6 +2,8 @@ namespace WPMailSMTP; +use PHPMailer\PHPMailer\Exception; + /** * Class MailCatcher replaces the \PHPMailer\PHPMailer\PHPMailer introduced in WP 5.5 and * modifies the email sending logic. Thus, we can use other mailers API to do what we need, or stop emails completely. @@ -47,4 +49,18 @@ class MailCatcherV6 extends \PHPMailer\PHPMailer\PHPMailer implements MailCatche return static::$LE; // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase } + + /** + * Throw PHPMailer exception. + * + * @since 4.0.0 + * + * @param string $error Error message. + * + * @throws Exception PHPMailer exception. + */ + protected function throw_exception( $error ) { + + throw new Exception( $error ); + } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Migrations.php b/wp/wp-content/plugins/wp-mail-smtp/src/Migrations.php new file mode 100644 index 00000000..f98fb5f0 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Migrations.php @@ -0,0 +1,170 @@ +init_migrations(); + } + + /** + * Initialize DB migrations. + * + * @since 4.0.0 + */ + private function init_migrations() { + + $migrations = $this->get_migrations(); + + foreach ( $migrations as $migration ) { + if ( is_subclass_of( $migration, MigrationAbstract::class ) && $migration::is_enabled() ) { + ( new $migration() )->init(); + } + } + } + + /** + * Get migrations classes. + * + * @since 4.0.0 + * + * @return array Migrations classes. + */ + private function get_migrations() { + + $migrations = [ + Migration::class, + DebugEventsMigration::class, + QueueMigration::class, + ]; + + /** + * Filters DB migrations classes. + * + * @deprecated 4.0.0 + * + * @since 3.0.0 + * + * @param array $migrations Migrations classes. + */ + $migrations = apply_filters_deprecated( + 'wp_mail_smtp_core_init_migrations', + [ $migrations ], + '3.10.0', + 'wp_mail_smtp_migrations_get_migrations' + ); + + /** + * Filters DB migrations classes. + * + * @since 4.0.0 + * + * @param array $migrations Migrations classes. + */ + return apply_filters( 'wp_mail_smtp_migrations_get_migrations', $migrations ); + } + + /** + * Initialize DB migrations after plugin update. + * Initiate ajax call to perform the migration with the new plugin version code. + * + * @since 4.0.0 + * + * @param WP_Upgrader $upgrader WP_Upgrader instance. + * @param array $options Array of update data. + */ + public function init_migrations_after_upgrade( $upgrader, $options ) { + + if ( + // Skip if in admin panel. + ( is_admin() && ! wp_doing_ajax() ) || + // Skip if it's update from plugins list page. + // phpcs:ignore WordPress.Security.NonceVerification.Recommended + ( wp_doing_ajax() && isset( $_REQUEST['action'] ) && $_REQUEST['action'] === 'update-plugin' ) + ) { + return; + } + + $plugins = []; + + if ( isset( $options['plugins'] ) && is_array( $options['plugins'] ) ) { + $plugins = $options['plugins']; + } elseif ( isset( $options['plugin'] ) && is_string( $options['plugin'] ) ) { + $plugins = [ $options['plugin'] ]; + } + + if ( + ! in_array( 'wp-mail-smtp/wp_mail_smtp.php', $plugins, true ) && + ! in_array( 'wp-mail-smtp-pro/wp_mail_smtp.php', $plugins, true ) + ) { + return; + } + + $url = add_query_arg( + [ + 'action' => 'wp_mail_smtp_init_migrations', + ], + admin_url( 'admin-ajax.php' ) + ); + + $timeout = (int) ini_get( 'max_execution_time' ); + + $args = [ + 'sslverify' => false, + 'timeout' => $timeout ? $timeout : 30, + ]; + + wp_remote_post( $url, $args ); + } + + /** + * Initialize migrations via AJAX request. + * + * @since 4.0.0 + */ + public function init_migrations_ajax_handler() { + + $this->init_migrations(); + + wp_send_json_success(); + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/OptimizedEmailSending.php b/wp/wp-content/plugins/wp-mail-smtp/src/OptimizedEmailSending.php new file mode 100644 index 00000000..b66a8641 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/OptimizedEmailSending.php @@ -0,0 +1,58 @@ +get( 'general', self::SETTINGS_SLUG ); + + return (bool) $value; + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Options.php b/wp/wp-content/plugins/wp-mail-smtp/src/Options.php index 21cf3737..cd85b000 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Options.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Options.php @@ -785,12 +785,20 @@ class Options { /** @noinspection PhpUndefinedConstantInspection */ $return = $this->is_const_defined( $group, $key ) ? WPMS_DO_NOT_SEND : $value; break; + case SummaryReportEmail::SETTINGS_SLUG: /** No inspection comment @noinspection PhpUndefinedConstantInspection */ $return = $this->is_const_defined( $group, $key ) ? $this->parse_boolean( WPMS_SUMMARY_REPORT_EMAIL_DISABLED ) : $value; break; + + case OptimizedEmailSending::SETTINGS_SLUG: + /** No inspection comment @noinspection PhpUndefinedConstantInspection */ + $return = $this->is_const_defined( $group, $key ) ? + $this->parse_boolean( WPMS_OPTIMIZED_EMAIL_SENDING_ENABLED ) : + $value; + break; } break; @@ -1108,9 +1116,14 @@ class Options { /** @noinspection PhpUndefinedConstantInspection */ $return = defined( 'WPMS_DO_NOT_SEND' ) && WPMS_DO_NOT_SEND; break; + case SummaryReportEmail::SETTINGS_SLUG: $return = defined( 'WPMS_SUMMARY_REPORT_EMAIL_DISABLED' ); break; + + case OptimizedEmailSending::SETTINGS_SLUG: + $return = defined( 'WPMS_OPTIMIZED_EMAIL_SENDING_ENABLED' ); + break; } break; @@ -1236,6 +1249,7 @@ class Options { case 'uninstall': case UsageTracking::SETTINGS_SLUG: case SummaryReportEmail::SETTINGS_SLUG: + case OptimizedEmailSending::SETTINGS_SLUG: $options[ $group ][ $option_name ] = (bool) $option_value; break; } diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Processor.php b/wp/wp-content/plugins/wp-mail-smtp/src/Processor.php index b5d93d66..19462c8b 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Processor.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Processor.php @@ -30,6 +30,42 @@ class Processor { */ private $connections_manager; + /** + * This attribute will hold the arguments passed to the `wp_mail` function. + * + * @since 4.0.0 + * + * @var array + */ + private $original_wp_mail_args; + + /** + * This attribute will hold the arguments passed to the `wp_mail` function and filtered via `wp_mail` filter. + * + * @since 4.0.0 + * + * @var array + */ + private $filtered_wp_mail_args; + + /** + * This attribute will hold the From address filtered via the `wp_mail_from` filter. + * + * @since 4.0.0 + * + * @var string + */ + private $filtered_from_email; + + /** + * This attribute will hold the From name filtered via the `wp_mail_from_name` filter. + * + * @since 4.0.0 + * + * @var string + */ + private $filtered_from_name; + /** * Class constructor. * @@ -58,6 +94,9 @@ class Processor { // High priority number tries to ensure our plugin code executes last and respects previous hooks, if not forced. add_filter( 'wp_mail_from', array( $this, 'filter_mail_from_email' ), PHP_INT_MAX ); add_filter( 'wp_mail_from_name', array( $this, 'filter_mail_from_name' ), PHP_INT_MAX ); + + add_action( 'wp_mail', [ $this, 'capture_early_wp_mail_filter_call' ], - PHP_INT_MAX ); + add_action( 'wp_mail', [ $this, 'capture_late_wp_mail_filter_call' ], PHP_INT_MAX ); } /** @@ -243,6 +282,9 @@ class Processor { */ public function filter_mail_from_email( $wp_email ) { + // Save the original from address. + $this->filtered_from_email = filter_var( $wp_email, FILTER_VALIDATE_EMAIL ); + $connection = $this->connections_manager->get_mail_connection(); $connection_options = $connection->get_options(); $forced = $connection_options->get( 'mail', 'from_email_force' ); @@ -279,6 +321,9 @@ class Processor { */ public function filter_mail_from_name( $name ) { + // Save the original from name. + $this->filtered_from_name = $name; + $connection = $this->connections_manager->get_mail_connection(); $connection_options = $connection->get_options(); $force = $connection_options->get( 'mail', 'from_name_force' ); @@ -377,4 +422,106 @@ class Processor { } } } + + /** + * Capture `wp_mail` filter call on earliest priority. + * + * Currently used to capture the original `wp_mail` arguments before they are filtered. + * + * @since 4.0.0 + * + * @param array $args The original `wp_mail` arguments. + * + * @return array + */ + public function capture_early_wp_mail_filter_call( $args ) { + + $this->original_wp_mail_args = $args; + + return $args; + } + + /** + * Capture `wp_mail` filter call on latest priority. + * + * Currently used to capture the `wp_mail` arguments after they are filtered + * and capture `wp_mail` function call. + * + * @since 4.0.0 + * + * @param array $args The filtered `wp_mail` arguments. + * + * @return array + */ + public function capture_late_wp_mail_filter_call( $args ) { + + $this->filtered_wp_mail_args = $args; + + $this->capture_wp_mail_call(); + + return $args; + } + + /** + * Capture `wp_mail` function call. + * + * @since 4.0.0 + */ + private function capture_wp_mail_call() { + + /** + * Fires on `wp_mail` function call. + * + * @since 4.0.0 + */ + do_action( 'wp_mail_smtp_processor_capture_wp_mail_call' ); + } + + /** + * Get the original `wp_mail` arguments. + * + * @since 4.0.0 + * + * @return array + */ + public function get_original_wp_mail_args() { + + return $this->original_wp_mail_args; + } + + /** + * Get the filtered `wp_mail` arguments. + * + * @since 4.0.0 + * + * @return array + */ + public function get_filtered_wp_mail_args() { + + return $this->filtered_wp_mail_args; + } + + /** + * Get the filtered `wp_mail_from` value. + * + * @since 4.0.0 + * + * @return string + */ + public function get_filtered_from_email() { + + return $this->filtered_from_email; + } + + /** + * Get the filtered `wp_mail_from_name` value. + * + * @since 4.0.0 + * + * @return string + */ + public function get_filtered_from_name() { + + return $this->filtered_from_name; + } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Attachments.php b/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Attachments.php new file mode 100644 index 00000000..c9b8e76a --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Attachments.php @@ -0,0 +1,242 @@ +process_attachment( $path, $name, $is_string_attachment ); + + if ( ! empty( $path ) ) { + $attachment[0] = $path; + } + + return $attachment; + }, + $attachments + ); + + return $attachments; + } + + /** + * Process an attachment,obfuscating its path + * and storing its file on disk. + * + * @since 4.0.0 + * + * @param string $path The path to obfuscate. + * @param string $name The name of the file at $path. + * @param bool $is_string_attachment Whether this attachment is a string attachment. + * + * @return string|false New path of the attachment, or false for no path. + */ + private function process_attachment( $path, $name = '', $is_string_attachment = false ) { + + $file_content = $this->get_attachment_file_content( $path, $is_string_attachment ); + + if ( $file_content === false ) { + return false; + } + + if ( ! $is_string_attachment && $name === '' ) { + $name = wp_basename( $path ); + } + + $name = sanitize_file_name( $name ); + $obfuscated_path = $this->store_file( $file_content, $name ); + + if ( empty( $obfuscated_path ) ) { + return $path; + } + + return $obfuscated_path; + } + + /** + * Return the contents of a given file. + * + * @since 4.0.0 + * + * @param string $path The file's path. + * @param bool $is_string_attachment Whether this file is a string attachment. + * + * @return string File contents. + */ + private function get_attachment_file_content( $path, $is_string_attachment ) { + + if ( ! $is_string_attachment ) { + if ( ! file_exists( $path ) ) { + return false; + } + + return file_get_contents( $path ); + } + + return $path; + } + + /** + * Store a file. + * + * @since 4.0.0 + * + * @param string $file_content The file's contents. + * @param string $original_filename The original file's name. + * + * @return string The file's path. + */ + private function store_file( $file_content, $original_filename ) { + + $uploads_directory = $this->get_uploads_directory(); + + if ( is_wp_error( $uploads_directory ) ) { + return false; + } + + if ( ! is_dir( $uploads_directory ) ) { + wp_mkdir_p( $uploads_directory ); + + // Check if the .htaccess exists in the root upload directory, if not - create it. + Uploads::create_upload_dir_htaccess_file(); + + // Check if the index.html exists in the directories, if not - create them. + Uploads::create_index_html_file( Uploads::upload_dir()['path'] ); + Uploads::create_index_html_file( $uploads_directory ); + } + + $file_extension = pathinfo( $original_filename, PATHINFO_EXTENSION ); + $filename = wp_unique_filename( $uploads_directory, wp_generate_password( 32, false, false ) . '.' . $file_extension ); + $uploads_directory = trailingslashit( $uploads_directory ); + + if ( ! is_writeable( $uploads_directory ) ) { + return false; + } + + $upload_path = $uploads_directory . $filename; + + if ( file_put_contents( $upload_path, $file_content ) !== false ) { // phpcs:ignore WordPress.WP.AlternativeFunctions.file_system_read_file_put_contents + return $upload_path; + } + + return false; + } + + /** + * Delete attachments, removing their files from disk. + * + * @since 4.0.0 + * + * @param null|array $attachments List of attachments to cleanup, or null for all attachments. + * @param null|DateTime $before_datetime The datetime attachments should be older than + * to be removed, or null for all attachments. + * + * @return void. + */ + public function delete_attachments( $attachments = null, $before_datetime = null ) { // phpcs:ignore Generic.Metrics.CyclomaticComplexity.TooHigh + + $uploads_directory = $this->get_uploads_directory(); + + if ( + is_wp_error( $uploads_directory ) || + ! is_dir( $uploads_directory ) + ) { + return; + } + + $files = []; + + // If no attachment list is provided, just iterate over all files in our uploads directory. + if ( is_null( $attachments ) ) { + $nodes = new RecursiveIteratorIterator( + new RecursiveDirectoryIterator( $uploads_directory, RecursiveDirectoryIterator::SKIP_DOTS ), + RecursiveIteratorIterator::CHILD_FIRST + ); + $files = []; + + foreach ( $nodes as $fileinfo ) { + if ( ! $fileinfo->isDir() ) { + $files[] = $fileinfo->getRealPath(); + } + } + } else { + // Map attachments to their paths. + $files = wp_list_pluck( $attachments, 0 ); + + // Exclude any files that aren't in our uploads directory. + $files = array_filter( + $files, + function( $file ) use ( $uploads_directory ) { + return trailingslashit( dirname( $file ) ) === $uploads_directory; + } + ); + } + + // Skip any file that doesn't exist. + $files = array_filter( + $files, + function( $file ) { + return file_exists( $file ); + } + ); + + if ( ! is_null( $before_datetime ) ) { + // Skip any file that isn't older than the provided datetime. + $before_timestamp = $before_datetime->getTimestamp(); + $files = array_filter( + $files, + function( $file ) use ( $before_timestamp ) { + return ( + filemtime( $file ) !== false && + filemtime( $file ) < $before_timestamp + ); + } + ); + } + + foreach ( $files as $file ) { + @unlink( $file ); + } + } + + /** + * Get the upload directory path. + * + * @since 4.0.0 + * + * @return string|WP_Error The upload directory path. + */ + private function get_uploads_directory() { + + $uploads_directory = Uploads::upload_dir(); + + if ( is_wp_error( $uploads_directory ) ) { + return $uploads_directory; + } + + return trailingslashit( trailingslashit( $uploads_directory['path'] ) . 'queue_attachments' ); + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Email.php b/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Email.php new file mode 100644 index 00000000..d96d3466 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Email.php @@ -0,0 +1,608 @@ +date_enqueued = new DateTime( 'now', new DateTimeZone( 'UTC' ) ); + } + + /** + * Get a list of allowed statuses. + * + * @since 4.0.0 + * + * @return array + */ + public static function get_statuses() { + + return [ + self::STATUS_QUEUED, + self::STATUS_PROCESSING, + self::STATUS_PROCESSED, + ]; + } + + /** + * Construct an email from an array of data. + * + * @since 4.0.0 + * + * @param object $data Database row object. + * + * @throws Exception If supplied data is missing or malformed. + * + * @return Email + */ + public static function from_data( $data ) { // phpcs:ignore Generic.Metrics.CyclomaticComplexity.TooHigh + + if ( is_null( $data ) ) { + throw new Exception( esc_html__( 'Record not found in DB', 'wp-mail-smtp' ) ); + } + + if ( + ! is_object( $data ) || + ! property_exists( $data, 'data' ) || + ! isset( + $data->id, + $data->status, + $data->date_enqueued + ) + ) { + throw new Exception( esc_html__( 'Invalid record format', 'wp-mail-smtp' ) ); + } + + // Data can be null if email has been anonymized. + // Only check for valid JSON if data isn't null. + if ( ! is_null( $data->data ) && ! WP::is_json( $data->data ) ) { + throw new Exception( + sprintf( + /* translators: %1$s - JSON error message. */ + esc_html__( 'Data JSON decoding error: %1$s', 'wp-mail-smtp' ), + esc_html( json_last_error_msg() ) + ) + ); + } + + $email = new Email(); + $email_data = is_null( $data->data ) ? [] : json_decode( $data->data, true ); + $email_data = wp_parse_args( + $email_data, + [ + 'initiator_state' => [], + 'wp_mail_args' => [], + 'connection_data' => [], + 'mailer_state' => [], + ] + ); + + $email->id = (int) $data->id; + $email->initiator_state = $email_data['initiator_state']; + $email->wp_mail_args = $email_data['wp_mail_args']; + $email->connection_data = $email_data['connection_data']; + $email->mailer_state = $email_data['mailer_state']; + $email->status = (int) $data->status; + $email->date_enqueued = $email->get_datetime( $data->date_enqueued ); + + if ( isset( $data->date_processed ) ) { + $email->date_processed = $email->get_datetime( $data->date_processed ); + } + + return $email; + } + + /** + * Get this email's ID. + * + * @since 4.0.0 + * + * @return int + */ + public function get_id() { + + return (int) $this->id; + } + + /** + * Get this email's status. + * + * @since 4.0.0 + * + * @return int + */ + public function get_status() { + + return $this->status; + } + + /** + * Set this email's status. + * + * @since 4.0.0 + * + * @param int $status Email status. + * + * @return Email + */ + public function set_status( $status ) { + + $status = (int) $status; + + if ( ! in_array( $status, self::get_statuses(), true ) ) { + $status = self::STATUS_QUEUED; + } + + $this->status = $status; + + return $this; + } + + /** + * Get this email's `wp_mail` call arguments. + * + * @since 4.0.0 + * + * @return array + */ + public function get_wp_mail_args() { + + return $this->wp_mail_args; + } + + /** + * Set this email's `wp_mail` call arguments. + * + * @since 4.0.0 + * + * @param array $args Array of arguments. + * + * @return Email + */ + public function set_wp_mail_args( $args ) { + + $args = wp_parse_args( + $args, + [ + 'headers' => '', + 'attachments' => [], + ] + ); + + $this->wp_mail_args = $args; + + return $this; + } + + /** + * Get this email's MailCatcher state. + * + * @since 4.0.0 + * + * @return array + */ + public function get_connection_data() { + + return $this->connection_data; + } + + /** + * Set this email's connection data. + * + * @since 4.0.0 + * + * @param array $data Connection data. + * + * @return Email + */ + public function set_connection_data( $data ) { + + $this->connection_data = wp_parse_args( + $data, + [ + 'from_email' => '', + 'from_name' => '', + ] + ); + + return $this; + } + + /** + * Get this email's MailCatcher state. + * + * @since 4.0.0 + * + * @return array + */ + public function get_mailer_state() { + + return $this->mailer_state; + } + + /** + * Set this email's MailCatcher state. + * + * @since 4.0.0 + * + * @param array $state MailCatcher state. + * + * @return Email + */ + public function set_mailer_state( $state ) { + + $this->mailer_state = wp_parse_args( + $state, + [ + 'CharSet' => '', + 'ContentType' => '', + 'Encoding' => '', + 'CustomHeader' => '', + 'Subject' => '', + 'Body' => '', + 'AltBody' => '', + 'ReplyTo' => '', + 'to' => '', + 'cc' => '', + 'bcc' => '', + 'attachment' => '', + ] + ); + + return $this; + } + + /** + * Get this email's WPMailInitiator state. + * + * @since 4.0.0 + * + * @return array + */ + public function get_initiator_state() { + + return $this->initiator_state; + } + + /** + * Set this email's WPMailInitiator state. + * + * @since 4.0.0 + * + * @param array $state MailCatcher state. + * + * @return Email + */ + public function set_initiator_state( $state ) { + + $this->initiator_state = wp_parse_args( + $state, + [ + 'file' => '', + 'line' => '', + 'backtrace' => '', + ] + ); + + return $this; + } + + /** + * Get the date and time this email + * was enqueued at. + * + * @since 4.0.0 + * + * @return DateTime + */ + public function get_date_enqueued() { + + return $this->date_enqueued; + } + + /** + * Set the date and time this email + * was enqueued at. + * + * @since 4.0.0 + * + * @param DateTime $datetime Date and time of enqueueing. + * + * @return Email + */ + public function set_date_enqueued( $datetime ) { + + $this->date_enqueued = $this->get_datetime( $datetime ); + + return $this; + } + + /** + * Get the date and time this email + * was processed at. + * + * @since 4.0.0 + * + * @return DateTime + */ + public function get_date_processed() { + + return $this->date_processed; + } + + /** + * Set the date and time this email + * was processed at. + * + * @since 4.0.0 + * + * @param DateTime $datetime Date and time of processing. + * + * @return Email + */ + public function set_date_processed( $datetime ) { + + $this->date_processed = $this->get_datetime( $datetime ); + + return $this; + } + + /** + * Convert a database string to a DateTime + * object, if necessary. + * + * @since 4.0.0 + * + * @param string $datetime Date and time. + * + * @return DateTime + */ + private function get_datetime( $datetime ) { + + if ( ! is_a( $datetime, DateTime::class ) ) { + // Validate the date. Time is ignored. + $mm = substr( $datetime, 5, 2 ); + $jj = substr( $datetime, 8, 2 ); + $aa = substr( $datetime, 0, 4 ); + + $valid_date = wp_checkdate( $mm, $jj, $aa, $datetime ); + $timezone = new DateTimeZone( 'UTC' ); + + if ( $valid_date ) { + $datetime = DateTime::createFromFormat( WP::datetime_mysql_format(), $datetime, $timezone ); + } else { + $datetime = new DateTime( 'now', $timezone ); + } + } + + return $datetime; + } + + /** + * Erase any potentially sensitive data. + * + * @since 4.0.0 + * + * @return @return Email + */ + public function anonymize() { + + $this->initiator_state = null; + $this->wp_mail_args = null; + $this->connection_data = null; + $this->mailer_state = null; + + return $this; + } + + /** + * Save a new or modified email in DB. + * + * @since 4.0.0 + * + * @throws Exception If data can't be encoded, + * or a database error occurred. + * + * @return int New or updated email ID. + */ + public function save() { + + global $wpdb; + + $table = Queue::get_table_name(); + $data = [ + 'initiator_state' => $this->initiator_state, + 'wp_mail_args' => $this->wp_mail_args, + 'connection_data' => $this->connection_data, + 'mailer_state' => $this->mailer_state, + ]; + + $data = array_filter( $data ); + + if ( ! empty( $data ) ) { + $data = wp_json_encode( + [ + 'initiator_state' => $this->initiator_state, + 'wp_mail_args' => $this->wp_mail_args, + 'connection_data' => $this->connection_data, + 'mailer_state' => $this->mailer_state, + ] + ); + + if ( $data === false ) { + throw new Exception( + sprintf( + /* translators: %1$s - JSON error message. */ + esc_html__( 'Data JSON encoding error: %1$s', 'wp-mail-smtp' ), + esc_html( json_last_error_msg() ) + ) + ); + } + } else { + $data = null; + } + + if ( (bool) $this->get_id() ) { + // Update the existing DB table record. + $result = $wpdb->update( // phpcs:ignore WordPress.DB.DirectDatabaseQuery.NoCaching + $table, + [ + 'data' => $data, + 'status' => $this->status, + 'date_processed' => $this->get_date_processed()->format( WP::datetime_mysql_format() ), + ], + [ + 'id' => $this->get_id(), + ], + [ + '%s', // data. + '%s', // status. + '%s', // date_processed. + ], + [ + '%d', + ] + ); + + $email_id = $this->get_id(); + } else { + // Create a new DB table record. + $result = $wpdb->insert( + $table, + [ + 'data' => $data, + 'status' => $this->status, + 'date_enqueued' => $this->get_date_enqueued()->format( WP::datetime_mysql_format() ), + ], + [ + '%s', // data. + '%s', // status. + '%s', // date_enqueued. + ] + ); + + $email_id = $wpdb->insert_id; + } + + if ( $result === false ) { + throw new Exception( + sprintf( + /* translators: %1$s - Database error message. */ + esc_html__( 'Insert/update SQL query error: %1$s', 'wp-mail-smtp' ), + esc_html( $wpdb->last_error ) + ) + ); + } + + return (int) $email_id; + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Migration.php b/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Migration.php new file mode 100644 index 00000000..ac9000e6 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Migration.php @@ -0,0 +1,87 @@ +get_queue()->is_enabled(); + } + + /** + * Initial migration - create the table structure. + * + * @since 4.0.0 + */ + protected function migrate_to_1() { + + global $wpdb; + + $table = Queue::get_table_name(); + $collate = ! empty( $wpdb->collate ) ? "COLLATE='{$wpdb->collate}'" : ''; + + /* + * Create the table. + */ + $sql = " + CREATE TABLE `$table` ( + `id` INT UNSIGNED NOT NULL AUTO_INCREMENT, + `data` LONGTEXT NULL, + `status` TINYINT UNSIGNED NOT NULL DEFAULT '0', + `date_enqueued` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, + `date_processed` TIMESTAMP NULL, + PRIMARY KEY (id), + INDEX status (status), + INDEX date_processed (date_processed) + ) + ENGINE='InnoDB' + {$collate};"; + + $result = $wpdb->query( $sql ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared, WordPress.DB.DirectDatabaseQuery.NoCaching + + if ( ! empty( $wpdb->last_error ) ) { + update_option( self::ERROR_OPTION_NAME, $wpdb->last_error, false ); + } + + // Save the current version to DB. + if ( $result !== false ) { + $this->update_db_ver( 1 ); + } + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Queue.php b/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Queue.php new file mode 100644 index 00000000..3bec749d --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Queue/Queue.php @@ -0,0 +1,760 @@ +is_valid_db() ) { + return false; + } + + global $phpmailer; + + $wp_mail_args = wp_mail_smtp()->get_processor()->get_filtered_wp_mail_args(); + $initiator = wp_mail_smtp()->get_wp_mail_initiator(); + $processor = wp_mail_smtp()->get_processor(); + $initiator_state = [ + 'file' => $initiator->get_file(), + 'line' => $initiator->get_line(), + 'backtrace' => $initiator->get_backtrace(), + ]; + $connection_data = [ + 'from_email' => $processor->get_filtered_from_email(), + 'from_name' => $processor->get_filtered_from_name(), + ]; + + // Keep a reference to the original attachments, + // if something goes wrong while enqueueing the email. + $original_attachments = $phpmailer->getAttachments(); + + // Obfuscate attachment paths for the enqueued email. + $processed_attachments = ( new Attachments() )->process_attachments( $original_attachments ); + + // Set obfuscated path attachments. + $this->set_attachments( $processed_attachments ); + + // Add queued date header in the same format as "Date" header. + $phpmailer->addCustomHeader( 'X-WP-Mail-SMTP-Queued', $phpmailer::rfcDate() ); + + $email = ( new Email() ) + ->set_wp_mail_args( $wp_mail_args ) + ->set_initiator_state( $initiator_state ) + ->set_connection_data( $connection_data ) + ->set_mailer_state( $phpmailer->get_state() ); + + // Add the email to the queue. + try { + $this->add_email( $email ); + } catch ( Exception $e ) { + // Cleanup any obfuscated path attachments. + $this->cleanup_attachments(); + + // Reset original attachments. + $this->set_attachments( $original_attachments ); + + $message = sprintf( + /* translators: %1$s - exception message. */ + esc_html__( '[Emails Queue] Skipped enqueueing email. %1$s.', 'wp-mail-smtp' ), + esc_html( $e->getMessage() ) + ); + + DebugEvents::add_debug( $message ); + + return false; + } + + return true; + } + + /** + * Send an email. Can only be called + * by a running SendEnqueuedEmailTask. + * + * @since 4.0.0 + * + * @param int|string $email_id Email's ID. + */ + public function send_email( $email_id ) { // phpcs:ignore WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks + + // This method can't be called directly. + if ( ! doing_action( SendEnqueuedEmailTask::ACTION ) ) { + $message = sprintf( + /* translators: %1$d - email ID. */ + esc_html__( '[Emails Queue] Skipped email sending from the queue. Queue::send_email method was called directly. Email ID: %1$d.', 'wp-mail-smtp' ), + $email_id + ); + + DebugEvents::add_debug( $message ); + + return; + } + + try { + $email = $this->get_email( $email_id ); + } catch ( Exception $e ) { + $this->delete_email( $email_id ); + + $message = sprintf( + /* translators: %1$s - exception message; %2$s - email ID. */ + esc_html__( '[Emails Queue] Skipped email sending from the queue. %1$s. Email ID: %2$s', 'wp-mail-smtp' ), + esc_html( $e->getMessage() ), + $email_id + ); + + DebugEvents::add_debug( $message ); + + return; + } + + // Bail early if the email still enqueued, or already processed. + if ( $email->get_status() !== Email::STATUS_PROCESSING ) { + $message = sprintf( + /* translators: %1$d - email ID; %2$s - email status. */ + esc_html__( '[Emails Queue] Skipped email sending from the queue. Wrong email status. Email ID: %1$d, email status: %2$s.', 'wp-mail-smtp' ), + $email_id, + $email->get_status() + ); + + DebugEvents::add_debug( $message ); + + return; + } + + // Keep a reference to the email + // being sent so that it's accessible + // across hooks. + $this->email = $email; + + // Un-hook all user-defined hooks. + $this->clear_wp_mail_hooks(); + + // Stop enqueueing emails. + add_filter( 'wp_mail_smtp_mail_catcher_send_enqueue_email', '__return_false', PHP_INT_MAX ); + + // Re-hook Processor functionality, before applying PHPMailer state, + // so that From and From Name are correctly filtered. + wp_mail_smtp()->get_processor()->hooks(); + + // Apply the email's PHPMailer state. + add_action( 'phpmailer_init', [ $this, 'apply_mailer_state' ], PHP_INT_MAX ); + + // Retrieve original wp_mail arguments. + $wp_mail_args = new WPMailArgs( $email->get_wp_mail_args() ); + + // Inject user-filtered From and From Name. + $wp_mail_headers = $wp_mail_args->get_headers(); + $wp_mail_headers[] = $this->get_connection_from_header( $email->get_connection_data() ); + + // Inject the original initiator state. + add_filter( 'wp_mail_smtp_wp_mail_initiator_set_initiator', [ $this, 'apply_initiator_state' ] ); + + // Send the email. + wp_mail( + $wp_mail_args->get_to_email(), + $wp_mail_args->get_subject(), + $wp_mail_args->get_message(), + $wp_mail_headers, + $wp_mail_args->get_attachments() + ); + + // Update the email. + try { + $this->email->set_status( Email::STATUS_PROCESSED ) + ->set_date_processed( new DateTime( 'now', new DateTimeZone( 'UTC' ) ) ) + ->anonymize() + ->save(); + } catch ( Exception $e ) { + $this->delete_email( $email_id ); + + $message = sprintf( + /* translators: %1$s - exception message; %2$d - email ID. */ + esc_html__( '[Emails Queue] Failed to update queue record after sending email from the queue. %1$s. Email ID: %2$d', 'wp-mail-smtp' ), + esc_html( $e->getMessage() ), + $email_id + ); + + DebugEvents::add_debug( $message ); + } + + // Cleanup any attachments. + $this->cleanup_attachments(); + + // Stop applying PHPMailer state. + remove_action( 'phpmailer_init', [ $this, 'apply_mailer_state' ], PHP_INT_MAX ); + + // Clear the email reference. + $this->email = null; + + // Re-hook all user-defined hooks. + $this->restore_wp_mail_hooks(); + + // Start enqueueing emails again. + remove_filter( 'wp_mail_smtp_mail_catcher_send_enqueue_email', '__return_false', PHP_INT_MAX ); + } + + /** + * Return the current email's WPMailInitiator state. + * + * @since 4.0.0 + * + * @return array WPMailInitiator state. + */ + public function apply_initiator_state() { + + return $this->email->get_initiator_state(); + } + + /** + * Apply state to the current mailer. + * + * @since 4.0.0 + * + * @param PHPMailer $phpmailer PHPMailer instance. + */ + public function apply_mailer_state( &$phpmailer ) { + + $phpmailer->set_state( $this->email->get_mailer_state() ); + } + + /** + * Get the table name. + * + * @since 4.0.0 + * + * @return string Table name, prefixed. + */ + public static function get_table_name() { + + global $wpdb; + + return $wpdb->prefix . 'wpmailsmtp_emails_queue'; + } + + /** + * Count processing or processed emails since a given date. + * + * @since 4.0.0 + * + * @param null|DateTime $since_datetime Date to count from, or null for all emails. + * + * @return int Email count. + */ + public function count_processed_emails( DateTime $since_datetime = null ) { + + if ( ! $this->is_valid_db() ) { + return 0; + } + + global $wpdb; + + $table = self::get_table_name(); + $where = $wpdb->prepare( + 'status IN (%d, %d)', + Email::STATUS_PROCESSING, + Email::STATUS_PROCESSED + ); + + if ( ! is_null( $since_datetime ) ) { + $where .= $wpdb->prepare( + ' AND date_processed >= %s', + $since_datetime->format( WP::datetime_mysql_format() ) + ); + } + + // phpcs:disable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + $count = $wpdb->get_var( + "SELECT COUNT(*) + FROM $table + WHERE $where;" + ); + // phpcs:enable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + + return (int) $count; + } + + /** + * Count queued emails. + * + * @since 4.0.0 + * + * @return int Email count. + */ + public function count_queued_emails() { + + if ( ! $this->is_valid_db() ) { + return 0; + } + + global $wpdb; + + $table = self::get_table_name(); + $where = $wpdb->prepare( 'status = %d', Email::STATUS_QUEUED ); + // phpcs:disable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + $count = $wpdb->get_var( + "SELECT COUNT(*) + FROM $table + WHERE $where;" + ); + // phpcs:enable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + + return (int) $count; + } + + /** + * Schedule emails for sending. + * + * @since 4.0.0 + */ + public function process() { // phpcs:ignore WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks + + if ( ! $this->is_valid_db() ) { + return; + } + + /** + * Filters the amount of emails the queue should process. + * + * @since 4.0.0 + * + * @param int|null $count Amount of emails to process. + */ + $count = apply_filters( 'wp_mail_smtp_queue_process_count', null ); + + // If the queue has been disabled, just process all emails. + if ( ! $this->is_enabled() ) { + $count = null; + } + + $emails = $this->get_emails( $count ); + $task = new SendEnqueuedEmailTask(); + + foreach ( $emails as $email ) { + try { + $email->set_status( Email::STATUS_PROCESSING ) + ->set_date_processed( new DateTime( 'now', new DateTimeZone( 'UTC' ) ) ) + ->save(); + } catch ( Exception $e ) { + $this->delete_email( $email->get_id() ); + + $message = sprintf( + /* translators: %1$s - exception message. */ + esc_html__( '[Emails Queue] Skipped processing enqueued email. %1$s. Email ID: %2$d', 'wp-mail-smtp' ), + esc_html( $e->getMessage() ), + $email->get_id() + ); + + DebugEvents::add_debug( $message ); + + continue; + } + + $task->schedule( $email->get_id() ); + } + } + + /** + * Cleanup emails processed before a given date. + * + * @since 4.0.0 + */ + public function cleanup() { // phpcs:ignore WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks + + /** + * Filters the date before which emails should + * be removed from the queue. + * + * @since 4.0.0 + * + * @param DateTime|null $datetime Date before which to remove emails. + */ + $datetime = apply_filters( 'wp_mail_smtp_queue_cleanup_before_datetime', null ); + + // If the queue has been disabled, just cleanup all emails. + if ( ! $this->is_enabled() ) { + $datetime = null; + } + + $this->delete_emails_before( $datetime ); + } + + /** + * Whether the DB table exists. + * + * @since 4.0.0 + * + * @return bool + */ + public function is_valid_db() { + + global $wpdb; + + static $is_valid = null; + + // Return cached value only if table already exists. + if ( $is_valid === true ) { + return true; + } + + $table = self::get_table_name(); + // phpcs:ignore WordPress.DB.DirectDatabaseQuery.NoCaching + $is_valid = (bool) $wpdb->get_var( $wpdb->prepare( 'SHOW TABLES LIKE %s;', $table ) ); + + return $is_valid; + } + + /** + * Set current email's attachments. + * + * @since 4.0.0 + * + * @param array $attachments List of attachments. + */ + private function set_attachments( $attachments ) { + + global $phpmailer; + + $phpmailer->clearAttachments(); + + foreach ( $attachments as $attachment ) { + [ $path, , $name, $encoding, $type, , $disposition ] = $attachment; + + try { + $phpmailer->addAttachment( $path, $name, $encoding, $type, $disposition ); + } catch ( Exception $e ) { + continue; + } + } + } + + /** + * Remove email attachments after sending. + * + * @since 4.0.0 + */ + private function cleanup_attachments() { + + global $phpmailer; + + $attachments = $phpmailer->getAttachments(); + + ( new Attachments() )->delete_attachments( $attachments ); + } + + /** + * Get the From/From Name header + * from an email's connection data. + * + * @since 4.0.0 + * + * @param array $connection_data Email's connection data. + */ + private function get_connection_from_header( $connection_data ) { + + [ + 'from_email' => $from_email, + 'from_name' => $from_name + ] = $connection_data; + + $from = ( + $from_name === '' ? + $from_email : + sprintf( '%1s <%2s>', $from_name, $from_email ) + ); + + $from_header = sprintf( + 'From:%s', + $from + ); + + return $from_header; + } + + /** + * Return a list of the `wp_mail` related hooks + * that should be de-registered before sending + * an enqueued email. + * + * @since 4.0.0 + * + * @return array List of hooks. + */ + private function get_wp_mail_hooks() { + + return [ + 'wp_mail', + 'pre_wp_mail', + 'wp_mail_from', + 'wp_mail_from_name', + 'wp_mail_succeeded', + 'wp_mail_failed', + ]; + } + + /** + * Clear any user-defined `wp_mail` related hooks + * before sending an enqueued email. + * + * @since 4.0.0 + */ + private function clear_wp_mail_hooks() { + + global $wp_filter; + + $wp_mail_hooks = array_intersect_key( + $wp_filter, + array_flip( $this->get_wp_mail_hooks() ) + ); + + foreach ( $wp_mail_hooks as $hook_name => $hook ) { + foreach ( $hook->callbacks as $priority => $callbacks ) { + foreach ( $callbacks as $callback ) { + $this->registered_wp_mail_hooks[] = [ + $hook_name, + $callback['function'], + $priority, + $callback['accepted_args'], + ]; + } + } + + remove_all_filters( $hook_name ); + } + } + + /** + * Re-register any previous de-registered `wp_mail` related hooks + * after sending an enqueued email. + * + * @since 4.0.0 + */ + private function restore_wp_mail_hooks() { // phpcs:ignore WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks + + foreach ( $this->registered_wp_mail_hooks as $hook ) { + list( $hook_name, $callback, $priority, $accepted_args ) = $hook; + + add_filter( $hook_name, $callback, $priority, $accepted_args ); + } + } + + /** + * Add an email to the queue. + * + * @since 4.0.0 + * + * @throws Exception When email couldn't be saved. + * + * @param Email $email The email to enqueue. + */ + private function add_email( Email $email ) { + + if ( ! $this->is_valid_db() ) { + return; + } + + $email->set_date_enqueued( new DateTime( 'now', new DateTimeZone( 'UTC' ) ) ) + ->set_status( Email::STATUS_QUEUED ) + ->save(); + } + + /** + * Get an email. + * + * @since 4.0.0 + * + * @param int|string $email_id The email's ID. + * + * @return null|Email The email, or null if not found. + */ + private function get_email( $email_id ) { + + if ( ! $this->is_valid_db() ) { + return null; + } + + global $wpdb; + + $table = self::get_table_name(); + $where = $wpdb->prepare( 'ID = %d', (int) $email_id ); + // phpcs:disable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + $data = $wpdb->get_row( "SELECT * FROM $table WHERE $where" ); + // phpcs:enable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + + $email = Email::from_data( $data ); + + return $email; + } + + /** + * Get queued emails from the queue. + * + * @since 4.0.0 + * + * @param null|int $count Amount of emails to return, or null for all emails. + * + * @return Email[] Array of emails. + */ + private function get_emails( $count = null ) { + + if ( ! $this->is_valid_db() ) { + return []; + } + + global $wpdb; + + $table = self::get_table_name(); + $where = $wpdb->prepare( 'status = %d', Email::STATUS_QUEUED ); + $limit = ''; + + if ( ! is_null( $count ) ) { + $limit = $wpdb->prepare( + 'LIMIT 0, %d', + max( 0, intval( $count ) ) + ); + } + + // phpcs:disable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + $data = $wpdb->get_results( + "SELECT * + FROM $table + WHERE $where + ORDER BY date_enqueued ASC + $limit;" + ); + // phpcs:enable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + + $emails = []; + + foreach ( $data as $row ) { + try { + $emails[] = Email::from_data( $row ); + } catch ( Exception $e ) { + $this->delete_email( $row->id ); + + $message = sprintf( + /* translators: %1$s - exception message. */ + esc_html__( '[Emails Queue] Skipped processing enqueued email. %1$s. Email ID: %2$d', 'wp-mail-smtp' ), + esc_html( $e->getMessage() ), + $row->id + ); + + DebugEvents::add_debug( $message ); + } + } + + return $emails; + } + + /** + * Delete emails processed before a given date. + * + * @since 4.0.0 + * + * @param DateTime|null $before_datetime Date before which to remove emails, or null for all emails. + */ + private function delete_emails_before( $before_datetime ) { + + if ( ! $this->is_valid_db() ) { + return; + } + + global $wpdb; + + $table = self::get_table_name(); + $where = $wpdb->prepare( 'status = %d', Email::STATUS_PROCESSED ); + + if ( is_a( $before_datetime, DateTime::class ) ) { + $where .= $wpdb->prepare( + ' AND date_processed < %s', + $before_datetime->format( WP::datetime_mysql_format() ) + ); + } + + // phpcs:disable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + $wpdb->query( "DELETE FROM $table WHERE $where" ); + // phpcs:enable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + } + + /** + * Delete an email. + * + * @since 4.0.0 + * + * @param int $email_id ID of the email. + */ + private function delete_email( $email_id ) { + + if ( ! $this->is_valid_db() ) { + return; + } + + global $wpdb; + + $table = self::get_table_name(); + + // phpcs:disable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + $wpdb->query( + $wpdb->prepare( "DELETE FROM $table WHERE ID = %d", $email_id ) + ); + // phpcs:enable WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Queue/CleanupQueueTask.php b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Queue/CleanupQueueTask.php new file mode 100644 index 00000000..2964de63 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Queue/CleanupQueueTask.php @@ -0,0 +1,90 @@ +get_queue()->is_enabled() || + Tasks::is_scheduled( self::ACTION ) !== false + ) { + return; + } + + // Schedule the task. + $this->recurring( strtotime( 'now' ), DAY_IN_SECONDS ) + ->unique() + ->register(); + } + + /** + * Perform email sending. + * + * @since 4.0.0 + */ + public function process() { + + $queue = wp_mail_smtp()->get_queue(); + $attachments = new Attachments(); + + // Cleanup processed emails. + $queue->cleanup(); + + // Cleanup older-than-a-month attachments. + $attachments->delete_attachments( null, new DateTime( '1 month ago', new DateTimeZone( 'UTC' ) ) ); + + if ( ! $queue->is_enabled() ) { + // If the query has been disabled in the meanwhile, + // and there aren't any emails left, + // cancel the cleanup task. + $queued_emails_count = $queue->count_queued_emails(); + $processed_emails_count = $queue->count_processed_emails(); + + if ( $queued_emails_count === 0 && $processed_emails_count === 0 ) { + // Cleanup any remaining, older-than-an-hour attachments. + $attachments->delete_attachments( null, new DateTime( '1 hour ago', new DateTimeZone( 'UTC' ) ) ); + + $this->cancel_force(); + } + } + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Queue/ProcessQueueTask.php b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Queue/ProcessQueueTask.php new file mode 100644 index 00000000..e5201c0b --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Queue/ProcessQueueTask.php @@ -0,0 +1,71 @@ +get_queue()->is_enabled() || + Tasks::is_scheduled( self::ACTION ) !== false + ) { + return; + } + + // Schedule the task. + $this->recurring( strtotime( 'now' ), MINUTE_IN_SECONDS ) + ->unique() + ->register(); + } + + /** + * Perform email sending. + * + * @since 4.0.0 + */ + public function process() { + + $queue = wp_mail_smtp()->get_queue(); + + $queue->process(); + + if ( ! $queue->is_enabled() ) { + $this->cancel_force(); + } + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Queue/SendEnqueuedEmailTask.php b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Queue/SendEnqueuedEmailTask.php new file mode 100644 index 00000000..699c35c7 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Queue/SendEnqueuedEmailTask.php @@ -0,0 +1,84 @@ +async() + ->params( $email_id ) + ->register(); + } + + /** + * Perform email sending. + * + * @since 4.0.0 + * + * @param int $meta_id The Meta ID with the stored task parameters. + */ + public function process( $meta_id ) { + + $task_meta = new Meta(); + $meta = $task_meta->get( (int) $meta_id ); + + // We should actually receive the passed parameter. + if ( empty( $meta ) || empty( $meta->data ) || count( $meta->data ) < 1 ) { + return; + } + + $email_id = $meta->data[0]; + + wp_mail_smtp()->get_queue()->send_email( $email_id ); + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Task.php b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Task.php index 55b70157..f4032d4e 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Task.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Task.php @@ -86,6 +86,15 @@ class Task { */ private $interval; + /** + * Whether this task is unique. + * + * @since 4.0.0 + * + * @var bool + */ + private $unique = false; + /** * Task constructor. * @@ -159,6 +168,20 @@ class Task { return $this; } + /** + * Set this task as unique. + * + * @since 4.0.0 + * + * @return Task + */ + public function unique() { + + $this->unique = true; + + return $this; + } + /** * Pass any number of params that should be saved to Meta table. * @@ -249,7 +272,8 @@ class Task { return as_enqueue_async_action( $this->action, [ $this->meta_id ], - Tasks::GROUP + Tasks::GROUP, + $this->unique ); } @@ -271,7 +295,8 @@ class Task { $this->interval, $this->action, [ $this->meta_id ], - Tasks::GROUP + Tasks::GROUP, + $this->unique ); } @@ -292,7 +317,8 @@ class Task { $this->timestamp, $this->action, [ $this->meta_id ], - Tasks::GROUP + Tasks::GROUP, + $this->unique ); } @@ -316,4 +342,15 @@ class Task { return true; } + + /** + * Cancel all occurrences of this task, + * preventing it from re-registering itself. + * + * @since 4.0.0 + */ + public function cancel_force() { // phpcs:ignore WPForms.PHP.HooksMethod.InvalidPlaceForAddingHooks + + add_action( 'shutdown', [ $this, 'cancel' ], PHP_INT_MAX ); + } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Tasks.php b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Tasks.php index 9eef4ea3..92041077 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Tasks.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Tasks/Tasks.php @@ -5,6 +5,9 @@ namespace WPMailSMTP\Tasks; use ActionScheduler_Action; use ActionScheduler_DataController; use ActionScheduler_DBStore; +use WPMailSMTP\Tasks\Queue\CleanupQueueTask; +use WPMailSMTP\Tasks\Queue\ProcessQueueTask; +use WPMailSMTP\Tasks\Queue\SendEnqueuedEmailTask; use WPMailSMTP\Tasks\Reports\SummaryEmailTask; /** @@ -77,6 +80,9 @@ class Tasks { $tasks = [ SummaryEmailTask::class, DebugEventsCleanupTask::class, + ProcessQueueTask::class, + CleanupQueueTask::class, + SendEnqueuedEmailTask::class, ]; /** diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/Upgrade.php b/wp/wp-content/plugins/wp-mail-smtp/src/Upgrade.php index c97238ef..ed030d32 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/Upgrade.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/Upgrade.php @@ -15,7 +15,14 @@ class Upgrade { * * @since 1.1.0 */ - public function __construct() { + public function __construct() {} + + /** + * Run upgrades. + * + * @since 4.0.0 + */ + public function run() { $upgrades = $this->upgrades(); diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/UsageTracking/UsageTracking.php b/wp/wp-content/plugins/wp-mail-smtp/src/UsageTracking/UsageTracking.php index 7de5271f..2def636d 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/UsageTracking/UsageTracking.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/UsageTracking/UsageTracking.php @@ -7,6 +7,7 @@ use WPMailSMTP\Admin\SetupWizard; use WPMailSMTP\Conflicts; use WPMailSMTP\Debug; use WPMailSMTP\Helpers\Helpers; +use WPMailSMTP\OptimizedEmailSending; use WPMailSMTP\Options; use WPMailSMTP\WP; @@ -144,6 +145,7 @@ class UsageTracking { 'wp_mail_smtp_setup_wizard_completed_time' => isset( $setup_wizard_stats['completed_time'] ) ? (int) $setup_wizard_stats['completed_time'] : 0, 'wp_mail_smtp_setup_wizard_completed_successfully' => ! empty( $setup_wizard_stats['was_successful'] ), 'wp_mail_smtp_source' => sanitize_title( get_option( 'wp_mail_smtp_source', '' ) ), + 'wp_mail_smtp_optimize_email_sending' => (bool) OptimizedEmailSending::is_enabled(), ] ); diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/WPMailArgs.php b/wp/wp-content/plugins/wp-mail-smtp/src/WPMailArgs.php new file mode 100644 index 00000000..a797709a --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/src/WPMailArgs.php @@ -0,0 +1,252 @@ +args = $args; + } + + /** + * Get arguments. + * + * @since 3.7.0 + * + * @return array + */ + public function get_args() { + + return $this->args; + } + + /** + * Get to email. + * + * @since 3.7.0 + * + * @return string + */ + public function get_to_email() { + + return $this->get_arg( 'to' ); + } + + /** + * Get subject. + * + * @since 3.7.0 + * + * @return string + */ + public function get_subject() { + + return $this->get_arg( 'subject' ); + } + + /** + * Get message. + * + * @since 3.7.0 + * + * @return string + */ + public function get_message() { + + return $this->get_arg( 'message' ); + } + + /** + * Get from email. + * + * @since 3.7.0 + * + * @return string + */ + public function get_from_email() { + + $from = $this->get_from(); + + return $from['email']; + } + + /** + * Get from name. + * + * @since 3.7.0 + * + * @return string + */ + public function get_from_name() { + + $from = $this->get_from(); + + return $from['name']; + } + + /** + * Get parsed headers. + * + * @since 3.7.0 + * + * @return array + */ + public function get_headers() { // phpcs:ignore Generic.Metrics.CyclomaticComplexity.TooHigh + + if ( ! is_null( $this->headers ) ) { + return $this->headers; + } + + $this->headers = []; + + if ( ! empty( $this->args['headers'] ) ) { + if ( ! is_array( $this->args['headers'] ) ) { + $headers = explode( "\n", str_replace( "\r\n", "\n", $this->args['headers'] ) ); + } else { + $headers = $this->args['headers']; + } + + foreach ( (array) $headers as $header ) { + if ( strpos( $header, ':' ) === false ) { + continue; + } + + list( $name, $content ) = array_map( 'trim', explode( ':', trim( $header ), 2 ) ); + + $name = strtolower( $name ); + + if ( isset( $this->headers[ $name ] ) && in_array( $name, [ 'cc', 'bcc', 'reply-to' ], true ) ) { + $this->headers[ $name ] .= ', ' . $content; + } else { + $this->headers[ $name ] = $content; + } + } + } + + return $this->headers; + } + + /** + * Get particular header value. + * + * @since 3.7.0 + * + * @param string $name Header name. + * + * @return null|string + */ + public function get_header( $name ) { + + $name = strtolower( $name ); + $headers = $this->get_headers(); + + return isset( $headers[ $name ] ) ? $headers[ $name ] : null; + } + + /** + * Get argument value. + * + * @since 3.7.0 + * + * @param string $key Argument key. + * @param mixed $default Default value. + * + * @return string + */ + private function get_arg( $key, $default = '' ) { + + return isset( $this->args[ $key ] ) ? $this->args[ $key ] : $default; + } + + /** + * Get from address. + * + * @since 3.7.0 + * + * @return array + */ + private function get_from() { + + $from_email = ''; + $from_name = ''; + $value = $this->get_header( 'from' ); + $value = is_null( $value ) ? '' : $value; + + $bracket_pos = strpos( $value, '<' ); + + if ( $bracket_pos !== false ) { + // Text before the bracketed email is the "From" name. + if ( $bracket_pos > 0 ) { + $from_name = substr( $value, 0, $bracket_pos - 1 ); + $from_name = str_replace( '"', '', $from_name ); + $from_name = trim( $from_name ); + } + + $from_email = substr( $value, $bracket_pos + 1 ); + $from_email = str_replace( '>', '', $from_email ); + $from_email = trim( $from_email ); + + // Avoid setting an empty $from_email. + } elseif ( trim( $value ) !== '' ) { + $from_email = trim( $value ); + } + + return [ + 'email' => $from_email, + 'name' => $from_name, + ]; + } + + /** + * Get attachments. + * + * @since 4.0.0 + * + * @return array + */ + public function get_attachments() { + + return $this->get_arg( 'attachments', [] ); + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/src/WPMailInitiator.php b/wp/wp-content/plugins/wp-mail-smtp/src/WPMailInitiator.php index cbe98425..035b79f8 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/src/WPMailInitiator.php +++ b/wp/wp-content/plugins/wp-mail-smtp/src/WPMailInitiator.php @@ -79,15 +79,18 @@ class WPMailInitiator { */ public function hooks() { - // Initialize initiator data. - add_filter( - 'wp_mail', - function ( $args ) { - $this->set_initiator(); + // Capture `wp_mail` function call. + add_action( 'wp_mail_smtp_processor_capture_wp_mail_call', [ $this, 'capture_wp_mail_call' ], 0 ); + } - return $args; - } - ); + /** + * Capture `wp_mail` function call. + * + * @since 4.0.0 + */ + public function capture_wp_mail_call() { + + $this->set_initiator(); } /** @@ -180,6 +183,15 @@ class WPMailInitiator { $backtrace = $this->get_wpmail_backtrace(); + /** + * Filter the `wp_mail` function initiator data. + * + * @since 4.0.0 + * + * @param array $backtrace Backtrace data. + */ + $backtrace = apply_filters( 'wp_mail_smtp_wp_mail_initiator_set_initiator', $backtrace ); + if ( empty( $backtrace['file'] ) ) { return; } diff --git a/wp/wp-content/plugins/wp-mail-smtp/uninstall.php b/wp/wp-content/plugins/wp-mail-smtp/uninstall.php index 15a73150..74e2f342 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/uninstall.php +++ b/wp/wp-content/plugins/wp-mail-smtp/uninstall.php @@ -64,6 +64,7 @@ if ( class_exists( 'ActionScheduler_QueueRunner' ) ) { } // WP MS uninstall process. +//phpcs:disable WPForms.Formatting.EmptyLineAfterAssigmentVariables.AddEmptyLine, WPForms.PHP.BackSlash.UseShortSyntax if ( is_multisite() ) { $main_site_settings = get_blog_option( get_main_site_id(), 'wp_mail_smtp', [] ); $network_wide = ! empty( $main_site_settings['general']['network_wide'] ); @@ -119,6 +120,13 @@ if ( is_multisite() ) { } } + // Delete queue table. + $queue_table = \WPMailSMTP\Queue\Queue::get_table_name(); + $wpdb->query( "DROP TABLE IF EXISTS $queue_table;" ); // phpcs:ignore WordPress.DB + + // Delete all queue attachments. + ( new \WPMailSMTP\Queue\Attachments() )->delete_attachments(); + /* * Cleanup network site data for Pro plugin only. */ @@ -201,6 +209,13 @@ if ( is_multisite() ) { } } + // Delete queue table. + $queue_table = \WPMailSMTP\Queue\Queue::get_table_name(); + $wpdb->query( "DROP TABLE IF EXISTS $queue_table;" ); // phpcs:ignore WordPress.DB + + // Delete all queue attachments. + ( new \WPMailSMTP\Queue\Attachments() )->delete_attachments(); + /* * Cleanup data for Pro plugin only. */ @@ -239,3 +254,4 @@ if ( is_multisite() ) { $meta_table = \WPMailSMTP\Tasks\Meta::get_table_name(); $wpdb->query( "DROP TABLE IF EXISTS $meta_table;" ); // phpcs:ignore WordPress.DB } +//phpcs:enable WPForms.Formatting.EmptyLineAfterAssigmentVariables.AddEmptyLine, WPForms.PHP.BackSlash.UseShortSyntax diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/autoload.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/autoload.php index 7c5ecab2..88b146fd 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/autoload.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/autoload.php @@ -22,4 +22,4 @@ if (PHP_VERSION_ID < 50600) { require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInit295984e5919e750baa7d7284cfe56164::getLoader(); +return ComposerAutoloaderInit473736c55a35b9a077f93cfc42f4bbf5::getLoader(); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_classmap.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_classmap.php index bb079c52..2e700b2e 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_classmap.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_classmap.php @@ -8,7 +8,7 @@ $baseDir = dirname($vendorDir); return array( 'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php', 'Composer\\Installers\\AglInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/AglInstaller.php', - 'Composer\\Installers\\AimeosInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/AimeosInstaller.php', + 'Composer\\Installers\\AkauntingInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/AkauntingInstaller.php', 'Composer\\Installers\\AnnotateCmsInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/AnnotateCmsInstaller.php', 'Composer\\Installers\\AsgardInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/AsgardInstaller.php', 'Composer\\Installers\\AttogramInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/AttogramInstaller.php', @@ -22,7 +22,6 @@ return array( 'Composer\\Installers\\CockpitInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CockpitInstaller.php', 'Composer\\Installers\\CodeIgniterInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CodeIgniterInstaller.php', 'Composer\\Installers\\Concrete5Installer' => $vendorDir . '/composer/installers/src/Composer/Installers/Concrete5Installer.php', - 'Composer\\Installers\\CraftInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CraftInstaller.php', 'Composer\\Installers\\CroogoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CroogoInstaller.php', 'Composer\\Installers\\DecibelInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/DecibelInstaller.php', 'Composer\\Installers\\DframeInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/DframeInstaller.php', @@ -40,9 +39,7 @@ return array( 'Composer\\Installers\\ImageCMSInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ImageCMSInstaller.php', 'Composer\\Installers\\Installer' => $vendorDir . '/composer/installers/src/Composer/Installers/Installer.php', 'Composer\\Installers\\ItopInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ItopInstaller.php', - 'Composer\\Installers\\JoomlaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/JoomlaInstaller.php', 'Composer\\Installers\\KanboardInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/KanboardInstaller.php', - 'Composer\\Installers\\KirbyInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/KirbyInstaller.php', 'Composer\\Installers\\KnownInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/KnownInstaller.php', 'Composer\\Installers\\KodiCMSInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/KodiCMSInstaller.php', 'Composer\\Installers\\KohanaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/KohanaInstaller.php', @@ -56,6 +53,7 @@ return array( 'Composer\\Installers\\MajimaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MajimaInstaller.php', 'Composer\\Installers\\MakoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MakoInstaller.php', 'Composer\\Installers\\MantisBTInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MantisBTInstaller.php', + 'Composer\\Installers\\MatomoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MatomoInstaller.php', 'Composer\\Installers\\MauticInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MauticInstaller.php', 'Composer\\Installers\\MayaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MayaInstaller.php', 'Composer\\Installers\\MediaWikiInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MediaWikiInstaller.php', @@ -71,7 +69,6 @@ return array( 'Composer\\Installers\\PantheonInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PantheonInstaller.php', 'Composer\\Installers\\PhiftyInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PhiftyInstaller.php', 'Composer\\Installers\\PhpBBInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PhpBBInstaller.php', - 'Composer\\Installers\\PimcoreInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PimcoreInstaller.php', 'Composer\\Installers\\PiwikInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PiwikInstaller.php', 'Composer\\Installers\\PlentymarketsInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PlentymarketsInstaller.php', 'Composer\\Installers\\Plugin' => $vendorDir . '/composer/installers/src/Composer/Installers/Plugin.php', @@ -92,9 +89,6 @@ return array( 'Composer\\Installers\\StarbugInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/StarbugInstaller.php', 'Composer\\Installers\\SyDESInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/SyDESInstaller.php', 'Composer\\Installers\\SyliusInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/SyliusInstaller.php', - 'Composer\\Installers\\Symfony1Installer' => $vendorDir . '/composer/installers/src/Composer/Installers/Symfony1Installer.php', - 'Composer\\Installers\\TYPO3CmsInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php', - 'Composer\\Installers\\TYPO3FlowInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/TYPO3FlowInstaller.php', 'Composer\\Installers\\TaoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/TaoInstaller.php', 'Composer\\Installers\\TastyIgniterInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/TastyIgniterInstaller.php', 'Composer\\Installers\\TheliaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/TheliaInstaller.php', @@ -152,6 +146,9 @@ return array( 'WPMailSMTP\\Compatibility\\Plugin\\Admin2020' => $baseDir . '/src/Compatibility/Plugin/Admin2020.php', 'WPMailSMTP\\Compatibility\\Plugin\\PluginAbstract' => $baseDir . '/src/Compatibility/Plugin/PluginAbstract.php', 'WPMailSMTP\\Compatibility\\Plugin\\PluginInterface' => $baseDir . '/src/Compatibility/Plugin/PluginInterface.php', + 'WPMailSMTP\\Compatibility\\Plugin\\WPForms' => $baseDir . '/src/Compatibility/Plugin/WPForms.php', + 'WPMailSMTP\\Compatibility\\Plugin\\WPFormsLite' => $baseDir . '/src/Compatibility/Plugin/WPFormsLite.php', + 'WPMailSMTP\\Compatibility\\Plugin\\WooCommerce' => $baseDir . '/src/Compatibility/Plugin/WooCommerce.php', 'WPMailSMTP\\Conflicts' => $baseDir . '/src/Conflicts.php', 'WPMailSMTP\\Connect' => $baseDir . '/src/Connect.php', 'WPMailSMTP\\Connection' => $baseDir . '/src/Connection.php', @@ -172,13 +169,17 @@ return array( 'WPMailSMTP\\MailCatcherV6' => $baseDir . '/src/MailCatcherV6.php', 'WPMailSMTP\\Migration' => $baseDir . '/src/Migration.php', 'WPMailSMTP\\MigrationAbstract' => $baseDir . '/src/MigrationAbstract.php', + 'WPMailSMTP\\Migrations' => $baseDir . '/src/Migrations.php', + 'WPMailSMTP\\OptimizedEmailSending' => $baseDir . '/src/OptimizedEmailSending.php', 'WPMailSMTP\\Options' => $baseDir . '/src/Options.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\AdditionalConnections' => $baseDir . '/src/Pro/AdditionalConnections/AdditionalConnections.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\Admin\\SettingsTab' => $baseDir . '/src/Pro/AdditionalConnections/Admin/SettingsTab.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\Admin\\TestTab' => $baseDir . '/src/Pro/AdditionalConnections/Admin/TestTab.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\Connection' => $baseDir . '/src/Pro/AdditionalConnections/Connection.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\ConnectionOptions' => $baseDir . '/src/Pro/AdditionalConnections/ConnectionOptions.php', + 'WPMailSMTP\\Pro\\Admin\\Area' => $baseDir . '/src/Pro/Admin/Area.php', 'WPMailSMTP\\Pro\\Admin\\DashboardWidget' => $baseDir . '/src/Pro/Admin/DashboardWidget.php', + 'WPMailSMTP\\Pro\\Admin\\Pages\\MiscTab' => $baseDir . '/src/Pro/Admin/Pages/MiscTab.php', 'WPMailSMTP\\Pro\\Admin\\PluginsList' => $baseDir . '/src/Pro/Admin/PluginsList.php', 'WPMailSMTP\\Pro\\Alerts\\AbstractOptions' => $baseDir . '/src/Pro/Alerts/AbstractOptions.php', 'WPMailSMTP\\Pro\\Alerts\\Admin\\SettingsTab' => $baseDir . '/src/Pro/Alerts/Admin/SettingsTab.php', @@ -299,6 +300,7 @@ return array( 'WPMailSMTP\\Pro\\Emails\\Logs\\Webhooks\\Providers\\SparkPost\\Subscriber' => $baseDir . '/src/Pro/Emails/Logs/Webhooks/Providers/SparkPost/Subscriber.php', 'WPMailSMTP\\Pro\\Emails\\Logs\\Webhooks\\SubscriberInterface' => $baseDir . '/src/Pro/Emails/Logs/Webhooks/SubscriberInterface.php', 'WPMailSMTP\\Pro\\Emails\\Logs\\Webhooks\\Webhooks' => $baseDir . '/src/Pro/Emails/Logs/Webhooks/Webhooks.php', + 'WPMailSMTP\\Pro\\Emails\\RateLimiting\\RateLimiting' => $baseDir . '/src/Pro/Emails/RateLimiting/RateLimiting.php', 'WPMailSMTP\\Pro\\Emails\\TestEmail' => $baseDir . '/src/Pro/Emails/TestEmail.php', 'WPMailSMTP\\Pro\\License\\License' => $baseDir . '/src/Pro/License/License.php', 'WPMailSMTP\\Pro\\License\\Updater' => $baseDir . '/src/Pro/License/Updater.php', @@ -352,7 +354,6 @@ return array( 'WPMailSMTP\\Pro\\Tasks\\Migrations\\EmailLogMigration5' => $baseDir . '/src/Pro/Tasks/Migrations/EmailLogMigration5.php', 'WPMailSMTP\\Pro\\Tasks\\NotifierTask' => $baseDir . '/src/Pro/Tasks/NotifierTask.php', 'WPMailSMTP\\Pro\\Translations' => $baseDir . '/src/Pro/Translations.php', - 'WPMailSMTP\\Pro\\WPMailArgs' => $baseDir . '/src/Pro/WPMailArgs.php', 'WPMailSMTP\\Processor' => $baseDir . '/src/Processor.php', 'WPMailSMTP\\Providers\\AmazonSES\\Options' => $baseDir . '/src/Providers/AmazonSES/Options.php', 'WPMailSMTP\\Providers\\AuthAbstract' => $baseDir . '/src/Providers/AuthAbstract.php', @@ -390,11 +391,18 @@ return array( 'WPMailSMTP\\Providers\\SparkPost\\Mailer' => $baseDir . '/src/Providers/SparkPost/Mailer.php', 'WPMailSMTP\\Providers\\SparkPost\\Options' => $baseDir . '/src/Providers/SparkPost/Options.php', 'WPMailSMTP\\Providers\\Zoho\\Options' => $baseDir . '/src/Providers/Zoho/Options.php', + 'WPMailSMTP\\Queue\\Attachments' => $baseDir . '/src/Queue/Attachments.php', + 'WPMailSMTP\\Queue\\Email' => $baseDir . '/src/Queue/Email.php', + 'WPMailSMTP\\Queue\\Migration' => $baseDir . '/src/Queue/Migration.php', + 'WPMailSMTP\\Queue\\Queue' => $baseDir . '/src/Queue/Queue.php', 'WPMailSMTP\\Reports\\Emails\\Summary' => $baseDir . '/src/Reports/Emails/Summary.php', 'WPMailSMTP\\Reports\\Reports' => $baseDir . '/src/Reports/Reports.php', 'WPMailSMTP\\SiteHealth' => $baseDir . '/src/SiteHealth.php', 'WPMailSMTP\\Tasks\\DebugEventsCleanupTask' => $baseDir . '/src/Tasks/DebugEventsCleanupTask.php', 'WPMailSMTP\\Tasks\\Meta' => $baseDir . '/src/Tasks/Meta.php', + 'WPMailSMTP\\Tasks\\Queue\\CleanupQueueTask' => $baseDir . '/src/Tasks/Queue/CleanupQueueTask.php', + 'WPMailSMTP\\Tasks\\Queue\\ProcessQueueTask' => $baseDir . '/src/Tasks/Queue/ProcessQueueTask.php', + 'WPMailSMTP\\Tasks\\Queue\\SendEnqueuedEmailTask' => $baseDir . '/src/Tasks/Queue/SendEnqueuedEmailTask.php', 'WPMailSMTP\\Tasks\\Reports\\SummaryEmailTask' => $baseDir . '/src/Tasks/Reports/SummaryEmailTask.php', 'WPMailSMTP\\Tasks\\Task' => $baseDir . '/src/Tasks/Task.php', 'WPMailSMTP\\Tasks\\Tasks' => $baseDir . '/src/Tasks/Tasks.php', @@ -777,8 +785,12 @@ return array( 'WPMailSMTP\\Vendor\\Psr\\Log\\Test\\LoggerInterfaceTest' => $baseDir . '/vendor_prefixed/psr/log/Psr/Log/Test/LoggerInterfaceTest.php', 'WPMailSMTP\\Vendor\\Psr\\Log\\Test\\TestLogger' => $baseDir . '/vendor_prefixed/psr/log/Psr/Log/Test/TestLogger.php', 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Intl\\Idn\\Idn' => $baseDir . '/vendor_prefixed/symfony/polyfill-intl-idn/Idn.php', + 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Intl\\Idn\\Info' => $baseDir . '/vendor_prefixed/symfony/polyfill-intl-idn/Info.php', + 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Intl\\Idn\\Resources\\unidata\\DisallowedRanges' => $baseDir . '/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/DisallowedRanges.php', + 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Intl\\Idn\\Resources\\unidata\\Regex' => $baseDir . '/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/Regex.php', 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Mbstring\\Mbstring' => $baseDir . '/vendor_prefixed/symfony/polyfill-mbstring/Mbstring.php', 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Php72\\Php72' => $baseDir . '/vendor_prefixed/symfony/polyfill-php72/Php72.php', 'WPMailSMTP\\WP' => $baseDir . '/src/WP.php', + 'WPMailSMTP\\WPMailArgs' => $baseDir . '/src/WPMailArgs.php', 'WPMailSMTP\\WPMailInitiator' => $baseDir . '/src/WPMailInitiator.php', ); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_files.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_files.php index 2a8b7ff6..dc5164a2 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_files.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_files.php @@ -6,7 +6,6 @@ $vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); return array( - 'e3e111437f37e10e6bcab5eacc08fb6f' => $baseDir . '/vendor_prefixed/guzzlehttp/promises/src/functions_include.php', '2bb094e40611cb5eccea789f32aff634' => $baseDir . '/vendor_prefixed/symfony/polyfill-mbstring/bootstrap.php', '1fd84176824b5a44e7bd8da85eca7e14' => $baseDir . '/vendor_prefixed/symfony/polyfill-php72/bootstrap.php', '606299e0d90ec13f1e6b53164b8387df' => $baseDir . '/vendor_prefixed/symfony/polyfill-intl-idn/bootstrap.php', diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_real.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_real.php index 8f28706e..f4137c87 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_real.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInit295984e5919e750baa7d7284cfe56164 +class ComposerAutoloaderInit473736c55a35b9a077f93cfc42f4bbf5 { private static $loader; @@ -22,17 +22,17 @@ class ComposerAutoloaderInit295984e5919e750baa7d7284cfe56164 return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInit295984e5919e750baa7d7284cfe56164', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit473736c55a35b9a077f93cfc42f4bbf5', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); - spl_autoload_unregister(array('ComposerAutoloaderInit295984e5919e750baa7d7284cfe56164', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit473736c55a35b9a077f93cfc42f4bbf5', 'loadClassLoader')); require __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInit295984e5919e750baa7d7284cfe56164::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInit473736c55a35b9a077f93cfc42f4bbf5::getInitializer($loader)); $loader->setClassMapAuthoritative(true); $loader->register(true); - $filesToLoad = \Composer\Autoload\ComposerStaticInit295984e5919e750baa7d7284cfe56164::$files; + $filesToLoad = \Composer\Autoload\ComposerStaticInit473736c55a35b9a077f93cfc42f4bbf5::$files; $requireFile = \Closure::bind(static function ($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_static.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_static.php index b5895334..18989b11 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_static.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/autoload_static.php @@ -4,10 +4,9 @@ namespace Composer\Autoload; -class ComposerStaticInit295984e5919e750baa7d7284cfe56164 +class ComposerStaticInit473736c55a35b9a077f93cfc42f4bbf5 { public static $files = array ( - 'e3e111437f37e10e6bcab5eacc08fb6f' => __DIR__ . '/../..' . '/vendor_prefixed/guzzlehttp/promises/src/functions_include.php', '2bb094e40611cb5eccea789f32aff634' => __DIR__ . '/../..' . '/vendor_prefixed/symfony/polyfill-mbstring/bootstrap.php', '1fd84176824b5a44e7bd8da85eca7e14' => __DIR__ . '/../..' . '/vendor_prefixed/symfony/polyfill-php72/bootstrap.php', '606299e0d90ec13f1e6b53164b8387df' => __DIR__ . '/../..' . '/vendor_prefixed/symfony/polyfill-intl-idn/bootstrap.php', @@ -40,7 +39,7 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 public static $classMap = array ( 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', 'Composer\\Installers\\AglInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/AglInstaller.php', - 'Composer\\Installers\\AimeosInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/AimeosInstaller.php', + 'Composer\\Installers\\AkauntingInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/AkauntingInstaller.php', 'Composer\\Installers\\AnnotateCmsInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/AnnotateCmsInstaller.php', 'Composer\\Installers\\AsgardInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/AsgardInstaller.php', 'Composer\\Installers\\AttogramInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/AttogramInstaller.php', @@ -54,7 +53,6 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'Composer\\Installers\\CockpitInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CockpitInstaller.php', 'Composer\\Installers\\CodeIgniterInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CodeIgniterInstaller.php', 'Composer\\Installers\\Concrete5Installer' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/Concrete5Installer.php', - 'Composer\\Installers\\CraftInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CraftInstaller.php', 'Composer\\Installers\\CroogoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CroogoInstaller.php', 'Composer\\Installers\\DecibelInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/DecibelInstaller.php', 'Composer\\Installers\\DframeInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/DframeInstaller.php', @@ -72,9 +70,7 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'Composer\\Installers\\ImageCMSInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ImageCMSInstaller.php', 'Composer\\Installers\\Installer' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/Installer.php', 'Composer\\Installers\\ItopInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ItopInstaller.php', - 'Composer\\Installers\\JoomlaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/JoomlaInstaller.php', 'Composer\\Installers\\KanboardInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/KanboardInstaller.php', - 'Composer\\Installers\\KirbyInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/KirbyInstaller.php', 'Composer\\Installers\\KnownInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/KnownInstaller.php', 'Composer\\Installers\\KodiCMSInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/KodiCMSInstaller.php', 'Composer\\Installers\\KohanaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/KohanaInstaller.php', @@ -88,6 +84,7 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'Composer\\Installers\\MajimaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MajimaInstaller.php', 'Composer\\Installers\\MakoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MakoInstaller.php', 'Composer\\Installers\\MantisBTInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MantisBTInstaller.php', + 'Composer\\Installers\\MatomoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MatomoInstaller.php', 'Composer\\Installers\\MauticInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MauticInstaller.php', 'Composer\\Installers\\MayaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MayaInstaller.php', 'Composer\\Installers\\MediaWikiInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MediaWikiInstaller.php', @@ -103,7 +100,6 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'Composer\\Installers\\PantheonInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PantheonInstaller.php', 'Composer\\Installers\\PhiftyInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PhiftyInstaller.php', 'Composer\\Installers\\PhpBBInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PhpBBInstaller.php', - 'Composer\\Installers\\PimcoreInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PimcoreInstaller.php', 'Composer\\Installers\\PiwikInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PiwikInstaller.php', 'Composer\\Installers\\PlentymarketsInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PlentymarketsInstaller.php', 'Composer\\Installers\\Plugin' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/Plugin.php', @@ -124,9 +120,6 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'Composer\\Installers\\StarbugInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/StarbugInstaller.php', 'Composer\\Installers\\SyDESInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/SyDESInstaller.php', 'Composer\\Installers\\SyliusInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/SyliusInstaller.php', - 'Composer\\Installers\\Symfony1Installer' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/Symfony1Installer.php', - 'Composer\\Installers\\TYPO3CmsInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php', - 'Composer\\Installers\\TYPO3FlowInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/TYPO3FlowInstaller.php', 'Composer\\Installers\\TaoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/TaoInstaller.php', 'Composer\\Installers\\TastyIgniterInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/TastyIgniterInstaller.php', 'Composer\\Installers\\TheliaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/TheliaInstaller.php', @@ -184,6 +177,9 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'WPMailSMTP\\Compatibility\\Plugin\\Admin2020' => __DIR__ . '/../..' . '/src/Compatibility/Plugin/Admin2020.php', 'WPMailSMTP\\Compatibility\\Plugin\\PluginAbstract' => __DIR__ . '/../..' . '/src/Compatibility/Plugin/PluginAbstract.php', 'WPMailSMTP\\Compatibility\\Plugin\\PluginInterface' => __DIR__ . '/../..' . '/src/Compatibility/Plugin/PluginInterface.php', + 'WPMailSMTP\\Compatibility\\Plugin\\WPForms' => __DIR__ . '/../..' . '/src/Compatibility/Plugin/WPForms.php', + 'WPMailSMTP\\Compatibility\\Plugin\\WPFormsLite' => __DIR__ . '/../..' . '/src/Compatibility/Plugin/WPFormsLite.php', + 'WPMailSMTP\\Compatibility\\Plugin\\WooCommerce' => __DIR__ . '/../..' . '/src/Compatibility/Plugin/WooCommerce.php', 'WPMailSMTP\\Conflicts' => __DIR__ . '/../..' . '/src/Conflicts.php', 'WPMailSMTP\\Connect' => __DIR__ . '/../..' . '/src/Connect.php', 'WPMailSMTP\\Connection' => __DIR__ . '/../..' . '/src/Connection.php', @@ -204,13 +200,17 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'WPMailSMTP\\MailCatcherV6' => __DIR__ . '/../..' . '/src/MailCatcherV6.php', 'WPMailSMTP\\Migration' => __DIR__ . '/../..' . '/src/Migration.php', 'WPMailSMTP\\MigrationAbstract' => __DIR__ . '/../..' . '/src/MigrationAbstract.php', + 'WPMailSMTP\\Migrations' => __DIR__ . '/../..' . '/src/Migrations.php', + 'WPMailSMTP\\OptimizedEmailSending' => __DIR__ . '/../..' . '/src/OptimizedEmailSending.php', 'WPMailSMTP\\Options' => __DIR__ . '/../..' . '/src/Options.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\AdditionalConnections' => __DIR__ . '/../..' . '/src/Pro/AdditionalConnections/AdditionalConnections.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\Admin\\SettingsTab' => __DIR__ . '/../..' . '/src/Pro/AdditionalConnections/Admin/SettingsTab.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\Admin\\TestTab' => __DIR__ . '/../..' . '/src/Pro/AdditionalConnections/Admin/TestTab.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\Connection' => __DIR__ . '/../..' . '/src/Pro/AdditionalConnections/Connection.php', 'WPMailSMTP\\Pro\\AdditionalConnections\\ConnectionOptions' => __DIR__ . '/../..' . '/src/Pro/AdditionalConnections/ConnectionOptions.php', + 'WPMailSMTP\\Pro\\Admin\\Area' => __DIR__ . '/../..' . '/src/Pro/Admin/Area.php', 'WPMailSMTP\\Pro\\Admin\\DashboardWidget' => __DIR__ . '/../..' . '/src/Pro/Admin/DashboardWidget.php', + 'WPMailSMTP\\Pro\\Admin\\Pages\\MiscTab' => __DIR__ . '/../..' . '/src/Pro/Admin/Pages/MiscTab.php', 'WPMailSMTP\\Pro\\Admin\\PluginsList' => __DIR__ . '/../..' . '/src/Pro/Admin/PluginsList.php', 'WPMailSMTP\\Pro\\Alerts\\AbstractOptions' => __DIR__ . '/../..' . '/src/Pro/Alerts/AbstractOptions.php', 'WPMailSMTP\\Pro\\Alerts\\Admin\\SettingsTab' => __DIR__ . '/../..' . '/src/Pro/Alerts/Admin/SettingsTab.php', @@ -331,6 +331,7 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'WPMailSMTP\\Pro\\Emails\\Logs\\Webhooks\\Providers\\SparkPost\\Subscriber' => __DIR__ . '/../..' . '/src/Pro/Emails/Logs/Webhooks/Providers/SparkPost/Subscriber.php', 'WPMailSMTP\\Pro\\Emails\\Logs\\Webhooks\\SubscriberInterface' => __DIR__ . '/../..' . '/src/Pro/Emails/Logs/Webhooks/SubscriberInterface.php', 'WPMailSMTP\\Pro\\Emails\\Logs\\Webhooks\\Webhooks' => __DIR__ . '/../..' . '/src/Pro/Emails/Logs/Webhooks/Webhooks.php', + 'WPMailSMTP\\Pro\\Emails\\RateLimiting\\RateLimiting' => __DIR__ . '/../..' . '/src/Pro/Emails/RateLimiting/RateLimiting.php', 'WPMailSMTP\\Pro\\Emails\\TestEmail' => __DIR__ . '/../..' . '/src/Pro/Emails/TestEmail.php', 'WPMailSMTP\\Pro\\License\\License' => __DIR__ . '/../..' . '/src/Pro/License/License.php', 'WPMailSMTP\\Pro\\License\\Updater' => __DIR__ . '/../..' . '/src/Pro/License/Updater.php', @@ -384,7 +385,6 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'WPMailSMTP\\Pro\\Tasks\\Migrations\\EmailLogMigration5' => __DIR__ . '/../..' . '/src/Pro/Tasks/Migrations/EmailLogMigration5.php', 'WPMailSMTP\\Pro\\Tasks\\NotifierTask' => __DIR__ . '/../..' . '/src/Pro/Tasks/NotifierTask.php', 'WPMailSMTP\\Pro\\Translations' => __DIR__ . '/../..' . '/src/Pro/Translations.php', - 'WPMailSMTP\\Pro\\WPMailArgs' => __DIR__ . '/../..' . '/src/Pro/WPMailArgs.php', 'WPMailSMTP\\Processor' => __DIR__ . '/../..' . '/src/Processor.php', 'WPMailSMTP\\Providers\\AmazonSES\\Options' => __DIR__ . '/../..' . '/src/Providers/AmazonSES/Options.php', 'WPMailSMTP\\Providers\\AuthAbstract' => __DIR__ . '/../..' . '/src/Providers/AuthAbstract.php', @@ -422,11 +422,18 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'WPMailSMTP\\Providers\\SparkPost\\Mailer' => __DIR__ . '/../..' . '/src/Providers/SparkPost/Mailer.php', 'WPMailSMTP\\Providers\\SparkPost\\Options' => __DIR__ . '/../..' . '/src/Providers/SparkPost/Options.php', 'WPMailSMTP\\Providers\\Zoho\\Options' => __DIR__ . '/../..' . '/src/Providers/Zoho/Options.php', + 'WPMailSMTP\\Queue\\Attachments' => __DIR__ . '/../..' . '/src/Queue/Attachments.php', + 'WPMailSMTP\\Queue\\Email' => __DIR__ . '/../..' . '/src/Queue/Email.php', + 'WPMailSMTP\\Queue\\Migration' => __DIR__ . '/../..' . '/src/Queue/Migration.php', + 'WPMailSMTP\\Queue\\Queue' => __DIR__ . '/../..' . '/src/Queue/Queue.php', 'WPMailSMTP\\Reports\\Emails\\Summary' => __DIR__ . '/../..' . '/src/Reports/Emails/Summary.php', 'WPMailSMTP\\Reports\\Reports' => __DIR__ . '/../..' . '/src/Reports/Reports.php', 'WPMailSMTP\\SiteHealth' => __DIR__ . '/../..' . '/src/SiteHealth.php', 'WPMailSMTP\\Tasks\\DebugEventsCleanupTask' => __DIR__ . '/../..' . '/src/Tasks/DebugEventsCleanupTask.php', 'WPMailSMTP\\Tasks\\Meta' => __DIR__ . '/../..' . '/src/Tasks/Meta.php', + 'WPMailSMTP\\Tasks\\Queue\\CleanupQueueTask' => __DIR__ . '/../..' . '/src/Tasks/Queue/CleanupQueueTask.php', + 'WPMailSMTP\\Tasks\\Queue\\ProcessQueueTask' => __DIR__ . '/../..' . '/src/Tasks/Queue/ProcessQueueTask.php', + 'WPMailSMTP\\Tasks\\Queue\\SendEnqueuedEmailTask' => __DIR__ . '/../..' . '/src/Tasks/Queue/SendEnqueuedEmailTask.php', 'WPMailSMTP\\Tasks\\Reports\\SummaryEmailTask' => __DIR__ . '/../..' . '/src/Tasks/Reports/SummaryEmailTask.php', 'WPMailSMTP\\Tasks\\Task' => __DIR__ . '/../..' . '/src/Tasks/Task.php', 'WPMailSMTP\\Tasks\\Tasks' => __DIR__ . '/../..' . '/src/Tasks/Tasks.php', @@ -809,18 +816,22 @@ class ComposerStaticInit295984e5919e750baa7d7284cfe56164 'WPMailSMTP\\Vendor\\Psr\\Log\\Test\\LoggerInterfaceTest' => __DIR__ . '/../..' . '/vendor_prefixed/psr/log/Psr/Log/Test/LoggerInterfaceTest.php', 'WPMailSMTP\\Vendor\\Psr\\Log\\Test\\TestLogger' => __DIR__ . '/../..' . '/vendor_prefixed/psr/log/Psr/Log/Test/TestLogger.php', 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Intl\\Idn\\Idn' => __DIR__ . '/../..' . '/vendor_prefixed/symfony/polyfill-intl-idn/Idn.php', + 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Intl\\Idn\\Info' => __DIR__ . '/../..' . '/vendor_prefixed/symfony/polyfill-intl-idn/Info.php', + 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Intl\\Idn\\Resources\\unidata\\DisallowedRanges' => __DIR__ . '/../..' . '/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/DisallowedRanges.php', + 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Intl\\Idn\\Resources\\unidata\\Regex' => __DIR__ . '/../..' . '/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/Regex.php', 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Mbstring\\Mbstring' => __DIR__ . '/../..' . '/vendor_prefixed/symfony/polyfill-mbstring/Mbstring.php', 'WPMailSMTP\\Vendor\\Symfony\\Polyfill\\Php72\\Php72' => __DIR__ . '/../..' . '/vendor_prefixed/symfony/polyfill-php72/Php72.php', 'WPMailSMTP\\WP' => __DIR__ . '/../..' . '/src/WP.php', + 'WPMailSMTP\\WPMailArgs' => __DIR__ . '/../..' . '/src/WPMailArgs.php', 'WPMailSMTP\\WPMailInitiator' => __DIR__ . '/../..' . '/src/WPMailInitiator.php', ); public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInit295984e5919e750baa7d7284cfe56164::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInit295984e5919e750baa7d7284cfe56164::$prefixDirsPsr4; - $loader->classMap = ComposerStaticInit295984e5919e750baa7d7284cfe56164::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit473736c55a35b9a077f93cfc42f4bbf5::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit473736c55a35b9a077f93cfc42f4bbf5::$prefixDirsPsr4; + $loader->classMap = ComposerStaticInit473736c55a35b9a077f93cfc42f4bbf5::$classMap; }, null, ClassLoader::class); } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/installed.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/installed.php index 175670b8..66aa73d9 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/installed.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/composer/installed.php @@ -1,9 +1,9 @@ array( 'name' => 'awesomemotive/wp-mail-smtp', - 'pretty_version' => 'dev-3.11.1-release', - 'version' => 'dev-3.11.1-release', - 'reference' => 'a94862cf8e666fef222bb3d6d40396c84fb9ade6', + 'pretty_version' => 'dev-4.0.1-release', + 'version' => 'dev-4.0.1-release', + 'reference' => 'd8bdf3838b23f2697ddf1e6e717d6974202fe306', 'type' => 'wordpress-plugin', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), @@ -11,18 +11,18 @@ ), 'versions' => array( 'awesomemotive/wp-mail-smtp' => array( - 'pretty_version' => 'dev-3.11.1-release', - 'version' => 'dev-3.11.1-release', - 'reference' => 'a94862cf8e666fef222bb3d6d40396c84fb9ade6', + 'pretty_version' => 'dev-4.0.1-release', + 'version' => 'dev-4.0.1-release', + 'reference' => 'd8bdf3838b23f2697ddf1e6e717d6974202fe306', 'type' => 'wordpress-plugin', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => false, ), 'composer/installers' => array( - 'pretty_version' => 'v1.12.0', - 'version' => '1.12.0.0', - 'reference' => 'd20a64ed3c94748397ff5973488761b22f6d3f19', + 'pretty_version' => 'v2.2.0', + 'version' => '2.2.0.0', + 'reference' => 'c29dc4b93137acb82734f672c37e029dfbd95b35', 'type' => 'composer-plugin', 'install_path' => __DIR__ . '/./installers', 'aliases' => array(), @@ -38,9 +38,9 @@ 'dev_requirement' => false, ), 'google/apiclient' => array( - 'pretty_version' => 'v2.13.2', - 'version' => '2.13.2.0', - 'reference' => '53c3168fd1836ec21d28a768f78a8c0e44046ec4', + 'pretty_version' => 'v2.14.0', + 'version' => '2.14.0.0', + 'reference' => '789c8b07cad97f420ac0467c782036f955a2ad89', 'type' => 'library', 'install_path' => __DIR__ . '/../google/apiclient', 'aliases' => array(), @@ -65,27 +65,27 @@ 'dev_requirement' => false, ), 'guzzlehttp/guzzle' => array( - 'pretty_version' => '7.4.5', - 'version' => '7.4.5.0', - 'reference' => '1dd98b0564cb3f6bd16ce683cb755f94c10fbd82', + 'pretty_version' => '7.8.1', + 'version' => '7.8.1.0', + 'reference' => '41042bc7ab002487b876a0683fc8dce04ddce104', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', 'aliases' => array(), 'dev_requirement' => false, ), 'guzzlehttp/promises' => array( - 'pretty_version' => '1.5.3', - 'version' => '1.5.3.0', - 'reference' => '67ab6e18aaa14d753cc148911d273f6e6cb6721e', + 'pretty_version' => '2.0.2', + 'version' => '2.0.2.0', + 'reference' => 'bbff78d96034045e58e13dedd6ad91b5d1253223', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/promises', 'aliases' => array(), 'dev_requirement' => false, ), 'guzzlehttp/psr7' => array( - 'pretty_version' => '2.6.1', - 'version' => '2.6.1.0', - 'reference' => 'be45764272e8873c72dbe3d2edcfdfcc3bc9f727', + 'pretty_version' => '2.6.2', + 'version' => '2.6.2.0', + 'reference' => '45b30f99ac27b5ca93cb4831afe16285f57b8221', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/psr7', 'aliases' => array(), @@ -101,9 +101,9 @@ 'dev_requirement' => false, ), 'paragonie/constant_time_encoding' => array( - 'pretty_version' => 'v1.1.0', - 'version' => '1.1.0.0', - 'reference' => '317718fb438e60151f72b20404f040cb5ae1d494', + 'pretty_version' => 'v2.6.3', + 'version' => '2.6.3.0', + 'reference' => '58c3f47f650c94ec05a151692652a868995d2938', 'type' => 'library', 'install_path' => __DIR__ . '/../paragonie/constant_time_encoding', 'aliases' => array(), @@ -119,9 +119,9 @@ 'dev_requirement' => false, ), 'phpseclib/phpseclib' => array( - 'pretty_version' => '3.0.21', - 'version' => '3.0.21.0', - 'reference' => '4580645d3fc05c189024eb3b834c6c1e4f0f30a1', + 'pretty_version' => '3.0.34', + 'version' => '3.0.34.0', + 'reference' => '56c79f16a6ae17e42089c06a2144467acc35348a', 'type' => 'library', 'install_path' => __DIR__ . '/../phpseclib/phpseclib', 'aliases' => array(), @@ -137,9 +137,9 @@ 'dev_requirement' => false, ), 'psr/http-client' => array( - 'pretty_version' => '1.0.2', - 'version' => '1.0.2.0', - 'reference' => '0955afe48220520692d2d09f7ab7e0f93ffd6a31', + 'pretty_version' => '1.0.3', + 'version' => '1.0.3.0', + 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-client', 'aliases' => array(), @@ -205,18 +205,6 @@ 'aliases' => array(), 'dev_requirement' => false, ), - 'roundcube/plugin-installer' => array( - 'dev_requirement' => false, - 'replaced' => array( - 0 => '*', - ), - ), - 'shama/baton' => array( - 'dev_requirement' => false, - 'replaced' => array( - 0 => '*', - ), - ), 'symfony/deprecation-contracts' => array( 'pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', @@ -227,27 +215,36 @@ 'dev_requirement' => false, ), 'symfony/polyfill-intl-idn' => array( - 'pretty_version' => 'v1.17.1', - 'version' => '1.17.1.0', - 'reference' => 'a57f8161502549a742a63c09f0a604997bf47027', + 'pretty_version' => 'v1.28.0', + 'version' => '1.28.0.0', + 'reference' => 'ecaafce9f77234a6a449d29e49267ba10499116d', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-idn', 'aliases' => array(), 'dev_requirement' => false, ), + 'symfony/polyfill-intl-normalizer' => array( + 'pretty_version' => 'v1.28.0', + 'version' => '1.28.0.0', + 'reference' => '8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92', + 'type' => 'library', + 'install_path' => __DIR__ . '/../symfony/polyfill-intl-normalizer', + 'aliases' => array(), + 'dev_requirement' => false, + ), 'symfony/polyfill-mbstring' => array( - 'pretty_version' => 'v1.19.0', - 'version' => '1.19.0.0', - 'reference' => 'b5f7b932ee6fa802fc792eabd77c4c88084517ce', + 'pretty_version' => 'v1.28.0', + 'version' => '1.28.0.0', + 'reference' => '42292d99c55abe617799667f454222c54c60e229', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => false, ), 'symfony/polyfill-php72' => array( - 'pretty_version' => 'v1.19.0', - 'version' => '1.19.0.0', - 'reference' => 'beecef6b463b06954638f02378f52496cb84bacc', + 'pretty_version' => 'v1.28.0', + 'version' => '1.28.0.0', + 'reference' => '70f4aebd92afca2f865444d30a4d2151c13c3179', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php72', 'aliases' => array(), @@ -263,9 +260,9 @@ 'dev_requirement' => false, ), 'woocommerce/action-scheduler' => array( - 'pretty_version' => '3.6.1', - 'version' => '3.6.1.0', - 'reference' => '7fd383cad3d64b419ec81bcd05bab44355a6e6ef', + 'pretty_version' => '3.7.1', + 'version' => '3.7.1.0', + 'reference' => 'bdaecb016e0358065a8bf76a41fdd60772cacaa5', 'type' => 'wordpress-plugin', 'install_path' => __DIR__ . '/../woocommerce/action-scheduler', 'aliases' => array(), diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/action-scheduler.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/action-scheduler.php index 2bee49c4..cfa1f1c4 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/action-scheduler.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/action-scheduler.php @@ -5,8 +5,11 @@ * Description: A robust scheduling library for use in WordPress plugins. * Author: Automattic * Author URI: https://automattic.com/ - * Version: 3.6.1 + * Version: 3.7.1 * License: GPLv3 + * Requires at least: 6.2 + * Tested up to: 6.4 + * Requires PHP: 5.6 * * Copyright 2019 Automattic, Inc. (https://automattic.com/contact/) * @@ -26,27 +29,29 @@ * @package ActionScheduler */ -if ( ! function_exists( 'action_scheduler_register_3_dot_6_dot_1' ) && function_exists( 'add_action' ) ) { // WRCS: DEFINED_VERSION. +if ( ! function_exists( 'action_scheduler_register_3_dot_7_dot_1' ) && function_exists( 'add_action' ) ) { // WRCS: DEFINED_VERSION. if ( ! class_exists( 'ActionScheduler_Versions', false ) ) { require_once __DIR__ . '/classes/ActionScheduler_Versions.php'; add_action( 'plugins_loaded', array( 'ActionScheduler_Versions', 'initialize_latest_version' ), 1, 0 ); } - add_action( 'plugins_loaded', 'action_scheduler_register_3_dot_6_dot_1', 0, 0 ); // WRCS: DEFINED_VERSION. + add_action( 'plugins_loaded', 'action_scheduler_register_3_dot_7_dot_1', 0, 0 ); // WRCS: DEFINED_VERSION. + // phpcs:disable Generic.Functions.OpeningFunctionBraceKernighanRitchie.ContentAfterBrace /** * Registers this version of Action Scheduler. */ - function action_scheduler_register_3_dot_6_dot_1() { // WRCS: DEFINED_VERSION. + function action_scheduler_register_3_dot_7_dot_1() { // WRCS: DEFINED_VERSION. $versions = ActionScheduler_Versions::instance(); - $versions->register( '3.6.1', 'action_scheduler_initialize_3_dot_6_dot_1' ); // WRCS: DEFINED_VERSION. + $versions->register( '3.7.1', 'action_scheduler_initialize_3_dot_7_dot_1' ); // WRCS: DEFINED_VERSION. } + // phpcs:disable Generic.Functions.OpeningFunctionBraceKernighanRitchie.ContentAfterBrace /** * Initializes this version of Action Scheduler. */ - function action_scheduler_initialize_3_dot_6_dot_1() { // WRCS: DEFINED_VERSION. + function action_scheduler_initialize_3_dot_7_dot_1() { // WRCS: DEFINED_VERSION. // A final safety check is required even here, because historic versions of Action Scheduler // followed a different pattern (in some unusual cases, we could reach this point and the // ActionScheduler class is already defined—so we need to guard against that). @@ -58,7 +63,7 @@ if ( ! function_exists( 'action_scheduler_register_3_dot_6_dot_1' ) && function_ // Support usage in themes - load this version if no plugin has loaded a version yet. if ( did_action( 'plugins_loaded' ) && ! doing_action( 'plugins_loaded' ) && ! class_exists( 'ActionScheduler', false ) ) { - action_scheduler_initialize_3_dot_6_dot_1(); // WRCS: DEFINED_VERSION. + action_scheduler_initialize_3_dot_7_dot_1(); // WRCS: DEFINED_VERSION. do_action( 'action_scheduler_pre_theme_init' ); ActionScheduler_Versions::initialize_latest_version(); } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/changelog.txt b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/changelog.txt index 7ce001c2..368a94f6 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/changelog.txt +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/changelog.txt @@ -1,5 +1,34 @@ *** Changelog *** += 3.7.1 - 2023-12-13 = +* Release/3.7.0. +* Tweak - WP 6.4 compatibility. +* update semver to 5.7.2 because of a security vulnerability in 5.7.1. + += 3.7.0 - 2023-11-20 = +* Important: starting with this release, Action Scheduler follows an L-2 version policy (WordPress, and consequently PHP). +* Add extended indexes for hook_status_scheduled_date_gmt and status_sheduled_date_gmt. +* Catch and log exceptions thrown when actions can't be created, e.g. under a corrupt database schema. +* Release/3.6.4. +* Tweak - WP 6.4 compatibility. +* Update unit tests for upcoming dependency version policy. +* make sure hook action_scheduler_failed_execution can access original exception object. +* mention dependency version policy in usage.md. + += 3.6.4 - 2023-10-11 = +* Performance improvements when bulk cancelling actions. +* Dev-related fixes. + += 3.6.3 - 2023-09-13 = +* Use `_doing_it_wrong` in initialization check. + += 3.6.2 - 2023-08-09 = +* Add guidance about passing arguments. +* Atomic option locking. +* Improve bulk delete handling. +* Include database error in the exception message. +* Tweak - WP 6.3 compatibility. + = 3.6.1 - 2023-06-14 = * Document new optional `$priority` arg for various API functions. * Document the new `--exclude-groups` WP CLI option. diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ActionFactory.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ActionFactory.php index 2fd46a73..07bf01b3 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ActionFactory.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ActionFactory.php @@ -13,6 +13,7 @@ class ActionScheduler_ActionFactory { * @param array $args Args to pass to callbacks when the hook is triggered. * @param ActionScheduler_Schedule $schedule The action's schedule. * @param string $group A group to put the action in. + * phpcs:ignore Squiz.Commenting.FunctionComment.ExtraParamComment * @param int $priority The action priority. * * @return ActionScheduler_Action An instance of the stored action. @@ -246,7 +247,6 @@ class ActionScheduler_ActionFactory { * async_unique(), single() or single_unique(), etc. * * @internal Not intended for public use, should not be overriden by subclasses. - * @throws Exception May be thrown if invalid options are passed. * * @param array $options { * Describes the action we wish to schedule. @@ -263,7 +263,7 @@ class ActionScheduler_ActionFactory { * @type int $priority Lower values means higher priority. Should be in the range 0-255. * } * - * @return int + * @return int The action ID. Zero if there was an error scheduling the action. */ public function create( array $options = array() ) { $defaults = array( @@ -307,12 +307,27 @@ class ActionScheduler_ActionFactory { break; default: - throw new Exception( "Unknown action type '{$options['type']}' specified when trying to create an action for '{$options['hook']}'." ); + error_log( "Unknown action type '{$options['type']}' specified when trying to create an action for '{$options['hook']}'." ); + return 0; } $action = new ActionScheduler_Action( $options['hook'], $options['arguments'], $schedule, $options['group'] ); $action->set_priority( $options['priority'] ); - return $options['unique'] ? $this->store_unique_action( $action ) : $this->store( $action ); + + $action_id = 0; + try { + $action_id = $options['unique'] ? $this->store_unique_action( $action ) : $this->store( $action ); + } catch ( Exception $e ) { + error_log( + sprintf( + /* translators: %1$s is the name of the hook to be enqueued, %2$s is the exception message. */ + __( 'Caught exception while enqueuing action "%1$s": %2$s', 'action-scheduler' ), + $options['hook'], + $e->getMessage() + ) + ); + } + return $action_id; } /** diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ListTable.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ListTable.php index 8d16815a..a21fdbe3 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ListTable.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_ListTable.php @@ -502,7 +502,20 @@ class ActionScheduler_ListTable extends ActionScheduler_Abstract_ListTable { */ protected function bulk_delete( array $ids, $ids_sql ) { foreach ( $ids as $id ) { - $this->store->delete_action( $id ); + try { + $this->store->delete_action( $id ); + } catch ( Exception $e ) { + // A possible reason for an exception would include a scenario where the same action is deleted by a + // concurrent request. + error_log( + sprintf( + /* translators: 1: action ID 2: exception message. */ + __( 'Action Scheduler was unable to delete action %1$d. Reason: %2$s', 'action-scheduler' ), + $id, + $e->getMessage() + ) + ); + } } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_OptionLock.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_OptionLock.php index 4bc9a3fc..911f9b77 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_OptionLock.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_OptionLock.php @@ -24,7 +24,37 @@ class ActionScheduler_OptionLock extends ActionScheduler_Lock { * @bool True if lock value has changed, false if not or if set failed. */ public function set( $lock_type ) { - return update_option( $this->get_key( $lock_type ), time() + $this->get_duration( $lock_type ) ); + global $wpdb; + + $lock_key = $this->get_key( $lock_type ); + $existing_lock_value = $this->get_existing_lock( $lock_type ); + $new_lock_value = $this->new_lock_value( $lock_type ); + + // The lock may not exist yet, or may have been deleted. + if ( empty( $existing_lock_value ) ) { + return (bool) $wpdb->insert( + $wpdb->options, + array( + 'option_name' => $lock_key, + 'option_value' => $new_lock_value, + 'autoload' => 'no', + ) + ); + } + + if ( $this->get_expiration_from( $existing_lock_value ) >= time() ) { + return false; + } + + // Otherwise, try to obtain the lock. + return (bool) $wpdb->update( + $wpdb->options, + array( 'option_value' => $new_lock_value ), + array( + 'option_name' => $lock_key, + 'option_value' => $existing_lock_value, + ) + ); } /** @@ -34,7 +64,30 @@ class ActionScheduler_OptionLock extends ActionScheduler_Lock { * @return bool|int False if no lock is set, otherwise the timestamp for when the lock is set to expire. */ public function get_expiration( $lock_type ) { - return get_option( $this->get_key( $lock_type ) ); + return $this->get_expiration_from( $this->get_existing_lock( $lock_type ) ); + } + + /** + * Given the lock string, derives the lock expiration timestamp (or false if it cannot be determined). + * + * @param string $lock_value String containing a timestamp, or pipe-separated combination of unique value and timestamp. + * + * @return false|int + */ + private function get_expiration_from( $lock_value ) { + $lock_string = explode( '|', $lock_value ); + + // Old style lock? + if ( count( $lock_string ) === 1 && is_numeric( $lock_string[0] ) ) { + return (int) $lock_string[0]; + } + + // New style lock? + if ( count( $lock_string ) === 2 && is_numeric( $lock_string[1] ) ) { + return (int) $lock_string[1]; + } + + return false; } /** @@ -46,4 +99,37 @@ class ActionScheduler_OptionLock extends ActionScheduler_Lock { protected function get_key( $lock_type ) { return sprintf( 'action_scheduler_lock_%s', $lock_type ); } + + /** + * Supplies the existing lock value, or an empty string if not set. + * + * @param string $lock_type A string to identify different lock types. + * + * @return string + */ + private function get_existing_lock( $lock_type ) { + global $wpdb; + + // Now grab the existing lock value, if there is one. + return (string) $wpdb->get_var( + $wpdb->prepare( + "SELECT option_value FROM $wpdb->options WHERE option_name = %s", + $this->get_key( $lock_type ) + ) + ); + } + + /** + * Supplies a lock value consisting of a unique value and the current timestamp, which are separated by a pipe + * character. + * + * Example: (string) "649de012e6b262.09774912|1688068114" + * + * @param string $lock_type A string to identify different lock types. + * + * @return string + */ + private function new_lock_value( $lock_type ) { + return uniqid( '', true ) . '|' . ( time() + $this->get_duration( $lock_type ) ); + } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_QueueRunner.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_QueueRunner.php index 96925b29..1ec3eab2 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_QueueRunner.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/ActionScheduler_QueueRunner.php @@ -103,9 +103,12 @@ class ActionScheduler_QueueRunner extends ActionScheduler_Abstract_QueueRunner { * should dispatch a request to process pending actions. */ public function maybe_dispatch_async_request() { - if ( is_admin() && ! ActionScheduler::lock()->is_locked( 'async-request-runner' ) ) { - // Only start an async queue at most once every 60 seconds - ActionScheduler::lock()->set( 'async-request-runner' ); + // Only start an async queue at most once every 60 seconds. + if ( + is_admin() + && ! ActionScheduler::lock()->is_locked( 'async-request-runner' ) + && ActionScheduler::lock()->set( 'async-request-runner' ) + ) { $this->async_request->maybe_dispatch(); } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler.php index 8a0109ee..0163f707 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler.php @@ -226,7 +226,7 @@ abstract class ActionScheduler { __( '%s() was called before the Action Scheduler data store was initialized', 'action-scheduler' ), esc_attr( $function_name ) ); - error_log( $message ); + _doing_it_wrong( $function_name, $message, '3.1.6' ); } return self::$data_store_initialized; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Abstract_QueueRunner.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Abstract_QueueRunner.php index 2f957020..673499fc 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Abstract_QueueRunner.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Abstract_QueueRunner.php @@ -91,7 +91,7 @@ abstract class ActionScheduler_Abstract_QueueRunner extends ActionScheduler_Abst } catch ( Throwable $e ) { // Throwable is defined when executing under PHP 7.0 and up. We convert it to an exception, for // compatibility with ActionScheduler_Logger. - throw new Exception( $e->getMessage(), $e->getCode(), $e->getPrevious() ); + throw new Exception( $e->getMessage(), $e->getCode(), $e ); } } catch ( Exception $e ) { // This catch block exists for compatibility with PHP 5.6. diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Lock.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Lock.php index 86e85285..e388a58f 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Lock.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Lock.php @@ -26,6 +26,8 @@ abstract class ActionScheduler_Lock { /** * Set a lock. * + * To prevent race conditions, implementations should avoid setting the lock if the lock is already held. + * * @param string $lock_type A string to identify different lock types. * @return bool */ diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Store.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Store.php index a5552933..faaaa9ed 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Store.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/abstracts/ActionScheduler_Store.php @@ -347,7 +347,7 @@ abstract class ActionScheduler_Store extends ActionScheduler_Store_Deprecated { 'hook' => $hook, 'status' => self::STATUS_PENDING, 'per_page' => 1000, - 'orderby' => 'action_id', + 'orderby' => 'none', ) ); @@ -372,7 +372,7 @@ abstract class ActionScheduler_Store extends ActionScheduler_Store_Deprecated { 'group' => $group, 'status' => self::STATUS_PENDING, 'per_page' => 1000, - 'orderby' => 'action_id', + 'orderby' => 'none', ) ); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBLogger.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBLogger.php index 37bfd0d4..d285c8d2 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBLogger.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBLogger.php @@ -82,7 +82,7 @@ class ActionScheduler_DBLogger extends ActionScheduler_Logger { } /** - * Retrieve the an action's log entries from the database. + * Retrieve an action's log entries from the database. * * @param int $action_id Action ID. * diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBStore.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBStore.php index 16fc37f4..602c3dd9 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBStore.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/data-stores/ActionScheduler_DBStore.php @@ -705,7 +705,7 @@ AND `group_id` = %d array( 'per_page' => 1000, 'status' => self::STATUS_PENDING, - 'orderby' => 'action_id', + 'orderby' => 'none', ) ); @@ -935,7 +935,17 @@ AND `group_id` = %d $sql = $wpdb->prepare( "{$update} {$where} {$order} LIMIT %d", $params ); // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.PreparedSQLPlaceholders $rows_affected = $wpdb->query( $sql ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared, WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching if ( false === $rows_affected ) { - throw new \RuntimeException( __( 'Unable to claim actions. Database error.', 'action-scheduler' ) ); + $error = empty( $wpdb->last_error ) + ? _x( 'unknown', 'database error', 'action-scheduler' ) + : $wpdb->last_error; + + throw new \RuntimeException( + sprintf( + /* translators: %s database error. */ + __( 'Unable to claim actions. Database error: %s.', 'action-scheduler' ), + $error + ) + ); } return (int) $rows_affected; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/schema/ActionScheduler_StoreSchema.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/schema/ActionScheduler_StoreSchema.php index a894d4ec..a0bd8cb2 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/schema/ActionScheduler_StoreSchema.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/classes/schema/ActionScheduler_StoreSchema.php @@ -38,6 +38,7 @@ class ActionScheduler_StoreSchema extends ActionScheduler_Abstract_Schema { $table_name = $wpdb->$table; $charset_collate = $wpdb->get_charset_collate(); $max_index_length = 191; // @see wp_get_db_schema() + $hook_status_scheduled_date_gmt_max_index_length = $max_index_length - 20 - 8; // - status, - scheduled_date_gmt $default_date = self::DEFAULT_DATE; switch ( $table ) { @@ -59,8 +60,8 @@ class ActionScheduler_StoreSchema extends ActionScheduler_Abstract_Schema { claim_id bigint(20) unsigned NOT NULL default '0', extended_args varchar(8000) DEFAULT NULL, PRIMARY KEY (action_id), - KEY hook (hook($max_index_length)), - KEY status (status), + KEY hook_status_scheduled_date_gmt (hook($hook_status_scheduled_date_gmt_max_index_length), status, scheduled_date_gmt), + KEY status_scheduled_date_gmt (status, scheduled_date_gmt), KEY scheduled_date_gmt (scheduled_date_gmt), KEY args (args($max_index_length)), KEY group_id (group_id), diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/functions.php b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/functions.php index 9770f4fd..cf803da3 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/functions.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/functions.php @@ -14,7 +14,7 @@ * @param bool $unique Whether the action should be unique. * @param int $priority Lower values take precedence over higher values. Defaults to 10, with acceptable values falling in the range 0-255. * - * @return int The action ID. + * @return int The action ID. Zero if there was an error scheduling the action. */ function as_enqueue_async_action( $hook, $args = array(), $group = '', $unique = false, $priority = 10 ) { if ( ! ActionScheduler::is_initialized( __FUNCTION__ ) ) { @@ -63,7 +63,7 @@ function as_enqueue_async_action( $hook, $args = array(), $group = '', $unique = * @param bool $unique Whether the action should be unique. * @param int $priority Lower values take precedence over higher values. Defaults to 10, with acceptable values falling in the range 0-255. * - * @return int The action ID. + * @return int The action ID. Zero if there was an error scheduling the action. */ function as_schedule_single_action( $timestamp, $hook, $args = array(), $group = '', $unique = false, $priority = 10 ) { if ( ! ActionScheduler::is_initialized( __FUNCTION__ ) ) { @@ -115,7 +115,7 @@ function as_schedule_single_action( $timestamp, $hook, $args = array(), $group = * @param bool $unique Whether the action should be unique. * @param int $priority Lower values take precedence over higher values. Defaults to 10, with acceptable values falling in the range 0-255. * - * @return int The action ID. + * @return int The action ID. Zero if there was an error scheduling the action. */ function as_schedule_recurring_action( $timestamp, $interval_in_seconds, $hook, $args = array(), $group = '', $unique = false, $priority = 10 ) { if ( ! ActionScheduler::is_initialized( __FUNCTION__ ) ) { @@ -200,7 +200,7 @@ function as_schedule_recurring_action( $timestamp, $interval_in_seconds, $hook, * @param bool $unique Whether the action should be unique. * @param int $priority Lower values take precedence over higher values. Defaults to 10, with acceptable values falling in the range 0-255. * - * @return int The action ID. + * @return int The action ID. Zero if there was an error scheduling the action. */ function as_schedule_cron_action( $timestamp, $schedule, $hook, $args = array(), $group = '', $unique = false, $priority = 10 ) { if ( ! ActionScheduler::is_initialized( __FUNCTION__ ) ) { @@ -283,9 +283,10 @@ function as_unschedule_action( $hook, $args = array(), $group = '' ) { ActionScheduler::logger()->log( $action_id, sprintf( - /* translators: %s is the name of the hook to be cancelled. */ - __( 'Caught exception while cancelling action: %s', 'action-scheduler' ), - esc_attr( $hook ) + /* translators: %1$s is the name of the hook to be cancelled, %2$s is the exception message. */ + __( 'Caught exception while cancelling action "%1$s": %2$s', 'action-scheduler' ), + $hook, + $exception->getMessage() ) ); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/readme.txt b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/readme.txt index 46bf2f2e..7e0cc7e7 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/readme.txt +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor/woocommerce/action-scheduler/readme.txt @@ -1,10 +1,10 @@ === Action Scheduler === Contributors: Automattic, wpmuguru, claudiosanches, peterfabian1000, vedjain, jamosova, obliviousharmony, konamiman, sadowski, royho, barryhughes-1 Tags: scheduler, cron -Requires at least: 5.2 -Tested up to: 6.0 -Stable tag: 3.6.1 +Stable tag: 3.7.1 License: GPLv3 +Requires at least: 6.2 +Tested up to: 6.4 Requires PHP: 5.6 Action Scheduler - Job Queue for WordPress @@ -47,6 +47,35 @@ Collaboration is cool. We'd love to work with you to improve Action Scheduler. [ == Changelog == += 3.7.1 - 2023-12-13 = +* Release/3.7.0. +* Tweak - WP 6.4 compatibility. +* update semver to 5.7.2 because of a security vulnerability in 5.7.1. + += 3.7.0 - 2023-11-20 = +* Important: starting with this release, Action Scheduler follows an L-2 version policy (WordPress, and consequently PHP). +* Add extended indexes for hook_status_scheduled_date_gmt and status_sheduled_date_gmt. +* Catch and log exceptions thrown when actions can't be created, e.g. under a corrupt database schema. +* Release/3.6.4. +* Tweak - WP 6.4 compatibility. +* Update unit tests for upcoming dependency version policy. +* make sure hook action_scheduler_failed_execution can access original exception object. +* mention dependency version policy in usage.md. + += 3.6.4 - 2023-10-11 = +* Performance improvements when bulk cancelling actions. +* Dev-related fixes. + += 3.6.3 - 2023-09-13 = +* Use `_doing_it_wrong` in initialization check. + += 3.6.2 - 2023-08-09 = +* Add guidance about passing arguments. +* Atomic option locking. +* Improve bulk delete handling. +* Include database error in the exception message. +* Tweak - WP 6.3 compatibility. + = 3.6.1 - 2023-06-14 = * Document new optional `$priority` arg for various API functions. * Document the new `--exclude-groups` WP CLI option. diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/google/apiclient/src/Client.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/google/apiclient/src/Client.php index 18ff565a..d4f62523 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/google/apiclient/src/Client.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/google/apiclient/src/Client.php @@ -301,9 +301,10 @@ class Client * The authorization endpoint allows the user to first * authenticate, and then grant/deny the access request. * @param string|array $scope The scope is expressed as an array or list of space-delimited strings. + * @param array $queryParams Querystring params to add to the authorization URL. * @return string */ - public function createAuthUrl($scope = null) + public function createAuthUrl($scope = null, array $queryParams = []) { if (empty($scope)) { $scope = $this->prepareScopes(); @@ -315,7 +316,7 @@ class Client $approvalPrompt = $this->config['prompt'] ? null : $this->config['approval_prompt']; // include_granted_scopes should be string "true", string "false", or null $includeGrantedScopes = $this->config['include_granted_scopes'] === null ? null : \var_export($this->config['include_granted_scopes'], \true); - $params = \array_filter(['access_type' => $this->config['access_type'], 'approval_prompt' => $approvalPrompt, 'hd' => $this->config['hd'], 'include_granted_scopes' => $includeGrantedScopes, 'login_hint' => $this->config['login_hint'], 'openid.realm' => $this->config['openid.realm'], 'prompt' => $this->config['prompt'], 'redirect_uri' => $this->config['redirect_uri'], 'response_type' => 'code', 'scope' => $scope, 'state' => $this->config['state']]); + $params = \array_filter(['access_type' => $this->config['access_type'], 'approval_prompt' => $approvalPrompt, 'hd' => $this->config['hd'], 'include_granted_scopes' => $includeGrantedScopes, 'login_hint' => $this->config['login_hint'], 'openid.realm' => $this->config['openid.realm'], 'prompt' => $this->config['prompt'], 'redirect_uri' => $this->config['redirect_uri'], 'response_type' => 'code', 'scope' => $scope, 'state' => $this->config['state']]) + $queryParams; // If the list of scopes contains plus.login, add request_visible_actions // to auth URL. $rva = $this->config['request_visible_actions']; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Client.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Client.php index 0fbe4a1c..ba861ce9 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Client.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Client.php @@ -109,7 +109,7 @@ class Client implements \WPMailSMTP\Vendor\GuzzleHttp\ClientInterface, \WPMailSM /** * The HttpClient PSR (PSR-18) specify this method. * - * @inheritDoc + * {@inheritDoc} */ public function sendRequest(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request) : \WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface { @@ -178,7 +178,7 @@ class Client implements \WPMailSMTP\Vendor\GuzzleHttp\ClientInterface, \WPMailSM * * @deprecated Client::getConfig will be removed in guzzlehttp/guzzle:8.0. */ - public function getConfig(?string $option = null) + public function getConfig(string $option = null) { return $option === null ? $this->config : $this->config[$option] ?? null; } @@ -367,6 +367,9 @@ class Client implements \WPMailSMTP\Vendor\GuzzleHttp\ClientInterface, \WPMailSM throw new \WPMailSMTP\Vendor\GuzzleHttp\Exception\InvalidArgumentException('sink must not be a boolean'); } } + if (isset($options['version'])) { + $modify['version'] = $options['version']; + } $request = \WPMailSMTP\Vendor\GuzzleHttp\Psr7\Utils::modifyRequest($request, $modify); if ($request->getBody() instanceof \WPMailSMTP\Vendor\GuzzleHttp\Psr7\MultipartStream) { // Use a multipart/form-data POST if a Content-Type is not set. diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/ClientInterface.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/ClientInterface.php index ce6501da..d82cfe60 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/ClientInterface.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/ClientInterface.php @@ -74,5 +74,5 @@ interface ClientInterface * * @deprecated ClientInterface::getConfig will be removed in guzzlehttp/guzzle:8.0. */ - public function getConfig(?string $option = null); + public function getConfig(string $option = null); } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/CookieJar.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/CookieJar.php index 93269e33..e51b4cee 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/CookieJar.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/CookieJar.php @@ -80,19 +80,13 @@ class CookieJar implements \WPMailSMTP\Vendor\GuzzleHttp\Cookie\CookieJarInterfa } return null; } - /** - * @inheritDoc - */ public function toArray() : array { return \array_map(static function (\WPMailSMTP\Vendor\GuzzleHttp\Cookie\SetCookie $cookie) : array { return $cookie->toArray(); }, $this->getIterator()->getArrayCopy()); } - /** - * @inheritDoc - */ - public function clear(?string $domain = null, ?string $path = null, ?string $name = null) : void + public function clear(string $domain = null, string $path = null, string $name = null) : void { if (!$domain) { $this->cookies = []; @@ -111,18 +105,12 @@ class CookieJar implements \WPMailSMTP\Vendor\GuzzleHttp\Cookie\CookieJarInterfa }); } } - /** - * @inheritDoc - */ public function clearSessionCookies() : void { $this->cookies = \array_filter($this->cookies, static function (\WPMailSMTP\Vendor\GuzzleHttp\Cookie\SetCookie $cookie) : bool { return !$cookie->getDiscard() && $cookie->getExpires(); }); } - /** - * @inheritDoc - */ public function setCookie(\WPMailSMTP\Vendor\GuzzleHttp\Cookie\SetCookie $cookie) : bool { // If the name string is empty (but not 0), ignore the set-cookie @@ -204,7 +192,7 @@ class CookieJar implements \WPMailSMTP\Vendor\GuzzleHttp\Cookie\CookieJarInterfa /** * Computes cookie path following RFC 6265 section 5.1.4 * - * @link https://tools.ietf.org/html/rfc6265#section-5.1.4 + * @see https://datatracker.ietf.org/doc/html/rfc6265#section-5.1.4 */ private function getCookiePathFromRequest(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request) : string { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php index c07d5aca..f5838816 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/CookieJarInterface.php @@ -12,7 +12,8 @@ use WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface; * necessary. Subclasses are also responsible for storing and retrieving * cookies from a file, database, etc. * - * @link https://docs.python.org/2/library/cookielib.html Inspiration + * @see https://docs.python.org/2/library/cookielib.html Inspiration + * * @extends \IteratorAggregate */ interface CookieJarInterface extends \Countable, \IteratorAggregate @@ -57,7 +58,7 @@ interface CookieJarInterface extends \Countable, \IteratorAggregate * @param string|null $path Clears cookies matching a domain and path * @param string|null $name Clears cookies matching a domain, path, and name */ - public function clear(?string $domain = null, ?string $path = null, ?string $name = null) : void; + public function clear(string $domain = null, string $path = null, string $name = null) : void; /** * Discard all sessions cookies. * diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php index 4d1df0f1..8fc2726a 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/SessionCookieJar.php @@ -65,7 +65,7 @@ class SessionCookieJar extends \WPMailSMTP\Vendor\GuzzleHttp\Cookie\CookieJar $this->setCookie(new \WPMailSMTP\Vendor\GuzzleHttp\Cookie\SetCookie($cookie)); } } elseif (\strlen($data)) { - throw new \RuntimeException("Invalid cookie data"); + throw new \RuntimeException('Invalid cookie data'); } } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/SetCookie.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/SetCookie.php index 45f27fb6..b928c9a0 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/SetCookie.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Cookie/SetCookie.php @@ -42,7 +42,13 @@ class SetCookie } else { foreach (\array_keys(self::$defaults) as $search) { if (!\strcasecmp($search, $key)) { - $data[$search] = $value; + if ($search === 'Max-Age') { + if (\is_numeric($value)) { + $data[$search] = (int) $value; + } + } else { + $data[$search] = $value; + } continue 2; } } @@ -56,12 +62,38 @@ class SetCookie */ public function __construct(array $data = []) { - /** @var array|null $replaced will be null in case of replace error */ - $replaced = \array_replace(self::$defaults, $data); - if ($replaced === null) { - throw new \InvalidArgumentException('Unable to replace the default values for the Cookie.'); + $this->data = self::$defaults; + if (isset($data['Name'])) { + $this->setName($data['Name']); + } + if (isset($data['Value'])) { + $this->setValue($data['Value']); + } + if (isset($data['Domain'])) { + $this->setDomain($data['Domain']); + } + if (isset($data['Path'])) { + $this->setPath($data['Path']); + } + if (isset($data['Max-Age'])) { + $this->setMaxAge($data['Max-Age']); + } + if (isset($data['Expires'])) { + $this->setExpires($data['Expires']); + } + if (isset($data['Secure'])) { + $this->setSecure($data['Secure']); + } + if (isset($data['Discard'])) { + $this->setDiscard($data['Discard']); + } + if (isset($data['HttpOnly'])) { + $this->setHttpOnly($data['HttpOnly']); + } + // Set the remaining values that don't have extra validation logic + foreach (\array_diff(\array_keys($data), \array_keys(self::$defaults)) as $key) { + $this->data[$key] = $data[$key]; } - $this->data = $replaced; // Extract the Expires value and turn it into a UNIX timestamp if needed if (!$this->getExpires() && $this->getMaxAge()) { // Calculate the Expires date @@ -322,7 +354,7 @@ class SetCookie return \true; } // Remove the leading '.' as per spec in RFC 6265. - // https://tools.ietf.org/html/rfc6265#section-5.2.3 + // https://datatracker.ietf.org/doc/html/rfc6265#section-5.2.3 $cookieDomain = \ltrim(\strtolower($cookieDomain), '.'); $domain = \strtolower($domain); // Domain not set or exact match. @@ -330,7 +362,7 @@ class SetCookie return \true; } // Matching the subdomain according to RFC 6265. - // https://tools.ietf.org/html/rfc6265#section-5.1.3 + // https://datatracker.ietf.org/doc/html/rfc6265#section-5.1.3 if (\filter_var($domain, \FILTER_VALIDATE_IP)) { return \false; } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/CurlFactory.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/CurlFactory.php index c31b7c0a..208e7955 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/CurlFactory.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/CurlFactory.php @@ -151,7 +151,7 @@ class CurlFactory implements \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlFactoryIn */ private function getDefaultConf(\WPMailSMTP\Vendor\GuzzleHttp\Handler\EasyHandle $easy) : array { - $conf = ['_headers' => $easy->request->getHeaders(), \CURLOPT_CUSTOMREQUEST => $easy->request->getMethod(), \CURLOPT_URL => (string) $easy->request->getUri()->withFragment(''), \CURLOPT_RETURNTRANSFER => \false, \CURLOPT_HEADER => \false, \CURLOPT_CONNECTTIMEOUT => 150]; + $conf = ['_headers' => $easy->request->getHeaders(), \CURLOPT_CUSTOMREQUEST => $easy->request->getMethod(), \CURLOPT_URL => (string) $easy->request->getUri()->withFragment(''), \CURLOPT_RETURNTRANSFER => \false, \CURLOPT_HEADER => \false, \CURLOPT_CONNECTTIMEOUT => 300]; if (\defined('CURLOPT_PROTOCOLS')) { $conf[\CURLOPT_PROTOCOLS] = \CURLPROTO_HTTP | \CURLPROTO_HTTPS; } @@ -175,7 +175,7 @@ class CurlFactory implements \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlFactoryIn } $method = $easy->request->getMethod(); if ($method === 'PUT' || $method === 'POST') { - // See https://tools.ietf.org/html/rfc7230#section-3.3.2 + // See https://datatracker.ietf.org/doc/html/rfc7230#section-3.3.2 if (!$easy->request->hasHeader('Content-Length')) { $conf[\CURLOPT_HTTPHEADER][] = 'Content-Length: 0'; } @@ -334,12 +334,39 @@ class CurlFactory implements \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlFactoryIn $scheme = $easy->request->getUri()->getScheme(); if (isset($options['proxy'][$scheme])) { $host = $easy->request->getUri()->getHost(); - if (!isset($options['proxy']['no']) || !\WPMailSMTP\Vendor\GuzzleHttp\Utils::isHostInNoProxy($host, $options['proxy']['no'])) { + if (isset($options['proxy']['no']) && \WPMailSMTP\Vendor\GuzzleHttp\Utils::isHostInNoProxy($host, $options['proxy']['no'])) { + unset($conf[\CURLOPT_PROXY]); + } else { $conf[\CURLOPT_PROXY] = $options['proxy'][$scheme]; } } } } + if (isset($options['crypto_method'])) { + if (\STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT === $options['crypto_method']) { + if (!\defined('CURL_SSLVERSION_TLSv1_0')) { + throw new \InvalidArgumentException('Invalid crypto_method request option: TLS 1.0 not supported by your version of cURL'); + } + $conf[\CURLOPT_SSLVERSION] = \CURL_SSLVERSION_TLSv1_0; + } elseif (\STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT === $options['crypto_method']) { + if (!\defined('CURL_SSLVERSION_TLSv1_1')) { + throw new \InvalidArgumentException('Invalid crypto_method request option: TLS 1.1 not supported by your version of cURL'); + } + $conf[\CURLOPT_SSLVERSION] = \CURL_SSLVERSION_TLSv1_1; + } elseif (\STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT === $options['crypto_method']) { + if (!\defined('CURL_SSLVERSION_TLSv1_2')) { + throw new \InvalidArgumentException('Invalid crypto_method request option: TLS 1.2 not supported by your version of cURL'); + } + $conf[\CURLOPT_SSLVERSION] = \CURL_SSLVERSION_TLSv1_2; + } elseif (\defined('STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT') && \STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT === $options['crypto_method']) { + if (!\defined('CURL_SSLVERSION_TLSv1_3')) { + throw new \InvalidArgumentException('Invalid crypto_method request option: TLS 1.3 not supported by your version of cURL'); + } + $conf[\CURLOPT_SSLVERSION] = \CURL_SSLVERSION_TLSv1_3; + } else { + throw new \InvalidArgumentException('Invalid crypto_method request option: unknown version provided'); + } + } if (isset($options['cert'])) { $cert = $options['cert']; if (\is_array($cert)) { @@ -349,8 +376,8 @@ class CurlFactory implements \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlFactoryIn if (!\file_exists($cert)) { throw new \InvalidArgumentException("SSL certificate not found: {$cert}"); } - # OpenSSL (versions 0.9.3 and later) also support "P12" for PKCS#12-encoded files. - # see https://curl.se/libcurl/c/CURLOPT_SSLCERTTYPE.html + // OpenSSL (versions 0.9.3 and later) also support "P12" for PKCS#12-encoded files. + // see https://curl.se/libcurl/c/CURLOPT_SSLCERTTYPE.html $ext = \pathinfo($cert, \PATHINFO_EXTENSION); if (\preg_match('#^(der|p12)$#i', $ext)) { $conf[\CURLOPT_SSLCERTTYPE] = \strtoupper($ext); @@ -416,7 +443,7 @@ class CurlFactory implements \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlFactoryIn $ctx['error'] = 'The cURL request was retried 3 times ' . 'and did not succeed. The most likely reason for the failure ' . 'is that cURL was unable to rewind the body of the request ' . 'and subsequent retries resulted in the same error. Turn on ' . 'the debug option to see what went wrong. See ' . 'https://bugs.php.net/bug.php?id=47204 for more information.'; return self::createRejection($easy, $ctx); } else { - $easy->options['_curl_retries']++; + ++$easy->options['_curl_retries']; } return $handler($easy->request, $easy->options); } @@ -459,4 +486,11 @@ class CurlFactory implements \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlFactoryIn return \strlen($h); }; } + public function __destruct() + { + foreach ($this->handles as $id => $handle) { + \curl_close($handle); + unset($this->handles[$id]); + } + } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php index 5860448f..3974f48c 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/CurlMultiHandler.php @@ -14,8 +14,6 @@ use WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface; * associative array of curl option constants mapping to values in the * **curl** key of the provided request options. * - * @property resource|\CurlMultiHandle $_mh Internal use only. Lazy loaded multi-handle. - * * @final */ class CurlMultiHandler @@ -48,6 +46,8 @@ class CurlMultiHandler * @var array An associative array of CURLMOPT_* options and corresponding values for curl_multi_setopt() */ private $options = []; + /** @var resource|\CurlMultiHandle */ + private $_mh; /** * This handler accepts the following options: * @@ -69,6 +69,9 @@ class CurlMultiHandler $this->selectTimeout = 1; } $this->options = $options['options'] ?? []; + // unsetting the property forces the first access to go through + // __get(). + unset($this->_mh); } /** * @param string $name diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php index cdde15a2..138ca612 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/HeaderProcessor.php @@ -13,9 +13,9 @@ final class HeaderProcessor * * @param string[] $headers * - * @throws \RuntimeException - * * @return array{0:string, 1:int, 2:?string, 3:array} + * + * @throws \RuntimeException */ public static function parseHeaders(array $headers) : array { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/StreamHandler.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/StreamHandler.php index 88f35353..05829317 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/StreamHandler.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Handler/StreamHandler.php @@ -53,7 +53,7 @@ class StreamHandler // Determine if the error was a networking error. $message = $e->getMessage(); // This list can probably get more comprehensive. - if (\false !== \strpos($message, 'getaddrinfo') || \false !== \strpos($message, 'Connection refused') || \false !== \strpos($message, "couldn't connect to host") || \false !== \strpos($message, "connection attempt failed")) { + if (\false !== \strpos($message, 'getaddrinfo') || \false !== \strpos($message, 'Connection refused') || \false !== \strpos($message, "couldn't connect to host") || \false !== \strpos($message, 'connection attempt failed')) { $e = new \WPMailSMTP\Vendor\GuzzleHttp\Exception\ConnectException($e->getMessage(), $request, $e); } else { $e = \WPMailSMTP\Vendor\GuzzleHttp\Exception\RequestException::wrapException($request, $e); @@ -290,7 +290,7 @@ class StreamHandler } $context = ['http' => ['method' => $request->getMethod(), 'header' => $headers, 'protocol_version' => $request->getProtocolVersion(), 'ignore_errors' => \true, 'follow_location' => 0], 'ssl' => ['peer_name' => $request->getUri()->getHost()]]; $body = (string) $request->getBody(); - if (!empty($body)) { + if ('' !== $body) { $context['http']['content'] = $body; // Prevent the HTTP handler from adding a Content-Type header. if (!$request->hasHeader('Content-Type')) { @@ -355,6 +355,17 @@ class StreamHandler $options['http']['timeout'] = $value; } } + /** + * @param mixed $value as passed via Request transfer options. + */ + private function add_crypto_method(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request, array &$options, $value, array &$params) : void + { + if ($value === \STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT || $value === \STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT || $value === \STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT || \defined('STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT') && $value === \STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT) { + $options['http']['crypto_method'] = $value; + return; + } + throw new \InvalidArgumentException('Invalid crypto_method request option: unknown version provided'); + } /** * @param mixed $value as passed via Request transfer options. */ diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/HandlerStack.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/HandlerStack.php index a7c0cd8c..d3a75193 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/HandlerStack.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/HandlerStack.php @@ -40,7 +40,7 @@ class HandlerStack * handler is provided, the best handler for your * system will be utilized. */ - public static function create(?callable $handler = null) : self + public static function create(callable $handler = null) : self { $stack = new self($handler ?: \WPMailSMTP\Vendor\GuzzleHttp\Utils::chooseHandler()); $stack->push(\WPMailSMTP\Vendor\GuzzleHttp\Middleware::httpErrors(), 'http_errors'); @@ -76,13 +76,13 @@ class HandlerStack $depth = 0; $stack = []; if ($this->handler !== null) { - $stack[] = "0) Handler: " . $this->debugCallable($this->handler); + $stack[] = '0) Handler: ' . $this->debugCallable($this->handler); } $result = ''; foreach (\array_reverse($this->stack) as $tuple) { - $depth++; + ++$depth; $str = "{$depth}) Name: '{$tuple[1]}', "; - $str .= "Function: " . $this->debugCallable($tuple[0]); + $str .= 'Function: ' . $this->debugCallable($tuple[0]); $result = "> {$str}\n{$result}"; $stack[] = $str; } @@ -115,7 +115,7 @@ class HandlerStack * @param callable(callable): callable $middleware Middleware function * @param string $name Name to register for this middleware. */ - public function unshift(callable $middleware, ?string $name = null) : void + public function unshift(callable $middleware, string $name = null) : void { \array_unshift($this->stack, [$middleware, $name]); $this->cached = null; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/MessageFormatter.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/MessageFormatter.php index 8f90d842..1ad3c517 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/MessageFormatter.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/MessageFormatter.php @@ -39,11 +39,11 @@ class MessageFormatter implements \WPMailSMTP\Vendor\GuzzleHttp\MessageFormatter /** * Apache Common Log Format. * - * @link https://httpd.apache.org/docs/2.4/logs.html#common + * @see https://httpd.apache.org/docs/2.4/logs.html#common * * @var string */ - public const CLF = "{hostname} {req_header_User-Agent} - [{date_common_log}] \"{method} {target} HTTP/{version}\" {code} {res_header_Content-Length}"; + public const CLF = '{hostname} {req_header_User-Agent} - [{date_common_log}] "{method} {target} HTTP/{version}" {code} {res_header_Content-Length}'; public const DEBUG = ">>>>>>>>\n{request}\n<<<<<<<<\n{response}\n--------\n{error}"; public const SHORT = '[{ts}] "{method} {target} HTTP/{version}" {code}'; /** @@ -64,7 +64,7 @@ class MessageFormatter implements \WPMailSMTP\Vendor\GuzzleHttp\MessageFormatter * @param ResponseInterface|null $response Response that was received * @param \Throwable|null $error Exception that was received */ - public function format(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request, ?\WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface $response = null, ?\Throwable $error = null) : string + public function format(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request, \WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface $response = null, \Throwable $error = null) : string { $cache = []; /** @var string */ diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/MessageFormatterInterface.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/MessageFormatterInterface.php index e59829b8..bc8062b2 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/MessageFormatterInterface.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/MessageFormatterInterface.php @@ -13,5 +13,5 @@ interface MessageFormatterInterface * @param ResponseInterface|null $response Response that was received * @param \Throwable|null $error Exception that was received */ - public function format(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request, ?\WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface $response = null, ?\Throwable $error = null) : string; + public function format(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request, \WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface $response = null, \Throwable $error = null) : string; } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/RequestOptions.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/RequestOptions.php index c219b76d..ac8cf1c5 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/RequestOptions.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/RequestOptions.php @@ -5,9 +5,7 @@ namespace WPMailSMTP\Vendor\GuzzleHttp; /** * This class contains a list of built-in Guzzle request options. * - * More documentation for each option can be found at http://guzzlephp.org/. - * - * @link http://docs.guzzlephp.org/en/v6/request-options.html + * @see https://docs.guzzlephp.org/en/latest/request-options.html */ final class RequestOptions { @@ -65,9 +63,20 @@ final class RequestOptions /** * connect_timeout: (float, default=0) Float describing the number of * seconds to wait while trying to connect to a server. Use 0 to wait - * indefinitely (the default behavior). + * 300 seconds (the default behavior). */ public const CONNECT_TIMEOUT = 'connect_timeout'; + /** + * crypto_method: (int) A value describing the minimum TLS protocol + * version to use. + * + * This setting must be set to one of the + * ``STREAM_CRYPTO_METHOD_TLS*_CLIENT`` constants. PHP 7.4 or higher is + * required in order to use TLS 1.3, and cURL 7.34.0 or higher is required + * in order to specify a crypto method, with cURL 7.52.0 or higher being + * required to use TLS 1.3. + */ + public const CRYPTO_METHOD = 'crypto_method'; /** * debug: (bool|resource) Set to true or set to a PHP stream returned by * fopen() enable debug output with the HTTP handler used to send a diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/RetryMiddleware.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/RetryMiddleware.php index 18e5adea..b0415226 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/RetryMiddleware.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/RetryMiddleware.php @@ -49,7 +49,7 @@ class RetryMiddleware */ public static function exponentialDelay(int $retries) : int { - return (int) \pow(2, $retries - 1) * 1000; + return (int) 2 ** ($retries - 1) * 1000; } public function __invoke(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request, array $options) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { @@ -85,7 +85,7 @@ class RetryMiddleware } private function doRetry(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request, array $options, \WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface $response = null) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { - $options['delay'] = ($this->delay)(++$options['retries'], $response); + $options['delay'] = ($this->delay)(++$options['retries'], $response, $request); return $this($request, $options); } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/TransferStats.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/TransferStats.php index f0b24bdb..198987c5 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/TransferStats.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/TransferStats.php @@ -38,7 +38,7 @@ final class TransferStats * @param mixed $handlerErrorData Handler error data. * @param array $handlerStats Handler specific stats. */ - public function __construct(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request, ?\WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface $response = null, ?float $transferTime = null, $handlerErrorData = null, array $handlerStats = []) + public function __construct(\WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $request, \WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface $response = null, float $transferTime = null, $handlerErrorData = null, array $handlerStats = []) { $this->request = $request; $this->response = $response; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Utils.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Utils.php index 30b4892d..5bd68c89 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Utils.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/Utils.php @@ -71,19 +71,21 @@ final class Utils * * The returned handler is not wrapped by any default middlewares. * - * @throws \RuntimeException if no viable Handler is available. - * * @return callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface Returns the best handler for the given system. + * + * @throws \RuntimeException if no viable Handler is available. */ public static function chooseHandler() : callable { $handler = null; - if (\function_exists('curl_multi_exec') && \function_exists('curl_exec')) { - $handler = \WPMailSMTP\Vendor\GuzzleHttp\Handler\Proxy::wrapSync(new \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlMultiHandler(), new \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlHandler()); - } elseif (\function_exists('curl_exec')) { - $handler = new \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlHandler(); - } elseif (\function_exists('curl_multi_exec')) { - $handler = new \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlMultiHandler(); + if (\defined('CURLOPT_CUSTOMREQUEST')) { + if (\function_exists('curl_multi_exec') && \function_exists('curl_exec')) { + $handler = \WPMailSMTP\Vendor\GuzzleHttp\Handler\Proxy::wrapSync(new \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlMultiHandler(), new \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlHandler()); + } elseif (\function_exists('curl_exec')) { + $handler = new \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlHandler(); + } elseif (\function_exists('curl_multi_exec')) { + $handler = new \WPMailSMTP\Vendor\GuzzleHttp\Handler\CurlMultiHandler(); + } } if (\ini_get('allow_url_fopen')) { $handler = $handler ? \WPMailSMTP\Vendor\GuzzleHttp\Handler\Proxy::wrapStreaming($handler, new \WPMailSMTP\Vendor\GuzzleHttp\Handler\StreamHandler()) : new \WPMailSMTP\Vendor\GuzzleHttp\Handler\StreamHandler(); @@ -153,14 +155,13 @@ No system CA bundle could be found in any of the the common system locations. PHP versions earlier than 5.6 are not properly configured to use the system's CA bundle by default. In order to verify peer certificates, you will need to supply the path on disk to a certificate bundle to the 'verify' request -option: http://docs.guzzlephp.org/en/latest/clients.html#verify. If you do not -need a specific certificate bundle, then Mozilla provides a commonly used CA -bundle which can be downloaded here (provided by the maintainer of cURL): -https://curl.haxx.se/ca/cacert.pem. Once -you have a CA bundle available on disk, you can set the 'openssl.cafile' PHP -ini setting to point to the path to the file, allowing you to omit the 'verify' -request option. See https://curl.haxx.se/docs/sslcerts.html for more -information. +option: https://docs.guzzlephp.org/en/latest/request-options.html#verify. If +you do not need a specific certificate bundle, then Mozilla provides a commonly +used CA bundle which can be downloaded here (provided by the maintainer of +cURL): https://curl.haxx.se/ca/cacert.pem. Once you have a CA bundle available +on disk, you can set the 'openssl.cafile' PHP ini setting to point to the path +to the file, allowing you to omit the 'verify' request option. See +https://curl.haxx.se/docs/sslcerts.html for more information. EOT ); } @@ -237,7 +238,7 @@ EOT * * @throws InvalidArgumentException if the JSON cannot be decoded. * - * @link https://www.php.net/manual/en/function.json-decode.php + * @see https://www.php.net/manual/en/function.json-decode.php */ public static function jsonDecode(string $json, bool $assoc = \false, int $depth = 512, int $options = 0) { @@ -256,7 +257,7 @@ EOT * * @throws InvalidArgumentException if the JSON cannot be encoded. * - * @link https://www.php.net/manual/en/function.json-encode.php + * @see https://www.php.net/manual/en/function.json-encode.php */ public static function jsonEncode($value, int $options = 0, int $depth = 512) : string { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/functions.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/functions.php index 089b3044..c6e16f1b 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/functions.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/guzzle/src/functions.php @@ -47,10 +47,10 @@ function debug_resource($value = null) * * The returned handler is not wrapped by any default middlewares. * - * @throws \RuntimeException if no viable Handler is available. - * * @return callable(\Psr\Http\Message\RequestInterface, array): \GuzzleHttp\Promise\PromiseInterface Returns the best handler for the given system. * + * @throws \RuntimeException if no viable Handler is available. + * * @deprecated choose_handler will be removed in guzzlehttp/guzzle:8.0. Use Utils::chooseHandler instead. */ function choose_handler() : callable @@ -133,7 +133,7 @@ function is_host_in_noproxy(string $host, array $noProxyArray) : bool * * @throws Exception\InvalidArgumentException if the JSON cannot be decoded. * - * @link https://www.php.net/manual/en/function.json-decode.php + * @see https://www.php.net/manual/en/function.json-decode.php * @deprecated json_decode will be removed in guzzlehttp/guzzle:8.0. Use Utils::jsonDecode instead. */ function json_decode(string $json, bool $assoc = \false, int $depth = 512, int $options = 0) @@ -149,7 +149,7 @@ function json_decode(string $json, bool $assoc = \false, int $depth = 512, int $ * * @throws Exception\InvalidArgumentException if the JSON cannot be encoded. * - * @link https://www.php.net/manual/en/function.json-encode.php + * @see https://www.php.net/manual/en/function.json-encode.php * @deprecated json_encode will be removed in guzzlehttp/guzzle:8.0. Use Utils::jsonEncode instead. */ function json_encode($value, int $options = 0, int $depth = 512) : string diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/AggregateException.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/AggregateException.php index 91f5aa5a..0ca68248 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/AggregateException.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/AggregateException.php @@ -1,5 +1,6 @@ generator = $generatorFn(); - $this->result = new \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise(function () { + $this->result = new \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise(function () : void { while (isset($this->currentPromise)) { $this->currentPromise->wait(); } }); try { $this->nextCoroutine($this->generator->current()); - } catch (\Exception $exception) { - $this->result->reject($exception); } catch (\Throwable $throwable) { $this->result->reject($throwable); } } /** * Create a new coroutine. - * - * @return self */ - public static function of(callable $generatorFn) + public static function of(callable $generatorFn) : self { return new self($generatorFn); } - public function then(callable $onFulfilled = null, callable $onRejected = null) + public function then(callable $onFulfilled = null, callable $onRejected = null) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { return $this->result->then($onFulfilled, $onRejected); } - public function otherwise(callable $onRejected) + public function otherwise(callable $onRejected) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { return $this->result->otherwise($onRejected); } - public function wait($unwrap = \true) + public function wait(bool $unwrap = \true) { return $this->result->wait($unwrap); } - public function getState() + public function getState() : string { return $this->result->getState(); } - public function resolve($value) + public function resolve($value) : void { $this->result->resolve($value); } - public function reject($reason) + public function reject($reason) : void { $this->result->reject($reason); } - public function cancel() + public function cancel() : void { $this->currentPromise->cancel(); $this->result->cancel(); } - private function nextCoroutine($yielded) + private function nextCoroutine($yielded) : void { $this->currentPromise = \WPMailSMTP\Vendor\GuzzleHttp\Promise\Create::promiseFor($yielded)->then([$this, '_handleSuccess'], [$this, '_handleFailure']); } /** * @internal */ - public function _handleSuccess($value) + public function _handleSuccess($value) : void { unset($this->currentPromise); try { @@ -126,8 +122,6 @@ final class Coroutine implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseIn } else { $this->result->resolve($value); } - } catch (\Exception $exception) { - $this->result->reject($exception); } catch (\Throwable $throwable) { $this->result->reject($throwable); } @@ -135,15 +129,13 @@ final class Coroutine implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseIn /** * @internal */ - public function _handleFailure($reason) + public function _handleFailure($reason) : void { unset($this->currentPromise); try { $nextYield = $this->generator->throw(\WPMailSMTP\Vendor\GuzzleHttp\Promise\Create::exceptionFor($reason)); // The throw was caught, so keep iterating on the coroutine $this->nextCoroutine($nextYield); - } catch (\Exception $exception) { - $this->result->reject($exception); } catch (\Throwable $throwable) { $this->result->reject($throwable); } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Create.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Create.php index c5de2c8b..3f0c05b7 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Create.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Create.php @@ -1,5 +1,6 @@ $onFulfilled, 'rejected' => $onRejected]))->promise(); } @@ -37,12 +34,8 @@ final class Each * * @param mixed $iterable * @param int|callable $concurrency - * @param callable $onFulfilled - * @param callable $onRejected - * - * @return PromiseInterface */ - public static function ofLimit($iterable, $concurrency, callable $onFulfilled = null, callable $onRejected = null) + public static function ofLimit($iterable, $concurrency, callable $onFulfilled = null, callable $onRejected = null) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { return (new \WPMailSMTP\Vendor\GuzzleHttp\Promise\EachPromise($iterable, ['fulfilled' => $onFulfilled, 'rejected' => $onRejected, 'concurrency' => $concurrency]))->promise(); } @@ -53,13 +46,10 @@ final class Each * * @param mixed $iterable * @param int|callable $concurrency - * @param callable $onFulfilled - * - * @return PromiseInterface */ - public static function ofLimitAll($iterable, $concurrency, callable $onFulfilled = null) + public static function ofLimitAll($iterable, $concurrency, callable $onFulfilled = null) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { - return self::ofLimit($iterable, $concurrency, $onFulfilled, function ($reason, $idx, \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $aggregate) { + return self::ofLimit($iterable, $concurrency, $onFulfilled, function ($reason, $idx, \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $aggregate) : void { $aggregate->reject($reason); }); } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/EachPromise.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/EachPromise.php index 6ad8766d..f2f2f6e6 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/EachPromise.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/EachPromise.php @@ -1,10 +1,13 @@ aggregate) { return $this->aggregate; @@ -69,19 +72,16 @@ class EachPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromisorInter $this->refillPending(); } catch (\Throwable $e) { $this->aggregate->reject($e); - } catch (\Exception $e) { - $this->aggregate->reject($e); } /** * @psalm-suppress NullableReturnStatement - * @phpstan-ignore-next-line */ return $this->aggregate; } - private function createPromise() + private function createPromise() : void { $this->mutex = \false; - $this->aggregate = new \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise(function () { + $this->aggregate = new \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise(function () : void { if ($this->checkIfFinished()) { return; } @@ -97,14 +97,14 @@ class EachPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromisorInter } }); // Clear the references when the promise is resolved. - $clearFn = function () { + $clearFn = function () : void { $this->iterable = $this->concurrency = $this->pending = null; $this->onFulfilled = $this->onRejected = null; $this->nextPendingIndex = 0; }; $this->aggregate->then($clearFn, $clearFn); } - private function refillPending() + private function refillPending() : void { if (!$this->concurrency) { // Add all pending promises. @@ -113,7 +113,7 @@ class EachPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromisorInter return; } // Add only up to N pending promises. - $concurrency = \is_callable($this->concurrency) ? \call_user_func($this->concurrency, \count($this->pending)) : $this->concurrency; + $concurrency = \is_callable($this->concurrency) ? ($this->concurrency)(\count($this->pending)) : $this->concurrency; $concurrency = \max($concurrency - \count($this->pending), 0); // Concurrency may be set to 0 to disallow new promises. if (!$concurrency) { @@ -128,7 +128,7 @@ class EachPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromisorInter while (--$concurrency && $this->advanceIterator() && $this->addPending()) { } } - private function addPending() + private function addPending() : bool { if (!$this->iterable || !$this->iterable->valid()) { return \false; @@ -138,20 +138,20 @@ class EachPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromisorInter // Iterable keys may not be unique, so we use a counter to // guarantee uniqueness $idx = $this->nextPendingIndex++; - $this->pending[$idx] = $promise->then(function ($value) use($idx, $key) { + $this->pending[$idx] = $promise->then(function ($value) use($idx, $key) : void { if ($this->onFulfilled) { - \call_user_func($this->onFulfilled, $value, $key, $this->aggregate); + ($this->onFulfilled)($value, $key, $this->aggregate); } $this->step($idx); - }, function ($reason) use($idx, $key) { + }, function ($reason) use($idx, $key) : void { if ($this->onRejected) { - \call_user_func($this->onRejected, $reason, $key, $this->aggregate); + ($this->onRejected)($reason, $key, $this->aggregate); } $this->step($idx); }); return \true; } - private function advanceIterator() + private function advanceIterator() : bool { // Place a lock on the iterator so that we ensure to not recurse, // preventing fatal generator errors. @@ -167,13 +167,9 @@ class EachPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromisorInter $this->aggregate->reject($e); $this->mutex = \false; return \false; - } catch (\Exception $e) { - $this->aggregate->reject($e); - $this->mutex = \false; - return \false; } } - private function step($idx) + private function step(int $idx) : void { // If the promise was already resolved, then ignore this step. if (\WPMailSMTP\Vendor\GuzzleHttp\Promise\Is::settled($this->aggregate)) { @@ -188,7 +184,7 @@ class EachPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromisorInter $this->refillPending(); } } - private function checkIfFinished() + private function checkIfFinished() : bool { if (!$this->pending && !$this->iterable->valid()) { // Resolve the promise if there's nothing left to do. diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/FulfilledPromise.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/FulfilledPromise.php index 3020c0fd..28903720 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/FulfilledPromise.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/FulfilledPromise.php @@ -1,5 +1,6 @@ value = $value; } - public function then(callable $onFulfilled = null, callable $onRejected = null) + public function then(callable $onFulfilled = null, callable $onRejected = null) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { // Return itself if there is no onFulfilled function. if (!$onFulfilled) { @@ -27,42 +33,40 @@ class FulfilledPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseI $queue = \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::queue(); $p = new \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise([$queue, 'run']); $value = $this->value; - $queue->add(static function () use($p, $value, $onFulfilled) { + $queue->add(static function () use($p, $value, $onFulfilled) : void { if (\WPMailSMTP\Vendor\GuzzleHttp\Promise\Is::pending($p)) { try { $p->resolve($onFulfilled($value)); } catch (\Throwable $e) { $p->reject($e); - } catch (\Exception $e) { - $p->reject($e); } } }); return $p; } - public function otherwise(callable $onRejected) + public function otherwise(callable $onRejected) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { return $this->then(null, $onRejected); } - public function wait($unwrap = \true, $defaultDelivery = null) + public function wait(bool $unwrap = \true) { return $unwrap ? $this->value : null; } - public function getState() + public function getState() : string { return self::FULFILLED; } - public function resolve($value) + public function resolve($value) : void { if ($value !== $this->value) { - throw new \LogicException("Cannot resolve a fulfilled promise"); + throw new \LogicException('Cannot resolve a fulfilled promise'); } } - public function reject($reason) + public function reject($reason) : void { - throw new \LogicException("Cannot reject a fulfilled promise"); + throw new \LogicException('Cannot reject a fulfilled promise'); } - public function cancel() + public function cancel() : void { // pass } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Is.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Is.php index 43cb4a4d..1d65fa78 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Is.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Is.php @@ -1,42 +1,35 @@ getState() === \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::PENDING; } /** * Returns true if a promise is fulfilled or rejected. - * - * @return bool */ - public static function settled(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) + public static function settled(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) : bool { return $promise->getState() !== \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::PENDING; } /** * Returns true if a promise is fulfilled. - * - * @return bool */ - public static function fulfilled(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) + public static function fulfilled(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) : bool { return $promise->getState() === \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::FULFILLED; } /** * Returns true if a promise is rejected. - * - * @return bool */ - public static function rejected(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) + public static function rejected(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) : bool { return $promise->getState() === \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::REJECTED; } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Promise.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Promise.php index 94a7a69a..447e3725 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Promise.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/Promise.php @@ -1,11 +1,14 @@ waitFn = $waitFn; $this->cancelFn = $cancelFn; } - public function then(callable $onFulfilled = null, callable $onRejected = null) + public function then(callable $onFulfilled = null, callable $onRejected = null) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { if ($this->state === self::PENDING) { $p = new \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise(null, [$this, 'cancel']); @@ -43,11 +46,11 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $rejection = \WPMailSMTP\Vendor\GuzzleHttp\Promise\Create::rejectionFor($this->result); return $onRejected ? $rejection->then(null, $onRejected) : $rejection; } - public function otherwise(callable $onRejected) + public function otherwise(callable $onRejected) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { return $this->then(null, $onRejected); } - public function wait($unwrap = \true) + public function wait(bool $unwrap = \true) { $this->waitIfPending(); if ($this->result instanceof \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface) { @@ -61,11 +64,11 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface throw \WPMailSMTP\Vendor\GuzzleHttp\Promise\Create::exceptionFor($this->result); } } - public function getState() + public function getState() : string { return $this->state; } - public function cancel() + public function cancel() : void { if ($this->state !== self::PENDING) { return; @@ -78,8 +81,6 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $fn(); } catch (\Throwable $e) { $this->reject($e); - } catch (\Exception $e) { - $this->reject($e); } } // Reject the promise only if it wasn't rejected in a then callback. @@ -88,15 +89,15 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $this->reject(new \WPMailSMTP\Vendor\GuzzleHttp\Promise\CancellationException('Promise has been cancelled')); } } - public function resolve($value) + public function resolve($value) : void { $this->settle(self::FULFILLED, $value); } - public function reject($reason) + public function reject($reason) : void { $this->settle(self::REJECTED, $reason); } - private function settle($state, $value) + private function settle(string $state, $value) : void { if ($this->state !== self::PENDING) { // Ignore calls with the same resolution. @@ -123,7 +124,7 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface if (!\is_object($value) || !\method_exists($value, 'then')) { $id = $state === self::FULFILLED ? 1 : 2; // It's a success, so resolve the handlers in the queue. - \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::queue()->add(static function () use($id, $value, $handlers) { + \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::queue()->add(static function () use($id, $value, $handlers) : void { foreach ($handlers as $handler) { self::callHandler($id, $value, $handler); } @@ -133,11 +134,11 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $value->handlers = \array_merge($value->handlers, $handlers); } else { // Resolve the handlers when the forwarded promise is resolved. - $value->then(static function ($value) use($handlers) { + $value->then(static function ($value) use($handlers) : void { foreach ($handlers as $handler) { self::callHandler(1, $value, $handler); } - }, static function ($reason) use($handlers) { + }, static function ($reason) use($handlers) : void { foreach ($handlers as $handler) { self::callHandler(2, $reason, $handler); } @@ -151,7 +152,7 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface * @param mixed $value Value to pass to the callback. * @param array $handler Array of handler data (promise and callbacks). */ - private static function callHandler($index, $value, array $handler) + private static function callHandler(int $index, $value, array $handler) : void { /** @var PromiseInterface $promise */ $promise = $handler[0]; @@ -180,11 +181,9 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface } } catch (\Throwable $reason) { $promise->reject($reason); - } catch (\Exception $reason) { - $promise->reject($reason); } } - private function waitIfPending() + private function waitIfPending() : void { if ($this->state !== self::PENDING) { return; @@ -202,13 +201,13 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $this->reject('Invoking the wait callback did not resolve the promise'); } } - private function invokeWaitFn() + private function invokeWaitFn() : void { try { $wfn = $this->waitFn; $this->waitFn = null; $wfn(\true); - } catch (\Exception $reason) { + } catch (\Throwable $reason) { if ($this->state === self::PENDING) { // The promise has not been resolved yet, so reject the promise // with the exception. @@ -220,7 +219,7 @@ class Promise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface } } } - private function invokeWaitList() + private function invokeWaitList() : void { $waitList = $this->waitList; $this->waitList = null; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/PromiseInterface.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/PromiseInterface.php index 9cee249d..4101023f 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/PromiseInterface.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/PromiseInterface.php @@ -1,5 +1,6 @@ reason = $reason; } - public function then(callable $onFulfilled = null, callable $onRejected = null) + public function then(callable $onFulfilled = null, callable $onRejected = null) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { // If there's no onRejected callback then just return self. if (!$onRejected) { @@ -27,7 +33,7 @@ class RejectedPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseIn $queue = \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::queue(); $reason = $this->reason; $p = new \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise([$queue, 'run']); - $queue->add(static function () use($p, $reason, $onRejected) { + $queue->add(static function () use($p, $reason, $onRejected) : void { if (\WPMailSMTP\Vendor\GuzzleHttp\Promise\Is::pending($p)) { try { // Return a resolved promise if onRejected does not throw. @@ -35,40 +41,37 @@ class RejectedPromise implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseIn } catch (\Throwable $e) { // onRejected threw, so return a rejected promise. $p->reject($e); - } catch (\Exception $e) { - // onRejected threw, so return a rejected promise. - $p->reject($e); } } }); return $p; } - public function otherwise(callable $onRejected) + public function otherwise(callable $onRejected) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { return $this->then(null, $onRejected); } - public function wait($unwrap = \true, $defaultDelivery = null) + public function wait(bool $unwrap = \true) { if ($unwrap) { throw \WPMailSMTP\Vendor\GuzzleHttp\Promise\Create::exceptionFor($this->reason); } return null; } - public function getState() + public function getState() : string { return self::REJECTED; } - public function resolve($value) + public function resolve($value) : void { - throw new \LogicException("Cannot resolve a rejected promise"); + throw new \LogicException('Cannot resolve a rejected promise'); } - public function reject($reason) + public function reject($reason) : void { if ($reason !== $this->reason) { - throw new \LogicException("Cannot reject a rejected promise"); + throw new \LogicException('Cannot reject a rejected promise'); } } - public function cancel() + public function cancel() : void { // pass } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/RejectionException.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/RejectionException.php index 370f78b4..246ae0b6 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/RejectionException.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/RejectionException.php @@ -1,5 +1,6 @@ reason = $reason; $message = 'The promise was rejected'; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/TaskQueue.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/TaskQueue.php index 619dbab3..a61a1777 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/TaskQueue.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/TaskQueue.php @@ -1,5 +1,6 @@ run(); + * + * @final */ class TaskQueue implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\TaskQueueInterface { private $enableShutdown = \true; private $queue = []; - public function __construct($withShutdown = \true) + public function __construct(bool $withShutdown = \true) { if ($withShutdown) { - \register_shutdown_function(function () { + \register_shutdown_function(function () : void { if ($this->enableShutdown) { // Only run the tasks if an E_ERROR didn't occur. $err = \error_get_last(); @@ -29,15 +32,15 @@ class TaskQueue implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\TaskQueueInterf }); } } - public function isEmpty() + public function isEmpty() : bool { return !$this->queue; } - public function add(callable $task) + public function add(callable $task) : void { $this->queue[] = $task; } - public function run() + public function run() : void { while ($task = \array_shift($this->queue)) { /** @var callable $task */ @@ -55,7 +58,7 @@ class TaskQueue implements \WPMailSMTP\Vendor\GuzzleHttp\Promise\TaskQueueInterf * * Note: This shutdown will occur before any destructors are triggered. */ - public function disableShutdown() + public function disableShutdown() : void { $this->enableShutdown = \false; } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/TaskQueueInterface.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/TaskQueueInterface.php index f18c95e4..1861713f 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/TaskQueueInterface.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/TaskQueueInterface.php @@ -1,22 +1,21 @@ * - * @param TaskQueueInterface $assign Optionally specify a new queue instance. - * - * @return TaskQueueInterface + * @param TaskQueueInterface|null $assign Optionally specify a new queue instance. */ - public static function queue(\WPMailSMTP\Vendor\GuzzleHttp\Promise\TaskQueueInterface $assign = null) + public static function queue(\WPMailSMTP\Vendor\GuzzleHttp\Promise\TaskQueueInterface $assign = null) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\TaskQueueInterface { static $queue; if ($assign) { @@ -36,22 +35,18 @@ final class Utils * returns a promise that is fulfilled or rejected with the result. * * @param callable $task Task function to run. - * - * @return PromiseInterface */ - public static function task(callable $task) + public static function task(callable $task) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { $queue = self::queue(); $promise = new \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise([$queue, 'run']); - $queue->add(function () use($task, $promise) { + $queue->add(function () use($task, $promise) : void { try { if (\WPMailSMTP\Vendor\GuzzleHttp\Promise\Is::pending($promise)) { $promise->resolve($task()); } } catch (\Throwable $e) { $promise->reject($e); - } catch (\Exception $e) { - $promise->reject($e); } }); return $promise; @@ -67,10 +62,8 @@ final class Utils * key mapping to the rejection reason of the promise. * * @param PromiseInterface $promise Promise or value. - * - * @return array */ - public static function inspect(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) + public static function inspect(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) : array { try { return ['state' => \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::FULFILLED, 'value' => $promise->wait()]; @@ -78,8 +71,6 @@ final class Utils return ['state' => \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::REJECTED, 'reason' => $e->getReason()]; } catch (\Throwable $e) { return ['state' => \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::REJECTED, 'reason' => $e]; - } catch (\Exception $e) { - return ['state' => \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::REJECTED, 'reason' => $e]; } } /** @@ -91,10 +82,8 @@ final class Utils * @see inspect for the inspection state array format. * * @param PromiseInterface[] $promises Traversable of promises to wait upon. - * - * @return array */ - public static function inspectAll($promises) + public static function inspectAll($promises) : array { $results = []; foreach ($promises as $key => $promise) { @@ -111,12 +100,9 @@ final class Utils * * @param iterable $promises Iterable of PromiseInterface objects to wait on. * - * @return array - * - * @throws \Exception on error - * @throws \Throwable on error in PHP >=7 + * @throws \Throwable on error */ - public static function unwrap($promises) + public static function unwrap($promises) : array { $results = []; foreach ($promises as $key => $promise) { @@ -134,15 +120,13 @@ final class Utils * * @param mixed $promises Promises or values. * @param bool $recursive If true, resolves new promises that might have been added to the stack during its own resolution. - * - * @return PromiseInterface */ - public static function all($promises, $recursive = \false) + public static function all($promises, bool $recursive = \false) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { $results = []; - $promise = \WPMailSMTP\Vendor\GuzzleHttp\Promise\Each::of($promises, function ($value, $idx) use(&$results) { + $promise = \WPMailSMTP\Vendor\GuzzleHttp\Promise\Each::of($promises, function ($value, $idx) use(&$results) : void { $results[$idx] = $value; - }, function ($reason, $idx, \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise $aggregate) { + }, function ($reason, $idx, \WPMailSMTP\Vendor\GuzzleHttp\Promise\Promise $aggregate) : void { $aggregate->reject($reason); })->then(function () use(&$results) { \ksort($results); @@ -173,14 +157,12 @@ final class Utils * * @param int $count Total number of promises. * @param mixed $promises Promises or values. - * - * @return PromiseInterface */ - public static function some($count, $promises) + public static function some(int $count, $promises) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { $results = []; $rejections = []; - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Each::of($promises, function ($value, $idx, \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $p) use(&$results, $count) { + return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Each::of($promises, function ($value, $idx, \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $p) use(&$results, $count) : void { if (\WPMailSMTP\Vendor\GuzzleHttp\Promise\Is::settled($p)) { return; } @@ -188,7 +170,7 @@ final class Utils if (\count($results) >= $count) { $p->resolve(null); } - }, function ($reason) use(&$rejections) { + }, function ($reason) use(&$rejections) : void { $rejections[] = $reason; })->then(function () use(&$results, &$rejections, $count) { if (\count($results) !== $count) { @@ -203,10 +185,8 @@ final class Utils * fulfillment value is not an array of 1 but the value directly. * * @param mixed $promises Promises or values. - * - * @return PromiseInterface */ - public static function any($promises) + public static function any($promises) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { return self::some(1, $promises)->then(function ($values) { return $values[0]; @@ -221,15 +201,13 @@ final class Utils * @see inspect for the inspection state array format. * * @param mixed $promises Promises or values. - * - * @return PromiseInterface */ - public static function settle($promises) + public static function settle($promises) : \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface { $results = []; - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Each::of($promises, function ($value, $idx) use(&$results) { + return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Each::of($promises, function ($value, $idx) use(&$results) : void { $results[$idx] = ['state' => \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::FULFILLED, 'value' => $value]; - }, function ($reason, $idx) use(&$results) { + }, function ($reason, $idx) use(&$results) : void { $results[$idx] = ['state' => \WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface::REJECTED, 'reason' => $reason]; })->then(function () use(&$results) { \ksort($results); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/functions.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/functions.php deleted file mode 100644 index 03686e43..00000000 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/functions.php +++ /dev/null @@ -1,334 +0,0 @@ - - * while ($eventLoop->isRunning()) { - * GuzzleHttp\Promise\queue()->run(); - * } - * - * - * @param TaskQueueInterface $assign Optionally specify a new queue instance. - * - * @return TaskQueueInterface - * - * @deprecated queue will be removed in guzzlehttp/promises:2.0. Use Utils::queue instead. - */ -function queue(\WPMailSMTP\Vendor\GuzzleHttp\Promise\TaskQueueInterface $assign = null) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::queue($assign); -} -/** - * Adds a function to run in the task queue when it is next `run()` and returns - * a promise that is fulfilled or rejected with the result. - * - * @param callable $task Task function to run. - * - * @return PromiseInterface - * - * @deprecated task will be removed in guzzlehttp/promises:2.0. Use Utils::task instead. - */ -function task(callable $task) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::task($task); -} -/** - * Creates a promise for a value if the value is not a promise. - * - * @param mixed $value Promise or value. - * - * @return PromiseInterface - * - * @deprecated promise_for will be removed in guzzlehttp/promises:2.0. Use Create::promiseFor instead. - */ -function promise_for($value) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Create::promiseFor($value); -} -/** - * Creates a rejected promise for a reason if the reason is not a promise. If - * the provided reason is a promise, then it is returned as-is. - * - * @param mixed $reason Promise or reason. - * - * @return PromiseInterface - * - * @deprecated rejection_for will be removed in guzzlehttp/promises:2.0. Use Create::rejectionFor instead. - */ -function rejection_for($reason) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Create::rejectionFor($reason); -} -/** - * Create an exception for a rejected promise value. - * - * @param mixed $reason - * - * @return \Exception|\Throwable - * - * @deprecated exception_for will be removed in guzzlehttp/promises:2.0. Use Create::exceptionFor instead. - */ -function exception_for($reason) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Create::exceptionFor($reason); -} -/** - * Returns an iterator for the given value. - * - * @param mixed $value - * - * @return \Iterator - * - * @deprecated iter_for will be removed in guzzlehttp/promises:2.0. Use Create::iterFor instead. - */ -function iter_for($value) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Create::iterFor($value); -} -/** - * Synchronously waits on a promise to resolve and returns an inspection state - * array. - * - * Returns a state associative array containing a "state" key mapping to a - * valid promise state. If the state of the promise is "fulfilled", the array - * will contain a "value" key mapping to the fulfilled value of the promise. If - * the promise is rejected, the array will contain a "reason" key mapping to - * the rejection reason of the promise. - * - * @param PromiseInterface $promise Promise or value. - * - * @return array - * - * @deprecated inspect will be removed in guzzlehttp/promises:2.0. Use Utils::inspect instead. - */ -function inspect(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::inspect($promise); -} -/** - * Waits on all of the provided promises, but does not unwrap rejected promises - * as thrown exception. - * - * Returns an array of inspection state arrays. - * - * @see inspect for the inspection state array format. - * - * @param PromiseInterface[] $promises Traversable of promises to wait upon. - * - * @return array - * - * @deprecated inspect will be removed in guzzlehttp/promises:2.0. Use Utils::inspectAll instead. - */ -function inspect_all($promises) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::inspectAll($promises); -} -/** - * Waits on all of the provided promises and returns the fulfilled values. - * - * Returns an array that contains the value of each promise (in the same order - * the promises were provided). An exception is thrown if any of the promises - * are rejected. - * - * @param iterable $promises Iterable of PromiseInterface objects to wait on. - * - * @return array - * - * @throws \Exception on error - * @throws \Throwable on error in PHP >=7 - * - * @deprecated unwrap will be removed in guzzlehttp/promises:2.0. Use Utils::unwrap instead. - */ -function unwrap($promises) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::unwrap($promises); -} -/** - * Given an array of promises, return a promise that is fulfilled when all the - * items in the array are fulfilled. - * - * The promise's fulfillment value is an array with fulfillment values at - * respective positions to the original array. If any promise in the array - * rejects, the returned promise is rejected with the rejection reason. - * - * @param mixed $promises Promises or values. - * @param bool $recursive If true, resolves new promises that might have been added to the stack during its own resolution. - * - * @return PromiseInterface - * - * @deprecated all will be removed in guzzlehttp/promises:2.0. Use Utils::all instead. - */ -function all($promises, $recursive = \false) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::all($promises, $recursive); -} -/** - * Initiate a competitive race between multiple promises or values (values will - * become immediately fulfilled promises). - * - * When count amount of promises have been fulfilled, the returned promise is - * fulfilled with an array that contains the fulfillment values of the winners - * in order of resolution. - * - * This promise is rejected with a {@see AggregateException} if the number of - * fulfilled promises is less than the desired $count. - * - * @param int $count Total number of promises. - * @param mixed $promises Promises or values. - * - * @return PromiseInterface - * - * @deprecated some will be removed in guzzlehttp/promises:2.0. Use Utils::some instead. - */ -function some($count, $promises) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::some($count, $promises); -} -/** - * Like some(), with 1 as count. However, if the promise fulfills, the - * fulfillment value is not an array of 1 but the value directly. - * - * @param mixed $promises Promises or values. - * - * @return PromiseInterface - * - * @deprecated any will be removed in guzzlehttp/promises:2.0. Use Utils::any instead. - */ -function any($promises) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::any($promises); -} -/** - * Returns a promise that is fulfilled when all of the provided promises have - * been fulfilled or rejected. - * - * The returned promise is fulfilled with an array of inspection state arrays. - * - * @see inspect for the inspection state array format. - * - * @param mixed $promises Promises or values. - * - * @return PromiseInterface - * - * @deprecated settle will be removed in guzzlehttp/promises:2.0. Use Utils::settle instead. - */ -function settle($promises) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Utils::settle($promises); -} -/** - * Given an iterator that yields promises or values, returns a promise that is - * fulfilled with a null value when the iterator has been consumed or the - * aggregate promise has been fulfilled or rejected. - * - * $onFulfilled is a function that accepts the fulfilled value, iterator index, - * and the aggregate promise. The callback can invoke any necessary side - * effects and choose to resolve or reject the aggregate if needed. - * - * $onRejected is a function that accepts the rejection reason, iterator index, - * and the aggregate promise. The callback can invoke any necessary side - * effects and choose to resolve or reject the aggregate if needed. - * - * @param mixed $iterable Iterator or array to iterate over. - * @param callable $onFulfilled - * @param callable $onRejected - * - * @return PromiseInterface - * - * @deprecated each will be removed in guzzlehttp/promises:2.0. Use Each::of instead. - */ -function each($iterable, callable $onFulfilled = null, callable $onRejected = null) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Each::of($iterable, $onFulfilled, $onRejected); -} -/** - * Like each, but only allows a certain number of outstanding promises at any - * given time. - * - * $concurrency may be an integer or a function that accepts the number of - * pending promises and returns a numeric concurrency limit value to allow for - * dynamic a concurrency size. - * - * @param mixed $iterable - * @param int|callable $concurrency - * @param callable $onFulfilled - * @param callable $onRejected - * - * @return PromiseInterface - * - * @deprecated each_limit will be removed in guzzlehttp/promises:2.0. Use Each::ofLimit instead. - */ -function each_limit($iterable, $concurrency, callable $onFulfilled = null, callable $onRejected = null) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Each::ofLimit($iterable, $concurrency, $onFulfilled, $onRejected); -} -/** - * Like each_limit, but ensures that no promise in the given $iterable argument - * is rejected. If any promise is rejected, then the aggregate promise is - * rejected with the encountered rejection. - * - * @param mixed $iterable - * @param int|callable $concurrency - * @param callable $onFulfilled - * - * @return PromiseInterface - * - * @deprecated each_limit_all will be removed in guzzlehttp/promises:2.0. Use Each::ofLimitAll instead. - */ -function each_limit_all($iterable, $concurrency, callable $onFulfilled = null) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Each::ofLimitAll($iterable, $concurrency, $onFulfilled); -} -/** - * Returns true if a promise is fulfilled. - * - * @return bool - * - * @deprecated is_fulfilled will be removed in guzzlehttp/promises:2.0. Use Is::fulfilled instead. - */ -function is_fulfilled(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Is::fulfilled($promise); -} -/** - * Returns true if a promise is rejected. - * - * @return bool - * - * @deprecated is_rejected will be removed in guzzlehttp/promises:2.0. Use Is::rejected instead. - */ -function is_rejected(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Is::rejected($promise); -} -/** - * Returns true if a promise is fulfilled or rejected. - * - * @return bool - * - * @deprecated is_settled will be removed in guzzlehttp/promises:2.0. Use Is::settled instead. - */ -function is_settled(\WPMailSMTP\Vendor\GuzzleHttp\Promise\PromiseInterface $promise) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Is::settled($promise); -} -/** - * Create a new coroutine. - * - * @see Coroutine - * - * @return PromiseInterface - * - * @deprecated coroutine will be removed in guzzlehttp/promises:2.0. Use Coroutine::of instead. - */ -function coroutine(callable $generatorFn) -{ - return \WPMailSMTP\Vendor\GuzzleHttp\Promise\Coroutine::of($generatorFn); -} diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/functions_include.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/functions_include.php deleted file mode 100644 index 1e54915c..00000000 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/promises/src/functions_include.php +++ /dev/null @@ -1,8 +0,0 @@ -_fn_close)) { - \call_user_func($this->_fn_close); + ($this->_fn_close)(); } } /** @@ -77,7 +77,8 @@ final class FnStream implements \WPMailSMTP\Vendor\Psr\Http\Message\StreamInterf public function __toString() : string { try { - return \call_user_func($this->_fn___toString); + /** @var string */ + return ($this->_fn___toString)(); } catch (\Throwable $e) { if (\PHP_VERSION_ID >= 70400) { throw $e; @@ -88,61 +89,61 @@ final class FnStream implements \WPMailSMTP\Vendor\Psr\Http\Message\StreamInterf } public function close() : void { - \call_user_func($this->_fn_close); + ($this->_fn_close)(); } public function detach() { - return \call_user_func($this->_fn_detach); + return ($this->_fn_detach)(); } public function getSize() : ?int { - return \call_user_func($this->_fn_getSize); + return ($this->_fn_getSize)(); } public function tell() : int { - return \call_user_func($this->_fn_tell); + return ($this->_fn_tell)(); } public function eof() : bool { - return \call_user_func($this->_fn_eof); + return ($this->_fn_eof)(); } public function isSeekable() : bool { - return \call_user_func($this->_fn_isSeekable); + return ($this->_fn_isSeekable)(); } public function rewind() : void { - \call_user_func($this->_fn_rewind); + ($this->_fn_rewind)(); } public function seek($offset, $whence = \SEEK_SET) : void { - \call_user_func($this->_fn_seek, $offset, $whence); + ($this->_fn_seek)($offset, $whence); } public function isWritable() : bool { - return \call_user_func($this->_fn_isWritable); + return ($this->_fn_isWritable)(); } public function write($string) : int { - return \call_user_func($this->_fn_write, $string); + return ($this->_fn_write)($string); } public function isReadable() : bool { - return \call_user_func($this->_fn_isReadable); + return ($this->_fn_isReadable)(); } public function read($length) : string { - return \call_user_func($this->_fn_read, $length); + return ($this->_fn_read)($length); } public function getContents() : string { - return \call_user_func($this->_fn_getContents); + return ($this->_fn_getContents)(); } /** * @return mixed */ public function getMetadata($key = null) { - return \call_user_func($this->_fn_getMetadata, $key); + return ($this->_fn_getMetadata)($key); } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Header.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Header.php index 15ca32e6..a00f3fb7 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Header.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Header.php @@ -20,7 +20,7 @@ final class Header foreach ((array) $header as $value) { foreach (self::splitList($value) as $val) { $part = []; - foreach (\preg_split('/;(?=([^"]*"[^"]*")*[^"]*$)/', $val) as $kvp) { + foreach (\preg_split('/;(?=([^"]*"[^"]*")*[^"]*$)/', $val) ?: [] as $kvp) { if (\preg_match_all('/<[^>]+>|[^=]+/', $kvp, $matches)) { $m = $matches[0]; if (isset($m[1])) { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/InflateStream.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/InflateStream.php index ef6ae68e..010432ce 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/InflateStream.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/InflateStream.php @@ -11,9 +11,9 @@ use WPMailSMTP\Vendor\Psr\Http\Message\StreamInterface; * then appends the zlib.inflate filter. The stream is then converted back * to a Guzzle stream resource to be used as a Guzzle stream. * - * @see http://tools.ietf.org/html/rfc1950 - * @see http://tools.ietf.org/html/rfc1952 - * @see http://php.net/manual/en/filters.compression.php + * @see https://datatracker.ietf.org/doc/html/rfc1950 + * @see https://datatracker.ietf.org/doc/html/rfc1952 + * @see https://www.php.net/manual/en/filters.compression.php */ final class InflateStream implements \WPMailSMTP\Vendor\Psr\Http\Message\StreamInterface { @@ -24,7 +24,7 @@ final class InflateStream implements \WPMailSMTP\Vendor\Psr\Http\Message\StreamI { $resource = \WPMailSMTP\Vendor\GuzzleHttp\Psr7\StreamWrapper::getResource($stream); // Specify window=15+32, so zlib will use header detection to both gzip (with header) and zlib data - // See http://www.zlib.net/manual.html#Advanced definition of inflateInit2 + // See https://www.zlib.net/manual.html#Advanced definition of inflateInit2 // "Add 32 to windowBits to enable zlib and gzip decoding with automatic header detection" // Default window size is 15. \stream_filter_append($resource, 'zlib.inflate', \STREAM_FILTER_READ, ['window' => 15 + 32]); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Message.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Message.php index 54e73342..cc13dc10 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Message.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Message.php @@ -119,7 +119,7 @@ final class Message $count = \preg_match_all(\WPMailSMTP\Vendor\GuzzleHttp\Psr7\Rfc7230::HEADER_REGEX, $rawHeaders, $headerLines, \PREG_SET_ORDER); // If these aren't the same, then one line didn't match and there's an invalid header. if ($count !== \substr_count($rawHeaders, "\n")) { - // Folding is deprecated, see https://tools.ietf.org/html/rfc7230#section-3.2.4 + // Folding is deprecated, see https://datatracker.ietf.org/doc/html/rfc7230#section-3.2.4 if (\preg_match(\WPMailSMTP\Vendor\GuzzleHttp\Psr7\Rfc7230::HEADER_FOLD_REGEX, $rawHeaders)) { throw new \InvalidArgumentException('Invalid header syntax: Obsolete line folding'); } @@ -177,9 +177,9 @@ final class Message public static function parseResponse(string $message) : \WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface { $data = self::parseMessage($message); - // According to https://tools.ietf.org/html/rfc7230#section-3.1.2 the space - // between status-code and reason-phrase is required. But browsers accept - // responses without space and reason as well. + // According to https://datatracker.ietf.org/doc/html/rfc7230#section-3.1.2 + // the space between status-code and reason-phrase is required. But + // browsers accept responses without space and reason as well. if (!\preg_match('/^HTTP\\/.* [0-9]{3}( .*|$)/', $data['start-line'])) { throw new \InvalidArgumentException('Invalid response string: ' . $data['start-line']); } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/MessageTrait.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/MessageTrait.php index a55a0f7e..2c70b326 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/MessageTrait.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/MessageTrait.php @@ -108,7 +108,7 @@ trait MessageTrait return $new; } /** - * @param array $headers + * @param (string|string[])[] $headers */ private function setHeaders(array $headers) : void { @@ -155,7 +155,7 @@ trait MessageTrait * * @return string[] Trimmed header values * - * @see https://tools.ietf.org/html/rfc7230#section-3.2.4 + * @see https://datatracker.ietf.org/doc/html/rfc7230#section-3.2.4 */ private function trimAndValidateHeaderValues(array $values) : array { @@ -169,7 +169,7 @@ trait MessageTrait }, \array_values($values)); } /** - * @see https://tools.ietf.org/html/rfc7230#section-3.2 + * @see https://datatracker.ietf.org/doc/html/rfc7230#section-3.2 * * @param mixed $header */ @@ -183,7 +183,7 @@ trait MessageTrait } } /** - * @see https://tools.ietf.org/html/rfc7230#section-3.2 + * @see https://datatracker.ietf.org/doc/html/rfc7230#section-3.2 * * field-value = *( field-content / obs-fold ) * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ] diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/MultipartStream.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/MultipartStream.php index 2a857992..b37bf2ed 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/MultipartStream.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/MultipartStream.php @@ -43,7 +43,7 @@ final class MultipartStream implements \WPMailSMTP\Vendor\Psr\Http\Message\Strea /** * Get the headers needed before transferring the content of a POST file * - * @param array $headers + * @param string[] $headers */ private function getHeaders(array $headers) : string { @@ -88,32 +88,40 @@ final class MultipartStream implements \WPMailSMTP\Vendor\Psr\Http\Message\Strea $stream->addStream($body); $stream->addStream(\WPMailSMTP\Vendor\GuzzleHttp\Psr7\Utils::streamFor("\r\n")); } + /** + * @param string[] $headers + * + * @return array{0: StreamInterface, 1: string[]} + */ private function createElement(string $name, \WPMailSMTP\Vendor\Psr\Http\Message\StreamInterface $stream, ?string $filename, array $headers) : array { // Set a default content-disposition header if one was no provided - $disposition = $this->getHeader($headers, 'content-disposition'); + $disposition = self::getHeader($headers, 'content-disposition'); if (!$disposition) { $headers['Content-Disposition'] = $filename === '0' || $filename ? \sprintf('form-data; name="%s"; filename="%s"', $name, \basename($filename)) : "form-data; name=\"{$name}\""; } // Set a default content-length header if one was no provided - $length = $this->getHeader($headers, 'content-length'); + $length = self::getHeader($headers, 'content-length'); if (!$length) { if ($length = $stream->getSize()) { $headers['Content-Length'] = (string) $length; } } // Set a default Content-Type if one was not supplied - $type = $this->getHeader($headers, 'content-type'); + $type = self::getHeader($headers, 'content-type'); if (!$type && ($filename === '0' || $filename)) { $headers['Content-Type'] = \WPMailSMTP\Vendor\GuzzleHttp\Psr7\MimeType::fromFilename($filename) ?? 'application/octet-stream'; } return [$stream, $headers]; } - private function getHeader(array $headers, string $key) + /** + * @param string[] $headers + */ + private static function getHeader(array $headers, string $key) : ?string { $lowercaseHeader = \strtolower($key); foreach ($headers as $k => $v) { - if (\strtolower($k) === $lowercaseHeader) { + if (\strtolower((string) $k) === $lowercaseHeader) { return $v; } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/PumpStream.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/PumpStream.php index f8af2336..04d8deaf 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/PumpStream.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/PumpStream.php @@ -16,7 +16,7 @@ use WPMailSMTP\Vendor\Psr\Http\Message\StreamInterface; */ final class PumpStream implements \WPMailSMTP\Vendor\Psr\Http\Message\StreamInterface { - /** @var callable|null */ + /** @var callable(int): (string|false|null)|null */ private $source; /** @var int|null */ private $size; @@ -134,9 +134,9 @@ final class PumpStream implements \WPMailSMTP\Vendor\Psr\Http\Message\StreamInte } private function pump(int $length) : void { - if ($this->source) { + if ($this->source !== null) { do { - $data = \call_user_func($this->source, $length); + $data = ($this->source)($length); if ($data === \false || $data === null) { $this->source = null; return; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Request.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Request.php index 8aa2a131..87c35059 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Request.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Request.php @@ -22,7 +22,7 @@ class Request implements \WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface /** * @param string $method HTTP method * @param string|UriInterface $uri URI - * @param array $headers Request headers + * @param (string|string[])[] $headers Request headers * @param string|resource|StreamInterface|null $body Request body * @param string $version Protocol version */ @@ -109,7 +109,7 @@ class Request implements \WPMailSMTP\Vendor\Psr\Http\Message\RequestInterface $this->headerNames['host'] = 'Host'; } // Ensure Host is the first header. - // See: http://tools.ietf.org/html/rfc7230#section-5.4 + // See: https://datatracker.ietf.org/doc/html/rfc7230#section-5.4 $this->headers = [$header => [$host]] + $this->headers; } /** diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Response.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Response.php index f368aa99..b41ac4d5 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Response.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Response.php @@ -19,7 +19,7 @@ class Response implements \WPMailSMTP\Vendor\Psr\Http\Message\ResponseInterface private $statusCode; /** * @param int $status Status code - * @param array $headers Response headers + * @param (string|string[])[] $headers Response headers * @param string|resource|StreamInterface|null $body Response body * @param string $version Protocol version * @param string|null $reason Reason phrase (when empty a default will be used based on the status code) diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/ServerRequest.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/ServerRequest.php index 8e4e1e43..292e8e48 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/ServerRequest.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/ServerRequest.php @@ -51,7 +51,7 @@ class ServerRequest extends \WPMailSMTP\Vendor\GuzzleHttp\Psr7\Request implement /** * @param string $method HTTP method * @param string|UriInterface $uri URI - * @param array $headers Request headers + * @param (string|string[])[] $headers Request headers * @param string|resource|StreamInterface|null $body Request body * @param string $version Protocol version * @param array $serverParams Typically the $_SERVER superglobal diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Stream.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Stream.php index e872bc93..230495c5 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Stream.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Stream.php @@ -10,8 +10,8 @@ use WPMailSMTP\Vendor\Psr\Http\Message\StreamInterface; class Stream implements \WPMailSMTP\Vendor\Psr\Http\Message\StreamInterface { /** - * @see http://php.net/manual/function.fopen.php - * @see http://php.net/manual/en/function.gzopen.php + * @see https://www.php.net/manual/en/function.fopen.php + * @see https://www.php.net/manual/en/function.gzopen.php */ private const READABLE_MODES = '/r|a\\+|ab\\+|w\\+|wb\\+|x\\+|xb\\+|c\\+|cb\\+/'; private const WRITABLE_MODES = '/a|w|r\\+|rb\\+|rw|x|c/'; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/StreamDecoratorTrait.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/StreamDecoratorTrait.php index f8b56c08..04bf0853 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/StreamDecoratorTrait.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/StreamDecoratorTrait.php @@ -60,7 +60,7 @@ trait StreamDecoratorTrait { /** @var callable $callable */ $callable = [$this->stream, $method]; - $result = \call_user_func_array($callable, $args); + $result = $callable(...$args); // Always return the wrapped object if the result is a return $this return $result === $this->stream ? $this : $result; } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/StreamWrapper.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/StreamWrapper.php index 8de057e4..ca455f74 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/StreamWrapper.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/StreamWrapper.php @@ -97,7 +97,21 @@ final class StreamWrapper return $resource ?? \false; } /** - * @return array + * @return array{ + * dev: int, + * ino: int, + * mode: int, + * nlink: int, + * uid: int, + * gid: int, + * rdev: int, + * size: int, + * atime: int, + * mtime: int, + * ctime: int, + * blksize: int, + * blocks: int + * } */ public function stream_stat() : array { @@ -105,7 +119,21 @@ final class StreamWrapper return ['dev' => 0, 'ino' => 0, 'mode' => $modeMap[$this->mode], 'nlink' => 0, 'uid' => 0, 'gid' => 0, 'rdev' => 0, 'size' => $this->stream->getSize() ?: 0, 'atime' => 0, 'mtime' => 0, 'ctime' => 0, 'blksize' => 0, 'blocks' => 0]; } /** - * @return array + * @return array{ + * dev: int, + * ino: int, + * mode: int, + * nlink: int, + * uid: int, + * gid: int, + * rdev: int, + * size: int, + * atime: int, + * mtime: int, + * ctime: int, + * blksize: int, + * blocks: int + * } */ public function url_stat(string $path, int $flags) : array { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UploadedFile.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UploadedFile.php index 9df0566a..cb4dda93 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UploadedFile.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UploadedFile.php @@ -80,7 +80,7 @@ class UploadedFile implements \WPMailSMTP\Vendor\Psr\Http\Message\UploadedFileIn } $this->error = $error; } - private function isStringNotEmpty($param) : bool + private static function isStringNotEmpty($param) : bool { return \is_string($param) && \false === empty($param); } @@ -120,7 +120,7 @@ class UploadedFile implements \WPMailSMTP\Vendor\Psr\Http\Message\UploadedFileIn public function moveTo($targetPath) : void { $this->validateActive(); - if (\false === $this->isStringNotEmpty($targetPath)) { + if (\false === self::isStringNotEmpty($targetPath)) { throw new \InvalidArgumentException('Invalid path provided for move operation; must be a non-empty string'); } if ($this->file) { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Uri.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Uri.php index 6a15f7a1..3e03e06e 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Uri.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Uri.php @@ -25,13 +25,13 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri /** * Unreserved characters for use in a regex. * - * @see https://tools.ietf.org/html/rfc3986#section-2.3 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-2.3 */ private const CHAR_UNRESERVED = 'a-zA-Z0-9_\\-\\.~'; /** * Sub-delims for use in a regex. * - * @see https://tools.ietf.org/html/rfc3986#section-2.2 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-2.2 */ private const CHAR_SUB_DELIMS = '!\\$&\'\\(\\)\\*\\+,;='; private const QUERY_SEPARATORS_REPLACEMENT = ['=' => '%3D', '&' => '%26']; @@ -118,7 +118,7 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri * `file:///` is the more common syntax for the file scheme anyway (Chrome for example redirects to * that format). * - * @see https://tools.ietf.org/html/rfc3986#section-5.3 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-5.3 */ public static function composeComponents(?string $scheme, ?string $authority, string $path, ?string $query, ?string $fragment) : string { @@ -165,7 +165,7 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri * @see Uri::isNetworkPathReference * @see Uri::isAbsolutePathReference * @see Uri::isRelativePathReference - * @see https://tools.ietf.org/html/rfc3986#section-4 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-4 */ public static function isAbsolute(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri) : bool { @@ -176,7 +176,7 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri * * A relative reference that begins with two slash characters is termed an network-path reference. * - * @see https://tools.ietf.org/html/rfc3986#section-4.2 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-4.2 */ public static function isNetworkPathReference(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri) : bool { @@ -187,7 +187,7 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri * * A relative reference that begins with a single slash character is termed an absolute-path reference. * - * @see https://tools.ietf.org/html/rfc3986#section-4.2 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-4.2 */ public static function isAbsolutePathReference(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri) : bool { @@ -198,7 +198,7 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri * * A relative reference that does not begin with a slash character is termed a relative-path reference. * - * @see https://tools.ietf.org/html/rfc3986#section-4.2 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-4.2 */ public static function isRelativePathReference(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri) : bool { @@ -214,7 +214,7 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri * @param UriInterface $uri The URI to check * @param UriInterface|null $base An optional base URI to compare against * - * @see https://tools.ietf.org/html/rfc3986#section-4.4 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-4.4 */ public static function isSameDocumentReference(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri, \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $base = null) : bool { @@ -262,8 +262,8 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri * * It has the same behavior as withQueryValue() but for an associative array of key => value. * - * @param UriInterface $uri URI to use as a base. - * @param array $keyValueArray Associative array of key and values + * @param UriInterface $uri URI to use as a base. + * @param (string|null)[] $keyValueArray Associative array of key and values */ public static function withQueryValues(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri, array $keyValueArray) : \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface { @@ -276,7 +276,7 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri /** * Creates a URI from a hash of `parse_url` components. * - * @see http://php.net/manual/en/function.parse-url.php + * @see https://www.php.net/manual/en/function.parse-url.php * * @throws MalformedUriException If the components do not form a valid URI. */ @@ -489,7 +489,7 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri return $port; } /** - * @param string[] $keys + * @param (string|int)[] $keys * * @return string[] */ @@ -499,7 +499,9 @@ class Uri implements \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface, \JsonSeri if ($current === '') { return []; } - $decodedKeys = \array_map('rawurldecode', $keys); + $decodedKeys = \array_map(function ($k) : string { + return \rawurldecode((string) $k); + }, $keys); return \array_filter(\explode('&', $current), function ($part) use($decodedKeys) { return !\in_array(\rawurldecode(\explode('=', $part)[0]), $decodedKeys, \true); }); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UriNormalizer.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UriNormalizer.php index a9e73f6d..f2f00d4b 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UriNormalizer.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UriNormalizer.php @@ -9,7 +9,7 @@ use WPMailSMTP\Vendor\Psr\Http\Message\UriInterface; * * @author Tobias Schultze * - * @see https://tools.ietf.org/html/rfc3986#section-6 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-6 */ final class UriNormalizer { @@ -102,7 +102,7 @@ final class UriNormalizer * @param UriInterface $uri The URI to normalize * @param int $flags A bitmask of normalizations to apply, see constants * - * @see https://tools.ietf.org/html/rfc3986#section-6.2 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-6.2 */ public static function normalize(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri, int $flags = self::PRESERVING_NORMALIZATIONS) : \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface { @@ -146,7 +146,7 @@ final class UriNormalizer * @param UriInterface $uri2 An URI to compare * @param int $normalizations A bitmask of normalizations to apply, see constants * - * @see https://tools.ietf.org/html/rfc3986#section-6.1 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-6.1 */ public static function isEquivalent(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri1, \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri2, int $normalizations = self::PRESERVING_NORMALIZATIONS) : bool { @@ -155,7 +155,7 @@ final class UriNormalizer private static function capitalizePercentEncoding(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri) : \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface { $regex = '/(?:%[A-Fa-f0-9]{2})++/'; - $callback = function (array $match) { + $callback = function (array $match) : string { return \strtoupper($match[0]); }; return $uri->withPath(\preg_replace_callback($regex, $callback, $uri->getPath()))->withQuery(\preg_replace_callback($regex, $callback, $uri->getQuery())); @@ -163,7 +163,7 @@ final class UriNormalizer private static function decodeUnreservedCharacters(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $uri) : \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface { $regex = '/%(?:2D|2E|5F|7E|3[0-9]|[46][1-9A-F]|[57][0-9A])/i'; - $callback = function (array $match) { + $callback = function (array $match) : string { return \rawurldecode($match[0]); }; return $uri->withPath(\preg_replace_callback($regex, $callback, $uri->getPath()))->withQuery(\preg_replace_callback($regex, $callback, $uri->getQuery())); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UriResolver.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UriResolver.php index 411c1077..d11de33e 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UriResolver.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/UriResolver.php @@ -9,14 +9,14 @@ use WPMailSMTP\Vendor\Psr\Http\Message\UriInterface; * * @author Tobias Schultze * - * @see https://tools.ietf.org/html/rfc3986#section-5 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-5 */ final class UriResolver { /** * Removes dot segments from a path and returns the new path. * - * @see http://tools.ietf.org/html/rfc3986#section-5.2.4 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-5.2.4 */ public static function removeDotSegments(string $path) : string { @@ -46,7 +46,7 @@ final class UriResolver /** * Converts the relative URI into a new URI that is resolved against the base URI. * - * @see http://tools.ietf.org/html/rfc3986#section-5.2 + * @see https://datatracker.ietf.org/doc/html/rfc3986#section-5.2 */ public static function resolve(\WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $base, \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface $rel) : \WPMailSMTP\Vendor\Psr\Http\Message\UriInterface { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Utils.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Utils.php index b6985cb0..cb5c297e 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Utils.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/guzzlehttp/psr7/src/Utils.php @@ -12,16 +12,16 @@ final class Utils /** * Remove the items given by the keys, case insensitively from the data. * - * @param string[] $keys + * @param (string|int)[] $keys */ public static function caselessRemove(array $keys, array $data) : array { $result = []; foreach ($keys as &$key) { - $key = \strtolower($key); + $key = \strtolower((string) $key); } foreach ($data as $k => $v) { - if (!\is_string($k) || !\in_array(\strtolower($k), $keys)) { + if (!\in_array(\strtolower((string) $k), $keys)) { $result[$k] = $v; } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/LICENSE.txt b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/LICENSE.txt index 7cb6fd86..91acaca6 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/LICENSE.txt +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/LICENSE.txt @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2016 - 2018 Paragon Initiative Enterprises +Copyright (c) 2016 - 2022 Paragon Initiative Enterprises Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base32.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base32.php index b00ce5fe..4b16a7d6 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base32.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base32.php @@ -1,9 +1,13 @@ 96 && $src < 123) $ret += $src - 97 + 1; // -64 @@ -121,7 +127,7 @@ abstract class Base32 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod * @param int $src * @return int */ - protected static function decode5BitsUpper($src) + protected static function decode5BitsUpper(int $src) : int { $ret = -1; // if ($src > 64 && $src < 91) $ret += $src - 65 + 1; // -64 @@ -137,7 +143,7 @@ abstract class Base32 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod * @param int $src * @return string */ - protected static function encode5Bits($src) + protected static function encode5Bits(int $src) : string { $diff = 0x61; // if ($src > 25) $ret -= 72; @@ -153,13 +159,33 @@ abstract class Base32 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod * @param int $src * @return string */ - protected static function encode5BitsUpper($src) + protected static function encode5BitsUpper(int $src) : string { $diff = 0x41; // if ($src > 25) $ret -= 40; $diff -= 25 - $src >> 8 & 41; return \pack('C', $src + $diff); } + /** + * @param string $encodedString + * @param bool $upper + * @return string + */ + public static function decodeNoPadding(string $encodedString, bool $upper = \false) : string + { + $srcLen = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($encodedString); + if ($srcLen === 0) { + return ''; + } + if (($srcLen & 7) === 0) { + for ($j = 0; $j < 7 && $j < $srcLen; ++$j) { + if ($encodedString[$srcLen - $j - 1] === '=') { + throw new \InvalidArgumentException("decodeNoPadding() doesn't tolerate padding"); + } + } + } + return static::doDecode($encodedString, $upper, \true); + } /** * Base32 decoding * @@ -167,8 +193,11 @@ abstract class Base32 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod * @param bool $upper * @param bool $strictPadding * @return string + * + * @throws TypeError + * @psalm-suppress RedundantCondition */ - protected static function doDecode($src, $upper = \false, $strictPadding = \true) + protected static function doDecode(string $src, bool $upper = \false, bool $strictPadding = \false) : string { // We do this to reduce code duplication: $method = $upper ? 'decode5BitsUpper' : 'decode5Bits'; @@ -198,80 +227,129 @@ abstract class Base32 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod $dest = ''; // Main loop (no padding): for ($i = 0; $i + 8 <= $srcLen; $i += 8) { + /** @var array $chunk */ $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($src, $i, 8)); + /** @var int $c0 */ $c0 = static::$method($chunk[1]); + /** @var int $c1 */ $c1 = static::$method($chunk[2]); + /** @var int $c2 */ $c2 = static::$method($chunk[3]); + /** @var int $c3 */ $c3 = static::$method($chunk[4]); + /** @var int $c4 */ $c4 = static::$method($chunk[5]); + /** @var int $c5 */ $c5 = static::$method($chunk[6]); + /** @var int $c6 */ $c6 = static::$method($chunk[7]); + /** @var int $c7 */ $c7 = static::$method($chunk[8]); $dest .= \pack('CCCCC', ($c0 << 3 | $c1 >> 2) & 0xff, ($c1 << 6 | $c2 << 1 | $c3 >> 4) & 0xff, ($c3 << 4 | $c4 >> 1) & 0xff, ($c4 << 7 | $c5 << 2 | $c6 >> 3) & 0xff, ($c6 << 5 | $c7) & 0xff); $err |= ($c0 | $c1 | $c2 | $c3 | $c4 | $c5 | $c6 | $c7) >> 8; } // The last chunk, which may have padding: if ($i < $srcLen) { + /** @var array $chunk */ $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($src, $i, $srcLen - $i)); + /** @var int $c0 */ $c0 = static::$method($chunk[1]); if ($i + 6 < $srcLen) { + /** @var int $c1 */ $c1 = static::$method($chunk[2]); + /** @var int $c2 */ $c2 = static::$method($chunk[3]); + /** @var int $c3 */ $c3 = static::$method($chunk[4]); + /** @var int $c4 */ $c4 = static::$method($chunk[5]); + /** @var int $c5 */ $c5 = static::$method($chunk[6]); + /** @var int $c6 */ $c6 = static::$method($chunk[7]); $dest .= \pack('CCCC', ($c0 << 3 | $c1 >> 2) & 0xff, ($c1 << 6 | $c2 << 1 | $c3 >> 4) & 0xff, ($c3 << 4 | $c4 >> 1) & 0xff, ($c4 << 7 | $c5 << 2 | $c6 >> 3) & 0xff); $err |= ($c0 | $c1 | $c2 | $c3 | $c4 | $c5 | $c6) >> 8; + if ($strictPadding) { + $err |= $c6 << 5 & 0xff; + } } elseif ($i + 5 < $srcLen) { + /** @var int $c1 */ $c1 = static::$method($chunk[2]); + /** @var int $c2 */ $c2 = static::$method($chunk[3]); + /** @var int $c3 */ $c3 = static::$method($chunk[4]); + /** @var int $c4 */ $c4 = static::$method($chunk[5]); + /** @var int $c5 */ $c5 = static::$method($chunk[6]); $dest .= \pack('CCCC', ($c0 << 3 | $c1 >> 2) & 0xff, ($c1 << 6 | $c2 << 1 | $c3 >> 4) & 0xff, ($c3 << 4 | $c4 >> 1) & 0xff, ($c4 << 7 | $c5 << 2) & 0xff); $err |= ($c0 | $c1 | $c2 | $c3 | $c4 | $c5) >> 8; } elseif ($i + 4 < $srcLen) { + /** @var int $c1 */ $c1 = static::$method($chunk[2]); + /** @var int $c2 */ $c2 = static::$method($chunk[3]); + /** @var int $c3 */ $c3 = static::$method($chunk[4]); + /** @var int $c4 */ $c4 = static::$method($chunk[5]); $dest .= \pack('CCC', ($c0 << 3 | $c1 >> 2) & 0xff, ($c1 << 6 | $c2 << 1 | $c3 >> 4) & 0xff, ($c3 << 4 | $c4 >> 1) & 0xff); $err |= ($c0 | $c1 | $c2 | $c3 | $c4) >> 8; + if ($strictPadding) { + $err |= $c4 << 7 & 0xff; + } } elseif ($i + 3 < $srcLen) { + /** @var int $c1 */ $c1 = static::$method($chunk[2]); + /** @var int $c2 */ $c2 = static::$method($chunk[3]); + /** @var int $c3 */ $c3 = static::$method($chunk[4]); $dest .= \pack('CC', ($c0 << 3 | $c1 >> 2) & 0xff, ($c1 << 6 | $c2 << 1 | $c3 >> 4) & 0xff); $err |= ($c0 | $c1 | $c2 | $c3) >> 8; + if ($strictPadding) { + $err |= $c3 << 4 & 0xff; + } } elseif ($i + 2 < $srcLen) { + /** @var int $c1 */ $c1 = static::$method($chunk[2]); + /** @var int $c2 */ $c2 = static::$method($chunk[3]); $dest .= \pack('CC', ($c0 << 3 | $c1 >> 2) & 0xff, ($c1 << 6 | $c2 << 1) & 0xff); $err |= ($c0 | $c1 | $c2) >> 8; + if ($strictPadding) { + $err |= $c2 << 6 & 0xff; + } } elseif ($i + 1 < $srcLen) { + /** @var int $c1 */ $c1 = static::$method($chunk[2]); $dest .= \pack('C', ($c0 << 3 | $c1 >> 2) & 0xff); $err |= ($c0 | $c1) >> 8; + if ($strictPadding) { + $err |= $c1 << 6 & 0xff; + } } else { $dest .= \pack('C', $c0 << 3 & 0xff); $err |= $c0 >> 8; } } - if ($err !== 0) { + $check = $err === 0; + if (!$check) { throw new \RangeException('Base32::doDecode() only expects characters in the correct base32 alphabet'); } return $dest; } /** - * Base32 Decoding + * Base32 Encoding * * @param string $src * @param bool $upper * @param bool $pad * @return string + * @throws TypeError */ - protected static function doEncode($src, $upper = \false, $pad = \true) + protected static function doEncode(string $src, bool $upper = \false, $pad = \true) : string { // We do this to reduce code duplication: $method = $upper ? 'encode5BitsUpper' : 'encode5Bits'; @@ -279,6 +357,7 @@ abstract class Base32 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod $srcLen = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($src); // Main loop (no padding): for ($i = 0; $i + 5 <= $srcLen; $i += 5) { + /** @var array $chunk */ $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($src, $i, 5)); $b0 = $chunk[1]; $b1 = $chunk[2]; @@ -289,6 +368,7 @@ abstract class Base32 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod } // The last chunk, which may have padding: if ($i < $srcLen) { + /** @var array $chunk */ $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($src, $i, $srcLen - $i)); $b0 = $chunk[1]; if ($i + 3 < $srcLen) { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base32Hex.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base32Hex.php index 1a57bc32..a2dd8df1 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base32Hex.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base32Hex.php @@ -1,9 +1,10 @@ 0x30 && $src < 0x3a) ret += $src - 0x2e + 1; // -47 @@ -55,7 +56,7 @@ abstract class Base32Hex extends \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Base3 * @param int $src * @return int */ - protected static function decode5BitsUpper($src) + protected static function decode5BitsUpper(int $src) : int { $ret = -1; // if ($src > 0x30 && $src < 0x3a) ret += $src - 0x2e + 1; // -47 @@ -71,7 +72,7 @@ abstract class Base32Hex extends \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Base3 * @param int $src * @return string */ - protected static function encode5Bits($src) + protected static function encode5Bits(int $src) : string { $src += 0x30; // if ($src > 0x39) $src += 0x61 - 0x3a; // 39 @@ -87,7 +88,7 @@ abstract class Base32Hex extends \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Base3 * @param int $src * @return string */ - protected static function encode5BitsUpper($src) + protected static function encode5BitsUpper(int $src) : string { $src += 0x30; // if ($src > 0x39) $src += 0x41 - 0x3a; // 7 diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64.php index 3667a53f..f2ee3d2e 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64.php @@ -1,9 +1,13 @@ $chunk */ $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($src, $i, 3)); $b0 = $chunk[1]; $b1 = $chunk[2]; @@ -75,6 +86,7 @@ abstract class Base64 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod } // The last chunk, which may have padding: if ($i < $srcLen) { + /** @var array $chunk */ $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($src, $i, $srcLen - $i)); $b0 = $chunk[1]; if ($i + 1 < $srcLen) { @@ -97,23 +109,26 @@ abstract class Base64 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod * * Base64 character set "./[A-Z][a-z][0-9]" * - * @param string $encoded_string + * @param string $encodedString * @param bool $strictPadding * @return string - * @throws \RangeException + * + * @throws RangeException + * @throws TypeError + * @psalm-suppress RedundantCondition */ - public static function decode($encoded_string, $strictPadding = \false) + public static function decode(string $encodedString, bool $strictPadding = \false) : string { // Remove padding - $srcLen = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($encoded_string); + $srcLen = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($encodedString); if ($srcLen === 0) { return ''; } if ($strictPadding) { if (($srcLen & 3) === 0) { - if ($encoded_string[$srcLen - 1] === '=') { + if ($encodedString[$srcLen - 1] === '=') { $srcLen--; - if ($encoded_string[$srcLen - 1] === '=') { + if ($encodedString[$srcLen - 1] === '=') { $srcLen--; } } @@ -121,15 +136,19 @@ abstract class Base64 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod if (($srcLen & 3) === 1) { throw new \RangeException('Incorrect padding'); } + if ($encodedString[$srcLen - 1] === '=') { + throw new \RangeException('Incorrect padding'); + } } else { - $encoded_string = \rtrim($encoded_string, '='); - $srcLen = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($encoded_string); + $encodedString = \rtrim($encodedString, '='); + $srcLen = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($encodedString); } $err = 0; $dest = ''; // Main loop (no padding): for ($i = 0; $i + 4 <= $srcLen; $i += 4) { - $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($encoded_string, $i, 4)); + /** @var array $chunk */ + $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($encodedString, $i, 4)); $c0 = static::decode6Bits($chunk[1]); $c1 = static::decode6Bits($chunk[2]); $c2 = static::decode6Bits($chunk[3]); @@ -139,26 +158,56 @@ abstract class Base64 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod } // The last chunk, which may have padding: if ($i < $srcLen) { - $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($encoded_string, $i, $srcLen - $i)); + /** @var array $chunk */ + $chunk = \unpack('C*', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($encodedString, $i, $srcLen - $i)); $c0 = static::decode6Bits($chunk[1]); if ($i + 2 < $srcLen) { $c1 = static::decode6Bits($chunk[2]); $c2 = static::decode6Bits($chunk[3]); $dest .= \pack('CC', ($c0 << 2 | $c1 >> 4) & 0xff, ($c1 << 4 | $c2 >> 2) & 0xff); $err |= ($c0 | $c1 | $c2) >> 8; + if ($strictPadding) { + $err |= $c2 << 6 & 0xff; + } } elseif ($i + 1 < $srcLen) { $c1 = static::decode6Bits($chunk[2]); $dest .= \pack('C', ($c0 << 2 | $c1 >> 4) & 0xff); $err |= ($c0 | $c1) >> 8; - } elseif ($i < $srcLen && $strictPadding) { + if ($strictPadding) { + $err |= $c1 << 4 & 0xff; + } + } elseif ($strictPadding) { $err |= 1; } } - if ($err !== 0) { + $check = $err === 0; + if (!$check) { throw new \RangeException('Base64::decode() only expects characters in the correct base64 alphabet'); } return $dest; } + /** + * @param string $encodedString + * @return string + */ + public static function decodeNoPadding(string $encodedString) : string + { + $srcLen = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($encodedString); + if ($srcLen === 0) { + return ''; + } + if (($srcLen & 3) === 0) { + if ($encodedString[$srcLen - 1] === '=') { + throw new \InvalidArgumentException("decodeNoPadding() doesn't tolerate padding"); + } + if (($srcLen & 3) > 1) { + if ($encodedString[$srcLen - 2] === '=') { + throw new \InvalidArgumentException("decodeNoPadding() doesn't tolerate padding"); + } + } + } + return static::decode($encodedString, \true); + } /** * Uses bitwise operators instead of table-lookups to turn 6-bit integers * into 8-bit integers. @@ -170,7 +219,7 @@ abstract class Base64 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod * @param int $src * @return int */ - protected static function decode6Bits($src) + protected static function decode6Bits(int $src) : int { $ret = -1; // if ($src > 0x40 && $src < 0x5b) $ret += $src - 0x41 + 1; // -64 @@ -192,7 +241,7 @@ abstract class Base64 implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Encod * @param int $src * @return string */ - protected static function encode6Bits($src) + protected static function encode6Bits(int $src) : string { $diff = 0x41; // if ($src > 25) $diff += 0x61 - 0x41 - 26; // 6 diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64DotSlash.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64DotSlash.php index 31b78a7a..226816f4 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64DotSlash.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64DotSlash.php @@ -1,9 +1,10 @@ 0x2d && $src < 0x30) ret += $src - 0x2e + 1; // -45 @@ -63,7 +64,7 @@ abstract class Base64DotSlash extends \WPMailSMTP\Vendor\ParagonIE\ConstantTime\ * @param int $src * @return string */ - protected static function encode6Bits($src) + protected static function encode6Bits(int $src) : string { $src += 0x2e; // if ($src > 0x2f) $src += 0x41 - 0x30; // 17 diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64DotSlashOrdered.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64DotSlashOrdered.php index b9860333..f7ca6e83 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64DotSlashOrdered.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64DotSlashOrdered.php @@ -1,9 +1,10 @@ 0x2d && $src < 0x3a) ret += $src - 0x2e + 1; // -45 @@ -61,7 +62,7 @@ abstract class Base64DotSlashOrdered extends \WPMailSMTP\Vendor\ParagonIE\Consta * @param int $src * @return string */ - protected static function encode6Bits($src) + protected static function encode6Bits(int $src) : string { $src += 0x2e; // if ($src > 0x39) $src += 0x41 - 0x3a; // 7 diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64UrlSafe.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64UrlSafe.php index f21aa7ac..1d4d5831 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64UrlSafe.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Base64UrlSafe.php @@ -1,9 +1,10 @@ 0x40 && $src < 0x5b) $ret += $src - 0x41 + 1; // -64 @@ -65,7 +66,7 @@ abstract class Base64UrlSafe extends \WPMailSMTP\Vendor\ParagonIE\ConstantTime\B * @param int $src * @return string */ - protected static function encode6Bits($src) + protected static function encode6Bits(int $src) : string { $diff = 0x41; // if ($src > 25) $diff += 0x61 - 0x41 - 26; // 6 diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Binary.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Binary.php index 99b089d2..9d8eb126 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Binary.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/Binary.php @@ -1,9 +1,11 @@ = 0) { - $length = self::safeStrlen($str) - $start; - } else { - $length = -$start; - } - } - // $length calculation above might result in a 0-length string - if ($length === 0) { - return ''; - } - return \mb_substr($str, $start, $length, '8bit'); - } if ($length === 0) { return ''; } - // Unlike mb_substr(), substr() doesn't accept null for length - if (!\is_null($length)) { + if (\function_exists('mb_substr')) { + return \mb_substr($str, $start, $length, '8bit'); + } + // Unlike mb_substr(), substr() doesn't accept NULL for length + if ($length !== null) { return \substr($str, $start, $length); } else { return \substr($str, $start); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/EncoderInterface.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/EncoderInterface.php index 1a5e5c52..1345a877 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/EncoderInterface.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/EncoderInterface.php @@ -1,9 +1,10 @@ $chunk */ + $chunk = \unpack('C', $binString[$i]); $c = $chunk[1] & 0xf; $b = $chunk[1] >> 4; $hex .= \pack('CC', 87 + $b + ($b - 10 >> 8 & ~38), 87 + $c + ($c - 10 >> 8 & ~38)); @@ -53,15 +58,17 @@ abstract class Hex implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\EncoderI * Convert a binary string into a hexadecimal string without cache-timing * leaks, returning uppercase letters (as per RFC 4648) * - * @param string $bin_string (raw binary) + * @param string $binString (raw binary) * @return string + * @throws TypeError */ - public static function encodeUpper($bin_string) + public static function encodeUpper(string $binString) : string { $hex = ''; - $len = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($bin_string); + $len = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($binString); for ($i = 0; $i < $len; ++$i) { - $chunk = \unpack('C', \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeSubstr($bin_string, $i, 2)); + /** @var array $chunk */ + $chunk = \unpack('C', $binString[$i]); $c = $chunk[1] & 0xf; $b = $chunk[1] >> 4; $hex .= \pack('CC', 55 + $b + ($b - 10 >> 8 & ~6), 55 + $c + ($c - 10 >> 8 & ~6)); @@ -72,21 +79,28 @@ abstract class Hex implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\EncoderI * Convert a hexadecimal string into a binary string without cache-timing * leaks * - * @param string $encoded_string + * @param string $encodedString + * @param bool $strictPadding * @return string (raw binary) - * @throws \RangeException + * @throws RangeException */ - public static function decode($encoded_string) + public static function decode(string $encodedString, bool $strictPadding = \false) : string { $hex_pos = 0; $bin = ''; $c_acc = 0; - $hex_len = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($encoded_string); + $hex_len = \WPMailSMTP\Vendor\ParagonIE\ConstantTime\Binary::safeStrlen($encodedString); $state = 0; if (($hex_len & 1) !== 0) { - throw new \RangeException('Expected an even number of hexadecimal characters'); + if ($strictPadding) { + throw new \RangeException('Expected an even number of hexadecimal characters'); + } else { + $encodedString = '0' . $encodedString; + ++$hex_len; + } } - $chunk = \unpack('C*', $encoded_string); + /** @var array $chunk */ + $chunk = \unpack('C*', $encodedString); while ($hex_pos < $hex_len) { ++$hex_pos; $c = $chunk[$hex_pos]; @@ -95,7 +109,7 @@ abstract class Hex implements \WPMailSMTP\Vendor\ParagonIE\ConstantTime\EncoderI $c_alpha = ($c & ~32) - 55; $c_alpha0 = ($c_alpha - 10 ^ $c_alpha - 16) >> 8; if (($c_num0 | $c_alpha0) === 0) { - throw new \RangeException('hexEncode() only expects hexadecimal characters'); + throw new \RangeException('Expected hexadecimal character'); } $c_val = $c_num0 & $c_num | $c_alpha & $c_alpha0; if ($state === 0) { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/RFC4648.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/RFC4648.php index 6cd66d97..431fde31 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/RFC4648.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/paragonie/constant_time_encoding/src/RFC4648.php @@ -1,9 +1,11 @@ and Trevor Rowbotham * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - * - * Originally forked from - * https://github.com/true/php-punycode/blob/v2.1.1/src/Punycode.php + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. */ namespace WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn; +use WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\DisallowedRanges; +use WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex; /** - * Partial intl implementation in pure PHP. - * - * Implemented: - * - idn_to_ascii - Convert domain name to IDNA ASCII form - * - idn_to_utf8 - Convert domain name from IDNA ASCII to Unicode - * - * @author Renan Gonçalves - * @author Sebastian Kroczek - * @author Dmitry Lukashin - * @author Laurent Bassin + * @see https://www.unicode.org/reports/tr46/ * * @internal */ final class Idn { - const INTL_IDNA_VARIANT_2003 = 0; - const INTL_IDNA_VARIANT_UTS46 = 1; - private static $encodeTable = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'); - private static $decodeTable = array('a' => 0, 'b' => 1, 'c' => 2, 'd' => 3, 'e' => 4, 'f' => 5, 'g' => 6, 'h' => 7, 'i' => 8, 'j' => 9, 'k' => 10, 'l' => 11, 'm' => 12, 'n' => 13, 'o' => 14, 'p' => 15, 'q' => 16, 'r' => 17, 's' => 18, 't' => 19, 'u' => 20, 'v' => 21, 'w' => 22, 'x' => 23, 'y' => 24, 'z' => 25, '0' => 26, '1' => 27, '2' => 28, '3' => 29, '4' => 30, '5' => 31, '6' => 32, '7' => 33, '8' => 34, '9' => 35); - public static function idn_to_ascii($domain, $options, $variant, &$idna_info = array()) + public const ERROR_EMPTY_LABEL = 1; + public const ERROR_LABEL_TOO_LONG = 2; + public const ERROR_DOMAIN_NAME_TOO_LONG = 4; + public const ERROR_LEADING_HYPHEN = 8; + public const ERROR_TRAILING_HYPHEN = 0x10; + public const ERROR_HYPHEN_3_4 = 0x20; + public const ERROR_LEADING_COMBINING_MARK = 0x40; + public const ERROR_DISALLOWED = 0x80; + public const ERROR_PUNYCODE = 0x100; + public const ERROR_LABEL_HAS_DOT = 0x200; + public const ERROR_INVALID_ACE_LABEL = 0x400; + public const ERROR_BIDI = 0x800; + public const ERROR_CONTEXTJ = 0x1000; + public const ERROR_CONTEXTO_PUNCTUATION = 0x2000; + public const ERROR_CONTEXTO_DIGITS = 0x4000; + public const INTL_IDNA_VARIANT_2003 = 0; + public const INTL_IDNA_VARIANT_UTS46 = 1; + public const IDNA_DEFAULT = 0; + public const IDNA_ALLOW_UNASSIGNED = 1; + public const IDNA_USE_STD3_RULES = 2; + public const IDNA_CHECK_BIDI = 4; + public const IDNA_CHECK_CONTEXTJ = 8; + public const IDNA_NONTRANSITIONAL_TO_ASCII = 16; + public const IDNA_NONTRANSITIONAL_TO_UNICODE = 32; + public const MAX_DOMAIN_SIZE = 253; + public const MAX_LABEL_SIZE = 63; + public const BASE = 36; + public const TMIN = 1; + public const TMAX = 26; + public const SKEW = 38; + public const DAMP = 700; + public const INITIAL_BIAS = 72; + public const INITIAL_N = 128; + public const DELIMITER = '-'; + public const MAX_INT = 2147483647; + /** + * Contains the numeric value of a basic code point (for use in representing integers) in the + * range 0 to BASE-1, or -1 if b is does not represent a value. + * + * @var array + */ + private static $basicToDigit = [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, -1, -1, -1, -1, -1, -1, -1, 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, -1, -1, -1, -1, -1, -1, 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, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]; + /** + * @var array + */ + private static $virama; + /** + * @var array + */ + private static $mapped; + /** + * @var array + */ + private static $ignored; + /** + * @var array + */ + private static $deviation; + /** + * @var array + */ + private static $disallowed; + /** + * @var array + */ + private static $disallowed_STD3_mapped; + /** + * @var array + */ + private static $disallowed_STD3_valid; + /** + * @var bool + */ + private static $mappingTableLoaded = \false; + /** + * @see https://www.unicode.org/reports/tr46/#ToASCII + * + * @param string $domainName + * @param int $options + * @param int $variant + * @param array $idna_info + * + * @return string|false + */ + public static function idn_to_ascii($domainName, $options = self::IDNA_DEFAULT, $variant = self::INTL_IDNA_VARIANT_UTS46, &$idna_info = []) { if (\PHP_VERSION_ID >= 70200 && self::INTL_IDNA_VARIANT_2003 === $variant) { @\trigger_error('idn_to_ascii(): INTL_IDNA_VARIANT_2003 is deprecated', \E_USER_DEPRECATED); } - if (self::INTL_IDNA_VARIANT_UTS46 === $variant) { - $domain = \mb_strtolower($domain, 'utf-8'); - } - $parts = \explode('.', $domain); - foreach ($parts as $i => &$part) { - if ('' === $part && \count($parts) > 1 + $i) { - return \false; - } - if (\false === ($part = self::encodePart($part))) { - return \false; + $options = ['CheckHyphens' => \true, 'CheckBidi' => self::INTL_IDNA_VARIANT_2003 === $variant || 0 !== ($options & self::IDNA_CHECK_BIDI), 'CheckJoiners' => self::INTL_IDNA_VARIANT_UTS46 === $variant && 0 !== ($options & self::IDNA_CHECK_CONTEXTJ), 'UseSTD3ASCIIRules' => 0 !== ($options & self::IDNA_USE_STD3_RULES), 'Transitional_Processing' => self::INTL_IDNA_VARIANT_2003 === $variant || 0 === ($options & self::IDNA_NONTRANSITIONAL_TO_ASCII), 'VerifyDnsLength' => \true]; + $info = new \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Info(); + $labels = self::process((string) $domainName, $options, $info); + foreach ($labels as $i => $label) { + // Only convert labels to punycode that contain non-ASCII code points + if (1 === \preg_match('/[^\\x00-\\x7F]/', $label)) { + try { + $label = 'xn--' . self::punycodeEncode($label); + } catch (\Exception $e) { + $info->errors |= self::ERROR_PUNYCODE; + } + $labels[$i] = $label; } } - $output = \implode('.', $parts); - $idna_info = array('result' => \strlen($output) > 255 ? \false : $output, 'isTransitionalDifferent' => \false, 'errors' => 0); - return $idna_info['result']; + if ($options['VerifyDnsLength']) { + self::validateDomainAndLabelLength($labels, $info); + } + $idna_info = ['result' => \implode('.', $labels), 'isTransitionalDifferent' => $info->transitionalDifferent, 'errors' => $info->errors]; + return 0 === $info->errors ? $idna_info['result'] : \false; } - public static function idn_to_utf8($domain, $options, $variant, &$idna_info = array()) + /** + * @see https://www.unicode.org/reports/tr46/#ToUnicode + * + * @param string $domainName + * @param int $options + * @param int $variant + * @param array $idna_info + * + * @return string|false + */ + public static function idn_to_utf8($domainName, $options = self::IDNA_DEFAULT, $variant = self::INTL_IDNA_VARIANT_UTS46, &$idna_info = []) { if (\PHP_VERSION_ID >= 70200 && self::INTL_IDNA_VARIANT_2003 === $variant) { @\trigger_error('idn_to_utf8(): INTL_IDNA_VARIANT_2003 is deprecated', \E_USER_DEPRECATED); } - $parts = \explode('.', $domain); - foreach ($parts as &$part) { - $length = \strlen($part); - if ($length < 1 || 63 < $length) { - continue; - } - if (0 !== \strpos($part, 'xn--')) { - continue; - } - $part = \substr($part, 4); - $part = self::decodePart($part); - } - $output = \implode('.', $parts); - $idna_info = array('result' => \strlen($output) > 255 ? \false : $output, 'isTransitionalDifferent' => \false, 'errors' => 0); - return $idna_info['result']; + $info = new \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Info(); + $labels = self::process((string) $domainName, ['CheckHyphens' => \true, 'CheckBidi' => self::INTL_IDNA_VARIANT_2003 === $variant || 0 !== ($options & self::IDNA_CHECK_BIDI), 'CheckJoiners' => self::INTL_IDNA_VARIANT_UTS46 === $variant && 0 !== ($options & self::IDNA_CHECK_CONTEXTJ), 'UseSTD3ASCIIRules' => 0 !== ($options & self::IDNA_USE_STD3_RULES), 'Transitional_Processing' => self::INTL_IDNA_VARIANT_2003 === $variant || 0 === ($options & self::IDNA_NONTRANSITIONAL_TO_UNICODE)], $info); + $idna_info = ['result' => \implode('.', $labels), 'isTransitionalDifferent' => $info->transitionalDifferent, 'errors' => $info->errors]; + return 0 === $info->errors ? $idna_info['result'] : \false; } - private static function encodePart($input) + /** + * @param string $label + * + * @return bool + */ + private static function isValidContextJ(array $codePoints, $label) { - if (\substr($input, 0, 1) === '-' || \substr($input, -1) === '-') { + if (!isset(self::$virama)) { + self::$virama = (require __DIR__ . \DIRECTORY_SEPARATOR . 'Resources' . \DIRECTORY_SEPARATOR . 'unidata' . \DIRECTORY_SEPARATOR . 'virama.php'); + } + $offset = 0; + foreach ($codePoints as $i => $codePoint) { + if (0x200c !== $codePoint && 0x200d !== $codePoint) { + continue; + } + if (!isset($codePoints[$i - 1])) { + return \false; + } + // If Canonical_Combining_Class(Before(cp)) .eq. Virama Then True; + if (isset(self::$virama[$codePoints[$i - 1]])) { + continue; + } + // If RegExpMatch((Joining_Type:{L,D})(Joining_Type:T)*\u200C(Joining_Type:T)*(Joining_Type:{R,D})) Then + // True; + // Generated RegExp = ([Joining_Type:{L,D}][Joining_Type:T]*\u200C[Joining_Type:T]*)[Joining_Type:{R,D}] + if (0x200c === $codePoint && 1 === \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::ZWNJ, $label, $matches, \PREG_OFFSET_CAPTURE, $offset)) { + $offset += \strlen($matches[1][0]); + continue; + } return \false; } - $codePoints = self::listCodePoints($input); - $n = 128; - $bias = 72; - $delta = 0; - $h = $b = \count($codePoints['basic']); - $output = ''; - foreach ($codePoints['basic'] as $code) { - $output .= \mb_chr($code, 'utf-8'); + return \true; + } + /** + * @see https://www.unicode.org/reports/tr46/#ProcessingStepMap + * + * @param string $input + * @param array $options + * + * @return string + */ + private static function mapCodePoints($input, array $options, \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Info $info) + { + $str = ''; + $useSTD3ASCIIRules = $options['UseSTD3ASCIIRules']; + $transitional = $options['Transitional_Processing']; + foreach (self::utf8Decode($input) as $codePoint) { + $data = self::lookupCodePointStatus($codePoint, $useSTD3ASCIIRules); + switch ($data['status']) { + case 'disallowed': + $info->errors |= self::ERROR_DISALLOWED; + // no break. + case 'valid': + $str .= \mb_chr($codePoint, 'utf-8'); + break; + case 'ignored': + // Do nothing. + break; + case 'mapped': + $str .= $data['mapping']; + break; + case 'deviation': + $info->transitionalDifferent = \true; + $str .= $transitional ? $data['mapping'] : \mb_chr($codePoint, 'utf-8'); + break; + } } - if ($input === $output) { - return $output; + return $str; + } + /** + * @see https://www.unicode.org/reports/tr46/#Processing + * + * @param string $domain + * @param array $options + * + * @return array + */ + private static function process($domain, array $options, \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Info $info) + { + // If VerifyDnsLength is not set, we are doing ToUnicode otherwise we are doing ToASCII and + // we need to respect the VerifyDnsLength option. + $checkForEmptyLabels = !isset($options['VerifyDnsLength']) || $options['VerifyDnsLength']; + if ($checkForEmptyLabels && '' === $domain) { + $info->errors |= self::ERROR_EMPTY_LABEL; + return [$domain]; + } + // Step 1. Map each code point in the domain name string + $domain = self::mapCodePoints($domain, $options, $info); + // Step 2. Normalize the domain name string to Unicode Normalization Form C. + if (!\Normalizer::isNormalized($domain, \Normalizer::FORM_C)) { + $domain = \Normalizer::normalize($domain, \Normalizer::FORM_C); + } + // Step 3. Break the string into labels at U+002E (.) FULL STOP. + $labels = \explode('.', $domain); + $lastLabelIndex = \count($labels) - 1; + // Step 4. Convert and validate each label in the domain name string. + foreach ($labels as $i => $label) { + $validationOptions = $options; + if ('xn--' === \substr($label, 0, 4)) { + try { + $label = self::punycodeDecode(\substr($label, 4)); + } catch (\Exception $e) { + $info->errors |= self::ERROR_PUNYCODE; + continue; + } + $validationOptions['Transitional_Processing'] = \false; + $labels[$i] = $label; + } + self::validateLabel($label, $info, $validationOptions, $i > 0 && $i === $lastLabelIndex); + } + if ($info->bidiDomain && !$info->validBidiDomain) { + $info->errors |= self::ERROR_BIDI; + } + // Any input domain name string that does not record an error has been successfully + // processed according to this specification. Conversely, if an input domain_name string + // causes an error, then the processing of the input domain_name string fails. Determining + // what to do with error input is up to the caller, and not in the scope of this document. + return $labels; + } + /** + * @see https://tools.ietf.org/html/rfc5893#section-2 + * + * @param string $label + */ + private static function validateBidiLabel($label, \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Info $info) + { + if (1 === \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::RTL_LABEL, $label)) { + $info->bidiDomain = \true; + // Step 1. The first character must be a character with Bidi property L, R, or AL. + // If it has the R or AL property, it is an RTL label + if (1 !== \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::BIDI_STEP_1_RTL, $label)) { + $info->validBidiDomain = \false; + return; + } + // Step 2. In an RTL label, only characters with the Bidi properties R, AL, AN, EN, ES, + // CS, ET, ON, BN, or NSM are allowed. + if (1 === \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::BIDI_STEP_2, $label)) { + $info->validBidiDomain = \false; + return; + } + // Step 3. In an RTL label, the end of the label must be a character with Bidi property + // R, AL, EN, or AN, followed by zero or more characters with Bidi property NSM. + if (1 !== \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::BIDI_STEP_3, $label)) { + $info->validBidiDomain = \false; + return; + } + // Step 4. In an RTL label, if an EN is present, no AN may be present, and vice versa. + if (1 === \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::BIDI_STEP_4_AN, $label) && 1 === \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::BIDI_STEP_4_EN, $label)) { + $info->validBidiDomain = \false; + return; + } + return; + } + // We are a LTR label + // Step 1. The first character must be a character with Bidi property L, R, or AL. + // If it has the L property, it is an LTR label. + if (1 !== \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::BIDI_STEP_1_LTR, $label)) { + $info->validBidiDomain = \false; + return; + } + // Step 5. In an LTR label, only characters with the Bidi properties L, EN, + // ES, CS, ET, ON, BN, or NSM are allowed. + if (1 === \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::BIDI_STEP_5, $label)) { + $info->validBidiDomain = \false; + return; + } + // Step 6.In an LTR label, the end of the label must be a character with Bidi property L or + // EN, followed by zero or more characters with Bidi property NSM. + if (1 !== \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::BIDI_STEP_6, $label)) { + $info->validBidiDomain = \false; + return; + } + } + /** + * @param array $labels + */ + private static function validateDomainAndLabelLength(array $labels, \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Info $info) + { + $maxDomainSize = self::MAX_DOMAIN_SIZE; + $length = \count($labels); + // Number of "." delimiters. + $domainLength = $length - 1; + // If the last label is empty and it is not the first label, then it is the root label. + // Increase the max size by 1, making it 254, to account for the root label's "." + // delimiter. This also means we don't need to check the last label's length for being too + // long. + if ($length > 1 && '' === $labels[$length - 1]) { + ++$maxDomainSize; + --$length; + } + for ($i = 0; $i < $length; ++$i) { + $bytes = \strlen($labels[$i]); + $domainLength += $bytes; + if ($bytes > self::MAX_LABEL_SIZE) { + $info->errors |= self::ERROR_LABEL_TOO_LONG; + } + } + if ($domainLength > $maxDomainSize) { + $info->errors |= self::ERROR_DOMAIN_NAME_TOO_LONG; + } + } + /** + * @see https://www.unicode.org/reports/tr46/#Validity_Criteria + * + * @param string $label + * @param array $options + * @param bool $canBeEmpty + */ + private static function validateLabel($label, \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Info $info, array $options, $canBeEmpty) + { + if ('' === $label) { + if (!$canBeEmpty && (!isset($options['VerifyDnsLength']) || $options['VerifyDnsLength'])) { + $info->errors |= self::ERROR_EMPTY_LABEL; + } + return; + } + // Step 1. The label must be in Unicode Normalization Form C. + if (!\Normalizer::isNormalized($label, \Normalizer::FORM_C)) { + $info->errors |= self::ERROR_INVALID_ACE_LABEL; + } + $codePoints = self::utf8Decode($label); + if ($options['CheckHyphens']) { + // Step 2. If CheckHyphens, the label must not contain a U+002D HYPHEN-MINUS character + // in both the thrid and fourth positions. + if (isset($codePoints[2], $codePoints[3]) && 0x2d === $codePoints[2] && 0x2d === $codePoints[3]) { + $info->errors |= self::ERROR_HYPHEN_3_4; + } + // Step 3. If CheckHyphens, the label must neither begin nor end with a U+002D + // HYPHEN-MINUS character. + if ('-' === \substr($label, 0, 1)) { + $info->errors |= self::ERROR_LEADING_HYPHEN; + } + if ('-' === \substr($label, -1, 1)) { + $info->errors |= self::ERROR_TRAILING_HYPHEN; + } + } + // Step 4. The label must not contain a U+002E (.) FULL STOP. + if (\false !== \strpos($label, '.')) { + $info->errors |= self::ERROR_LABEL_HAS_DOT; + } + // Step 5. The label must not begin with a combining mark, that is: General_Category=Mark. + if (1 === \preg_match(\WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\Regex::COMBINING_MARK, $label)) { + $info->errors |= self::ERROR_LEADING_COMBINING_MARK; + } + // Step 6. Each code point in the label must only have certain status values according to + // Section 5, IDNA Mapping Table: + $transitional = $options['Transitional_Processing']; + $useSTD3ASCIIRules = $options['UseSTD3ASCIIRules']; + foreach ($codePoints as $codePoint) { + $data = self::lookupCodePointStatus($codePoint, $useSTD3ASCIIRules); + $status = $data['status']; + if ('valid' === $status || !$transitional && 'deviation' === $status) { + continue; + } + $info->errors |= self::ERROR_DISALLOWED; + break; + } + // Step 7. If CheckJoiners, the label must satisify the ContextJ rules from Appendix A, in + // The Unicode Code Points and Internationalized Domain Names for Applications (IDNA) + // [IDNA2008]. + if ($options['CheckJoiners'] && !self::isValidContextJ($codePoints, $label)) { + $info->errors |= self::ERROR_CONTEXTJ; + } + // Step 8. If CheckBidi, and if the domain name is a Bidi domain name, then the label must + // satisfy all six of the numbered conditions in [IDNA2008] RFC 5893, Section 2. + if ($options['CheckBidi'] && (!$info->bidiDomain || $info->validBidiDomain)) { + self::validateBidiLabel($label, $info); + } + } + /** + * @see https://tools.ietf.org/html/rfc3492#section-6.2 + * + * @param string $input + * + * @return string + */ + private static function punycodeDecode($input) + { + $n = self::INITIAL_N; + $out = 0; + $i = 0; + $bias = self::INITIAL_BIAS; + $lastDelimIndex = \strrpos($input, self::DELIMITER); + $b = \false === $lastDelimIndex ? 0 : $lastDelimIndex; + $inputLength = \strlen($input); + $output = []; + $bytes = \array_map('ord', \str_split($input)); + for ($j = 0; $j < $b; ++$j) { + if ($bytes[$j] > 0x7f) { + throw new \Exception('Invalid input'); + } + $output[$out++] = $input[$j]; } if ($b > 0) { - $output .= '-'; + ++$b; } - $codePoints['nonBasic'] = \array_unique($codePoints['nonBasic']); - \sort($codePoints['nonBasic']); - $i = 0; - $length = \mb_strlen($input, 'utf-8'); - while ($h < $length) { - $m = $codePoints['nonBasic'][$i++]; + for ($in = $b; $in < $inputLength; ++$out) { + $oldi = $i; + $w = 1; + for ($k = self::BASE;; $k += self::BASE) { + if ($in >= $inputLength) { + throw new \Exception('Invalid input'); + } + $digit = self::$basicToDigit[$bytes[$in++] & 0xff]; + if ($digit < 0) { + throw new \Exception('Invalid input'); + } + if ($digit > \intdiv(self::MAX_INT - $i, $w)) { + throw new \Exception('Integer overflow'); + } + $i += $digit * $w; + if ($k <= $bias) { + $t = self::TMIN; + } elseif ($k >= $bias + self::TMAX) { + $t = self::TMAX; + } else { + $t = $k - $bias; + } + if ($digit < $t) { + break; + } + $baseMinusT = self::BASE - $t; + if ($w > \intdiv(self::MAX_INT, $baseMinusT)) { + throw new \Exception('Integer overflow'); + } + $w *= $baseMinusT; + } + $outPlusOne = $out + 1; + $bias = self::adaptBias($i - $oldi, $outPlusOne, 0 === $oldi); + if (\intdiv($i, $outPlusOne) > self::MAX_INT - $n) { + throw new \Exception('Integer overflow'); + } + $n += \intdiv($i, $outPlusOne); + $i %= $outPlusOne; + \array_splice($output, $i++, 0, [\mb_chr($n, 'utf-8')]); + } + return \implode('', $output); + } + /** + * @see https://tools.ietf.org/html/rfc3492#section-6.3 + * + * @param string $input + * + * @return string + */ + private static function punycodeEncode($input) + { + $n = self::INITIAL_N; + $delta = 0; + $out = 0; + $bias = self::INITIAL_BIAS; + $inputLength = 0; + $output = ''; + $iter = self::utf8Decode($input); + foreach ($iter as $codePoint) { + ++$inputLength; + if ($codePoint < 0x80) { + $output .= \chr($codePoint); + ++$out; + } + } + $h = $out; + $b = $out; + if ($b > 0) { + $output .= self::DELIMITER; + ++$out; + } + while ($h < $inputLength) { + $m = self::MAX_INT; + foreach ($iter as $codePoint) { + if ($codePoint >= $n && $codePoint < $m) { + $m = $codePoint; + } + } + if ($m - $n > \intdiv(self::MAX_INT - $delta, $h + 1)) { + throw new \Exception('Integer overflow'); + } $delta += ($m - $n) * ($h + 1); $n = $m; - foreach ($codePoints['all'] as $c) { - if ($c < $n || $c < 128) { - ++$delta; + foreach ($iter as $codePoint) { + if ($codePoint < $n && 0 === ++$delta) { + throw new \Exception('Integer overflow'); } - if ($c === $n) { + if ($codePoint === $n) { $q = $delta; - for ($k = 36;; $k += 36) { - $t = self::calculateThreshold($k, $bias); + for ($k = self::BASE;; $k += self::BASE) { + if ($k <= $bias) { + $t = self::TMIN; + } elseif ($k >= $bias + self::TMAX) { + $t = self::TMAX; + } else { + $t = $k - $bias; + } if ($q < $t) { break; } - $code = $t + ($q - $t) % (36 - $t); - $output .= self::$encodeTable[$code]; - $q = ($q - $t) / (36 - $t); + $qMinusT = $q - $t; + $baseMinusT = self::BASE - $t; + $output .= self::encodeDigit($t + $qMinusT % $baseMinusT, \false); + ++$out; + $q = \intdiv($qMinusT, $baseMinusT); } - $output .= self::$encodeTable[$q]; - $bias = self::adapt($delta, $h + 1, $h === $b); + $output .= self::encodeDigit($q, \false); + ++$out; + $bias = self::adaptBias($delta, $h + 1, $h === $b); $delta = 0; ++$h; } @@ -140,77 +560,156 @@ final class Idn ++$delta; ++$n; } - $output = 'xn--' . $output; - return \strlen($output) < 1 || 63 < \strlen($output) ? \false : \strtolower($output); + return $output; } - private static function listCodePoints($input) + /** + * @see https://tools.ietf.org/html/rfc3492#section-6.1 + * + * @param int $delta + * @param int $numPoints + * @param bool $firstTime + * + * @return int + */ + private static function adaptBias($delta, $numPoints, $firstTime) { - $codePoints = array('all' => array(), 'basic' => array(), 'nonBasic' => array()); - $length = \mb_strlen($input, 'utf-8'); + // xxx >> 1 is a faster way of doing intdiv(xxx, 2) + $delta = $firstTime ? \intdiv($delta, self::DAMP) : $delta >> 1; + $delta += \intdiv($delta, $numPoints); + $k = 0; + while ($delta > (self::BASE - self::TMIN) * self::TMAX >> 1) { + $delta = \intdiv($delta, self::BASE - self::TMIN); + $k += self::BASE; + } + return $k + \intdiv((self::BASE - self::TMIN + 1) * $delta, $delta + self::SKEW); + } + /** + * @param int $d + * @param bool $flag + * + * @return string + */ + private static function encodeDigit($d, $flag) + { + return \chr($d + 22 + 75 * ($d < 26 ? 1 : 0) - (($flag ? 1 : 0) << 5)); + } + /** + * Takes a UTF-8 encoded string and converts it into a series of integer code points. Any + * invalid byte sequences will be replaced by a U+FFFD replacement code point. + * + * @see https://encoding.spec.whatwg.org/#utf-8-decoder + * + * @param string $input + * + * @return array + */ + private static function utf8Decode($input) + { + $bytesSeen = 0; + $bytesNeeded = 0; + $lowerBoundary = 0x80; + $upperBoundary = 0xbf; + $codePoint = 0; + $codePoints = []; + $length = \strlen($input); for ($i = 0; $i < $length; ++$i) { - $char = \mb_substr($input, $i, 1, 'utf-8'); - $code = \mb_ord($char, 'utf-8'); - if ($code < 128) { - $codePoints['all'][] = $codePoints['basic'][] = $code; - } else { - $codePoints['all'][] = $codePoints['nonBasic'][] = $code; + $byte = \ord($input[$i]); + if (0 === $bytesNeeded) { + if ($byte >= 0x0 && $byte <= 0x7f) { + $codePoints[] = $byte; + continue; + } + if ($byte >= 0xc2 && $byte <= 0xdf) { + $bytesNeeded = 1; + $codePoint = $byte & 0x1f; + } elseif ($byte >= 0xe0 && $byte <= 0xef) { + if (0xe0 === $byte) { + $lowerBoundary = 0xa0; + } elseif (0xed === $byte) { + $upperBoundary = 0x9f; + } + $bytesNeeded = 2; + $codePoint = $byte & 0xf; + } elseif ($byte >= 0xf0 && $byte <= 0xf4) { + if (0xf0 === $byte) { + $lowerBoundary = 0x90; + } elseif (0xf4 === $byte) { + $upperBoundary = 0x8f; + } + $bytesNeeded = 3; + $codePoint = $byte & 0x7; + } else { + $codePoints[] = 0xfffd; + } + continue; } + if ($byte < $lowerBoundary || $byte > $upperBoundary) { + $codePoint = 0; + $bytesNeeded = 0; + $bytesSeen = 0; + $lowerBoundary = 0x80; + $upperBoundary = 0xbf; + --$i; + $codePoints[] = 0xfffd; + continue; + } + $lowerBoundary = 0x80; + $upperBoundary = 0xbf; + $codePoint = $codePoint << 6 | $byte & 0x3f; + if (++$bytesSeen !== $bytesNeeded) { + continue; + } + $codePoints[] = $codePoint; + $codePoint = 0; + $bytesNeeded = 0; + $bytesSeen = 0; + } + // String unexpectedly ended, so append a U+FFFD code point. + if (0 !== $bytesNeeded) { + $codePoints[] = 0xfffd; } return $codePoints; } - private static function calculateThreshold($k, $bias) + /** + * @param int $codePoint + * @param bool $useSTD3ASCIIRules + * + * @return array{status: string, mapping?: string} + */ + private static function lookupCodePointStatus($codePoint, $useSTD3ASCIIRules) { - if ($k <= $bias + 1) { - return 1; + if (!self::$mappingTableLoaded) { + self::$mappingTableLoaded = \true; + self::$mapped = (require __DIR__ . '/Resources/unidata/mapped.php'); + self::$ignored = (require __DIR__ . '/Resources/unidata/ignored.php'); + self::$deviation = (require __DIR__ . '/Resources/unidata/deviation.php'); + self::$disallowed = (require __DIR__ . '/Resources/unidata/disallowed.php'); + self::$disallowed_STD3_mapped = (require __DIR__ . '/Resources/unidata/disallowed_STD3_mapped.php'); + self::$disallowed_STD3_valid = (require __DIR__ . '/Resources/unidata/disallowed_STD3_valid.php'); } - if ($k >= $bias + 26) { - return 26; + if (isset(self::$mapped[$codePoint])) { + return ['status' => 'mapped', 'mapping' => self::$mapped[$codePoint]]; } - return $k - $bias; - } - private static function adapt($delta, $numPoints, $firstTime) - { - $delta = (int) ($firstTime ? $delta / 700 : $delta / 2); - $delta += (int) ($delta / $numPoints); - $k = 0; - while ($delta > 35 * 13) { - $delta = (int) ($delta / 35); - $k = $k + 36; + if (isset(self::$ignored[$codePoint])) { + return ['status' => 'ignored']; } - return $k + (int) (36 * $delta / ($delta + 38)); - } - private static function decodePart($input) - { - $n = 128; - $i = 0; - $bias = 72; - $output = ''; - $pos = \strrpos($input, '-'); - if (\false !== $pos) { - $output = \substr($input, 0, $pos++); - } else { - $pos = 0; + if (isset(self::$deviation[$codePoint])) { + return ['status' => 'deviation', 'mapping' => self::$deviation[$codePoint]]; } - $outputLength = \strlen($output); - $inputLength = \strlen($input); - while ($pos < $inputLength) { - $oldi = $i; - $w = 1; - for ($k = 36;; $k += 36) { - $digit = self::$decodeTable[$input[$pos++]]; - $i += $digit * $w; - $t = self::calculateThreshold($k, $bias); - if ($digit < $t) { - break; - } - $w *= 36 - $t; + if (isset(self::$disallowed[$codePoint]) || \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata\DisallowedRanges::inRange($codePoint)) { + return ['status' => 'disallowed']; + } + $isDisallowedMapped = isset(self::$disallowed_STD3_mapped[$codePoint]); + if ($isDisallowedMapped || isset(self::$disallowed_STD3_valid[$codePoint])) { + $status = 'disallowed'; + if (!$useSTD3ASCIIRules) { + $status = $isDisallowedMapped ? 'mapped' : 'valid'; } - $bias = self::adapt($i - $oldi, ++$outputLength, 0 === $oldi); - $n = $n + (int) ($i / $outputLength); - $i = $i % $outputLength; - $output = \mb_substr($output, 0, $i, 'utf-8') . \mb_chr($n, 'utf-8') . \mb_substr($output, $i, $outputLength - 1, 'utf-8'); - ++$i; + if ($isDisallowedMapped) { + return ['status' => $status, 'mapping' => self::$disallowed_STD3_mapped[$codePoint]]; + } + return ['status' => $status]; } - return $output; + return ['status' => 'valid']; } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Info.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Info.php new file mode 100644 index 00000000..6a026206 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Info.php @@ -0,0 +1,22 @@ + and Trevor Rowbotham + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ +namespace WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn; + +/** + * @internal + */ +class Info +{ + public $bidiDomain = \false; + public $errors = 0; + public $validBidiDomain = \true; + public $transitionalDifferent = \false; +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/LICENSE b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/LICENSE index 3f853aaf..fd0a0626 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/LICENSE +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2018-2019 Fabien Potencier +Copyright (c) 2018-present Fabien Potencier and Trevor Rowbotham Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/DisallowedRanges.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/DisallowedRanges.php new file mode 100644 index 00000000..4becde22 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/DisallowedRanges.php @@ -0,0 +1,294 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ +namespace WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata; + +/** + * @internal + */ +final class DisallowedRanges +{ + /** + * @param int $codePoint + * + * @return bool + */ + public static function inRange($codePoint) + { + if ($codePoint >= 128 && $codePoint <= 159) { + return \true; + } + if ($codePoint >= 2155 && $codePoint <= 2207) { + return \true; + } + if ($codePoint >= 3676 && $codePoint <= 3712) { + return \true; + } + if ($codePoint >= 3808 && $codePoint <= 3839) { + return \true; + } + if ($codePoint >= 4059 && $codePoint <= 4095) { + return \true; + } + if ($codePoint >= 4256 && $codePoint <= 4293) { + return \true; + } + if ($codePoint >= 6849 && $codePoint <= 6911) { + return \true; + } + if ($codePoint >= 11859 && $codePoint <= 11903) { + return \true; + } + if ($codePoint >= 42955 && $codePoint <= 42996) { + return \true; + } + if ($codePoint >= 55296 && $codePoint <= 57343) { + return \true; + } + if ($codePoint >= 57344 && $codePoint <= 63743) { + return \true; + } + if ($codePoint >= 64218 && $codePoint <= 64255) { + return \true; + } + if ($codePoint >= 64976 && $codePoint <= 65007) { + return \true; + } + if ($codePoint >= 65630 && $codePoint <= 65663) { + return \true; + } + if ($codePoint >= 65953 && $codePoint <= 65999) { + return \true; + } + if ($codePoint >= 66046 && $codePoint <= 66175) { + return \true; + } + if ($codePoint >= 66518 && $codePoint <= 66559) { + return \true; + } + if ($codePoint >= 66928 && $codePoint <= 67071) { + return \true; + } + if ($codePoint >= 67432 && $codePoint <= 67583) { + return \true; + } + if ($codePoint >= 67760 && $codePoint <= 67807) { + return \true; + } + if ($codePoint >= 67904 && $codePoint <= 67967) { + return \true; + } + if ($codePoint >= 68256 && $codePoint <= 68287) { + return \true; + } + if ($codePoint >= 68528 && $codePoint <= 68607) { + return \true; + } + if ($codePoint >= 68681 && $codePoint <= 68735) { + return \true; + } + if ($codePoint >= 68922 && $codePoint <= 69215) { + return \true; + } + if ($codePoint >= 69298 && $codePoint <= 69375) { + return \true; + } + if ($codePoint >= 69466 && $codePoint <= 69551) { + return \true; + } + if ($codePoint >= 70207 && $codePoint <= 70271) { + return \true; + } + if ($codePoint >= 70517 && $codePoint <= 70655) { + return \true; + } + if ($codePoint >= 70874 && $codePoint <= 71039) { + return \true; + } + if ($codePoint >= 71134 && $codePoint <= 71167) { + return \true; + } + if ($codePoint >= 71370 && $codePoint <= 71423) { + return \true; + } + if ($codePoint >= 71488 && $codePoint <= 71679) { + return \true; + } + if ($codePoint >= 71740 && $codePoint <= 71839) { + return \true; + } + if ($codePoint >= 72026 && $codePoint <= 72095) { + return \true; + } + if ($codePoint >= 72441 && $codePoint <= 72703) { + return \true; + } + if ($codePoint >= 72887 && $codePoint <= 72959) { + return \true; + } + if ($codePoint >= 73130 && $codePoint <= 73439) { + return \true; + } + if ($codePoint >= 73465 && $codePoint <= 73647) { + return \true; + } + if ($codePoint >= 74650 && $codePoint <= 74751) { + return \true; + } + if ($codePoint >= 75076 && $codePoint <= 77823) { + return \true; + } + if ($codePoint >= 78905 && $codePoint <= 82943) { + return \true; + } + if ($codePoint >= 83527 && $codePoint <= 92159) { + return \true; + } + if ($codePoint >= 92784 && $codePoint <= 92879) { + return \true; + } + if ($codePoint >= 93072 && $codePoint <= 93759) { + return \true; + } + if ($codePoint >= 93851 && $codePoint <= 93951) { + return \true; + } + if ($codePoint >= 94112 && $codePoint <= 94175) { + return \true; + } + if ($codePoint >= 101590 && $codePoint <= 101631) { + return \true; + } + if ($codePoint >= 101641 && $codePoint <= 110591) { + return \true; + } + if ($codePoint >= 110879 && $codePoint <= 110927) { + return \true; + } + if ($codePoint >= 111356 && $codePoint <= 113663) { + return \true; + } + if ($codePoint >= 113828 && $codePoint <= 118783) { + return \true; + } + if ($codePoint >= 119366 && $codePoint <= 119519) { + return \true; + } + if ($codePoint >= 119673 && $codePoint <= 119807) { + return \true; + } + if ($codePoint >= 121520 && $codePoint <= 122879) { + return \true; + } + if ($codePoint >= 122923 && $codePoint <= 123135) { + return \true; + } + if ($codePoint >= 123216 && $codePoint <= 123583) { + return \true; + } + if ($codePoint >= 123648 && $codePoint <= 124927) { + return \true; + } + if ($codePoint >= 125143 && $codePoint <= 125183) { + return \true; + } + if ($codePoint >= 125280 && $codePoint <= 126064) { + return \true; + } + if ($codePoint >= 126133 && $codePoint <= 126208) { + return \true; + } + if ($codePoint >= 126270 && $codePoint <= 126463) { + return \true; + } + if ($codePoint >= 126652 && $codePoint <= 126703) { + return \true; + } + if ($codePoint >= 126706 && $codePoint <= 126975) { + return \true; + } + if ($codePoint >= 127406 && $codePoint <= 127461) { + return \true; + } + if ($codePoint >= 127590 && $codePoint <= 127743) { + return \true; + } + if ($codePoint >= 129202 && $codePoint <= 129279) { + return \true; + } + if ($codePoint >= 129751 && $codePoint <= 129791) { + return \true; + } + if ($codePoint >= 129995 && $codePoint <= 130031) { + return \true; + } + if ($codePoint >= 130042 && $codePoint <= 131069) { + return \true; + } + if ($codePoint >= 173790 && $codePoint <= 173823) { + return \true; + } + if ($codePoint >= 191457 && $codePoint <= 194559) { + return \true; + } + if ($codePoint >= 195102 && $codePoint <= 196605) { + return \true; + } + if ($codePoint >= 201547 && $codePoint <= 262141) { + return \true; + } + if ($codePoint >= 262144 && $codePoint <= 327677) { + return \true; + } + if ($codePoint >= 327680 && $codePoint <= 393213) { + return \true; + } + if ($codePoint >= 393216 && $codePoint <= 458749) { + return \true; + } + if ($codePoint >= 458752 && $codePoint <= 524285) { + return \true; + } + if ($codePoint >= 524288 && $codePoint <= 589821) { + return \true; + } + if ($codePoint >= 589824 && $codePoint <= 655357) { + return \true; + } + if ($codePoint >= 655360 && $codePoint <= 720893) { + return \true; + } + if ($codePoint >= 720896 && $codePoint <= 786429) { + return \true; + } + if ($codePoint >= 786432 && $codePoint <= 851965) { + return \true; + } + if ($codePoint >= 851968 && $codePoint <= 917501) { + return \true; + } + if ($codePoint >= 917536 && $codePoint <= 917631) { + return \true; + } + if ($codePoint >= 917632 && $codePoint <= 917759) { + return \true; + } + if ($codePoint >= 918000 && $codePoint <= 983037) { + return \true; + } + if ($codePoint >= 983040 && $codePoint <= 1048573) { + return \true; + } + if ($codePoint >= 1048576 && $codePoint <= 1114109) { + return \true; + } + return \false; + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/Regex.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/Regex.php new file mode 100644 index 00000000..2c6ecb7a --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/Regex.php @@ -0,0 +1,29 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ +namespace WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Resources\unidata; + +/** + * @internal + */ +final class Regex +{ + const COMBINING_MARK = '/^[\\x{0300}-\\x{036F}\\x{0483}-\\x{0487}\\x{0488}-\\x{0489}\\x{0591}-\\x{05BD}\\x{05BF}\\x{05C1}-\\x{05C2}\\x{05C4}-\\x{05C5}\\x{05C7}\\x{0610}-\\x{061A}\\x{064B}-\\x{065F}\\x{0670}\\x{06D6}-\\x{06DC}\\x{06DF}-\\x{06E4}\\x{06E7}-\\x{06E8}\\x{06EA}-\\x{06ED}\\x{0711}\\x{0730}-\\x{074A}\\x{07A6}-\\x{07B0}\\x{07EB}-\\x{07F3}\\x{07FD}\\x{0816}-\\x{0819}\\x{081B}-\\x{0823}\\x{0825}-\\x{0827}\\x{0829}-\\x{082D}\\x{0859}-\\x{085B}\\x{08D3}-\\x{08E1}\\x{08E3}-\\x{0902}\\x{0903}\\x{093A}\\x{093B}\\x{093C}\\x{093E}-\\x{0940}\\x{0941}-\\x{0948}\\x{0949}-\\x{094C}\\x{094D}\\x{094E}-\\x{094F}\\x{0951}-\\x{0957}\\x{0962}-\\x{0963}\\x{0981}\\x{0982}-\\x{0983}\\x{09BC}\\x{09BE}-\\x{09C0}\\x{09C1}-\\x{09C4}\\x{09C7}-\\x{09C8}\\x{09CB}-\\x{09CC}\\x{09CD}\\x{09D7}\\x{09E2}-\\x{09E3}\\x{09FE}\\x{0A01}-\\x{0A02}\\x{0A03}\\x{0A3C}\\x{0A3E}-\\x{0A40}\\x{0A41}-\\x{0A42}\\x{0A47}-\\x{0A48}\\x{0A4B}-\\x{0A4D}\\x{0A51}\\x{0A70}-\\x{0A71}\\x{0A75}\\x{0A81}-\\x{0A82}\\x{0A83}\\x{0ABC}\\x{0ABE}-\\x{0AC0}\\x{0AC1}-\\x{0AC5}\\x{0AC7}-\\x{0AC8}\\x{0AC9}\\x{0ACB}-\\x{0ACC}\\x{0ACD}\\x{0AE2}-\\x{0AE3}\\x{0AFA}-\\x{0AFF}\\x{0B01}\\x{0B02}-\\x{0B03}\\x{0B3C}\\x{0B3E}\\x{0B3F}\\x{0B40}\\x{0B41}-\\x{0B44}\\x{0B47}-\\x{0B48}\\x{0B4B}-\\x{0B4C}\\x{0B4D}\\x{0B55}-\\x{0B56}\\x{0B57}\\x{0B62}-\\x{0B63}\\x{0B82}\\x{0BBE}-\\x{0BBF}\\x{0BC0}\\x{0BC1}-\\x{0BC2}\\x{0BC6}-\\x{0BC8}\\x{0BCA}-\\x{0BCC}\\x{0BCD}\\x{0BD7}\\x{0C00}\\x{0C01}-\\x{0C03}\\x{0C04}\\x{0C3E}-\\x{0C40}\\x{0C41}-\\x{0C44}\\x{0C46}-\\x{0C48}\\x{0C4A}-\\x{0C4D}\\x{0C55}-\\x{0C56}\\x{0C62}-\\x{0C63}\\x{0C81}\\x{0C82}-\\x{0C83}\\x{0CBC}\\x{0CBE}\\x{0CBF}\\x{0CC0}-\\x{0CC4}\\x{0CC6}\\x{0CC7}-\\x{0CC8}\\x{0CCA}-\\x{0CCB}\\x{0CCC}-\\x{0CCD}\\x{0CD5}-\\x{0CD6}\\x{0CE2}-\\x{0CE3}\\x{0D00}-\\x{0D01}\\x{0D02}-\\x{0D03}\\x{0D3B}-\\x{0D3C}\\x{0D3E}-\\x{0D40}\\x{0D41}-\\x{0D44}\\x{0D46}-\\x{0D48}\\x{0D4A}-\\x{0D4C}\\x{0D4D}\\x{0D57}\\x{0D62}-\\x{0D63}\\x{0D81}\\x{0D82}-\\x{0D83}\\x{0DCA}\\x{0DCF}-\\x{0DD1}\\x{0DD2}-\\x{0DD4}\\x{0DD6}\\x{0DD8}-\\x{0DDF}\\x{0DF2}-\\x{0DF3}\\x{0E31}\\x{0E34}-\\x{0E3A}\\x{0E47}-\\x{0E4E}\\x{0EB1}\\x{0EB4}-\\x{0EBC}\\x{0EC8}-\\x{0ECD}\\x{0F18}-\\x{0F19}\\x{0F35}\\x{0F37}\\x{0F39}\\x{0F3E}-\\x{0F3F}\\x{0F71}-\\x{0F7E}\\x{0F7F}\\x{0F80}-\\x{0F84}\\x{0F86}-\\x{0F87}\\x{0F8D}-\\x{0F97}\\x{0F99}-\\x{0FBC}\\x{0FC6}\\x{102B}-\\x{102C}\\x{102D}-\\x{1030}\\x{1031}\\x{1032}-\\x{1037}\\x{1038}\\x{1039}-\\x{103A}\\x{103B}-\\x{103C}\\x{103D}-\\x{103E}\\x{1056}-\\x{1057}\\x{1058}-\\x{1059}\\x{105E}-\\x{1060}\\x{1062}-\\x{1064}\\x{1067}-\\x{106D}\\x{1071}-\\x{1074}\\x{1082}\\x{1083}-\\x{1084}\\x{1085}-\\x{1086}\\x{1087}-\\x{108C}\\x{108D}\\x{108F}\\x{109A}-\\x{109C}\\x{109D}\\x{135D}-\\x{135F}\\x{1712}-\\x{1714}\\x{1732}-\\x{1734}\\x{1752}-\\x{1753}\\x{1772}-\\x{1773}\\x{17B4}-\\x{17B5}\\x{17B6}\\x{17B7}-\\x{17BD}\\x{17BE}-\\x{17C5}\\x{17C6}\\x{17C7}-\\x{17C8}\\x{17C9}-\\x{17D3}\\x{17DD}\\x{180B}-\\x{180D}\\x{1885}-\\x{1886}\\x{18A9}\\x{1920}-\\x{1922}\\x{1923}-\\x{1926}\\x{1927}-\\x{1928}\\x{1929}-\\x{192B}\\x{1930}-\\x{1931}\\x{1932}\\x{1933}-\\x{1938}\\x{1939}-\\x{193B}\\x{1A17}-\\x{1A18}\\x{1A19}-\\x{1A1A}\\x{1A1B}\\x{1A55}\\x{1A56}\\x{1A57}\\x{1A58}-\\x{1A5E}\\x{1A60}\\x{1A61}\\x{1A62}\\x{1A63}-\\x{1A64}\\x{1A65}-\\x{1A6C}\\x{1A6D}-\\x{1A72}\\x{1A73}-\\x{1A7C}\\x{1A7F}\\x{1AB0}-\\x{1ABD}\\x{1ABE}\\x{1ABF}-\\x{1AC0}\\x{1B00}-\\x{1B03}\\x{1B04}\\x{1B34}\\x{1B35}\\x{1B36}-\\x{1B3A}\\x{1B3B}\\x{1B3C}\\x{1B3D}-\\x{1B41}\\x{1B42}\\x{1B43}-\\x{1B44}\\x{1B6B}-\\x{1B73}\\x{1B80}-\\x{1B81}\\x{1B82}\\x{1BA1}\\x{1BA2}-\\x{1BA5}\\x{1BA6}-\\x{1BA7}\\x{1BA8}-\\x{1BA9}\\x{1BAA}\\x{1BAB}-\\x{1BAD}\\x{1BE6}\\x{1BE7}\\x{1BE8}-\\x{1BE9}\\x{1BEA}-\\x{1BEC}\\x{1BED}\\x{1BEE}\\x{1BEF}-\\x{1BF1}\\x{1BF2}-\\x{1BF3}\\x{1C24}-\\x{1C2B}\\x{1C2C}-\\x{1C33}\\x{1C34}-\\x{1C35}\\x{1C36}-\\x{1C37}\\x{1CD0}-\\x{1CD2}\\x{1CD4}-\\x{1CE0}\\x{1CE1}\\x{1CE2}-\\x{1CE8}\\x{1CED}\\x{1CF4}\\x{1CF7}\\x{1CF8}-\\x{1CF9}\\x{1DC0}-\\x{1DF9}\\x{1DFB}-\\x{1DFF}\\x{20D0}-\\x{20DC}\\x{20DD}-\\x{20E0}\\x{20E1}\\x{20E2}-\\x{20E4}\\x{20E5}-\\x{20F0}\\x{2CEF}-\\x{2CF1}\\x{2D7F}\\x{2DE0}-\\x{2DFF}\\x{302A}-\\x{302D}\\x{302E}-\\x{302F}\\x{3099}-\\x{309A}\\x{A66F}\\x{A670}-\\x{A672}\\x{A674}-\\x{A67D}\\x{A69E}-\\x{A69F}\\x{A6F0}-\\x{A6F1}\\x{A802}\\x{A806}\\x{A80B}\\x{A823}-\\x{A824}\\x{A825}-\\x{A826}\\x{A827}\\x{A82C}\\x{A880}-\\x{A881}\\x{A8B4}-\\x{A8C3}\\x{A8C4}-\\x{A8C5}\\x{A8E0}-\\x{A8F1}\\x{A8FF}\\x{A926}-\\x{A92D}\\x{A947}-\\x{A951}\\x{A952}-\\x{A953}\\x{A980}-\\x{A982}\\x{A983}\\x{A9B3}\\x{A9B4}-\\x{A9B5}\\x{A9B6}-\\x{A9B9}\\x{A9BA}-\\x{A9BB}\\x{A9BC}-\\x{A9BD}\\x{A9BE}-\\x{A9C0}\\x{A9E5}\\x{AA29}-\\x{AA2E}\\x{AA2F}-\\x{AA30}\\x{AA31}-\\x{AA32}\\x{AA33}-\\x{AA34}\\x{AA35}-\\x{AA36}\\x{AA43}\\x{AA4C}\\x{AA4D}\\x{AA7B}\\x{AA7C}\\x{AA7D}\\x{AAB0}\\x{AAB2}-\\x{AAB4}\\x{AAB7}-\\x{AAB8}\\x{AABE}-\\x{AABF}\\x{AAC1}\\x{AAEB}\\x{AAEC}-\\x{AAED}\\x{AAEE}-\\x{AAEF}\\x{AAF5}\\x{AAF6}\\x{ABE3}-\\x{ABE4}\\x{ABE5}\\x{ABE6}-\\x{ABE7}\\x{ABE8}\\x{ABE9}-\\x{ABEA}\\x{ABEC}\\x{ABED}\\x{FB1E}\\x{FE00}-\\x{FE0F}\\x{FE20}-\\x{FE2F}\\x{101FD}\\x{102E0}\\x{10376}-\\x{1037A}\\x{10A01}-\\x{10A03}\\x{10A05}-\\x{10A06}\\x{10A0C}-\\x{10A0F}\\x{10A38}-\\x{10A3A}\\x{10A3F}\\x{10AE5}-\\x{10AE6}\\x{10D24}-\\x{10D27}\\x{10EAB}-\\x{10EAC}\\x{10F46}-\\x{10F50}\\x{11000}\\x{11001}\\x{11002}\\x{11038}-\\x{11046}\\x{1107F}-\\x{11081}\\x{11082}\\x{110B0}-\\x{110B2}\\x{110B3}-\\x{110B6}\\x{110B7}-\\x{110B8}\\x{110B9}-\\x{110BA}\\x{11100}-\\x{11102}\\x{11127}-\\x{1112B}\\x{1112C}\\x{1112D}-\\x{11134}\\x{11145}-\\x{11146}\\x{11173}\\x{11180}-\\x{11181}\\x{11182}\\x{111B3}-\\x{111B5}\\x{111B6}-\\x{111BE}\\x{111BF}-\\x{111C0}\\x{111C9}-\\x{111CC}\\x{111CE}\\x{111CF}\\x{1122C}-\\x{1122E}\\x{1122F}-\\x{11231}\\x{11232}-\\x{11233}\\x{11234}\\x{11235}\\x{11236}-\\x{11237}\\x{1123E}\\x{112DF}\\x{112E0}-\\x{112E2}\\x{112E3}-\\x{112EA}\\x{11300}-\\x{11301}\\x{11302}-\\x{11303}\\x{1133B}-\\x{1133C}\\x{1133E}-\\x{1133F}\\x{11340}\\x{11341}-\\x{11344}\\x{11347}-\\x{11348}\\x{1134B}-\\x{1134D}\\x{11357}\\x{11362}-\\x{11363}\\x{11366}-\\x{1136C}\\x{11370}-\\x{11374}\\x{11435}-\\x{11437}\\x{11438}-\\x{1143F}\\x{11440}-\\x{11441}\\x{11442}-\\x{11444}\\x{11445}\\x{11446}\\x{1145E}\\x{114B0}-\\x{114B2}\\x{114B3}-\\x{114B8}\\x{114B9}\\x{114BA}\\x{114BB}-\\x{114BE}\\x{114BF}-\\x{114C0}\\x{114C1}\\x{114C2}-\\x{114C3}\\x{115AF}-\\x{115B1}\\x{115B2}-\\x{115B5}\\x{115B8}-\\x{115BB}\\x{115BC}-\\x{115BD}\\x{115BE}\\x{115BF}-\\x{115C0}\\x{115DC}-\\x{115DD}\\x{11630}-\\x{11632}\\x{11633}-\\x{1163A}\\x{1163B}-\\x{1163C}\\x{1163D}\\x{1163E}\\x{1163F}-\\x{11640}\\x{116AB}\\x{116AC}\\x{116AD}\\x{116AE}-\\x{116AF}\\x{116B0}-\\x{116B5}\\x{116B6}\\x{116B7}\\x{1171D}-\\x{1171F}\\x{11720}-\\x{11721}\\x{11722}-\\x{11725}\\x{11726}\\x{11727}-\\x{1172B}\\x{1182C}-\\x{1182E}\\x{1182F}-\\x{11837}\\x{11838}\\x{11839}-\\x{1183A}\\x{11930}-\\x{11935}\\x{11937}-\\x{11938}\\x{1193B}-\\x{1193C}\\x{1193D}\\x{1193E}\\x{11940}\\x{11942}\\x{11943}\\x{119D1}-\\x{119D3}\\x{119D4}-\\x{119D7}\\x{119DA}-\\x{119DB}\\x{119DC}-\\x{119DF}\\x{119E0}\\x{119E4}\\x{11A01}-\\x{11A0A}\\x{11A33}-\\x{11A38}\\x{11A39}\\x{11A3B}-\\x{11A3E}\\x{11A47}\\x{11A51}-\\x{11A56}\\x{11A57}-\\x{11A58}\\x{11A59}-\\x{11A5B}\\x{11A8A}-\\x{11A96}\\x{11A97}\\x{11A98}-\\x{11A99}\\x{11C2F}\\x{11C30}-\\x{11C36}\\x{11C38}-\\x{11C3D}\\x{11C3E}\\x{11C3F}\\x{11C92}-\\x{11CA7}\\x{11CA9}\\x{11CAA}-\\x{11CB0}\\x{11CB1}\\x{11CB2}-\\x{11CB3}\\x{11CB4}\\x{11CB5}-\\x{11CB6}\\x{11D31}-\\x{11D36}\\x{11D3A}\\x{11D3C}-\\x{11D3D}\\x{11D3F}-\\x{11D45}\\x{11D47}\\x{11D8A}-\\x{11D8E}\\x{11D90}-\\x{11D91}\\x{11D93}-\\x{11D94}\\x{11D95}\\x{11D96}\\x{11D97}\\x{11EF3}-\\x{11EF4}\\x{11EF5}-\\x{11EF6}\\x{16AF0}-\\x{16AF4}\\x{16B30}-\\x{16B36}\\x{16F4F}\\x{16F51}-\\x{16F87}\\x{16F8F}-\\x{16F92}\\x{16FE4}\\x{16FF0}-\\x{16FF1}\\x{1BC9D}-\\x{1BC9E}\\x{1D165}-\\x{1D166}\\x{1D167}-\\x{1D169}\\x{1D16D}-\\x{1D172}\\x{1D17B}-\\x{1D182}\\x{1D185}-\\x{1D18B}\\x{1D1AA}-\\x{1D1AD}\\x{1D242}-\\x{1D244}\\x{1DA00}-\\x{1DA36}\\x{1DA3B}-\\x{1DA6C}\\x{1DA75}\\x{1DA84}\\x{1DA9B}-\\x{1DA9F}\\x{1DAA1}-\\x{1DAAF}\\x{1E000}-\\x{1E006}\\x{1E008}-\\x{1E018}\\x{1E01B}-\\x{1E021}\\x{1E023}-\\x{1E024}\\x{1E026}-\\x{1E02A}\\x{1E130}-\\x{1E136}\\x{1E2EC}-\\x{1E2EF}\\x{1E8D0}-\\x{1E8D6}\\x{1E944}-\\x{1E94A}\\x{E0100}-\\x{E01EF}]/u'; + const RTL_LABEL = '/[\\x{0590}\\x{05BE}\\x{05C0}\\x{05C3}\\x{05C6}\\x{05C8}-\\x{05CF}\\x{05D0}-\\x{05EA}\\x{05EB}-\\x{05EE}\\x{05EF}-\\x{05F2}\\x{05F3}-\\x{05F4}\\x{05F5}-\\x{05FF}\\x{0600}-\\x{0605}\\x{0608}\\x{060B}\\x{060D}\\x{061B}\\x{061C}\\x{061D}\\x{061E}-\\x{061F}\\x{0620}-\\x{063F}\\x{0640}\\x{0641}-\\x{064A}\\x{0660}-\\x{0669}\\x{066B}-\\x{066C}\\x{066D}\\x{066E}-\\x{066F}\\x{0671}-\\x{06D3}\\x{06D4}\\x{06D5}\\x{06DD}\\x{06E5}-\\x{06E6}\\x{06EE}-\\x{06EF}\\x{06FA}-\\x{06FC}\\x{06FD}-\\x{06FE}\\x{06FF}\\x{0700}-\\x{070D}\\x{070E}\\x{070F}\\x{0710}\\x{0712}-\\x{072F}\\x{074B}-\\x{074C}\\x{074D}-\\x{07A5}\\x{07B1}\\x{07B2}-\\x{07BF}\\x{07C0}-\\x{07C9}\\x{07CA}-\\x{07EA}\\x{07F4}-\\x{07F5}\\x{07FA}\\x{07FB}-\\x{07FC}\\x{07FE}-\\x{07FF}\\x{0800}-\\x{0815}\\x{081A}\\x{0824}\\x{0828}\\x{082E}-\\x{082F}\\x{0830}-\\x{083E}\\x{083F}\\x{0840}-\\x{0858}\\x{085C}-\\x{085D}\\x{085E}\\x{085F}\\x{0860}-\\x{086A}\\x{086B}-\\x{086F}\\x{0870}-\\x{089F}\\x{08A0}-\\x{08B4}\\x{08B5}\\x{08B6}-\\x{08C7}\\x{08C8}-\\x{08D2}\\x{08E2}\\x{200F}\\x{FB1D}\\x{FB1F}-\\x{FB28}\\x{FB2A}-\\x{FB36}\\x{FB37}\\x{FB38}-\\x{FB3C}\\x{FB3D}\\x{FB3E}\\x{FB3F}\\x{FB40}-\\x{FB41}\\x{FB42}\\x{FB43}-\\x{FB44}\\x{FB45}\\x{FB46}-\\x{FB4F}\\x{FB50}-\\x{FBB1}\\x{FBB2}-\\x{FBC1}\\x{FBC2}-\\x{FBD2}\\x{FBD3}-\\x{FD3D}\\x{FD40}-\\x{FD4F}\\x{FD50}-\\x{FD8F}\\x{FD90}-\\x{FD91}\\x{FD92}-\\x{FDC7}\\x{FDC8}-\\x{FDCF}\\x{FDF0}-\\x{FDFB}\\x{FDFC}\\x{FDFE}-\\x{FDFF}\\x{FE70}-\\x{FE74}\\x{FE75}\\x{FE76}-\\x{FEFC}\\x{FEFD}-\\x{FEFE}\\x{10800}-\\x{10805}\\x{10806}-\\x{10807}\\x{10808}\\x{10809}\\x{1080A}-\\x{10835}\\x{10836}\\x{10837}-\\x{10838}\\x{10839}-\\x{1083B}\\x{1083C}\\x{1083D}-\\x{1083E}\\x{1083F}-\\x{10855}\\x{10856}\\x{10857}\\x{10858}-\\x{1085F}\\x{10860}-\\x{10876}\\x{10877}-\\x{10878}\\x{10879}-\\x{1087F}\\x{10880}-\\x{1089E}\\x{1089F}-\\x{108A6}\\x{108A7}-\\x{108AF}\\x{108B0}-\\x{108DF}\\x{108E0}-\\x{108F2}\\x{108F3}\\x{108F4}-\\x{108F5}\\x{108F6}-\\x{108FA}\\x{108FB}-\\x{108FF}\\x{10900}-\\x{10915}\\x{10916}-\\x{1091B}\\x{1091C}-\\x{1091E}\\x{10920}-\\x{10939}\\x{1093A}-\\x{1093E}\\x{1093F}\\x{10940}-\\x{1097F}\\x{10980}-\\x{109B7}\\x{109B8}-\\x{109BB}\\x{109BC}-\\x{109BD}\\x{109BE}-\\x{109BF}\\x{109C0}-\\x{109CF}\\x{109D0}-\\x{109D1}\\x{109D2}-\\x{109FF}\\x{10A00}\\x{10A04}\\x{10A07}-\\x{10A0B}\\x{10A10}-\\x{10A13}\\x{10A14}\\x{10A15}-\\x{10A17}\\x{10A18}\\x{10A19}-\\x{10A35}\\x{10A36}-\\x{10A37}\\x{10A3B}-\\x{10A3E}\\x{10A40}-\\x{10A48}\\x{10A49}-\\x{10A4F}\\x{10A50}-\\x{10A58}\\x{10A59}-\\x{10A5F}\\x{10A60}-\\x{10A7C}\\x{10A7D}-\\x{10A7E}\\x{10A7F}\\x{10A80}-\\x{10A9C}\\x{10A9D}-\\x{10A9F}\\x{10AA0}-\\x{10ABF}\\x{10AC0}-\\x{10AC7}\\x{10AC8}\\x{10AC9}-\\x{10AE4}\\x{10AE7}-\\x{10AEA}\\x{10AEB}-\\x{10AEF}\\x{10AF0}-\\x{10AF6}\\x{10AF7}-\\x{10AFF}\\x{10B00}-\\x{10B35}\\x{10B36}-\\x{10B38}\\x{10B40}-\\x{10B55}\\x{10B56}-\\x{10B57}\\x{10B58}-\\x{10B5F}\\x{10B60}-\\x{10B72}\\x{10B73}-\\x{10B77}\\x{10B78}-\\x{10B7F}\\x{10B80}-\\x{10B91}\\x{10B92}-\\x{10B98}\\x{10B99}-\\x{10B9C}\\x{10B9D}-\\x{10BA8}\\x{10BA9}-\\x{10BAF}\\x{10BB0}-\\x{10BFF}\\x{10C00}-\\x{10C48}\\x{10C49}-\\x{10C7F}\\x{10C80}-\\x{10CB2}\\x{10CB3}-\\x{10CBF}\\x{10CC0}-\\x{10CF2}\\x{10CF3}-\\x{10CF9}\\x{10CFA}-\\x{10CFF}\\x{10D00}-\\x{10D23}\\x{10D28}-\\x{10D2F}\\x{10D30}-\\x{10D39}\\x{10D3A}-\\x{10D3F}\\x{10D40}-\\x{10E5F}\\x{10E60}-\\x{10E7E}\\x{10E7F}\\x{10E80}-\\x{10EA9}\\x{10EAA}\\x{10EAD}\\x{10EAE}-\\x{10EAF}\\x{10EB0}-\\x{10EB1}\\x{10EB2}-\\x{10EFF}\\x{10F00}-\\x{10F1C}\\x{10F1D}-\\x{10F26}\\x{10F27}\\x{10F28}-\\x{10F2F}\\x{10F30}-\\x{10F45}\\x{10F51}-\\x{10F54}\\x{10F55}-\\x{10F59}\\x{10F5A}-\\x{10F6F}\\x{10F70}-\\x{10FAF}\\x{10FB0}-\\x{10FC4}\\x{10FC5}-\\x{10FCB}\\x{10FCC}-\\x{10FDF}\\x{10FE0}-\\x{10FF6}\\x{10FF7}-\\x{10FFF}\\x{1E800}-\\x{1E8C4}\\x{1E8C5}-\\x{1E8C6}\\x{1E8C7}-\\x{1E8CF}\\x{1E8D7}-\\x{1E8FF}\\x{1E900}-\\x{1E943}\\x{1E94B}\\x{1E94C}-\\x{1E94F}\\x{1E950}-\\x{1E959}\\x{1E95A}-\\x{1E95D}\\x{1E95E}-\\x{1E95F}\\x{1E960}-\\x{1EC6F}\\x{1EC70}\\x{1EC71}-\\x{1ECAB}\\x{1ECAC}\\x{1ECAD}-\\x{1ECAF}\\x{1ECB0}\\x{1ECB1}-\\x{1ECB4}\\x{1ECB5}-\\x{1ECBF}\\x{1ECC0}-\\x{1ECFF}\\x{1ED00}\\x{1ED01}-\\x{1ED2D}\\x{1ED2E}\\x{1ED2F}-\\x{1ED3D}\\x{1ED3E}-\\x{1ED4F}\\x{1ED50}-\\x{1EDFF}\\x{1EE00}-\\x{1EE03}\\x{1EE04}\\x{1EE05}-\\x{1EE1F}\\x{1EE20}\\x{1EE21}-\\x{1EE22}\\x{1EE23}\\x{1EE24}\\x{1EE25}-\\x{1EE26}\\x{1EE27}\\x{1EE28}\\x{1EE29}-\\x{1EE32}\\x{1EE33}\\x{1EE34}-\\x{1EE37}\\x{1EE38}\\x{1EE39}\\x{1EE3A}\\x{1EE3B}\\x{1EE3C}-\\x{1EE41}\\x{1EE42}\\x{1EE43}-\\x{1EE46}\\x{1EE47}\\x{1EE48}\\x{1EE49}\\x{1EE4A}\\x{1EE4B}\\x{1EE4C}\\x{1EE4D}-\\x{1EE4F}\\x{1EE50}\\x{1EE51}-\\x{1EE52}\\x{1EE53}\\x{1EE54}\\x{1EE55}-\\x{1EE56}\\x{1EE57}\\x{1EE58}\\x{1EE59}\\x{1EE5A}\\x{1EE5B}\\x{1EE5C}\\x{1EE5D}\\x{1EE5E}\\x{1EE5F}\\x{1EE60}\\x{1EE61}-\\x{1EE62}\\x{1EE63}\\x{1EE64}\\x{1EE65}-\\x{1EE66}\\x{1EE67}-\\x{1EE6A}\\x{1EE6B}\\x{1EE6C}-\\x{1EE72}\\x{1EE73}\\x{1EE74}-\\x{1EE77}\\x{1EE78}\\x{1EE79}-\\x{1EE7C}\\x{1EE7D}\\x{1EE7E}\\x{1EE7F}\\x{1EE80}-\\x{1EE89}\\x{1EE8A}\\x{1EE8B}-\\x{1EE9B}\\x{1EE9C}-\\x{1EEA0}\\x{1EEA1}-\\x{1EEA3}\\x{1EEA4}\\x{1EEA5}-\\x{1EEA9}\\x{1EEAA}\\x{1EEAB}-\\x{1EEBB}\\x{1EEBC}-\\x{1EEEF}\\x{1EEF2}-\\x{1EEFF}\\x{1EF00}-\\x{1EFFF}]/u'; + const BIDI_STEP_1_LTR = '/^[^\\x{0000}-\\x{0008}\\x{0009}\\x{000A}\\x{000B}\\x{000C}\\x{000D}\\x{000E}-\\x{001B}\\x{001C}-\\x{001E}\\x{001F}\\x{0020}\\x{0021}-\\x{0022}\\x{0023}\\x{0024}\\x{0025}\\x{0026}-\\x{0027}\\x{0028}\\x{0029}\\x{002A}\\x{002B}\\x{002C}\\x{002D}\\x{002E}-\\x{002F}\\x{0030}-\\x{0039}\\x{003A}\\x{003B}\\x{003C}-\\x{003E}\\x{003F}-\\x{0040}\\x{005B}\\x{005C}\\x{005D}\\x{005E}\\x{005F}\\x{0060}\\x{007B}\\x{007C}\\x{007D}\\x{007E}\\x{007F}-\\x{0084}\\x{0085}\\x{0086}-\\x{009F}\\x{00A0}\\x{00A1}\\x{00A2}-\\x{00A5}\\x{00A6}\\x{00A7}\\x{00A8}\\x{00A9}\\x{00AB}\\x{00AC}\\x{00AD}\\x{00AE}\\x{00AF}\\x{00B0}\\x{00B1}\\x{00B2}-\\x{00B3}\\x{00B4}\\x{00B6}-\\x{00B7}\\x{00B8}\\x{00B9}\\x{00BB}\\x{00BC}-\\x{00BE}\\x{00BF}\\x{00D7}\\x{00F7}\\x{02B9}-\\x{02BA}\\x{02C2}-\\x{02C5}\\x{02C6}-\\x{02CF}\\x{02D2}-\\x{02DF}\\x{02E5}-\\x{02EB}\\x{02EC}\\x{02ED}\\x{02EF}-\\x{02FF}\\x{0300}-\\x{036F}\\x{0374}\\x{0375}\\x{037E}\\x{0384}-\\x{0385}\\x{0387}\\x{03F6}\\x{0483}-\\x{0487}\\x{0488}-\\x{0489}\\x{058A}\\x{058D}-\\x{058E}\\x{058F}\\x{0590}\\x{0591}-\\x{05BD}\\x{05BE}\\x{05BF}\\x{05C0}\\x{05C1}-\\x{05C2}\\x{05C3}\\x{05C4}-\\x{05C5}\\x{05C6}\\x{05C7}\\x{05C8}-\\x{05CF}\\x{05D0}-\\x{05EA}\\x{05EB}-\\x{05EE}\\x{05EF}-\\x{05F2}\\x{05F3}-\\x{05F4}\\x{05F5}-\\x{05FF}\\x{0600}-\\x{0605}\\x{0606}-\\x{0607}\\x{0608}\\x{0609}-\\x{060A}\\x{060B}\\x{060C}\\x{060D}\\x{060E}-\\x{060F}\\x{0610}-\\x{061A}\\x{061B}\\x{061C}\\x{061D}\\x{061E}-\\x{061F}\\x{0620}-\\x{063F}\\x{0640}\\x{0641}-\\x{064A}\\x{064B}-\\x{065F}\\x{0660}-\\x{0669}\\x{066A}\\x{066B}-\\x{066C}\\x{066D}\\x{066E}-\\x{066F}\\x{0670}\\x{0671}-\\x{06D3}\\x{06D4}\\x{06D5}\\x{06D6}-\\x{06DC}\\x{06DD}\\x{06DE}\\x{06DF}-\\x{06E4}\\x{06E5}-\\x{06E6}\\x{06E7}-\\x{06E8}\\x{06E9}\\x{06EA}-\\x{06ED}\\x{06EE}-\\x{06EF}\\x{06F0}-\\x{06F9}\\x{06FA}-\\x{06FC}\\x{06FD}-\\x{06FE}\\x{06FF}\\x{0700}-\\x{070D}\\x{070E}\\x{070F}\\x{0710}\\x{0711}\\x{0712}-\\x{072F}\\x{0730}-\\x{074A}\\x{074B}-\\x{074C}\\x{074D}-\\x{07A5}\\x{07A6}-\\x{07B0}\\x{07B1}\\x{07B2}-\\x{07BF}\\x{07C0}-\\x{07C9}\\x{07CA}-\\x{07EA}\\x{07EB}-\\x{07F3}\\x{07F4}-\\x{07F5}\\x{07F6}\\x{07F7}-\\x{07F9}\\x{07FA}\\x{07FB}-\\x{07FC}\\x{07FD}\\x{07FE}-\\x{07FF}\\x{0800}-\\x{0815}\\x{0816}-\\x{0819}\\x{081A}\\x{081B}-\\x{0823}\\x{0824}\\x{0825}-\\x{0827}\\x{0828}\\x{0829}-\\x{082D}\\x{082E}-\\x{082F}\\x{0830}-\\x{083E}\\x{083F}\\x{0840}-\\x{0858}\\x{0859}-\\x{085B}\\x{085C}-\\x{085D}\\x{085E}\\x{085F}\\x{0860}-\\x{086A}\\x{086B}-\\x{086F}\\x{0870}-\\x{089F}\\x{08A0}-\\x{08B4}\\x{08B5}\\x{08B6}-\\x{08C7}\\x{08C8}-\\x{08D2}\\x{08D3}-\\x{08E1}\\x{08E2}\\x{08E3}-\\x{0902}\\x{093A}\\x{093C}\\x{0941}-\\x{0948}\\x{094D}\\x{0951}-\\x{0957}\\x{0962}-\\x{0963}\\x{0981}\\x{09BC}\\x{09C1}-\\x{09C4}\\x{09CD}\\x{09E2}-\\x{09E3}\\x{09F2}-\\x{09F3}\\x{09FB}\\x{09FE}\\x{0A01}-\\x{0A02}\\x{0A3C}\\x{0A41}-\\x{0A42}\\x{0A47}-\\x{0A48}\\x{0A4B}-\\x{0A4D}\\x{0A51}\\x{0A70}-\\x{0A71}\\x{0A75}\\x{0A81}-\\x{0A82}\\x{0ABC}\\x{0AC1}-\\x{0AC5}\\x{0AC7}-\\x{0AC8}\\x{0ACD}\\x{0AE2}-\\x{0AE3}\\x{0AF1}\\x{0AFA}-\\x{0AFF}\\x{0B01}\\x{0B3C}\\x{0B3F}\\x{0B41}-\\x{0B44}\\x{0B4D}\\x{0B55}-\\x{0B56}\\x{0B62}-\\x{0B63}\\x{0B82}\\x{0BC0}\\x{0BCD}\\x{0BF3}-\\x{0BF8}\\x{0BF9}\\x{0BFA}\\x{0C00}\\x{0C04}\\x{0C3E}-\\x{0C40}\\x{0C46}-\\x{0C48}\\x{0C4A}-\\x{0C4D}\\x{0C55}-\\x{0C56}\\x{0C62}-\\x{0C63}\\x{0C78}-\\x{0C7E}\\x{0C81}\\x{0CBC}\\x{0CCC}-\\x{0CCD}\\x{0CE2}-\\x{0CE3}\\x{0D00}-\\x{0D01}\\x{0D3B}-\\x{0D3C}\\x{0D41}-\\x{0D44}\\x{0D4D}\\x{0D62}-\\x{0D63}\\x{0D81}\\x{0DCA}\\x{0DD2}-\\x{0DD4}\\x{0DD6}\\x{0E31}\\x{0E34}-\\x{0E3A}\\x{0E3F}\\x{0E47}-\\x{0E4E}\\x{0EB1}\\x{0EB4}-\\x{0EBC}\\x{0EC8}-\\x{0ECD}\\x{0F18}-\\x{0F19}\\x{0F35}\\x{0F37}\\x{0F39}\\x{0F3A}\\x{0F3B}\\x{0F3C}\\x{0F3D}\\x{0F71}-\\x{0F7E}\\x{0F80}-\\x{0F84}\\x{0F86}-\\x{0F87}\\x{0F8D}-\\x{0F97}\\x{0F99}-\\x{0FBC}\\x{0FC6}\\x{102D}-\\x{1030}\\x{1032}-\\x{1037}\\x{1039}-\\x{103A}\\x{103D}-\\x{103E}\\x{1058}-\\x{1059}\\x{105E}-\\x{1060}\\x{1071}-\\x{1074}\\x{1082}\\x{1085}-\\x{1086}\\x{108D}\\x{109D}\\x{135D}-\\x{135F}\\x{1390}-\\x{1399}\\x{1400}\\x{1680}\\x{169B}\\x{169C}\\x{1712}-\\x{1714}\\x{1732}-\\x{1734}\\x{1752}-\\x{1753}\\x{1772}-\\x{1773}\\x{17B4}-\\x{17B5}\\x{17B7}-\\x{17BD}\\x{17C6}\\x{17C9}-\\x{17D3}\\x{17DB}\\x{17DD}\\x{17F0}-\\x{17F9}\\x{1800}-\\x{1805}\\x{1806}\\x{1807}-\\x{180A}\\x{180B}-\\x{180D}\\x{180E}\\x{1885}-\\x{1886}\\x{18A9}\\x{1920}-\\x{1922}\\x{1927}-\\x{1928}\\x{1932}\\x{1939}-\\x{193B}\\x{1940}\\x{1944}-\\x{1945}\\x{19DE}-\\x{19FF}\\x{1A17}-\\x{1A18}\\x{1A1B}\\x{1A56}\\x{1A58}-\\x{1A5E}\\x{1A60}\\x{1A62}\\x{1A65}-\\x{1A6C}\\x{1A73}-\\x{1A7C}\\x{1A7F}\\x{1AB0}-\\x{1ABD}\\x{1ABE}\\x{1ABF}-\\x{1AC0}\\x{1B00}-\\x{1B03}\\x{1B34}\\x{1B36}-\\x{1B3A}\\x{1B3C}\\x{1B42}\\x{1B6B}-\\x{1B73}\\x{1B80}-\\x{1B81}\\x{1BA2}-\\x{1BA5}\\x{1BA8}-\\x{1BA9}\\x{1BAB}-\\x{1BAD}\\x{1BE6}\\x{1BE8}-\\x{1BE9}\\x{1BED}\\x{1BEF}-\\x{1BF1}\\x{1C2C}-\\x{1C33}\\x{1C36}-\\x{1C37}\\x{1CD0}-\\x{1CD2}\\x{1CD4}-\\x{1CE0}\\x{1CE2}-\\x{1CE8}\\x{1CED}\\x{1CF4}\\x{1CF8}-\\x{1CF9}\\x{1DC0}-\\x{1DF9}\\x{1DFB}-\\x{1DFF}\\x{1FBD}\\x{1FBF}-\\x{1FC1}\\x{1FCD}-\\x{1FCF}\\x{1FDD}-\\x{1FDF}\\x{1FED}-\\x{1FEF}\\x{1FFD}-\\x{1FFE}\\x{2000}-\\x{200A}\\x{200B}-\\x{200D}\\x{200F}\\x{2010}-\\x{2015}\\x{2016}-\\x{2017}\\x{2018}\\x{2019}\\x{201A}\\x{201B}-\\x{201C}\\x{201D}\\x{201E}\\x{201F}\\x{2020}-\\x{2027}\\x{2028}\\x{2029}\\x{202A}\\x{202B}\\x{202C}\\x{202D}\\x{202E}\\x{202F}\\x{2030}-\\x{2034}\\x{2035}-\\x{2038}\\x{2039}\\x{203A}\\x{203B}-\\x{203E}\\x{203F}-\\x{2040}\\x{2041}-\\x{2043}\\x{2044}\\x{2045}\\x{2046}\\x{2047}-\\x{2051}\\x{2052}\\x{2053}\\x{2054}\\x{2055}-\\x{205E}\\x{205F}\\x{2060}-\\x{2064}\\x{2065}\\x{2066}\\x{2067}\\x{2068}\\x{2069}\\x{206A}-\\x{206F}\\x{2070}\\x{2074}-\\x{2079}\\x{207A}-\\x{207B}\\x{207C}\\x{207D}\\x{207E}\\x{2080}-\\x{2089}\\x{208A}-\\x{208B}\\x{208C}\\x{208D}\\x{208E}\\x{20A0}-\\x{20BF}\\x{20C0}-\\x{20CF}\\x{20D0}-\\x{20DC}\\x{20DD}-\\x{20E0}\\x{20E1}\\x{20E2}-\\x{20E4}\\x{20E5}-\\x{20F0}\\x{2100}-\\x{2101}\\x{2103}-\\x{2106}\\x{2108}-\\x{2109}\\x{2114}\\x{2116}-\\x{2117}\\x{2118}\\x{211E}-\\x{2123}\\x{2125}\\x{2127}\\x{2129}\\x{212E}\\x{213A}-\\x{213B}\\x{2140}-\\x{2144}\\x{214A}\\x{214B}\\x{214C}-\\x{214D}\\x{2150}-\\x{215F}\\x{2189}\\x{218A}-\\x{218B}\\x{2190}-\\x{2194}\\x{2195}-\\x{2199}\\x{219A}-\\x{219B}\\x{219C}-\\x{219F}\\x{21A0}\\x{21A1}-\\x{21A2}\\x{21A3}\\x{21A4}-\\x{21A5}\\x{21A6}\\x{21A7}-\\x{21AD}\\x{21AE}\\x{21AF}-\\x{21CD}\\x{21CE}-\\x{21CF}\\x{21D0}-\\x{21D1}\\x{21D2}\\x{21D3}\\x{21D4}\\x{21D5}-\\x{21F3}\\x{21F4}-\\x{2211}\\x{2212}\\x{2213}\\x{2214}-\\x{22FF}\\x{2300}-\\x{2307}\\x{2308}\\x{2309}\\x{230A}\\x{230B}\\x{230C}-\\x{231F}\\x{2320}-\\x{2321}\\x{2322}-\\x{2328}\\x{2329}\\x{232A}\\x{232B}-\\x{2335}\\x{237B}\\x{237C}\\x{237D}-\\x{2394}\\x{2396}-\\x{239A}\\x{239B}-\\x{23B3}\\x{23B4}-\\x{23DB}\\x{23DC}-\\x{23E1}\\x{23E2}-\\x{2426}\\x{2440}-\\x{244A}\\x{2460}-\\x{2487}\\x{2488}-\\x{249B}\\x{24EA}-\\x{24FF}\\x{2500}-\\x{25B6}\\x{25B7}\\x{25B8}-\\x{25C0}\\x{25C1}\\x{25C2}-\\x{25F7}\\x{25F8}-\\x{25FF}\\x{2600}-\\x{266E}\\x{266F}\\x{2670}-\\x{26AB}\\x{26AD}-\\x{2767}\\x{2768}\\x{2769}\\x{276A}\\x{276B}\\x{276C}\\x{276D}\\x{276E}\\x{276F}\\x{2770}\\x{2771}\\x{2772}\\x{2773}\\x{2774}\\x{2775}\\x{2776}-\\x{2793}\\x{2794}-\\x{27BF}\\x{27C0}-\\x{27C4}\\x{27C5}\\x{27C6}\\x{27C7}-\\x{27E5}\\x{27E6}\\x{27E7}\\x{27E8}\\x{27E9}\\x{27EA}\\x{27EB}\\x{27EC}\\x{27ED}\\x{27EE}\\x{27EF}\\x{27F0}-\\x{27FF}\\x{2900}-\\x{2982}\\x{2983}\\x{2984}\\x{2985}\\x{2986}\\x{2987}\\x{2988}\\x{2989}\\x{298A}\\x{298B}\\x{298C}\\x{298D}\\x{298E}\\x{298F}\\x{2990}\\x{2991}\\x{2992}\\x{2993}\\x{2994}\\x{2995}\\x{2996}\\x{2997}\\x{2998}\\x{2999}-\\x{29D7}\\x{29D8}\\x{29D9}\\x{29DA}\\x{29DB}\\x{29DC}-\\x{29FB}\\x{29FC}\\x{29FD}\\x{29FE}-\\x{2AFF}\\x{2B00}-\\x{2B2F}\\x{2B30}-\\x{2B44}\\x{2B45}-\\x{2B46}\\x{2B47}-\\x{2B4C}\\x{2B4D}-\\x{2B73}\\x{2B76}-\\x{2B95}\\x{2B97}-\\x{2BFF}\\x{2CE5}-\\x{2CEA}\\x{2CEF}-\\x{2CF1}\\x{2CF9}-\\x{2CFC}\\x{2CFD}\\x{2CFE}-\\x{2CFF}\\x{2D7F}\\x{2DE0}-\\x{2DFF}\\x{2E00}-\\x{2E01}\\x{2E02}\\x{2E03}\\x{2E04}\\x{2E05}\\x{2E06}-\\x{2E08}\\x{2E09}\\x{2E0A}\\x{2E0B}\\x{2E0C}\\x{2E0D}\\x{2E0E}-\\x{2E16}\\x{2E17}\\x{2E18}-\\x{2E19}\\x{2E1A}\\x{2E1B}\\x{2E1C}\\x{2E1D}\\x{2E1E}-\\x{2E1F}\\x{2E20}\\x{2E21}\\x{2E22}\\x{2E23}\\x{2E24}\\x{2E25}\\x{2E26}\\x{2E27}\\x{2E28}\\x{2E29}\\x{2E2A}-\\x{2E2E}\\x{2E2F}\\x{2E30}-\\x{2E39}\\x{2E3A}-\\x{2E3B}\\x{2E3C}-\\x{2E3F}\\x{2E40}\\x{2E41}\\x{2E42}\\x{2E43}-\\x{2E4F}\\x{2E50}-\\x{2E51}\\x{2E52}\\x{2E80}-\\x{2E99}\\x{2E9B}-\\x{2EF3}\\x{2F00}-\\x{2FD5}\\x{2FF0}-\\x{2FFB}\\x{3000}\\x{3001}-\\x{3003}\\x{3004}\\x{3008}\\x{3009}\\x{300A}\\x{300B}\\x{300C}\\x{300D}\\x{300E}\\x{300F}\\x{3010}\\x{3011}\\x{3012}-\\x{3013}\\x{3014}\\x{3015}\\x{3016}\\x{3017}\\x{3018}\\x{3019}\\x{301A}\\x{301B}\\x{301C}\\x{301D}\\x{301E}-\\x{301F}\\x{3020}\\x{302A}-\\x{302D}\\x{3030}\\x{3036}-\\x{3037}\\x{303D}\\x{303E}-\\x{303F}\\x{3099}-\\x{309A}\\x{309B}-\\x{309C}\\x{30A0}\\x{30FB}\\x{31C0}-\\x{31E3}\\x{321D}-\\x{321E}\\x{3250}\\x{3251}-\\x{325F}\\x{327C}-\\x{327E}\\x{32B1}-\\x{32BF}\\x{32CC}-\\x{32CF}\\x{3377}-\\x{337A}\\x{33DE}-\\x{33DF}\\x{33FF}\\x{4DC0}-\\x{4DFF}\\x{A490}-\\x{A4C6}\\x{A60D}-\\x{A60F}\\x{A66F}\\x{A670}-\\x{A672}\\x{A673}\\x{A674}-\\x{A67D}\\x{A67E}\\x{A67F}\\x{A69E}-\\x{A69F}\\x{A6F0}-\\x{A6F1}\\x{A700}-\\x{A716}\\x{A717}-\\x{A71F}\\x{A720}-\\x{A721}\\x{A788}\\x{A802}\\x{A806}\\x{A80B}\\x{A825}-\\x{A826}\\x{A828}-\\x{A82B}\\x{A82C}\\x{A838}\\x{A839}\\x{A874}-\\x{A877}\\x{A8C4}-\\x{A8C5}\\x{A8E0}-\\x{A8F1}\\x{A8FF}\\x{A926}-\\x{A92D}\\x{A947}-\\x{A951}\\x{A980}-\\x{A982}\\x{A9B3}\\x{A9B6}-\\x{A9B9}\\x{A9BC}-\\x{A9BD}\\x{A9E5}\\x{AA29}-\\x{AA2E}\\x{AA31}-\\x{AA32}\\x{AA35}-\\x{AA36}\\x{AA43}\\x{AA4C}\\x{AA7C}\\x{AAB0}\\x{AAB2}-\\x{AAB4}\\x{AAB7}-\\x{AAB8}\\x{AABE}-\\x{AABF}\\x{AAC1}\\x{AAEC}-\\x{AAED}\\x{AAF6}\\x{AB6A}-\\x{AB6B}\\x{ABE5}\\x{ABE8}\\x{ABED}\\x{FB1D}\\x{FB1E}\\x{FB1F}-\\x{FB28}\\x{FB29}\\x{FB2A}-\\x{FB36}\\x{FB37}\\x{FB38}-\\x{FB3C}\\x{FB3D}\\x{FB3E}\\x{FB3F}\\x{FB40}-\\x{FB41}\\x{FB42}\\x{FB43}-\\x{FB44}\\x{FB45}\\x{FB46}-\\x{FB4F}\\x{FB50}-\\x{FBB1}\\x{FBB2}-\\x{FBC1}\\x{FBC2}-\\x{FBD2}\\x{FBD3}-\\x{FD3D}\\x{FD3E}\\x{FD3F}\\x{FD40}-\\x{FD4F}\\x{FD50}-\\x{FD8F}\\x{FD90}-\\x{FD91}\\x{FD92}-\\x{FDC7}\\x{FDC8}-\\x{FDCF}\\x{FDD0}-\\x{FDEF}\\x{FDF0}-\\x{FDFB}\\x{FDFC}\\x{FDFD}\\x{FDFE}-\\x{FDFF}\\x{FE00}-\\x{FE0F}\\x{FE10}-\\x{FE16}\\x{FE17}\\x{FE18}\\x{FE19}\\x{FE20}-\\x{FE2F}\\x{FE30}\\x{FE31}-\\x{FE32}\\x{FE33}-\\x{FE34}\\x{FE35}\\x{FE36}\\x{FE37}\\x{FE38}\\x{FE39}\\x{FE3A}\\x{FE3B}\\x{FE3C}\\x{FE3D}\\x{FE3E}\\x{FE3F}\\x{FE40}\\x{FE41}\\x{FE42}\\x{FE43}\\x{FE44}\\x{FE45}-\\x{FE46}\\x{FE47}\\x{FE48}\\x{FE49}-\\x{FE4C}\\x{FE4D}-\\x{FE4F}\\x{FE50}\\x{FE51}\\x{FE52}\\x{FE54}\\x{FE55}\\x{FE56}-\\x{FE57}\\x{FE58}\\x{FE59}\\x{FE5A}\\x{FE5B}\\x{FE5C}\\x{FE5D}\\x{FE5E}\\x{FE5F}\\x{FE60}-\\x{FE61}\\x{FE62}\\x{FE63}\\x{FE64}-\\x{FE66}\\x{FE68}\\x{FE69}\\x{FE6A}\\x{FE6B}\\x{FE70}-\\x{FE74}\\x{FE75}\\x{FE76}-\\x{FEFC}\\x{FEFD}-\\x{FEFE}\\x{FEFF}\\x{FF01}-\\x{FF02}\\x{FF03}\\x{FF04}\\x{FF05}\\x{FF06}-\\x{FF07}\\x{FF08}\\x{FF09}\\x{FF0A}\\x{FF0B}\\x{FF0C}\\x{FF0D}\\x{FF0E}-\\x{FF0F}\\x{FF10}-\\x{FF19}\\x{FF1A}\\x{FF1B}\\x{FF1C}-\\x{FF1E}\\x{FF1F}-\\x{FF20}\\x{FF3B}\\x{FF3C}\\x{FF3D}\\x{FF3E}\\x{FF3F}\\x{FF40}\\x{FF5B}\\x{FF5C}\\x{FF5D}\\x{FF5E}\\x{FF5F}\\x{FF60}\\x{FF61}\\x{FF62}\\x{FF63}\\x{FF64}-\\x{FF65}\\x{FFE0}-\\x{FFE1}\\x{FFE2}\\x{FFE3}\\x{FFE4}\\x{FFE5}-\\x{FFE6}\\x{FFE8}\\x{FFE9}-\\x{FFEC}\\x{FFED}-\\x{FFEE}\\x{FFF0}-\\x{FFF8}\\x{FFF9}-\\x{FFFB}\\x{FFFC}-\\x{FFFD}\\x{FFFE}-\\x{FFFF}\\x{10101}\\x{10140}-\\x{10174}\\x{10175}-\\x{10178}\\x{10179}-\\x{10189}\\x{1018A}-\\x{1018B}\\x{1018C}\\x{10190}-\\x{1019C}\\x{101A0}\\x{101FD}\\x{102E0}\\x{102E1}-\\x{102FB}\\x{10376}-\\x{1037A}\\x{10800}-\\x{10805}\\x{10806}-\\x{10807}\\x{10808}\\x{10809}\\x{1080A}-\\x{10835}\\x{10836}\\x{10837}-\\x{10838}\\x{10839}-\\x{1083B}\\x{1083C}\\x{1083D}-\\x{1083E}\\x{1083F}-\\x{10855}\\x{10856}\\x{10857}\\x{10858}-\\x{1085F}\\x{10860}-\\x{10876}\\x{10877}-\\x{10878}\\x{10879}-\\x{1087F}\\x{10880}-\\x{1089E}\\x{1089F}-\\x{108A6}\\x{108A7}-\\x{108AF}\\x{108B0}-\\x{108DF}\\x{108E0}-\\x{108F2}\\x{108F3}\\x{108F4}-\\x{108F5}\\x{108F6}-\\x{108FA}\\x{108FB}-\\x{108FF}\\x{10900}-\\x{10915}\\x{10916}-\\x{1091B}\\x{1091C}-\\x{1091E}\\x{1091F}\\x{10920}-\\x{10939}\\x{1093A}-\\x{1093E}\\x{1093F}\\x{10940}-\\x{1097F}\\x{10980}-\\x{109B7}\\x{109B8}-\\x{109BB}\\x{109BC}-\\x{109BD}\\x{109BE}-\\x{109BF}\\x{109C0}-\\x{109CF}\\x{109D0}-\\x{109D1}\\x{109D2}-\\x{109FF}\\x{10A00}\\x{10A01}-\\x{10A03}\\x{10A04}\\x{10A05}-\\x{10A06}\\x{10A07}-\\x{10A0B}\\x{10A0C}-\\x{10A0F}\\x{10A10}-\\x{10A13}\\x{10A14}\\x{10A15}-\\x{10A17}\\x{10A18}\\x{10A19}-\\x{10A35}\\x{10A36}-\\x{10A37}\\x{10A38}-\\x{10A3A}\\x{10A3B}-\\x{10A3E}\\x{10A3F}\\x{10A40}-\\x{10A48}\\x{10A49}-\\x{10A4F}\\x{10A50}-\\x{10A58}\\x{10A59}-\\x{10A5F}\\x{10A60}-\\x{10A7C}\\x{10A7D}-\\x{10A7E}\\x{10A7F}\\x{10A80}-\\x{10A9C}\\x{10A9D}-\\x{10A9F}\\x{10AA0}-\\x{10ABF}\\x{10AC0}-\\x{10AC7}\\x{10AC8}\\x{10AC9}-\\x{10AE4}\\x{10AE5}-\\x{10AE6}\\x{10AE7}-\\x{10AEA}\\x{10AEB}-\\x{10AEF}\\x{10AF0}-\\x{10AF6}\\x{10AF7}-\\x{10AFF}\\x{10B00}-\\x{10B35}\\x{10B36}-\\x{10B38}\\x{10B39}-\\x{10B3F}\\x{10B40}-\\x{10B55}\\x{10B56}-\\x{10B57}\\x{10B58}-\\x{10B5F}\\x{10B60}-\\x{10B72}\\x{10B73}-\\x{10B77}\\x{10B78}-\\x{10B7F}\\x{10B80}-\\x{10B91}\\x{10B92}-\\x{10B98}\\x{10B99}-\\x{10B9C}\\x{10B9D}-\\x{10BA8}\\x{10BA9}-\\x{10BAF}\\x{10BB0}-\\x{10BFF}\\x{10C00}-\\x{10C48}\\x{10C49}-\\x{10C7F}\\x{10C80}-\\x{10CB2}\\x{10CB3}-\\x{10CBF}\\x{10CC0}-\\x{10CF2}\\x{10CF3}-\\x{10CF9}\\x{10CFA}-\\x{10CFF}\\x{10D00}-\\x{10D23}\\x{10D24}-\\x{10D27}\\x{10D28}-\\x{10D2F}\\x{10D30}-\\x{10D39}\\x{10D3A}-\\x{10D3F}\\x{10D40}-\\x{10E5F}\\x{10E60}-\\x{10E7E}\\x{10E7F}\\x{10E80}-\\x{10EA9}\\x{10EAA}\\x{10EAB}-\\x{10EAC}\\x{10EAD}\\x{10EAE}-\\x{10EAF}\\x{10EB0}-\\x{10EB1}\\x{10EB2}-\\x{10EFF}\\x{10F00}-\\x{10F1C}\\x{10F1D}-\\x{10F26}\\x{10F27}\\x{10F28}-\\x{10F2F}\\x{10F30}-\\x{10F45}\\x{10F46}-\\x{10F50}\\x{10F51}-\\x{10F54}\\x{10F55}-\\x{10F59}\\x{10F5A}-\\x{10F6F}\\x{10F70}-\\x{10FAF}\\x{10FB0}-\\x{10FC4}\\x{10FC5}-\\x{10FCB}\\x{10FCC}-\\x{10FDF}\\x{10FE0}-\\x{10FF6}\\x{10FF7}-\\x{10FFF}\\x{11001}\\x{11038}-\\x{11046}\\x{11052}-\\x{11065}\\x{1107F}-\\x{11081}\\x{110B3}-\\x{110B6}\\x{110B9}-\\x{110BA}\\x{11100}-\\x{11102}\\x{11127}-\\x{1112B}\\x{1112D}-\\x{11134}\\x{11173}\\x{11180}-\\x{11181}\\x{111B6}-\\x{111BE}\\x{111C9}-\\x{111CC}\\x{111CF}\\x{1122F}-\\x{11231}\\x{11234}\\x{11236}-\\x{11237}\\x{1123E}\\x{112DF}\\x{112E3}-\\x{112EA}\\x{11300}-\\x{11301}\\x{1133B}-\\x{1133C}\\x{11340}\\x{11366}-\\x{1136C}\\x{11370}-\\x{11374}\\x{11438}-\\x{1143F}\\x{11442}-\\x{11444}\\x{11446}\\x{1145E}\\x{114B3}-\\x{114B8}\\x{114BA}\\x{114BF}-\\x{114C0}\\x{114C2}-\\x{114C3}\\x{115B2}-\\x{115B5}\\x{115BC}-\\x{115BD}\\x{115BF}-\\x{115C0}\\x{115DC}-\\x{115DD}\\x{11633}-\\x{1163A}\\x{1163D}\\x{1163F}-\\x{11640}\\x{11660}-\\x{1166C}\\x{116AB}\\x{116AD}\\x{116B0}-\\x{116B5}\\x{116B7}\\x{1171D}-\\x{1171F}\\x{11722}-\\x{11725}\\x{11727}-\\x{1172B}\\x{1182F}-\\x{11837}\\x{11839}-\\x{1183A}\\x{1193B}-\\x{1193C}\\x{1193E}\\x{11943}\\x{119D4}-\\x{119D7}\\x{119DA}-\\x{119DB}\\x{119E0}\\x{11A01}-\\x{11A06}\\x{11A09}-\\x{11A0A}\\x{11A33}-\\x{11A38}\\x{11A3B}-\\x{11A3E}\\x{11A47}\\x{11A51}-\\x{11A56}\\x{11A59}-\\x{11A5B}\\x{11A8A}-\\x{11A96}\\x{11A98}-\\x{11A99}\\x{11C30}-\\x{11C36}\\x{11C38}-\\x{11C3D}\\x{11C92}-\\x{11CA7}\\x{11CAA}-\\x{11CB0}\\x{11CB2}-\\x{11CB3}\\x{11CB5}-\\x{11CB6}\\x{11D31}-\\x{11D36}\\x{11D3A}\\x{11D3C}-\\x{11D3D}\\x{11D3F}-\\x{11D45}\\x{11D47}\\x{11D90}-\\x{11D91}\\x{11D95}\\x{11D97}\\x{11EF3}-\\x{11EF4}\\x{11FD5}-\\x{11FDC}\\x{11FDD}-\\x{11FE0}\\x{11FE1}-\\x{11FF1}\\x{16AF0}-\\x{16AF4}\\x{16B30}-\\x{16B36}\\x{16F4F}\\x{16F8F}-\\x{16F92}\\x{16FE2}\\x{16FE4}\\x{1BC9D}-\\x{1BC9E}\\x{1BCA0}-\\x{1BCA3}\\x{1D167}-\\x{1D169}\\x{1D173}-\\x{1D17A}\\x{1D17B}-\\x{1D182}\\x{1D185}-\\x{1D18B}\\x{1D1AA}-\\x{1D1AD}\\x{1D200}-\\x{1D241}\\x{1D242}-\\x{1D244}\\x{1D245}\\x{1D300}-\\x{1D356}\\x{1D6DB}\\x{1D715}\\x{1D74F}\\x{1D789}\\x{1D7C3}\\x{1D7CE}-\\x{1D7FF}\\x{1DA00}-\\x{1DA36}\\x{1DA3B}-\\x{1DA6C}\\x{1DA75}\\x{1DA84}\\x{1DA9B}-\\x{1DA9F}\\x{1DAA1}-\\x{1DAAF}\\x{1E000}-\\x{1E006}\\x{1E008}-\\x{1E018}\\x{1E01B}-\\x{1E021}\\x{1E023}-\\x{1E024}\\x{1E026}-\\x{1E02A}\\x{1E130}-\\x{1E136}\\x{1E2EC}-\\x{1E2EF}\\x{1E2FF}\\x{1E800}-\\x{1E8C4}\\x{1E8C5}-\\x{1E8C6}\\x{1E8C7}-\\x{1E8CF}\\x{1E8D0}-\\x{1E8D6}\\x{1E8D7}-\\x{1E8FF}\\x{1E900}-\\x{1E943}\\x{1E944}-\\x{1E94A}\\x{1E94B}\\x{1E94C}-\\x{1E94F}\\x{1E950}-\\x{1E959}\\x{1E95A}-\\x{1E95D}\\x{1E95E}-\\x{1E95F}\\x{1E960}-\\x{1EC6F}\\x{1EC70}\\x{1EC71}-\\x{1ECAB}\\x{1ECAC}\\x{1ECAD}-\\x{1ECAF}\\x{1ECB0}\\x{1ECB1}-\\x{1ECB4}\\x{1ECB5}-\\x{1ECBF}\\x{1ECC0}-\\x{1ECFF}\\x{1ED00}\\x{1ED01}-\\x{1ED2D}\\x{1ED2E}\\x{1ED2F}-\\x{1ED3D}\\x{1ED3E}-\\x{1ED4F}\\x{1ED50}-\\x{1EDFF}\\x{1EE00}-\\x{1EE03}\\x{1EE04}\\x{1EE05}-\\x{1EE1F}\\x{1EE20}\\x{1EE21}-\\x{1EE22}\\x{1EE23}\\x{1EE24}\\x{1EE25}-\\x{1EE26}\\x{1EE27}\\x{1EE28}\\x{1EE29}-\\x{1EE32}\\x{1EE33}\\x{1EE34}-\\x{1EE37}\\x{1EE38}\\x{1EE39}\\x{1EE3A}\\x{1EE3B}\\x{1EE3C}-\\x{1EE41}\\x{1EE42}\\x{1EE43}-\\x{1EE46}\\x{1EE47}\\x{1EE48}\\x{1EE49}\\x{1EE4A}\\x{1EE4B}\\x{1EE4C}\\x{1EE4D}-\\x{1EE4F}\\x{1EE50}\\x{1EE51}-\\x{1EE52}\\x{1EE53}\\x{1EE54}\\x{1EE55}-\\x{1EE56}\\x{1EE57}\\x{1EE58}\\x{1EE59}\\x{1EE5A}\\x{1EE5B}\\x{1EE5C}\\x{1EE5D}\\x{1EE5E}\\x{1EE5F}\\x{1EE60}\\x{1EE61}-\\x{1EE62}\\x{1EE63}\\x{1EE64}\\x{1EE65}-\\x{1EE66}\\x{1EE67}-\\x{1EE6A}\\x{1EE6B}\\x{1EE6C}-\\x{1EE72}\\x{1EE73}\\x{1EE74}-\\x{1EE77}\\x{1EE78}\\x{1EE79}-\\x{1EE7C}\\x{1EE7D}\\x{1EE7E}\\x{1EE7F}\\x{1EE80}-\\x{1EE89}\\x{1EE8A}\\x{1EE8B}-\\x{1EE9B}\\x{1EE9C}-\\x{1EEA0}\\x{1EEA1}-\\x{1EEA3}\\x{1EEA4}\\x{1EEA5}-\\x{1EEA9}\\x{1EEAA}\\x{1EEAB}-\\x{1EEBB}\\x{1EEBC}-\\x{1EEEF}\\x{1EEF0}-\\x{1EEF1}\\x{1EEF2}-\\x{1EEFF}\\x{1EF00}-\\x{1EFFF}\\x{1F000}-\\x{1F02B}\\x{1F030}-\\x{1F093}\\x{1F0A0}-\\x{1F0AE}\\x{1F0B1}-\\x{1F0BF}\\x{1F0C1}-\\x{1F0CF}\\x{1F0D1}-\\x{1F0F5}\\x{1F100}-\\x{1F10A}\\x{1F10B}-\\x{1F10C}\\x{1F10D}-\\x{1F10F}\\x{1F12F}\\x{1F16A}-\\x{1F16F}\\x{1F1AD}\\x{1F260}-\\x{1F265}\\x{1F300}-\\x{1F3FA}\\x{1F3FB}-\\x{1F3FF}\\x{1F400}-\\x{1F6D7}\\x{1F6E0}-\\x{1F6EC}\\x{1F6F0}-\\x{1F6FC}\\x{1F700}-\\x{1F773}\\x{1F780}-\\x{1F7D8}\\x{1F7E0}-\\x{1F7EB}\\x{1F800}-\\x{1F80B}\\x{1F810}-\\x{1F847}\\x{1F850}-\\x{1F859}\\x{1F860}-\\x{1F887}\\x{1F890}-\\x{1F8AD}\\x{1F8B0}-\\x{1F8B1}\\x{1F900}-\\x{1F978}\\x{1F97A}-\\x{1F9CB}\\x{1F9CD}-\\x{1FA53}\\x{1FA60}-\\x{1FA6D}\\x{1FA70}-\\x{1FA74}\\x{1FA78}-\\x{1FA7A}\\x{1FA80}-\\x{1FA86}\\x{1FA90}-\\x{1FAA8}\\x{1FAB0}-\\x{1FAB6}\\x{1FAC0}-\\x{1FAC2}\\x{1FAD0}-\\x{1FAD6}\\x{1FB00}-\\x{1FB92}\\x{1FB94}-\\x{1FBCA}\\x{1FBF0}-\\x{1FBF9}\\x{1FFFE}-\\x{1FFFF}\\x{2FFFE}-\\x{2FFFF}\\x{3FFFE}-\\x{3FFFF}\\x{4FFFE}-\\x{4FFFF}\\x{5FFFE}-\\x{5FFFF}\\x{6FFFE}-\\x{6FFFF}\\x{7FFFE}-\\x{7FFFF}\\x{8FFFE}-\\x{8FFFF}\\x{9FFFE}-\\x{9FFFF}\\x{AFFFE}-\\x{AFFFF}\\x{BFFFE}-\\x{BFFFF}\\x{CFFFE}-\\x{CFFFF}\\x{DFFFE}-\\x{E0000}\\x{E0001}\\x{E0002}-\\x{E001F}\\x{E0020}-\\x{E007F}\\x{E0080}-\\x{E00FF}\\x{E0100}-\\x{E01EF}\\x{E01F0}-\\x{E0FFF}\\x{EFFFE}-\\x{EFFFF}\\x{FFFFE}-\\x{FFFFF}\\x{10FFFE}-\\x{10FFFF}]/u'; + const BIDI_STEP_1_RTL = '/^[\\x{0590}\\x{05BE}\\x{05C0}\\x{05C3}\\x{05C6}\\x{05C8}-\\x{05CF}\\x{05D0}-\\x{05EA}\\x{05EB}-\\x{05EE}\\x{05EF}-\\x{05F2}\\x{05F3}-\\x{05F4}\\x{05F5}-\\x{05FF}\\x{0608}\\x{060B}\\x{060D}\\x{061B}\\x{061C}\\x{061D}\\x{061E}-\\x{061F}\\x{0620}-\\x{063F}\\x{0640}\\x{0641}-\\x{064A}\\x{066D}\\x{066E}-\\x{066F}\\x{0671}-\\x{06D3}\\x{06D4}\\x{06D5}\\x{06E5}-\\x{06E6}\\x{06EE}-\\x{06EF}\\x{06FA}-\\x{06FC}\\x{06FD}-\\x{06FE}\\x{06FF}\\x{0700}-\\x{070D}\\x{070E}\\x{070F}\\x{0710}\\x{0712}-\\x{072F}\\x{074B}-\\x{074C}\\x{074D}-\\x{07A5}\\x{07B1}\\x{07B2}-\\x{07BF}\\x{07C0}-\\x{07C9}\\x{07CA}-\\x{07EA}\\x{07F4}-\\x{07F5}\\x{07FA}\\x{07FB}-\\x{07FC}\\x{07FE}-\\x{07FF}\\x{0800}-\\x{0815}\\x{081A}\\x{0824}\\x{0828}\\x{082E}-\\x{082F}\\x{0830}-\\x{083E}\\x{083F}\\x{0840}-\\x{0858}\\x{085C}-\\x{085D}\\x{085E}\\x{085F}\\x{0860}-\\x{086A}\\x{086B}-\\x{086F}\\x{0870}-\\x{089F}\\x{08A0}-\\x{08B4}\\x{08B5}\\x{08B6}-\\x{08C7}\\x{08C8}-\\x{08D2}\\x{200F}\\x{FB1D}\\x{FB1F}-\\x{FB28}\\x{FB2A}-\\x{FB36}\\x{FB37}\\x{FB38}-\\x{FB3C}\\x{FB3D}\\x{FB3E}\\x{FB3F}\\x{FB40}-\\x{FB41}\\x{FB42}\\x{FB43}-\\x{FB44}\\x{FB45}\\x{FB46}-\\x{FB4F}\\x{FB50}-\\x{FBB1}\\x{FBB2}-\\x{FBC1}\\x{FBC2}-\\x{FBD2}\\x{FBD3}-\\x{FD3D}\\x{FD40}-\\x{FD4F}\\x{FD50}-\\x{FD8F}\\x{FD90}-\\x{FD91}\\x{FD92}-\\x{FDC7}\\x{FDC8}-\\x{FDCF}\\x{FDF0}-\\x{FDFB}\\x{FDFC}\\x{FDFE}-\\x{FDFF}\\x{FE70}-\\x{FE74}\\x{FE75}\\x{FE76}-\\x{FEFC}\\x{FEFD}-\\x{FEFE}\\x{10800}-\\x{10805}\\x{10806}-\\x{10807}\\x{10808}\\x{10809}\\x{1080A}-\\x{10835}\\x{10836}\\x{10837}-\\x{10838}\\x{10839}-\\x{1083B}\\x{1083C}\\x{1083D}-\\x{1083E}\\x{1083F}-\\x{10855}\\x{10856}\\x{10857}\\x{10858}-\\x{1085F}\\x{10860}-\\x{10876}\\x{10877}-\\x{10878}\\x{10879}-\\x{1087F}\\x{10880}-\\x{1089E}\\x{1089F}-\\x{108A6}\\x{108A7}-\\x{108AF}\\x{108B0}-\\x{108DF}\\x{108E0}-\\x{108F2}\\x{108F3}\\x{108F4}-\\x{108F5}\\x{108F6}-\\x{108FA}\\x{108FB}-\\x{108FF}\\x{10900}-\\x{10915}\\x{10916}-\\x{1091B}\\x{1091C}-\\x{1091E}\\x{10920}-\\x{10939}\\x{1093A}-\\x{1093E}\\x{1093F}\\x{10940}-\\x{1097F}\\x{10980}-\\x{109B7}\\x{109B8}-\\x{109BB}\\x{109BC}-\\x{109BD}\\x{109BE}-\\x{109BF}\\x{109C0}-\\x{109CF}\\x{109D0}-\\x{109D1}\\x{109D2}-\\x{109FF}\\x{10A00}\\x{10A04}\\x{10A07}-\\x{10A0B}\\x{10A10}-\\x{10A13}\\x{10A14}\\x{10A15}-\\x{10A17}\\x{10A18}\\x{10A19}-\\x{10A35}\\x{10A36}-\\x{10A37}\\x{10A3B}-\\x{10A3E}\\x{10A40}-\\x{10A48}\\x{10A49}-\\x{10A4F}\\x{10A50}-\\x{10A58}\\x{10A59}-\\x{10A5F}\\x{10A60}-\\x{10A7C}\\x{10A7D}-\\x{10A7E}\\x{10A7F}\\x{10A80}-\\x{10A9C}\\x{10A9D}-\\x{10A9F}\\x{10AA0}-\\x{10ABF}\\x{10AC0}-\\x{10AC7}\\x{10AC8}\\x{10AC9}-\\x{10AE4}\\x{10AE7}-\\x{10AEA}\\x{10AEB}-\\x{10AEF}\\x{10AF0}-\\x{10AF6}\\x{10AF7}-\\x{10AFF}\\x{10B00}-\\x{10B35}\\x{10B36}-\\x{10B38}\\x{10B40}-\\x{10B55}\\x{10B56}-\\x{10B57}\\x{10B58}-\\x{10B5F}\\x{10B60}-\\x{10B72}\\x{10B73}-\\x{10B77}\\x{10B78}-\\x{10B7F}\\x{10B80}-\\x{10B91}\\x{10B92}-\\x{10B98}\\x{10B99}-\\x{10B9C}\\x{10B9D}-\\x{10BA8}\\x{10BA9}-\\x{10BAF}\\x{10BB0}-\\x{10BFF}\\x{10C00}-\\x{10C48}\\x{10C49}-\\x{10C7F}\\x{10C80}-\\x{10CB2}\\x{10CB3}-\\x{10CBF}\\x{10CC0}-\\x{10CF2}\\x{10CF3}-\\x{10CF9}\\x{10CFA}-\\x{10CFF}\\x{10D00}-\\x{10D23}\\x{10D28}-\\x{10D2F}\\x{10D3A}-\\x{10D3F}\\x{10D40}-\\x{10E5F}\\x{10E7F}\\x{10E80}-\\x{10EA9}\\x{10EAA}\\x{10EAD}\\x{10EAE}-\\x{10EAF}\\x{10EB0}-\\x{10EB1}\\x{10EB2}-\\x{10EFF}\\x{10F00}-\\x{10F1C}\\x{10F1D}-\\x{10F26}\\x{10F27}\\x{10F28}-\\x{10F2F}\\x{10F30}-\\x{10F45}\\x{10F51}-\\x{10F54}\\x{10F55}-\\x{10F59}\\x{10F5A}-\\x{10F6F}\\x{10F70}-\\x{10FAF}\\x{10FB0}-\\x{10FC4}\\x{10FC5}-\\x{10FCB}\\x{10FCC}-\\x{10FDF}\\x{10FE0}-\\x{10FF6}\\x{10FF7}-\\x{10FFF}\\x{1E800}-\\x{1E8C4}\\x{1E8C5}-\\x{1E8C6}\\x{1E8C7}-\\x{1E8CF}\\x{1E8D7}-\\x{1E8FF}\\x{1E900}-\\x{1E943}\\x{1E94B}\\x{1E94C}-\\x{1E94F}\\x{1E950}-\\x{1E959}\\x{1E95A}-\\x{1E95D}\\x{1E95E}-\\x{1E95F}\\x{1E960}-\\x{1EC6F}\\x{1EC70}\\x{1EC71}-\\x{1ECAB}\\x{1ECAC}\\x{1ECAD}-\\x{1ECAF}\\x{1ECB0}\\x{1ECB1}-\\x{1ECB4}\\x{1ECB5}-\\x{1ECBF}\\x{1ECC0}-\\x{1ECFF}\\x{1ED00}\\x{1ED01}-\\x{1ED2D}\\x{1ED2E}\\x{1ED2F}-\\x{1ED3D}\\x{1ED3E}-\\x{1ED4F}\\x{1ED50}-\\x{1EDFF}\\x{1EE00}-\\x{1EE03}\\x{1EE04}\\x{1EE05}-\\x{1EE1F}\\x{1EE20}\\x{1EE21}-\\x{1EE22}\\x{1EE23}\\x{1EE24}\\x{1EE25}-\\x{1EE26}\\x{1EE27}\\x{1EE28}\\x{1EE29}-\\x{1EE32}\\x{1EE33}\\x{1EE34}-\\x{1EE37}\\x{1EE38}\\x{1EE39}\\x{1EE3A}\\x{1EE3B}\\x{1EE3C}-\\x{1EE41}\\x{1EE42}\\x{1EE43}-\\x{1EE46}\\x{1EE47}\\x{1EE48}\\x{1EE49}\\x{1EE4A}\\x{1EE4B}\\x{1EE4C}\\x{1EE4D}-\\x{1EE4F}\\x{1EE50}\\x{1EE51}-\\x{1EE52}\\x{1EE53}\\x{1EE54}\\x{1EE55}-\\x{1EE56}\\x{1EE57}\\x{1EE58}\\x{1EE59}\\x{1EE5A}\\x{1EE5B}\\x{1EE5C}\\x{1EE5D}\\x{1EE5E}\\x{1EE5F}\\x{1EE60}\\x{1EE61}-\\x{1EE62}\\x{1EE63}\\x{1EE64}\\x{1EE65}-\\x{1EE66}\\x{1EE67}-\\x{1EE6A}\\x{1EE6B}\\x{1EE6C}-\\x{1EE72}\\x{1EE73}\\x{1EE74}-\\x{1EE77}\\x{1EE78}\\x{1EE79}-\\x{1EE7C}\\x{1EE7D}\\x{1EE7E}\\x{1EE7F}\\x{1EE80}-\\x{1EE89}\\x{1EE8A}\\x{1EE8B}-\\x{1EE9B}\\x{1EE9C}-\\x{1EEA0}\\x{1EEA1}-\\x{1EEA3}\\x{1EEA4}\\x{1EEA5}-\\x{1EEA9}\\x{1EEAA}\\x{1EEAB}-\\x{1EEBB}\\x{1EEBC}-\\x{1EEEF}\\x{1EEF2}-\\x{1EEFF}\\x{1EF00}-\\x{1EFFF}]/u'; + const BIDI_STEP_2 = '/[^\\x{0000}-\\x{0008}\\x{000E}-\\x{001B}\\x{0021}-\\x{0022}\\x{0023}\\x{0024}\\x{0025}\\x{0026}-\\x{0027}\\x{0028}\\x{0029}\\x{002A}\\x{002B}\\x{002C}\\x{002D}\\x{002E}-\\x{002F}\\x{0030}-\\x{0039}\\x{003A}\\x{003B}\\x{003C}-\\x{003E}\\x{003F}-\\x{0040}\\x{005B}\\x{005C}\\x{005D}\\x{005E}\\x{005F}\\x{0060}\\x{007B}\\x{007C}\\x{007D}\\x{007E}\\x{007F}-\\x{0084}\\x{0086}-\\x{009F}\\x{00A0}\\x{00A1}\\x{00A2}-\\x{00A5}\\x{00A6}\\x{00A7}\\x{00A8}\\x{00A9}\\x{00AB}\\x{00AC}\\x{00AD}\\x{00AE}\\x{00AF}\\x{00B0}\\x{00B1}\\x{00B2}-\\x{00B3}\\x{00B4}\\x{00B6}-\\x{00B7}\\x{00B8}\\x{00B9}\\x{00BB}\\x{00BC}-\\x{00BE}\\x{00BF}\\x{00D7}\\x{00F7}\\x{02B9}-\\x{02BA}\\x{02C2}-\\x{02C5}\\x{02C6}-\\x{02CF}\\x{02D2}-\\x{02DF}\\x{02E5}-\\x{02EB}\\x{02EC}\\x{02ED}\\x{02EF}-\\x{02FF}\\x{0300}-\\x{036F}\\x{0374}\\x{0375}\\x{037E}\\x{0384}-\\x{0385}\\x{0387}\\x{03F6}\\x{0483}-\\x{0487}\\x{0488}-\\x{0489}\\x{058A}\\x{058D}-\\x{058E}\\x{058F}\\x{0590}\\x{0591}-\\x{05BD}\\x{05BE}\\x{05BF}\\x{05C0}\\x{05C1}-\\x{05C2}\\x{05C3}\\x{05C4}-\\x{05C5}\\x{05C6}\\x{05C7}\\x{05C8}-\\x{05CF}\\x{05D0}-\\x{05EA}\\x{05EB}-\\x{05EE}\\x{05EF}-\\x{05F2}\\x{05F3}-\\x{05F4}\\x{05F5}-\\x{05FF}\\x{0600}-\\x{0605}\\x{0606}-\\x{0607}\\x{0608}\\x{0609}-\\x{060A}\\x{060B}\\x{060C}\\x{060D}\\x{060E}-\\x{060F}\\x{0610}-\\x{061A}\\x{061B}\\x{061C}\\x{061D}\\x{061E}-\\x{061F}\\x{0620}-\\x{063F}\\x{0640}\\x{0641}-\\x{064A}\\x{064B}-\\x{065F}\\x{0660}-\\x{0669}\\x{066A}\\x{066B}-\\x{066C}\\x{066D}\\x{066E}-\\x{066F}\\x{0670}\\x{0671}-\\x{06D3}\\x{06D4}\\x{06D5}\\x{06D6}-\\x{06DC}\\x{06DD}\\x{06DE}\\x{06DF}-\\x{06E4}\\x{06E5}-\\x{06E6}\\x{06E7}-\\x{06E8}\\x{06E9}\\x{06EA}-\\x{06ED}\\x{06EE}-\\x{06EF}\\x{06F0}-\\x{06F9}\\x{06FA}-\\x{06FC}\\x{06FD}-\\x{06FE}\\x{06FF}\\x{0700}-\\x{070D}\\x{070E}\\x{070F}\\x{0710}\\x{0711}\\x{0712}-\\x{072F}\\x{0730}-\\x{074A}\\x{074B}-\\x{074C}\\x{074D}-\\x{07A5}\\x{07A6}-\\x{07B0}\\x{07B1}\\x{07B2}-\\x{07BF}\\x{07C0}-\\x{07C9}\\x{07CA}-\\x{07EA}\\x{07EB}-\\x{07F3}\\x{07F4}-\\x{07F5}\\x{07F6}\\x{07F7}-\\x{07F9}\\x{07FA}\\x{07FB}-\\x{07FC}\\x{07FD}\\x{07FE}-\\x{07FF}\\x{0800}-\\x{0815}\\x{0816}-\\x{0819}\\x{081A}\\x{081B}-\\x{0823}\\x{0824}\\x{0825}-\\x{0827}\\x{0828}\\x{0829}-\\x{082D}\\x{082E}-\\x{082F}\\x{0830}-\\x{083E}\\x{083F}\\x{0840}-\\x{0858}\\x{0859}-\\x{085B}\\x{085C}-\\x{085D}\\x{085E}\\x{085F}\\x{0860}-\\x{086A}\\x{086B}-\\x{086F}\\x{0870}-\\x{089F}\\x{08A0}-\\x{08B4}\\x{08B5}\\x{08B6}-\\x{08C7}\\x{08C8}-\\x{08D2}\\x{08D3}-\\x{08E1}\\x{08E2}\\x{08E3}-\\x{0902}\\x{093A}\\x{093C}\\x{0941}-\\x{0948}\\x{094D}\\x{0951}-\\x{0957}\\x{0962}-\\x{0963}\\x{0981}\\x{09BC}\\x{09C1}-\\x{09C4}\\x{09CD}\\x{09E2}-\\x{09E3}\\x{09F2}-\\x{09F3}\\x{09FB}\\x{09FE}\\x{0A01}-\\x{0A02}\\x{0A3C}\\x{0A41}-\\x{0A42}\\x{0A47}-\\x{0A48}\\x{0A4B}-\\x{0A4D}\\x{0A51}\\x{0A70}-\\x{0A71}\\x{0A75}\\x{0A81}-\\x{0A82}\\x{0ABC}\\x{0AC1}-\\x{0AC5}\\x{0AC7}-\\x{0AC8}\\x{0ACD}\\x{0AE2}-\\x{0AE3}\\x{0AF1}\\x{0AFA}-\\x{0AFF}\\x{0B01}\\x{0B3C}\\x{0B3F}\\x{0B41}-\\x{0B44}\\x{0B4D}\\x{0B55}-\\x{0B56}\\x{0B62}-\\x{0B63}\\x{0B82}\\x{0BC0}\\x{0BCD}\\x{0BF3}-\\x{0BF8}\\x{0BF9}\\x{0BFA}\\x{0C00}\\x{0C04}\\x{0C3E}-\\x{0C40}\\x{0C46}-\\x{0C48}\\x{0C4A}-\\x{0C4D}\\x{0C55}-\\x{0C56}\\x{0C62}-\\x{0C63}\\x{0C78}-\\x{0C7E}\\x{0C81}\\x{0CBC}\\x{0CCC}-\\x{0CCD}\\x{0CE2}-\\x{0CE3}\\x{0D00}-\\x{0D01}\\x{0D3B}-\\x{0D3C}\\x{0D41}-\\x{0D44}\\x{0D4D}\\x{0D62}-\\x{0D63}\\x{0D81}\\x{0DCA}\\x{0DD2}-\\x{0DD4}\\x{0DD6}\\x{0E31}\\x{0E34}-\\x{0E3A}\\x{0E3F}\\x{0E47}-\\x{0E4E}\\x{0EB1}\\x{0EB4}-\\x{0EBC}\\x{0EC8}-\\x{0ECD}\\x{0F18}-\\x{0F19}\\x{0F35}\\x{0F37}\\x{0F39}\\x{0F3A}\\x{0F3B}\\x{0F3C}\\x{0F3D}\\x{0F71}-\\x{0F7E}\\x{0F80}-\\x{0F84}\\x{0F86}-\\x{0F87}\\x{0F8D}-\\x{0F97}\\x{0F99}-\\x{0FBC}\\x{0FC6}\\x{102D}-\\x{1030}\\x{1032}-\\x{1037}\\x{1039}-\\x{103A}\\x{103D}-\\x{103E}\\x{1058}-\\x{1059}\\x{105E}-\\x{1060}\\x{1071}-\\x{1074}\\x{1082}\\x{1085}-\\x{1086}\\x{108D}\\x{109D}\\x{135D}-\\x{135F}\\x{1390}-\\x{1399}\\x{1400}\\x{169B}\\x{169C}\\x{1712}-\\x{1714}\\x{1732}-\\x{1734}\\x{1752}-\\x{1753}\\x{1772}-\\x{1773}\\x{17B4}-\\x{17B5}\\x{17B7}-\\x{17BD}\\x{17C6}\\x{17C9}-\\x{17D3}\\x{17DB}\\x{17DD}\\x{17F0}-\\x{17F9}\\x{1800}-\\x{1805}\\x{1806}\\x{1807}-\\x{180A}\\x{180B}-\\x{180D}\\x{180E}\\x{1885}-\\x{1886}\\x{18A9}\\x{1920}-\\x{1922}\\x{1927}-\\x{1928}\\x{1932}\\x{1939}-\\x{193B}\\x{1940}\\x{1944}-\\x{1945}\\x{19DE}-\\x{19FF}\\x{1A17}-\\x{1A18}\\x{1A1B}\\x{1A56}\\x{1A58}-\\x{1A5E}\\x{1A60}\\x{1A62}\\x{1A65}-\\x{1A6C}\\x{1A73}-\\x{1A7C}\\x{1A7F}\\x{1AB0}-\\x{1ABD}\\x{1ABE}\\x{1ABF}-\\x{1AC0}\\x{1B00}-\\x{1B03}\\x{1B34}\\x{1B36}-\\x{1B3A}\\x{1B3C}\\x{1B42}\\x{1B6B}-\\x{1B73}\\x{1B80}-\\x{1B81}\\x{1BA2}-\\x{1BA5}\\x{1BA8}-\\x{1BA9}\\x{1BAB}-\\x{1BAD}\\x{1BE6}\\x{1BE8}-\\x{1BE9}\\x{1BED}\\x{1BEF}-\\x{1BF1}\\x{1C2C}-\\x{1C33}\\x{1C36}-\\x{1C37}\\x{1CD0}-\\x{1CD2}\\x{1CD4}-\\x{1CE0}\\x{1CE2}-\\x{1CE8}\\x{1CED}\\x{1CF4}\\x{1CF8}-\\x{1CF9}\\x{1DC0}-\\x{1DF9}\\x{1DFB}-\\x{1DFF}\\x{1FBD}\\x{1FBF}-\\x{1FC1}\\x{1FCD}-\\x{1FCF}\\x{1FDD}-\\x{1FDF}\\x{1FED}-\\x{1FEF}\\x{1FFD}-\\x{1FFE}\\x{200B}-\\x{200D}\\x{200F}\\x{2010}-\\x{2015}\\x{2016}-\\x{2017}\\x{2018}\\x{2019}\\x{201A}\\x{201B}-\\x{201C}\\x{201D}\\x{201E}\\x{201F}\\x{2020}-\\x{2027}\\x{202F}\\x{2030}-\\x{2034}\\x{2035}-\\x{2038}\\x{2039}\\x{203A}\\x{203B}-\\x{203E}\\x{203F}-\\x{2040}\\x{2041}-\\x{2043}\\x{2044}\\x{2045}\\x{2046}\\x{2047}-\\x{2051}\\x{2052}\\x{2053}\\x{2054}\\x{2055}-\\x{205E}\\x{2060}-\\x{2064}\\x{2065}\\x{206A}-\\x{206F}\\x{2070}\\x{2074}-\\x{2079}\\x{207A}-\\x{207B}\\x{207C}\\x{207D}\\x{207E}\\x{2080}-\\x{2089}\\x{208A}-\\x{208B}\\x{208C}\\x{208D}\\x{208E}\\x{20A0}-\\x{20BF}\\x{20C0}-\\x{20CF}\\x{20D0}-\\x{20DC}\\x{20DD}-\\x{20E0}\\x{20E1}\\x{20E2}-\\x{20E4}\\x{20E5}-\\x{20F0}\\x{2100}-\\x{2101}\\x{2103}-\\x{2106}\\x{2108}-\\x{2109}\\x{2114}\\x{2116}-\\x{2117}\\x{2118}\\x{211E}-\\x{2123}\\x{2125}\\x{2127}\\x{2129}\\x{212E}\\x{213A}-\\x{213B}\\x{2140}-\\x{2144}\\x{214A}\\x{214B}\\x{214C}-\\x{214D}\\x{2150}-\\x{215F}\\x{2189}\\x{218A}-\\x{218B}\\x{2190}-\\x{2194}\\x{2195}-\\x{2199}\\x{219A}-\\x{219B}\\x{219C}-\\x{219F}\\x{21A0}\\x{21A1}-\\x{21A2}\\x{21A3}\\x{21A4}-\\x{21A5}\\x{21A6}\\x{21A7}-\\x{21AD}\\x{21AE}\\x{21AF}-\\x{21CD}\\x{21CE}-\\x{21CF}\\x{21D0}-\\x{21D1}\\x{21D2}\\x{21D3}\\x{21D4}\\x{21D5}-\\x{21F3}\\x{21F4}-\\x{2211}\\x{2212}\\x{2213}\\x{2214}-\\x{22FF}\\x{2300}-\\x{2307}\\x{2308}\\x{2309}\\x{230A}\\x{230B}\\x{230C}-\\x{231F}\\x{2320}-\\x{2321}\\x{2322}-\\x{2328}\\x{2329}\\x{232A}\\x{232B}-\\x{2335}\\x{237B}\\x{237C}\\x{237D}-\\x{2394}\\x{2396}-\\x{239A}\\x{239B}-\\x{23B3}\\x{23B4}-\\x{23DB}\\x{23DC}-\\x{23E1}\\x{23E2}-\\x{2426}\\x{2440}-\\x{244A}\\x{2460}-\\x{2487}\\x{2488}-\\x{249B}\\x{24EA}-\\x{24FF}\\x{2500}-\\x{25B6}\\x{25B7}\\x{25B8}-\\x{25C0}\\x{25C1}\\x{25C2}-\\x{25F7}\\x{25F8}-\\x{25FF}\\x{2600}-\\x{266E}\\x{266F}\\x{2670}-\\x{26AB}\\x{26AD}-\\x{2767}\\x{2768}\\x{2769}\\x{276A}\\x{276B}\\x{276C}\\x{276D}\\x{276E}\\x{276F}\\x{2770}\\x{2771}\\x{2772}\\x{2773}\\x{2774}\\x{2775}\\x{2776}-\\x{2793}\\x{2794}-\\x{27BF}\\x{27C0}-\\x{27C4}\\x{27C5}\\x{27C6}\\x{27C7}-\\x{27E5}\\x{27E6}\\x{27E7}\\x{27E8}\\x{27E9}\\x{27EA}\\x{27EB}\\x{27EC}\\x{27ED}\\x{27EE}\\x{27EF}\\x{27F0}-\\x{27FF}\\x{2900}-\\x{2982}\\x{2983}\\x{2984}\\x{2985}\\x{2986}\\x{2987}\\x{2988}\\x{2989}\\x{298A}\\x{298B}\\x{298C}\\x{298D}\\x{298E}\\x{298F}\\x{2990}\\x{2991}\\x{2992}\\x{2993}\\x{2994}\\x{2995}\\x{2996}\\x{2997}\\x{2998}\\x{2999}-\\x{29D7}\\x{29D8}\\x{29D9}\\x{29DA}\\x{29DB}\\x{29DC}-\\x{29FB}\\x{29FC}\\x{29FD}\\x{29FE}-\\x{2AFF}\\x{2B00}-\\x{2B2F}\\x{2B30}-\\x{2B44}\\x{2B45}-\\x{2B46}\\x{2B47}-\\x{2B4C}\\x{2B4D}-\\x{2B73}\\x{2B76}-\\x{2B95}\\x{2B97}-\\x{2BFF}\\x{2CE5}-\\x{2CEA}\\x{2CEF}-\\x{2CF1}\\x{2CF9}-\\x{2CFC}\\x{2CFD}\\x{2CFE}-\\x{2CFF}\\x{2D7F}\\x{2DE0}-\\x{2DFF}\\x{2E00}-\\x{2E01}\\x{2E02}\\x{2E03}\\x{2E04}\\x{2E05}\\x{2E06}-\\x{2E08}\\x{2E09}\\x{2E0A}\\x{2E0B}\\x{2E0C}\\x{2E0D}\\x{2E0E}-\\x{2E16}\\x{2E17}\\x{2E18}-\\x{2E19}\\x{2E1A}\\x{2E1B}\\x{2E1C}\\x{2E1D}\\x{2E1E}-\\x{2E1F}\\x{2E20}\\x{2E21}\\x{2E22}\\x{2E23}\\x{2E24}\\x{2E25}\\x{2E26}\\x{2E27}\\x{2E28}\\x{2E29}\\x{2E2A}-\\x{2E2E}\\x{2E2F}\\x{2E30}-\\x{2E39}\\x{2E3A}-\\x{2E3B}\\x{2E3C}-\\x{2E3F}\\x{2E40}\\x{2E41}\\x{2E42}\\x{2E43}-\\x{2E4F}\\x{2E50}-\\x{2E51}\\x{2E52}\\x{2E80}-\\x{2E99}\\x{2E9B}-\\x{2EF3}\\x{2F00}-\\x{2FD5}\\x{2FF0}-\\x{2FFB}\\x{3001}-\\x{3003}\\x{3004}\\x{3008}\\x{3009}\\x{300A}\\x{300B}\\x{300C}\\x{300D}\\x{300E}\\x{300F}\\x{3010}\\x{3011}\\x{3012}-\\x{3013}\\x{3014}\\x{3015}\\x{3016}\\x{3017}\\x{3018}\\x{3019}\\x{301A}\\x{301B}\\x{301C}\\x{301D}\\x{301E}-\\x{301F}\\x{3020}\\x{302A}-\\x{302D}\\x{3030}\\x{3036}-\\x{3037}\\x{303D}\\x{303E}-\\x{303F}\\x{3099}-\\x{309A}\\x{309B}-\\x{309C}\\x{30A0}\\x{30FB}\\x{31C0}-\\x{31E3}\\x{321D}-\\x{321E}\\x{3250}\\x{3251}-\\x{325F}\\x{327C}-\\x{327E}\\x{32B1}-\\x{32BF}\\x{32CC}-\\x{32CF}\\x{3377}-\\x{337A}\\x{33DE}-\\x{33DF}\\x{33FF}\\x{4DC0}-\\x{4DFF}\\x{A490}-\\x{A4C6}\\x{A60D}-\\x{A60F}\\x{A66F}\\x{A670}-\\x{A672}\\x{A673}\\x{A674}-\\x{A67D}\\x{A67E}\\x{A67F}\\x{A69E}-\\x{A69F}\\x{A6F0}-\\x{A6F1}\\x{A700}-\\x{A716}\\x{A717}-\\x{A71F}\\x{A720}-\\x{A721}\\x{A788}\\x{A802}\\x{A806}\\x{A80B}\\x{A825}-\\x{A826}\\x{A828}-\\x{A82B}\\x{A82C}\\x{A838}\\x{A839}\\x{A874}-\\x{A877}\\x{A8C4}-\\x{A8C5}\\x{A8E0}-\\x{A8F1}\\x{A8FF}\\x{A926}-\\x{A92D}\\x{A947}-\\x{A951}\\x{A980}-\\x{A982}\\x{A9B3}\\x{A9B6}-\\x{A9B9}\\x{A9BC}-\\x{A9BD}\\x{A9E5}\\x{AA29}-\\x{AA2E}\\x{AA31}-\\x{AA32}\\x{AA35}-\\x{AA36}\\x{AA43}\\x{AA4C}\\x{AA7C}\\x{AAB0}\\x{AAB2}-\\x{AAB4}\\x{AAB7}-\\x{AAB8}\\x{AABE}-\\x{AABF}\\x{AAC1}\\x{AAEC}-\\x{AAED}\\x{AAF6}\\x{AB6A}-\\x{AB6B}\\x{ABE5}\\x{ABE8}\\x{ABED}\\x{FB1D}\\x{FB1E}\\x{FB1F}-\\x{FB28}\\x{FB29}\\x{FB2A}-\\x{FB36}\\x{FB37}\\x{FB38}-\\x{FB3C}\\x{FB3D}\\x{FB3E}\\x{FB3F}\\x{FB40}-\\x{FB41}\\x{FB42}\\x{FB43}-\\x{FB44}\\x{FB45}\\x{FB46}-\\x{FB4F}\\x{FB50}-\\x{FBB1}\\x{FBB2}-\\x{FBC1}\\x{FBC2}-\\x{FBD2}\\x{FBD3}-\\x{FD3D}\\x{FD3E}\\x{FD3F}\\x{FD40}-\\x{FD4F}\\x{FD50}-\\x{FD8F}\\x{FD90}-\\x{FD91}\\x{FD92}-\\x{FDC7}\\x{FDC8}-\\x{FDCF}\\x{FDD0}-\\x{FDEF}\\x{FDF0}-\\x{FDFB}\\x{FDFC}\\x{FDFD}\\x{FDFE}-\\x{FDFF}\\x{FE00}-\\x{FE0F}\\x{FE10}-\\x{FE16}\\x{FE17}\\x{FE18}\\x{FE19}\\x{FE20}-\\x{FE2F}\\x{FE30}\\x{FE31}-\\x{FE32}\\x{FE33}-\\x{FE34}\\x{FE35}\\x{FE36}\\x{FE37}\\x{FE38}\\x{FE39}\\x{FE3A}\\x{FE3B}\\x{FE3C}\\x{FE3D}\\x{FE3E}\\x{FE3F}\\x{FE40}\\x{FE41}\\x{FE42}\\x{FE43}\\x{FE44}\\x{FE45}-\\x{FE46}\\x{FE47}\\x{FE48}\\x{FE49}-\\x{FE4C}\\x{FE4D}-\\x{FE4F}\\x{FE50}\\x{FE51}\\x{FE52}\\x{FE54}\\x{FE55}\\x{FE56}-\\x{FE57}\\x{FE58}\\x{FE59}\\x{FE5A}\\x{FE5B}\\x{FE5C}\\x{FE5D}\\x{FE5E}\\x{FE5F}\\x{FE60}-\\x{FE61}\\x{FE62}\\x{FE63}\\x{FE64}-\\x{FE66}\\x{FE68}\\x{FE69}\\x{FE6A}\\x{FE6B}\\x{FE70}-\\x{FE74}\\x{FE75}\\x{FE76}-\\x{FEFC}\\x{FEFD}-\\x{FEFE}\\x{FEFF}\\x{FF01}-\\x{FF02}\\x{FF03}\\x{FF04}\\x{FF05}\\x{FF06}-\\x{FF07}\\x{FF08}\\x{FF09}\\x{FF0A}\\x{FF0B}\\x{FF0C}\\x{FF0D}\\x{FF0E}-\\x{FF0F}\\x{FF10}-\\x{FF19}\\x{FF1A}\\x{FF1B}\\x{FF1C}-\\x{FF1E}\\x{FF1F}-\\x{FF20}\\x{FF3B}\\x{FF3C}\\x{FF3D}\\x{FF3E}\\x{FF3F}\\x{FF40}\\x{FF5B}\\x{FF5C}\\x{FF5D}\\x{FF5E}\\x{FF5F}\\x{FF60}\\x{FF61}\\x{FF62}\\x{FF63}\\x{FF64}-\\x{FF65}\\x{FFE0}-\\x{FFE1}\\x{FFE2}\\x{FFE3}\\x{FFE4}\\x{FFE5}-\\x{FFE6}\\x{FFE8}\\x{FFE9}-\\x{FFEC}\\x{FFED}-\\x{FFEE}\\x{FFF0}-\\x{FFF8}\\x{FFF9}-\\x{FFFB}\\x{FFFC}-\\x{FFFD}\\x{FFFE}-\\x{FFFF}\\x{10101}\\x{10140}-\\x{10174}\\x{10175}-\\x{10178}\\x{10179}-\\x{10189}\\x{1018A}-\\x{1018B}\\x{1018C}\\x{10190}-\\x{1019C}\\x{101A0}\\x{101FD}\\x{102E0}\\x{102E1}-\\x{102FB}\\x{10376}-\\x{1037A}\\x{10800}-\\x{10805}\\x{10806}-\\x{10807}\\x{10808}\\x{10809}\\x{1080A}-\\x{10835}\\x{10836}\\x{10837}-\\x{10838}\\x{10839}-\\x{1083B}\\x{1083C}\\x{1083D}-\\x{1083E}\\x{1083F}-\\x{10855}\\x{10856}\\x{10857}\\x{10858}-\\x{1085F}\\x{10860}-\\x{10876}\\x{10877}-\\x{10878}\\x{10879}-\\x{1087F}\\x{10880}-\\x{1089E}\\x{1089F}-\\x{108A6}\\x{108A7}-\\x{108AF}\\x{108B0}-\\x{108DF}\\x{108E0}-\\x{108F2}\\x{108F3}\\x{108F4}-\\x{108F5}\\x{108F6}-\\x{108FA}\\x{108FB}-\\x{108FF}\\x{10900}-\\x{10915}\\x{10916}-\\x{1091B}\\x{1091C}-\\x{1091E}\\x{1091F}\\x{10920}-\\x{10939}\\x{1093A}-\\x{1093E}\\x{1093F}\\x{10940}-\\x{1097F}\\x{10980}-\\x{109B7}\\x{109B8}-\\x{109BB}\\x{109BC}-\\x{109BD}\\x{109BE}-\\x{109BF}\\x{109C0}-\\x{109CF}\\x{109D0}-\\x{109D1}\\x{109D2}-\\x{109FF}\\x{10A00}\\x{10A01}-\\x{10A03}\\x{10A04}\\x{10A05}-\\x{10A06}\\x{10A07}-\\x{10A0B}\\x{10A0C}-\\x{10A0F}\\x{10A10}-\\x{10A13}\\x{10A14}\\x{10A15}-\\x{10A17}\\x{10A18}\\x{10A19}-\\x{10A35}\\x{10A36}-\\x{10A37}\\x{10A38}-\\x{10A3A}\\x{10A3B}-\\x{10A3E}\\x{10A3F}\\x{10A40}-\\x{10A48}\\x{10A49}-\\x{10A4F}\\x{10A50}-\\x{10A58}\\x{10A59}-\\x{10A5F}\\x{10A60}-\\x{10A7C}\\x{10A7D}-\\x{10A7E}\\x{10A7F}\\x{10A80}-\\x{10A9C}\\x{10A9D}-\\x{10A9F}\\x{10AA0}-\\x{10ABF}\\x{10AC0}-\\x{10AC7}\\x{10AC8}\\x{10AC9}-\\x{10AE4}\\x{10AE5}-\\x{10AE6}\\x{10AE7}-\\x{10AEA}\\x{10AEB}-\\x{10AEF}\\x{10AF0}-\\x{10AF6}\\x{10AF7}-\\x{10AFF}\\x{10B00}-\\x{10B35}\\x{10B36}-\\x{10B38}\\x{10B39}-\\x{10B3F}\\x{10B40}-\\x{10B55}\\x{10B56}-\\x{10B57}\\x{10B58}-\\x{10B5F}\\x{10B60}-\\x{10B72}\\x{10B73}-\\x{10B77}\\x{10B78}-\\x{10B7F}\\x{10B80}-\\x{10B91}\\x{10B92}-\\x{10B98}\\x{10B99}-\\x{10B9C}\\x{10B9D}-\\x{10BA8}\\x{10BA9}-\\x{10BAF}\\x{10BB0}-\\x{10BFF}\\x{10C00}-\\x{10C48}\\x{10C49}-\\x{10C7F}\\x{10C80}-\\x{10CB2}\\x{10CB3}-\\x{10CBF}\\x{10CC0}-\\x{10CF2}\\x{10CF3}-\\x{10CF9}\\x{10CFA}-\\x{10CFF}\\x{10D00}-\\x{10D23}\\x{10D24}-\\x{10D27}\\x{10D28}-\\x{10D2F}\\x{10D30}-\\x{10D39}\\x{10D3A}-\\x{10D3F}\\x{10D40}-\\x{10E5F}\\x{10E60}-\\x{10E7E}\\x{10E7F}\\x{10E80}-\\x{10EA9}\\x{10EAA}\\x{10EAB}-\\x{10EAC}\\x{10EAD}\\x{10EAE}-\\x{10EAF}\\x{10EB0}-\\x{10EB1}\\x{10EB2}-\\x{10EFF}\\x{10F00}-\\x{10F1C}\\x{10F1D}-\\x{10F26}\\x{10F27}\\x{10F28}-\\x{10F2F}\\x{10F30}-\\x{10F45}\\x{10F46}-\\x{10F50}\\x{10F51}-\\x{10F54}\\x{10F55}-\\x{10F59}\\x{10F5A}-\\x{10F6F}\\x{10F70}-\\x{10FAF}\\x{10FB0}-\\x{10FC4}\\x{10FC5}-\\x{10FCB}\\x{10FCC}-\\x{10FDF}\\x{10FE0}-\\x{10FF6}\\x{10FF7}-\\x{10FFF}\\x{11001}\\x{11038}-\\x{11046}\\x{11052}-\\x{11065}\\x{1107F}-\\x{11081}\\x{110B3}-\\x{110B6}\\x{110B9}-\\x{110BA}\\x{11100}-\\x{11102}\\x{11127}-\\x{1112B}\\x{1112D}-\\x{11134}\\x{11173}\\x{11180}-\\x{11181}\\x{111B6}-\\x{111BE}\\x{111C9}-\\x{111CC}\\x{111CF}\\x{1122F}-\\x{11231}\\x{11234}\\x{11236}-\\x{11237}\\x{1123E}\\x{112DF}\\x{112E3}-\\x{112EA}\\x{11300}-\\x{11301}\\x{1133B}-\\x{1133C}\\x{11340}\\x{11366}-\\x{1136C}\\x{11370}-\\x{11374}\\x{11438}-\\x{1143F}\\x{11442}-\\x{11444}\\x{11446}\\x{1145E}\\x{114B3}-\\x{114B8}\\x{114BA}\\x{114BF}-\\x{114C0}\\x{114C2}-\\x{114C3}\\x{115B2}-\\x{115B5}\\x{115BC}-\\x{115BD}\\x{115BF}-\\x{115C0}\\x{115DC}-\\x{115DD}\\x{11633}-\\x{1163A}\\x{1163D}\\x{1163F}-\\x{11640}\\x{11660}-\\x{1166C}\\x{116AB}\\x{116AD}\\x{116B0}-\\x{116B5}\\x{116B7}\\x{1171D}-\\x{1171F}\\x{11722}-\\x{11725}\\x{11727}-\\x{1172B}\\x{1182F}-\\x{11837}\\x{11839}-\\x{1183A}\\x{1193B}-\\x{1193C}\\x{1193E}\\x{11943}\\x{119D4}-\\x{119D7}\\x{119DA}-\\x{119DB}\\x{119E0}\\x{11A01}-\\x{11A06}\\x{11A09}-\\x{11A0A}\\x{11A33}-\\x{11A38}\\x{11A3B}-\\x{11A3E}\\x{11A47}\\x{11A51}-\\x{11A56}\\x{11A59}-\\x{11A5B}\\x{11A8A}-\\x{11A96}\\x{11A98}-\\x{11A99}\\x{11C30}-\\x{11C36}\\x{11C38}-\\x{11C3D}\\x{11C92}-\\x{11CA7}\\x{11CAA}-\\x{11CB0}\\x{11CB2}-\\x{11CB3}\\x{11CB5}-\\x{11CB6}\\x{11D31}-\\x{11D36}\\x{11D3A}\\x{11D3C}-\\x{11D3D}\\x{11D3F}-\\x{11D45}\\x{11D47}\\x{11D90}-\\x{11D91}\\x{11D95}\\x{11D97}\\x{11EF3}-\\x{11EF4}\\x{11FD5}-\\x{11FDC}\\x{11FDD}-\\x{11FE0}\\x{11FE1}-\\x{11FF1}\\x{16AF0}-\\x{16AF4}\\x{16B30}-\\x{16B36}\\x{16F4F}\\x{16F8F}-\\x{16F92}\\x{16FE2}\\x{16FE4}\\x{1BC9D}-\\x{1BC9E}\\x{1BCA0}-\\x{1BCA3}\\x{1D167}-\\x{1D169}\\x{1D173}-\\x{1D17A}\\x{1D17B}-\\x{1D182}\\x{1D185}-\\x{1D18B}\\x{1D1AA}-\\x{1D1AD}\\x{1D200}-\\x{1D241}\\x{1D242}-\\x{1D244}\\x{1D245}\\x{1D300}-\\x{1D356}\\x{1D6DB}\\x{1D715}\\x{1D74F}\\x{1D789}\\x{1D7C3}\\x{1D7CE}-\\x{1D7FF}\\x{1DA00}-\\x{1DA36}\\x{1DA3B}-\\x{1DA6C}\\x{1DA75}\\x{1DA84}\\x{1DA9B}-\\x{1DA9F}\\x{1DAA1}-\\x{1DAAF}\\x{1E000}-\\x{1E006}\\x{1E008}-\\x{1E018}\\x{1E01B}-\\x{1E021}\\x{1E023}-\\x{1E024}\\x{1E026}-\\x{1E02A}\\x{1E130}-\\x{1E136}\\x{1E2EC}-\\x{1E2EF}\\x{1E2FF}\\x{1E800}-\\x{1E8C4}\\x{1E8C5}-\\x{1E8C6}\\x{1E8C7}-\\x{1E8CF}\\x{1E8D0}-\\x{1E8D6}\\x{1E8D7}-\\x{1E8FF}\\x{1E900}-\\x{1E943}\\x{1E944}-\\x{1E94A}\\x{1E94B}\\x{1E94C}-\\x{1E94F}\\x{1E950}-\\x{1E959}\\x{1E95A}-\\x{1E95D}\\x{1E95E}-\\x{1E95F}\\x{1E960}-\\x{1EC6F}\\x{1EC70}\\x{1EC71}-\\x{1ECAB}\\x{1ECAC}\\x{1ECAD}-\\x{1ECAF}\\x{1ECB0}\\x{1ECB1}-\\x{1ECB4}\\x{1ECB5}-\\x{1ECBF}\\x{1ECC0}-\\x{1ECFF}\\x{1ED00}\\x{1ED01}-\\x{1ED2D}\\x{1ED2E}\\x{1ED2F}-\\x{1ED3D}\\x{1ED3E}-\\x{1ED4F}\\x{1ED50}-\\x{1EDFF}\\x{1EE00}-\\x{1EE03}\\x{1EE04}\\x{1EE05}-\\x{1EE1F}\\x{1EE20}\\x{1EE21}-\\x{1EE22}\\x{1EE23}\\x{1EE24}\\x{1EE25}-\\x{1EE26}\\x{1EE27}\\x{1EE28}\\x{1EE29}-\\x{1EE32}\\x{1EE33}\\x{1EE34}-\\x{1EE37}\\x{1EE38}\\x{1EE39}\\x{1EE3A}\\x{1EE3B}\\x{1EE3C}-\\x{1EE41}\\x{1EE42}\\x{1EE43}-\\x{1EE46}\\x{1EE47}\\x{1EE48}\\x{1EE49}\\x{1EE4A}\\x{1EE4B}\\x{1EE4C}\\x{1EE4D}-\\x{1EE4F}\\x{1EE50}\\x{1EE51}-\\x{1EE52}\\x{1EE53}\\x{1EE54}\\x{1EE55}-\\x{1EE56}\\x{1EE57}\\x{1EE58}\\x{1EE59}\\x{1EE5A}\\x{1EE5B}\\x{1EE5C}\\x{1EE5D}\\x{1EE5E}\\x{1EE5F}\\x{1EE60}\\x{1EE61}-\\x{1EE62}\\x{1EE63}\\x{1EE64}\\x{1EE65}-\\x{1EE66}\\x{1EE67}-\\x{1EE6A}\\x{1EE6B}\\x{1EE6C}-\\x{1EE72}\\x{1EE73}\\x{1EE74}-\\x{1EE77}\\x{1EE78}\\x{1EE79}-\\x{1EE7C}\\x{1EE7D}\\x{1EE7E}\\x{1EE7F}\\x{1EE80}-\\x{1EE89}\\x{1EE8A}\\x{1EE8B}-\\x{1EE9B}\\x{1EE9C}-\\x{1EEA0}\\x{1EEA1}-\\x{1EEA3}\\x{1EEA4}\\x{1EEA5}-\\x{1EEA9}\\x{1EEAA}\\x{1EEAB}-\\x{1EEBB}\\x{1EEBC}-\\x{1EEEF}\\x{1EEF0}-\\x{1EEF1}\\x{1EEF2}-\\x{1EEFF}\\x{1EF00}-\\x{1EFFF}\\x{1F000}-\\x{1F02B}\\x{1F030}-\\x{1F093}\\x{1F0A0}-\\x{1F0AE}\\x{1F0B1}-\\x{1F0BF}\\x{1F0C1}-\\x{1F0CF}\\x{1F0D1}-\\x{1F0F5}\\x{1F100}-\\x{1F10A}\\x{1F10B}-\\x{1F10C}\\x{1F10D}-\\x{1F10F}\\x{1F12F}\\x{1F16A}-\\x{1F16F}\\x{1F1AD}\\x{1F260}-\\x{1F265}\\x{1F300}-\\x{1F3FA}\\x{1F3FB}-\\x{1F3FF}\\x{1F400}-\\x{1F6D7}\\x{1F6E0}-\\x{1F6EC}\\x{1F6F0}-\\x{1F6FC}\\x{1F700}-\\x{1F773}\\x{1F780}-\\x{1F7D8}\\x{1F7E0}-\\x{1F7EB}\\x{1F800}-\\x{1F80B}\\x{1F810}-\\x{1F847}\\x{1F850}-\\x{1F859}\\x{1F860}-\\x{1F887}\\x{1F890}-\\x{1F8AD}\\x{1F8B0}-\\x{1F8B1}\\x{1F900}-\\x{1F978}\\x{1F97A}-\\x{1F9CB}\\x{1F9CD}-\\x{1FA53}\\x{1FA60}-\\x{1FA6D}\\x{1FA70}-\\x{1FA74}\\x{1FA78}-\\x{1FA7A}\\x{1FA80}-\\x{1FA86}\\x{1FA90}-\\x{1FAA8}\\x{1FAB0}-\\x{1FAB6}\\x{1FAC0}-\\x{1FAC2}\\x{1FAD0}-\\x{1FAD6}\\x{1FB00}-\\x{1FB92}\\x{1FB94}-\\x{1FBCA}\\x{1FBF0}-\\x{1FBF9}\\x{1FFFE}-\\x{1FFFF}\\x{2FFFE}-\\x{2FFFF}\\x{3FFFE}-\\x{3FFFF}\\x{4FFFE}-\\x{4FFFF}\\x{5FFFE}-\\x{5FFFF}\\x{6FFFE}-\\x{6FFFF}\\x{7FFFE}-\\x{7FFFF}\\x{8FFFE}-\\x{8FFFF}\\x{9FFFE}-\\x{9FFFF}\\x{AFFFE}-\\x{AFFFF}\\x{BFFFE}-\\x{BFFFF}\\x{CFFFE}-\\x{CFFFF}\\x{DFFFE}-\\x{E0000}\\x{E0001}\\x{E0002}-\\x{E001F}\\x{E0020}-\\x{E007F}\\x{E0080}-\\x{E00FF}\\x{E0100}-\\x{E01EF}\\x{E01F0}-\\x{E0FFF}\\x{EFFFE}-\\x{EFFFF}\\x{FFFFE}-\\x{FFFFF}\\x{10FFFE}-\\x{10FFFF}]/u'; + const BIDI_STEP_3 = '/[\\x{0030}-\\x{0039}\\x{00B2}-\\x{00B3}\\x{00B9}\\x{0590}\\x{05BE}\\x{05C0}\\x{05C3}\\x{05C6}\\x{05C8}-\\x{05CF}\\x{05D0}-\\x{05EA}\\x{05EB}-\\x{05EE}\\x{05EF}-\\x{05F2}\\x{05F3}-\\x{05F4}\\x{05F5}-\\x{05FF}\\x{0600}-\\x{0605}\\x{0608}\\x{060B}\\x{060D}\\x{061B}\\x{061C}\\x{061D}\\x{061E}-\\x{061F}\\x{0620}-\\x{063F}\\x{0640}\\x{0641}-\\x{064A}\\x{0660}-\\x{0669}\\x{066B}-\\x{066C}\\x{066D}\\x{066E}-\\x{066F}\\x{0671}-\\x{06D3}\\x{06D4}\\x{06D5}\\x{06DD}\\x{06E5}-\\x{06E6}\\x{06EE}-\\x{06EF}\\x{06F0}-\\x{06F9}\\x{06FA}-\\x{06FC}\\x{06FD}-\\x{06FE}\\x{06FF}\\x{0700}-\\x{070D}\\x{070E}\\x{070F}\\x{0710}\\x{0712}-\\x{072F}\\x{074B}-\\x{074C}\\x{074D}-\\x{07A5}\\x{07B1}\\x{07B2}-\\x{07BF}\\x{07C0}-\\x{07C9}\\x{07CA}-\\x{07EA}\\x{07F4}-\\x{07F5}\\x{07FA}\\x{07FB}-\\x{07FC}\\x{07FE}-\\x{07FF}\\x{0800}-\\x{0815}\\x{081A}\\x{0824}\\x{0828}\\x{082E}-\\x{082F}\\x{0830}-\\x{083E}\\x{083F}\\x{0840}-\\x{0858}\\x{085C}-\\x{085D}\\x{085E}\\x{085F}\\x{0860}-\\x{086A}\\x{086B}-\\x{086F}\\x{0870}-\\x{089F}\\x{08A0}-\\x{08B4}\\x{08B5}\\x{08B6}-\\x{08C7}\\x{08C8}-\\x{08D2}\\x{08E2}\\x{200F}\\x{2070}\\x{2074}-\\x{2079}\\x{2080}-\\x{2089}\\x{2488}-\\x{249B}\\x{FB1D}\\x{FB1F}-\\x{FB28}\\x{FB2A}-\\x{FB36}\\x{FB37}\\x{FB38}-\\x{FB3C}\\x{FB3D}\\x{FB3E}\\x{FB3F}\\x{FB40}-\\x{FB41}\\x{FB42}\\x{FB43}-\\x{FB44}\\x{FB45}\\x{FB46}-\\x{FB4F}\\x{FB50}-\\x{FBB1}\\x{FBB2}-\\x{FBC1}\\x{FBC2}-\\x{FBD2}\\x{FBD3}-\\x{FD3D}\\x{FD40}-\\x{FD4F}\\x{FD50}-\\x{FD8F}\\x{FD90}-\\x{FD91}\\x{FD92}-\\x{FDC7}\\x{FDC8}-\\x{FDCF}\\x{FDF0}-\\x{FDFB}\\x{FDFC}\\x{FDFE}-\\x{FDFF}\\x{FE70}-\\x{FE74}\\x{FE75}\\x{FE76}-\\x{FEFC}\\x{FEFD}-\\x{FEFE}\\x{FF10}-\\x{FF19}\\x{102E1}-\\x{102FB}\\x{10800}-\\x{10805}\\x{10806}-\\x{10807}\\x{10808}\\x{10809}\\x{1080A}-\\x{10835}\\x{10836}\\x{10837}-\\x{10838}\\x{10839}-\\x{1083B}\\x{1083C}\\x{1083D}-\\x{1083E}\\x{1083F}-\\x{10855}\\x{10856}\\x{10857}\\x{10858}-\\x{1085F}\\x{10860}-\\x{10876}\\x{10877}-\\x{10878}\\x{10879}-\\x{1087F}\\x{10880}-\\x{1089E}\\x{1089F}-\\x{108A6}\\x{108A7}-\\x{108AF}\\x{108B0}-\\x{108DF}\\x{108E0}-\\x{108F2}\\x{108F3}\\x{108F4}-\\x{108F5}\\x{108F6}-\\x{108FA}\\x{108FB}-\\x{108FF}\\x{10900}-\\x{10915}\\x{10916}-\\x{1091B}\\x{1091C}-\\x{1091E}\\x{10920}-\\x{10939}\\x{1093A}-\\x{1093E}\\x{1093F}\\x{10940}-\\x{1097F}\\x{10980}-\\x{109B7}\\x{109B8}-\\x{109BB}\\x{109BC}-\\x{109BD}\\x{109BE}-\\x{109BF}\\x{109C0}-\\x{109CF}\\x{109D0}-\\x{109D1}\\x{109D2}-\\x{109FF}\\x{10A00}\\x{10A04}\\x{10A07}-\\x{10A0B}\\x{10A10}-\\x{10A13}\\x{10A14}\\x{10A15}-\\x{10A17}\\x{10A18}\\x{10A19}-\\x{10A35}\\x{10A36}-\\x{10A37}\\x{10A3B}-\\x{10A3E}\\x{10A40}-\\x{10A48}\\x{10A49}-\\x{10A4F}\\x{10A50}-\\x{10A58}\\x{10A59}-\\x{10A5F}\\x{10A60}-\\x{10A7C}\\x{10A7D}-\\x{10A7E}\\x{10A7F}\\x{10A80}-\\x{10A9C}\\x{10A9D}-\\x{10A9F}\\x{10AA0}-\\x{10ABF}\\x{10AC0}-\\x{10AC7}\\x{10AC8}\\x{10AC9}-\\x{10AE4}\\x{10AE7}-\\x{10AEA}\\x{10AEB}-\\x{10AEF}\\x{10AF0}-\\x{10AF6}\\x{10AF7}-\\x{10AFF}\\x{10B00}-\\x{10B35}\\x{10B36}-\\x{10B38}\\x{10B40}-\\x{10B55}\\x{10B56}-\\x{10B57}\\x{10B58}-\\x{10B5F}\\x{10B60}-\\x{10B72}\\x{10B73}-\\x{10B77}\\x{10B78}-\\x{10B7F}\\x{10B80}-\\x{10B91}\\x{10B92}-\\x{10B98}\\x{10B99}-\\x{10B9C}\\x{10B9D}-\\x{10BA8}\\x{10BA9}-\\x{10BAF}\\x{10BB0}-\\x{10BFF}\\x{10C00}-\\x{10C48}\\x{10C49}-\\x{10C7F}\\x{10C80}-\\x{10CB2}\\x{10CB3}-\\x{10CBF}\\x{10CC0}-\\x{10CF2}\\x{10CF3}-\\x{10CF9}\\x{10CFA}-\\x{10CFF}\\x{10D00}-\\x{10D23}\\x{10D28}-\\x{10D2F}\\x{10D30}-\\x{10D39}\\x{10D3A}-\\x{10D3F}\\x{10D40}-\\x{10E5F}\\x{10E60}-\\x{10E7E}\\x{10E7F}\\x{10E80}-\\x{10EA9}\\x{10EAA}\\x{10EAD}\\x{10EAE}-\\x{10EAF}\\x{10EB0}-\\x{10EB1}\\x{10EB2}-\\x{10EFF}\\x{10F00}-\\x{10F1C}\\x{10F1D}-\\x{10F26}\\x{10F27}\\x{10F28}-\\x{10F2F}\\x{10F30}-\\x{10F45}\\x{10F51}-\\x{10F54}\\x{10F55}-\\x{10F59}\\x{10F5A}-\\x{10F6F}\\x{10F70}-\\x{10FAF}\\x{10FB0}-\\x{10FC4}\\x{10FC5}-\\x{10FCB}\\x{10FCC}-\\x{10FDF}\\x{10FE0}-\\x{10FF6}\\x{10FF7}-\\x{10FFF}\\x{1D7CE}-\\x{1D7FF}\\x{1E800}-\\x{1E8C4}\\x{1E8C5}-\\x{1E8C6}\\x{1E8C7}-\\x{1E8CF}\\x{1E8D7}-\\x{1E8FF}\\x{1E900}-\\x{1E943}\\x{1E94B}\\x{1E94C}-\\x{1E94F}\\x{1E950}-\\x{1E959}\\x{1E95A}-\\x{1E95D}\\x{1E95E}-\\x{1E95F}\\x{1E960}-\\x{1EC6F}\\x{1EC70}\\x{1EC71}-\\x{1ECAB}\\x{1ECAC}\\x{1ECAD}-\\x{1ECAF}\\x{1ECB0}\\x{1ECB1}-\\x{1ECB4}\\x{1ECB5}-\\x{1ECBF}\\x{1ECC0}-\\x{1ECFF}\\x{1ED00}\\x{1ED01}-\\x{1ED2D}\\x{1ED2E}\\x{1ED2F}-\\x{1ED3D}\\x{1ED3E}-\\x{1ED4F}\\x{1ED50}-\\x{1EDFF}\\x{1EE00}-\\x{1EE03}\\x{1EE04}\\x{1EE05}-\\x{1EE1F}\\x{1EE20}\\x{1EE21}-\\x{1EE22}\\x{1EE23}\\x{1EE24}\\x{1EE25}-\\x{1EE26}\\x{1EE27}\\x{1EE28}\\x{1EE29}-\\x{1EE32}\\x{1EE33}\\x{1EE34}-\\x{1EE37}\\x{1EE38}\\x{1EE39}\\x{1EE3A}\\x{1EE3B}\\x{1EE3C}-\\x{1EE41}\\x{1EE42}\\x{1EE43}-\\x{1EE46}\\x{1EE47}\\x{1EE48}\\x{1EE49}\\x{1EE4A}\\x{1EE4B}\\x{1EE4C}\\x{1EE4D}-\\x{1EE4F}\\x{1EE50}\\x{1EE51}-\\x{1EE52}\\x{1EE53}\\x{1EE54}\\x{1EE55}-\\x{1EE56}\\x{1EE57}\\x{1EE58}\\x{1EE59}\\x{1EE5A}\\x{1EE5B}\\x{1EE5C}\\x{1EE5D}\\x{1EE5E}\\x{1EE5F}\\x{1EE60}\\x{1EE61}-\\x{1EE62}\\x{1EE63}\\x{1EE64}\\x{1EE65}-\\x{1EE66}\\x{1EE67}-\\x{1EE6A}\\x{1EE6B}\\x{1EE6C}-\\x{1EE72}\\x{1EE73}\\x{1EE74}-\\x{1EE77}\\x{1EE78}\\x{1EE79}-\\x{1EE7C}\\x{1EE7D}\\x{1EE7E}\\x{1EE7F}\\x{1EE80}-\\x{1EE89}\\x{1EE8A}\\x{1EE8B}-\\x{1EE9B}\\x{1EE9C}-\\x{1EEA0}\\x{1EEA1}-\\x{1EEA3}\\x{1EEA4}\\x{1EEA5}-\\x{1EEA9}\\x{1EEAA}\\x{1EEAB}-\\x{1EEBB}\\x{1EEBC}-\\x{1EEEF}\\x{1EEF2}-\\x{1EEFF}\\x{1EF00}-\\x{1EFFF}\\x{1F100}-\\x{1F10A}\\x{1FBF0}-\\x{1FBF9}][\\x{0300}-\\x{036F}\\x{0483}-\\x{0487}\\x{0488}-\\x{0489}\\x{0591}-\\x{05BD}\\x{05BF}\\x{05C1}-\\x{05C2}\\x{05C4}-\\x{05C5}\\x{05C7}\\x{0610}-\\x{061A}\\x{064B}-\\x{065F}\\x{0670}\\x{06D6}-\\x{06DC}\\x{06DF}-\\x{06E4}\\x{06E7}-\\x{06E8}\\x{06EA}-\\x{06ED}\\x{0711}\\x{0730}-\\x{074A}\\x{07A6}-\\x{07B0}\\x{07EB}-\\x{07F3}\\x{07FD}\\x{0816}-\\x{0819}\\x{081B}-\\x{0823}\\x{0825}-\\x{0827}\\x{0829}-\\x{082D}\\x{0859}-\\x{085B}\\x{08D3}-\\x{08E1}\\x{08E3}-\\x{0902}\\x{093A}\\x{093C}\\x{0941}-\\x{0948}\\x{094D}\\x{0951}-\\x{0957}\\x{0962}-\\x{0963}\\x{0981}\\x{09BC}\\x{09C1}-\\x{09C4}\\x{09CD}\\x{09E2}-\\x{09E3}\\x{09FE}\\x{0A01}-\\x{0A02}\\x{0A3C}\\x{0A41}-\\x{0A42}\\x{0A47}-\\x{0A48}\\x{0A4B}-\\x{0A4D}\\x{0A51}\\x{0A70}-\\x{0A71}\\x{0A75}\\x{0A81}-\\x{0A82}\\x{0ABC}\\x{0AC1}-\\x{0AC5}\\x{0AC7}-\\x{0AC8}\\x{0ACD}\\x{0AE2}-\\x{0AE3}\\x{0AFA}-\\x{0AFF}\\x{0B01}\\x{0B3C}\\x{0B3F}\\x{0B41}-\\x{0B44}\\x{0B4D}\\x{0B55}-\\x{0B56}\\x{0B62}-\\x{0B63}\\x{0B82}\\x{0BC0}\\x{0BCD}\\x{0C00}\\x{0C04}\\x{0C3E}-\\x{0C40}\\x{0C46}-\\x{0C48}\\x{0C4A}-\\x{0C4D}\\x{0C55}-\\x{0C56}\\x{0C62}-\\x{0C63}\\x{0C81}\\x{0CBC}\\x{0CCC}-\\x{0CCD}\\x{0CE2}-\\x{0CE3}\\x{0D00}-\\x{0D01}\\x{0D3B}-\\x{0D3C}\\x{0D41}-\\x{0D44}\\x{0D4D}\\x{0D62}-\\x{0D63}\\x{0D81}\\x{0DCA}\\x{0DD2}-\\x{0DD4}\\x{0DD6}\\x{0E31}\\x{0E34}-\\x{0E3A}\\x{0E47}-\\x{0E4E}\\x{0EB1}\\x{0EB4}-\\x{0EBC}\\x{0EC8}-\\x{0ECD}\\x{0F18}-\\x{0F19}\\x{0F35}\\x{0F37}\\x{0F39}\\x{0F71}-\\x{0F7E}\\x{0F80}-\\x{0F84}\\x{0F86}-\\x{0F87}\\x{0F8D}-\\x{0F97}\\x{0F99}-\\x{0FBC}\\x{0FC6}\\x{102D}-\\x{1030}\\x{1032}-\\x{1037}\\x{1039}-\\x{103A}\\x{103D}-\\x{103E}\\x{1058}-\\x{1059}\\x{105E}-\\x{1060}\\x{1071}-\\x{1074}\\x{1082}\\x{1085}-\\x{1086}\\x{108D}\\x{109D}\\x{135D}-\\x{135F}\\x{1712}-\\x{1714}\\x{1732}-\\x{1734}\\x{1752}-\\x{1753}\\x{1772}-\\x{1773}\\x{17B4}-\\x{17B5}\\x{17B7}-\\x{17BD}\\x{17C6}\\x{17C9}-\\x{17D3}\\x{17DD}\\x{180B}-\\x{180D}\\x{1885}-\\x{1886}\\x{18A9}\\x{1920}-\\x{1922}\\x{1927}-\\x{1928}\\x{1932}\\x{1939}-\\x{193B}\\x{1A17}-\\x{1A18}\\x{1A1B}\\x{1A56}\\x{1A58}-\\x{1A5E}\\x{1A60}\\x{1A62}\\x{1A65}-\\x{1A6C}\\x{1A73}-\\x{1A7C}\\x{1A7F}\\x{1AB0}-\\x{1ABD}\\x{1ABE}\\x{1ABF}-\\x{1AC0}\\x{1B00}-\\x{1B03}\\x{1B34}\\x{1B36}-\\x{1B3A}\\x{1B3C}\\x{1B42}\\x{1B6B}-\\x{1B73}\\x{1B80}-\\x{1B81}\\x{1BA2}-\\x{1BA5}\\x{1BA8}-\\x{1BA9}\\x{1BAB}-\\x{1BAD}\\x{1BE6}\\x{1BE8}-\\x{1BE9}\\x{1BED}\\x{1BEF}-\\x{1BF1}\\x{1C2C}-\\x{1C33}\\x{1C36}-\\x{1C37}\\x{1CD0}-\\x{1CD2}\\x{1CD4}-\\x{1CE0}\\x{1CE2}-\\x{1CE8}\\x{1CED}\\x{1CF4}\\x{1CF8}-\\x{1CF9}\\x{1DC0}-\\x{1DF9}\\x{1DFB}-\\x{1DFF}\\x{20D0}-\\x{20DC}\\x{20DD}-\\x{20E0}\\x{20E1}\\x{20E2}-\\x{20E4}\\x{20E5}-\\x{20F0}\\x{2CEF}-\\x{2CF1}\\x{2D7F}\\x{2DE0}-\\x{2DFF}\\x{302A}-\\x{302D}\\x{3099}-\\x{309A}\\x{A66F}\\x{A670}-\\x{A672}\\x{A674}-\\x{A67D}\\x{A69E}-\\x{A69F}\\x{A6F0}-\\x{A6F1}\\x{A802}\\x{A806}\\x{A80B}\\x{A825}-\\x{A826}\\x{A82C}\\x{A8C4}-\\x{A8C5}\\x{A8E0}-\\x{A8F1}\\x{A8FF}\\x{A926}-\\x{A92D}\\x{A947}-\\x{A951}\\x{A980}-\\x{A982}\\x{A9B3}\\x{A9B6}-\\x{A9B9}\\x{A9BC}-\\x{A9BD}\\x{A9E5}\\x{AA29}-\\x{AA2E}\\x{AA31}-\\x{AA32}\\x{AA35}-\\x{AA36}\\x{AA43}\\x{AA4C}\\x{AA7C}\\x{AAB0}\\x{AAB2}-\\x{AAB4}\\x{AAB7}-\\x{AAB8}\\x{AABE}-\\x{AABF}\\x{AAC1}\\x{AAEC}-\\x{AAED}\\x{AAF6}\\x{ABE5}\\x{ABE8}\\x{ABED}\\x{FB1E}\\x{FE00}-\\x{FE0F}\\x{FE20}-\\x{FE2F}\\x{101FD}\\x{102E0}\\x{10376}-\\x{1037A}\\x{10A01}-\\x{10A03}\\x{10A05}-\\x{10A06}\\x{10A0C}-\\x{10A0F}\\x{10A38}-\\x{10A3A}\\x{10A3F}\\x{10AE5}-\\x{10AE6}\\x{10D24}-\\x{10D27}\\x{10EAB}-\\x{10EAC}\\x{10F46}-\\x{10F50}\\x{11001}\\x{11038}-\\x{11046}\\x{1107F}-\\x{11081}\\x{110B3}-\\x{110B6}\\x{110B9}-\\x{110BA}\\x{11100}-\\x{11102}\\x{11127}-\\x{1112B}\\x{1112D}-\\x{11134}\\x{11173}\\x{11180}-\\x{11181}\\x{111B6}-\\x{111BE}\\x{111C9}-\\x{111CC}\\x{111CF}\\x{1122F}-\\x{11231}\\x{11234}\\x{11236}-\\x{11237}\\x{1123E}\\x{112DF}\\x{112E3}-\\x{112EA}\\x{11300}-\\x{11301}\\x{1133B}-\\x{1133C}\\x{11340}\\x{11366}-\\x{1136C}\\x{11370}-\\x{11374}\\x{11438}-\\x{1143F}\\x{11442}-\\x{11444}\\x{11446}\\x{1145E}\\x{114B3}-\\x{114B8}\\x{114BA}\\x{114BF}-\\x{114C0}\\x{114C2}-\\x{114C3}\\x{115B2}-\\x{115B5}\\x{115BC}-\\x{115BD}\\x{115BF}-\\x{115C0}\\x{115DC}-\\x{115DD}\\x{11633}-\\x{1163A}\\x{1163D}\\x{1163F}-\\x{11640}\\x{116AB}\\x{116AD}\\x{116B0}-\\x{116B5}\\x{116B7}\\x{1171D}-\\x{1171F}\\x{11722}-\\x{11725}\\x{11727}-\\x{1172B}\\x{1182F}-\\x{11837}\\x{11839}-\\x{1183A}\\x{1193B}-\\x{1193C}\\x{1193E}\\x{11943}\\x{119D4}-\\x{119D7}\\x{119DA}-\\x{119DB}\\x{119E0}\\x{11A01}-\\x{11A06}\\x{11A09}-\\x{11A0A}\\x{11A33}-\\x{11A38}\\x{11A3B}-\\x{11A3E}\\x{11A47}\\x{11A51}-\\x{11A56}\\x{11A59}-\\x{11A5B}\\x{11A8A}-\\x{11A96}\\x{11A98}-\\x{11A99}\\x{11C30}-\\x{11C36}\\x{11C38}-\\x{11C3D}\\x{11C92}-\\x{11CA7}\\x{11CAA}-\\x{11CB0}\\x{11CB2}-\\x{11CB3}\\x{11CB5}-\\x{11CB6}\\x{11D31}-\\x{11D36}\\x{11D3A}\\x{11D3C}-\\x{11D3D}\\x{11D3F}-\\x{11D45}\\x{11D47}\\x{11D90}-\\x{11D91}\\x{11D95}\\x{11D97}\\x{11EF3}-\\x{11EF4}\\x{16AF0}-\\x{16AF4}\\x{16B30}-\\x{16B36}\\x{16F4F}\\x{16F8F}-\\x{16F92}\\x{16FE4}\\x{1BC9D}-\\x{1BC9E}\\x{1D167}-\\x{1D169}\\x{1D17B}-\\x{1D182}\\x{1D185}-\\x{1D18B}\\x{1D1AA}-\\x{1D1AD}\\x{1D242}-\\x{1D244}\\x{1DA00}-\\x{1DA36}\\x{1DA3B}-\\x{1DA6C}\\x{1DA75}\\x{1DA84}\\x{1DA9B}-\\x{1DA9F}\\x{1DAA1}-\\x{1DAAF}\\x{1E000}-\\x{1E006}\\x{1E008}-\\x{1E018}\\x{1E01B}-\\x{1E021}\\x{1E023}-\\x{1E024}\\x{1E026}-\\x{1E02A}\\x{1E130}-\\x{1E136}\\x{1E2EC}-\\x{1E2EF}\\x{1E8D0}-\\x{1E8D6}\\x{1E944}-\\x{1E94A}\\x{E0100}-\\x{E01EF}]*$/u'; + const BIDI_STEP_4_AN = '/[\\x{0600}-\\x{0605}\\x{0660}-\\x{0669}\\x{066B}-\\x{066C}\\x{06DD}\\x{08E2}\\x{10D30}-\\x{10D39}\\x{10E60}-\\x{10E7E}]/u'; + const BIDI_STEP_4_EN = '/[\\x{0030}-\\x{0039}\\x{00B2}-\\x{00B3}\\x{00B9}\\x{06F0}-\\x{06F9}\\x{2070}\\x{2074}-\\x{2079}\\x{2080}-\\x{2089}\\x{2488}-\\x{249B}\\x{FF10}-\\x{FF19}\\x{102E1}-\\x{102FB}\\x{1D7CE}-\\x{1D7FF}\\x{1F100}-\\x{1F10A}\\x{1FBF0}-\\x{1FBF9}]/u'; + const BIDI_STEP_5 = '/[\\x{0009}\\x{000A}\\x{000B}\\x{000C}\\x{000D}\\x{001C}-\\x{001E}\\x{001F}\\x{0020}\\x{0085}\\x{0590}\\x{05BE}\\x{05C0}\\x{05C3}\\x{05C6}\\x{05C8}-\\x{05CF}\\x{05D0}-\\x{05EA}\\x{05EB}-\\x{05EE}\\x{05EF}-\\x{05F2}\\x{05F3}-\\x{05F4}\\x{05F5}-\\x{05FF}\\x{0600}-\\x{0605}\\x{0608}\\x{060B}\\x{060D}\\x{061B}\\x{061C}\\x{061D}\\x{061E}-\\x{061F}\\x{0620}-\\x{063F}\\x{0640}\\x{0641}-\\x{064A}\\x{0660}-\\x{0669}\\x{066B}-\\x{066C}\\x{066D}\\x{066E}-\\x{066F}\\x{0671}-\\x{06D3}\\x{06D4}\\x{06D5}\\x{06DD}\\x{06E5}-\\x{06E6}\\x{06EE}-\\x{06EF}\\x{06FA}-\\x{06FC}\\x{06FD}-\\x{06FE}\\x{06FF}\\x{0700}-\\x{070D}\\x{070E}\\x{070F}\\x{0710}\\x{0712}-\\x{072F}\\x{074B}-\\x{074C}\\x{074D}-\\x{07A5}\\x{07B1}\\x{07B2}-\\x{07BF}\\x{07C0}-\\x{07C9}\\x{07CA}-\\x{07EA}\\x{07F4}-\\x{07F5}\\x{07FA}\\x{07FB}-\\x{07FC}\\x{07FE}-\\x{07FF}\\x{0800}-\\x{0815}\\x{081A}\\x{0824}\\x{0828}\\x{082E}-\\x{082F}\\x{0830}-\\x{083E}\\x{083F}\\x{0840}-\\x{0858}\\x{085C}-\\x{085D}\\x{085E}\\x{085F}\\x{0860}-\\x{086A}\\x{086B}-\\x{086F}\\x{0870}-\\x{089F}\\x{08A0}-\\x{08B4}\\x{08B5}\\x{08B6}-\\x{08C7}\\x{08C8}-\\x{08D2}\\x{08E2}\\x{1680}\\x{2000}-\\x{200A}\\x{200F}\\x{2028}\\x{2029}\\x{202A}\\x{202B}\\x{202C}\\x{202D}\\x{202E}\\x{205F}\\x{2066}\\x{2067}\\x{2068}\\x{2069}\\x{3000}\\x{FB1D}\\x{FB1F}-\\x{FB28}\\x{FB2A}-\\x{FB36}\\x{FB37}\\x{FB38}-\\x{FB3C}\\x{FB3D}\\x{FB3E}\\x{FB3F}\\x{FB40}-\\x{FB41}\\x{FB42}\\x{FB43}-\\x{FB44}\\x{FB45}\\x{FB46}-\\x{FB4F}\\x{FB50}-\\x{FBB1}\\x{FBB2}-\\x{FBC1}\\x{FBC2}-\\x{FBD2}\\x{FBD3}-\\x{FD3D}\\x{FD40}-\\x{FD4F}\\x{FD50}-\\x{FD8F}\\x{FD90}-\\x{FD91}\\x{FD92}-\\x{FDC7}\\x{FDC8}-\\x{FDCF}\\x{FDF0}-\\x{FDFB}\\x{FDFC}\\x{FDFE}-\\x{FDFF}\\x{FE70}-\\x{FE74}\\x{FE75}\\x{FE76}-\\x{FEFC}\\x{FEFD}-\\x{FEFE}\\x{10800}-\\x{10805}\\x{10806}-\\x{10807}\\x{10808}\\x{10809}\\x{1080A}-\\x{10835}\\x{10836}\\x{10837}-\\x{10838}\\x{10839}-\\x{1083B}\\x{1083C}\\x{1083D}-\\x{1083E}\\x{1083F}-\\x{10855}\\x{10856}\\x{10857}\\x{10858}-\\x{1085F}\\x{10860}-\\x{10876}\\x{10877}-\\x{10878}\\x{10879}-\\x{1087F}\\x{10880}-\\x{1089E}\\x{1089F}-\\x{108A6}\\x{108A7}-\\x{108AF}\\x{108B0}-\\x{108DF}\\x{108E0}-\\x{108F2}\\x{108F3}\\x{108F4}-\\x{108F5}\\x{108F6}-\\x{108FA}\\x{108FB}-\\x{108FF}\\x{10900}-\\x{10915}\\x{10916}-\\x{1091B}\\x{1091C}-\\x{1091E}\\x{10920}-\\x{10939}\\x{1093A}-\\x{1093E}\\x{1093F}\\x{10940}-\\x{1097F}\\x{10980}-\\x{109B7}\\x{109B8}-\\x{109BB}\\x{109BC}-\\x{109BD}\\x{109BE}-\\x{109BF}\\x{109C0}-\\x{109CF}\\x{109D0}-\\x{109D1}\\x{109D2}-\\x{109FF}\\x{10A00}\\x{10A04}\\x{10A07}-\\x{10A0B}\\x{10A10}-\\x{10A13}\\x{10A14}\\x{10A15}-\\x{10A17}\\x{10A18}\\x{10A19}-\\x{10A35}\\x{10A36}-\\x{10A37}\\x{10A3B}-\\x{10A3E}\\x{10A40}-\\x{10A48}\\x{10A49}-\\x{10A4F}\\x{10A50}-\\x{10A58}\\x{10A59}-\\x{10A5F}\\x{10A60}-\\x{10A7C}\\x{10A7D}-\\x{10A7E}\\x{10A7F}\\x{10A80}-\\x{10A9C}\\x{10A9D}-\\x{10A9F}\\x{10AA0}-\\x{10ABF}\\x{10AC0}-\\x{10AC7}\\x{10AC8}\\x{10AC9}-\\x{10AE4}\\x{10AE7}-\\x{10AEA}\\x{10AEB}-\\x{10AEF}\\x{10AF0}-\\x{10AF6}\\x{10AF7}-\\x{10AFF}\\x{10B00}-\\x{10B35}\\x{10B36}-\\x{10B38}\\x{10B40}-\\x{10B55}\\x{10B56}-\\x{10B57}\\x{10B58}-\\x{10B5F}\\x{10B60}-\\x{10B72}\\x{10B73}-\\x{10B77}\\x{10B78}-\\x{10B7F}\\x{10B80}-\\x{10B91}\\x{10B92}-\\x{10B98}\\x{10B99}-\\x{10B9C}\\x{10B9D}-\\x{10BA8}\\x{10BA9}-\\x{10BAF}\\x{10BB0}-\\x{10BFF}\\x{10C00}-\\x{10C48}\\x{10C49}-\\x{10C7F}\\x{10C80}-\\x{10CB2}\\x{10CB3}-\\x{10CBF}\\x{10CC0}-\\x{10CF2}\\x{10CF3}-\\x{10CF9}\\x{10CFA}-\\x{10CFF}\\x{10D00}-\\x{10D23}\\x{10D28}-\\x{10D2F}\\x{10D30}-\\x{10D39}\\x{10D3A}-\\x{10D3F}\\x{10D40}-\\x{10E5F}\\x{10E60}-\\x{10E7E}\\x{10E7F}\\x{10E80}-\\x{10EA9}\\x{10EAA}\\x{10EAD}\\x{10EAE}-\\x{10EAF}\\x{10EB0}-\\x{10EB1}\\x{10EB2}-\\x{10EFF}\\x{10F00}-\\x{10F1C}\\x{10F1D}-\\x{10F26}\\x{10F27}\\x{10F28}-\\x{10F2F}\\x{10F30}-\\x{10F45}\\x{10F51}-\\x{10F54}\\x{10F55}-\\x{10F59}\\x{10F5A}-\\x{10F6F}\\x{10F70}-\\x{10FAF}\\x{10FB0}-\\x{10FC4}\\x{10FC5}-\\x{10FCB}\\x{10FCC}-\\x{10FDF}\\x{10FE0}-\\x{10FF6}\\x{10FF7}-\\x{10FFF}\\x{1E800}-\\x{1E8C4}\\x{1E8C5}-\\x{1E8C6}\\x{1E8C7}-\\x{1E8CF}\\x{1E8D7}-\\x{1E8FF}\\x{1E900}-\\x{1E943}\\x{1E94B}\\x{1E94C}-\\x{1E94F}\\x{1E950}-\\x{1E959}\\x{1E95A}-\\x{1E95D}\\x{1E95E}-\\x{1E95F}\\x{1E960}-\\x{1EC6F}\\x{1EC70}\\x{1EC71}-\\x{1ECAB}\\x{1ECAC}\\x{1ECAD}-\\x{1ECAF}\\x{1ECB0}\\x{1ECB1}-\\x{1ECB4}\\x{1ECB5}-\\x{1ECBF}\\x{1ECC0}-\\x{1ECFF}\\x{1ED00}\\x{1ED01}-\\x{1ED2D}\\x{1ED2E}\\x{1ED2F}-\\x{1ED3D}\\x{1ED3E}-\\x{1ED4F}\\x{1ED50}-\\x{1EDFF}\\x{1EE00}-\\x{1EE03}\\x{1EE04}\\x{1EE05}-\\x{1EE1F}\\x{1EE20}\\x{1EE21}-\\x{1EE22}\\x{1EE23}\\x{1EE24}\\x{1EE25}-\\x{1EE26}\\x{1EE27}\\x{1EE28}\\x{1EE29}-\\x{1EE32}\\x{1EE33}\\x{1EE34}-\\x{1EE37}\\x{1EE38}\\x{1EE39}\\x{1EE3A}\\x{1EE3B}\\x{1EE3C}-\\x{1EE41}\\x{1EE42}\\x{1EE43}-\\x{1EE46}\\x{1EE47}\\x{1EE48}\\x{1EE49}\\x{1EE4A}\\x{1EE4B}\\x{1EE4C}\\x{1EE4D}-\\x{1EE4F}\\x{1EE50}\\x{1EE51}-\\x{1EE52}\\x{1EE53}\\x{1EE54}\\x{1EE55}-\\x{1EE56}\\x{1EE57}\\x{1EE58}\\x{1EE59}\\x{1EE5A}\\x{1EE5B}\\x{1EE5C}\\x{1EE5D}\\x{1EE5E}\\x{1EE5F}\\x{1EE60}\\x{1EE61}-\\x{1EE62}\\x{1EE63}\\x{1EE64}\\x{1EE65}-\\x{1EE66}\\x{1EE67}-\\x{1EE6A}\\x{1EE6B}\\x{1EE6C}-\\x{1EE72}\\x{1EE73}\\x{1EE74}-\\x{1EE77}\\x{1EE78}\\x{1EE79}-\\x{1EE7C}\\x{1EE7D}\\x{1EE7E}\\x{1EE7F}\\x{1EE80}-\\x{1EE89}\\x{1EE8A}\\x{1EE8B}-\\x{1EE9B}\\x{1EE9C}-\\x{1EEA0}\\x{1EEA1}-\\x{1EEA3}\\x{1EEA4}\\x{1EEA5}-\\x{1EEA9}\\x{1EEAA}\\x{1EEAB}-\\x{1EEBB}\\x{1EEBC}-\\x{1EEEF}\\x{1EEF2}-\\x{1EEFF}\\x{1EF00}-\\x{1EFFF}]/u'; + const BIDI_STEP_6 = '/[^\\x{0000}-\\x{0008}\\x{0009}\\x{000A}\\x{000B}\\x{000C}\\x{000D}\\x{000E}-\\x{001B}\\x{001C}-\\x{001E}\\x{001F}\\x{0020}\\x{0021}-\\x{0022}\\x{0023}\\x{0024}\\x{0025}\\x{0026}-\\x{0027}\\x{0028}\\x{0029}\\x{002A}\\x{002B}\\x{002C}\\x{002D}\\x{002E}-\\x{002F}\\x{003A}\\x{003B}\\x{003C}-\\x{003E}\\x{003F}-\\x{0040}\\x{005B}\\x{005C}\\x{005D}\\x{005E}\\x{005F}\\x{0060}\\x{007B}\\x{007C}\\x{007D}\\x{007E}\\x{007F}-\\x{0084}\\x{0085}\\x{0086}-\\x{009F}\\x{00A0}\\x{00A1}\\x{00A2}-\\x{00A5}\\x{00A6}\\x{00A7}\\x{00A8}\\x{00A9}\\x{00AB}\\x{00AC}\\x{00AD}\\x{00AE}\\x{00AF}\\x{00B0}\\x{00B1}\\x{00B4}\\x{00B6}-\\x{00B7}\\x{00B8}\\x{00BB}\\x{00BC}-\\x{00BE}\\x{00BF}\\x{00D7}\\x{00F7}\\x{02B9}-\\x{02BA}\\x{02C2}-\\x{02C5}\\x{02C6}-\\x{02CF}\\x{02D2}-\\x{02DF}\\x{02E5}-\\x{02EB}\\x{02EC}\\x{02ED}\\x{02EF}-\\x{02FF}\\x{0300}-\\x{036F}\\x{0374}\\x{0375}\\x{037E}\\x{0384}-\\x{0385}\\x{0387}\\x{03F6}\\x{0483}-\\x{0487}\\x{0488}-\\x{0489}\\x{058A}\\x{058D}-\\x{058E}\\x{058F}\\x{0590}\\x{0591}-\\x{05BD}\\x{05BE}\\x{05BF}\\x{05C0}\\x{05C1}-\\x{05C2}\\x{05C3}\\x{05C4}-\\x{05C5}\\x{05C6}\\x{05C7}\\x{05C8}-\\x{05CF}\\x{05D0}-\\x{05EA}\\x{05EB}-\\x{05EE}\\x{05EF}-\\x{05F2}\\x{05F3}-\\x{05F4}\\x{05F5}-\\x{05FF}\\x{0600}-\\x{0605}\\x{0606}-\\x{0607}\\x{0608}\\x{0609}-\\x{060A}\\x{060B}\\x{060C}\\x{060D}\\x{060E}-\\x{060F}\\x{0610}-\\x{061A}\\x{061B}\\x{061C}\\x{061D}\\x{061E}-\\x{061F}\\x{0620}-\\x{063F}\\x{0640}\\x{0641}-\\x{064A}\\x{064B}-\\x{065F}\\x{0660}-\\x{0669}\\x{066A}\\x{066B}-\\x{066C}\\x{066D}\\x{066E}-\\x{066F}\\x{0670}\\x{0671}-\\x{06D3}\\x{06D4}\\x{06D5}\\x{06D6}-\\x{06DC}\\x{06DD}\\x{06DE}\\x{06DF}-\\x{06E4}\\x{06E5}-\\x{06E6}\\x{06E7}-\\x{06E8}\\x{06E9}\\x{06EA}-\\x{06ED}\\x{06EE}-\\x{06EF}\\x{06FA}-\\x{06FC}\\x{06FD}-\\x{06FE}\\x{06FF}\\x{0700}-\\x{070D}\\x{070E}\\x{070F}\\x{0710}\\x{0711}\\x{0712}-\\x{072F}\\x{0730}-\\x{074A}\\x{074B}-\\x{074C}\\x{074D}-\\x{07A5}\\x{07A6}-\\x{07B0}\\x{07B1}\\x{07B2}-\\x{07BF}\\x{07C0}-\\x{07C9}\\x{07CA}-\\x{07EA}\\x{07EB}-\\x{07F3}\\x{07F4}-\\x{07F5}\\x{07F6}\\x{07F7}-\\x{07F9}\\x{07FA}\\x{07FB}-\\x{07FC}\\x{07FD}\\x{07FE}-\\x{07FF}\\x{0800}-\\x{0815}\\x{0816}-\\x{0819}\\x{081A}\\x{081B}-\\x{0823}\\x{0824}\\x{0825}-\\x{0827}\\x{0828}\\x{0829}-\\x{082D}\\x{082E}-\\x{082F}\\x{0830}-\\x{083E}\\x{083F}\\x{0840}-\\x{0858}\\x{0859}-\\x{085B}\\x{085C}-\\x{085D}\\x{085E}\\x{085F}\\x{0860}-\\x{086A}\\x{086B}-\\x{086F}\\x{0870}-\\x{089F}\\x{08A0}-\\x{08B4}\\x{08B5}\\x{08B6}-\\x{08C7}\\x{08C8}-\\x{08D2}\\x{08D3}-\\x{08E1}\\x{08E2}\\x{08E3}-\\x{0902}\\x{093A}\\x{093C}\\x{0941}-\\x{0948}\\x{094D}\\x{0951}-\\x{0957}\\x{0962}-\\x{0963}\\x{0981}\\x{09BC}\\x{09C1}-\\x{09C4}\\x{09CD}\\x{09E2}-\\x{09E3}\\x{09F2}-\\x{09F3}\\x{09FB}\\x{09FE}\\x{0A01}-\\x{0A02}\\x{0A3C}\\x{0A41}-\\x{0A42}\\x{0A47}-\\x{0A48}\\x{0A4B}-\\x{0A4D}\\x{0A51}\\x{0A70}-\\x{0A71}\\x{0A75}\\x{0A81}-\\x{0A82}\\x{0ABC}\\x{0AC1}-\\x{0AC5}\\x{0AC7}-\\x{0AC8}\\x{0ACD}\\x{0AE2}-\\x{0AE3}\\x{0AF1}\\x{0AFA}-\\x{0AFF}\\x{0B01}\\x{0B3C}\\x{0B3F}\\x{0B41}-\\x{0B44}\\x{0B4D}\\x{0B55}-\\x{0B56}\\x{0B62}-\\x{0B63}\\x{0B82}\\x{0BC0}\\x{0BCD}\\x{0BF3}-\\x{0BF8}\\x{0BF9}\\x{0BFA}\\x{0C00}\\x{0C04}\\x{0C3E}-\\x{0C40}\\x{0C46}-\\x{0C48}\\x{0C4A}-\\x{0C4D}\\x{0C55}-\\x{0C56}\\x{0C62}-\\x{0C63}\\x{0C78}-\\x{0C7E}\\x{0C81}\\x{0CBC}\\x{0CCC}-\\x{0CCD}\\x{0CE2}-\\x{0CE3}\\x{0D00}-\\x{0D01}\\x{0D3B}-\\x{0D3C}\\x{0D41}-\\x{0D44}\\x{0D4D}\\x{0D62}-\\x{0D63}\\x{0D81}\\x{0DCA}\\x{0DD2}-\\x{0DD4}\\x{0DD6}\\x{0E31}\\x{0E34}-\\x{0E3A}\\x{0E3F}\\x{0E47}-\\x{0E4E}\\x{0EB1}\\x{0EB4}-\\x{0EBC}\\x{0EC8}-\\x{0ECD}\\x{0F18}-\\x{0F19}\\x{0F35}\\x{0F37}\\x{0F39}\\x{0F3A}\\x{0F3B}\\x{0F3C}\\x{0F3D}\\x{0F71}-\\x{0F7E}\\x{0F80}-\\x{0F84}\\x{0F86}-\\x{0F87}\\x{0F8D}-\\x{0F97}\\x{0F99}-\\x{0FBC}\\x{0FC6}\\x{102D}-\\x{1030}\\x{1032}-\\x{1037}\\x{1039}-\\x{103A}\\x{103D}-\\x{103E}\\x{1058}-\\x{1059}\\x{105E}-\\x{1060}\\x{1071}-\\x{1074}\\x{1082}\\x{1085}-\\x{1086}\\x{108D}\\x{109D}\\x{135D}-\\x{135F}\\x{1390}-\\x{1399}\\x{1400}\\x{1680}\\x{169B}\\x{169C}\\x{1712}-\\x{1714}\\x{1732}-\\x{1734}\\x{1752}-\\x{1753}\\x{1772}-\\x{1773}\\x{17B4}-\\x{17B5}\\x{17B7}-\\x{17BD}\\x{17C6}\\x{17C9}-\\x{17D3}\\x{17DB}\\x{17DD}\\x{17F0}-\\x{17F9}\\x{1800}-\\x{1805}\\x{1806}\\x{1807}-\\x{180A}\\x{180B}-\\x{180D}\\x{180E}\\x{1885}-\\x{1886}\\x{18A9}\\x{1920}-\\x{1922}\\x{1927}-\\x{1928}\\x{1932}\\x{1939}-\\x{193B}\\x{1940}\\x{1944}-\\x{1945}\\x{19DE}-\\x{19FF}\\x{1A17}-\\x{1A18}\\x{1A1B}\\x{1A56}\\x{1A58}-\\x{1A5E}\\x{1A60}\\x{1A62}\\x{1A65}-\\x{1A6C}\\x{1A73}-\\x{1A7C}\\x{1A7F}\\x{1AB0}-\\x{1ABD}\\x{1ABE}\\x{1ABF}-\\x{1AC0}\\x{1B00}-\\x{1B03}\\x{1B34}\\x{1B36}-\\x{1B3A}\\x{1B3C}\\x{1B42}\\x{1B6B}-\\x{1B73}\\x{1B80}-\\x{1B81}\\x{1BA2}-\\x{1BA5}\\x{1BA8}-\\x{1BA9}\\x{1BAB}-\\x{1BAD}\\x{1BE6}\\x{1BE8}-\\x{1BE9}\\x{1BED}\\x{1BEF}-\\x{1BF1}\\x{1C2C}-\\x{1C33}\\x{1C36}-\\x{1C37}\\x{1CD0}-\\x{1CD2}\\x{1CD4}-\\x{1CE0}\\x{1CE2}-\\x{1CE8}\\x{1CED}\\x{1CF4}\\x{1CF8}-\\x{1CF9}\\x{1DC0}-\\x{1DF9}\\x{1DFB}-\\x{1DFF}\\x{1FBD}\\x{1FBF}-\\x{1FC1}\\x{1FCD}-\\x{1FCF}\\x{1FDD}-\\x{1FDF}\\x{1FED}-\\x{1FEF}\\x{1FFD}-\\x{1FFE}\\x{2000}-\\x{200A}\\x{200B}-\\x{200D}\\x{200F}\\x{2010}-\\x{2015}\\x{2016}-\\x{2017}\\x{2018}\\x{2019}\\x{201A}\\x{201B}-\\x{201C}\\x{201D}\\x{201E}\\x{201F}\\x{2020}-\\x{2027}\\x{2028}\\x{2029}\\x{202A}\\x{202B}\\x{202C}\\x{202D}\\x{202E}\\x{202F}\\x{2030}-\\x{2034}\\x{2035}-\\x{2038}\\x{2039}\\x{203A}\\x{203B}-\\x{203E}\\x{203F}-\\x{2040}\\x{2041}-\\x{2043}\\x{2044}\\x{2045}\\x{2046}\\x{2047}-\\x{2051}\\x{2052}\\x{2053}\\x{2054}\\x{2055}-\\x{205E}\\x{205F}\\x{2060}-\\x{2064}\\x{2065}\\x{2066}\\x{2067}\\x{2068}\\x{2069}\\x{206A}-\\x{206F}\\x{207A}-\\x{207B}\\x{207C}\\x{207D}\\x{207E}\\x{208A}-\\x{208B}\\x{208C}\\x{208D}\\x{208E}\\x{20A0}-\\x{20BF}\\x{20C0}-\\x{20CF}\\x{20D0}-\\x{20DC}\\x{20DD}-\\x{20E0}\\x{20E1}\\x{20E2}-\\x{20E4}\\x{20E5}-\\x{20F0}\\x{2100}-\\x{2101}\\x{2103}-\\x{2106}\\x{2108}-\\x{2109}\\x{2114}\\x{2116}-\\x{2117}\\x{2118}\\x{211E}-\\x{2123}\\x{2125}\\x{2127}\\x{2129}\\x{212E}\\x{213A}-\\x{213B}\\x{2140}-\\x{2144}\\x{214A}\\x{214B}\\x{214C}-\\x{214D}\\x{2150}-\\x{215F}\\x{2189}\\x{218A}-\\x{218B}\\x{2190}-\\x{2194}\\x{2195}-\\x{2199}\\x{219A}-\\x{219B}\\x{219C}-\\x{219F}\\x{21A0}\\x{21A1}-\\x{21A2}\\x{21A3}\\x{21A4}-\\x{21A5}\\x{21A6}\\x{21A7}-\\x{21AD}\\x{21AE}\\x{21AF}-\\x{21CD}\\x{21CE}-\\x{21CF}\\x{21D0}-\\x{21D1}\\x{21D2}\\x{21D3}\\x{21D4}\\x{21D5}-\\x{21F3}\\x{21F4}-\\x{2211}\\x{2212}\\x{2213}\\x{2214}-\\x{22FF}\\x{2300}-\\x{2307}\\x{2308}\\x{2309}\\x{230A}\\x{230B}\\x{230C}-\\x{231F}\\x{2320}-\\x{2321}\\x{2322}-\\x{2328}\\x{2329}\\x{232A}\\x{232B}-\\x{2335}\\x{237B}\\x{237C}\\x{237D}-\\x{2394}\\x{2396}-\\x{239A}\\x{239B}-\\x{23B3}\\x{23B4}-\\x{23DB}\\x{23DC}-\\x{23E1}\\x{23E2}-\\x{2426}\\x{2440}-\\x{244A}\\x{2460}-\\x{2487}\\x{24EA}-\\x{24FF}\\x{2500}-\\x{25B6}\\x{25B7}\\x{25B8}-\\x{25C0}\\x{25C1}\\x{25C2}-\\x{25F7}\\x{25F8}-\\x{25FF}\\x{2600}-\\x{266E}\\x{266F}\\x{2670}-\\x{26AB}\\x{26AD}-\\x{2767}\\x{2768}\\x{2769}\\x{276A}\\x{276B}\\x{276C}\\x{276D}\\x{276E}\\x{276F}\\x{2770}\\x{2771}\\x{2772}\\x{2773}\\x{2774}\\x{2775}\\x{2776}-\\x{2793}\\x{2794}-\\x{27BF}\\x{27C0}-\\x{27C4}\\x{27C5}\\x{27C6}\\x{27C7}-\\x{27E5}\\x{27E6}\\x{27E7}\\x{27E8}\\x{27E9}\\x{27EA}\\x{27EB}\\x{27EC}\\x{27ED}\\x{27EE}\\x{27EF}\\x{27F0}-\\x{27FF}\\x{2900}-\\x{2982}\\x{2983}\\x{2984}\\x{2985}\\x{2986}\\x{2987}\\x{2988}\\x{2989}\\x{298A}\\x{298B}\\x{298C}\\x{298D}\\x{298E}\\x{298F}\\x{2990}\\x{2991}\\x{2992}\\x{2993}\\x{2994}\\x{2995}\\x{2996}\\x{2997}\\x{2998}\\x{2999}-\\x{29D7}\\x{29D8}\\x{29D9}\\x{29DA}\\x{29DB}\\x{29DC}-\\x{29FB}\\x{29FC}\\x{29FD}\\x{29FE}-\\x{2AFF}\\x{2B00}-\\x{2B2F}\\x{2B30}-\\x{2B44}\\x{2B45}-\\x{2B46}\\x{2B47}-\\x{2B4C}\\x{2B4D}-\\x{2B73}\\x{2B76}-\\x{2B95}\\x{2B97}-\\x{2BFF}\\x{2CE5}-\\x{2CEA}\\x{2CEF}-\\x{2CF1}\\x{2CF9}-\\x{2CFC}\\x{2CFD}\\x{2CFE}-\\x{2CFF}\\x{2D7F}\\x{2DE0}-\\x{2DFF}\\x{2E00}-\\x{2E01}\\x{2E02}\\x{2E03}\\x{2E04}\\x{2E05}\\x{2E06}-\\x{2E08}\\x{2E09}\\x{2E0A}\\x{2E0B}\\x{2E0C}\\x{2E0D}\\x{2E0E}-\\x{2E16}\\x{2E17}\\x{2E18}-\\x{2E19}\\x{2E1A}\\x{2E1B}\\x{2E1C}\\x{2E1D}\\x{2E1E}-\\x{2E1F}\\x{2E20}\\x{2E21}\\x{2E22}\\x{2E23}\\x{2E24}\\x{2E25}\\x{2E26}\\x{2E27}\\x{2E28}\\x{2E29}\\x{2E2A}-\\x{2E2E}\\x{2E2F}\\x{2E30}-\\x{2E39}\\x{2E3A}-\\x{2E3B}\\x{2E3C}-\\x{2E3F}\\x{2E40}\\x{2E41}\\x{2E42}\\x{2E43}-\\x{2E4F}\\x{2E50}-\\x{2E51}\\x{2E52}\\x{2E80}-\\x{2E99}\\x{2E9B}-\\x{2EF3}\\x{2F00}-\\x{2FD5}\\x{2FF0}-\\x{2FFB}\\x{3000}\\x{3001}-\\x{3003}\\x{3004}\\x{3008}\\x{3009}\\x{300A}\\x{300B}\\x{300C}\\x{300D}\\x{300E}\\x{300F}\\x{3010}\\x{3011}\\x{3012}-\\x{3013}\\x{3014}\\x{3015}\\x{3016}\\x{3017}\\x{3018}\\x{3019}\\x{301A}\\x{301B}\\x{301C}\\x{301D}\\x{301E}-\\x{301F}\\x{3020}\\x{302A}-\\x{302D}\\x{3030}\\x{3036}-\\x{3037}\\x{303D}\\x{303E}-\\x{303F}\\x{3099}-\\x{309A}\\x{309B}-\\x{309C}\\x{30A0}\\x{30FB}\\x{31C0}-\\x{31E3}\\x{321D}-\\x{321E}\\x{3250}\\x{3251}-\\x{325F}\\x{327C}-\\x{327E}\\x{32B1}-\\x{32BF}\\x{32CC}-\\x{32CF}\\x{3377}-\\x{337A}\\x{33DE}-\\x{33DF}\\x{33FF}\\x{4DC0}-\\x{4DFF}\\x{A490}-\\x{A4C6}\\x{A60D}-\\x{A60F}\\x{A66F}\\x{A670}-\\x{A672}\\x{A673}\\x{A674}-\\x{A67D}\\x{A67E}\\x{A67F}\\x{A69E}-\\x{A69F}\\x{A6F0}-\\x{A6F1}\\x{A700}-\\x{A716}\\x{A717}-\\x{A71F}\\x{A720}-\\x{A721}\\x{A788}\\x{A802}\\x{A806}\\x{A80B}\\x{A825}-\\x{A826}\\x{A828}-\\x{A82B}\\x{A82C}\\x{A838}\\x{A839}\\x{A874}-\\x{A877}\\x{A8C4}-\\x{A8C5}\\x{A8E0}-\\x{A8F1}\\x{A8FF}\\x{A926}-\\x{A92D}\\x{A947}-\\x{A951}\\x{A980}-\\x{A982}\\x{A9B3}\\x{A9B6}-\\x{A9B9}\\x{A9BC}-\\x{A9BD}\\x{A9E5}\\x{AA29}-\\x{AA2E}\\x{AA31}-\\x{AA32}\\x{AA35}-\\x{AA36}\\x{AA43}\\x{AA4C}\\x{AA7C}\\x{AAB0}\\x{AAB2}-\\x{AAB4}\\x{AAB7}-\\x{AAB8}\\x{AABE}-\\x{AABF}\\x{AAC1}\\x{AAEC}-\\x{AAED}\\x{AAF6}\\x{AB6A}-\\x{AB6B}\\x{ABE5}\\x{ABE8}\\x{ABED}\\x{FB1D}\\x{FB1E}\\x{FB1F}-\\x{FB28}\\x{FB29}\\x{FB2A}-\\x{FB36}\\x{FB37}\\x{FB38}-\\x{FB3C}\\x{FB3D}\\x{FB3E}\\x{FB3F}\\x{FB40}-\\x{FB41}\\x{FB42}\\x{FB43}-\\x{FB44}\\x{FB45}\\x{FB46}-\\x{FB4F}\\x{FB50}-\\x{FBB1}\\x{FBB2}-\\x{FBC1}\\x{FBC2}-\\x{FBD2}\\x{FBD3}-\\x{FD3D}\\x{FD3E}\\x{FD3F}\\x{FD40}-\\x{FD4F}\\x{FD50}-\\x{FD8F}\\x{FD90}-\\x{FD91}\\x{FD92}-\\x{FDC7}\\x{FDC8}-\\x{FDCF}\\x{FDD0}-\\x{FDEF}\\x{FDF0}-\\x{FDFB}\\x{FDFC}\\x{FDFD}\\x{FDFE}-\\x{FDFF}\\x{FE00}-\\x{FE0F}\\x{FE10}-\\x{FE16}\\x{FE17}\\x{FE18}\\x{FE19}\\x{FE20}-\\x{FE2F}\\x{FE30}\\x{FE31}-\\x{FE32}\\x{FE33}-\\x{FE34}\\x{FE35}\\x{FE36}\\x{FE37}\\x{FE38}\\x{FE39}\\x{FE3A}\\x{FE3B}\\x{FE3C}\\x{FE3D}\\x{FE3E}\\x{FE3F}\\x{FE40}\\x{FE41}\\x{FE42}\\x{FE43}\\x{FE44}\\x{FE45}-\\x{FE46}\\x{FE47}\\x{FE48}\\x{FE49}-\\x{FE4C}\\x{FE4D}-\\x{FE4F}\\x{FE50}\\x{FE51}\\x{FE52}\\x{FE54}\\x{FE55}\\x{FE56}-\\x{FE57}\\x{FE58}\\x{FE59}\\x{FE5A}\\x{FE5B}\\x{FE5C}\\x{FE5D}\\x{FE5E}\\x{FE5F}\\x{FE60}-\\x{FE61}\\x{FE62}\\x{FE63}\\x{FE64}-\\x{FE66}\\x{FE68}\\x{FE69}\\x{FE6A}\\x{FE6B}\\x{FE70}-\\x{FE74}\\x{FE75}\\x{FE76}-\\x{FEFC}\\x{FEFD}-\\x{FEFE}\\x{FEFF}\\x{FF01}-\\x{FF02}\\x{FF03}\\x{FF04}\\x{FF05}\\x{FF06}-\\x{FF07}\\x{FF08}\\x{FF09}\\x{FF0A}\\x{FF0B}\\x{FF0C}\\x{FF0D}\\x{FF0E}-\\x{FF0F}\\x{FF1A}\\x{FF1B}\\x{FF1C}-\\x{FF1E}\\x{FF1F}-\\x{FF20}\\x{FF3B}\\x{FF3C}\\x{FF3D}\\x{FF3E}\\x{FF3F}\\x{FF40}\\x{FF5B}\\x{FF5C}\\x{FF5D}\\x{FF5E}\\x{FF5F}\\x{FF60}\\x{FF61}\\x{FF62}\\x{FF63}\\x{FF64}-\\x{FF65}\\x{FFE0}-\\x{FFE1}\\x{FFE2}\\x{FFE3}\\x{FFE4}\\x{FFE5}-\\x{FFE6}\\x{FFE8}\\x{FFE9}-\\x{FFEC}\\x{FFED}-\\x{FFEE}\\x{FFF0}-\\x{FFF8}\\x{FFF9}-\\x{FFFB}\\x{FFFC}-\\x{FFFD}\\x{FFFE}-\\x{FFFF}\\x{10101}\\x{10140}-\\x{10174}\\x{10175}-\\x{10178}\\x{10179}-\\x{10189}\\x{1018A}-\\x{1018B}\\x{1018C}\\x{10190}-\\x{1019C}\\x{101A0}\\x{101FD}\\x{102E0}\\x{10376}-\\x{1037A}\\x{10800}-\\x{10805}\\x{10806}-\\x{10807}\\x{10808}\\x{10809}\\x{1080A}-\\x{10835}\\x{10836}\\x{10837}-\\x{10838}\\x{10839}-\\x{1083B}\\x{1083C}\\x{1083D}-\\x{1083E}\\x{1083F}-\\x{10855}\\x{10856}\\x{10857}\\x{10858}-\\x{1085F}\\x{10860}-\\x{10876}\\x{10877}-\\x{10878}\\x{10879}-\\x{1087F}\\x{10880}-\\x{1089E}\\x{1089F}-\\x{108A6}\\x{108A7}-\\x{108AF}\\x{108B0}-\\x{108DF}\\x{108E0}-\\x{108F2}\\x{108F3}\\x{108F4}-\\x{108F5}\\x{108F6}-\\x{108FA}\\x{108FB}-\\x{108FF}\\x{10900}-\\x{10915}\\x{10916}-\\x{1091B}\\x{1091C}-\\x{1091E}\\x{1091F}\\x{10920}-\\x{10939}\\x{1093A}-\\x{1093E}\\x{1093F}\\x{10940}-\\x{1097F}\\x{10980}-\\x{109B7}\\x{109B8}-\\x{109BB}\\x{109BC}-\\x{109BD}\\x{109BE}-\\x{109BF}\\x{109C0}-\\x{109CF}\\x{109D0}-\\x{109D1}\\x{109D2}-\\x{109FF}\\x{10A00}\\x{10A01}-\\x{10A03}\\x{10A04}\\x{10A05}-\\x{10A06}\\x{10A07}-\\x{10A0B}\\x{10A0C}-\\x{10A0F}\\x{10A10}-\\x{10A13}\\x{10A14}\\x{10A15}-\\x{10A17}\\x{10A18}\\x{10A19}-\\x{10A35}\\x{10A36}-\\x{10A37}\\x{10A38}-\\x{10A3A}\\x{10A3B}-\\x{10A3E}\\x{10A3F}\\x{10A40}-\\x{10A48}\\x{10A49}-\\x{10A4F}\\x{10A50}-\\x{10A58}\\x{10A59}-\\x{10A5F}\\x{10A60}-\\x{10A7C}\\x{10A7D}-\\x{10A7E}\\x{10A7F}\\x{10A80}-\\x{10A9C}\\x{10A9D}-\\x{10A9F}\\x{10AA0}-\\x{10ABF}\\x{10AC0}-\\x{10AC7}\\x{10AC8}\\x{10AC9}-\\x{10AE4}\\x{10AE5}-\\x{10AE6}\\x{10AE7}-\\x{10AEA}\\x{10AEB}-\\x{10AEF}\\x{10AF0}-\\x{10AF6}\\x{10AF7}-\\x{10AFF}\\x{10B00}-\\x{10B35}\\x{10B36}-\\x{10B38}\\x{10B39}-\\x{10B3F}\\x{10B40}-\\x{10B55}\\x{10B56}-\\x{10B57}\\x{10B58}-\\x{10B5F}\\x{10B60}-\\x{10B72}\\x{10B73}-\\x{10B77}\\x{10B78}-\\x{10B7F}\\x{10B80}-\\x{10B91}\\x{10B92}-\\x{10B98}\\x{10B99}-\\x{10B9C}\\x{10B9D}-\\x{10BA8}\\x{10BA9}-\\x{10BAF}\\x{10BB0}-\\x{10BFF}\\x{10C00}-\\x{10C48}\\x{10C49}-\\x{10C7F}\\x{10C80}-\\x{10CB2}\\x{10CB3}-\\x{10CBF}\\x{10CC0}-\\x{10CF2}\\x{10CF3}-\\x{10CF9}\\x{10CFA}-\\x{10CFF}\\x{10D00}-\\x{10D23}\\x{10D24}-\\x{10D27}\\x{10D28}-\\x{10D2F}\\x{10D30}-\\x{10D39}\\x{10D3A}-\\x{10D3F}\\x{10D40}-\\x{10E5F}\\x{10E60}-\\x{10E7E}\\x{10E7F}\\x{10E80}-\\x{10EA9}\\x{10EAA}\\x{10EAB}-\\x{10EAC}\\x{10EAD}\\x{10EAE}-\\x{10EAF}\\x{10EB0}-\\x{10EB1}\\x{10EB2}-\\x{10EFF}\\x{10F00}-\\x{10F1C}\\x{10F1D}-\\x{10F26}\\x{10F27}\\x{10F28}-\\x{10F2F}\\x{10F30}-\\x{10F45}\\x{10F46}-\\x{10F50}\\x{10F51}-\\x{10F54}\\x{10F55}-\\x{10F59}\\x{10F5A}-\\x{10F6F}\\x{10F70}-\\x{10FAF}\\x{10FB0}-\\x{10FC4}\\x{10FC5}-\\x{10FCB}\\x{10FCC}-\\x{10FDF}\\x{10FE0}-\\x{10FF6}\\x{10FF7}-\\x{10FFF}\\x{11001}\\x{11038}-\\x{11046}\\x{11052}-\\x{11065}\\x{1107F}-\\x{11081}\\x{110B3}-\\x{110B6}\\x{110B9}-\\x{110BA}\\x{11100}-\\x{11102}\\x{11127}-\\x{1112B}\\x{1112D}-\\x{11134}\\x{11173}\\x{11180}-\\x{11181}\\x{111B6}-\\x{111BE}\\x{111C9}-\\x{111CC}\\x{111CF}\\x{1122F}-\\x{11231}\\x{11234}\\x{11236}-\\x{11237}\\x{1123E}\\x{112DF}\\x{112E3}-\\x{112EA}\\x{11300}-\\x{11301}\\x{1133B}-\\x{1133C}\\x{11340}\\x{11366}-\\x{1136C}\\x{11370}-\\x{11374}\\x{11438}-\\x{1143F}\\x{11442}-\\x{11444}\\x{11446}\\x{1145E}\\x{114B3}-\\x{114B8}\\x{114BA}\\x{114BF}-\\x{114C0}\\x{114C2}-\\x{114C3}\\x{115B2}-\\x{115B5}\\x{115BC}-\\x{115BD}\\x{115BF}-\\x{115C0}\\x{115DC}-\\x{115DD}\\x{11633}-\\x{1163A}\\x{1163D}\\x{1163F}-\\x{11640}\\x{11660}-\\x{1166C}\\x{116AB}\\x{116AD}\\x{116B0}-\\x{116B5}\\x{116B7}\\x{1171D}-\\x{1171F}\\x{11722}-\\x{11725}\\x{11727}-\\x{1172B}\\x{1182F}-\\x{11837}\\x{11839}-\\x{1183A}\\x{1193B}-\\x{1193C}\\x{1193E}\\x{11943}\\x{119D4}-\\x{119D7}\\x{119DA}-\\x{119DB}\\x{119E0}\\x{11A01}-\\x{11A06}\\x{11A09}-\\x{11A0A}\\x{11A33}-\\x{11A38}\\x{11A3B}-\\x{11A3E}\\x{11A47}\\x{11A51}-\\x{11A56}\\x{11A59}-\\x{11A5B}\\x{11A8A}-\\x{11A96}\\x{11A98}-\\x{11A99}\\x{11C30}-\\x{11C36}\\x{11C38}-\\x{11C3D}\\x{11C92}-\\x{11CA7}\\x{11CAA}-\\x{11CB0}\\x{11CB2}-\\x{11CB3}\\x{11CB5}-\\x{11CB6}\\x{11D31}-\\x{11D36}\\x{11D3A}\\x{11D3C}-\\x{11D3D}\\x{11D3F}-\\x{11D45}\\x{11D47}\\x{11D90}-\\x{11D91}\\x{11D95}\\x{11D97}\\x{11EF3}-\\x{11EF4}\\x{11FD5}-\\x{11FDC}\\x{11FDD}-\\x{11FE0}\\x{11FE1}-\\x{11FF1}\\x{16AF0}-\\x{16AF4}\\x{16B30}-\\x{16B36}\\x{16F4F}\\x{16F8F}-\\x{16F92}\\x{16FE2}\\x{16FE4}\\x{1BC9D}-\\x{1BC9E}\\x{1BCA0}-\\x{1BCA3}\\x{1D167}-\\x{1D169}\\x{1D173}-\\x{1D17A}\\x{1D17B}-\\x{1D182}\\x{1D185}-\\x{1D18B}\\x{1D1AA}-\\x{1D1AD}\\x{1D200}-\\x{1D241}\\x{1D242}-\\x{1D244}\\x{1D245}\\x{1D300}-\\x{1D356}\\x{1D6DB}\\x{1D715}\\x{1D74F}\\x{1D789}\\x{1D7C3}\\x{1DA00}-\\x{1DA36}\\x{1DA3B}-\\x{1DA6C}\\x{1DA75}\\x{1DA84}\\x{1DA9B}-\\x{1DA9F}\\x{1DAA1}-\\x{1DAAF}\\x{1E000}-\\x{1E006}\\x{1E008}-\\x{1E018}\\x{1E01B}-\\x{1E021}\\x{1E023}-\\x{1E024}\\x{1E026}-\\x{1E02A}\\x{1E130}-\\x{1E136}\\x{1E2EC}-\\x{1E2EF}\\x{1E2FF}\\x{1E800}-\\x{1E8C4}\\x{1E8C5}-\\x{1E8C6}\\x{1E8C7}-\\x{1E8CF}\\x{1E8D0}-\\x{1E8D6}\\x{1E8D7}-\\x{1E8FF}\\x{1E900}-\\x{1E943}\\x{1E944}-\\x{1E94A}\\x{1E94B}\\x{1E94C}-\\x{1E94F}\\x{1E950}-\\x{1E959}\\x{1E95A}-\\x{1E95D}\\x{1E95E}-\\x{1E95F}\\x{1E960}-\\x{1EC6F}\\x{1EC70}\\x{1EC71}-\\x{1ECAB}\\x{1ECAC}\\x{1ECAD}-\\x{1ECAF}\\x{1ECB0}\\x{1ECB1}-\\x{1ECB4}\\x{1ECB5}-\\x{1ECBF}\\x{1ECC0}-\\x{1ECFF}\\x{1ED00}\\x{1ED01}-\\x{1ED2D}\\x{1ED2E}\\x{1ED2F}-\\x{1ED3D}\\x{1ED3E}-\\x{1ED4F}\\x{1ED50}-\\x{1EDFF}\\x{1EE00}-\\x{1EE03}\\x{1EE04}\\x{1EE05}-\\x{1EE1F}\\x{1EE20}\\x{1EE21}-\\x{1EE22}\\x{1EE23}\\x{1EE24}\\x{1EE25}-\\x{1EE26}\\x{1EE27}\\x{1EE28}\\x{1EE29}-\\x{1EE32}\\x{1EE33}\\x{1EE34}-\\x{1EE37}\\x{1EE38}\\x{1EE39}\\x{1EE3A}\\x{1EE3B}\\x{1EE3C}-\\x{1EE41}\\x{1EE42}\\x{1EE43}-\\x{1EE46}\\x{1EE47}\\x{1EE48}\\x{1EE49}\\x{1EE4A}\\x{1EE4B}\\x{1EE4C}\\x{1EE4D}-\\x{1EE4F}\\x{1EE50}\\x{1EE51}-\\x{1EE52}\\x{1EE53}\\x{1EE54}\\x{1EE55}-\\x{1EE56}\\x{1EE57}\\x{1EE58}\\x{1EE59}\\x{1EE5A}\\x{1EE5B}\\x{1EE5C}\\x{1EE5D}\\x{1EE5E}\\x{1EE5F}\\x{1EE60}\\x{1EE61}-\\x{1EE62}\\x{1EE63}\\x{1EE64}\\x{1EE65}-\\x{1EE66}\\x{1EE67}-\\x{1EE6A}\\x{1EE6B}\\x{1EE6C}-\\x{1EE72}\\x{1EE73}\\x{1EE74}-\\x{1EE77}\\x{1EE78}\\x{1EE79}-\\x{1EE7C}\\x{1EE7D}\\x{1EE7E}\\x{1EE7F}\\x{1EE80}-\\x{1EE89}\\x{1EE8A}\\x{1EE8B}-\\x{1EE9B}\\x{1EE9C}-\\x{1EEA0}\\x{1EEA1}-\\x{1EEA3}\\x{1EEA4}\\x{1EEA5}-\\x{1EEA9}\\x{1EEAA}\\x{1EEAB}-\\x{1EEBB}\\x{1EEBC}-\\x{1EEEF}\\x{1EEF0}-\\x{1EEF1}\\x{1EEF2}-\\x{1EEFF}\\x{1EF00}-\\x{1EFFF}\\x{1F000}-\\x{1F02B}\\x{1F030}-\\x{1F093}\\x{1F0A0}-\\x{1F0AE}\\x{1F0B1}-\\x{1F0BF}\\x{1F0C1}-\\x{1F0CF}\\x{1F0D1}-\\x{1F0F5}\\x{1F10B}-\\x{1F10C}\\x{1F10D}-\\x{1F10F}\\x{1F12F}\\x{1F16A}-\\x{1F16F}\\x{1F1AD}\\x{1F260}-\\x{1F265}\\x{1F300}-\\x{1F3FA}\\x{1F3FB}-\\x{1F3FF}\\x{1F400}-\\x{1F6D7}\\x{1F6E0}-\\x{1F6EC}\\x{1F6F0}-\\x{1F6FC}\\x{1F700}-\\x{1F773}\\x{1F780}-\\x{1F7D8}\\x{1F7E0}-\\x{1F7EB}\\x{1F800}-\\x{1F80B}\\x{1F810}-\\x{1F847}\\x{1F850}-\\x{1F859}\\x{1F860}-\\x{1F887}\\x{1F890}-\\x{1F8AD}\\x{1F8B0}-\\x{1F8B1}\\x{1F900}-\\x{1F978}\\x{1F97A}-\\x{1F9CB}\\x{1F9CD}-\\x{1FA53}\\x{1FA60}-\\x{1FA6D}\\x{1FA70}-\\x{1FA74}\\x{1FA78}-\\x{1FA7A}\\x{1FA80}-\\x{1FA86}\\x{1FA90}-\\x{1FAA8}\\x{1FAB0}-\\x{1FAB6}\\x{1FAC0}-\\x{1FAC2}\\x{1FAD0}-\\x{1FAD6}\\x{1FB00}-\\x{1FB92}\\x{1FB94}-\\x{1FBCA}\\x{1FFFE}-\\x{1FFFF}\\x{2FFFE}-\\x{2FFFF}\\x{3FFFE}-\\x{3FFFF}\\x{4FFFE}-\\x{4FFFF}\\x{5FFFE}-\\x{5FFFF}\\x{6FFFE}-\\x{6FFFF}\\x{7FFFE}-\\x{7FFFF}\\x{8FFFE}-\\x{8FFFF}\\x{9FFFE}-\\x{9FFFF}\\x{AFFFE}-\\x{AFFFF}\\x{BFFFE}-\\x{BFFFF}\\x{CFFFE}-\\x{CFFFF}\\x{DFFFE}-\\x{E0000}\\x{E0001}\\x{E0002}-\\x{E001F}\\x{E0020}-\\x{E007F}\\x{E0080}-\\x{E00FF}\\x{E0100}-\\x{E01EF}\\x{E01F0}-\\x{E0FFF}\\x{EFFFE}-\\x{EFFFF}\\x{FFFFE}-\\x{FFFFF}\\x{10FFFE}-\\x{10FFFF}][\\x{0300}-\\x{036F}\\x{0483}-\\x{0487}\\x{0488}-\\x{0489}\\x{0591}-\\x{05BD}\\x{05BF}\\x{05C1}-\\x{05C2}\\x{05C4}-\\x{05C5}\\x{05C7}\\x{0610}-\\x{061A}\\x{064B}-\\x{065F}\\x{0670}\\x{06D6}-\\x{06DC}\\x{06DF}-\\x{06E4}\\x{06E7}-\\x{06E8}\\x{06EA}-\\x{06ED}\\x{0711}\\x{0730}-\\x{074A}\\x{07A6}-\\x{07B0}\\x{07EB}-\\x{07F3}\\x{07FD}\\x{0816}-\\x{0819}\\x{081B}-\\x{0823}\\x{0825}-\\x{0827}\\x{0829}-\\x{082D}\\x{0859}-\\x{085B}\\x{08D3}-\\x{08E1}\\x{08E3}-\\x{0902}\\x{093A}\\x{093C}\\x{0941}-\\x{0948}\\x{094D}\\x{0951}-\\x{0957}\\x{0962}-\\x{0963}\\x{0981}\\x{09BC}\\x{09C1}-\\x{09C4}\\x{09CD}\\x{09E2}-\\x{09E3}\\x{09FE}\\x{0A01}-\\x{0A02}\\x{0A3C}\\x{0A41}-\\x{0A42}\\x{0A47}-\\x{0A48}\\x{0A4B}-\\x{0A4D}\\x{0A51}\\x{0A70}-\\x{0A71}\\x{0A75}\\x{0A81}-\\x{0A82}\\x{0ABC}\\x{0AC1}-\\x{0AC5}\\x{0AC7}-\\x{0AC8}\\x{0ACD}\\x{0AE2}-\\x{0AE3}\\x{0AFA}-\\x{0AFF}\\x{0B01}\\x{0B3C}\\x{0B3F}\\x{0B41}-\\x{0B44}\\x{0B4D}\\x{0B55}-\\x{0B56}\\x{0B62}-\\x{0B63}\\x{0B82}\\x{0BC0}\\x{0BCD}\\x{0C00}\\x{0C04}\\x{0C3E}-\\x{0C40}\\x{0C46}-\\x{0C48}\\x{0C4A}-\\x{0C4D}\\x{0C55}-\\x{0C56}\\x{0C62}-\\x{0C63}\\x{0C81}\\x{0CBC}\\x{0CCC}-\\x{0CCD}\\x{0CE2}-\\x{0CE3}\\x{0D00}-\\x{0D01}\\x{0D3B}-\\x{0D3C}\\x{0D41}-\\x{0D44}\\x{0D4D}\\x{0D62}-\\x{0D63}\\x{0D81}\\x{0DCA}\\x{0DD2}-\\x{0DD4}\\x{0DD6}\\x{0E31}\\x{0E34}-\\x{0E3A}\\x{0E47}-\\x{0E4E}\\x{0EB1}\\x{0EB4}-\\x{0EBC}\\x{0EC8}-\\x{0ECD}\\x{0F18}-\\x{0F19}\\x{0F35}\\x{0F37}\\x{0F39}\\x{0F71}-\\x{0F7E}\\x{0F80}-\\x{0F84}\\x{0F86}-\\x{0F87}\\x{0F8D}-\\x{0F97}\\x{0F99}-\\x{0FBC}\\x{0FC6}\\x{102D}-\\x{1030}\\x{1032}-\\x{1037}\\x{1039}-\\x{103A}\\x{103D}-\\x{103E}\\x{1058}-\\x{1059}\\x{105E}-\\x{1060}\\x{1071}-\\x{1074}\\x{1082}\\x{1085}-\\x{1086}\\x{108D}\\x{109D}\\x{135D}-\\x{135F}\\x{1712}-\\x{1714}\\x{1732}-\\x{1734}\\x{1752}-\\x{1753}\\x{1772}-\\x{1773}\\x{17B4}-\\x{17B5}\\x{17B7}-\\x{17BD}\\x{17C6}\\x{17C9}-\\x{17D3}\\x{17DD}\\x{180B}-\\x{180D}\\x{1885}-\\x{1886}\\x{18A9}\\x{1920}-\\x{1922}\\x{1927}-\\x{1928}\\x{1932}\\x{1939}-\\x{193B}\\x{1A17}-\\x{1A18}\\x{1A1B}\\x{1A56}\\x{1A58}-\\x{1A5E}\\x{1A60}\\x{1A62}\\x{1A65}-\\x{1A6C}\\x{1A73}-\\x{1A7C}\\x{1A7F}\\x{1AB0}-\\x{1ABD}\\x{1ABE}\\x{1ABF}-\\x{1AC0}\\x{1B00}-\\x{1B03}\\x{1B34}\\x{1B36}-\\x{1B3A}\\x{1B3C}\\x{1B42}\\x{1B6B}-\\x{1B73}\\x{1B80}-\\x{1B81}\\x{1BA2}-\\x{1BA5}\\x{1BA8}-\\x{1BA9}\\x{1BAB}-\\x{1BAD}\\x{1BE6}\\x{1BE8}-\\x{1BE9}\\x{1BED}\\x{1BEF}-\\x{1BF1}\\x{1C2C}-\\x{1C33}\\x{1C36}-\\x{1C37}\\x{1CD0}-\\x{1CD2}\\x{1CD4}-\\x{1CE0}\\x{1CE2}-\\x{1CE8}\\x{1CED}\\x{1CF4}\\x{1CF8}-\\x{1CF9}\\x{1DC0}-\\x{1DF9}\\x{1DFB}-\\x{1DFF}\\x{20D0}-\\x{20DC}\\x{20DD}-\\x{20E0}\\x{20E1}\\x{20E2}-\\x{20E4}\\x{20E5}-\\x{20F0}\\x{2CEF}-\\x{2CF1}\\x{2D7F}\\x{2DE0}-\\x{2DFF}\\x{302A}-\\x{302D}\\x{3099}-\\x{309A}\\x{A66F}\\x{A670}-\\x{A672}\\x{A674}-\\x{A67D}\\x{A69E}-\\x{A69F}\\x{A6F0}-\\x{A6F1}\\x{A802}\\x{A806}\\x{A80B}\\x{A825}-\\x{A826}\\x{A82C}\\x{A8C4}-\\x{A8C5}\\x{A8E0}-\\x{A8F1}\\x{A8FF}\\x{A926}-\\x{A92D}\\x{A947}-\\x{A951}\\x{A980}-\\x{A982}\\x{A9B3}\\x{A9B6}-\\x{A9B9}\\x{A9BC}-\\x{A9BD}\\x{A9E5}\\x{AA29}-\\x{AA2E}\\x{AA31}-\\x{AA32}\\x{AA35}-\\x{AA36}\\x{AA43}\\x{AA4C}\\x{AA7C}\\x{AAB0}\\x{AAB2}-\\x{AAB4}\\x{AAB7}-\\x{AAB8}\\x{AABE}-\\x{AABF}\\x{AAC1}\\x{AAEC}-\\x{AAED}\\x{AAF6}\\x{ABE5}\\x{ABE8}\\x{ABED}\\x{FB1E}\\x{FE00}-\\x{FE0F}\\x{FE20}-\\x{FE2F}\\x{101FD}\\x{102E0}\\x{10376}-\\x{1037A}\\x{10A01}-\\x{10A03}\\x{10A05}-\\x{10A06}\\x{10A0C}-\\x{10A0F}\\x{10A38}-\\x{10A3A}\\x{10A3F}\\x{10AE5}-\\x{10AE6}\\x{10D24}-\\x{10D27}\\x{10EAB}-\\x{10EAC}\\x{10F46}-\\x{10F50}\\x{11001}\\x{11038}-\\x{11046}\\x{1107F}-\\x{11081}\\x{110B3}-\\x{110B6}\\x{110B9}-\\x{110BA}\\x{11100}-\\x{11102}\\x{11127}-\\x{1112B}\\x{1112D}-\\x{11134}\\x{11173}\\x{11180}-\\x{11181}\\x{111B6}-\\x{111BE}\\x{111C9}-\\x{111CC}\\x{111CF}\\x{1122F}-\\x{11231}\\x{11234}\\x{11236}-\\x{11237}\\x{1123E}\\x{112DF}\\x{112E3}-\\x{112EA}\\x{11300}-\\x{11301}\\x{1133B}-\\x{1133C}\\x{11340}\\x{11366}-\\x{1136C}\\x{11370}-\\x{11374}\\x{11438}-\\x{1143F}\\x{11442}-\\x{11444}\\x{11446}\\x{1145E}\\x{114B3}-\\x{114B8}\\x{114BA}\\x{114BF}-\\x{114C0}\\x{114C2}-\\x{114C3}\\x{115B2}-\\x{115B5}\\x{115BC}-\\x{115BD}\\x{115BF}-\\x{115C0}\\x{115DC}-\\x{115DD}\\x{11633}-\\x{1163A}\\x{1163D}\\x{1163F}-\\x{11640}\\x{116AB}\\x{116AD}\\x{116B0}-\\x{116B5}\\x{116B7}\\x{1171D}-\\x{1171F}\\x{11722}-\\x{11725}\\x{11727}-\\x{1172B}\\x{1182F}-\\x{11837}\\x{11839}-\\x{1183A}\\x{1193B}-\\x{1193C}\\x{1193E}\\x{11943}\\x{119D4}-\\x{119D7}\\x{119DA}-\\x{119DB}\\x{119E0}\\x{11A01}-\\x{11A06}\\x{11A09}-\\x{11A0A}\\x{11A33}-\\x{11A38}\\x{11A3B}-\\x{11A3E}\\x{11A47}\\x{11A51}-\\x{11A56}\\x{11A59}-\\x{11A5B}\\x{11A8A}-\\x{11A96}\\x{11A98}-\\x{11A99}\\x{11C30}-\\x{11C36}\\x{11C38}-\\x{11C3D}\\x{11C92}-\\x{11CA7}\\x{11CAA}-\\x{11CB0}\\x{11CB2}-\\x{11CB3}\\x{11CB5}-\\x{11CB6}\\x{11D31}-\\x{11D36}\\x{11D3A}\\x{11D3C}-\\x{11D3D}\\x{11D3F}-\\x{11D45}\\x{11D47}\\x{11D90}-\\x{11D91}\\x{11D95}\\x{11D97}\\x{11EF3}-\\x{11EF4}\\x{16AF0}-\\x{16AF4}\\x{16B30}-\\x{16B36}\\x{16F4F}\\x{16F8F}-\\x{16F92}\\x{16FE4}\\x{1BC9D}-\\x{1BC9E}\\x{1D167}-\\x{1D169}\\x{1D17B}-\\x{1D182}\\x{1D185}-\\x{1D18B}\\x{1D1AA}-\\x{1D1AD}\\x{1D242}-\\x{1D244}\\x{1DA00}-\\x{1DA36}\\x{1DA3B}-\\x{1DA6C}\\x{1DA75}\\x{1DA84}\\x{1DA9B}-\\x{1DA9F}\\x{1DAA1}-\\x{1DAAF}\\x{1E000}-\\x{1E006}\\x{1E008}-\\x{1E018}\\x{1E01B}-\\x{1E021}\\x{1E023}-\\x{1E024}\\x{1E026}-\\x{1E02A}\\x{1E130}-\\x{1E136}\\x{1E2EC}-\\x{1E2EF}\\x{1E8D0}-\\x{1E8D6}\\x{1E944}-\\x{1E94A}\\x{E0100}-\\x{E01EF}]*$/u'; + const ZWNJ = '/([\\x{A872}\\x{10ACD}\\x{10AD7}\\x{10D00}\\x{10FCB}\\x{0620}\\x{0626}\\x{0628}\\x{062A}-\\x{062E}\\x{0633}-\\x{063F}\\x{0641}-\\x{0647}\\x{0649}-\\x{064A}\\x{066E}-\\x{066F}\\x{0678}-\\x{0687}\\x{069A}-\\x{06BF}\\x{06C1}-\\x{06C2}\\x{06CC}\\x{06CE}\\x{06D0}-\\x{06D1}\\x{06FA}-\\x{06FC}\\x{06FF}\\x{0712}-\\x{0714}\\x{071A}-\\x{071D}\\x{071F}-\\x{0727}\\x{0729}\\x{072B}\\x{072D}-\\x{072E}\\x{074E}-\\x{0758}\\x{075C}-\\x{076A}\\x{076D}-\\x{0770}\\x{0772}\\x{0775}-\\x{0777}\\x{077A}-\\x{077F}\\x{07CA}-\\x{07EA}\\x{0841}-\\x{0845}\\x{0848}\\x{084A}-\\x{0853}\\x{0855}\\x{0860}\\x{0862}-\\x{0865}\\x{0868}\\x{08A0}-\\x{08A9}\\x{08AF}-\\x{08B0}\\x{08B3}-\\x{08B4}\\x{08B6}-\\x{08B8}\\x{08BA}-\\x{08C7}\\x{1807}\\x{1820}-\\x{1842}\\x{1843}\\x{1844}-\\x{1878}\\x{1887}-\\x{18A8}\\x{18AA}\\x{A840}-\\x{A871}\\x{10AC0}-\\x{10AC4}\\x{10AD3}-\\x{10AD6}\\x{10AD8}-\\x{10ADC}\\x{10ADE}-\\x{10AE0}\\x{10AEB}-\\x{10AEE}\\x{10B80}\\x{10B82}\\x{10B86}-\\x{10B88}\\x{10B8A}-\\x{10B8B}\\x{10B8D}\\x{10B90}\\x{10BAD}-\\x{10BAE}\\x{10D01}-\\x{10D21}\\x{10D23}\\x{10F30}-\\x{10F32}\\x{10F34}-\\x{10F44}\\x{10F51}-\\x{10F53}\\x{10FB0}\\x{10FB2}-\\x{10FB3}\\x{10FB8}\\x{10FBB}-\\x{10FBC}\\x{10FBE}-\\x{10FBF}\\x{10FC1}\\x{10FC4}\\x{10FCA}\\x{1E900}-\\x{1E943}][\\x{00AD}\\x{0300}-\\x{036F}\\x{0483}-\\x{0487}\\x{0488}-\\x{0489}\\x{0591}-\\x{05BD}\\x{05BF}\\x{05C1}-\\x{05C2}\\x{05C4}-\\x{05C5}\\x{05C7}\\x{0610}-\\x{061A}\\x{061C}\\x{064B}-\\x{065F}\\x{0670}\\x{06D6}-\\x{06DC}\\x{06DF}-\\x{06E4}\\x{06E7}-\\x{06E8}\\x{06EA}-\\x{06ED}\\x{070F}\\x{0711}\\x{0730}-\\x{074A}\\x{07A6}-\\x{07B0}\\x{07EB}-\\x{07F3}\\x{07FD}\\x{0816}-\\x{0819}\\x{081B}-\\x{0823}\\x{0825}-\\x{0827}\\x{0829}-\\x{082D}\\x{0859}-\\x{085B}\\x{08D3}-\\x{08E1}\\x{08E3}-\\x{0902}\\x{093A}\\x{093C}\\x{0941}-\\x{0948}\\x{094D}\\x{0951}-\\x{0957}\\x{0962}-\\x{0963}\\x{0981}\\x{09BC}\\x{09C1}-\\x{09C4}\\x{09CD}\\x{09E2}-\\x{09E3}\\x{09FE}\\x{0A01}-\\x{0A02}\\x{0A3C}\\x{0A41}-\\x{0A42}\\x{0A47}-\\x{0A48}\\x{0A4B}-\\x{0A4D}\\x{0A51}\\x{0A70}-\\x{0A71}\\x{0A75}\\x{0A81}-\\x{0A82}\\x{0ABC}\\x{0AC1}-\\x{0AC5}\\x{0AC7}-\\x{0AC8}\\x{0ACD}\\x{0AE2}-\\x{0AE3}\\x{0AFA}-\\x{0AFF}\\x{0B01}\\x{0B3C}\\x{0B3F}\\x{0B41}-\\x{0B44}\\x{0B4D}\\x{0B55}-\\x{0B56}\\x{0B62}-\\x{0B63}\\x{0B82}\\x{0BC0}\\x{0BCD}\\x{0C00}\\x{0C04}\\x{0C3E}-\\x{0C40}\\x{0C46}-\\x{0C48}\\x{0C4A}-\\x{0C4D}\\x{0C55}-\\x{0C56}\\x{0C62}-\\x{0C63}\\x{0C81}\\x{0CBC}\\x{0CBF}\\x{0CC6}\\x{0CCC}-\\x{0CCD}\\x{0CE2}-\\x{0CE3}\\x{0D00}-\\x{0D01}\\x{0D3B}-\\x{0D3C}\\x{0D41}-\\x{0D44}\\x{0D4D}\\x{0D62}-\\x{0D63}\\x{0D81}\\x{0DCA}\\x{0DD2}-\\x{0DD4}\\x{0DD6}\\x{0E31}\\x{0E34}-\\x{0E3A}\\x{0E47}-\\x{0E4E}\\x{0EB1}\\x{0EB4}-\\x{0EBC}\\x{0EC8}-\\x{0ECD}\\x{0F18}-\\x{0F19}\\x{0F35}\\x{0F37}\\x{0F39}\\x{0F71}-\\x{0F7E}\\x{0F80}-\\x{0F84}\\x{0F86}-\\x{0F87}\\x{0F8D}-\\x{0F97}\\x{0F99}-\\x{0FBC}\\x{0FC6}\\x{102D}-\\x{1030}\\x{1032}-\\x{1037}\\x{1039}-\\x{103A}\\x{103D}-\\x{103E}\\x{1058}-\\x{1059}\\x{105E}-\\x{1060}\\x{1071}-\\x{1074}\\x{1082}\\x{1085}-\\x{1086}\\x{108D}\\x{109D}\\x{135D}-\\x{135F}\\x{1712}-\\x{1714}\\x{1732}-\\x{1734}\\x{1752}-\\x{1753}\\x{1772}-\\x{1773}\\x{17B4}-\\x{17B5}\\x{17B7}-\\x{17BD}\\x{17C6}\\x{17C9}-\\x{17D3}\\x{17DD}\\x{180B}-\\x{180D}\\x{1885}-\\x{1886}\\x{18A9}\\x{1920}-\\x{1922}\\x{1927}-\\x{1928}\\x{1932}\\x{1939}-\\x{193B}\\x{1A17}-\\x{1A18}\\x{1A1B}\\x{1A56}\\x{1A58}-\\x{1A5E}\\x{1A60}\\x{1A62}\\x{1A65}-\\x{1A6C}\\x{1A73}-\\x{1A7C}\\x{1A7F}\\x{1AB0}-\\x{1ABD}\\x{1ABE}\\x{1ABF}-\\x{1AC0}\\x{1B00}-\\x{1B03}\\x{1B34}\\x{1B36}-\\x{1B3A}\\x{1B3C}\\x{1B42}\\x{1B6B}-\\x{1B73}\\x{1B80}-\\x{1B81}\\x{1BA2}-\\x{1BA5}\\x{1BA8}-\\x{1BA9}\\x{1BAB}-\\x{1BAD}\\x{1BE6}\\x{1BE8}-\\x{1BE9}\\x{1BED}\\x{1BEF}-\\x{1BF1}\\x{1C2C}-\\x{1C33}\\x{1C36}-\\x{1C37}\\x{1CD0}-\\x{1CD2}\\x{1CD4}-\\x{1CE0}\\x{1CE2}-\\x{1CE8}\\x{1CED}\\x{1CF4}\\x{1CF8}-\\x{1CF9}\\x{1DC0}-\\x{1DF9}\\x{1DFB}-\\x{1DFF}\\x{200B}\\x{200E}-\\x{200F}\\x{202A}-\\x{202E}\\x{2060}-\\x{2064}\\x{206A}-\\x{206F}\\x{20D0}-\\x{20DC}\\x{20DD}-\\x{20E0}\\x{20E1}\\x{20E2}-\\x{20E4}\\x{20E5}-\\x{20F0}\\x{2CEF}-\\x{2CF1}\\x{2D7F}\\x{2DE0}-\\x{2DFF}\\x{302A}-\\x{302D}\\x{3099}-\\x{309A}\\x{A66F}\\x{A670}-\\x{A672}\\x{A674}-\\x{A67D}\\x{A69E}-\\x{A69F}\\x{A6F0}-\\x{A6F1}\\x{A802}\\x{A806}\\x{A80B}\\x{A825}-\\x{A826}\\x{A82C}\\x{A8C4}-\\x{A8C5}\\x{A8E0}-\\x{A8F1}\\x{A8FF}\\x{A926}-\\x{A92D}\\x{A947}-\\x{A951}\\x{A980}-\\x{A982}\\x{A9B3}\\x{A9B6}-\\x{A9B9}\\x{A9BC}-\\x{A9BD}\\x{A9E5}\\x{AA29}-\\x{AA2E}\\x{AA31}-\\x{AA32}\\x{AA35}-\\x{AA36}\\x{AA43}\\x{AA4C}\\x{AA7C}\\x{AAB0}\\x{AAB2}-\\x{AAB4}\\x{AAB7}-\\x{AAB8}\\x{AABE}-\\x{AABF}\\x{AAC1}\\x{AAEC}-\\x{AAED}\\x{AAF6}\\x{ABE5}\\x{ABE8}\\x{ABED}\\x{FB1E}\\x{FE00}-\\x{FE0F}\\x{FE20}-\\x{FE2F}\\x{FEFF}\\x{FFF9}-\\x{FFFB}\\x{101FD}\\x{102E0}\\x{10376}-\\x{1037A}\\x{10A01}-\\x{10A03}\\x{10A05}-\\x{10A06}\\x{10A0C}-\\x{10A0F}\\x{10A38}-\\x{10A3A}\\x{10A3F}\\x{10AE5}-\\x{10AE6}\\x{10D24}-\\x{10D27}\\x{10EAB}-\\x{10EAC}\\x{10F46}-\\x{10F50}\\x{11001}\\x{11038}-\\x{11046}\\x{1107F}-\\x{11081}\\x{110B3}-\\x{110B6}\\x{110B9}-\\x{110BA}\\x{11100}-\\x{11102}\\x{11127}-\\x{1112B}\\x{1112D}-\\x{11134}\\x{11173}\\x{11180}-\\x{11181}\\x{111B6}-\\x{111BE}\\x{111C9}-\\x{111CC}\\x{111CF}\\x{1122F}-\\x{11231}\\x{11234}\\x{11236}-\\x{11237}\\x{1123E}\\x{112DF}\\x{112E3}-\\x{112EA}\\x{11300}-\\x{11301}\\x{1133B}-\\x{1133C}\\x{11340}\\x{11366}-\\x{1136C}\\x{11370}-\\x{11374}\\x{11438}-\\x{1143F}\\x{11442}-\\x{11444}\\x{11446}\\x{1145E}\\x{114B3}-\\x{114B8}\\x{114BA}\\x{114BF}-\\x{114C0}\\x{114C2}-\\x{114C3}\\x{115B2}-\\x{115B5}\\x{115BC}-\\x{115BD}\\x{115BF}-\\x{115C0}\\x{115DC}-\\x{115DD}\\x{11633}-\\x{1163A}\\x{1163D}\\x{1163F}-\\x{11640}\\x{116AB}\\x{116AD}\\x{116B0}-\\x{116B5}\\x{116B7}\\x{1171D}-\\x{1171F}\\x{11722}-\\x{11725}\\x{11727}-\\x{1172B}\\x{1182F}-\\x{11837}\\x{11839}-\\x{1183A}\\x{1193B}-\\x{1193C}\\x{1193E}\\x{11943}\\x{119D4}-\\x{119D7}\\x{119DA}-\\x{119DB}\\x{119E0}\\x{11A01}-\\x{11A0A}\\x{11A33}-\\x{11A38}\\x{11A3B}-\\x{11A3E}\\x{11A47}\\x{11A51}-\\x{11A56}\\x{11A59}-\\x{11A5B}\\x{11A8A}-\\x{11A96}\\x{11A98}-\\x{11A99}\\x{11C30}-\\x{11C36}\\x{11C38}-\\x{11C3D}\\x{11C3F}\\x{11C92}-\\x{11CA7}\\x{11CAA}-\\x{11CB0}\\x{11CB2}-\\x{11CB3}\\x{11CB5}-\\x{11CB6}\\x{11D31}-\\x{11D36}\\x{11D3A}\\x{11D3C}-\\x{11D3D}\\x{11D3F}-\\x{11D45}\\x{11D47}\\x{11D90}-\\x{11D91}\\x{11D95}\\x{11D97}\\x{11EF3}-\\x{11EF4}\\x{13430}-\\x{13438}\\x{16AF0}-\\x{16AF4}\\x{16B30}-\\x{16B36}\\x{16F4F}\\x{16F8F}-\\x{16F92}\\x{16FE4}\\x{1BC9D}-\\x{1BC9E}\\x{1BCA0}-\\x{1BCA3}\\x{1D167}-\\x{1D169}\\x{1D173}-\\x{1D17A}\\x{1D17B}-\\x{1D182}\\x{1D185}-\\x{1D18B}\\x{1D1AA}-\\x{1D1AD}\\x{1D242}-\\x{1D244}\\x{1DA00}-\\x{1DA36}\\x{1DA3B}-\\x{1DA6C}\\x{1DA75}\\x{1DA84}\\x{1DA9B}-\\x{1DA9F}\\x{1DAA1}-\\x{1DAAF}\\x{1E000}-\\x{1E006}\\x{1E008}-\\x{1E018}\\x{1E01B}-\\x{1E021}\\x{1E023}-\\x{1E024}\\x{1E026}-\\x{1E02A}\\x{1E130}-\\x{1E136}\\x{1E2EC}-\\x{1E2EF}\\x{1E8D0}-\\x{1E8D6}\\x{1E944}-\\x{1E94A}\\x{1E94B}\\x{E0001}\\x{E0020}-\\x{E007F}\\x{E0100}-\\x{E01EF}]*\\x{200C}[\\x{00AD}\\x{0300}-\\x{036F}\\x{0483}-\\x{0487}\\x{0488}-\\x{0489}\\x{0591}-\\x{05BD}\\x{05BF}\\x{05C1}-\\x{05C2}\\x{05C4}-\\x{05C5}\\x{05C7}\\x{0610}-\\x{061A}\\x{061C}\\x{064B}-\\x{065F}\\x{0670}\\x{06D6}-\\x{06DC}\\x{06DF}-\\x{06E4}\\x{06E7}-\\x{06E8}\\x{06EA}-\\x{06ED}\\x{070F}\\x{0711}\\x{0730}-\\x{074A}\\x{07A6}-\\x{07B0}\\x{07EB}-\\x{07F3}\\x{07FD}\\x{0816}-\\x{0819}\\x{081B}-\\x{0823}\\x{0825}-\\x{0827}\\x{0829}-\\x{082D}\\x{0859}-\\x{085B}\\x{08D3}-\\x{08E1}\\x{08E3}-\\x{0902}\\x{093A}\\x{093C}\\x{0941}-\\x{0948}\\x{094D}\\x{0951}-\\x{0957}\\x{0962}-\\x{0963}\\x{0981}\\x{09BC}\\x{09C1}-\\x{09C4}\\x{09CD}\\x{09E2}-\\x{09E3}\\x{09FE}\\x{0A01}-\\x{0A02}\\x{0A3C}\\x{0A41}-\\x{0A42}\\x{0A47}-\\x{0A48}\\x{0A4B}-\\x{0A4D}\\x{0A51}\\x{0A70}-\\x{0A71}\\x{0A75}\\x{0A81}-\\x{0A82}\\x{0ABC}\\x{0AC1}-\\x{0AC5}\\x{0AC7}-\\x{0AC8}\\x{0ACD}\\x{0AE2}-\\x{0AE3}\\x{0AFA}-\\x{0AFF}\\x{0B01}\\x{0B3C}\\x{0B3F}\\x{0B41}-\\x{0B44}\\x{0B4D}\\x{0B55}-\\x{0B56}\\x{0B62}-\\x{0B63}\\x{0B82}\\x{0BC0}\\x{0BCD}\\x{0C00}\\x{0C04}\\x{0C3E}-\\x{0C40}\\x{0C46}-\\x{0C48}\\x{0C4A}-\\x{0C4D}\\x{0C55}-\\x{0C56}\\x{0C62}-\\x{0C63}\\x{0C81}\\x{0CBC}\\x{0CBF}\\x{0CC6}\\x{0CCC}-\\x{0CCD}\\x{0CE2}-\\x{0CE3}\\x{0D00}-\\x{0D01}\\x{0D3B}-\\x{0D3C}\\x{0D41}-\\x{0D44}\\x{0D4D}\\x{0D62}-\\x{0D63}\\x{0D81}\\x{0DCA}\\x{0DD2}-\\x{0DD4}\\x{0DD6}\\x{0E31}\\x{0E34}-\\x{0E3A}\\x{0E47}-\\x{0E4E}\\x{0EB1}\\x{0EB4}-\\x{0EBC}\\x{0EC8}-\\x{0ECD}\\x{0F18}-\\x{0F19}\\x{0F35}\\x{0F37}\\x{0F39}\\x{0F71}-\\x{0F7E}\\x{0F80}-\\x{0F84}\\x{0F86}-\\x{0F87}\\x{0F8D}-\\x{0F97}\\x{0F99}-\\x{0FBC}\\x{0FC6}\\x{102D}-\\x{1030}\\x{1032}-\\x{1037}\\x{1039}-\\x{103A}\\x{103D}-\\x{103E}\\x{1058}-\\x{1059}\\x{105E}-\\x{1060}\\x{1071}-\\x{1074}\\x{1082}\\x{1085}-\\x{1086}\\x{108D}\\x{109D}\\x{135D}-\\x{135F}\\x{1712}-\\x{1714}\\x{1732}-\\x{1734}\\x{1752}-\\x{1753}\\x{1772}-\\x{1773}\\x{17B4}-\\x{17B5}\\x{17B7}-\\x{17BD}\\x{17C6}\\x{17C9}-\\x{17D3}\\x{17DD}\\x{180B}-\\x{180D}\\x{1885}-\\x{1886}\\x{18A9}\\x{1920}-\\x{1922}\\x{1927}-\\x{1928}\\x{1932}\\x{1939}-\\x{193B}\\x{1A17}-\\x{1A18}\\x{1A1B}\\x{1A56}\\x{1A58}-\\x{1A5E}\\x{1A60}\\x{1A62}\\x{1A65}-\\x{1A6C}\\x{1A73}-\\x{1A7C}\\x{1A7F}\\x{1AB0}-\\x{1ABD}\\x{1ABE}\\x{1ABF}-\\x{1AC0}\\x{1B00}-\\x{1B03}\\x{1B34}\\x{1B36}-\\x{1B3A}\\x{1B3C}\\x{1B42}\\x{1B6B}-\\x{1B73}\\x{1B80}-\\x{1B81}\\x{1BA2}-\\x{1BA5}\\x{1BA8}-\\x{1BA9}\\x{1BAB}-\\x{1BAD}\\x{1BE6}\\x{1BE8}-\\x{1BE9}\\x{1BED}\\x{1BEF}-\\x{1BF1}\\x{1C2C}-\\x{1C33}\\x{1C36}-\\x{1C37}\\x{1CD0}-\\x{1CD2}\\x{1CD4}-\\x{1CE0}\\x{1CE2}-\\x{1CE8}\\x{1CED}\\x{1CF4}\\x{1CF8}-\\x{1CF9}\\x{1DC0}-\\x{1DF9}\\x{1DFB}-\\x{1DFF}\\x{200B}\\x{200E}-\\x{200F}\\x{202A}-\\x{202E}\\x{2060}-\\x{2064}\\x{206A}-\\x{206F}\\x{20D0}-\\x{20DC}\\x{20DD}-\\x{20E0}\\x{20E1}\\x{20E2}-\\x{20E4}\\x{20E5}-\\x{20F0}\\x{2CEF}-\\x{2CF1}\\x{2D7F}\\x{2DE0}-\\x{2DFF}\\x{302A}-\\x{302D}\\x{3099}-\\x{309A}\\x{A66F}\\x{A670}-\\x{A672}\\x{A674}-\\x{A67D}\\x{A69E}-\\x{A69F}\\x{A6F0}-\\x{A6F1}\\x{A802}\\x{A806}\\x{A80B}\\x{A825}-\\x{A826}\\x{A82C}\\x{A8C4}-\\x{A8C5}\\x{A8E0}-\\x{A8F1}\\x{A8FF}\\x{A926}-\\x{A92D}\\x{A947}-\\x{A951}\\x{A980}-\\x{A982}\\x{A9B3}\\x{A9B6}-\\x{A9B9}\\x{A9BC}-\\x{A9BD}\\x{A9E5}\\x{AA29}-\\x{AA2E}\\x{AA31}-\\x{AA32}\\x{AA35}-\\x{AA36}\\x{AA43}\\x{AA4C}\\x{AA7C}\\x{AAB0}\\x{AAB2}-\\x{AAB4}\\x{AAB7}-\\x{AAB8}\\x{AABE}-\\x{AABF}\\x{AAC1}\\x{AAEC}-\\x{AAED}\\x{AAF6}\\x{ABE5}\\x{ABE8}\\x{ABED}\\x{FB1E}\\x{FE00}-\\x{FE0F}\\x{FE20}-\\x{FE2F}\\x{FEFF}\\x{FFF9}-\\x{FFFB}\\x{101FD}\\x{102E0}\\x{10376}-\\x{1037A}\\x{10A01}-\\x{10A03}\\x{10A05}-\\x{10A06}\\x{10A0C}-\\x{10A0F}\\x{10A38}-\\x{10A3A}\\x{10A3F}\\x{10AE5}-\\x{10AE6}\\x{10D24}-\\x{10D27}\\x{10EAB}-\\x{10EAC}\\x{10F46}-\\x{10F50}\\x{11001}\\x{11038}-\\x{11046}\\x{1107F}-\\x{11081}\\x{110B3}-\\x{110B6}\\x{110B9}-\\x{110BA}\\x{11100}-\\x{11102}\\x{11127}-\\x{1112B}\\x{1112D}-\\x{11134}\\x{11173}\\x{11180}-\\x{11181}\\x{111B6}-\\x{111BE}\\x{111C9}-\\x{111CC}\\x{111CF}\\x{1122F}-\\x{11231}\\x{11234}\\x{11236}-\\x{11237}\\x{1123E}\\x{112DF}\\x{112E3}-\\x{112EA}\\x{11300}-\\x{11301}\\x{1133B}-\\x{1133C}\\x{11340}\\x{11366}-\\x{1136C}\\x{11370}-\\x{11374}\\x{11438}-\\x{1143F}\\x{11442}-\\x{11444}\\x{11446}\\x{1145E}\\x{114B3}-\\x{114B8}\\x{114BA}\\x{114BF}-\\x{114C0}\\x{114C2}-\\x{114C3}\\x{115B2}-\\x{115B5}\\x{115BC}-\\x{115BD}\\x{115BF}-\\x{115C0}\\x{115DC}-\\x{115DD}\\x{11633}-\\x{1163A}\\x{1163D}\\x{1163F}-\\x{11640}\\x{116AB}\\x{116AD}\\x{116B0}-\\x{116B5}\\x{116B7}\\x{1171D}-\\x{1171F}\\x{11722}-\\x{11725}\\x{11727}-\\x{1172B}\\x{1182F}-\\x{11837}\\x{11839}-\\x{1183A}\\x{1193B}-\\x{1193C}\\x{1193E}\\x{11943}\\x{119D4}-\\x{119D7}\\x{119DA}-\\x{119DB}\\x{119E0}\\x{11A01}-\\x{11A0A}\\x{11A33}-\\x{11A38}\\x{11A3B}-\\x{11A3E}\\x{11A47}\\x{11A51}-\\x{11A56}\\x{11A59}-\\x{11A5B}\\x{11A8A}-\\x{11A96}\\x{11A98}-\\x{11A99}\\x{11C30}-\\x{11C36}\\x{11C38}-\\x{11C3D}\\x{11C3F}\\x{11C92}-\\x{11CA7}\\x{11CAA}-\\x{11CB0}\\x{11CB2}-\\x{11CB3}\\x{11CB5}-\\x{11CB6}\\x{11D31}-\\x{11D36}\\x{11D3A}\\x{11D3C}-\\x{11D3D}\\x{11D3F}-\\x{11D45}\\x{11D47}\\x{11D90}-\\x{11D91}\\x{11D95}\\x{11D97}\\x{11EF3}-\\x{11EF4}\\x{13430}-\\x{13438}\\x{16AF0}-\\x{16AF4}\\x{16B30}-\\x{16B36}\\x{16F4F}\\x{16F8F}-\\x{16F92}\\x{16FE4}\\x{1BC9D}-\\x{1BC9E}\\x{1BCA0}-\\x{1BCA3}\\x{1D167}-\\x{1D169}\\x{1D173}-\\x{1D17A}\\x{1D17B}-\\x{1D182}\\x{1D185}-\\x{1D18B}\\x{1D1AA}-\\x{1D1AD}\\x{1D242}-\\x{1D244}\\x{1DA00}-\\x{1DA36}\\x{1DA3B}-\\x{1DA6C}\\x{1DA75}\\x{1DA84}\\x{1DA9B}-\\x{1DA9F}\\x{1DAA1}-\\x{1DAAF}\\x{1E000}-\\x{1E006}\\x{1E008}-\\x{1E018}\\x{1E01B}-\\x{1E021}\\x{1E023}-\\x{1E024}\\x{1E026}-\\x{1E02A}\\x{1E130}-\\x{1E136}\\x{1E2EC}-\\x{1E2EF}\\x{1E8D0}-\\x{1E8D6}\\x{1E944}-\\x{1E94A}\\x{1E94B}\\x{E0001}\\x{E0020}-\\x{E007F}\\x{E0100}-\\x{E01EF}]*)[\\x{0622}-\\x{0625}\\x{0627}\\x{0629}\\x{062F}-\\x{0632}\\x{0648}\\x{0671}-\\x{0673}\\x{0675}-\\x{0677}\\x{0688}-\\x{0699}\\x{06C0}\\x{06C3}-\\x{06CB}\\x{06CD}\\x{06CF}\\x{06D2}-\\x{06D3}\\x{06D5}\\x{06EE}-\\x{06EF}\\x{0710}\\x{0715}-\\x{0719}\\x{071E}\\x{0728}\\x{072A}\\x{072C}\\x{072F}\\x{074D}\\x{0759}-\\x{075B}\\x{076B}-\\x{076C}\\x{0771}\\x{0773}-\\x{0774}\\x{0778}-\\x{0779}\\x{0840}\\x{0846}-\\x{0847}\\x{0849}\\x{0854}\\x{0856}-\\x{0858}\\x{0867}\\x{0869}-\\x{086A}\\x{08AA}-\\x{08AC}\\x{08AE}\\x{08B1}-\\x{08B2}\\x{08B9}\\x{10AC5}\\x{10AC7}\\x{10AC9}-\\x{10ACA}\\x{10ACE}-\\x{10AD2}\\x{10ADD}\\x{10AE1}\\x{10AE4}\\x{10AEF}\\x{10B81}\\x{10B83}-\\x{10B85}\\x{10B89}\\x{10B8C}\\x{10B8E}-\\x{10B8F}\\x{10B91}\\x{10BA9}-\\x{10BAC}\\x{10D22}\\x{10F33}\\x{10F54}\\x{10FB4}-\\x{10FB6}\\x{10FB9}-\\x{10FBA}\\x{10FBD}\\x{10FC2}-\\x{10FC3}\\x{10FC9}\\x{0620}\\x{0626}\\x{0628}\\x{062A}-\\x{062E}\\x{0633}-\\x{063F}\\x{0641}-\\x{0647}\\x{0649}-\\x{064A}\\x{066E}-\\x{066F}\\x{0678}-\\x{0687}\\x{069A}-\\x{06BF}\\x{06C1}-\\x{06C2}\\x{06CC}\\x{06CE}\\x{06D0}-\\x{06D1}\\x{06FA}-\\x{06FC}\\x{06FF}\\x{0712}-\\x{0714}\\x{071A}-\\x{071D}\\x{071F}-\\x{0727}\\x{0729}\\x{072B}\\x{072D}-\\x{072E}\\x{074E}-\\x{0758}\\x{075C}-\\x{076A}\\x{076D}-\\x{0770}\\x{0772}\\x{0775}-\\x{0777}\\x{077A}-\\x{077F}\\x{07CA}-\\x{07EA}\\x{0841}-\\x{0845}\\x{0848}\\x{084A}-\\x{0853}\\x{0855}\\x{0860}\\x{0862}-\\x{0865}\\x{0868}\\x{08A0}-\\x{08A9}\\x{08AF}-\\x{08B0}\\x{08B3}-\\x{08B4}\\x{08B6}-\\x{08B8}\\x{08BA}-\\x{08C7}\\x{1807}\\x{1820}-\\x{1842}\\x{1843}\\x{1844}-\\x{1878}\\x{1887}-\\x{18A8}\\x{18AA}\\x{A840}-\\x{A871}\\x{10AC0}-\\x{10AC4}\\x{10AD3}-\\x{10AD6}\\x{10AD8}-\\x{10ADC}\\x{10ADE}-\\x{10AE0}\\x{10AEB}-\\x{10AEE}\\x{10B80}\\x{10B82}\\x{10B86}-\\x{10B88}\\x{10B8A}-\\x{10B8B}\\x{10B8D}\\x{10B90}\\x{10BAD}-\\x{10BAE}\\x{10D01}-\\x{10D21}\\x{10D23}\\x{10F30}-\\x{10F32}\\x{10F34}-\\x{10F44}\\x{10F51}-\\x{10F53}\\x{10FB0}\\x{10FB2}-\\x{10FB3}\\x{10FB8}\\x{10FBB}-\\x{10FBC}\\x{10FBE}-\\x{10FBF}\\x{10FC1}\\x{10FC4}\\x{10FCA}\\x{1E900}-\\x{1E943}]/u'; +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/deviation.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/deviation.php new file mode 100644 index 00000000..b36b08a0 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/deviation.php @@ -0,0 +1,5 @@ + 'ss', 962 => 'σ', 8204 => '', 8205 => ''); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/disallowed.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/disallowed.php new file mode 100644 index 00000000..b09a649b --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/disallowed.php @@ -0,0 +1,5 @@ + \true, 889 => \true, 896 => \true, 897 => \true, 898 => \true, 899 => \true, 907 => \true, 909 => \true, 930 => \true, 1216 => \true, 1328 => \true, 1367 => \true, 1368 => \true, 1419 => \true, 1420 => \true, 1424 => \true, 1480 => \true, 1481 => \true, 1482 => \true, 1483 => \true, 1484 => \true, 1485 => \true, 1486 => \true, 1487 => \true, 1515 => \true, 1516 => \true, 1517 => \true, 1518 => \true, 1525 => \true, 1526 => \true, 1527 => \true, 1528 => \true, 1529 => \true, 1530 => \true, 1531 => \true, 1532 => \true, 1533 => \true, 1534 => \true, 1535 => \true, 1536 => \true, 1537 => \true, 1538 => \true, 1539 => \true, 1540 => \true, 1541 => \true, 1564 => \true, 1565 => \true, 1757 => \true, 1806 => \true, 1807 => \true, 1867 => \true, 1868 => \true, 1970 => \true, 1971 => \true, 1972 => \true, 1973 => \true, 1974 => \true, 1975 => \true, 1976 => \true, 1977 => \true, 1978 => \true, 1979 => \true, 1980 => \true, 1981 => \true, 1982 => \true, 1983 => \true, 2043 => \true, 2044 => \true, 2094 => \true, 2095 => \true, 2111 => \true, 2140 => \true, 2141 => \true, 2143 => \true, 2229 => \true, 2248 => \true, 2249 => \true, 2250 => \true, 2251 => \true, 2252 => \true, 2253 => \true, 2254 => \true, 2255 => \true, 2256 => \true, 2257 => \true, 2258 => \true, 2274 => \true, 2436 => \true, 2445 => \true, 2446 => \true, 2449 => \true, 2450 => \true, 2473 => \true, 2481 => \true, 2483 => \true, 2484 => \true, 2485 => \true, 2490 => \true, 2491 => \true, 2501 => \true, 2502 => \true, 2505 => \true, 2506 => \true, 2511 => \true, 2512 => \true, 2513 => \true, 2514 => \true, 2515 => \true, 2516 => \true, 2517 => \true, 2518 => \true, 2520 => \true, 2521 => \true, 2522 => \true, 2523 => \true, 2526 => \true, 2532 => \true, 2533 => \true, 2559 => \true, 2560 => \true, 2564 => \true, 2571 => \true, 2572 => \true, 2573 => \true, 2574 => \true, 2577 => \true, 2578 => \true, 2601 => \true, 2609 => \true, 2612 => \true, 2615 => \true, 2618 => \true, 2619 => \true, 2621 => \true, 2627 => \true, 2628 => \true, 2629 => \true, 2630 => \true, 2633 => \true, 2634 => \true, 2638 => \true, 2639 => \true, 2640 => \true, 2642 => \true, 2643 => \true, 2644 => \true, 2645 => \true, 2646 => \true, 2647 => \true, 2648 => \true, 2653 => \true, 2655 => \true, 2656 => \true, 2657 => \true, 2658 => \true, 2659 => \true, 2660 => \true, 2661 => \true, 2679 => \true, 2680 => \true, 2681 => \true, 2682 => \true, 2683 => \true, 2684 => \true, 2685 => \true, 2686 => \true, 2687 => \true, 2688 => \true, 2692 => \true, 2702 => \true, 2706 => \true, 2729 => \true, 2737 => \true, 2740 => \true, 2746 => \true, 2747 => \true, 2758 => \true, 2762 => \true, 2766 => \true, 2767 => \true, 2769 => \true, 2770 => \true, 2771 => \true, 2772 => \true, 2773 => \true, 2774 => \true, 2775 => \true, 2776 => \true, 2777 => \true, 2778 => \true, 2779 => \true, 2780 => \true, 2781 => \true, 2782 => \true, 2783 => \true, 2788 => \true, 2789 => \true, 2802 => \true, 2803 => \true, 2804 => \true, 2805 => \true, 2806 => \true, 2807 => \true, 2808 => \true, 2816 => \true, 2820 => \true, 2829 => \true, 2830 => \true, 2833 => \true, 2834 => \true, 2857 => \true, 2865 => \true, 2868 => \true, 2874 => \true, 2875 => \true, 2885 => \true, 2886 => \true, 2889 => \true, 2890 => \true, 2894 => \true, 2895 => \true, 2896 => \true, 2897 => \true, 2898 => \true, 2899 => \true, 2900 => \true, 2904 => \true, 2905 => \true, 2906 => \true, 2907 => \true, 2910 => \true, 2916 => \true, 2917 => \true, 2936 => \true, 2937 => \true, 2938 => \true, 2939 => \true, 2940 => \true, 2941 => \true, 2942 => \true, 2943 => \true, 2944 => \true, 2945 => \true, 2948 => \true, 2955 => \true, 2956 => \true, 2957 => \true, 2961 => \true, 2966 => \true, 2967 => \true, 2968 => \true, 2971 => \true, 2973 => \true, 2976 => \true, 2977 => \true, 2978 => \true, 2981 => \true, 2982 => \true, 2983 => \true, 2987 => \true, 2988 => \true, 2989 => \true, 3002 => \true, 3003 => \true, 3004 => \true, 3005 => \true, 3011 => \true, 3012 => \true, 3013 => \true, 3017 => \true, 3022 => \true, 3023 => \true, 3025 => \true, 3026 => \true, 3027 => \true, 3028 => \true, 3029 => \true, 3030 => \true, 3032 => \true, 3033 => \true, 3034 => \true, 3035 => \true, 3036 => \true, 3037 => \true, 3038 => \true, 3039 => \true, 3040 => \true, 3041 => \true, 3042 => \true, 3043 => \true, 3044 => \true, 3045 => \true, 3067 => \true, 3068 => \true, 3069 => \true, 3070 => \true, 3071 => \true, 3085 => \true, 3089 => \true, 3113 => \true, 3130 => \true, 3131 => \true, 3132 => \true, 3141 => \true, 3145 => \true, 3150 => \true, 3151 => \true, 3152 => \true, 3153 => \true, 3154 => \true, 3155 => \true, 3156 => \true, 3159 => \true, 3163 => \true, 3164 => \true, 3165 => \true, 3166 => \true, 3167 => \true, 3172 => \true, 3173 => \true, 3184 => \true, 3185 => \true, 3186 => \true, 3187 => \true, 3188 => \true, 3189 => \true, 3190 => \true, 3213 => \true, 3217 => \true, 3241 => \true, 3252 => \true, 3258 => \true, 3259 => \true, 3269 => \true, 3273 => \true, 3278 => \true, 3279 => \true, 3280 => \true, 3281 => \true, 3282 => \true, 3283 => \true, 3284 => \true, 3287 => \true, 3288 => \true, 3289 => \true, 3290 => \true, 3291 => \true, 3292 => \true, 3293 => \true, 3295 => \true, 3300 => \true, 3301 => \true, 3312 => \true, 3315 => \true, 3316 => \true, 3317 => \true, 3318 => \true, 3319 => \true, 3320 => \true, 3321 => \true, 3322 => \true, 3323 => \true, 3324 => \true, 3325 => \true, 3326 => \true, 3327 => \true, 3341 => \true, 3345 => \true, 3397 => \true, 3401 => \true, 3408 => \true, 3409 => \true, 3410 => \true, 3411 => \true, 3428 => \true, 3429 => \true, 3456 => \true, 3460 => \true, 3479 => \true, 3480 => \true, 3481 => \true, 3506 => \true, 3516 => \true, 3518 => \true, 3519 => \true, 3527 => \true, 3528 => \true, 3529 => \true, 3531 => \true, 3532 => \true, 3533 => \true, 3534 => \true, 3541 => \true, 3543 => \true, 3552 => \true, 3553 => \true, 3554 => \true, 3555 => \true, 3556 => \true, 3557 => \true, 3568 => \true, 3569 => \true, 3573 => \true, 3574 => \true, 3575 => \true, 3576 => \true, 3577 => \true, 3578 => \true, 3579 => \true, 3580 => \true, 3581 => \true, 3582 => \true, 3583 => \true, 3584 => \true, 3643 => \true, 3644 => \true, 3645 => \true, 3646 => \true, 3715 => \true, 3717 => \true, 3723 => \true, 3748 => \true, 3750 => \true, 3774 => \true, 3775 => \true, 3781 => \true, 3783 => \true, 3790 => \true, 3791 => \true, 3802 => \true, 3803 => \true, 3912 => \true, 3949 => \true, 3950 => \true, 3951 => \true, 3952 => \true, 3992 => \true, 4029 => \true, 4045 => \true, 4294 => \true, 4296 => \true, 4297 => \true, 4298 => \true, 4299 => \true, 4300 => \true, 4302 => \true, 4303 => \true, 4447 => \true, 4448 => \true, 4681 => \true, 4686 => \true, 4687 => \true, 4695 => \true, 4697 => \true, 4702 => \true, 4703 => \true, 4745 => \true, 4750 => \true, 4751 => \true, 4785 => \true, 4790 => \true, 4791 => \true, 4799 => \true, 4801 => \true, 4806 => \true, 4807 => \true, 4823 => \true, 4881 => \true, 4886 => \true, 4887 => \true, 4955 => \true, 4956 => \true, 4989 => \true, 4990 => \true, 4991 => \true, 5018 => \true, 5019 => \true, 5020 => \true, 5021 => \true, 5022 => \true, 5023 => \true, 5110 => \true, 5111 => \true, 5118 => \true, 5119 => \true, 5760 => \true, 5789 => \true, 5790 => \true, 5791 => \true, 5881 => \true, 5882 => \true, 5883 => \true, 5884 => \true, 5885 => \true, 5886 => \true, 5887 => \true, 5901 => \true, 5909 => \true, 5910 => \true, 5911 => \true, 5912 => \true, 5913 => \true, 5914 => \true, 5915 => \true, 5916 => \true, 5917 => \true, 5918 => \true, 5919 => \true, 5943 => \true, 5944 => \true, 5945 => \true, 5946 => \true, 5947 => \true, 5948 => \true, 5949 => \true, 5950 => \true, 5951 => \true, 5972 => \true, 5973 => \true, 5974 => \true, 5975 => \true, 5976 => \true, 5977 => \true, 5978 => \true, 5979 => \true, 5980 => \true, 5981 => \true, 5982 => \true, 5983 => \true, 5997 => \true, 6001 => \true, 6004 => \true, 6005 => \true, 6006 => \true, 6007 => \true, 6008 => \true, 6009 => \true, 6010 => \true, 6011 => \true, 6012 => \true, 6013 => \true, 6014 => \true, 6015 => \true, 6068 => \true, 6069 => \true, 6110 => \true, 6111 => \true, 6122 => \true, 6123 => \true, 6124 => \true, 6125 => \true, 6126 => \true, 6127 => \true, 6138 => \true, 6139 => \true, 6140 => \true, 6141 => \true, 6142 => \true, 6143 => \true, 6150 => \true, 6158 => \true, 6159 => \true, 6170 => \true, 6171 => \true, 6172 => \true, 6173 => \true, 6174 => \true, 6175 => \true, 6265 => \true, 6266 => \true, 6267 => \true, 6268 => \true, 6269 => \true, 6270 => \true, 6271 => \true, 6315 => \true, 6316 => \true, 6317 => \true, 6318 => \true, 6319 => \true, 6390 => \true, 6391 => \true, 6392 => \true, 6393 => \true, 6394 => \true, 6395 => \true, 6396 => \true, 6397 => \true, 6398 => \true, 6399 => \true, 6431 => \true, 6444 => \true, 6445 => \true, 6446 => \true, 6447 => \true, 6460 => \true, 6461 => \true, 6462 => \true, 6463 => \true, 6465 => \true, 6466 => \true, 6467 => \true, 6510 => \true, 6511 => \true, 6517 => \true, 6518 => \true, 6519 => \true, 6520 => \true, 6521 => \true, 6522 => \true, 6523 => \true, 6524 => \true, 6525 => \true, 6526 => \true, 6527 => \true, 6572 => \true, 6573 => \true, 6574 => \true, 6575 => \true, 6602 => \true, 6603 => \true, 6604 => \true, 6605 => \true, 6606 => \true, 6607 => \true, 6619 => \true, 6620 => \true, 6621 => \true, 6684 => \true, 6685 => \true, 6751 => \true, 6781 => \true, 6782 => \true, 6794 => \true, 6795 => \true, 6796 => \true, 6797 => \true, 6798 => \true, 6799 => \true, 6810 => \true, 6811 => \true, 6812 => \true, 6813 => \true, 6814 => \true, 6815 => \true, 6830 => \true, 6831 => \true, 6988 => \true, 6989 => \true, 6990 => \true, 6991 => \true, 7037 => \true, 7038 => \true, 7039 => \true, 7156 => \true, 7157 => \true, 7158 => \true, 7159 => \true, 7160 => \true, 7161 => \true, 7162 => \true, 7163 => \true, 7224 => \true, 7225 => \true, 7226 => \true, 7242 => \true, 7243 => \true, 7244 => \true, 7305 => \true, 7306 => \true, 7307 => \true, 7308 => \true, 7309 => \true, 7310 => \true, 7311 => \true, 7355 => \true, 7356 => \true, 7368 => \true, 7369 => \true, 7370 => \true, 7371 => \true, 7372 => \true, 7373 => \true, 7374 => \true, 7375 => \true, 7419 => \true, 7420 => \true, 7421 => \true, 7422 => \true, 7423 => \true, 7674 => \true, 7958 => \true, 7959 => \true, 7966 => \true, 7967 => \true, 8006 => \true, 8007 => \true, 8014 => \true, 8015 => \true, 8024 => \true, 8026 => \true, 8028 => \true, 8030 => \true, 8062 => \true, 8063 => \true, 8117 => \true, 8133 => \true, 8148 => \true, 8149 => \true, 8156 => \true, 8176 => \true, 8177 => \true, 8181 => \true, 8191 => \true, 8206 => \true, 8207 => \true, 8228 => \true, 8229 => \true, 8230 => \true, 8232 => \true, 8233 => \true, 8234 => \true, 8235 => \true, 8236 => \true, 8237 => \true, 8238 => \true, 8289 => \true, 8290 => \true, 8291 => \true, 8293 => \true, 8294 => \true, 8295 => \true, 8296 => \true, 8297 => \true, 8298 => \true, 8299 => \true, 8300 => \true, 8301 => \true, 8302 => \true, 8303 => \true, 8306 => \true, 8307 => \true, 8335 => \true, 8349 => \true, 8350 => \true, 8351 => \true, 8384 => \true, 8385 => \true, 8386 => \true, 8387 => \true, 8388 => \true, 8389 => \true, 8390 => \true, 8391 => \true, 8392 => \true, 8393 => \true, 8394 => \true, 8395 => \true, 8396 => \true, 8397 => \true, 8398 => \true, 8399 => \true, 8433 => \true, 8434 => \true, 8435 => \true, 8436 => \true, 8437 => \true, 8438 => \true, 8439 => \true, 8440 => \true, 8441 => \true, 8442 => \true, 8443 => \true, 8444 => \true, 8445 => \true, 8446 => \true, 8447 => \true, 8498 => \true, 8579 => \true, 8588 => \true, 8589 => \true, 8590 => \true, 8591 => \true, 9255 => \true, 9256 => \true, 9257 => \true, 9258 => \true, 9259 => \true, 9260 => \true, 9261 => \true, 9262 => \true, 9263 => \true, 9264 => \true, 9265 => \true, 9266 => \true, 9267 => \true, 9268 => \true, 9269 => \true, 9270 => \true, 9271 => \true, 9272 => \true, 9273 => \true, 9274 => \true, 9275 => \true, 9276 => \true, 9277 => \true, 9278 => \true, 9279 => \true, 9291 => \true, 9292 => \true, 9293 => \true, 9294 => \true, 9295 => \true, 9296 => \true, 9297 => \true, 9298 => \true, 9299 => \true, 9300 => \true, 9301 => \true, 9302 => \true, 9303 => \true, 9304 => \true, 9305 => \true, 9306 => \true, 9307 => \true, 9308 => \true, 9309 => \true, 9310 => \true, 9311 => \true, 9352 => \true, 9353 => \true, 9354 => \true, 9355 => \true, 9356 => \true, 9357 => \true, 9358 => \true, 9359 => \true, 9360 => \true, 9361 => \true, 9362 => \true, 9363 => \true, 9364 => \true, 9365 => \true, 9366 => \true, 9367 => \true, 9368 => \true, 9369 => \true, 9370 => \true, 9371 => \true, 11124 => \true, 11125 => \true, 11158 => \true, 11311 => \true, 11359 => \true, 11508 => \true, 11509 => \true, 11510 => \true, 11511 => \true, 11512 => \true, 11558 => \true, 11560 => \true, 11561 => \true, 11562 => \true, 11563 => \true, 11564 => \true, 11566 => \true, 11567 => \true, 11624 => \true, 11625 => \true, 11626 => \true, 11627 => \true, 11628 => \true, 11629 => \true, 11630 => \true, 11633 => \true, 11634 => \true, 11635 => \true, 11636 => \true, 11637 => \true, 11638 => \true, 11639 => \true, 11640 => \true, 11641 => \true, 11642 => \true, 11643 => \true, 11644 => \true, 11645 => \true, 11646 => \true, 11671 => \true, 11672 => \true, 11673 => \true, 11674 => \true, 11675 => \true, 11676 => \true, 11677 => \true, 11678 => \true, 11679 => \true, 11687 => \true, 11695 => \true, 11703 => \true, 11711 => \true, 11719 => \true, 11727 => \true, 11735 => \true, 11743 => \true, 11930 => \true, 12020 => \true, 12021 => \true, 12022 => \true, 12023 => \true, 12024 => \true, 12025 => \true, 12026 => \true, 12027 => \true, 12028 => \true, 12029 => \true, 12030 => \true, 12031 => \true, 12246 => \true, 12247 => \true, 12248 => \true, 12249 => \true, 12250 => \true, 12251 => \true, 12252 => \true, 12253 => \true, 12254 => \true, 12255 => \true, 12256 => \true, 12257 => \true, 12258 => \true, 12259 => \true, 12260 => \true, 12261 => \true, 12262 => \true, 12263 => \true, 12264 => \true, 12265 => \true, 12266 => \true, 12267 => \true, 12268 => \true, 12269 => \true, 12270 => \true, 12271 => \true, 12272 => \true, 12273 => \true, 12274 => \true, 12275 => \true, 12276 => \true, 12277 => \true, 12278 => \true, 12279 => \true, 12280 => \true, 12281 => \true, 12282 => \true, 12283 => \true, 12284 => \true, 12285 => \true, 12286 => \true, 12287 => \true, 12352 => \true, 12439 => \true, 12440 => \true, 12544 => \true, 12545 => \true, 12546 => \true, 12547 => \true, 12548 => \true, 12592 => \true, 12644 => \true, 12687 => \true, 12772 => \true, 12773 => \true, 12774 => \true, 12775 => \true, 12776 => \true, 12777 => \true, 12778 => \true, 12779 => \true, 12780 => \true, 12781 => \true, 12782 => \true, 12783 => \true, 12831 => \true, 13250 => \true, 13255 => \true, 13272 => \true, 40957 => \true, 40958 => \true, 40959 => \true, 42125 => \true, 42126 => \true, 42127 => \true, 42183 => \true, 42184 => \true, 42185 => \true, 42186 => \true, 42187 => \true, 42188 => \true, 42189 => \true, 42190 => \true, 42191 => \true, 42540 => \true, 42541 => \true, 42542 => \true, 42543 => \true, 42544 => \true, 42545 => \true, 42546 => \true, 42547 => \true, 42548 => \true, 42549 => \true, 42550 => \true, 42551 => \true, 42552 => \true, 42553 => \true, 42554 => \true, 42555 => \true, 42556 => \true, 42557 => \true, 42558 => \true, 42559 => \true, 42744 => \true, 42745 => \true, 42746 => \true, 42747 => \true, 42748 => \true, 42749 => \true, 42750 => \true, 42751 => \true, 42944 => \true, 42945 => \true, 43053 => \true, 43054 => \true, 43055 => \true, 43066 => \true, 43067 => \true, 43068 => \true, 43069 => \true, 43070 => \true, 43071 => \true, 43128 => \true, 43129 => \true, 43130 => \true, 43131 => \true, 43132 => \true, 43133 => \true, 43134 => \true, 43135 => \true, 43206 => \true, 43207 => \true, 43208 => \true, 43209 => \true, 43210 => \true, 43211 => \true, 43212 => \true, 43213 => \true, 43226 => \true, 43227 => \true, 43228 => \true, 43229 => \true, 43230 => \true, 43231 => \true, 43348 => \true, 43349 => \true, 43350 => \true, 43351 => \true, 43352 => \true, 43353 => \true, 43354 => \true, 43355 => \true, 43356 => \true, 43357 => \true, 43358 => \true, 43389 => \true, 43390 => \true, 43391 => \true, 43470 => \true, 43482 => \true, 43483 => \true, 43484 => \true, 43485 => \true, 43519 => \true, 43575 => \true, 43576 => \true, 43577 => \true, 43578 => \true, 43579 => \true, 43580 => \true, 43581 => \true, 43582 => \true, 43583 => \true, 43598 => \true, 43599 => \true, 43610 => \true, 43611 => \true, 43715 => \true, 43716 => \true, 43717 => \true, 43718 => \true, 43719 => \true, 43720 => \true, 43721 => \true, 43722 => \true, 43723 => \true, 43724 => \true, 43725 => \true, 43726 => \true, 43727 => \true, 43728 => \true, 43729 => \true, 43730 => \true, 43731 => \true, 43732 => \true, 43733 => \true, 43734 => \true, 43735 => \true, 43736 => \true, 43737 => \true, 43738 => \true, 43767 => \true, 43768 => \true, 43769 => \true, 43770 => \true, 43771 => \true, 43772 => \true, 43773 => \true, 43774 => \true, 43775 => \true, 43776 => \true, 43783 => \true, 43784 => \true, 43791 => \true, 43792 => \true, 43799 => \true, 43800 => \true, 43801 => \true, 43802 => \true, 43803 => \true, 43804 => \true, 43805 => \true, 43806 => \true, 43807 => \true, 43815 => \true, 43823 => \true, 43884 => \true, 43885 => \true, 43886 => \true, 43887 => \true, 44014 => \true, 44015 => \true, 44026 => \true, 44027 => \true, 44028 => \true, 44029 => \true, 44030 => \true, 44031 => \true, 55204 => \true, 55205 => \true, 55206 => \true, 55207 => \true, 55208 => \true, 55209 => \true, 55210 => \true, 55211 => \true, 55212 => \true, 55213 => \true, 55214 => \true, 55215 => \true, 55239 => \true, 55240 => \true, 55241 => \true, 55242 => \true, 55292 => \true, 55293 => \true, 55294 => \true, 55295 => \true, 64110 => \true, 64111 => \true, 64263 => \true, 64264 => \true, 64265 => \true, 64266 => \true, 64267 => \true, 64268 => \true, 64269 => \true, 64270 => \true, 64271 => \true, 64272 => \true, 64273 => \true, 64274 => \true, 64280 => \true, 64281 => \true, 64282 => \true, 64283 => \true, 64284 => \true, 64311 => \true, 64317 => \true, 64319 => \true, 64322 => \true, 64325 => \true, 64450 => \true, 64451 => \true, 64452 => \true, 64453 => \true, 64454 => \true, 64455 => \true, 64456 => \true, 64457 => \true, 64458 => \true, 64459 => \true, 64460 => \true, 64461 => \true, 64462 => \true, 64463 => \true, 64464 => \true, 64465 => \true, 64466 => \true, 64832 => \true, 64833 => \true, 64834 => \true, 64835 => \true, 64836 => \true, 64837 => \true, 64838 => \true, 64839 => \true, 64840 => \true, 64841 => \true, 64842 => \true, 64843 => \true, 64844 => \true, 64845 => \true, 64846 => \true, 64847 => \true, 64912 => \true, 64913 => \true, 64968 => \true, 64969 => \true, 64970 => \true, 64971 => \true, 64972 => \true, 64973 => \true, 64974 => \true, 64975 => \true, 65022 => \true, 65023 => \true, 65042 => \true, 65049 => \true, 65050 => \true, 65051 => \true, 65052 => \true, 65053 => \true, 65054 => \true, 65055 => \true, 65072 => \true, 65106 => \true, 65107 => \true, 65127 => \true, 65132 => \true, 65133 => \true, 65134 => \true, 65135 => \true, 65141 => \true, 65277 => \true, 65278 => \true, 65280 => \true, 65440 => \true, 65471 => \true, 65472 => \true, 65473 => \true, 65480 => \true, 65481 => \true, 65488 => \true, 65489 => \true, 65496 => \true, 65497 => \true, 65501 => \true, 65502 => \true, 65503 => \true, 65511 => \true, 65519 => \true, 65520 => \true, 65521 => \true, 65522 => \true, 65523 => \true, 65524 => \true, 65525 => \true, 65526 => \true, 65527 => \true, 65528 => \true, 65529 => \true, 65530 => \true, 65531 => \true, 65532 => \true, 65533 => \true, 65534 => \true, 65535 => \true, 65548 => \true, 65575 => \true, 65595 => \true, 65598 => \true, 65614 => \true, 65615 => \true, 65787 => \true, 65788 => \true, 65789 => \true, 65790 => \true, 65791 => \true, 65795 => \true, 65796 => \true, 65797 => \true, 65798 => \true, 65844 => \true, 65845 => \true, 65846 => \true, 65935 => \true, 65949 => \true, 65950 => \true, 65951 => \true, 66205 => \true, 66206 => \true, 66207 => \true, 66257 => \true, 66258 => \true, 66259 => \true, 66260 => \true, 66261 => \true, 66262 => \true, 66263 => \true, 66264 => \true, 66265 => \true, 66266 => \true, 66267 => \true, 66268 => \true, 66269 => \true, 66270 => \true, 66271 => \true, 66300 => \true, 66301 => \true, 66302 => \true, 66303 => \true, 66340 => \true, 66341 => \true, 66342 => \true, 66343 => \true, 66344 => \true, 66345 => \true, 66346 => \true, 66347 => \true, 66348 => \true, 66379 => \true, 66380 => \true, 66381 => \true, 66382 => \true, 66383 => \true, 66427 => \true, 66428 => \true, 66429 => \true, 66430 => \true, 66431 => \true, 66462 => \true, 66500 => \true, 66501 => \true, 66502 => \true, 66503 => \true, 66718 => \true, 66719 => \true, 66730 => \true, 66731 => \true, 66732 => \true, 66733 => \true, 66734 => \true, 66735 => \true, 66772 => \true, 66773 => \true, 66774 => \true, 66775 => \true, 66812 => \true, 66813 => \true, 66814 => \true, 66815 => \true, 66856 => \true, 66857 => \true, 66858 => \true, 66859 => \true, 66860 => \true, 66861 => \true, 66862 => \true, 66863 => \true, 66916 => \true, 66917 => \true, 66918 => \true, 66919 => \true, 66920 => \true, 66921 => \true, 66922 => \true, 66923 => \true, 66924 => \true, 66925 => \true, 66926 => \true, 67383 => \true, 67384 => \true, 67385 => \true, 67386 => \true, 67387 => \true, 67388 => \true, 67389 => \true, 67390 => \true, 67391 => \true, 67414 => \true, 67415 => \true, 67416 => \true, 67417 => \true, 67418 => \true, 67419 => \true, 67420 => \true, 67421 => \true, 67422 => \true, 67423 => \true, 67590 => \true, 67591 => \true, 67593 => \true, 67638 => \true, 67641 => \true, 67642 => \true, 67643 => \true, 67645 => \true, 67646 => \true, 67670 => \true, 67743 => \true, 67744 => \true, 67745 => \true, 67746 => \true, 67747 => \true, 67748 => \true, 67749 => \true, 67750 => \true, 67827 => \true, 67830 => \true, 67831 => \true, 67832 => \true, 67833 => \true, 67834 => \true, 67868 => \true, 67869 => \true, 67870 => \true, 67898 => \true, 67899 => \true, 67900 => \true, 67901 => \true, 67902 => \true, 68024 => \true, 68025 => \true, 68026 => \true, 68027 => \true, 68048 => \true, 68049 => \true, 68100 => \true, 68103 => \true, 68104 => \true, 68105 => \true, 68106 => \true, 68107 => \true, 68116 => \true, 68120 => \true, 68150 => \true, 68151 => \true, 68155 => \true, 68156 => \true, 68157 => \true, 68158 => \true, 68169 => \true, 68170 => \true, 68171 => \true, 68172 => \true, 68173 => \true, 68174 => \true, 68175 => \true, 68185 => \true, 68186 => \true, 68187 => \true, 68188 => \true, 68189 => \true, 68190 => \true, 68191 => \true, 68327 => \true, 68328 => \true, 68329 => \true, 68330 => \true, 68343 => \true, 68344 => \true, 68345 => \true, 68346 => \true, 68347 => \true, 68348 => \true, 68349 => \true, 68350 => \true, 68351 => \true, 68406 => \true, 68407 => \true, 68408 => \true, 68438 => \true, 68439 => \true, 68467 => \true, 68468 => \true, 68469 => \true, 68470 => \true, 68471 => \true, 68498 => \true, 68499 => \true, 68500 => \true, 68501 => \true, 68502 => \true, 68503 => \true, 68504 => \true, 68509 => \true, 68510 => \true, 68511 => \true, 68512 => \true, 68513 => \true, 68514 => \true, 68515 => \true, 68516 => \true, 68517 => \true, 68518 => \true, 68519 => \true, 68520 => \true, 68787 => \true, 68788 => \true, 68789 => \true, 68790 => \true, 68791 => \true, 68792 => \true, 68793 => \true, 68794 => \true, 68795 => \true, 68796 => \true, 68797 => \true, 68798 => \true, 68799 => \true, 68851 => \true, 68852 => \true, 68853 => \true, 68854 => \true, 68855 => \true, 68856 => \true, 68857 => \true, 68904 => \true, 68905 => \true, 68906 => \true, 68907 => \true, 68908 => \true, 68909 => \true, 68910 => \true, 68911 => \true, 69247 => \true, 69290 => \true, 69294 => \true, 69295 => \true, 69416 => \true, 69417 => \true, 69418 => \true, 69419 => \true, 69420 => \true, 69421 => \true, 69422 => \true, 69423 => \true, 69580 => \true, 69581 => \true, 69582 => \true, 69583 => \true, 69584 => \true, 69585 => \true, 69586 => \true, 69587 => \true, 69588 => \true, 69589 => \true, 69590 => \true, 69591 => \true, 69592 => \true, 69593 => \true, 69594 => \true, 69595 => \true, 69596 => \true, 69597 => \true, 69598 => \true, 69599 => \true, 69623 => \true, 69624 => \true, 69625 => \true, 69626 => \true, 69627 => \true, 69628 => \true, 69629 => \true, 69630 => \true, 69631 => \true, 69710 => \true, 69711 => \true, 69712 => \true, 69713 => \true, 69744 => \true, 69745 => \true, 69746 => \true, 69747 => \true, 69748 => \true, 69749 => \true, 69750 => \true, 69751 => \true, 69752 => \true, 69753 => \true, 69754 => \true, 69755 => \true, 69756 => \true, 69757 => \true, 69758 => \true, 69821 => \true, 69826 => \true, 69827 => \true, 69828 => \true, 69829 => \true, 69830 => \true, 69831 => \true, 69832 => \true, 69833 => \true, 69834 => \true, 69835 => \true, 69836 => \true, 69837 => \true, 69838 => \true, 69839 => \true, 69865 => \true, 69866 => \true, 69867 => \true, 69868 => \true, 69869 => \true, 69870 => \true, 69871 => \true, 69882 => \true, 69883 => \true, 69884 => \true, 69885 => \true, 69886 => \true, 69887 => \true, 69941 => \true, 69960 => \true, 69961 => \true, 69962 => \true, 69963 => \true, 69964 => \true, 69965 => \true, 69966 => \true, 69967 => \true, 70007 => \true, 70008 => \true, 70009 => \true, 70010 => \true, 70011 => \true, 70012 => \true, 70013 => \true, 70014 => \true, 70015 => \true, 70112 => \true, 70133 => \true, 70134 => \true, 70135 => \true, 70136 => \true, 70137 => \true, 70138 => \true, 70139 => \true, 70140 => \true, 70141 => \true, 70142 => \true, 70143 => \true, 70162 => \true, 70279 => \true, 70281 => \true, 70286 => \true, 70302 => \true, 70314 => \true, 70315 => \true, 70316 => \true, 70317 => \true, 70318 => \true, 70319 => \true, 70379 => \true, 70380 => \true, 70381 => \true, 70382 => \true, 70383 => \true, 70394 => \true, 70395 => \true, 70396 => \true, 70397 => \true, 70398 => \true, 70399 => \true, 70404 => \true, 70413 => \true, 70414 => \true, 70417 => \true, 70418 => \true, 70441 => \true, 70449 => \true, 70452 => \true, 70458 => \true, 70469 => \true, 70470 => \true, 70473 => \true, 70474 => \true, 70478 => \true, 70479 => \true, 70481 => \true, 70482 => \true, 70483 => \true, 70484 => \true, 70485 => \true, 70486 => \true, 70488 => \true, 70489 => \true, 70490 => \true, 70491 => \true, 70492 => \true, 70500 => \true, 70501 => \true, 70509 => \true, 70510 => \true, 70511 => \true, 70748 => \true, 70754 => \true, 70755 => \true, 70756 => \true, 70757 => \true, 70758 => \true, 70759 => \true, 70760 => \true, 70761 => \true, 70762 => \true, 70763 => \true, 70764 => \true, 70765 => \true, 70766 => \true, 70767 => \true, 70768 => \true, 70769 => \true, 70770 => \true, 70771 => \true, 70772 => \true, 70773 => \true, 70774 => \true, 70775 => \true, 70776 => \true, 70777 => \true, 70778 => \true, 70779 => \true, 70780 => \true, 70781 => \true, 70782 => \true, 70783 => \true, 70856 => \true, 70857 => \true, 70858 => \true, 70859 => \true, 70860 => \true, 70861 => \true, 70862 => \true, 70863 => \true, 71094 => \true, 71095 => \true, 71237 => \true, 71238 => \true, 71239 => \true, 71240 => \true, 71241 => \true, 71242 => \true, 71243 => \true, 71244 => \true, 71245 => \true, 71246 => \true, 71247 => \true, 71258 => \true, 71259 => \true, 71260 => \true, 71261 => \true, 71262 => \true, 71263 => \true, 71277 => \true, 71278 => \true, 71279 => \true, 71280 => \true, 71281 => \true, 71282 => \true, 71283 => \true, 71284 => \true, 71285 => \true, 71286 => \true, 71287 => \true, 71288 => \true, 71289 => \true, 71290 => \true, 71291 => \true, 71292 => \true, 71293 => \true, 71294 => \true, 71295 => \true, 71353 => \true, 71354 => \true, 71355 => \true, 71356 => \true, 71357 => \true, 71358 => \true, 71359 => \true, 71451 => \true, 71452 => \true, 71468 => \true, 71469 => \true, 71470 => \true, 71471 => \true, 71923 => \true, 71924 => \true, 71925 => \true, 71926 => \true, 71927 => \true, 71928 => \true, 71929 => \true, 71930 => \true, 71931 => \true, 71932 => \true, 71933 => \true, 71934 => \true, 71943 => \true, 71944 => \true, 71946 => \true, 71947 => \true, 71956 => \true, 71959 => \true, 71990 => \true, 71993 => \true, 71994 => \true, 72007 => \true, 72008 => \true, 72009 => \true, 72010 => \true, 72011 => \true, 72012 => \true, 72013 => \true, 72014 => \true, 72015 => \true, 72104 => \true, 72105 => \true, 72152 => \true, 72153 => \true, 72165 => \true, 72166 => \true, 72167 => \true, 72168 => \true, 72169 => \true, 72170 => \true, 72171 => \true, 72172 => \true, 72173 => \true, 72174 => \true, 72175 => \true, 72176 => \true, 72177 => \true, 72178 => \true, 72179 => \true, 72180 => \true, 72181 => \true, 72182 => \true, 72183 => \true, 72184 => \true, 72185 => \true, 72186 => \true, 72187 => \true, 72188 => \true, 72189 => \true, 72190 => \true, 72191 => \true, 72264 => \true, 72265 => \true, 72266 => \true, 72267 => \true, 72268 => \true, 72269 => \true, 72270 => \true, 72271 => \true, 72355 => \true, 72356 => \true, 72357 => \true, 72358 => \true, 72359 => \true, 72360 => \true, 72361 => \true, 72362 => \true, 72363 => \true, 72364 => \true, 72365 => \true, 72366 => \true, 72367 => \true, 72368 => \true, 72369 => \true, 72370 => \true, 72371 => \true, 72372 => \true, 72373 => \true, 72374 => \true, 72375 => \true, 72376 => \true, 72377 => \true, 72378 => \true, 72379 => \true, 72380 => \true, 72381 => \true, 72382 => \true, 72383 => \true, 72713 => \true, 72759 => \true, 72774 => \true, 72775 => \true, 72776 => \true, 72777 => \true, 72778 => \true, 72779 => \true, 72780 => \true, 72781 => \true, 72782 => \true, 72783 => \true, 72813 => \true, 72814 => \true, 72815 => \true, 72848 => \true, 72849 => \true, 72872 => \true, 72967 => \true, 72970 => \true, 73015 => \true, 73016 => \true, 73017 => \true, 73019 => \true, 73022 => \true, 73032 => \true, 73033 => \true, 73034 => \true, 73035 => \true, 73036 => \true, 73037 => \true, 73038 => \true, 73039 => \true, 73050 => \true, 73051 => \true, 73052 => \true, 73053 => \true, 73054 => \true, 73055 => \true, 73062 => \true, 73065 => \true, 73103 => \true, 73106 => \true, 73113 => \true, 73114 => \true, 73115 => \true, 73116 => \true, 73117 => \true, 73118 => \true, 73119 => \true, 73649 => \true, 73650 => \true, 73651 => \true, 73652 => \true, 73653 => \true, 73654 => \true, 73655 => \true, 73656 => \true, 73657 => \true, 73658 => \true, 73659 => \true, 73660 => \true, 73661 => \true, 73662 => \true, 73663 => \true, 73714 => \true, 73715 => \true, 73716 => \true, 73717 => \true, 73718 => \true, 73719 => \true, 73720 => \true, 73721 => \true, 73722 => \true, 73723 => \true, 73724 => \true, 73725 => \true, 73726 => \true, 74863 => \true, 74869 => \true, 74870 => \true, 74871 => \true, 74872 => \true, 74873 => \true, 74874 => \true, 74875 => \true, 74876 => \true, 74877 => \true, 74878 => \true, 74879 => \true, 78895 => \true, 78896 => \true, 78897 => \true, 78898 => \true, 78899 => \true, 78900 => \true, 78901 => \true, 78902 => \true, 78903 => \true, 78904 => \true, 92729 => \true, 92730 => \true, 92731 => \true, 92732 => \true, 92733 => \true, 92734 => \true, 92735 => \true, 92767 => \true, 92778 => \true, 92779 => \true, 92780 => \true, 92781 => \true, 92910 => \true, 92911 => \true, 92918 => \true, 92919 => \true, 92920 => \true, 92921 => \true, 92922 => \true, 92923 => \true, 92924 => \true, 92925 => \true, 92926 => \true, 92927 => \true, 92998 => \true, 92999 => \true, 93000 => \true, 93001 => \true, 93002 => \true, 93003 => \true, 93004 => \true, 93005 => \true, 93006 => \true, 93007 => \true, 93018 => \true, 93026 => \true, 93048 => \true, 93049 => \true, 93050 => \true, 93051 => \true, 93052 => \true, 94027 => \true, 94028 => \true, 94029 => \true, 94030 => \true, 94088 => \true, 94089 => \true, 94090 => \true, 94091 => \true, 94092 => \true, 94093 => \true, 94094 => \true, 94181 => \true, 94182 => \true, 94183 => \true, 94184 => \true, 94185 => \true, 94186 => \true, 94187 => \true, 94188 => \true, 94189 => \true, 94190 => \true, 94191 => \true, 94194 => \true, 94195 => \true, 94196 => \true, 94197 => \true, 94198 => \true, 94199 => \true, 94200 => \true, 94201 => \true, 94202 => \true, 94203 => \true, 94204 => \true, 94205 => \true, 94206 => \true, 94207 => \true, 100344 => \true, 100345 => \true, 100346 => \true, 100347 => \true, 100348 => \true, 100349 => \true, 100350 => \true, 100351 => \true, 110931 => \true, 110932 => \true, 110933 => \true, 110934 => \true, 110935 => \true, 110936 => \true, 110937 => \true, 110938 => \true, 110939 => \true, 110940 => \true, 110941 => \true, 110942 => \true, 110943 => \true, 110944 => \true, 110945 => \true, 110946 => \true, 110947 => \true, 110952 => \true, 110953 => \true, 110954 => \true, 110955 => \true, 110956 => \true, 110957 => \true, 110958 => \true, 110959 => \true, 113771 => \true, 113772 => \true, 113773 => \true, 113774 => \true, 113775 => \true, 113789 => \true, 113790 => \true, 113791 => \true, 113801 => \true, 113802 => \true, 113803 => \true, 113804 => \true, 113805 => \true, 113806 => \true, 113807 => \true, 113818 => \true, 113819 => \true, 119030 => \true, 119031 => \true, 119032 => \true, 119033 => \true, 119034 => \true, 119035 => \true, 119036 => \true, 119037 => \true, 119038 => \true, 119039 => \true, 119079 => \true, 119080 => \true, 119155 => \true, 119156 => \true, 119157 => \true, 119158 => \true, 119159 => \true, 119160 => \true, 119161 => \true, 119162 => \true, 119273 => \true, 119274 => \true, 119275 => \true, 119276 => \true, 119277 => \true, 119278 => \true, 119279 => \true, 119280 => \true, 119281 => \true, 119282 => \true, 119283 => \true, 119284 => \true, 119285 => \true, 119286 => \true, 119287 => \true, 119288 => \true, 119289 => \true, 119290 => \true, 119291 => \true, 119292 => \true, 119293 => \true, 119294 => \true, 119295 => \true, 119540 => \true, 119541 => \true, 119542 => \true, 119543 => \true, 119544 => \true, 119545 => \true, 119546 => \true, 119547 => \true, 119548 => \true, 119549 => \true, 119550 => \true, 119551 => \true, 119639 => \true, 119640 => \true, 119641 => \true, 119642 => \true, 119643 => \true, 119644 => \true, 119645 => \true, 119646 => \true, 119647 => \true, 119893 => \true, 119965 => \true, 119968 => \true, 119969 => \true, 119971 => \true, 119972 => \true, 119975 => \true, 119976 => \true, 119981 => \true, 119994 => \true, 119996 => \true, 120004 => \true, 120070 => \true, 120075 => \true, 120076 => \true, 120085 => \true, 120093 => \true, 120122 => \true, 120127 => \true, 120133 => \true, 120135 => \true, 120136 => \true, 120137 => \true, 120145 => \true, 120486 => \true, 120487 => \true, 120780 => \true, 120781 => \true, 121484 => \true, 121485 => \true, 121486 => \true, 121487 => \true, 121488 => \true, 121489 => \true, 121490 => \true, 121491 => \true, 121492 => \true, 121493 => \true, 121494 => \true, 121495 => \true, 121496 => \true, 121497 => \true, 121498 => \true, 121504 => \true, 122887 => \true, 122905 => \true, 122906 => \true, 122914 => \true, 122917 => \true, 123181 => \true, 123182 => \true, 123183 => \true, 123198 => \true, 123199 => \true, 123210 => \true, 123211 => \true, 123212 => \true, 123213 => \true, 123642 => \true, 123643 => \true, 123644 => \true, 123645 => \true, 123646 => \true, 125125 => \true, 125126 => \true, 125260 => \true, 125261 => \true, 125262 => \true, 125263 => \true, 125274 => \true, 125275 => \true, 125276 => \true, 125277 => \true, 126468 => \true, 126496 => \true, 126499 => \true, 126501 => \true, 126502 => \true, 126504 => \true, 126515 => \true, 126520 => \true, 126522 => \true, 126524 => \true, 126525 => \true, 126526 => \true, 126527 => \true, 126528 => \true, 126529 => \true, 126531 => \true, 126532 => \true, 126533 => \true, 126534 => \true, 126536 => \true, 126538 => \true, 126540 => \true, 126544 => \true, 126547 => \true, 126549 => \true, 126550 => \true, 126552 => \true, 126554 => \true, 126556 => \true, 126558 => \true, 126560 => \true, 126563 => \true, 126565 => \true, 126566 => \true, 126571 => \true, 126579 => \true, 126584 => \true, 126589 => \true, 126591 => \true, 126602 => \true, 126620 => \true, 126621 => \true, 126622 => \true, 126623 => \true, 126624 => \true, 126628 => \true, 126634 => \true, 127020 => \true, 127021 => \true, 127022 => \true, 127023 => \true, 127124 => \true, 127125 => \true, 127126 => \true, 127127 => \true, 127128 => \true, 127129 => \true, 127130 => \true, 127131 => \true, 127132 => \true, 127133 => \true, 127134 => \true, 127135 => \true, 127151 => \true, 127152 => \true, 127168 => \true, 127184 => \true, 127222 => \true, 127223 => \true, 127224 => \true, 127225 => \true, 127226 => \true, 127227 => \true, 127228 => \true, 127229 => \true, 127230 => \true, 127231 => \true, 127232 => \true, 127491 => \true, 127492 => \true, 127493 => \true, 127494 => \true, 127495 => \true, 127496 => \true, 127497 => \true, 127498 => \true, 127499 => \true, 127500 => \true, 127501 => \true, 127502 => \true, 127503 => \true, 127548 => \true, 127549 => \true, 127550 => \true, 127551 => \true, 127561 => \true, 127562 => \true, 127563 => \true, 127564 => \true, 127565 => \true, 127566 => \true, 127567 => \true, 127570 => \true, 127571 => \true, 127572 => \true, 127573 => \true, 127574 => \true, 127575 => \true, 127576 => \true, 127577 => \true, 127578 => \true, 127579 => \true, 127580 => \true, 127581 => \true, 127582 => \true, 127583 => \true, 128728 => \true, 128729 => \true, 128730 => \true, 128731 => \true, 128732 => \true, 128733 => \true, 128734 => \true, 128735 => \true, 128749 => \true, 128750 => \true, 128751 => \true, 128765 => \true, 128766 => \true, 128767 => \true, 128884 => \true, 128885 => \true, 128886 => \true, 128887 => \true, 128888 => \true, 128889 => \true, 128890 => \true, 128891 => \true, 128892 => \true, 128893 => \true, 128894 => \true, 128895 => \true, 128985 => \true, 128986 => \true, 128987 => \true, 128988 => \true, 128989 => \true, 128990 => \true, 128991 => \true, 129004 => \true, 129005 => \true, 129006 => \true, 129007 => \true, 129008 => \true, 129009 => \true, 129010 => \true, 129011 => \true, 129012 => \true, 129013 => \true, 129014 => \true, 129015 => \true, 129016 => \true, 129017 => \true, 129018 => \true, 129019 => \true, 129020 => \true, 129021 => \true, 129022 => \true, 129023 => \true, 129036 => \true, 129037 => \true, 129038 => \true, 129039 => \true, 129096 => \true, 129097 => \true, 129098 => \true, 129099 => \true, 129100 => \true, 129101 => \true, 129102 => \true, 129103 => \true, 129114 => \true, 129115 => \true, 129116 => \true, 129117 => \true, 129118 => \true, 129119 => \true, 129160 => \true, 129161 => \true, 129162 => \true, 129163 => \true, 129164 => \true, 129165 => \true, 129166 => \true, 129167 => \true, 129198 => \true, 129199 => \true, 129401 => \true, 129484 => \true, 129620 => \true, 129621 => \true, 129622 => \true, 129623 => \true, 129624 => \true, 129625 => \true, 129626 => \true, 129627 => \true, 129628 => \true, 129629 => \true, 129630 => \true, 129631 => \true, 129646 => \true, 129647 => \true, 129653 => \true, 129654 => \true, 129655 => \true, 129659 => \true, 129660 => \true, 129661 => \true, 129662 => \true, 129663 => \true, 129671 => \true, 129672 => \true, 129673 => \true, 129674 => \true, 129675 => \true, 129676 => \true, 129677 => \true, 129678 => \true, 129679 => \true, 129705 => \true, 129706 => \true, 129707 => \true, 129708 => \true, 129709 => \true, 129710 => \true, 129711 => \true, 129719 => \true, 129720 => \true, 129721 => \true, 129722 => \true, 129723 => \true, 129724 => \true, 129725 => \true, 129726 => \true, 129727 => \true, 129731 => \true, 129732 => \true, 129733 => \true, 129734 => \true, 129735 => \true, 129736 => \true, 129737 => \true, 129738 => \true, 129739 => \true, 129740 => \true, 129741 => \true, 129742 => \true, 129743 => \true, 129939 => \true, 131070 => \true, 131071 => \true, 177973 => \true, 177974 => \true, 177975 => \true, 177976 => \true, 177977 => \true, 177978 => \true, 177979 => \true, 177980 => \true, 177981 => \true, 177982 => \true, 177983 => \true, 178206 => \true, 178207 => \true, 183970 => \true, 183971 => \true, 183972 => \true, 183973 => \true, 183974 => \true, 183975 => \true, 183976 => \true, 183977 => \true, 183978 => \true, 183979 => \true, 183980 => \true, 183981 => \true, 183982 => \true, 183983 => \true, 194664 => \true, 194676 => \true, 194847 => \true, 194911 => \true, 195007 => \true, 196606 => \true, 196607 => \true, 262142 => \true, 262143 => \true, 327678 => \true, 327679 => \true, 393214 => \true, 393215 => \true, 458750 => \true, 458751 => \true, 524286 => \true, 524287 => \true, 589822 => \true, 589823 => \true, 655358 => \true, 655359 => \true, 720894 => \true, 720895 => \true, 786430 => \true, 786431 => \true, 851966 => \true, 851967 => \true, 917502 => \true, 917503 => \true, 917504 => \true, 917505 => \true, 917506 => \true, 917507 => \true, 917508 => \true, 917509 => \true, 917510 => \true, 917511 => \true, 917512 => \true, 917513 => \true, 917514 => \true, 917515 => \true, 917516 => \true, 917517 => \true, 917518 => \true, 917519 => \true, 917520 => \true, 917521 => \true, 917522 => \true, 917523 => \true, 917524 => \true, 917525 => \true, 917526 => \true, 917527 => \true, 917528 => \true, 917529 => \true, 917530 => \true, 917531 => \true, 917532 => \true, 917533 => \true, 917534 => \true, 917535 => \true, 983038 => \true, 983039 => \true, 1048574 => \true, 1048575 => \true, 1114110 => \true, 1114111 => \true); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_mapped.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_mapped.php new file mode 100644 index 00000000..ac638a98 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_mapped.php @@ -0,0 +1,5 @@ + ' ', 168 => ' ̈', 175 => ' ̄', 180 => ' ́', 184 => ' ̧', 728 => ' ̆', 729 => ' ̇', 730 => ' ̊', 731 => ' ̨', 732 => ' ̃', 733 => ' ̋', 890 => ' ι', 894 => ';', 900 => ' ́', 901 => ' ̈́', 8125 => ' ̓', 8127 => ' ̓', 8128 => ' ͂', 8129 => ' ̈͂', 8141 => ' ̓̀', 8142 => ' ̓́', 8143 => ' ̓͂', 8157 => ' ̔̀', 8158 => ' ̔́', 8159 => ' ̔͂', 8173 => ' ̈̀', 8174 => ' ̈́', 8175 => '`', 8189 => ' ́', 8190 => ' ̔', 8192 => ' ', 8193 => ' ', 8194 => ' ', 8195 => ' ', 8196 => ' ', 8197 => ' ', 8198 => ' ', 8199 => ' ', 8200 => ' ', 8201 => ' ', 8202 => ' ', 8215 => ' ̳', 8239 => ' ', 8252 => '!!', 8254 => ' ̅', 8263 => '??', 8264 => '?!', 8265 => '!?', 8287 => ' ', 8314 => '+', 8316 => '=', 8317 => '(', 8318 => ')', 8330 => '+', 8332 => '=', 8333 => '(', 8334 => ')', 8448 => 'a/c', 8449 => 'a/s', 8453 => 'c/o', 8454 => 'c/u', 9332 => '(1)', 9333 => '(2)', 9334 => '(3)', 9335 => '(4)', 9336 => '(5)', 9337 => '(6)', 9338 => '(7)', 9339 => '(8)', 9340 => '(9)', 9341 => '(10)', 9342 => '(11)', 9343 => '(12)', 9344 => '(13)', 9345 => '(14)', 9346 => '(15)', 9347 => '(16)', 9348 => '(17)', 9349 => '(18)', 9350 => '(19)', 9351 => '(20)', 9372 => '(a)', 9373 => '(b)', 9374 => '(c)', 9375 => '(d)', 9376 => '(e)', 9377 => '(f)', 9378 => '(g)', 9379 => '(h)', 9380 => '(i)', 9381 => '(j)', 9382 => '(k)', 9383 => '(l)', 9384 => '(m)', 9385 => '(n)', 9386 => '(o)', 9387 => '(p)', 9388 => '(q)', 9389 => '(r)', 9390 => '(s)', 9391 => '(t)', 9392 => '(u)', 9393 => '(v)', 9394 => '(w)', 9395 => '(x)', 9396 => '(y)', 9397 => '(z)', 10868 => '::=', 10869 => '==', 10870 => '===', 12288 => ' ', 12443 => ' ゙', 12444 => ' ゚', 12800 => '(ᄀ)', 12801 => '(ᄂ)', 12802 => '(ᄃ)', 12803 => '(ᄅ)', 12804 => '(ᄆ)', 12805 => '(ᄇ)', 12806 => '(ᄉ)', 12807 => '(ᄋ)', 12808 => '(ᄌ)', 12809 => '(ᄎ)', 12810 => '(ᄏ)', 12811 => '(ᄐ)', 12812 => '(ᄑ)', 12813 => '(ᄒ)', 12814 => '(가)', 12815 => '(나)', 12816 => '(다)', 12817 => '(라)', 12818 => '(마)', 12819 => '(바)', 12820 => '(사)', 12821 => '(아)', 12822 => '(자)', 12823 => '(차)', 12824 => '(카)', 12825 => '(타)', 12826 => '(파)', 12827 => '(하)', 12828 => '(주)', 12829 => '(오전)', 12830 => '(오후)', 12832 => '(一)', 12833 => '(二)', 12834 => '(三)', 12835 => '(四)', 12836 => '(五)', 12837 => '(六)', 12838 => '(七)', 12839 => '(八)', 12840 => '(九)', 12841 => '(十)', 12842 => '(月)', 12843 => '(火)', 12844 => '(水)', 12845 => '(木)', 12846 => '(金)', 12847 => '(土)', 12848 => '(日)', 12849 => '(株)', 12850 => '(有)', 12851 => '(社)', 12852 => '(名)', 12853 => '(特)', 12854 => '(財)', 12855 => '(祝)', 12856 => '(労)', 12857 => '(代)', 12858 => '(呼)', 12859 => '(学)', 12860 => '(監)', 12861 => '(企)', 12862 => '(資)', 12863 => '(協)', 12864 => '(祭)', 12865 => '(休)', 12866 => '(自)', 12867 => '(至)', 64297 => '+', 64606 => ' ٌّ', 64607 => ' ٍّ', 64608 => ' َّ', 64609 => ' ُّ', 64610 => ' ِّ', 64611 => ' ّٰ', 65018 => 'صلى الله عليه وسلم', 65019 => 'جل جلاله', 65040 => ',', 65043 => ':', 65044 => ';', 65045 => '!', 65046 => '?', 65075 => '_', 65076 => '_', 65077 => '(', 65078 => ')', 65079 => '{', 65080 => '}', 65095 => '[', 65096 => ']', 65097 => ' ̅', 65098 => ' ̅', 65099 => ' ̅', 65100 => ' ̅', 65101 => '_', 65102 => '_', 65103 => '_', 65104 => ',', 65108 => ';', 65109 => ':', 65110 => '?', 65111 => '!', 65113 => '(', 65114 => ')', 65115 => '{', 65116 => '}', 65119 => '#', 65120 => '&', 65121 => '*', 65122 => '+', 65124 => '<', 65125 => '>', 65126 => '=', 65128 => '\\', 65129 => '$', 65130 => '%', 65131 => '@', 65136 => ' ً', 65138 => ' ٌ', 65140 => ' ٍ', 65142 => ' َ', 65144 => ' ُ', 65146 => ' ِ', 65148 => ' ّ', 65150 => ' ْ', 65281 => '!', 65282 => '"', 65283 => '#', 65284 => '$', 65285 => '%', 65286 => '&', 65287 => '\'', 65288 => '(', 65289 => ')', 65290 => '*', 65291 => '+', 65292 => ',', 65295 => '/', 65306 => ':', 65307 => ';', 65308 => '<', 65309 => '=', 65310 => '>', 65311 => '?', 65312 => '@', 65339 => '[', 65340 => '\\', 65341 => ']', 65342 => '^', 65343 => '_', 65344 => '`', 65371 => '{', 65372 => '|', 65373 => '}', 65374 => '~', 65507 => ' ̄', 127233 => '0,', 127234 => '1,', 127235 => '2,', 127236 => '3,', 127237 => '4,', 127238 => '5,', 127239 => '6,', 127240 => '7,', 127241 => '8,', 127242 => '9,', 127248 => '(a)', 127249 => '(b)', 127250 => '(c)', 127251 => '(d)', 127252 => '(e)', 127253 => '(f)', 127254 => '(g)', 127255 => '(h)', 127256 => '(i)', 127257 => '(j)', 127258 => '(k)', 127259 => '(l)', 127260 => '(m)', 127261 => '(n)', 127262 => '(o)', 127263 => '(p)', 127264 => '(q)', 127265 => '(r)', 127266 => '(s)', 127267 => '(t)', 127268 => '(u)', 127269 => '(v)', 127270 => '(w)', 127271 => '(x)', 127272 => '(y)', 127273 => '(z)'); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_valid.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_valid.php new file mode 100644 index 00000000..99196bed --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/disallowed_STD3_valid.php @@ -0,0 +1,5 @@ + \true, 1 => \true, 2 => \true, 3 => \true, 4 => \true, 5 => \true, 6 => \true, 7 => \true, 8 => \true, 9 => \true, 10 => \true, 11 => \true, 12 => \true, 13 => \true, 14 => \true, 15 => \true, 16 => \true, 17 => \true, 18 => \true, 19 => \true, 20 => \true, 21 => \true, 22 => \true, 23 => \true, 24 => \true, 25 => \true, 26 => \true, 27 => \true, 28 => \true, 29 => \true, 30 => \true, 31 => \true, 32 => \true, 33 => \true, 34 => \true, 35 => \true, 36 => \true, 37 => \true, 38 => \true, 39 => \true, 40 => \true, 41 => \true, 42 => \true, 43 => \true, 44 => \true, 47 => \true, 58 => \true, 59 => \true, 60 => \true, 61 => \true, 62 => \true, 63 => \true, 64 => \true, 91 => \true, 92 => \true, 93 => \true, 94 => \true, 95 => \true, 96 => \true, 123 => \true, 124 => \true, 125 => \true, 126 => \true, 127 => \true, 8800 => \true, 8814 => \true, 8815 => \true); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/ignored.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/ignored.php new file mode 100644 index 00000000..7c441c1d --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/ignored.php @@ -0,0 +1,5 @@ + \true, 847 => \true, 6155 => \true, 6156 => \true, 6157 => \true, 8203 => \true, 8288 => \true, 8292 => \true, 65024 => \true, 65025 => \true, 65026 => \true, 65027 => \true, 65028 => \true, 65029 => \true, 65030 => \true, 65031 => \true, 65032 => \true, 65033 => \true, 65034 => \true, 65035 => \true, 65036 => \true, 65037 => \true, 65038 => \true, 65039 => \true, 65279 => \true, 113824 => \true, 113825 => \true, 113826 => \true, 113827 => \true, 917760 => \true, 917761 => \true, 917762 => \true, 917763 => \true, 917764 => \true, 917765 => \true, 917766 => \true, 917767 => \true, 917768 => \true, 917769 => \true, 917770 => \true, 917771 => \true, 917772 => \true, 917773 => \true, 917774 => \true, 917775 => \true, 917776 => \true, 917777 => \true, 917778 => \true, 917779 => \true, 917780 => \true, 917781 => \true, 917782 => \true, 917783 => \true, 917784 => \true, 917785 => \true, 917786 => \true, 917787 => \true, 917788 => \true, 917789 => \true, 917790 => \true, 917791 => \true, 917792 => \true, 917793 => \true, 917794 => \true, 917795 => \true, 917796 => \true, 917797 => \true, 917798 => \true, 917799 => \true, 917800 => \true, 917801 => \true, 917802 => \true, 917803 => \true, 917804 => \true, 917805 => \true, 917806 => \true, 917807 => \true, 917808 => \true, 917809 => \true, 917810 => \true, 917811 => \true, 917812 => \true, 917813 => \true, 917814 => \true, 917815 => \true, 917816 => \true, 917817 => \true, 917818 => \true, 917819 => \true, 917820 => \true, 917821 => \true, 917822 => \true, 917823 => \true, 917824 => \true, 917825 => \true, 917826 => \true, 917827 => \true, 917828 => \true, 917829 => \true, 917830 => \true, 917831 => \true, 917832 => \true, 917833 => \true, 917834 => \true, 917835 => \true, 917836 => \true, 917837 => \true, 917838 => \true, 917839 => \true, 917840 => \true, 917841 => \true, 917842 => \true, 917843 => \true, 917844 => \true, 917845 => \true, 917846 => \true, 917847 => \true, 917848 => \true, 917849 => \true, 917850 => \true, 917851 => \true, 917852 => \true, 917853 => \true, 917854 => \true, 917855 => \true, 917856 => \true, 917857 => \true, 917858 => \true, 917859 => \true, 917860 => \true, 917861 => \true, 917862 => \true, 917863 => \true, 917864 => \true, 917865 => \true, 917866 => \true, 917867 => \true, 917868 => \true, 917869 => \true, 917870 => \true, 917871 => \true, 917872 => \true, 917873 => \true, 917874 => \true, 917875 => \true, 917876 => \true, 917877 => \true, 917878 => \true, 917879 => \true, 917880 => \true, 917881 => \true, 917882 => \true, 917883 => \true, 917884 => \true, 917885 => \true, 917886 => \true, 917887 => \true, 917888 => \true, 917889 => \true, 917890 => \true, 917891 => \true, 917892 => \true, 917893 => \true, 917894 => \true, 917895 => \true, 917896 => \true, 917897 => \true, 917898 => \true, 917899 => \true, 917900 => \true, 917901 => \true, 917902 => \true, 917903 => \true, 917904 => \true, 917905 => \true, 917906 => \true, 917907 => \true, 917908 => \true, 917909 => \true, 917910 => \true, 917911 => \true, 917912 => \true, 917913 => \true, 917914 => \true, 917915 => \true, 917916 => \true, 917917 => \true, 917918 => \true, 917919 => \true, 917920 => \true, 917921 => \true, 917922 => \true, 917923 => \true, 917924 => \true, 917925 => \true, 917926 => \true, 917927 => \true, 917928 => \true, 917929 => \true, 917930 => \true, 917931 => \true, 917932 => \true, 917933 => \true, 917934 => \true, 917935 => \true, 917936 => \true, 917937 => \true, 917938 => \true, 917939 => \true, 917940 => \true, 917941 => \true, 917942 => \true, 917943 => \true, 917944 => \true, 917945 => \true, 917946 => \true, 917947 => \true, 917948 => \true, 917949 => \true, 917950 => \true, 917951 => \true, 917952 => \true, 917953 => \true, 917954 => \true, 917955 => \true, 917956 => \true, 917957 => \true, 917958 => \true, 917959 => \true, 917960 => \true, 917961 => \true, 917962 => \true, 917963 => \true, 917964 => \true, 917965 => \true, 917966 => \true, 917967 => \true, 917968 => \true, 917969 => \true, 917970 => \true, 917971 => \true, 917972 => \true, 917973 => \true, 917974 => \true, 917975 => \true, 917976 => \true, 917977 => \true, 917978 => \true, 917979 => \true, 917980 => \true, 917981 => \true, 917982 => \true, 917983 => \true, 917984 => \true, 917985 => \true, 917986 => \true, 917987 => \true, 917988 => \true, 917989 => \true, 917990 => \true, 917991 => \true, 917992 => \true, 917993 => \true, 917994 => \true, 917995 => \true, 917996 => \true, 917997 => \true, 917998 => \true, 917999 => \true); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/mapped.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/mapped.php new file mode 100644 index 00000000..d06ffa38 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/mapped.php @@ -0,0 +1,5 @@ + 'a', 66 => 'b', 67 => 'c', 68 => 'd', 69 => 'e', 70 => 'f', 71 => 'g', 72 => 'h', 73 => 'i', 74 => 'j', 75 => 'k', 76 => 'l', 77 => 'm', 78 => 'n', 79 => 'o', 80 => 'p', 81 => 'q', 82 => 'r', 83 => 's', 84 => 't', 85 => 'u', 86 => 'v', 87 => 'w', 88 => 'x', 89 => 'y', 90 => 'z', 170 => 'a', 178 => '2', 179 => '3', 181 => 'μ', 185 => '1', 186 => 'o', 188 => '1⁄4', 189 => '1⁄2', 190 => '3⁄4', 192 => 'à', 193 => 'á', 194 => 'â', 195 => 'ã', 196 => 'ä', 197 => 'å', 198 => 'æ', 199 => 'ç', 200 => 'è', 201 => 'é', 202 => 'ê', 203 => 'ë', 204 => 'ì', 205 => 'í', 206 => 'î', 207 => 'ï', 208 => 'ð', 209 => 'ñ', 210 => 'ò', 211 => 'ó', 212 => 'ô', 213 => 'õ', 214 => 'ö', 216 => 'ø', 217 => 'ù', 218 => 'ú', 219 => 'û', 220 => 'ü', 221 => 'ý', 222 => 'þ', 256 => 'ā', 258 => 'ă', 260 => 'ą', 262 => 'ć', 264 => 'ĉ', 266 => 'ċ', 268 => 'č', 270 => 'ď', 272 => 'đ', 274 => 'ē', 276 => 'ĕ', 278 => 'ė', 280 => 'ę', 282 => 'ě', 284 => 'ĝ', 286 => 'ğ', 288 => 'ġ', 290 => 'ģ', 292 => 'ĥ', 294 => 'ħ', 296 => 'ĩ', 298 => 'ī', 300 => 'ĭ', 302 => 'į', 304 => 'i̇', 306 => 'ij', 307 => 'ij', 308 => 'ĵ', 310 => 'ķ', 313 => 'ĺ', 315 => 'ļ', 317 => 'ľ', 319 => 'l·', 320 => 'l·', 321 => 'ł', 323 => 'ń', 325 => 'ņ', 327 => 'ň', 329 => 'ʼn', 330 => 'ŋ', 332 => 'ō', 334 => 'ŏ', 336 => 'ő', 338 => 'œ', 340 => 'ŕ', 342 => 'ŗ', 344 => 'ř', 346 => 'ś', 348 => 'ŝ', 350 => 'ş', 352 => 'š', 354 => 'ţ', 356 => 'ť', 358 => 'ŧ', 360 => 'ũ', 362 => 'ū', 364 => 'ŭ', 366 => 'ů', 368 => 'ű', 370 => 'ų', 372 => 'ŵ', 374 => 'ŷ', 376 => 'ÿ', 377 => 'ź', 379 => 'ż', 381 => 'ž', 383 => 's', 385 => 'ɓ', 386 => 'ƃ', 388 => 'ƅ', 390 => 'ɔ', 391 => 'ƈ', 393 => 'ɖ', 394 => 'ɗ', 395 => 'ƌ', 398 => 'ǝ', 399 => 'ə', 400 => 'ɛ', 401 => 'ƒ', 403 => 'ɠ', 404 => 'ɣ', 406 => 'ɩ', 407 => 'ɨ', 408 => 'ƙ', 412 => 'ɯ', 413 => 'ɲ', 415 => 'ɵ', 416 => 'ơ', 418 => 'ƣ', 420 => 'ƥ', 422 => 'ʀ', 423 => 'ƨ', 425 => 'ʃ', 428 => 'ƭ', 430 => 'ʈ', 431 => 'ư', 433 => 'ʊ', 434 => 'ʋ', 435 => 'ƴ', 437 => 'ƶ', 439 => 'ʒ', 440 => 'ƹ', 444 => 'ƽ', 452 => 'dž', 453 => 'dž', 454 => 'dž', 455 => 'lj', 456 => 'lj', 457 => 'lj', 458 => 'nj', 459 => 'nj', 460 => 'nj', 461 => 'ǎ', 463 => 'ǐ', 465 => 'ǒ', 467 => 'ǔ', 469 => 'ǖ', 471 => 'ǘ', 473 => 'ǚ', 475 => 'ǜ', 478 => 'ǟ', 480 => 'ǡ', 482 => 'ǣ', 484 => 'ǥ', 486 => 'ǧ', 488 => 'ǩ', 490 => 'ǫ', 492 => 'ǭ', 494 => 'ǯ', 497 => 'dz', 498 => 'dz', 499 => 'dz', 500 => 'ǵ', 502 => 'ƕ', 503 => 'ƿ', 504 => 'ǹ', 506 => 'ǻ', 508 => 'ǽ', 510 => 'ǿ', 512 => 'ȁ', 514 => 'ȃ', 516 => 'ȅ', 518 => 'ȇ', 520 => 'ȉ', 522 => 'ȋ', 524 => 'ȍ', 526 => 'ȏ', 528 => 'ȑ', 530 => 'ȓ', 532 => 'ȕ', 534 => 'ȗ', 536 => 'ș', 538 => 'ț', 540 => 'ȝ', 542 => 'ȟ', 544 => 'ƞ', 546 => 'ȣ', 548 => 'ȥ', 550 => 'ȧ', 552 => 'ȩ', 554 => 'ȫ', 556 => 'ȭ', 558 => 'ȯ', 560 => 'ȱ', 562 => 'ȳ', 570 => 'ⱥ', 571 => 'ȼ', 573 => 'ƚ', 574 => 'ⱦ', 577 => 'ɂ', 579 => 'ƀ', 580 => 'ʉ', 581 => 'ʌ', 582 => 'ɇ', 584 => 'ɉ', 586 => 'ɋ', 588 => 'ɍ', 590 => 'ɏ', 688 => 'h', 689 => 'ɦ', 690 => 'j', 691 => 'r', 692 => 'ɹ', 693 => 'ɻ', 694 => 'ʁ', 695 => 'w', 696 => 'y', 736 => 'ɣ', 737 => 'l', 738 => 's', 739 => 'x', 740 => 'ʕ', 832 => '̀', 833 => '́', 835 => '̓', 836 => '̈́', 837 => 'ι', 880 => 'ͱ', 882 => 'ͳ', 884 => 'ʹ', 886 => 'ͷ', 895 => 'ϳ', 902 => 'ά', 903 => '·', 904 => 'έ', 905 => 'ή', 906 => 'ί', 908 => 'ό', 910 => 'ύ', 911 => 'ώ', 913 => 'α', 914 => 'β', 915 => 'γ', 916 => 'δ', 917 => 'ε', 918 => 'ζ', 919 => 'η', 920 => 'θ', 921 => 'ι', 922 => 'κ', 923 => 'λ', 924 => 'μ', 925 => 'ν', 926 => 'ξ', 927 => 'ο', 928 => 'π', 929 => 'ρ', 931 => 'σ', 932 => 'τ', 933 => 'υ', 934 => 'φ', 935 => 'χ', 936 => 'ψ', 937 => 'ω', 938 => 'ϊ', 939 => 'ϋ', 975 => 'ϗ', 976 => 'β', 977 => 'θ', 978 => 'υ', 979 => 'ύ', 980 => 'ϋ', 981 => 'φ', 982 => 'π', 984 => 'ϙ', 986 => 'ϛ', 988 => 'ϝ', 990 => 'ϟ', 992 => 'ϡ', 994 => 'ϣ', 996 => 'ϥ', 998 => 'ϧ', 1000 => 'ϩ', 1002 => 'ϫ', 1004 => 'ϭ', 1006 => 'ϯ', 1008 => 'κ', 1009 => 'ρ', 1010 => 'σ', 1012 => 'θ', 1013 => 'ε', 1015 => 'ϸ', 1017 => 'σ', 1018 => 'ϻ', 1021 => 'ͻ', 1022 => 'ͼ', 1023 => 'ͽ', 1024 => 'ѐ', 1025 => 'ё', 1026 => 'ђ', 1027 => 'ѓ', 1028 => 'є', 1029 => 'ѕ', 1030 => 'і', 1031 => 'ї', 1032 => 'ј', 1033 => 'љ', 1034 => 'њ', 1035 => 'ћ', 1036 => 'ќ', 1037 => 'ѝ', 1038 => 'ў', 1039 => 'џ', 1040 => 'а', 1041 => 'б', 1042 => 'в', 1043 => 'г', 1044 => 'д', 1045 => 'е', 1046 => 'ж', 1047 => 'з', 1048 => 'и', 1049 => 'й', 1050 => 'к', 1051 => 'л', 1052 => 'м', 1053 => 'н', 1054 => 'о', 1055 => 'п', 1056 => 'р', 1057 => 'с', 1058 => 'т', 1059 => 'у', 1060 => 'ф', 1061 => 'х', 1062 => 'ц', 1063 => 'ч', 1064 => 'ш', 1065 => 'щ', 1066 => 'ъ', 1067 => 'ы', 1068 => 'ь', 1069 => 'э', 1070 => 'ю', 1071 => 'я', 1120 => 'ѡ', 1122 => 'ѣ', 1124 => 'ѥ', 1126 => 'ѧ', 1128 => 'ѩ', 1130 => 'ѫ', 1132 => 'ѭ', 1134 => 'ѯ', 1136 => 'ѱ', 1138 => 'ѳ', 1140 => 'ѵ', 1142 => 'ѷ', 1144 => 'ѹ', 1146 => 'ѻ', 1148 => 'ѽ', 1150 => 'ѿ', 1152 => 'ҁ', 1162 => 'ҋ', 1164 => 'ҍ', 1166 => 'ҏ', 1168 => 'ґ', 1170 => 'ғ', 1172 => 'ҕ', 1174 => 'җ', 1176 => 'ҙ', 1178 => 'қ', 1180 => 'ҝ', 1182 => 'ҟ', 1184 => 'ҡ', 1186 => 'ң', 1188 => 'ҥ', 1190 => 'ҧ', 1192 => 'ҩ', 1194 => 'ҫ', 1196 => 'ҭ', 1198 => 'ү', 1200 => 'ұ', 1202 => 'ҳ', 1204 => 'ҵ', 1206 => 'ҷ', 1208 => 'ҹ', 1210 => 'һ', 1212 => 'ҽ', 1214 => 'ҿ', 1217 => 'ӂ', 1219 => 'ӄ', 1221 => 'ӆ', 1223 => 'ӈ', 1225 => 'ӊ', 1227 => 'ӌ', 1229 => 'ӎ', 1232 => 'ӑ', 1234 => 'ӓ', 1236 => 'ӕ', 1238 => 'ӗ', 1240 => 'ә', 1242 => 'ӛ', 1244 => 'ӝ', 1246 => 'ӟ', 1248 => 'ӡ', 1250 => 'ӣ', 1252 => 'ӥ', 1254 => 'ӧ', 1256 => 'ө', 1258 => 'ӫ', 1260 => 'ӭ', 1262 => 'ӯ', 1264 => 'ӱ', 1266 => 'ӳ', 1268 => 'ӵ', 1270 => 'ӷ', 1272 => 'ӹ', 1274 => 'ӻ', 1276 => 'ӽ', 1278 => 'ӿ', 1280 => 'ԁ', 1282 => 'ԃ', 1284 => 'ԅ', 1286 => 'ԇ', 1288 => 'ԉ', 1290 => 'ԋ', 1292 => 'ԍ', 1294 => 'ԏ', 1296 => 'ԑ', 1298 => 'ԓ', 1300 => 'ԕ', 1302 => 'ԗ', 1304 => 'ԙ', 1306 => 'ԛ', 1308 => 'ԝ', 1310 => 'ԟ', 1312 => 'ԡ', 1314 => 'ԣ', 1316 => 'ԥ', 1318 => 'ԧ', 1320 => 'ԩ', 1322 => 'ԫ', 1324 => 'ԭ', 1326 => 'ԯ', 1329 => 'ա', 1330 => 'բ', 1331 => 'գ', 1332 => 'դ', 1333 => 'ե', 1334 => 'զ', 1335 => 'է', 1336 => 'ը', 1337 => 'թ', 1338 => 'ժ', 1339 => 'ի', 1340 => 'լ', 1341 => 'խ', 1342 => 'ծ', 1343 => 'կ', 1344 => 'հ', 1345 => 'ձ', 1346 => 'ղ', 1347 => 'ճ', 1348 => 'մ', 1349 => 'յ', 1350 => 'ն', 1351 => 'շ', 1352 => 'ո', 1353 => 'չ', 1354 => 'պ', 1355 => 'ջ', 1356 => 'ռ', 1357 => 'ս', 1358 => 'վ', 1359 => 'տ', 1360 => 'ր', 1361 => 'ց', 1362 => 'ւ', 1363 => 'փ', 1364 => 'ք', 1365 => 'օ', 1366 => 'ֆ', 1415 => 'եւ', 1653 => 'اٴ', 1654 => 'وٴ', 1655 => 'ۇٴ', 1656 => 'يٴ', 2392 => 'क़', 2393 => 'ख़', 2394 => 'ग़', 2395 => 'ज़', 2396 => 'ड़', 2397 => 'ढ़', 2398 => 'फ़', 2399 => 'य़', 2524 => 'ড়', 2525 => 'ঢ়', 2527 => 'য়', 2611 => 'ਲ਼', 2614 => 'ਸ਼', 2649 => 'ਖ਼', 2650 => 'ਗ਼', 2651 => 'ਜ਼', 2654 => 'ਫ਼', 2908 => 'ଡ଼', 2909 => 'ଢ଼', 3635 => 'ํา', 3763 => 'ໍາ', 3804 => 'ຫນ', 3805 => 'ຫມ', 3852 => '་', 3907 => 'གྷ', 3917 => 'ཌྷ', 3922 => 'དྷ', 3927 => 'བྷ', 3932 => 'ཛྷ', 3945 => 'ཀྵ', 3955 => 'ཱི', 3957 => 'ཱུ', 3958 => 'ྲྀ', 3959 => 'ྲཱྀ', 3960 => 'ླྀ', 3961 => 'ླཱྀ', 3969 => 'ཱྀ', 3987 => 'ྒྷ', 3997 => 'ྜྷ', 4002 => 'ྡྷ', 4007 => 'ྦྷ', 4012 => 'ྫྷ', 4025 => 'ྐྵ', 4295 => 'ⴧ', 4301 => 'ⴭ', 4348 => 'ნ', 5112 => 'Ᏸ', 5113 => 'Ᏹ', 5114 => 'Ᏺ', 5115 => 'Ᏻ', 5116 => 'Ᏼ', 5117 => 'Ᏽ', 7296 => 'в', 7297 => 'д', 7298 => 'о', 7299 => 'с', 7300 => 'т', 7301 => 'т', 7302 => 'ъ', 7303 => 'ѣ', 7304 => 'ꙋ', 7312 => 'ა', 7313 => 'ბ', 7314 => 'გ', 7315 => 'დ', 7316 => 'ე', 7317 => 'ვ', 7318 => 'ზ', 7319 => 'თ', 7320 => 'ი', 7321 => 'კ', 7322 => 'ლ', 7323 => 'მ', 7324 => 'ნ', 7325 => 'ო', 7326 => 'პ', 7327 => 'ჟ', 7328 => 'რ', 7329 => 'ს', 7330 => 'ტ', 7331 => 'უ', 7332 => 'ფ', 7333 => 'ქ', 7334 => 'ღ', 7335 => 'ყ', 7336 => 'შ', 7337 => 'ჩ', 7338 => 'ც', 7339 => 'ძ', 7340 => 'წ', 7341 => 'ჭ', 7342 => 'ხ', 7343 => 'ჯ', 7344 => 'ჰ', 7345 => 'ჱ', 7346 => 'ჲ', 7347 => 'ჳ', 7348 => 'ჴ', 7349 => 'ჵ', 7350 => 'ჶ', 7351 => 'ჷ', 7352 => 'ჸ', 7353 => 'ჹ', 7354 => 'ჺ', 7357 => 'ჽ', 7358 => 'ჾ', 7359 => 'ჿ', 7468 => 'a', 7469 => 'æ', 7470 => 'b', 7472 => 'd', 7473 => 'e', 7474 => 'ǝ', 7475 => 'g', 7476 => 'h', 7477 => 'i', 7478 => 'j', 7479 => 'k', 7480 => 'l', 7481 => 'm', 7482 => 'n', 7484 => 'o', 7485 => 'ȣ', 7486 => 'p', 7487 => 'r', 7488 => 't', 7489 => 'u', 7490 => 'w', 7491 => 'a', 7492 => 'ɐ', 7493 => 'ɑ', 7494 => 'ᴂ', 7495 => 'b', 7496 => 'd', 7497 => 'e', 7498 => 'ə', 7499 => 'ɛ', 7500 => 'ɜ', 7501 => 'g', 7503 => 'k', 7504 => 'm', 7505 => 'ŋ', 7506 => 'o', 7507 => 'ɔ', 7508 => 'ᴖ', 7509 => 'ᴗ', 7510 => 'p', 7511 => 't', 7512 => 'u', 7513 => 'ᴝ', 7514 => 'ɯ', 7515 => 'v', 7516 => 'ᴥ', 7517 => 'β', 7518 => 'γ', 7519 => 'δ', 7520 => 'φ', 7521 => 'χ', 7522 => 'i', 7523 => 'r', 7524 => 'u', 7525 => 'v', 7526 => 'β', 7527 => 'γ', 7528 => 'ρ', 7529 => 'φ', 7530 => 'χ', 7544 => 'н', 7579 => 'ɒ', 7580 => 'c', 7581 => 'ɕ', 7582 => 'ð', 7583 => 'ɜ', 7584 => 'f', 7585 => 'ɟ', 7586 => 'ɡ', 7587 => 'ɥ', 7588 => 'ɨ', 7589 => 'ɩ', 7590 => 'ɪ', 7591 => 'ᵻ', 7592 => 'ʝ', 7593 => 'ɭ', 7594 => 'ᶅ', 7595 => 'ʟ', 7596 => 'ɱ', 7597 => 'ɰ', 7598 => 'ɲ', 7599 => 'ɳ', 7600 => 'ɴ', 7601 => 'ɵ', 7602 => 'ɸ', 7603 => 'ʂ', 7604 => 'ʃ', 7605 => 'ƫ', 7606 => 'ʉ', 7607 => 'ʊ', 7608 => 'ᴜ', 7609 => 'ʋ', 7610 => 'ʌ', 7611 => 'z', 7612 => 'ʐ', 7613 => 'ʑ', 7614 => 'ʒ', 7615 => 'θ', 7680 => 'ḁ', 7682 => 'ḃ', 7684 => 'ḅ', 7686 => 'ḇ', 7688 => 'ḉ', 7690 => 'ḋ', 7692 => 'ḍ', 7694 => 'ḏ', 7696 => 'ḑ', 7698 => 'ḓ', 7700 => 'ḕ', 7702 => 'ḗ', 7704 => 'ḙ', 7706 => 'ḛ', 7708 => 'ḝ', 7710 => 'ḟ', 7712 => 'ḡ', 7714 => 'ḣ', 7716 => 'ḥ', 7718 => 'ḧ', 7720 => 'ḩ', 7722 => 'ḫ', 7724 => 'ḭ', 7726 => 'ḯ', 7728 => 'ḱ', 7730 => 'ḳ', 7732 => 'ḵ', 7734 => 'ḷ', 7736 => 'ḹ', 7738 => 'ḻ', 7740 => 'ḽ', 7742 => 'ḿ', 7744 => 'ṁ', 7746 => 'ṃ', 7748 => 'ṅ', 7750 => 'ṇ', 7752 => 'ṉ', 7754 => 'ṋ', 7756 => 'ṍ', 7758 => 'ṏ', 7760 => 'ṑ', 7762 => 'ṓ', 7764 => 'ṕ', 7766 => 'ṗ', 7768 => 'ṙ', 7770 => 'ṛ', 7772 => 'ṝ', 7774 => 'ṟ', 7776 => 'ṡ', 7778 => 'ṣ', 7780 => 'ṥ', 7782 => 'ṧ', 7784 => 'ṩ', 7786 => 'ṫ', 7788 => 'ṭ', 7790 => 'ṯ', 7792 => 'ṱ', 7794 => 'ṳ', 7796 => 'ṵ', 7798 => 'ṷ', 7800 => 'ṹ', 7802 => 'ṻ', 7804 => 'ṽ', 7806 => 'ṿ', 7808 => 'ẁ', 7810 => 'ẃ', 7812 => 'ẅ', 7814 => 'ẇ', 7816 => 'ẉ', 7818 => 'ẋ', 7820 => 'ẍ', 7822 => 'ẏ', 7824 => 'ẑ', 7826 => 'ẓ', 7828 => 'ẕ', 7834 => 'aʾ', 7835 => 'ṡ', 7838 => 'ss', 7840 => 'ạ', 7842 => 'ả', 7844 => 'ấ', 7846 => 'ầ', 7848 => 'ẩ', 7850 => 'ẫ', 7852 => 'ậ', 7854 => 'ắ', 7856 => 'ằ', 7858 => 'ẳ', 7860 => 'ẵ', 7862 => 'ặ', 7864 => 'ẹ', 7866 => 'ẻ', 7868 => 'ẽ', 7870 => 'ế', 7872 => 'ề', 7874 => 'ể', 7876 => 'ễ', 7878 => 'ệ', 7880 => 'ỉ', 7882 => 'ị', 7884 => 'ọ', 7886 => 'ỏ', 7888 => 'ố', 7890 => 'ồ', 7892 => 'ổ', 7894 => 'ỗ', 7896 => 'ộ', 7898 => 'ớ', 7900 => 'ờ', 7902 => 'ở', 7904 => 'ỡ', 7906 => 'ợ', 7908 => 'ụ', 7910 => 'ủ', 7912 => 'ứ', 7914 => 'ừ', 7916 => 'ử', 7918 => 'ữ', 7920 => 'ự', 7922 => 'ỳ', 7924 => 'ỵ', 7926 => 'ỷ', 7928 => 'ỹ', 7930 => 'ỻ', 7932 => 'ỽ', 7934 => 'ỿ', 7944 => 'ἀ', 7945 => 'ἁ', 7946 => 'ἂ', 7947 => 'ἃ', 7948 => 'ἄ', 7949 => 'ἅ', 7950 => 'ἆ', 7951 => 'ἇ', 7960 => 'ἐ', 7961 => 'ἑ', 7962 => 'ἒ', 7963 => 'ἓ', 7964 => 'ἔ', 7965 => 'ἕ', 7976 => 'ἠ', 7977 => 'ἡ', 7978 => 'ἢ', 7979 => 'ἣ', 7980 => 'ἤ', 7981 => 'ἥ', 7982 => 'ἦ', 7983 => 'ἧ', 7992 => 'ἰ', 7993 => 'ἱ', 7994 => 'ἲ', 7995 => 'ἳ', 7996 => 'ἴ', 7997 => 'ἵ', 7998 => 'ἶ', 7999 => 'ἷ', 8008 => 'ὀ', 8009 => 'ὁ', 8010 => 'ὂ', 8011 => 'ὃ', 8012 => 'ὄ', 8013 => 'ὅ', 8025 => 'ὑ', 8027 => 'ὓ', 8029 => 'ὕ', 8031 => 'ὗ', 8040 => 'ὠ', 8041 => 'ὡ', 8042 => 'ὢ', 8043 => 'ὣ', 8044 => 'ὤ', 8045 => 'ὥ', 8046 => 'ὦ', 8047 => 'ὧ', 8049 => 'ά', 8051 => 'έ', 8053 => 'ή', 8055 => 'ί', 8057 => 'ό', 8059 => 'ύ', 8061 => 'ώ', 8064 => 'ἀι', 8065 => 'ἁι', 8066 => 'ἂι', 8067 => 'ἃι', 8068 => 'ἄι', 8069 => 'ἅι', 8070 => 'ἆι', 8071 => 'ἇι', 8072 => 'ἀι', 8073 => 'ἁι', 8074 => 'ἂι', 8075 => 'ἃι', 8076 => 'ἄι', 8077 => 'ἅι', 8078 => 'ἆι', 8079 => 'ἇι', 8080 => 'ἠι', 8081 => 'ἡι', 8082 => 'ἢι', 8083 => 'ἣι', 8084 => 'ἤι', 8085 => 'ἥι', 8086 => 'ἦι', 8087 => 'ἧι', 8088 => 'ἠι', 8089 => 'ἡι', 8090 => 'ἢι', 8091 => 'ἣι', 8092 => 'ἤι', 8093 => 'ἥι', 8094 => 'ἦι', 8095 => 'ἧι', 8096 => 'ὠι', 8097 => 'ὡι', 8098 => 'ὢι', 8099 => 'ὣι', 8100 => 'ὤι', 8101 => 'ὥι', 8102 => 'ὦι', 8103 => 'ὧι', 8104 => 'ὠι', 8105 => 'ὡι', 8106 => 'ὢι', 8107 => 'ὣι', 8108 => 'ὤι', 8109 => 'ὥι', 8110 => 'ὦι', 8111 => 'ὧι', 8114 => 'ὰι', 8115 => 'αι', 8116 => 'άι', 8119 => 'ᾶι', 8120 => 'ᾰ', 8121 => 'ᾱ', 8122 => 'ὰ', 8123 => 'ά', 8124 => 'αι', 8126 => 'ι', 8130 => 'ὴι', 8131 => 'ηι', 8132 => 'ήι', 8135 => 'ῆι', 8136 => 'ὲ', 8137 => 'έ', 8138 => 'ὴ', 8139 => 'ή', 8140 => 'ηι', 8147 => 'ΐ', 8152 => 'ῐ', 8153 => 'ῑ', 8154 => 'ὶ', 8155 => 'ί', 8163 => 'ΰ', 8168 => 'ῠ', 8169 => 'ῡ', 8170 => 'ὺ', 8171 => 'ύ', 8172 => 'ῥ', 8178 => 'ὼι', 8179 => 'ωι', 8180 => 'ώι', 8183 => 'ῶι', 8184 => 'ὸ', 8185 => 'ό', 8186 => 'ὼ', 8187 => 'ώ', 8188 => 'ωι', 8209 => '‐', 8243 => '′′', 8244 => '′′′', 8246 => '‵‵', 8247 => '‵‵‵', 8279 => '′′′′', 8304 => '0', 8305 => 'i', 8308 => '4', 8309 => '5', 8310 => '6', 8311 => '7', 8312 => '8', 8313 => '9', 8315 => '−', 8319 => 'n', 8320 => '0', 8321 => '1', 8322 => '2', 8323 => '3', 8324 => '4', 8325 => '5', 8326 => '6', 8327 => '7', 8328 => '8', 8329 => '9', 8331 => '−', 8336 => 'a', 8337 => 'e', 8338 => 'o', 8339 => 'x', 8340 => 'ə', 8341 => 'h', 8342 => 'k', 8343 => 'l', 8344 => 'm', 8345 => 'n', 8346 => 'p', 8347 => 's', 8348 => 't', 8360 => 'rs', 8450 => 'c', 8451 => '°c', 8455 => 'ɛ', 8457 => '°f', 8458 => 'g', 8459 => 'h', 8460 => 'h', 8461 => 'h', 8462 => 'h', 8463 => 'ħ', 8464 => 'i', 8465 => 'i', 8466 => 'l', 8467 => 'l', 8469 => 'n', 8470 => 'no', 8473 => 'p', 8474 => 'q', 8475 => 'r', 8476 => 'r', 8477 => 'r', 8480 => 'sm', 8481 => 'tel', 8482 => 'tm', 8484 => 'z', 8486 => 'ω', 8488 => 'z', 8490 => 'k', 8491 => 'å', 8492 => 'b', 8493 => 'c', 8495 => 'e', 8496 => 'e', 8497 => 'f', 8499 => 'm', 8500 => 'o', 8501 => 'א', 8502 => 'ב', 8503 => 'ג', 8504 => 'ד', 8505 => 'i', 8507 => 'fax', 8508 => 'π', 8509 => 'γ', 8510 => 'γ', 8511 => 'π', 8512 => '∑', 8517 => 'd', 8518 => 'd', 8519 => 'e', 8520 => 'i', 8521 => 'j', 8528 => '1⁄7', 8529 => '1⁄9', 8530 => '1⁄10', 8531 => '1⁄3', 8532 => '2⁄3', 8533 => '1⁄5', 8534 => '2⁄5', 8535 => '3⁄5', 8536 => '4⁄5', 8537 => '1⁄6', 8538 => '5⁄6', 8539 => '1⁄8', 8540 => '3⁄8', 8541 => '5⁄8', 8542 => '7⁄8', 8543 => '1⁄', 8544 => 'i', 8545 => 'ii', 8546 => 'iii', 8547 => 'iv', 8548 => 'v', 8549 => 'vi', 8550 => 'vii', 8551 => 'viii', 8552 => 'ix', 8553 => 'x', 8554 => 'xi', 8555 => 'xii', 8556 => 'l', 8557 => 'c', 8558 => 'd', 8559 => 'm', 8560 => 'i', 8561 => 'ii', 8562 => 'iii', 8563 => 'iv', 8564 => 'v', 8565 => 'vi', 8566 => 'vii', 8567 => 'viii', 8568 => 'ix', 8569 => 'x', 8570 => 'xi', 8571 => 'xii', 8572 => 'l', 8573 => 'c', 8574 => 'd', 8575 => 'm', 8585 => '0⁄3', 8748 => '∫∫', 8749 => '∫∫∫', 8751 => '∮∮', 8752 => '∮∮∮', 9001 => '〈', 9002 => '〉', 9312 => '1', 9313 => '2', 9314 => '3', 9315 => '4', 9316 => '5', 9317 => '6', 9318 => '7', 9319 => '8', 9320 => '9', 9321 => '10', 9322 => '11', 9323 => '12', 9324 => '13', 9325 => '14', 9326 => '15', 9327 => '16', 9328 => '17', 9329 => '18', 9330 => '19', 9331 => '20', 9398 => 'a', 9399 => 'b', 9400 => 'c', 9401 => 'd', 9402 => 'e', 9403 => 'f', 9404 => 'g', 9405 => 'h', 9406 => 'i', 9407 => 'j', 9408 => 'k', 9409 => 'l', 9410 => 'm', 9411 => 'n', 9412 => 'o', 9413 => 'p', 9414 => 'q', 9415 => 'r', 9416 => 's', 9417 => 't', 9418 => 'u', 9419 => 'v', 9420 => 'w', 9421 => 'x', 9422 => 'y', 9423 => 'z', 9424 => 'a', 9425 => 'b', 9426 => 'c', 9427 => 'd', 9428 => 'e', 9429 => 'f', 9430 => 'g', 9431 => 'h', 9432 => 'i', 9433 => 'j', 9434 => 'k', 9435 => 'l', 9436 => 'm', 9437 => 'n', 9438 => 'o', 9439 => 'p', 9440 => 'q', 9441 => 'r', 9442 => 's', 9443 => 't', 9444 => 'u', 9445 => 'v', 9446 => 'w', 9447 => 'x', 9448 => 'y', 9449 => 'z', 9450 => '0', 10764 => '∫∫∫∫', 10972 => '⫝̸', 11264 => 'ⰰ', 11265 => 'ⰱ', 11266 => 'ⰲ', 11267 => 'ⰳ', 11268 => 'ⰴ', 11269 => 'ⰵ', 11270 => 'ⰶ', 11271 => 'ⰷ', 11272 => 'ⰸ', 11273 => 'ⰹ', 11274 => 'ⰺ', 11275 => 'ⰻ', 11276 => 'ⰼ', 11277 => 'ⰽ', 11278 => 'ⰾ', 11279 => 'ⰿ', 11280 => 'ⱀ', 11281 => 'ⱁ', 11282 => 'ⱂ', 11283 => 'ⱃ', 11284 => 'ⱄ', 11285 => 'ⱅ', 11286 => 'ⱆ', 11287 => 'ⱇ', 11288 => 'ⱈ', 11289 => 'ⱉ', 11290 => 'ⱊ', 11291 => 'ⱋ', 11292 => 'ⱌ', 11293 => 'ⱍ', 11294 => 'ⱎ', 11295 => 'ⱏ', 11296 => 'ⱐ', 11297 => 'ⱑ', 11298 => 'ⱒ', 11299 => 'ⱓ', 11300 => 'ⱔ', 11301 => 'ⱕ', 11302 => 'ⱖ', 11303 => 'ⱗ', 11304 => 'ⱘ', 11305 => 'ⱙ', 11306 => 'ⱚ', 11307 => 'ⱛ', 11308 => 'ⱜ', 11309 => 'ⱝ', 11310 => 'ⱞ', 11360 => 'ⱡ', 11362 => 'ɫ', 11363 => 'ᵽ', 11364 => 'ɽ', 11367 => 'ⱨ', 11369 => 'ⱪ', 11371 => 'ⱬ', 11373 => 'ɑ', 11374 => 'ɱ', 11375 => 'ɐ', 11376 => 'ɒ', 11378 => 'ⱳ', 11381 => 'ⱶ', 11388 => 'j', 11389 => 'v', 11390 => 'ȿ', 11391 => 'ɀ', 11392 => 'ⲁ', 11394 => 'ⲃ', 11396 => 'ⲅ', 11398 => 'ⲇ', 11400 => 'ⲉ', 11402 => 'ⲋ', 11404 => 'ⲍ', 11406 => 'ⲏ', 11408 => 'ⲑ', 11410 => 'ⲓ', 11412 => 'ⲕ', 11414 => 'ⲗ', 11416 => 'ⲙ', 11418 => 'ⲛ', 11420 => 'ⲝ', 11422 => 'ⲟ', 11424 => 'ⲡ', 11426 => 'ⲣ', 11428 => 'ⲥ', 11430 => 'ⲧ', 11432 => 'ⲩ', 11434 => 'ⲫ', 11436 => 'ⲭ', 11438 => 'ⲯ', 11440 => 'ⲱ', 11442 => 'ⲳ', 11444 => 'ⲵ', 11446 => 'ⲷ', 11448 => 'ⲹ', 11450 => 'ⲻ', 11452 => 'ⲽ', 11454 => 'ⲿ', 11456 => 'ⳁ', 11458 => 'ⳃ', 11460 => 'ⳅ', 11462 => 'ⳇ', 11464 => 'ⳉ', 11466 => 'ⳋ', 11468 => 'ⳍ', 11470 => 'ⳏ', 11472 => 'ⳑ', 11474 => 'ⳓ', 11476 => 'ⳕ', 11478 => 'ⳗ', 11480 => 'ⳙ', 11482 => 'ⳛ', 11484 => 'ⳝ', 11486 => 'ⳟ', 11488 => 'ⳡ', 11490 => 'ⳣ', 11499 => 'ⳬ', 11501 => 'ⳮ', 11506 => 'ⳳ', 11631 => 'ⵡ', 11935 => '母', 12019 => '龟', 12032 => '一', 12033 => '丨', 12034 => '丶', 12035 => '丿', 12036 => '乙', 12037 => '亅', 12038 => '二', 12039 => '亠', 12040 => '人', 12041 => '儿', 12042 => '入', 12043 => '八', 12044 => '冂', 12045 => '冖', 12046 => '冫', 12047 => '几', 12048 => '凵', 12049 => '刀', 12050 => '力', 12051 => '勹', 12052 => '匕', 12053 => '匚', 12054 => '匸', 12055 => '十', 12056 => '卜', 12057 => '卩', 12058 => '厂', 12059 => '厶', 12060 => '又', 12061 => '口', 12062 => '囗', 12063 => '土', 12064 => '士', 12065 => '夂', 12066 => '夊', 12067 => '夕', 12068 => '大', 12069 => '女', 12070 => '子', 12071 => '宀', 12072 => '寸', 12073 => '小', 12074 => '尢', 12075 => '尸', 12076 => '屮', 12077 => '山', 12078 => '巛', 12079 => '工', 12080 => '己', 12081 => '巾', 12082 => '干', 12083 => '幺', 12084 => '广', 12085 => '廴', 12086 => '廾', 12087 => '弋', 12088 => '弓', 12089 => '彐', 12090 => '彡', 12091 => '彳', 12092 => '心', 12093 => '戈', 12094 => '戶', 12095 => '手', 12096 => '支', 12097 => '攴', 12098 => '文', 12099 => '斗', 12100 => '斤', 12101 => '方', 12102 => '无', 12103 => '日', 12104 => '曰', 12105 => '月', 12106 => '木', 12107 => '欠', 12108 => '止', 12109 => '歹', 12110 => '殳', 12111 => '毋', 12112 => '比', 12113 => '毛', 12114 => '氏', 12115 => '气', 12116 => '水', 12117 => '火', 12118 => '爪', 12119 => '父', 12120 => '爻', 12121 => '爿', 12122 => '片', 12123 => '牙', 12124 => '牛', 12125 => '犬', 12126 => '玄', 12127 => '玉', 12128 => '瓜', 12129 => '瓦', 12130 => '甘', 12131 => '生', 12132 => '用', 12133 => '田', 12134 => '疋', 12135 => '疒', 12136 => '癶', 12137 => '白', 12138 => '皮', 12139 => '皿', 12140 => '目', 12141 => '矛', 12142 => '矢', 12143 => '石', 12144 => '示', 12145 => '禸', 12146 => '禾', 12147 => '穴', 12148 => '立', 12149 => '竹', 12150 => '米', 12151 => '糸', 12152 => '缶', 12153 => '网', 12154 => '羊', 12155 => '羽', 12156 => '老', 12157 => '而', 12158 => '耒', 12159 => '耳', 12160 => '聿', 12161 => '肉', 12162 => '臣', 12163 => '自', 12164 => '至', 12165 => '臼', 12166 => '舌', 12167 => '舛', 12168 => '舟', 12169 => '艮', 12170 => '色', 12171 => '艸', 12172 => '虍', 12173 => '虫', 12174 => '血', 12175 => '行', 12176 => '衣', 12177 => '襾', 12178 => '見', 12179 => '角', 12180 => '言', 12181 => '谷', 12182 => '豆', 12183 => '豕', 12184 => '豸', 12185 => '貝', 12186 => '赤', 12187 => '走', 12188 => '足', 12189 => '身', 12190 => '車', 12191 => '辛', 12192 => '辰', 12193 => '辵', 12194 => '邑', 12195 => '酉', 12196 => '釆', 12197 => '里', 12198 => '金', 12199 => '長', 12200 => '門', 12201 => '阜', 12202 => '隶', 12203 => '隹', 12204 => '雨', 12205 => '靑', 12206 => '非', 12207 => '面', 12208 => '革', 12209 => '韋', 12210 => '韭', 12211 => '音', 12212 => '頁', 12213 => '風', 12214 => '飛', 12215 => '食', 12216 => '首', 12217 => '香', 12218 => '馬', 12219 => '骨', 12220 => '高', 12221 => '髟', 12222 => '鬥', 12223 => '鬯', 12224 => '鬲', 12225 => '鬼', 12226 => '魚', 12227 => '鳥', 12228 => '鹵', 12229 => '鹿', 12230 => '麥', 12231 => '麻', 12232 => '黃', 12233 => '黍', 12234 => '黑', 12235 => '黹', 12236 => '黽', 12237 => '鼎', 12238 => '鼓', 12239 => '鼠', 12240 => '鼻', 12241 => '齊', 12242 => '齒', 12243 => '龍', 12244 => '龜', 12245 => '龠', 12290 => '.', 12342 => '〒', 12344 => '十', 12345 => '卄', 12346 => '卅', 12447 => 'より', 12543 => 'コト', 12593 => 'ᄀ', 12594 => 'ᄁ', 12595 => 'ᆪ', 12596 => 'ᄂ', 12597 => 'ᆬ', 12598 => 'ᆭ', 12599 => 'ᄃ', 12600 => 'ᄄ', 12601 => 'ᄅ', 12602 => 'ᆰ', 12603 => 'ᆱ', 12604 => 'ᆲ', 12605 => 'ᆳ', 12606 => 'ᆴ', 12607 => 'ᆵ', 12608 => 'ᄚ', 12609 => 'ᄆ', 12610 => 'ᄇ', 12611 => 'ᄈ', 12612 => 'ᄡ', 12613 => 'ᄉ', 12614 => 'ᄊ', 12615 => 'ᄋ', 12616 => 'ᄌ', 12617 => 'ᄍ', 12618 => 'ᄎ', 12619 => 'ᄏ', 12620 => 'ᄐ', 12621 => 'ᄑ', 12622 => 'ᄒ', 12623 => 'ᅡ', 12624 => 'ᅢ', 12625 => 'ᅣ', 12626 => 'ᅤ', 12627 => 'ᅥ', 12628 => 'ᅦ', 12629 => 'ᅧ', 12630 => 'ᅨ', 12631 => 'ᅩ', 12632 => 'ᅪ', 12633 => 'ᅫ', 12634 => 'ᅬ', 12635 => 'ᅭ', 12636 => 'ᅮ', 12637 => 'ᅯ', 12638 => 'ᅰ', 12639 => 'ᅱ', 12640 => 'ᅲ', 12641 => 'ᅳ', 12642 => 'ᅴ', 12643 => 'ᅵ', 12645 => 'ᄔ', 12646 => 'ᄕ', 12647 => 'ᇇ', 12648 => 'ᇈ', 12649 => 'ᇌ', 12650 => 'ᇎ', 12651 => 'ᇓ', 12652 => 'ᇗ', 12653 => 'ᇙ', 12654 => 'ᄜ', 12655 => 'ᇝ', 12656 => 'ᇟ', 12657 => 'ᄝ', 12658 => 'ᄞ', 12659 => 'ᄠ', 12660 => 'ᄢ', 12661 => 'ᄣ', 12662 => 'ᄧ', 12663 => 'ᄩ', 12664 => 'ᄫ', 12665 => 'ᄬ', 12666 => 'ᄭ', 12667 => 'ᄮ', 12668 => 'ᄯ', 12669 => 'ᄲ', 12670 => 'ᄶ', 12671 => 'ᅀ', 12672 => 'ᅇ', 12673 => 'ᅌ', 12674 => 'ᇱ', 12675 => 'ᇲ', 12676 => 'ᅗ', 12677 => 'ᅘ', 12678 => 'ᅙ', 12679 => 'ᆄ', 12680 => 'ᆅ', 12681 => 'ᆈ', 12682 => 'ᆑ', 12683 => 'ᆒ', 12684 => 'ᆔ', 12685 => 'ᆞ', 12686 => 'ᆡ', 12690 => '一', 12691 => '二', 12692 => '三', 12693 => '四', 12694 => '上', 12695 => '中', 12696 => '下', 12697 => '甲', 12698 => '乙', 12699 => '丙', 12700 => '丁', 12701 => '天', 12702 => '地', 12703 => '人', 12868 => '問', 12869 => '幼', 12870 => '文', 12871 => '箏', 12880 => 'pte', 12881 => '21', 12882 => '22', 12883 => '23', 12884 => '24', 12885 => '25', 12886 => '26', 12887 => '27', 12888 => '28', 12889 => '29', 12890 => '30', 12891 => '31', 12892 => '32', 12893 => '33', 12894 => '34', 12895 => '35', 12896 => 'ᄀ', 12897 => 'ᄂ', 12898 => 'ᄃ', 12899 => 'ᄅ', 12900 => 'ᄆ', 12901 => 'ᄇ', 12902 => 'ᄉ', 12903 => 'ᄋ', 12904 => 'ᄌ', 12905 => 'ᄎ', 12906 => 'ᄏ', 12907 => 'ᄐ', 12908 => 'ᄑ', 12909 => 'ᄒ', 12910 => '가', 12911 => '나', 12912 => '다', 12913 => '라', 12914 => '마', 12915 => '바', 12916 => '사', 12917 => '아', 12918 => '자', 12919 => '차', 12920 => '카', 12921 => '타', 12922 => '파', 12923 => '하', 12924 => '참고', 12925 => '주의', 12926 => '우', 12928 => '一', 12929 => '二', 12930 => '三', 12931 => '四', 12932 => '五', 12933 => '六', 12934 => '七', 12935 => '八', 12936 => '九', 12937 => '十', 12938 => '月', 12939 => '火', 12940 => '水', 12941 => '木', 12942 => '金', 12943 => '土', 12944 => '日', 12945 => '株', 12946 => '有', 12947 => '社', 12948 => '名', 12949 => '特', 12950 => '財', 12951 => '祝', 12952 => '労', 12953 => '秘', 12954 => '男', 12955 => '女', 12956 => '適', 12957 => '優', 12958 => '印', 12959 => '注', 12960 => '項', 12961 => '休', 12962 => '写', 12963 => '正', 12964 => '上', 12965 => '中', 12966 => '下', 12967 => '左', 12968 => '右', 12969 => '医', 12970 => '宗', 12971 => '学', 12972 => '監', 12973 => '企', 12974 => '資', 12975 => '協', 12976 => '夜', 12977 => '36', 12978 => '37', 12979 => '38', 12980 => '39', 12981 => '40', 12982 => '41', 12983 => '42', 12984 => '43', 12985 => '44', 12986 => '45', 12987 => '46', 12988 => '47', 12989 => '48', 12990 => '49', 12991 => '50', 12992 => '1月', 12993 => '2月', 12994 => '3月', 12995 => '4月', 12996 => '5月', 12997 => '6月', 12998 => '7月', 12999 => '8月', 13000 => '9月', 13001 => '10月', 13002 => '11月', 13003 => '12月', 13004 => 'hg', 13005 => 'erg', 13006 => 'ev', 13007 => 'ltd', 13008 => 'ア', 13009 => 'イ', 13010 => 'ウ', 13011 => 'エ', 13012 => 'オ', 13013 => 'カ', 13014 => 'キ', 13015 => 'ク', 13016 => 'ケ', 13017 => 'コ', 13018 => 'サ', 13019 => 'シ', 13020 => 'ス', 13021 => 'セ', 13022 => 'ソ', 13023 => 'タ', 13024 => 'チ', 13025 => 'ツ', 13026 => 'テ', 13027 => 'ト', 13028 => 'ナ', 13029 => 'ニ', 13030 => 'ヌ', 13031 => 'ネ', 13032 => 'ノ', 13033 => 'ハ', 13034 => 'ヒ', 13035 => 'フ', 13036 => 'ヘ', 13037 => 'ホ', 13038 => 'マ', 13039 => 'ミ', 13040 => 'ム', 13041 => 'メ', 13042 => 'モ', 13043 => 'ヤ', 13044 => 'ユ', 13045 => 'ヨ', 13046 => 'ラ', 13047 => 'リ', 13048 => 'ル', 13049 => 'レ', 13050 => 'ロ', 13051 => 'ワ', 13052 => 'ヰ', 13053 => 'ヱ', 13054 => 'ヲ', 13055 => '令和', 13056 => 'アパート', 13057 => 'アルファ', 13058 => 'アンペア', 13059 => 'アール', 13060 => 'イニング', 13061 => 'インチ', 13062 => 'ウォン', 13063 => 'エスクード', 13064 => 'エーカー', 13065 => 'オンス', 13066 => 'オーム', 13067 => 'カイリ', 13068 => 'カラット', 13069 => 'カロリー', 13070 => 'ガロン', 13071 => 'ガンマ', 13072 => 'ギガ', 13073 => 'ギニー', 13074 => 'キュリー', 13075 => 'ギルダー', 13076 => 'キロ', 13077 => 'キログラム', 13078 => 'キロメートル', 13079 => 'キロワット', 13080 => 'グラム', 13081 => 'グラムトン', 13082 => 'クルゼイロ', 13083 => 'クローネ', 13084 => 'ケース', 13085 => 'コルナ', 13086 => 'コーポ', 13087 => 'サイクル', 13088 => 'サンチーム', 13089 => 'シリング', 13090 => 'センチ', 13091 => 'セント', 13092 => 'ダース', 13093 => 'デシ', 13094 => 'ドル', 13095 => 'トン', 13096 => 'ナノ', 13097 => 'ノット', 13098 => 'ハイツ', 13099 => 'パーセント', 13100 => 'パーツ', 13101 => 'バーレル', 13102 => 'ピアストル', 13103 => 'ピクル', 13104 => 'ピコ', 13105 => 'ビル', 13106 => 'ファラッド', 13107 => 'フィート', 13108 => 'ブッシェル', 13109 => 'フラン', 13110 => 'ヘクタール', 13111 => 'ペソ', 13112 => 'ペニヒ', 13113 => 'ヘルツ', 13114 => 'ペンス', 13115 => 'ページ', 13116 => 'ベータ', 13117 => 'ポイント', 13118 => 'ボルト', 13119 => 'ホン', 13120 => 'ポンド', 13121 => 'ホール', 13122 => 'ホーン', 13123 => 'マイクロ', 13124 => 'マイル', 13125 => 'マッハ', 13126 => 'マルク', 13127 => 'マンション', 13128 => 'ミクロン', 13129 => 'ミリ', 13130 => 'ミリバール', 13131 => 'メガ', 13132 => 'メガトン', 13133 => 'メートル', 13134 => 'ヤード', 13135 => 'ヤール', 13136 => 'ユアン', 13137 => 'リットル', 13138 => 'リラ', 13139 => 'ルピー', 13140 => 'ルーブル', 13141 => 'レム', 13142 => 'レントゲン', 13143 => 'ワット', 13144 => '0点', 13145 => '1点', 13146 => '2点', 13147 => '3点', 13148 => '4点', 13149 => '5点', 13150 => '6点', 13151 => '7点', 13152 => '8点', 13153 => '9点', 13154 => '10点', 13155 => '11点', 13156 => '12点', 13157 => '13点', 13158 => '14点', 13159 => '15点', 13160 => '16点', 13161 => '17点', 13162 => '18点', 13163 => '19点', 13164 => '20点', 13165 => '21点', 13166 => '22点', 13167 => '23点', 13168 => '24点', 13169 => 'hpa', 13170 => 'da', 13171 => 'au', 13172 => 'bar', 13173 => 'ov', 13174 => 'pc', 13175 => 'dm', 13176 => 'dm2', 13177 => 'dm3', 13178 => 'iu', 13179 => '平成', 13180 => '昭和', 13181 => '大正', 13182 => '明治', 13183 => '株式会社', 13184 => 'pa', 13185 => 'na', 13186 => 'μa', 13187 => 'ma', 13188 => 'ka', 13189 => 'kb', 13190 => 'mb', 13191 => 'gb', 13192 => 'cal', 13193 => 'kcal', 13194 => 'pf', 13195 => 'nf', 13196 => 'μf', 13197 => 'μg', 13198 => 'mg', 13199 => 'kg', 13200 => 'hz', 13201 => 'khz', 13202 => 'mhz', 13203 => 'ghz', 13204 => 'thz', 13205 => 'μl', 13206 => 'ml', 13207 => 'dl', 13208 => 'kl', 13209 => 'fm', 13210 => 'nm', 13211 => 'μm', 13212 => 'mm', 13213 => 'cm', 13214 => 'km', 13215 => 'mm2', 13216 => 'cm2', 13217 => 'm2', 13218 => 'km2', 13219 => 'mm3', 13220 => 'cm3', 13221 => 'm3', 13222 => 'km3', 13223 => 'm∕s', 13224 => 'm∕s2', 13225 => 'pa', 13226 => 'kpa', 13227 => 'mpa', 13228 => 'gpa', 13229 => 'rad', 13230 => 'rad∕s', 13231 => 'rad∕s2', 13232 => 'ps', 13233 => 'ns', 13234 => 'μs', 13235 => 'ms', 13236 => 'pv', 13237 => 'nv', 13238 => 'μv', 13239 => 'mv', 13240 => 'kv', 13241 => 'mv', 13242 => 'pw', 13243 => 'nw', 13244 => 'μw', 13245 => 'mw', 13246 => 'kw', 13247 => 'mw', 13248 => 'kω', 13249 => 'mω', 13251 => 'bq', 13252 => 'cc', 13253 => 'cd', 13254 => 'c∕kg', 13256 => 'db', 13257 => 'gy', 13258 => 'ha', 13259 => 'hp', 13260 => 'in', 13261 => 'kk', 13262 => 'km', 13263 => 'kt', 13264 => 'lm', 13265 => 'ln', 13266 => 'log', 13267 => 'lx', 13268 => 'mb', 13269 => 'mil', 13270 => 'mol', 13271 => 'ph', 13273 => 'ppm', 13274 => 'pr', 13275 => 'sr', 13276 => 'sv', 13277 => 'wb', 13278 => 'v∕m', 13279 => 'a∕m', 13280 => '1日', 13281 => '2日', 13282 => '3日', 13283 => '4日', 13284 => '5日', 13285 => '6日', 13286 => '7日', 13287 => '8日', 13288 => '9日', 13289 => '10日', 13290 => '11日', 13291 => '12日', 13292 => '13日', 13293 => '14日', 13294 => '15日', 13295 => '16日', 13296 => '17日', 13297 => '18日', 13298 => '19日', 13299 => '20日', 13300 => '21日', 13301 => '22日', 13302 => '23日', 13303 => '24日', 13304 => '25日', 13305 => '26日', 13306 => '27日', 13307 => '28日', 13308 => '29日', 13309 => '30日', 13310 => '31日', 13311 => 'gal', 42560 => 'ꙁ', 42562 => 'ꙃ', 42564 => 'ꙅ', 42566 => 'ꙇ', 42568 => 'ꙉ', 42570 => 'ꙋ', 42572 => 'ꙍ', 42574 => 'ꙏ', 42576 => 'ꙑ', 42578 => 'ꙓ', 42580 => 'ꙕ', 42582 => 'ꙗ', 42584 => 'ꙙ', 42586 => 'ꙛ', 42588 => 'ꙝ', 42590 => 'ꙟ', 42592 => 'ꙡ', 42594 => 'ꙣ', 42596 => 'ꙥ', 42598 => 'ꙧ', 42600 => 'ꙩ', 42602 => 'ꙫ', 42604 => 'ꙭ', 42624 => 'ꚁ', 42626 => 'ꚃ', 42628 => 'ꚅ', 42630 => 'ꚇ', 42632 => 'ꚉ', 42634 => 'ꚋ', 42636 => 'ꚍ', 42638 => 'ꚏ', 42640 => 'ꚑ', 42642 => 'ꚓ', 42644 => 'ꚕ', 42646 => 'ꚗ', 42648 => 'ꚙ', 42650 => 'ꚛ', 42652 => 'ъ', 42653 => 'ь', 42786 => 'ꜣ', 42788 => 'ꜥ', 42790 => 'ꜧ', 42792 => 'ꜩ', 42794 => 'ꜫ', 42796 => 'ꜭ', 42798 => 'ꜯ', 42802 => 'ꜳ', 42804 => 'ꜵ', 42806 => 'ꜷ', 42808 => 'ꜹ', 42810 => 'ꜻ', 42812 => 'ꜽ', 42814 => 'ꜿ', 42816 => 'ꝁ', 42818 => 'ꝃ', 42820 => 'ꝅ', 42822 => 'ꝇ', 42824 => 'ꝉ', 42826 => 'ꝋ', 42828 => 'ꝍ', 42830 => 'ꝏ', 42832 => 'ꝑ', 42834 => 'ꝓ', 42836 => 'ꝕ', 42838 => 'ꝗ', 42840 => 'ꝙ', 42842 => 'ꝛ', 42844 => 'ꝝ', 42846 => 'ꝟ', 42848 => 'ꝡ', 42850 => 'ꝣ', 42852 => 'ꝥ', 42854 => 'ꝧ', 42856 => 'ꝩ', 42858 => 'ꝫ', 42860 => 'ꝭ', 42862 => 'ꝯ', 42864 => 'ꝯ', 42873 => 'ꝺ', 42875 => 'ꝼ', 42877 => 'ᵹ', 42878 => 'ꝿ', 42880 => 'ꞁ', 42882 => 'ꞃ', 42884 => 'ꞅ', 42886 => 'ꞇ', 42891 => 'ꞌ', 42893 => 'ɥ', 42896 => 'ꞑ', 42898 => 'ꞓ', 42902 => 'ꞗ', 42904 => 'ꞙ', 42906 => 'ꞛ', 42908 => 'ꞝ', 42910 => 'ꞟ', 42912 => 'ꞡ', 42914 => 'ꞣ', 42916 => 'ꞥ', 42918 => 'ꞧ', 42920 => 'ꞩ', 42922 => 'ɦ', 42923 => 'ɜ', 42924 => 'ɡ', 42925 => 'ɬ', 42926 => 'ɪ', 42928 => 'ʞ', 42929 => 'ʇ', 42930 => 'ʝ', 42931 => 'ꭓ', 42932 => 'ꞵ', 42934 => 'ꞷ', 42936 => 'ꞹ', 42938 => 'ꞻ', 42940 => 'ꞽ', 42942 => 'ꞿ', 42946 => 'ꟃ', 42948 => 'ꞔ', 42949 => 'ʂ', 42950 => 'ᶎ', 42951 => 'ꟈ', 42953 => 'ꟊ', 42997 => 'ꟶ', 43000 => 'ħ', 43001 => 'œ', 43868 => 'ꜧ', 43869 => 'ꬷ', 43870 => 'ɫ', 43871 => 'ꭒ', 43881 => 'ʍ', 43888 => 'Ꭰ', 43889 => 'Ꭱ', 43890 => 'Ꭲ', 43891 => 'Ꭳ', 43892 => 'Ꭴ', 43893 => 'Ꭵ', 43894 => 'Ꭶ', 43895 => 'Ꭷ', 43896 => 'Ꭸ', 43897 => 'Ꭹ', 43898 => 'Ꭺ', 43899 => 'Ꭻ', 43900 => 'Ꭼ', 43901 => 'Ꭽ', 43902 => 'Ꭾ', 43903 => 'Ꭿ', 43904 => 'Ꮀ', 43905 => 'Ꮁ', 43906 => 'Ꮂ', 43907 => 'Ꮃ', 43908 => 'Ꮄ', 43909 => 'Ꮅ', 43910 => 'Ꮆ', 43911 => 'Ꮇ', 43912 => 'Ꮈ', 43913 => 'Ꮉ', 43914 => 'Ꮊ', 43915 => 'Ꮋ', 43916 => 'Ꮌ', 43917 => 'Ꮍ', 43918 => 'Ꮎ', 43919 => 'Ꮏ', 43920 => 'Ꮐ', 43921 => 'Ꮑ', 43922 => 'Ꮒ', 43923 => 'Ꮓ', 43924 => 'Ꮔ', 43925 => 'Ꮕ', 43926 => 'Ꮖ', 43927 => 'Ꮗ', 43928 => 'Ꮘ', 43929 => 'Ꮙ', 43930 => 'Ꮚ', 43931 => 'Ꮛ', 43932 => 'Ꮜ', 43933 => 'Ꮝ', 43934 => 'Ꮞ', 43935 => 'Ꮟ', 43936 => 'Ꮠ', 43937 => 'Ꮡ', 43938 => 'Ꮢ', 43939 => 'Ꮣ', 43940 => 'Ꮤ', 43941 => 'Ꮥ', 43942 => 'Ꮦ', 43943 => 'Ꮧ', 43944 => 'Ꮨ', 43945 => 'Ꮩ', 43946 => 'Ꮪ', 43947 => 'Ꮫ', 43948 => 'Ꮬ', 43949 => 'Ꮭ', 43950 => 'Ꮮ', 43951 => 'Ꮯ', 43952 => 'Ꮰ', 43953 => 'Ꮱ', 43954 => 'Ꮲ', 43955 => 'Ꮳ', 43956 => 'Ꮴ', 43957 => 'Ꮵ', 43958 => 'Ꮶ', 43959 => 'Ꮷ', 43960 => 'Ꮸ', 43961 => 'Ꮹ', 43962 => 'Ꮺ', 43963 => 'Ꮻ', 43964 => 'Ꮼ', 43965 => 'Ꮽ', 43966 => 'Ꮾ', 43967 => 'Ꮿ', 63744 => '豈', 63745 => '更', 63746 => '車', 63747 => '賈', 63748 => '滑', 63749 => '串', 63750 => '句', 63751 => '龜', 63752 => '龜', 63753 => '契', 63754 => '金', 63755 => '喇', 63756 => '奈', 63757 => '懶', 63758 => '癩', 63759 => '羅', 63760 => '蘿', 63761 => '螺', 63762 => '裸', 63763 => '邏', 63764 => '樂', 63765 => '洛', 63766 => '烙', 63767 => '珞', 63768 => '落', 63769 => '酪', 63770 => '駱', 63771 => '亂', 63772 => '卵', 63773 => '欄', 63774 => '爛', 63775 => '蘭', 63776 => '鸞', 63777 => '嵐', 63778 => '濫', 63779 => '藍', 63780 => '襤', 63781 => '拉', 63782 => '臘', 63783 => '蠟', 63784 => '廊', 63785 => '朗', 63786 => '浪', 63787 => '狼', 63788 => '郎', 63789 => '來', 63790 => '冷', 63791 => '勞', 63792 => '擄', 63793 => '櫓', 63794 => '爐', 63795 => '盧', 63796 => '老', 63797 => '蘆', 63798 => '虜', 63799 => '路', 63800 => '露', 63801 => '魯', 63802 => '鷺', 63803 => '碌', 63804 => '祿', 63805 => '綠', 63806 => '菉', 63807 => '錄', 63808 => '鹿', 63809 => '論', 63810 => '壟', 63811 => '弄', 63812 => '籠', 63813 => '聾', 63814 => '牢', 63815 => '磊', 63816 => '賂', 63817 => '雷', 63818 => '壘', 63819 => '屢', 63820 => '樓', 63821 => '淚', 63822 => '漏', 63823 => '累', 63824 => '縷', 63825 => '陋', 63826 => '勒', 63827 => '肋', 63828 => '凜', 63829 => '凌', 63830 => '稜', 63831 => '綾', 63832 => '菱', 63833 => '陵', 63834 => '讀', 63835 => '拏', 63836 => '樂', 63837 => '諾', 63838 => '丹', 63839 => '寧', 63840 => '怒', 63841 => '率', 63842 => '異', 63843 => '北', 63844 => '磻', 63845 => '便', 63846 => '復', 63847 => '不', 63848 => '泌', 63849 => '數', 63850 => '索', 63851 => '參', 63852 => '塞', 63853 => '省', 63854 => '葉', 63855 => '說', 63856 => '殺', 63857 => '辰', 63858 => '沈', 63859 => '拾', 63860 => '若', 63861 => '掠', 63862 => '略', 63863 => '亮', 63864 => '兩', 63865 => '凉', 63866 => '梁', 63867 => '糧', 63868 => '良', 63869 => '諒', 63870 => '量', 63871 => '勵', 63872 => '呂', 63873 => '女', 63874 => '廬', 63875 => '旅', 63876 => '濾', 63877 => '礪', 63878 => '閭', 63879 => '驪', 63880 => '麗', 63881 => '黎', 63882 => '力', 63883 => '曆', 63884 => '歷', 63885 => '轢', 63886 => '年', 63887 => '憐', 63888 => '戀', 63889 => '撚', 63890 => '漣', 63891 => '煉', 63892 => '璉', 63893 => '秊', 63894 => '練', 63895 => '聯', 63896 => '輦', 63897 => '蓮', 63898 => '連', 63899 => '鍊', 63900 => '列', 63901 => '劣', 63902 => '咽', 63903 => '烈', 63904 => '裂', 63905 => '說', 63906 => '廉', 63907 => '念', 63908 => '捻', 63909 => '殮', 63910 => '簾', 63911 => '獵', 63912 => '令', 63913 => '囹', 63914 => '寧', 63915 => '嶺', 63916 => '怜', 63917 => '玲', 63918 => '瑩', 63919 => '羚', 63920 => '聆', 63921 => '鈴', 63922 => '零', 63923 => '靈', 63924 => '領', 63925 => '例', 63926 => '禮', 63927 => '醴', 63928 => '隸', 63929 => '惡', 63930 => '了', 63931 => '僚', 63932 => '寮', 63933 => '尿', 63934 => '料', 63935 => '樂', 63936 => '燎', 63937 => '療', 63938 => '蓼', 63939 => '遼', 63940 => '龍', 63941 => '暈', 63942 => '阮', 63943 => '劉', 63944 => '杻', 63945 => '柳', 63946 => '流', 63947 => '溜', 63948 => '琉', 63949 => '留', 63950 => '硫', 63951 => '紐', 63952 => '類', 63953 => '六', 63954 => '戮', 63955 => '陸', 63956 => '倫', 63957 => '崙', 63958 => '淪', 63959 => '輪', 63960 => '律', 63961 => '慄', 63962 => '栗', 63963 => '率', 63964 => '隆', 63965 => '利', 63966 => '吏', 63967 => '履', 63968 => '易', 63969 => '李', 63970 => '梨', 63971 => '泥', 63972 => '理', 63973 => '痢', 63974 => '罹', 63975 => '裏', 63976 => '裡', 63977 => '里', 63978 => '離', 63979 => '匿', 63980 => '溺', 63981 => '吝', 63982 => '燐', 63983 => '璘', 63984 => '藺', 63985 => '隣', 63986 => '鱗', 63987 => '麟', 63988 => '林', 63989 => '淋', 63990 => '臨', 63991 => '立', 63992 => '笠', 63993 => '粒', 63994 => '狀', 63995 => '炙', 63996 => '識', 63997 => '什', 63998 => '茶', 63999 => '刺', 64000 => '切', 64001 => '度', 64002 => '拓', 64003 => '糖', 64004 => '宅', 64005 => '洞', 64006 => '暴', 64007 => '輻', 64008 => '行', 64009 => '降', 64010 => '見', 64011 => '廓', 64012 => '兀', 64013 => '嗀', 64016 => '塚', 64018 => '晴', 64021 => '凞', 64022 => '猪', 64023 => '益', 64024 => '礼', 64025 => '神', 64026 => '祥', 64027 => '福', 64028 => '靖', 64029 => '精', 64030 => '羽', 64032 => '蘒', 64034 => '諸', 64037 => '逸', 64038 => '都', 64042 => '飯', 64043 => '飼', 64044 => '館', 64045 => '鶴', 64046 => '郞', 64047 => '隷', 64048 => '侮', 64049 => '僧', 64050 => '免', 64051 => '勉', 64052 => '勤', 64053 => '卑', 64054 => '喝', 64055 => '嘆', 64056 => '器', 64057 => '塀', 64058 => '墨', 64059 => '層', 64060 => '屮', 64061 => '悔', 64062 => '慨', 64063 => '憎', 64064 => '懲', 64065 => '敏', 64066 => '既', 64067 => '暑', 64068 => '梅', 64069 => '海', 64070 => '渚', 64071 => '漢', 64072 => '煮', 64073 => '爫', 64074 => '琢', 64075 => '碑', 64076 => '社', 64077 => '祉', 64078 => '祈', 64079 => '祐', 64080 => '祖', 64081 => '祝', 64082 => '禍', 64083 => '禎', 64084 => '穀', 64085 => '突', 64086 => '節', 64087 => '練', 64088 => '縉', 64089 => '繁', 64090 => '署', 64091 => '者', 64092 => '臭', 64093 => '艹', 64094 => '艹', 64095 => '著', 64096 => '褐', 64097 => '視', 64098 => '謁', 64099 => '謹', 64100 => '賓', 64101 => '贈', 64102 => '辶', 64103 => '逸', 64104 => '難', 64105 => '響', 64106 => '頻', 64107 => '恵', 64108 => '𤋮', 64109 => '舘', 64112 => '並', 64113 => '况', 64114 => '全', 64115 => '侀', 64116 => '充', 64117 => '冀', 64118 => '勇', 64119 => '勺', 64120 => '喝', 64121 => '啕', 64122 => '喙', 64123 => '嗢', 64124 => '塚', 64125 => '墳', 64126 => '奄', 64127 => '奔', 64128 => '婢', 64129 => '嬨', 64130 => '廒', 64131 => '廙', 64132 => '彩', 64133 => '徭', 64134 => '惘', 64135 => '慎', 64136 => '愈', 64137 => '憎', 64138 => '慠', 64139 => '懲', 64140 => '戴', 64141 => '揄', 64142 => '搜', 64143 => '摒', 64144 => '敖', 64145 => '晴', 64146 => '朗', 64147 => '望', 64148 => '杖', 64149 => '歹', 64150 => '殺', 64151 => '流', 64152 => '滛', 64153 => '滋', 64154 => '漢', 64155 => '瀞', 64156 => '煮', 64157 => '瞧', 64158 => '爵', 64159 => '犯', 64160 => '猪', 64161 => '瑱', 64162 => '甆', 64163 => '画', 64164 => '瘝', 64165 => '瘟', 64166 => '益', 64167 => '盛', 64168 => '直', 64169 => '睊', 64170 => '着', 64171 => '磌', 64172 => '窱', 64173 => '節', 64174 => '类', 64175 => '絛', 64176 => '練', 64177 => '缾', 64178 => '者', 64179 => '荒', 64180 => '華', 64181 => '蝹', 64182 => '襁', 64183 => '覆', 64184 => '視', 64185 => '調', 64186 => '諸', 64187 => '請', 64188 => '謁', 64189 => '諾', 64190 => '諭', 64191 => '謹', 64192 => '變', 64193 => '贈', 64194 => '輸', 64195 => '遲', 64196 => '醙', 64197 => '鉶', 64198 => '陼', 64199 => '難', 64200 => '靖', 64201 => '韛', 64202 => '響', 64203 => '頋', 64204 => '頻', 64205 => '鬒', 64206 => '龜', 64207 => '𢡊', 64208 => '𢡄', 64209 => '𣏕', 64210 => '㮝', 64211 => '䀘', 64212 => '䀹', 64213 => '𥉉', 64214 => '𥳐', 64215 => '𧻓', 64216 => '齃', 64217 => '龎', 64256 => 'ff', 64257 => 'fi', 64258 => 'fl', 64259 => 'ffi', 64260 => 'ffl', 64261 => 'st', 64262 => 'st', 64275 => 'մն', 64276 => 'մե', 64277 => 'մի', 64278 => 'վն', 64279 => 'մխ', 64285 => 'יִ', 64287 => 'ײַ', 64288 => 'ע', 64289 => 'א', 64290 => 'ד', 64291 => 'ה', 64292 => 'כ', 64293 => 'ל', 64294 => 'ם', 64295 => 'ר', 64296 => 'ת', 64298 => 'שׁ', 64299 => 'שׂ', 64300 => 'שּׁ', 64301 => 'שּׂ', 64302 => 'אַ', 64303 => 'אָ', 64304 => 'אּ', 64305 => 'בּ', 64306 => 'גּ', 64307 => 'דּ', 64308 => 'הּ', 64309 => 'וּ', 64310 => 'זּ', 64312 => 'טּ', 64313 => 'יּ', 64314 => 'ךּ', 64315 => 'כּ', 64316 => 'לּ', 64318 => 'מּ', 64320 => 'נּ', 64321 => 'סּ', 64323 => 'ףּ', 64324 => 'פּ', 64326 => 'צּ', 64327 => 'קּ', 64328 => 'רּ', 64329 => 'שּ', 64330 => 'תּ', 64331 => 'וֹ', 64332 => 'בֿ', 64333 => 'כֿ', 64334 => 'פֿ', 64335 => 'אל', 64336 => 'ٱ', 64337 => 'ٱ', 64338 => 'ٻ', 64339 => 'ٻ', 64340 => 'ٻ', 64341 => 'ٻ', 64342 => 'پ', 64343 => 'پ', 64344 => 'پ', 64345 => 'پ', 64346 => 'ڀ', 64347 => 'ڀ', 64348 => 'ڀ', 64349 => 'ڀ', 64350 => 'ٺ', 64351 => 'ٺ', 64352 => 'ٺ', 64353 => 'ٺ', 64354 => 'ٿ', 64355 => 'ٿ', 64356 => 'ٿ', 64357 => 'ٿ', 64358 => 'ٹ', 64359 => 'ٹ', 64360 => 'ٹ', 64361 => 'ٹ', 64362 => 'ڤ', 64363 => 'ڤ', 64364 => 'ڤ', 64365 => 'ڤ', 64366 => 'ڦ', 64367 => 'ڦ', 64368 => 'ڦ', 64369 => 'ڦ', 64370 => 'ڄ', 64371 => 'ڄ', 64372 => 'ڄ', 64373 => 'ڄ', 64374 => 'ڃ', 64375 => 'ڃ', 64376 => 'ڃ', 64377 => 'ڃ', 64378 => 'چ', 64379 => 'چ', 64380 => 'چ', 64381 => 'چ', 64382 => 'ڇ', 64383 => 'ڇ', 64384 => 'ڇ', 64385 => 'ڇ', 64386 => 'ڍ', 64387 => 'ڍ', 64388 => 'ڌ', 64389 => 'ڌ', 64390 => 'ڎ', 64391 => 'ڎ', 64392 => 'ڈ', 64393 => 'ڈ', 64394 => 'ژ', 64395 => 'ژ', 64396 => 'ڑ', 64397 => 'ڑ', 64398 => 'ک', 64399 => 'ک', 64400 => 'ک', 64401 => 'ک', 64402 => 'گ', 64403 => 'گ', 64404 => 'گ', 64405 => 'گ', 64406 => 'ڳ', 64407 => 'ڳ', 64408 => 'ڳ', 64409 => 'ڳ', 64410 => 'ڱ', 64411 => 'ڱ', 64412 => 'ڱ', 64413 => 'ڱ', 64414 => 'ں', 64415 => 'ں', 64416 => 'ڻ', 64417 => 'ڻ', 64418 => 'ڻ', 64419 => 'ڻ', 64420 => 'ۀ', 64421 => 'ۀ', 64422 => 'ہ', 64423 => 'ہ', 64424 => 'ہ', 64425 => 'ہ', 64426 => 'ھ', 64427 => 'ھ', 64428 => 'ھ', 64429 => 'ھ', 64430 => 'ے', 64431 => 'ے', 64432 => 'ۓ', 64433 => 'ۓ', 64467 => 'ڭ', 64468 => 'ڭ', 64469 => 'ڭ', 64470 => 'ڭ', 64471 => 'ۇ', 64472 => 'ۇ', 64473 => 'ۆ', 64474 => 'ۆ', 64475 => 'ۈ', 64476 => 'ۈ', 64477 => 'ۇٴ', 64478 => 'ۋ', 64479 => 'ۋ', 64480 => 'ۅ', 64481 => 'ۅ', 64482 => 'ۉ', 64483 => 'ۉ', 64484 => 'ې', 64485 => 'ې', 64486 => 'ې', 64487 => 'ې', 64488 => 'ى', 64489 => 'ى', 64490 => 'ئا', 64491 => 'ئا', 64492 => 'ئە', 64493 => 'ئە', 64494 => 'ئو', 64495 => 'ئو', 64496 => 'ئۇ', 64497 => 'ئۇ', 64498 => 'ئۆ', 64499 => 'ئۆ', 64500 => 'ئۈ', 64501 => 'ئۈ', 64502 => 'ئې', 64503 => 'ئې', 64504 => 'ئې', 64505 => 'ئى', 64506 => 'ئى', 64507 => 'ئى', 64508 => 'ی', 64509 => 'ی', 64510 => 'ی', 64511 => 'ی', 64512 => 'ئج', 64513 => 'ئح', 64514 => 'ئم', 64515 => 'ئى', 64516 => 'ئي', 64517 => 'بج', 64518 => 'بح', 64519 => 'بخ', 64520 => 'بم', 64521 => 'بى', 64522 => 'بي', 64523 => 'تج', 64524 => 'تح', 64525 => 'تخ', 64526 => 'تم', 64527 => 'تى', 64528 => 'تي', 64529 => 'ثج', 64530 => 'ثم', 64531 => 'ثى', 64532 => 'ثي', 64533 => 'جح', 64534 => 'جم', 64535 => 'حج', 64536 => 'حم', 64537 => 'خج', 64538 => 'خح', 64539 => 'خم', 64540 => 'سج', 64541 => 'سح', 64542 => 'سخ', 64543 => 'سم', 64544 => 'صح', 64545 => 'صم', 64546 => 'ضج', 64547 => 'ضح', 64548 => 'ضخ', 64549 => 'ضم', 64550 => 'طح', 64551 => 'طم', 64552 => 'ظم', 64553 => 'عج', 64554 => 'عم', 64555 => 'غج', 64556 => 'غم', 64557 => 'فج', 64558 => 'فح', 64559 => 'فخ', 64560 => 'فم', 64561 => 'فى', 64562 => 'في', 64563 => 'قح', 64564 => 'قم', 64565 => 'قى', 64566 => 'قي', 64567 => 'كا', 64568 => 'كج', 64569 => 'كح', 64570 => 'كخ', 64571 => 'كل', 64572 => 'كم', 64573 => 'كى', 64574 => 'كي', 64575 => 'لج', 64576 => 'لح', 64577 => 'لخ', 64578 => 'لم', 64579 => 'لى', 64580 => 'لي', 64581 => 'مج', 64582 => 'مح', 64583 => 'مخ', 64584 => 'مم', 64585 => 'مى', 64586 => 'مي', 64587 => 'نج', 64588 => 'نح', 64589 => 'نخ', 64590 => 'نم', 64591 => 'نى', 64592 => 'ني', 64593 => 'هج', 64594 => 'هم', 64595 => 'هى', 64596 => 'هي', 64597 => 'يج', 64598 => 'يح', 64599 => 'يخ', 64600 => 'يم', 64601 => 'يى', 64602 => 'يي', 64603 => 'ذٰ', 64604 => 'رٰ', 64605 => 'ىٰ', 64612 => 'ئر', 64613 => 'ئز', 64614 => 'ئم', 64615 => 'ئن', 64616 => 'ئى', 64617 => 'ئي', 64618 => 'بر', 64619 => 'بز', 64620 => 'بم', 64621 => 'بن', 64622 => 'بى', 64623 => 'بي', 64624 => 'تر', 64625 => 'تز', 64626 => 'تم', 64627 => 'تن', 64628 => 'تى', 64629 => 'تي', 64630 => 'ثر', 64631 => 'ثز', 64632 => 'ثم', 64633 => 'ثن', 64634 => 'ثى', 64635 => 'ثي', 64636 => 'فى', 64637 => 'في', 64638 => 'قى', 64639 => 'قي', 64640 => 'كا', 64641 => 'كل', 64642 => 'كم', 64643 => 'كى', 64644 => 'كي', 64645 => 'لم', 64646 => 'لى', 64647 => 'لي', 64648 => 'ما', 64649 => 'مم', 64650 => 'نر', 64651 => 'نز', 64652 => 'نم', 64653 => 'نن', 64654 => 'نى', 64655 => 'ني', 64656 => 'ىٰ', 64657 => 'ير', 64658 => 'يز', 64659 => 'يم', 64660 => 'ين', 64661 => 'يى', 64662 => 'يي', 64663 => 'ئج', 64664 => 'ئح', 64665 => 'ئخ', 64666 => 'ئم', 64667 => 'ئه', 64668 => 'بج', 64669 => 'بح', 64670 => 'بخ', 64671 => 'بم', 64672 => 'به', 64673 => 'تج', 64674 => 'تح', 64675 => 'تخ', 64676 => 'تم', 64677 => 'ته', 64678 => 'ثم', 64679 => 'جح', 64680 => 'جم', 64681 => 'حج', 64682 => 'حم', 64683 => 'خج', 64684 => 'خم', 64685 => 'سج', 64686 => 'سح', 64687 => 'سخ', 64688 => 'سم', 64689 => 'صح', 64690 => 'صخ', 64691 => 'صم', 64692 => 'ضج', 64693 => 'ضح', 64694 => 'ضخ', 64695 => 'ضم', 64696 => 'طح', 64697 => 'ظم', 64698 => 'عج', 64699 => 'عم', 64700 => 'غج', 64701 => 'غم', 64702 => 'فج', 64703 => 'فح', 64704 => 'فخ', 64705 => 'فم', 64706 => 'قح', 64707 => 'قم', 64708 => 'كج', 64709 => 'كح', 64710 => 'كخ', 64711 => 'كل', 64712 => 'كم', 64713 => 'لج', 64714 => 'لح', 64715 => 'لخ', 64716 => 'لم', 64717 => 'له', 64718 => 'مج', 64719 => 'مح', 64720 => 'مخ', 64721 => 'مم', 64722 => 'نج', 64723 => 'نح', 64724 => 'نخ', 64725 => 'نم', 64726 => 'نه', 64727 => 'هج', 64728 => 'هم', 64729 => 'هٰ', 64730 => 'يج', 64731 => 'يح', 64732 => 'يخ', 64733 => 'يم', 64734 => 'يه', 64735 => 'ئم', 64736 => 'ئه', 64737 => 'بم', 64738 => 'به', 64739 => 'تم', 64740 => 'ته', 64741 => 'ثم', 64742 => 'ثه', 64743 => 'سم', 64744 => 'سه', 64745 => 'شم', 64746 => 'شه', 64747 => 'كل', 64748 => 'كم', 64749 => 'لم', 64750 => 'نم', 64751 => 'نه', 64752 => 'يم', 64753 => 'يه', 64754 => 'ـَّ', 64755 => 'ـُّ', 64756 => 'ـِّ', 64757 => 'طى', 64758 => 'طي', 64759 => 'عى', 64760 => 'عي', 64761 => 'غى', 64762 => 'غي', 64763 => 'سى', 64764 => 'سي', 64765 => 'شى', 64766 => 'شي', 64767 => 'حى', 64768 => 'حي', 64769 => 'جى', 64770 => 'جي', 64771 => 'خى', 64772 => 'خي', 64773 => 'صى', 64774 => 'صي', 64775 => 'ضى', 64776 => 'ضي', 64777 => 'شج', 64778 => 'شح', 64779 => 'شخ', 64780 => 'شم', 64781 => 'شر', 64782 => 'سر', 64783 => 'صر', 64784 => 'ضر', 64785 => 'طى', 64786 => 'طي', 64787 => 'عى', 64788 => 'عي', 64789 => 'غى', 64790 => 'غي', 64791 => 'سى', 64792 => 'سي', 64793 => 'شى', 64794 => 'شي', 64795 => 'حى', 64796 => 'حي', 64797 => 'جى', 64798 => 'جي', 64799 => 'خى', 64800 => 'خي', 64801 => 'صى', 64802 => 'صي', 64803 => 'ضى', 64804 => 'ضي', 64805 => 'شج', 64806 => 'شح', 64807 => 'شخ', 64808 => 'شم', 64809 => 'شر', 64810 => 'سر', 64811 => 'صر', 64812 => 'ضر', 64813 => 'شج', 64814 => 'شح', 64815 => 'شخ', 64816 => 'شم', 64817 => 'سه', 64818 => 'شه', 64819 => 'طم', 64820 => 'سج', 64821 => 'سح', 64822 => 'سخ', 64823 => 'شج', 64824 => 'شح', 64825 => 'شخ', 64826 => 'طم', 64827 => 'ظم', 64828 => 'اً', 64829 => 'اً', 64848 => 'تجم', 64849 => 'تحج', 64850 => 'تحج', 64851 => 'تحم', 64852 => 'تخم', 64853 => 'تمج', 64854 => 'تمح', 64855 => 'تمخ', 64856 => 'جمح', 64857 => 'جمح', 64858 => 'حمي', 64859 => 'حمى', 64860 => 'سحج', 64861 => 'سجح', 64862 => 'سجى', 64863 => 'سمح', 64864 => 'سمح', 64865 => 'سمج', 64866 => 'سمم', 64867 => 'سمم', 64868 => 'صحح', 64869 => 'صحح', 64870 => 'صمم', 64871 => 'شحم', 64872 => 'شحم', 64873 => 'شجي', 64874 => 'شمخ', 64875 => 'شمخ', 64876 => 'شمم', 64877 => 'شمم', 64878 => 'ضحى', 64879 => 'ضخم', 64880 => 'ضخم', 64881 => 'طمح', 64882 => 'طمح', 64883 => 'طمم', 64884 => 'طمي', 64885 => 'عجم', 64886 => 'عمم', 64887 => 'عمم', 64888 => 'عمى', 64889 => 'غمم', 64890 => 'غمي', 64891 => 'غمى', 64892 => 'فخم', 64893 => 'فخم', 64894 => 'قمح', 64895 => 'قمم', 64896 => 'لحم', 64897 => 'لحي', 64898 => 'لحى', 64899 => 'لجج', 64900 => 'لجج', 64901 => 'لخم', 64902 => 'لخم', 64903 => 'لمح', 64904 => 'لمح', 64905 => 'محج', 64906 => 'محم', 64907 => 'محي', 64908 => 'مجح', 64909 => 'مجم', 64910 => 'مخج', 64911 => 'مخم', 64914 => 'مجخ', 64915 => 'همج', 64916 => 'همم', 64917 => 'نحم', 64918 => 'نحى', 64919 => 'نجم', 64920 => 'نجم', 64921 => 'نجى', 64922 => 'نمي', 64923 => 'نمى', 64924 => 'يمم', 64925 => 'يمم', 64926 => 'بخي', 64927 => 'تجي', 64928 => 'تجى', 64929 => 'تخي', 64930 => 'تخى', 64931 => 'تمي', 64932 => 'تمى', 64933 => 'جمي', 64934 => 'جحى', 64935 => 'جمى', 64936 => 'سخى', 64937 => 'صحي', 64938 => 'شحي', 64939 => 'ضحي', 64940 => 'لجي', 64941 => 'لمي', 64942 => 'يحي', 64943 => 'يجي', 64944 => 'يمي', 64945 => 'ممي', 64946 => 'قمي', 64947 => 'نحي', 64948 => 'قمح', 64949 => 'لحم', 64950 => 'عمي', 64951 => 'كمي', 64952 => 'نجح', 64953 => 'مخي', 64954 => 'لجم', 64955 => 'كمم', 64956 => 'لجم', 64957 => 'نجح', 64958 => 'جحي', 64959 => 'حجي', 64960 => 'مجي', 64961 => 'فمي', 64962 => 'بحي', 64963 => 'كمم', 64964 => 'عجم', 64965 => 'صمم', 64966 => 'سخي', 64967 => 'نجي', 65008 => 'صلے', 65009 => 'قلے', 65010 => 'الله', 65011 => 'اكبر', 65012 => 'محمد', 65013 => 'صلعم', 65014 => 'رسول', 65015 => 'عليه', 65016 => 'وسلم', 65017 => 'صلى', 65020 => 'ریال', 65041 => '、', 65047 => '〖', 65048 => '〗', 65073 => '—', 65074 => '–', 65081 => '〔', 65082 => '〕', 65083 => '【', 65084 => '】', 65085 => '《', 65086 => '》', 65087 => '〈', 65088 => '〉', 65089 => '「', 65090 => '」', 65091 => '『', 65092 => '』', 65105 => '、', 65112 => '—', 65117 => '〔', 65118 => '〕', 65123 => '-', 65137 => 'ـً', 65143 => 'ـَ', 65145 => 'ـُ', 65147 => 'ـِ', 65149 => 'ـّ', 65151 => 'ـْ', 65152 => 'ء', 65153 => 'آ', 65154 => 'آ', 65155 => 'أ', 65156 => 'أ', 65157 => 'ؤ', 65158 => 'ؤ', 65159 => 'إ', 65160 => 'إ', 65161 => 'ئ', 65162 => 'ئ', 65163 => 'ئ', 65164 => 'ئ', 65165 => 'ا', 65166 => 'ا', 65167 => 'ب', 65168 => 'ب', 65169 => 'ب', 65170 => 'ب', 65171 => 'ة', 65172 => 'ة', 65173 => 'ت', 65174 => 'ت', 65175 => 'ت', 65176 => 'ت', 65177 => 'ث', 65178 => 'ث', 65179 => 'ث', 65180 => 'ث', 65181 => 'ج', 65182 => 'ج', 65183 => 'ج', 65184 => 'ج', 65185 => 'ح', 65186 => 'ح', 65187 => 'ح', 65188 => 'ح', 65189 => 'خ', 65190 => 'خ', 65191 => 'خ', 65192 => 'خ', 65193 => 'د', 65194 => 'د', 65195 => 'ذ', 65196 => 'ذ', 65197 => 'ر', 65198 => 'ر', 65199 => 'ز', 65200 => 'ز', 65201 => 'س', 65202 => 'س', 65203 => 'س', 65204 => 'س', 65205 => 'ش', 65206 => 'ش', 65207 => 'ش', 65208 => 'ش', 65209 => 'ص', 65210 => 'ص', 65211 => 'ص', 65212 => 'ص', 65213 => 'ض', 65214 => 'ض', 65215 => 'ض', 65216 => 'ض', 65217 => 'ط', 65218 => 'ط', 65219 => 'ط', 65220 => 'ط', 65221 => 'ظ', 65222 => 'ظ', 65223 => 'ظ', 65224 => 'ظ', 65225 => 'ع', 65226 => 'ع', 65227 => 'ع', 65228 => 'ع', 65229 => 'غ', 65230 => 'غ', 65231 => 'غ', 65232 => 'غ', 65233 => 'ف', 65234 => 'ف', 65235 => 'ف', 65236 => 'ف', 65237 => 'ق', 65238 => 'ق', 65239 => 'ق', 65240 => 'ق', 65241 => 'ك', 65242 => 'ك', 65243 => 'ك', 65244 => 'ك', 65245 => 'ل', 65246 => 'ل', 65247 => 'ل', 65248 => 'ل', 65249 => 'م', 65250 => 'م', 65251 => 'م', 65252 => 'م', 65253 => 'ن', 65254 => 'ن', 65255 => 'ن', 65256 => 'ن', 65257 => 'ه', 65258 => 'ه', 65259 => 'ه', 65260 => 'ه', 65261 => 'و', 65262 => 'و', 65263 => 'ى', 65264 => 'ى', 65265 => 'ي', 65266 => 'ي', 65267 => 'ي', 65268 => 'ي', 65269 => 'لآ', 65270 => 'لآ', 65271 => 'لأ', 65272 => 'لأ', 65273 => 'لإ', 65274 => 'لإ', 65275 => 'لا', 65276 => 'لا', 65293 => '-', 65294 => '.', 65296 => '0', 65297 => '1', 65298 => '2', 65299 => '3', 65300 => '4', 65301 => '5', 65302 => '6', 65303 => '7', 65304 => '8', 65305 => '9', 65313 => 'a', 65314 => 'b', 65315 => 'c', 65316 => 'd', 65317 => 'e', 65318 => 'f', 65319 => 'g', 65320 => 'h', 65321 => 'i', 65322 => 'j', 65323 => 'k', 65324 => 'l', 65325 => 'm', 65326 => 'n', 65327 => 'o', 65328 => 'p', 65329 => 'q', 65330 => 'r', 65331 => 's', 65332 => 't', 65333 => 'u', 65334 => 'v', 65335 => 'w', 65336 => 'x', 65337 => 'y', 65338 => 'z', 65345 => 'a', 65346 => 'b', 65347 => 'c', 65348 => 'd', 65349 => 'e', 65350 => 'f', 65351 => 'g', 65352 => 'h', 65353 => 'i', 65354 => 'j', 65355 => 'k', 65356 => 'l', 65357 => 'm', 65358 => 'n', 65359 => 'o', 65360 => 'p', 65361 => 'q', 65362 => 'r', 65363 => 's', 65364 => 't', 65365 => 'u', 65366 => 'v', 65367 => 'w', 65368 => 'x', 65369 => 'y', 65370 => 'z', 65375 => '⦅', 65376 => '⦆', 65377 => '.', 65378 => '「', 65379 => '」', 65380 => '、', 65381 => '・', 65382 => 'ヲ', 65383 => 'ァ', 65384 => 'ィ', 65385 => 'ゥ', 65386 => 'ェ', 65387 => 'ォ', 65388 => 'ャ', 65389 => 'ュ', 65390 => 'ョ', 65391 => 'ッ', 65392 => 'ー', 65393 => 'ア', 65394 => 'イ', 65395 => 'ウ', 65396 => 'エ', 65397 => 'オ', 65398 => 'カ', 65399 => 'キ', 65400 => 'ク', 65401 => 'ケ', 65402 => 'コ', 65403 => 'サ', 65404 => 'シ', 65405 => 'ス', 65406 => 'セ', 65407 => 'ソ', 65408 => 'タ', 65409 => 'チ', 65410 => 'ツ', 65411 => 'テ', 65412 => 'ト', 65413 => 'ナ', 65414 => 'ニ', 65415 => 'ヌ', 65416 => 'ネ', 65417 => 'ノ', 65418 => 'ハ', 65419 => 'ヒ', 65420 => 'フ', 65421 => 'ヘ', 65422 => 'ホ', 65423 => 'マ', 65424 => 'ミ', 65425 => 'ム', 65426 => 'メ', 65427 => 'モ', 65428 => 'ヤ', 65429 => 'ユ', 65430 => 'ヨ', 65431 => 'ラ', 65432 => 'リ', 65433 => 'ル', 65434 => 'レ', 65435 => 'ロ', 65436 => 'ワ', 65437 => 'ン', 65438 => '゙', 65439 => '゚', 65441 => 'ᄀ', 65442 => 'ᄁ', 65443 => 'ᆪ', 65444 => 'ᄂ', 65445 => 'ᆬ', 65446 => 'ᆭ', 65447 => 'ᄃ', 65448 => 'ᄄ', 65449 => 'ᄅ', 65450 => 'ᆰ', 65451 => 'ᆱ', 65452 => 'ᆲ', 65453 => 'ᆳ', 65454 => 'ᆴ', 65455 => 'ᆵ', 65456 => 'ᄚ', 65457 => 'ᄆ', 65458 => 'ᄇ', 65459 => 'ᄈ', 65460 => 'ᄡ', 65461 => 'ᄉ', 65462 => 'ᄊ', 65463 => 'ᄋ', 65464 => 'ᄌ', 65465 => 'ᄍ', 65466 => 'ᄎ', 65467 => 'ᄏ', 65468 => 'ᄐ', 65469 => 'ᄑ', 65470 => 'ᄒ', 65474 => 'ᅡ', 65475 => 'ᅢ', 65476 => 'ᅣ', 65477 => 'ᅤ', 65478 => 'ᅥ', 65479 => 'ᅦ', 65482 => 'ᅧ', 65483 => 'ᅨ', 65484 => 'ᅩ', 65485 => 'ᅪ', 65486 => 'ᅫ', 65487 => 'ᅬ', 65490 => 'ᅭ', 65491 => 'ᅮ', 65492 => 'ᅯ', 65493 => 'ᅰ', 65494 => 'ᅱ', 65495 => 'ᅲ', 65498 => 'ᅳ', 65499 => 'ᅴ', 65500 => 'ᅵ', 65504 => '¢', 65505 => '£', 65506 => '¬', 65508 => '¦', 65509 => '¥', 65510 => '₩', 65512 => '│', 65513 => '←', 65514 => '↑', 65515 => '→', 65516 => '↓', 65517 => '■', 65518 => '○', 66560 => '𐐨', 66561 => '𐐩', 66562 => '𐐪', 66563 => '𐐫', 66564 => '𐐬', 66565 => '𐐭', 66566 => '𐐮', 66567 => '𐐯', 66568 => '𐐰', 66569 => '𐐱', 66570 => '𐐲', 66571 => '𐐳', 66572 => '𐐴', 66573 => '𐐵', 66574 => '𐐶', 66575 => '𐐷', 66576 => '𐐸', 66577 => '𐐹', 66578 => '𐐺', 66579 => '𐐻', 66580 => '𐐼', 66581 => '𐐽', 66582 => '𐐾', 66583 => '𐐿', 66584 => '𐑀', 66585 => '𐑁', 66586 => '𐑂', 66587 => '𐑃', 66588 => '𐑄', 66589 => '𐑅', 66590 => '𐑆', 66591 => '𐑇', 66592 => '𐑈', 66593 => '𐑉', 66594 => '𐑊', 66595 => '𐑋', 66596 => '𐑌', 66597 => '𐑍', 66598 => '𐑎', 66599 => '𐑏', 66736 => '𐓘', 66737 => '𐓙', 66738 => '𐓚', 66739 => '𐓛', 66740 => '𐓜', 66741 => '𐓝', 66742 => '𐓞', 66743 => '𐓟', 66744 => '𐓠', 66745 => '𐓡', 66746 => '𐓢', 66747 => '𐓣', 66748 => '𐓤', 66749 => '𐓥', 66750 => '𐓦', 66751 => '𐓧', 66752 => '𐓨', 66753 => '𐓩', 66754 => '𐓪', 66755 => '𐓫', 66756 => '𐓬', 66757 => '𐓭', 66758 => '𐓮', 66759 => '𐓯', 66760 => '𐓰', 66761 => '𐓱', 66762 => '𐓲', 66763 => '𐓳', 66764 => '𐓴', 66765 => '𐓵', 66766 => '𐓶', 66767 => '𐓷', 66768 => '𐓸', 66769 => '𐓹', 66770 => '𐓺', 66771 => '𐓻', 68736 => '𐳀', 68737 => '𐳁', 68738 => '𐳂', 68739 => '𐳃', 68740 => '𐳄', 68741 => '𐳅', 68742 => '𐳆', 68743 => '𐳇', 68744 => '𐳈', 68745 => '𐳉', 68746 => '𐳊', 68747 => '𐳋', 68748 => '𐳌', 68749 => '𐳍', 68750 => '𐳎', 68751 => '𐳏', 68752 => '𐳐', 68753 => '𐳑', 68754 => '𐳒', 68755 => '𐳓', 68756 => '𐳔', 68757 => '𐳕', 68758 => '𐳖', 68759 => '𐳗', 68760 => '𐳘', 68761 => '𐳙', 68762 => '𐳚', 68763 => '𐳛', 68764 => '𐳜', 68765 => '𐳝', 68766 => '𐳞', 68767 => '𐳟', 68768 => '𐳠', 68769 => '𐳡', 68770 => '𐳢', 68771 => '𐳣', 68772 => '𐳤', 68773 => '𐳥', 68774 => '𐳦', 68775 => '𐳧', 68776 => '𐳨', 68777 => '𐳩', 68778 => '𐳪', 68779 => '𐳫', 68780 => '𐳬', 68781 => '𐳭', 68782 => '𐳮', 68783 => '𐳯', 68784 => '𐳰', 68785 => '𐳱', 68786 => '𐳲', 71840 => '𑣀', 71841 => '𑣁', 71842 => '𑣂', 71843 => '𑣃', 71844 => '𑣄', 71845 => '𑣅', 71846 => '𑣆', 71847 => '𑣇', 71848 => '𑣈', 71849 => '𑣉', 71850 => '𑣊', 71851 => '𑣋', 71852 => '𑣌', 71853 => '𑣍', 71854 => '𑣎', 71855 => '𑣏', 71856 => '𑣐', 71857 => '𑣑', 71858 => '𑣒', 71859 => '𑣓', 71860 => '𑣔', 71861 => '𑣕', 71862 => '𑣖', 71863 => '𑣗', 71864 => '𑣘', 71865 => '𑣙', 71866 => '𑣚', 71867 => '𑣛', 71868 => '𑣜', 71869 => '𑣝', 71870 => '𑣞', 71871 => '𑣟', 93760 => '𖹠', 93761 => '𖹡', 93762 => '𖹢', 93763 => '𖹣', 93764 => '𖹤', 93765 => '𖹥', 93766 => '𖹦', 93767 => '𖹧', 93768 => '𖹨', 93769 => '𖹩', 93770 => '𖹪', 93771 => '𖹫', 93772 => '𖹬', 93773 => '𖹭', 93774 => '𖹮', 93775 => '𖹯', 93776 => '𖹰', 93777 => '𖹱', 93778 => '𖹲', 93779 => '𖹳', 93780 => '𖹴', 93781 => '𖹵', 93782 => '𖹶', 93783 => '𖹷', 93784 => '𖹸', 93785 => '𖹹', 93786 => '𖹺', 93787 => '𖹻', 93788 => '𖹼', 93789 => '𖹽', 93790 => '𖹾', 93791 => '𖹿', 119134 => '𝅗𝅥', 119135 => '𝅘𝅥', 119136 => '𝅘𝅥𝅮', 119137 => '𝅘𝅥𝅯', 119138 => '𝅘𝅥𝅰', 119139 => '𝅘𝅥𝅱', 119140 => '𝅘𝅥𝅲', 119227 => '𝆹𝅥', 119228 => '𝆺𝅥', 119229 => '𝆹𝅥𝅮', 119230 => '𝆺𝅥𝅮', 119231 => '𝆹𝅥𝅯', 119232 => '𝆺𝅥𝅯', 119808 => 'a', 119809 => 'b', 119810 => 'c', 119811 => 'd', 119812 => 'e', 119813 => 'f', 119814 => 'g', 119815 => 'h', 119816 => 'i', 119817 => 'j', 119818 => 'k', 119819 => 'l', 119820 => 'm', 119821 => 'n', 119822 => 'o', 119823 => 'p', 119824 => 'q', 119825 => 'r', 119826 => 's', 119827 => 't', 119828 => 'u', 119829 => 'v', 119830 => 'w', 119831 => 'x', 119832 => 'y', 119833 => 'z', 119834 => 'a', 119835 => 'b', 119836 => 'c', 119837 => 'd', 119838 => 'e', 119839 => 'f', 119840 => 'g', 119841 => 'h', 119842 => 'i', 119843 => 'j', 119844 => 'k', 119845 => 'l', 119846 => 'm', 119847 => 'n', 119848 => 'o', 119849 => 'p', 119850 => 'q', 119851 => 'r', 119852 => 's', 119853 => 't', 119854 => 'u', 119855 => 'v', 119856 => 'w', 119857 => 'x', 119858 => 'y', 119859 => 'z', 119860 => 'a', 119861 => 'b', 119862 => 'c', 119863 => 'd', 119864 => 'e', 119865 => 'f', 119866 => 'g', 119867 => 'h', 119868 => 'i', 119869 => 'j', 119870 => 'k', 119871 => 'l', 119872 => 'm', 119873 => 'n', 119874 => 'o', 119875 => 'p', 119876 => 'q', 119877 => 'r', 119878 => 's', 119879 => 't', 119880 => 'u', 119881 => 'v', 119882 => 'w', 119883 => 'x', 119884 => 'y', 119885 => 'z', 119886 => 'a', 119887 => 'b', 119888 => 'c', 119889 => 'd', 119890 => 'e', 119891 => 'f', 119892 => 'g', 119894 => 'i', 119895 => 'j', 119896 => 'k', 119897 => 'l', 119898 => 'm', 119899 => 'n', 119900 => 'o', 119901 => 'p', 119902 => 'q', 119903 => 'r', 119904 => 's', 119905 => 't', 119906 => 'u', 119907 => 'v', 119908 => 'w', 119909 => 'x', 119910 => 'y', 119911 => 'z', 119912 => 'a', 119913 => 'b', 119914 => 'c', 119915 => 'd', 119916 => 'e', 119917 => 'f', 119918 => 'g', 119919 => 'h', 119920 => 'i', 119921 => 'j', 119922 => 'k', 119923 => 'l', 119924 => 'm', 119925 => 'n', 119926 => 'o', 119927 => 'p', 119928 => 'q', 119929 => 'r', 119930 => 's', 119931 => 't', 119932 => 'u', 119933 => 'v', 119934 => 'w', 119935 => 'x', 119936 => 'y', 119937 => 'z', 119938 => 'a', 119939 => 'b', 119940 => 'c', 119941 => 'd', 119942 => 'e', 119943 => 'f', 119944 => 'g', 119945 => 'h', 119946 => 'i', 119947 => 'j', 119948 => 'k', 119949 => 'l', 119950 => 'm', 119951 => 'n', 119952 => 'o', 119953 => 'p', 119954 => 'q', 119955 => 'r', 119956 => 's', 119957 => 't', 119958 => 'u', 119959 => 'v', 119960 => 'w', 119961 => 'x', 119962 => 'y', 119963 => 'z', 119964 => 'a', 119966 => 'c', 119967 => 'd', 119970 => 'g', 119973 => 'j', 119974 => 'k', 119977 => 'n', 119978 => 'o', 119979 => 'p', 119980 => 'q', 119982 => 's', 119983 => 't', 119984 => 'u', 119985 => 'v', 119986 => 'w', 119987 => 'x', 119988 => 'y', 119989 => 'z', 119990 => 'a', 119991 => 'b', 119992 => 'c', 119993 => 'd', 119995 => 'f', 119997 => 'h', 119998 => 'i', 119999 => 'j', 120000 => 'k', 120001 => 'l', 120002 => 'm', 120003 => 'n', 120005 => 'p', 120006 => 'q', 120007 => 'r', 120008 => 's', 120009 => 't', 120010 => 'u', 120011 => 'v', 120012 => 'w', 120013 => 'x', 120014 => 'y', 120015 => 'z', 120016 => 'a', 120017 => 'b', 120018 => 'c', 120019 => 'd', 120020 => 'e', 120021 => 'f', 120022 => 'g', 120023 => 'h', 120024 => 'i', 120025 => 'j', 120026 => 'k', 120027 => 'l', 120028 => 'm', 120029 => 'n', 120030 => 'o', 120031 => 'p', 120032 => 'q', 120033 => 'r', 120034 => 's', 120035 => 't', 120036 => 'u', 120037 => 'v', 120038 => 'w', 120039 => 'x', 120040 => 'y', 120041 => 'z', 120042 => 'a', 120043 => 'b', 120044 => 'c', 120045 => 'd', 120046 => 'e', 120047 => 'f', 120048 => 'g', 120049 => 'h', 120050 => 'i', 120051 => 'j', 120052 => 'k', 120053 => 'l', 120054 => 'm', 120055 => 'n', 120056 => 'o', 120057 => 'p', 120058 => 'q', 120059 => 'r', 120060 => 's', 120061 => 't', 120062 => 'u', 120063 => 'v', 120064 => 'w', 120065 => 'x', 120066 => 'y', 120067 => 'z', 120068 => 'a', 120069 => 'b', 120071 => 'd', 120072 => 'e', 120073 => 'f', 120074 => 'g', 120077 => 'j', 120078 => 'k', 120079 => 'l', 120080 => 'm', 120081 => 'n', 120082 => 'o', 120083 => 'p', 120084 => 'q', 120086 => 's', 120087 => 't', 120088 => 'u', 120089 => 'v', 120090 => 'w', 120091 => 'x', 120092 => 'y', 120094 => 'a', 120095 => 'b', 120096 => 'c', 120097 => 'd', 120098 => 'e', 120099 => 'f', 120100 => 'g', 120101 => 'h', 120102 => 'i', 120103 => 'j', 120104 => 'k', 120105 => 'l', 120106 => 'm', 120107 => 'n', 120108 => 'o', 120109 => 'p', 120110 => 'q', 120111 => 'r', 120112 => 's', 120113 => 't', 120114 => 'u', 120115 => 'v', 120116 => 'w', 120117 => 'x', 120118 => 'y', 120119 => 'z', 120120 => 'a', 120121 => 'b', 120123 => 'd', 120124 => 'e', 120125 => 'f', 120126 => 'g', 120128 => 'i', 120129 => 'j', 120130 => 'k', 120131 => 'l', 120132 => 'm', 120134 => 'o', 120138 => 's', 120139 => 't', 120140 => 'u', 120141 => 'v', 120142 => 'w', 120143 => 'x', 120144 => 'y', 120146 => 'a', 120147 => 'b', 120148 => 'c', 120149 => 'd', 120150 => 'e', 120151 => 'f', 120152 => 'g', 120153 => 'h', 120154 => 'i', 120155 => 'j', 120156 => 'k', 120157 => 'l', 120158 => 'm', 120159 => 'n', 120160 => 'o', 120161 => 'p', 120162 => 'q', 120163 => 'r', 120164 => 's', 120165 => 't', 120166 => 'u', 120167 => 'v', 120168 => 'w', 120169 => 'x', 120170 => 'y', 120171 => 'z', 120172 => 'a', 120173 => 'b', 120174 => 'c', 120175 => 'd', 120176 => 'e', 120177 => 'f', 120178 => 'g', 120179 => 'h', 120180 => 'i', 120181 => 'j', 120182 => 'k', 120183 => 'l', 120184 => 'm', 120185 => 'n', 120186 => 'o', 120187 => 'p', 120188 => 'q', 120189 => 'r', 120190 => 's', 120191 => 't', 120192 => 'u', 120193 => 'v', 120194 => 'w', 120195 => 'x', 120196 => 'y', 120197 => 'z', 120198 => 'a', 120199 => 'b', 120200 => 'c', 120201 => 'd', 120202 => 'e', 120203 => 'f', 120204 => 'g', 120205 => 'h', 120206 => 'i', 120207 => 'j', 120208 => 'k', 120209 => 'l', 120210 => 'm', 120211 => 'n', 120212 => 'o', 120213 => 'p', 120214 => 'q', 120215 => 'r', 120216 => 's', 120217 => 't', 120218 => 'u', 120219 => 'v', 120220 => 'w', 120221 => 'x', 120222 => 'y', 120223 => 'z', 120224 => 'a', 120225 => 'b', 120226 => 'c', 120227 => 'd', 120228 => 'e', 120229 => 'f', 120230 => 'g', 120231 => 'h', 120232 => 'i', 120233 => 'j', 120234 => 'k', 120235 => 'l', 120236 => 'm', 120237 => 'n', 120238 => 'o', 120239 => 'p', 120240 => 'q', 120241 => 'r', 120242 => 's', 120243 => 't', 120244 => 'u', 120245 => 'v', 120246 => 'w', 120247 => 'x', 120248 => 'y', 120249 => 'z', 120250 => 'a', 120251 => 'b', 120252 => 'c', 120253 => 'd', 120254 => 'e', 120255 => 'f', 120256 => 'g', 120257 => 'h', 120258 => 'i', 120259 => 'j', 120260 => 'k', 120261 => 'l', 120262 => 'm', 120263 => 'n', 120264 => 'o', 120265 => 'p', 120266 => 'q', 120267 => 'r', 120268 => 's', 120269 => 't', 120270 => 'u', 120271 => 'v', 120272 => 'w', 120273 => 'x', 120274 => 'y', 120275 => 'z', 120276 => 'a', 120277 => 'b', 120278 => 'c', 120279 => 'd', 120280 => 'e', 120281 => 'f', 120282 => 'g', 120283 => 'h', 120284 => 'i', 120285 => 'j', 120286 => 'k', 120287 => 'l', 120288 => 'm', 120289 => 'n', 120290 => 'o', 120291 => 'p', 120292 => 'q', 120293 => 'r', 120294 => 's', 120295 => 't', 120296 => 'u', 120297 => 'v', 120298 => 'w', 120299 => 'x', 120300 => 'y', 120301 => 'z', 120302 => 'a', 120303 => 'b', 120304 => 'c', 120305 => 'd', 120306 => 'e', 120307 => 'f', 120308 => 'g', 120309 => 'h', 120310 => 'i', 120311 => 'j', 120312 => 'k', 120313 => 'l', 120314 => 'm', 120315 => 'n', 120316 => 'o', 120317 => 'p', 120318 => 'q', 120319 => 'r', 120320 => 's', 120321 => 't', 120322 => 'u', 120323 => 'v', 120324 => 'w', 120325 => 'x', 120326 => 'y', 120327 => 'z', 120328 => 'a', 120329 => 'b', 120330 => 'c', 120331 => 'd', 120332 => 'e', 120333 => 'f', 120334 => 'g', 120335 => 'h', 120336 => 'i', 120337 => 'j', 120338 => 'k', 120339 => 'l', 120340 => 'm', 120341 => 'n', 120342 => 'o', 120343 => 'p', 120344 => 'q', 120345 => 'r', 120346 => 's', 120347 => 't', 120348 => 'u', 120349 => 'v', 120350 => 'w', 120351 => 'x', 120352 => 'y', 120353 => 'z', 120354 => 'a', 120355 => 'b', 120356 => 'c', 120357 => 'd', 120358 => 'e', 120359 => 'f', 120360 => 'g', 120361 => 'h', 120362 => 'i', 120363 => 'j', 120364 => 'k', 120365 => 'l', 120366 => 'm', 120367 => 'n', 120368 => 'o', 120369 => 'p', 120370 => 'q', 120371 => 'r', 120372 => 's', 120373 => 't', 120374 => 'u', 120375 => 'v', 120376 => 'w', 120377 => 'x', 120378 => 'y', 120379 => 'z', 120380 => 'a', 120381 => 'b', 120382 => 'c', 120383 => 'd', 120384 => 'e', 120385 => 'f', 120386 => 'g', 120387 => 'h', 120388 => 'i', 120389 => 'j', 120390 => 'k', 120391 => 'l', 120392 => 'm', 120393 => 'n', 120394 => 'o', 120395 => 'p', 120396 => 'q', 120397 => 'r', 120398 => 's', 120399 => 't', 120400 => 'u', 120401 => 'v', 120402 => 'w', 120403 => 'x', 120404 => 'y', 120405 => 'z', 120406 => 'a', 120407 => 'b', 120408 => 'c', 120409 => 'd', 120410 => 'e', 120411 => 'f', 120412 => 'g', 120413 => 'h', 120414 => 'i', 120415 => 'j', 120416 => 'k', 120417 => 'l', 120418 => 'm', 120419 => 'n', 120420 => 'o', 120421 => 'p', 120422 => 'q', 120423 => 'r', 120424 => 's', 120425 => 't', 120426 => 'u', 120427 => 'v', 120428 => 'w', 120429 => 'x', 120430 => 'y', 120431 => 'z', 120432 => 'a', 120433 => 'b', 120434 => 'c', 120435 => 'd', 120436 => 'e', 120437 => 'f', 120438 => 'g', 120439 => 'h', 120440 => 'i', 120441 => 'j', 120442 => 'k', 120443 => 'l', 120444 => 'm', 120445 => 'n', 120446 => 'o', 120447 => 'p', 120448 => 'q', 120449 => 'r', 120450 => 's', 120451 => 't', 120452 => 'u', 120453 => 'v', 120454 => 'w', 120455 => 'x', 120456 => 'y', 120457 => 'z', 120458 => 'a', 120459 => 'b', 120460 => 'c', 120461 => 'd', 120462 => 'e', 120463 => 'f', 120464 => 'g', 120465 => 'h', 120466 => 'i', 120467 => 'j', 120468 => 'k', 120469 => 'l', 120470 => 'm', 120471 => 'n', 120472 => 'o', 120473 => 'p', 120474 => 'q', 120475 => 'r', 120476 => 's', 120477 => 't', 120478 => 'u', 120479 => 'v', 120480 => 'w', 120481 => 'x', 120482 => 'y', 120483 => 'z', 120484 => 'ı', 120485 => 'ȷ', 120488 => 'α', 120489 => 'β', 120490 => 'γ', 120491 => 'δ', 120492 => 'ε', 120493 => 'ζ', 120494 => 'η', 120495 => 'θ', 120496 => 'ι', 120497 => 'κ', 120498 => 'λ', 120499 => 'μ', 120500 => 'ν', 120501 => 'ξ', 120502 => 'ο', 120503 => 'π', 120504 => 'ρ', 120505 => 'θ', 120506 => 'σ', 120507 => 'τ', 120508 => 'υ', 120509 => 'φ', 120510 => 'χ', 120511 => 'ψ', 120512 => 'ω', 120513 => '∇', 120514 => 'α', 120515 => 'β', 120516 => 'γ', 120517 => 'δ', 120518 => 'ε', 120519 => 'ζ', 120520 => 'η', 120521 => 'θ', 120522 => 'ι', 120523 => 'κ', 120524 => 'λ', 120525 => 'μ', 120526 => 'ν', 120527 => 'ξ', 120528 => 'ο', 120529 => 'π', 120530 => 'ρ', 120531 => 'σ', 120532 => 'σ', 120533 => 'τ', 120534 => 'υ', 120535 => 'φ', 120536 => 'χ', 120537 => 'ψ', 120538 => 'ω', 120539 => '∂', 120540 => 'ε', 120541 => 'θ', 120542 => 'κ', 120543 => 'φ', 120544 => 'ρ', 120545 => 'π', 120546 => 'α', 120547 => 'β', 120548 => 'γ', 120549 => 'δ', 120550 => 'ε', 120551 => 'ζ', 120552 => 'η', 120553 => 'θ', 120554 => 'ι', 120555 => 'κ', 120556 => 'λ', 120557 => 'μ', 120558 => 'ν', 120559 => 'ξ', 120560 => 'ο', 120561 => 'π', 120562 => 'ρ', 120563 => 'θ', 120564 => 'σ', 120565 => 'τ', 120566 => 'υ', 120567 => 'φ', 120568 => 'χ', 120569 => 'ψ', 120570 => 'ω', 120571 => '∇', 120572 => 'α', 120573 => 'β', 120574 => 'γ', 120575 => 'δ', 120576 => 'ε', 120577 => 'ζ', 120578 => 'η', 120579 => 'θ', 120580 => 'ι', 120581 => 'κ', 120582 => 'λ', 120583 => 'μ', 120584 => 'ν', 120585 => 'ξ', 120586 => 'ο', 120587 => 'π', 120588 => 'ρ', 120589 => 'σ', 120590 => 'σ', 120591 => 'τ', 120592 => 'υ', 120593 => 'φ', 120594 => 'χ', 120595 => 'ψ', 120596 => 'ω', 120597 => '∂', 120598 => 'ε', 120599 => 'θ', 120600 => 'κ', 120601 => 'φ', 120602 => 'ρ', 120603 => 'π', 120604 => 'α', 120605 => 'β', 120606 => 'γ', 120607 => 'δ', 120608 => 'ε', 120609 => 'ζ', 120610 => 'η', 120611 => 'θ', 120612 => 'ι', 120613 => 'κ', 120614 => 'λ', 120615 => 'μ', 120616 => 'ν', 120617 => 'ξ', 120618 => 'ο', 120619 => 'π', 120620 => 'ρ', 120621 => 'θ', 120622 => 'σ', 120623 => 'τ', 120624 => 'υ', 120625 => 'φ', 120626 => 'χ', 120627 => 'ψ', 120628 => 'ω', 120629 => '∇', 120630 => 'α', 120631 => 'β', 120632 => 'γ', 120633 => 'δ', 120634 => 'ε', 120635 => 'ζ', 120636 => 'η', 120637 => 'θ', 120638 => 'ι', 120639 => 'κ', 120640 => 'λ', 120641 => 'μ', 120642 => 'ν', 120643 => 'ξ', 120644 => 'ο', 120645 => 'π', 120646 => 'ρ', 120647 => 'σ', 120648 => 'σ', 120649 => 'τ', 120650 => 'υ', 120651 => 'φ', 120652 => 'χ', 120653 => 'ψ', 120654 => 'ω', 120655 => '∂', 120656 => 'ε', 120657 => 'θ', 120658 => 'κ', 120659 => 'φ', 120660 => 'ρ', 120661 => 'π', 120662 => 'α', 120663 => 'β', 120664 => 'γ', 120665 => 'δ', 120666 => 'ε', 120667 => 'ζ', 120668 => 'η', 120669 => 'θ', 120670 => 'ι', 120671 => 'κ', 120672 => 'λ', 120673 => 'μ', 120674 => 'ν', 120675 => 'ξ', 120676 => 'ο', 120677 => 'π', 120678 => 'ρ', 120679 => 'θ', 120680 => 'σ', 120681 => 'τ', 120682 => 'υ', 120683 => 'φ', 120684 => 'χ', 120685 => 'ψ', 120686 => 'ω', 120687 => '∇', 120688 => 'α', 120689 => 'β', 120690 => 'γ', 120691 => 'δ', 120692 => 'ε', 120693 => 'ζ', 120694 => 'η', 120695 => 'θ', 120696 => 'ι', 120697 => 'κ', 120698 => 'λ', 120699 => 'μ', 120700 => 'ν', 120701 => 'ξ', 120702 => 'ο', 120703 => 'π', 120704 => 'ρ', 120705 => 'σ', 120706 => 'σ', 120707 => 'τ', 120708 => 'υ', 120709 => 'φ', 120710 => 'χ', 120711 => 'ψ', 120712 => 'ω', 120713 => '∂', 120714 => 'ε', 120715 => 'θ', 120716 => 'κ', 120717 => 'φ', 120718 => 'ρ', 120719 => 'π', 120720 => 'α', 120721 => 'β', 120722 => 'γ', 120723 => 'δ', 120724 => 'ε', 120725 => 'ζ', 120726 => 'η', 120727 => 'θ', 120728 => 'ι', 120729 => 'κ', 120730 => 'λ', 120731 => 'μ', 120732 => 'ν', 120733 => 'ξ', 120734 => 'ο', 120735 => 'π', 120736 => 'ρ', 120737 => 'θ', 120738 => 'σ', 120739 => 'τ', 120740 => 'υ', 120741 => 'φ', 120742 => 'χ', 120743 => 'ψ', 120744 => 'ω', 120745 => '∇', 120746 => 'α', 120747 => 'β', 120748 => 'γ', 120749 => 'δ', 120750 => 'ε', 120751 => 'ζ', 120752 => 'η', 120753 => 'θ', 120754 => 'ι', 120755 => 'κ', 120756 => 'λ', 120757 => 'μ', 120758 => 'ν', 120759 => 'ξ', 120760 => 'ο', 120761 => 'π', 120762 => 'ρ', 120763 => 'σ', 120764 => 'σ', 120765 => 'τ', 120766 => 'υ', 120767 => 'φ', 120768 => 'χ', 120769 => 'ψ', 120770 => 'ω', 120771 => '∂', 120772 => 'ε', 120773 => 'θ', 120774 => 'κ', 120775 => 'φ', 120776 => 'ρ', 120777 => 'π', 120778 => 'ϝ', 120779 => 'ϝ', 120782 => '0', 120783 => '1', 120784 => '2', 120785 => '3', 120786 => '4', 120787 => '5', 120788 => '6', 120789 => '7', 120790 => '8', 120791 => '9', 120792 => '0', 120793 => '1', 120794 => '2', 120795 => '3', 120796 => '4', 120797 => '5', 120798 => '6', 120799 => '7', 120800 => '8', 120801 => '9', 120802 => '0', 120803 => '1', 120804 => '2', 120805 => '3', 120806 => '4', 120807 => '5', 120808 => '6', 120809 => '7', 120810 => '8', 120811 => '9', 120812 => '0', 120813 => '1', 120814 => '2', 120815 => '3', 120816 => '4', 120817 => '5', 120818 => '6', 120819 => '7', 120820 => '8', 120821 => '9', 120822 => '0', 120823 => '1', 120824 => '2', 120825 => '3', 120826 => '4', 120827 => '5', 120828 => '6', 120829 => '7', 120830 => '8', 120831 => '9', 125184 => '𞤢', 125185 => '𞤣', 125186 => '𞤤', 125187 => '𞤥', 125188 => '𞤦', 125189 => '𞤧', 125190 => '𞤨', 125191 => '𞤩', 125192 => '𞤪', 125193 => '𞤫', 125194 => '𞤬', 125195 => '𞤭', 125196 => '𞤮', 125197 => '𞤯', 125198 => '𞤰', 125199 => '𞤱', 125200 => '𞤲', 125201 => '𞤳', 125202 => '𞤴', 125203 => '𞤵', 125204 => '𞤶', 125205 => '𞤷', 125206 => '𞤸', 125207 => '𞤹', 125208 => '𞤺', 125209 => '𞤻', 125210 => '𞤼', 125211 => '𞤽', 125212 => '𞤾', 125213 => '𞤿', 125214 => '𞥀', 125215 => '𞥁', 125216 => '𞥂', 125217 => '𞥃', 126464 => 'ا', 126465 => 'ب', 126466 => 'ج', 126467 => 'د', 126469 => 'و', 126470 => 'ز', 126471 => 'ح', 126472 => 'ط', 126473 => 'ي', 126474 => 'ك', 126475 => 'ل', 126476 => 'م', 126477 => 'ن', 126478 => 'س', 126479 => 'ع', 126480 => 'ف', 126481 => 'ص', 126482 => 'ق', 126483 => 'ر', 126484 => 'ش', 126485 => 'ت', 126486 => 'ث', 126487 => 'خ', 126488 => 'ذ', 126489 => 'ض', 126490 => 'ظ', 126491 => 'غ', 126492 => 'ٮ', 126493 => 'ں', 126494 => 'ڡ', 126495 => 'ٯ', 126497 => 'ب', 126498 => 'ج', 126500 => 'ه', 126503 => 'ح', 126505 => 'ي', 126506 => 'ك', 126507 => 'ل', 126508 => 'م', 126509 => 'ن', 126510 => 'س', 126511 => 'ع', 126512 => 'ف', 126513 => 'ص', 126514 => 'ق', 126516 => 'ش', 126517 => 'ت', 126518 => 'ث', 126519 => 'خ', 126521 => 'ض', 126523 => 'غ', 126530 => 'ج', 126535 => 'ح', 126537 => 'ي', 126539 => 'ل', 126541 => 'ن', 126542 => 'س', 126543 => 'ع', 126545 => 'ص', 126546 => 'ق', 126548 => 'ش', 126551 => 'خ', 126553 => 'ض', 126555 => 'غ', 126557 => 'ں', 126559 => 'ٯ', 126561 => 'ب', 126562 => 'ج', 126564 => 'ه', 126567 => 'ح', 126568 => 'ط', 126569 => 'ي', 126570 => 'ك', 126572 => 'م', 126573 => 'ن', 126574 => 'س', 126575 => 'ع', 126576 => 'ف', 126577 => 'ص', 126578 => 'ق', 126580 => 'ش', 126581 => 'ت', 126582 => 'ث', 126583 => 'خ', 126585 => 'ض', 126586 => 'ظ', 126587 => 'غ', 126588 => 'ٮ', 126590 => 'ڡ', 126592 => 'ا', 126593 => 'ب', 126594 => 'ج', 126595 => 'د', 126596 => 'ه', 126597 => 'و', 126598 => 'ز', 126599 => 'ح', 126600 => 'ط', 126601 => 'ي', 126603 => 'ل', 126604 => 'م', 126605 => 'ن', 126606 => 'س', 126607 => 'ع', 126608 => 'ف', 126609 => 'ص', 126610 => 'ق', 126611 => 'ر', 126612 => 'ش', 126613 => 'ت', 126614 => 'ث', 126615 => 'خ', 126616 => 'ذ', 126617 => 'ض', 126618 => 'ظ', 126619 => 'غ', 126625 => 'ب', 126626 => 'ج', 126627 => 'د', 126629 => 'و', 126630 => 'ز', 126631 => 'ح', 126632 => 'ط', 126633 => 'ي', 126635 => 'ل', 126636 => 'م', 126637 => 'ن', 126638 => 'س', 126639 => 'ع', 126640 => 'ف', 126641 => 'ص', 126642 => 'ق', 126643 => 'ر', 126644 => 'ش', 126645 => 'ت', 126646 => 'ث', 126647 => 'خ', 126648 => 'ذ', 126649 => 'ض', 126650 => 'ظ', 126651 => 'غ', 127274 => '〔s〕', 127275 => 'c', 127276 => 'r', 127277 => 'cd', 127278 => 'wz', 127280 => 'a', 127281 => 'b', 127282 => 'c', 127283 => 'd', 127284 => 'e', 127285 => 'f', 127286 => 'g', 127287 => 'h', 127288 => 'i', 127289 => 'j', 127290 => 'k', 127291 => 'l', 127292 => 'm', 127293 => 'n', 127294 => 'o', 127295 => 'p', 127296 => 'q', 127297 => 'r', 127298 => 's', 127299 => 't', 127300 => 'u', 127301 => 'v', 127302 => 'w', 127303 => 'x', 127304 => 'y', 127305 => 'z', 127306 => 'hv', 127307 => 'mv', 127308 => 'sd', 127309 => 'ss', 127310 => 'ppv', 127311 => 'wc', 127338 => 'mc', 127339 => 'md', 127340 => 'mr', 127376 => 'dj', 127488 => 'ほか', 127489 => 'ココ', 127490 => 'サ', 127504 => '手', 127505 => '字', 127506 => '双', 127507 => 'デ', 127508 => '二', 127509 => '多', 127510 => '解', 127511 => '天', 127512 => '交', 127513 => '映', 127514 => '無', 127515 => '料', 127516 => '前', 127517 => '後', 127518 => '再', 127519 => '新', 127520 => '初', 127521 => '終', 127522 => '生', 127523 => '販', 127524 => '声', 127525 => '吹', 127526 => '演', 127527 => '投', 127528 => '捕', 127529 => '一', 127530 => '三', 127531 => '遊', 127532 => '左', 127533 => '中', 127534 => '右', 127535 => '指', 127536 => '走', 127537 => '打', 127538 => '禁', 127539 => '空', 127540 => '合', 127541 => '満', 127542 => '有', 127543 => '月', 127544 => '申', 127545 => '割', 127546 => '営', 127547 => '配', 127552 => '〔本〕', 127553 => '〔三〕', 127554 => '〔二〕', 127555 => '〔安〕', 127556 => '〔点〕', 127557 => '〔打〕', 127558 => '〔盗〕', 127559 => '〔勝〕', 127560 => '〔敗〕', 127568 => '得', 127569 => '可', 130032 => '0', 130033 => '1', 130034 => '2', 130035 => '3', 130036 => '4', 130037 => '5', 130038 => '6', 130039 => '7', 130040 => '8', 130041 => '9', 194560 => '丽', 194561 => '丸', 194562 => '乁', 194563 => '𠄢', 194564 => '你', 194565 => '侮', 194566 => '侻', 194567 => '倂', 194568 => '偺', 194569 => '備', 194570 => '僧', 194571 => '像', 194572 => '㒞', 194573 => '𠘺', 194574 => '免', 194575 => '兔', 194576 => '兤', 194577 => '具', 194578 => '𠔜', 194579 => '㒹', 194580 => '內', 194581 => '再', 194582 => '𠕋', 194583 => '冗', 194584 => '冤', 194585 => '仌', 194586 => '冬', 194587 => '况', 194588 => '𩇟', 194589 => '凵', 194590 => '刃', 194591 => '㓟', 194592 => '刻', 194593 => '剆', 194594 => '割', 194595 => '剷', 194596 => '㔕', 194597 => '勇', 194598 => '勉', 194599 => '勤', 194600 => '勺', 194601 => '包', 194602 => '匆', 194603 => '北', 194604 => '卉', 194605 => '卑', 194606 => '博', 194607 => '即', 194608 => '卽', 194609 => '卿', 194610 => '卿', 194611 => '卿', 194612 => '𠨬', 194613 => '灰', 194614 => '及', 194615 => '叟', 194616 => '𠭣', 194617 => '叫', 194618 => '叱', 194619 => '吆', 194620 => '咞', 194621 => '吸', 194622 => '呈', 194623 => '周', 194624 => '咢', 194625 => '哶', 194626 => '唐', 194627 => '啓', 194628 => '啣', 194629 => '善', 194630 => '善', 194631 => '喙', 194632 => '喫', 194633 => '喳', 194634 => '嗂', 194635 => '圖', 194636 => '嘆', 194637 => '圗', 194638 => '噑', 194639 => '噴', 194640 => '切', 194641 => '壮', 194642 => '城', 194643 => '埴', 194644 => '堍', 194645 => '型', 194646 => '堲', 194647 => '報', 194648 => '墬', 194649 => '𡓤', 194650 => '売', 194651 => '壷', 194652 => '夆', 194653 => '多', 194654 => '夢', 194655 => '奢', 194656 => '𡚨', 194657 => '𡛪', 194658 => '姬', 194659 => '娛', 194660 => '娧', 194661 => '姘', 194662 => '婦', 194663 => '㛮', 194665 => '嬈', 194666 => '嬾', 194667 => '嬾', 194668 => '𡧈', 194669 => '寃', 194670 => '寘', 194671 => '寧', 194672 => '寳', 194673 => '𡬘', 194674 => '寿', 194675 => '将', 194677 => '尢', 194678 => '㞁', 194679 => '屠', 194680 => '屮', 194681 => '峀', 194682 => '岍', 194683 => '𡷤', 194684 => '嵃', 194685 => '𡷦', 194686 => '嵮', 194687 => '嵫', 194688 => '嵼', 194689 => '巡', 194690 => '巢', 194691 => '㠯', 194692 => '巽', 194693 => '帨', 194694 => '帽', 194695 => '幩', 194696 => '㡢', 194697 => '𢆃', 194698 => '㡼', 194699 => '庰', 194700 => '庳', 194701 => '庶', 194702 => '廊', 194703 => '𪎒', 194704 => '廾', 194705 => '𢌱', 194706 => '𢌱', 194707 => '舁', 194708 => '弢', 194709 => '弢', 194710 => '㣇', 194711 => '𣊸', 194712 => '𦇚', 194713 => '形', 194714 => '彫', 194715 => '㣣', 194716 => '徚', 194717 => '忍', 194718 => '志', 194719 => '忹', 194720 => '悁', 194721 => '㤺', 194722 => '㤜', 194723 => '悔', 194724 => '𢛔', 194725 => '惇', 194726 => '慈', 194727 => '慌', 194728 => '慎', 194729 => '慌', 194730 => '慺', 194731 => '憎', 194732 => '憲', 194733 => '憤', 194734 => '憯', 194735 => '懞', 194736 => '懲', 194737 => '懶', 194738 => '成', 194739 => '戛', 194740 => '扝', 194741 => '抱', 194742 => '拔', 194743 => '捐', 194744 => '𢬌', 194745 => '挽', 194746 => '拼', 194747 => '捨', 194748 => '掃', 194749 => '揤', 194750 => '𢯱', 194751 => '搢', 194752 => '揅', 194753 => '掩', 194754 => '㨮', 194755 => '摩', 194756 => '摾', 194757 => '撝', 194758 => '摷', 194759 => '㩬', 194760 => '敏', 194761 => '敬', 194762 => '𣀊', 194763 => '旣', 194764 => '書', 194765 => '晉', 194766 => '㬙', 194767 => '暑', 194768 => '㬈', 194769 => '㫤', 194770 => '冒', 194771 => '冕', 194772 => '最', 194773 => '暜', 194774 => '肭', 194775 => '䏙', 194776 => '朗', 194777 => '望', 194778 => '朡', 194779 => '杞', 194780 => '杓', 194781 => '𣏃', 194782 => '㭉', 194783 => '柺', 194784 => '枅', 194785 => '桒', 194786 => '梅', 194787 => '𣑭', 194788 => '梎', 194789 => '栟', 194790 => '椔', 194791 => '㮝', 194792 => '楂', 194793 => '榣', 194794 => '槪', 194795 => '檨', 194796 => '𣚣', 194797 => '櫛', 194798 => '㰘', 194799 => '次', 194800 => '𣢧', 194801 => '歔', 194802 => '㱎', 194803 => '歲', 194804 => '殟', 194805 => '殺', 194806 => '殻', 194807 => '𣪍', 194808 => '𡴋', 194809 => '𣫺', 194810 => '汎', 194811 => '𣲼', 194812 => '沿', 194813 => '泍', 194814 => '汧', 194815 => '洖', 194816 => '派', 194817 => '海', 194818 => '流', 194819 => '浩', 194820 => '浸', 194821 => '涅', 194822 => '𣴞', 194823 => '洴', 194824 => '港', 194825 => '湮', 194826 => '㴳', 194827 => '滋', 194828 => '滇', 194829 => '𣻑', 194830 => '淹', 194831 => '潮', 194832 => '𣽞', 194833 => '𣾎', 194834 => '濆', 194835 => '瀹', 194836 => '瀞', 194837 => '瀛', 194838 => '㶖', 194839 => '灊', 194840 => '災', 194841 => '灷', 194842 => '炭', 194843 => '𠔥', 194844 => '煅', 194845 => '𤉣', 194846 => '熜', 194848 => '爨', 194849 => '爵', 194850 => '牐', 194851 => '𤘈', 194852 => '犀', 194853 => '犕', 194854 => '𤜵', 194855 => '𤠔', 194856 => '獺', 194857 => '王', 194858 => '㺬', 194859 => '玥', 194860 => '㺸', 194861 => '㺸', 194862 => '瑇', 194863 => '瑜', 194864 => '瑱', 194865 => '璅', 194866 => '瓊', 194867 => '㼛', 194868 => '甤', 194869 => '𤰶', 194870 => '甾', 194871 => '𤲒', 194872 => '異', 194873 => '𢆟', 194874 => '瘐', 194875 => '𤾡', 194876 => '𤾸', 194877 => '𥁄', 194878 => '㿼', 194879 => '䀈', 194880 => '直', 194881 => '𥃳', 194882 => '𥃲', 194883 => '𥄙', 194884 => '𥄳', 194885 => '眞', 194886 => '真', 194887 => '真', 194888 => '睊', 194889 => '䀹', 194890 => '瞋', 194891 => '䁆', 194892 => '䂖', 194893 => '𥐝', 194894 => '硎', 194895 => '碌', 194896 => '磌', 194897 => '䃣', 194898 => '𥘦', 194899 => '祖', 194900 => '𥚚', 194901 => '𥛅', 194902 => '福', 194903 => '秫', 194904 => '䄯', 194905 => '穀', 194906 => '穊', 194907 => '穏', 194908 => '𥥼', 194909 => '𥪧', 194910 => '𥪧', 194912 => '䈂', 194913 => '𥮫', 194914 => '篆', 194915 => '築', 194916 => '䈧', 194917 => '𥲀', 194918 => '糒', 194919 => '䊠', 194920 => '糨', 194921 => '糣', 194922 => '紀', 194923 => '𥾆', 194924 => '絣', 194925 => '䌁', 194926 => '緇', 194927 => '縂', 194928 => '繅', 194929 => '䌴', 194930 => '𦈨', 194931 => '𦉇', 194932 => '䍙', 194933 => '𦋙', 194934 => '罺', 194935 => '𦌾', 194936 => '羕', 194937 => '翺', 194938 => '者', 194939 => '𦓚', 194940 => '𦔣', 194941 => '聠', 194942 => '𦖨', 194943 => '聰', 194944 => '𣍟', 194945 => '䏕', 194946 => '育', 194947 => '脃', 194948 => '䐋', 194949 => '脾', 194950 => '媵', 194951 => '𦞧', 194952 => '𦞵', 194953 => '𣎓', 194954 => '𣎜', 194955 => '舁', 194956 => '舄', 194957 => '辞', 194958 => '䑫', 194959 => '芑', 194960 => '芋', 194961 => '芝', 194962 => '劳', 194963 => '花', 194964 => '芳', 194965 => '芽', 194966 => '苦', 194967 => '𦬼', 194968 => '若', 194969 => '茝', 194970 => '荣', 194971 => '莭', 194972 => '茣', 194973 => '莽', 194974 => '菧', 194975 => '著', 194976 => '荓', 194977 => '菊', 194978 => '菌', 194979 => '菜', 194980 => '𦰶', 194981 => '𦵫', 194982 => '𦳕', 194983 => '䔫', 194984 => '蓱', 194985 => '蓳', 194986 => '蔖', 194987 => '𧏊', 194988 => '蕤', 194989 => '𦼬', 194990 => '䕝', 194991 => '䕡', 194992 => '𦾱', 194993 => '𧃒', 194994 => '䕫', 194995 => '虐', 194996 => '虜', 194997 => '虧', 194998 => '虩', 194999 => '蚩', 195000 => '蚈', 195001 => '蜎', 195002 => '蛢', 195003 => '蝹', 195004 => '蜨', 195005 => '蝫', 195006 => '螆', 195008 => '蟡', 195009 => '蠁', 195010 => '䗹', 195011 => '衠', 195012 => '衣', 195013 => '𧙧', 195014 => '裗', 195015 => '裞', 195016 => '䘵', 195017 => '裺', 195018 => '㒻', 195019 => '𧢮', 195020 => '𧥦', 195021 => '䚾', 195022 => '䛇', 195023 => '誠', 195024 => '諭', 195025 => '變', 195026 => '豕', 195027 => '𧲨', 195028 => '貫', 195029 => '賁', 195030 => '贛', 195031 => '起', 195032 => '𧼯', 195033 => '𠠄', 195034 => '跋', 195035 => '趼', 195036 => '跰', 195037 => '𠣞', 195038 => '軔', 195039 => '輸', 195040 => '𨗒', 195041 => '𨗭', 195042 => '邔', 195043 => '郱', 195044 => '鄑', 195045 => '𨜮', 195046 => '鄛', 195047 => '鈸', 195048 => '鋗', 195049 => '鋘', 195050 => '鉼', 195051 => '鏹', 195052 => '鐕', 195053 => '𨯺', 195054 => '開', 195055 => '䦕', 195056 => '閷', 195057 => '𨵷', 195058 => '䧦', 195059 => '雃', 195060 => '嶲', 195061 => '霣', 195062 => '𩅅', 195063 => '𩈚', 195064 => '䩮', 195065 => '䩶', 195066 => '韠', 195067 => '𩐊', 195068 => '䪲', 195069 => '𩒖', 195070 => '頋', 195071 => '頋', 195072 => '頩', 195073 => '𩖶', 195074 => '飢', 195075 => '䬳', 195076 => '餩', 195077 => '馧', 195078 => '駂', 195079 => '駾', 195080 => '䯎', 195081 => '𩬰', 195082 => '鬒', 195083 => '鱀', 195084 => '鳽', 195085 => '䳎', 195086 => '䳭', 195087 => '鵧', 195088 => '𪃎', 195089 => '䳸', 195090 => '𪄅', 195091 => '𪈎', 195092 => '𪊑', 195093 => '麻', 195094 => '䵖', 195095 => '黹', 195096 => '黾', 195097 => '鼅', 195098 => '鼏', 195099 => '鼖', 195100 => '鼻', 195101 => '𪘀'); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/virama.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/virama.php new file mode 100644 index 00000000..60b49c77 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/Resources/unidata/virama.php @@ -0,0 +1,5 @@ + 9, 2509 => 9, 2637 => 9, 2765 => 9, 2893 => 9, 3021 => 9, 3149 => 9, 3277 => 9, 3387 => 9, 3388 => 9, 3405 => 9, 3530 => 9, 3642 => 9, 3770 => 9, 3972 => 9, 4153 => 9, 4154 => 9, 5908 => 9, 5940 => 9, 6098 => 9, 6752 => 9, 6980 => 9, 7082 => 9, 7083 => 9, 7154 => 9, 7155 => 9, 11647 => 9, 43014 => 9, 43052 => 9, 43204 => 9, 43347 => 9, 43456 => 9, 43766 => 9, 44013 => 9, 68159 => 9, 69702 => 9, 69759 => 9, 69817 => 9, 69939 => 9, 69940 => 9, 70080 => 9, 70197 => 9, 70378 => 9, 70477 => 9, 70722 => 9, 70850 => 9, 71103 => 9, 71231 => 9, 71350 => 9, 71467 => 9, 71737 => 9, 71997 => 9, 71998 => 9, 72160 => 9, 72244 => 9, 72263 => 9, 72345 => 9, 72767 => 9, 73028 => 9, 73029 => 9, 73111 => 9); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/bootstrap.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/bootstrap.php index 90a59ab8..9cadd8ef 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/bootstrap.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/bootstrap.php @@ -15,6 +15,10 @@ if (extension_loaded('intl')) { return; } +if (\PHP_VERSION_ID >= 80000) { + return require __DIR__.'/bootstrap80.php'; +} + if (!defined('U_IDNA_PROHIBITED_ERROR')) { define('U_IDNA_PROHIBITED_ERROR', 66560); } @@ -124,18 +128,18 @@ if (!defined('IDNA_ERROR_CONTEXTJ')) { define('IDNA_ERROR_CONTEXTJ', 4096); } -if (PHP_VERSION_ID < 70400) { +if (\PHP_VERSION_ID < 70400) { if (!function_exists('idn_to_ascii')) { - function idn_to_ascii($domain, $options = IDNA_DEFAULT, $variant = INTL_IDNA_VARIANT_2003, &$idna_info = array()) { return p\Idn::idn_to_ascii($domain, $options, $variant, $idna_info); } + function idn_to_ascii($domain, $flags = 0, $variant = \INTL_IDNA_VARIANT_2003, &$idna_info = null) { return p\Idn::idn_to_ascii($domain, $flags, $variant, $idna_info); } } if (!function_exists('idn_to_utf8')) { - function idn_to_utf8($domain, $options = IDNA_DEFAULT, $variant = INTL_IDNA_VARIANT_2003, &$idna_info = array()) { return p\Idn::idn_to_utf8($domain, $options, $variant, $idna_info); } + function idn_to_utf8($domain, $flags = 0, $variant = \INTL_IDNA_VARIANT_2003, &$idna_info = null) { return p\Idn::idn_to_utf8($domain, $flags, $variant, $idna_info); } } } else { if (!function_exists('idn_to_ascii')) { - function idn_to_ascii($domain, $options = IDNA_DEFAULT, $variant = INTL_IDNA_VARIANT_UTS46, &$idna_info = array()) { return p\Idn::idn_to_ascii($domain, $options, $variant, $idna_info); } + function idn_to_ascii($domain, $flags = 0, $variant = \INTL_IDNA_VARIANT_UTS46, &$idna_info = null) { return p\Idn::idn_to_ascii($domain, $flags, $variant, $idna_info); } } if (!function_exists('idn_to_utf8')) { - function idn_to_utf8($domain, $options = IDNA_DEFAULT, $variant = INTL_IDNA_VARIANT_UTS46, &$idna_info = array()) { return p\Idn::idn_to_utf8($domain, $options, $variant, $idna_info); } + function idn_to_utf8($domain, $flags = 0, $variant = \INTL_IDNA_VARIANT_UTS46, &$idna_info = null) { return p\Idn::idn_to_utf8($domain, $flags, $variant, $idna_info); } } } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/bootstrap80.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/bootstrap80.php new file mode 100644 index 00000000..15697236 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-intl-idn/bootstrap80.php @@ -0,0 +1,130 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ +use WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn as p; +if (!\defined('U_IDNA_PROHIBITED_ERROR')) { + \define('U_IDNA_PROHIBITED_ERROR', 66560); +} +if (!\defined('U_IDNA_ERROR_START')) { + \define('U_IDNA_ERROR_START', 66560); +} +if (!\defined('U_IDNA_UNASSIGNED_ERROR')) { + \define('U_IDNA_UNASSIGNED_ERROR', 66561); +} +if (!\defined('U_IDNA_CHECK_BIDI_ERROR')) { + \define('U_IDNA_CHECK_BIDI_ERROR', 66562); +} +if (!\defined('U_IDNA_STD3_ASCII_RULES_ERROR')) { + \define('U_IDNA_STD3_ASCII_RULES_ERROR', 66563); +} +if (!\defined('U_IDNA_ACE_PREFIX_ERROR')) { + \define('U_IDNA_ACE_PREFIX_ERROR', 66564); +} +if (!\defined('U_IDNA_VERIFICATION_ERROR')) { + \define('U_IDNA_VERIFICATION_ERROR', 66565); +} +if (!\defined('U_IDNA_LABEL_TOO_LONG_ERROR')) { + \define('U_IDNA_LABEL_TOO_LONG_ERROR', 66566); +} +if (!\defined('U_IDNA_ZERO_LENGTH_LABEL_ERROR')) { + \define('U_IDNA_ZERO_LENGTH_LABEL_ERROR', 66567); +} +if (!\defined('U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR')) { + \define('U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR', 66568); +} +if (!\defined('U_IDNA_ERROR_LIMIT')) { + \define('U_IDNA_ERROR_LIMIT', 66569); +} +if (!\defined('U_STRINGPREP_PROHIBITED_ERROR')) { + \define('U_STRINGPREP_PROHIBITED_ERROR', 66560); +} +if (!\defined('U_STRINGPREP_UNASSIGNED_ERROR')) { + \define('U_STRINGPREP_UNASSIGNED_ERROR', 66561); +} +if (!\defined('U_STRINGPREP_CHECK_BIDI_ERROR')) { + \define('U_STRINGPREP_CHECK_BIDI_ERROR', 66562); +} +if (!\defined('IDNA_DEFAULT')) { + \define('IDNA_DEFAULT', 0); +} +if (!\defined('IDNA_ALLOW_UNASSIGNED')) { + \define('IDNA_ALLOW_UNASSIGNED', 1); +} +if (!\defined('IDNA_USE_STD3_RULES')) { + \define('IDNA_USE_STD3_RULES', 2); +} +if (!\defined('IDNA_CHECK_BIDI')) { + \define('IDNA_CHECK_BIDI', 4); +} +if (!\defined('IDNA_CHECK_CONTEXTJ')) { + \define('IDNA_CHECK_CONTEXTJ', 8); +} +if (!\defined('IDNA_NONTRANSITIONAL_TO_ASCII')) { + \define('IDNA_NONTRANSITIONAL_TO_ASCII', 16); +} +if (!\defined('IDNA_NONTRANSITIONAL_TO_UNICODE')) { + \define('IDNA_NONTRANSITIONAL_TO_UNICODE', 32); +} +if (!\defined('INTL_IDNA_VARIANT_UTS46')) { + \define('INTL_IDNA_VARIANT_UTS46', 1); +} +if (!\defined('IDNA_ERROR_EMPTY_LABEL')) { + \define('IDNA_ERROR_EMPTY_LABEL', 1); +} +if (!\defined('IDNA_ERROR_LABEL_TOO_LONG')) { + \define('IDNA_ERROR_LABEL_TOO_LONG', 2); +} +if (!\defined('IDNA_ERROR_DOMAIN_NAME_TOO_LONG')) { + \define('IDNA_ERROR_DOMAIN_NAME_TOO_LONG', 4); +} +if (!\defined('IDNA_ERROR_LEADING_HYPHEN')) { + \define('IDNA_ERROR_LEADING_HYPHEN', 8); +} +if (!\defined('IDNA_ERROR_TRAILING_HYPHEN')) { + \define('IDNA_ERROR_TRAILING_HYPHEN', 16); +} +if (!\defined('IDNA_ERROR_HYPHEN_3_4')) { + \define('IDNA_ERROR_HYPHEN_3_4', 32); +} +if (!\defined('IDNA_ERROR_LEADING_COMBINING_MARK')) { + \define('IDNA_ERROR_LEADING_COMBINING_MARK', 64); +} +if (!\defined('IDNA_ERROR_DISALLOWED')) { + \define('IDNA_ERROR_DISALLOWED', 128); +} +if (!\defined('IDNA_ERROR_PUNYCODE')) { + \define('IDNA_ERROR_PUNYCODE', 256); +} +if (!\defined('IDNA_ERROR_LABEL_HAS_DOT')) { + \define('IDNA_ERROR_LABEL_HAS_DOT', 512); +} +if (!\defined('IDNA_ERROR_INVALID_ACE_LABEL')) { + \define('IDNA_ERROR_INVALID_ACE_LABEL', 1024); +} +if (!\defined('IDNA_ERROR_BIDI')) { + \define('IDNA_ERROR_BIDI', 2048); +} +if (!\defined('IDNA_ERROR_CONTEXTJ')) { + \define('IDNA_ERROR_CONTEXTJ', 4096); +} +if (!\function_exists('idn_to_ascii')) { + function idn_to_ascii(?string $domain, ?int $flags = \IDNA_DEFAULT, ?int $variant = \INTL_IDNA_VARIANT_UTS46, &$idna_info = null) : string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Idn::idn_to_ascii((string) $domain, (int) $flags, (int) $variant, $idna_info); + } +} +if (!\function_exists('idn_to_utf8')) { + function idn_to_utf8(?string $domain, ?int $flags = \IDNA_DEFAULT, ?int $variant = \INTL_IDNA_VARIANT_UTS46, &$idna_info = null) : string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Intl\Idn\Idn::idn_to_utf8((string) $domain, (int) $flags, (int) $variant, $idna_info); + } +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/LICENSE b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/LICENSE index 4cd8bdd3..6e3afce6 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/LICENSE +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2015-2019 Fabien Potencier +Copyright (c) 2015-present Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Mbstring.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Mbstring.php index be567ba6..9a388939 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Mbstring.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Mbstring.php @@ -66,14 +66,14 @@ namespace WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring; */ final class Mbstring { - const MB_CASE_FOLD = \PHP_INT_MAX; - private static $encodingList = array('ASCII', 'UTF-8'); + public const MB_CASE_FOLD = \PHP_INT_MAX; + private const SIMPLE_CASE_FOLD = [['µ', 'ſ', "ͅ", 'ς', "ϐ", "ϑ", "ϕ", "ϖ", "ϰ", "ϱ", "ϵ", "ẛ", "ι"], ['μ', 's', 'ι', 'σ', 'β', 'θ', 'φ', 'π', 'κ', 'ρ', 'ε', "ṡ", 'ι']]; + private static $encodingList = ['ASCII', 'UTF-8']; private static $language = 'neutral'; private static $internalEncoding = 'UTF-8'; - private static $caseFold = array(array('µ', 'ſ', "ͅ", 'ς', "ϐ", "ϑ", "ϕ", "ϖ", "ϰ", "ϱ", "ϵ", "ẛ", "ι"), array('μ', 's', 'ι', 'σ', 'β', 'θ', 'φ', 'π', 'κ', 'ρ', 'ε', "ṡ", 'ι')); public static function mb_convert_encoding($s, $toEncoding, $fromEncoding = null) { - if (\is_array($fromEncoding) || \false !== \strpos($fromEncoding, ',')) { + if (\is_array($fromEncoding) || null !== $fromEncoding && \false !== \strpos($fromEncoding, ',')) { $fromEncoding = self::mb_detect_encoding($s, $fromEncoding); } else { $fromEncoding = self::getEncoding($fromEncoding); @@ -93,7 +93,7 @@ final class Mbstring if ('UTF-8' !== $fromEncoding) { $s = \iconv($fromEncoding, 'UTF-8//IGNORE', $s); } - return \preg_replace_callback('/[\\x80-\\xFF]+/', array(__CLASS__, 'html_encoding_callback'), $s); + return \preg_replace_callback('/[\\x80-\\xFF]+/', [__CLASS__, 'html_encoding_callback'], $s); } if ('HTML-ENTITIES' === $fromEncoding) { $s = \html_entity_decode($s, \ENT_COMPAT, 'UTF-8'); @@ -101,12 +101,11 @@ final class Mbstring } return \iconv($fromEncoding, $toEncoding . '//IGNORE', $s); } - public static function mb_convert_variables($toEncoding, $fromEncoding, &$a = null, &$b = null, &$c = null, &$d = null, &$e = null, &$f = null) + public static function mb_convert_variables($toEncoding, $fromEncoding, &...$vars) { - $vars = array(&$a, &$b, &$c, &$d, &$e, &$f); $ok = \true; \array_walk_recursive($vars, function (&$v) use(&$ok, $toEncoding, $fromEncoding) { - if (\false === ($v = \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_convert_encoding($v, $toEncoding, $fromEncoding))) { + if (\false === ($v = self::mb_convert_encoding($v, $toEncoding, $fromEncoding))) { $ok = \false; } }); @@ -126,7 +125,7 @@ final class Mbstring \trigger_error('mb_decode_numericentity() expects parameter 1 to be string, ' . \gettype($s) . ' given', \E_USER_WARNING); return null; } - if (!\is_array($convmap) || !$convmap) { + if (!\is_array($convmap) || 80000 > \PHP_VERSION_ID && !$convmap) { return \false; } if (null !== $encoding && !\is_scalar($encoding)) { @@ -157,7 +156,7 @@ final class Mbstring $c = isset($m[2]) ? (int) \hexdec($m[2]) : $m[1]; for ($i = 0; $i < $cnt; $i += 4) { if ($c >= $convmap[$i] && $c <= $convmap[$i + 1]) { - return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_chr($c - $convmap[$i + 2]); + return self::mb_chr($c - $convmap[$i + 2]); } } return $m[0]; @@ -173,7 +172,7 @@ final class Mbstring \trigger_error('mb_encode_numericentity() expects parameter 1 to be string, ' . \gettype($s) . ' given', \E_USER_WARNING); return null; } - if (!\is_array($convmap) || !$convmap) { + if (!\is_array($convmap) || 80000 > \PHP_VERSION_ID && !$convmap) { return \false; } if (null !== $encoding && !\is_scalar($encoding)) { @@ -198,7 +197,7 @@ final class Mbstring } else { $s = \iconv($encoding, 'UTF-8//IGNORE', $s); } - static $ulenMask = array("" => 2, "" => 2, "" => 3, "" => 4); + static $ulenMask = ["" => 2, "" => 2, "" => 3, "" => 4]; $cnt = \floor(\count($convmap) / 4) * 4; $i = 0; $len = \strlen($s); @@ -242,7 +241,7 @@ final class Mbstring if (null === $titleRegexp) { $titleRegexp = self::getData('titleCaseRegexp'); } - $s = \preg_replace_callback($titleRegexp, array(__CLASS__, 'title_case'), $s); + $s = \preg_replace_callback($titleRegexp, [__CLASS__, 'title_case'], $s); } else { if (\MB_CASE_UPPER == $mode) { static $upper = null; @@ -252,7 +251,11 @@ final class Mbstring $map = $upper; } else { if (self::MB_CASE_FOLD === $mode) { - $s = \str_replace(self::$caseFold[0], self::$caseFold[1], $s); + static $caseFolding = null; + if (null === $caseFolding) { + $caseFolding = self::getData('caseFolding'); + } + $s = \strtr($s, $caseFolding); } static $lower = null; if (null === $lower) { @@ -260,7 +263,7 @@ final class Mbstring } $map = $lower; } - static $ulenMask = array("" => 2, "" => 2, "" => 3, "" => 4); + static $ulenMask = ["" => 2, "" => 2, "" => 3, "" => 4]; $i = 0; $len = \strlen($s); while ($i < $len) { @@ -293,48 +296,69 @@ final class Mbstring if (null === $encoding) { return self::$internalEncoding; } - $encoding = self::getEncoding($encoding); - if ('UTF-8' === $encoding || \false !== @\iconv($encoding, $encoding, ' ')) { - self::$internalEncoding = $encoding; + $normalizedEncoding = self::getEncoding($encoding); + if ('UTF-8' === $normalizedEncoding || \false !== @\iconv($normalizedEncoding, $normalizedEncoding, ' ')) { + self::$internalEncoding = $normalizedEncoding; return \true; } - return \false; + if (80000 > \PHP_VERSION_ID) { + return \false; + } + throw new \ValueError(\sprintf('Argument #1 ($encoding) must be a valid encoding, "%s" given', $encoding)); } public static function mb_language($lang = null) { if (null === $lang) { return self::$language; } - switch ($lang = \strtolower($lang)) { + switch ($normalizedLang = \strtolower($lang)) { case 'uni': case 'neutral': - self::$language = $lang; + self::$language = $normalizedLang; return \true; } - return \false; + if (80000 > \PHP_VERSION_ID) { + return \false; + } + throw new \ValueError(\sprintf('Argument #1 ($language) must be a valid language, "%s" given', $lang)); } public static function mb_list_encodings() { - return array('UTF-8'); + return ['UTF-8']; } public static function mb_encoding_aliases($encoding) { switch (\strtoupper($encoding)) { case 'UTF8': case 'UTF-8': - return array('utf8'); + return ['utf8']; } return \false; } public static function mb_check_encoding($var = null, $encoding = null) { + if (\PHP_VERSION_ID < 70200 && \is_array($var)) { + \trigger_error('mb_check_encoding() expects parameter 1 to be string, array given', \E_USER_WARNING); + return null; + } if (null === $encoding) { if (null === $var) { return \false; } $encoding = self::$internalEncoding; } - return self::mb_detect_encoding($var, array($encoding)) || \false !== @\iconv($encoding, $encoding, $var); + if (!\is_array($var)) { + return self::mb_detect_encoding($var, [$encoding]) || \false !== @\iconv($encoding, $encoding, $var); + } + foreach ($var as $key => $value) { + if (!self::mb_check_encoding($key, $encoding)) { + return \false; + } + if (!self::mb_check_encoding($value, $encoding)) { + return \false; + } + } + return \true; } public static function mb_detect_encoding($str, $encodingList = null, $strict = \false) { @@ -407,8 +431,11 @@ final class Mbstring } $needle = (string) $needle; if ('' === $needle) { - \trigger_error(__METHOD__ . ': Empty delimiter', \E_USER_WARNING); - return \false; + if (80000 > \PHP_VERSION_ID) { + \trigger_error(__METHOD__ . ': Empty delimiter', \E_USER_WARNING); + return \false; + } + return 0; } return \iconv_strpos($haystack, $needle, $offset, $encoding); } @@ -430,7 +457,7 @@ final class Mbstring $haystack = self::mb_substr($haystack, $offset, 2147483647, $encoding); } } - $pos = \iconv_strrpos($haystack, $needle, $encoding); + $pos = '' !== $needle || 80000 > \PHP_VERSION_ID ? \iconv_strrpos($haystack, $needle, $encoding) : self::mb_strlen($haystack, $encoding); return \false !== $pos ? $offset + $pos : \false; } public static function mb_str_split($string, $split_length = 1, $encoding = null) @@ -440,8 +467,11 @@ final class Mbstring return null; } if (1 > ($split_length = (int) $split_length)) { - \trigger_error('The length of each segment must be greater than zero', \E_USER_WARNING); - return \false; + if (80000 > \PHP_VERSION_ID) { + \trigger_error('The length of each segment must be greater than zero', \E_USER_WARNING); + return \false; + } + throw new \ValueError('Argument #2 ($length) must be greater than 0'); } if (null === $encoding) { $encoding = \mb_internal_encoding(); @@ -453,9 +483,9 @@ final class Mbstring $split_length -= 65535; } $rx .= '.{' . $split_length . '})/us'; - return \preg_split($rx, $string, null, \PREG_SPLIT_DELIM_CAPTURE | \PREG_SPLIT_NO_EMPTY); + return \preg_split($rx, $string, -1, \PREG_SPLIT_DELIM_CAPTURE | \PREG_SPLIT_NO_EMPTY); } - $result = array(); + $result = []; $length = \mb_strlen($string, $encoding); for ($i = 0; $i < $length; $i += $split_length) { $result[] = \mb_substr($string, $i, $split_length, $encoding); @@ -472,10 +502,19 @@ final class Mbstring } public static function mb_substitute_character($c = null) { + if (null === $c) { + return 'none'; + } if (0 === \strcasecmp($c, 'none')) { return \true; } - return null !== $c ? \false : 'none'; + if (80000 > \PHP_VERSION_ID) { + return \false; + } + if (\is_int($c) || 'long' === $c || 'entity' === $c) { + return \false; + } + throw new \ValueError('Argument #1 ($substitute_character) must be "none", "long", "entity" or a valid codepoint'); } public static function mb_substr($s, $start, $length = null, $encoding = null) { @@ -501,8 +540,7 @@ final class Mbstring } public static function mb_stripos($haystack, $needle, $offset = 0, $encoding = null) { - $haystack = self::mb_convert_case($haystack, self::MB_CASE_FOLD, $encoding); - $needle = self::mb_convert_case($needle, self::MB_CASE_FOLD, $encoding); + [$haystack, $needle] = \str_replace(self::SIMPLE_CASE_FOLD[0], self::SIMPLE_CASE_FOLD[1], [self::mb_convert_case($haystack, \MB_CASE_LOWER, $encoding), self::mb_convert_case($needle, \MB_CASE_LOWER, $encoding)]); return self::mb_strpos($haystack, $needle, $offset, $encoding); } public static function mb_stristr($haystack, $needle, $part = \false, $encoding = null) @@ -529,8 +567,10 @@ final class Mbstring } public static function mb_strripos($haystack, $needle, $offset = 0, $encoding = null) { - $haystack = self::mb_convert_case($haystack, self::MB_CASE_FOLD, $encoding); - $needle = self::mb_convert_case($needle, self::MB_CASE_FOLD, $encoding); + $haystack = self::mb_convert_case($haystack, \MB_CASE_LOWER, $encoding); + $needle = self::mb_convert_case($needle, \MB_CASE_LOWER, $encoding); + $haystack = \str_replace(self::SIMPLE_CASE_FOLD[0], self::SIMPLE_CASE_FOLD[1], $haystack); + $needle = \str_replace(self::SIMPLE_CASE_FOLD[0], self::SIMPLE_CASE_FOLD[1], $needle); return self::mb_strrpos($haystack, $needle, $offset, $encoding); } public static function mb_strstr($haystack, $needle, $part = \false, $encoding = null) @@ -546,7 +586,7 @@ final class Mbstring } public static function mb_get_info($type = 'all') { - $info = array('internal_encoding' => self::$internalEncoding, 'http_output' => 'pass', 'http_output_conv_mimetypes' => '^(text/|application/xhtml\\+xml)', 'func_overload' => 0, 'func_overload_list' => 'no overload', 'mail_charset' => 'UTF-8', 'mail_header_encoding' => 'BASE64', 'mail_body_encoding' => 'BASE64', 'illegal_chars' => 0, 'encoding_translation' => 'Off', 'language' => self::$language, 'detect_order' => self::$encodingList, 'substitute_character' => 'none', 'strict_detection' => 'Off'); + $info = ['internal_encoding' => self::$internalEncoding, 'http_output' => 'pass', 'http_output_conv_mimetypes' => '^(text/|application/xhtml\\+xml)', 'func_overload' => 0, 'func_overload_list' => 'no overload', 'mail_charset' => 'UTF-8', 'mail_header_encoding' => 'BASE64', 'mail_body_encoding' => 'BASE64', 'illegal_chars' => 0, 'encoding_translation' => 'Off', 'language' => self::$language, 'detect_order' => self::$encodingList, 'substitute_character' => 'none', 'strict_detection' => 'Off']; if ('all' === $type) { return $info; } @@ -616,6 +656,41 @@ final class Mbstring } return $code; } + public static function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = \STR_PAD_RIGHT, string $encoding = null) : string + { + if (!\in_array($pad_type, [\STR_PAD_RIGHT, \STR_PAD_LEFT, \STR_PAD_BOTH], \true)) { + throw new \ValueError('mb_str_pad(): Argument #4 ($pad_type) must be STR_PAD_LEFT, STR_PAD_RIGHT, or STR_PAD_BOTH'); + } + if (null === $encoding) { + $encoding = self::mb_internal_encoding(); + } + try { + $validEncoding = @self::mb_check_encoding('', $encoding); + } catch (\ValueError $e) { + throw new \ValueError(\sprintf('mb_str_pad(): Argument #5 ($encoding) must be a valid encoding, "%s" given', $encoding)); + } + // BC for PHP 7.3 and lower + if (!$validEncoding) { + throw new \ValueError(\sprintf('mb_str_pad(): Argument #5 ($encoding) must be a valid encoding, "%s" given', $encoding)); + } + if (self::mb_strlen($pad_string, $encoding) <= 0) { + throw new \ValueError('mb_str_pad(): Argument #3 ($pad_string) must be a non-empty string'); + } + $paddingRequired = $length - self::mb_strlen($string, $encoding); + if ($paddingRequired < 1) { + return $string; + } + switch ($pad_type) { + case \STR_PAD_LEFT: + return self::mb_substr(\str_repeat($pad_string, $paddingRequired), 0, $paddingRequired, $encoding) . $string; + case \STR_PAD_RIGHT: + return $string . self::mb_substr(\str_repeat($pad_string, $paddingRequired), 0, $paddingRequired, $encoding); + default: + $leftPaddingLength = \floor($paddingRequired / 2); + $rightPaddingLength = $paddingRequired - $leftPaddingLength; + return self::mb_substr(\str_repeat($pad_string, $leftPaddingLength), 0, $leftPaddingLength, $encoding) . $string . self::mb_substr(\str_repeat($pad_string, $rightPaddingLength), 0, $rightPaddingLength, $encoding); + } + } private static function getSubpart($pos, $part, $haystack, $encoding) { if (\false === $pos) { diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/mb_convert_variables.php8 b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/mb_convert_variables.php8 deleted file mode 100644 index c24c0fb4..00000000 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/mb_convert_variables.php8 +++ /dev/null @@ -1,31 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -use WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring as p; - -if (!function_exists('mb_convert_variables')) { - /** - * Convert character code in variable(s) - */ - function mb_convert_variables($to_encoding, $from_encoding, &$var, &...$vars) - { - $vars = [&$var, ...$vars]; - - $ok = true; - array_walk_recursive($vars, function (&$v) use (&$ok, $to_encoding, $from_encoding) { - if (false === $v = p\Mbstring::mb_convert_encoding($v, $to_encoding, $from_encoding)) { - $ok = false; - } - }); - - return $ok ? $from_encoding : false; - } -} diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php new file mode 100644 index 00000000..65748d21 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/caseFolding.php @@ -0,0 +1,5 @@ + 'i̇', 'µ' => 'μ', 'ſ' => 's', 'ͅ' => 'ι', 'ς' => 'σ', 'ϐ' => 'β', 'ϑ' => 'θ', 'ϕ' => 'φ', 'ϖ' => 'π', 'ϰ' => 'κ', 'ϱ' => 'ρ', 'ϵ' => 'ε', 'ẛ' => 'ṡ', 'ι' => 'ι', 'ß' => 'ss', 'ʼn' => 'ʼn', 'ǰ' => 'ǰ', 'ΐ' => 'ΐ', 'ΰ' => 'ΰ', 'և' => 'եւ', 'ẖ' => 'ẖ', 'ẗ' => 'ẗ', 'ẘ' => 'ẘ', 'ẙ' => 'ẙ', 'ẚ' => 'aʾ', 'ẞ' => 'ss', 'ὐ' => 'ὐ', 'ὒ' => 'ὒ', 'ὔ' => 'ὔ', 'ὖ' => 'ὖ', 'ᾀ' => 'ἀι', 'ᾁ' => 'ἁι', 'ᾂ' => 'ἂι', 'ᾃ' => 'ἃι', 'ᾄ' => 'ἄι', 'ᾅ' => 'ἅι', 'ᾆ' => 'ἆι', 'ᾇ' => 'ἇι', 'ᾈ' => 'ἀι', 'ᾉ' => 'ἁι', 'ᾊ' => 'ἂι', 'ᾋ' => 'ἃι', 'ᾌ' => 'ἄι', 'ᾍ' => 'ἅι', 'ᾎ' => 'ἆι', 'ᾏ' => 'ἇι', 'ᾐ' => 'ἠι', 'ᾑ' => 'ἡι', 'ᾒ' => 'ἢι', 'ᾓ' => 'ἣι', 'ᾔ' => 'ἤι', 'ᾕ' => 'ἥι', 'ᾖ' => 'ἦι', 'ᾗ' => 'ἧι', 'ᾘ' => 'ἠι', 'ᾙ' => 'ἡι', 'ᾚ' => 'ἢι', 'ᾛ' => 'ἣι', 'ᾜ' => 'ἤι', 'ᾝ' => 'ἥι', 'ᾞ' => 'ἦι', 'ᾟ' => 'ἧι', 'ᾠ' => 'ὠι', 'ᾡ' => 'ὡι', 'ᾢ' => 'ὢι', 'ᾣ' => 'ὣι', 'ᾤ' => 'ὤι', 'ᾥ' => 'ὥι', 'ᾦ' => 'ὦι', 'ᾧ' => 'ὧι', 'ᾨ' => 'ὠι', 'ᾩ' => 'ὡι', 'ᾪ' => 'ὢι', 'ᾫ' => 'ὣι', 'ᾬ' => 'ὤι', 'ᾭ' => 'ὥι', 'ᾮ' => 'ὦι', 'ᾯ' => 'ὧι', 'ᾲ' => 'ὰι', 'ᾳ' => 'αι', 'ᾴ' => 'άι', 'ᾶ' => 'ᾶ', 'ᾷ' => 'ᾶι', 'ᾼ' => 'αι', 'ῂ' => 'ὴι', 'ῃ' => 'ηι', 'ῄ' => 'ήι', 'ῆ' => 'ῆ', 'ῇ' => 'ῆι', 'ῌ' => 'ηι', 'ῒ' => 'ῒ', 'ῖ' => 'ῖ', 'ῗ' => 'ῗ', 'ῢ' => 'ῢ', 'ῤ' => 'ῤ', 'ῦ' => 'ῦ', 'ῧ' => 'ῧ', 'ῲ' => 'ὼι', 'ῳ' => 'ωι', 'ῴ' => 'ώι', 'ῶ' => 'ῶ', 'ῷ' => 'ῶι', 'ῼ' => 'ωι', 'ff' => 'ff', 'fi' => 'fi', 'fl' => 'fl', 'ffi' => 'ffi', 'ffl' => 'ffl', 'ſt' => 'st', 'st' => 'st', 'ﬓ' => 'մն', 'ﬔ' => 'մե', 'ﬕ' => 'մի', 'ﬖ' => 'վն', 'ﬗ' => 'մխ']; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php index 5b9b2ba5..82869255 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php @@ -2,4 +2,4 @@ namespace WPMailSMTP\Vendor; -return array('A' => 'a', 'B' => 'b', 'C' => 'c', 'D' => 'd', 'E' => 'e', 'F' => 'f', 'G' => 'g', 'H' => 'h', 'I' => 'i', 'J' => 'j', 'K' => 'k', 'L' => 'l', 'M' => 'm', 'N' => 'n', 'O' => 'o', 'P' => 'p', 'Q' => 'q', 'R' => 'r', 'S' => 's', 'T' => 't', 'U' => 'u', 'V' => 'v', 'W' => 'w', 'X' => 'x', 'Y' => 'y', 'Z' => 'z', 'À' => 'à', 'Á' => 'á', 'Â' => 'â', 'Ã' => 'ã', 'Ä' => 'ä', 'Å' => 'å', 'Æ' => 'æ', 'Ç' => 'ç', 'È' => 'è', 'É' => 'é', 'Ê' => 'ê', 'Ë' => 'ë', 'Ì' => 'ì', 'Í' => 'í', 'Î' => 'î', 'Ï' => 'ï', 'Ð' => 'ð', 'Ñ' => 'ñ', 'Ò' => 'ò', 'Ó' => 'ó', 'Ô' => 'ô', 'Õ' => 'õ', 'Ö' => 'ö', 'Ø' => 'ø', 'Ù' => 'ù', 'Ú' => 'ú', 'Û' => 'û', 'Ü' => 'ü', 'Ý' => 'ý', 'Þ' => 'þ', 'Ā' => 'ā', 'Ă' => 'ă', 'Ą' => 'ą', 'Ć' => 'ć', 'Ĉ' => 'ĉ', 'Ċ' => 'ċ', 'Č' => 'č', 'Ď' => 'ď', 'Đ' => 'đ', 'Ē' => 'ē', 'Ĕ' => 'ĕ', 'Ė' => 'ė', 'Ę' => 'ę', 'Ě' => 'ě', 'Ĝ' => 'ĝ', 'Ğ' => 'ğ', 'Ġ' => 'ġ', 'Ģ' => 'ģ', 'Ĥ' => 'ĥ', 'Ħ' => 'ħ', 'Ĩ' => 'ĩ', 'Ī' => 'ī', 'Ĭ' => 'ĭ', 'Į' => 'į', 'İ' => 'i', 'IJ' => 'ij', 'Ĵ' => 'ĵ', 'Ķ' => 'ķ', 'Ĺ' => 'ĺ', 'Ļ' => 'ļ', 'Ľ' => 'ľ', 'Ŀ' => 'ŀ', 'Ł' => 'ł', 'Ń' => 'ń', 'Ņ' => 'ņ', 'Ň' => 'ň', 'Ŋ' => 'ŋ', 'Ō' => 'ō', 'Ŏ' => 'ŏ', 'Ő' => 'ő', 'Œ' => 'œ', 'Ŕ' => 'ŕ', 'Ŗ' => 'ŗ', 'Ř' => 'ř', 'Ś' => 'ś', 'Ŝ' => 'ŝ', 'Ş' => 'ş', 'Š' => 'š', 'Ţ' => 'ţ', 'Ť' => 'ť', 'Ŧ' => 'ŧ', 'Ũ' => 'ũ', 'Ū' => 'ū', 'Ŭ' => 'ŭ', 'Ů' => 'ů', 'Ű' => 'ű', 'Ų' => 'ų', 'Ŵ' => 'ŵ', 'Ŷ' => 'ŷ', 'Ÿ' => 'ÿ', 'Ź' => 'ź', 'Ż' => 'ż', 'Ž' => 'ž', 'Ɓ' => 'ɓ', 'Ƃ' => 'ƃ', 'Ƅ' => 'ƅ', 'Ɔ' => 'ɔ', 'Ƈ' => 'ƈ', 'Ɖ' => 'ɖ', 'Ɗ' => 'ɗ', 'Ƌ' => 'ƌ', 'Ǝ' => 'ǝ', 'Ə' => 'ə', 'Ɛ' => 'ɛ', 'Ƒ' => 'ƒ', 'Ɠ' => 'ɠ', 'Ɣ' => 'ɣ', 'Ɩ' => 'ɩ', 'Ɨ' => 'ɨ', 'Ƙ' => 'ƙ', 'Ɯ' => 'ɯ', 'Ɲ' => 'ɲ', 'Ɵ' => 'ɵ', 'Ơ' => 'ơ', 'Ƣ' => 'ƣ', 'Ƥ' => 'ƥ', 'Ʀ' => 'ʀ', 'Ƨ' => 'ƨ', 'Ʃ' => 'ʃ', 'Ƭ' => 'ƭ', 'Ʈ' => 'ʈ', 'Ư' => 'ư', 'Ʊ' => 'ʊ', 'Ʋ' => 'ʋ', 'Ƴ' => 'ƴ', 'Ƶ' => 'ƶ', 'Ʒ' => 'ʒ', 'Ƹ' => 'ƹ', 'Ƽ' => 'ƽ', 'DŽ' => 'dž', 'Dž' => 'dž', 'LJ' => 'lj', 'Lj' => 'lj', 'NJ' => 'nj', 'Nj' => 'nj', 'Ǎ' => 'ǎ', 'Ǐ' => 'ǐ', 'Ǒ' => 'ǒ', 'Ǔ' => 'ǔ', 'Ǖ' => 'ǖ', 'Ǘ' => 'ǘ', 'Ǚ' => 'ǚ', 'Ǜ' => 'ǜ', 'Ǟ' => 'ǟ', 'Ǡ' => 'ǡ', 'Ǣ' => 'ǣ', 'Ǥ' => 'ǥ', 'Ǧ' => 'ǧ', 'Ǩ' => 'ǩ', 'Ǫ' => 'ǫ', 'Ǭ' => 'ǭ', 'Ǯ' => 'ǯ', 'DZ' => 'dz', 'Dz' => 'dz', 'Ǵ' => 'ǵ', 'Ƕ' => 'ƕ', 'Ƿ' => 'ƿ', 'Ǹ' => 'ǹ', 'Ǻ' => 'ǻ', 'Ǽ' => 'ǽ', 'Ǿ' => 'ǿ', 'Ȁ' => 'ȁ', 'Ȃ' => 'ȃ', 'Ȅ' => 'ȅ', 'Ȇ' => 'ȇ', 'Ȉ' => 'ȉ', 'Ȋ' => 'ȋ', 'Ȍ' => 'ȍ', 'Ȏ' => 'ȏ', 'Ȑ' => 'ȑ', 'Ȓ' => 'ȓ', 'Ȕ' => 'ȕ', 'Ȗ' => 'ȗ', 'Ș' => 'ș', 'Ț' => 'ț', 'Ȝ' => 'ȝ', 'Ȟ' => 'ȟ', 'Ƞ' => 'ƞ', 'Ȣ' => 'ȣ', 'Ȥ' => 'ȥ', 'Ȧ' => 'ȧ', 'Ȩ' => 'ȩ', 'Ȫ' => 'ȫ', 'Ȭ' => 'ȭ', 'Ȯ' => 'ȯ', 'Ȱ' => 'ȱ', 'Ȳ' => 'ȳ', 'Ⱥ' => 'ⱥ', 'Ȼ' => 'ȼ', 'Ƚ' => 'ƚ', 'Ⱦ' => 'ⱦ', 'Ɂ' => 'ɂ', 'Ƀ' => 'ƀ', 'Ʉ' => 'ʉ', 'Ʌ' => 'ʌ', 'Ɇ' => 'ɇ', 'Ɉ' => 'ɉ', 'Ɋ' => 'ɋ', 'Ɍ' => 'ɍ', 'Ɏ' => 'ɏ', 'Ͱ' => 'ͱ', 'Ͳ' => 'ͳ', 'Ͷ' => 'ͷ', 'Ϳ' => 'ϳ', 'Ά' => 'ά', 'Έ' => 'έ', 'Ή' => 'ή', 'Ί' => 'ί', 'Ό' => 'ό', 'Ύ' => 'ύ', 'Ώ' => 'ώ', 'Α' => 'α', 'Β' => 'β', 'Γ' => 'γ', 'Δ' => 'δ', 'Ε' => 'ε', 'Ζ' => 'ζ', 'Η' => 'η', 'Θ' => 'θ', 'Ι' => 'ι', 'Κ' => 'κ', 'Λ' => 'λ', 'Μ' => 'μ', 'Ν' => 'ν', 'Ξ' => 'ξ', 'Ο' => 'ο', 'Π' => 'π', 'Ρ' => 'ρ', 'Σ' => 'σ', 'Τ' => 'τ', 'Υ' => 'υ', 'Φ' => 'φ', 'Χ' => 'χ', 'Ψ' => 'ψ', 'Ω' => 'ω', 'Ϊ' => 'ϊ', 'Ϋ' => 'ϋ', 'Ϗ' => 'ϗ', 'Ϙ' => 'ϙ', 'Ϛ' => 'ϛ', 'Ϝ' => 'ϝ', 'Ϟ' => 'ϟ', 'Ϡ' => 'ϡ', 'Ϣ' => 'ϣ', 'Ϥ' => 'ϥ', 'Ϧ' => 'ϧ', 'Ϩ' => 'ϩ', 'Ϫ' => 'ϫ', 'Ϭ' => 'ϭ', 'Ϯ' => 'ϯ', 'ϴ' => 'θ', 'Ϸ' => 'ϸ', 'Ϲ' => 'ϲ', 'Ϻ' => 'ϻ', 'Ͻ' => 'ͻ', 'Ͼ' => 'ͼ', 'Ͽ' => 'ͽ', 'Ѐ' => 'ѐ', 'Ё' => 'ё', 'Ђ' => 'ђ', 'Ѓ' => 'ѓ', 'Є' => 'є', 'Ѕ' => 'ѕ', 'І' => 'і', 'Ї' => 'ї', 'Ј' => 'ј', 'Љ' => 'љ', 'Њ' => 'њ', 'Ћ' => 'ћ', 'Ќ' => 'ќ', 'Ѝ' => 'ѝ', 'Ў' => 'ў', 'Џ' => 'џ', 'А' => 'а', 'Б' => 'б', 'В' => 'в', 'Г' => 'г', 'Д' => 'д', 'Е' => 'е', 'Ж' => 'ж', 'З' => 'з', 'И' => 'и', 'Й' => 'й', 'К' => 'к', 'Л' => 'л', 'М' => 'м', 'Н' => 'н', 'О' => 'о', 'П' => 'п', 'Р' => 'р', 'С' => 'с', 'Т' => 'т', 'У' => 'у', 'Ф' => 'ф', 'Х' => 'х', 'Ц' => 'ц', 'Ч' => 'ч', 'Ш' => 'ш', 'Щ' => 'щ', 'Ъ' => 'ъ', 'Ы' => 'ы', 'Ь' => 'ь', 'Э' => 'э', 'Ю' => 'ю', 'Я' => 'я', 'Ѡ' => 'ѡ', 'Ѣ' => 'ѣ', 'Ѥ' => 'ѥ', 'Ѧ' => 'ѧ', 'Ѩ' => 'ѩ', 'Ѫ' => 'ѫ', 'Ѭ' => 'ѭ', 'Ѯ' => 'ѯ', 'Ѱ' => 'ѱ', 'Ѳ' => 'ѳ', 'Ѵ' => 'ѵ', 'Ѷ' => 'ѷ', 'Ѹ' => 'ѹ', 'Ѻ' => 'ѻ', 'Ѽ' => 'ѽ', 'Ѿ' => 'ѿ', 'Ҁ' => 'ҁ', 'Ҋ' => 'ҋ', 'Ҍ' => 'ҍ', 'Ҏ' => 'ҏ', 'Ґ' => 'ґ', 'Ғ' => 'ғ', 'Ҕ' => 'ҕ', 'Җ' => 'җ', 'Ҙ' => 'ҙ', 'Қ' => 'қ', 'Ҝ' => 'ҝ', 'Ҟ' => 'ҟ', 'Ҡ' => 'ҡ', 'Ң' => 'ң', 'Ҥ' => 'ҥ', 'Ҧ' => 'ҧ', 'Ҩ' => 'ҩ', 'Ҫ' => 'ҫ', 'Ҭ' => 'ҭ', 'Ү' => 'ү', 'Ұ' => 'ұ', 'Ҳ' => 'ҳ', 'Ҵ' => 'ҵ', 'Ҷ' => 'ҷ', 'Ҹ' => 'ҹ', 'Һ' => 'һ', 'Ҽ' => 'ҽ', 'Ҿ' => 'ҿ', 'Ӏ' => 'ӏ', 'Ӂ' => 'ӂ', 'Ӄ' => 'ӄ', 'Ӆ' => 'ӆ', 'Ӈ' => 'ӈ', 'Ӊ' => 'ӊ', 'Ӌ' => 'ӌ', 'Ӎ' => 'ӎ', 'Ӑ' => 'ӑ', 'Ӓ' => 'ӓ', 'Ӕ' => 'ӕ', 'Ӗ' => 'ӗ', 'Ә' => 'ә', 'Ӛ' => 'ӛ', 'Ӝ' => 'ӝ', 'Ӟ' => 'ӟ', 'Ӡ' => 'ӡ', 'Ӣ' => 'ӣ', 'Ӥ' => 'ӥ', 'Ӧ' => 'ӧ', 'Ө' => 'ө', 'Ӫ' => 'ӫ', 'Ӭ' => 'ӭ', 'Ӯ' => 'ӯ', 'Ӱ' => 'ӱ', 'Ӳ' => 'ӳ', 'Ӵ' => 'ӵ', 'Ӷ' => 'ӷ', 'Ӹ' => 'ӹ', 'Ӻ' => 'ӻ', 'Ӽ' => 'ӽ', 'Ӿ' => 'ӿ', 'Ԁ' => 'ԁ', 'Ԃ' => 'ԃ', 'Ԅ' => 'ԅ', 'Ԇ' => 'ԇ', 'Ԉ' => 'ԉ', 'Ԋ' => 'ԋ', 'Ԍ' => 'ԍ', 'Ԏ' => 'ԏ', 'Ԑ' => 'ԑ', 'Ԓ' => 'ԓ', 'Ԕ' => 'ԕ', 'Ԗ' => 'ԗ', 'Ԙ' => 'ԙ', 'Ԛ' => 'ԛ', 'Ԝ' => 'ԝ', 'Ԟ' => 'ԟ', 'Ԡ' => 'ԡ', 'Ԣ' => 'ԣ', 'Ԥ' => 'ԥ', 'Ԧ' => 'ԧ', 'Ԩ' => 'ԩ', 'Ԫ' => 'ԫ', 'Ԭ' => 'ԭ', 'Ԯ' => 'ԯ', 'Ա' => 'ա', 'Բ' => 'բ', 'Գ' => 'գ', 'Դ' => 'դ', 'Ե' => 'ե', 'Զ' => 'զ', 'Է' => 'է', 'Ը' => 'ը', 'Թ' => 'թ', 'Ժ' => 'ժ', 'Ի' => 'ի', 'Լ' => 'լ', 'Խ' => 'խ', 'Ծ' => 'ծ', 'Կ' => 'կ', 'Հ' => 'հ', 'Ձ' => 'ձ', 'Ղ' => 'ղ', 'Ճ' => 'ճ', 'Մ' => 'մ', 'Յ' => 'յ', 'Ն' => 'ն', 'Շ' => 'շ', 'Ո' => 'ո', 'Չ' => 'չ', 'Պ' => 'պ', 'Ջ' => 'ջ', 'Ռ' => 'ռ', 'Ս' => 'ս', 'Վ' => 'վ', 'Տ' => 'տ', 'Ր' => 'ր', 'Ց' => 'ց', 'Ւ' => 'ւ', 'Փ' => 'փ', 'Ք' => 'ք', 'Օ' => 'օ', 'Ֆ' => 'ֆ', 'Ⴀ' => 'ⴀ', 'Ⴁ' => 'ⴁ', 'Ⴂ' => 'ⴂ', 'Ⴃ' => 'ⴃ', 'Ⴄ' => 'ⴄ', 'Ⴅ' => 'ⴅ', 'Ⴆ' => 'ⴆ', 'Ⴇ' => 'ⴇ', 'Ⴈ' => 'ⴈ', 'Ⴉ' => 'ⴉ', 'Ⴊ' => 'ⴊ', 'Ⴋ' => 'ⴋ', 'Ⴌ' => 'ⴌ', 'Ⴍ' => 'ⴍ', 'Ⴎ' => 'ⴎ', 'Ⴏ' => 'ⴏ', 'Ⴐ' => 'ⴐ', 'Ⴑ' => 'ⴑ', 'Ⴒ' => 'ⴒ', 'Ⴓ' => 'ⴓ', 'Ⴔ' => 'ⴔ', 'Ⴕ' => 'ⴕ', 'Ⴖ' => 'ⴖ', 'Ⴗ' => 'ⴗ', 'Ⴘ' => 'ⴘ', 'Ⴙ' => 'ⴙ', 'Ⴚ' => 'ⴚ', 'Ⴛ' => 'ⴛ', 'Ⴜ' => 'ⴜ', 'Ⴝ' => 'ⴝ', 'Ⴞ' => 'ⴞ', 'Ⴟ' => 'ⴟ', 'Ⴠ' => 'ⴠ', 'Ⴡ' => 'ⴡ', 'Ⴢ' => 'ⴢ', 'Ⴣ' => 'ⴣ', 'Ⴤ' => 'ⴤ', 'Ⴥ' => 'ⴥ', 'Ⴧ' => 'ⴧ', 'Ⴭ' => 'ⴭ', 'Ꭰ' => 'ꭰ', 'Ꭱ' => 'ꭱ', 'Ꭲ' => 'ꭲ', 'Ꭳ' => 'ꭳ', 'Ꭴ' => 'ꭴ', 'Ꭵ' => 'ꭵ', 'Ꭶ' => 'ꭶ', 'Ꭷ' => 'ꭷ', 'Ꭸ' => 'ꭸ', 'Ꭹ' => 'ꭹ', 'Ꭺ' => 'ꭺ', 'Ꭻ' => 'ꭻ', 'Ꭼ' => 'ꭼ', 'Ꭽ' => 'ꭽ', 'Ꭾ' => 'ꭾ', 'Ꭿ' => 'ꭿ', 'Ꮀ' => 'ꮀ', 'Ꮁ' => 'ꮁ', 'Ꮂ' => 'ꮂ', 'Ꮃ' => 'ꮃ', 'Ꮄ' => 'ꮄ', 'Ꮅ' => 'ꮅ', 'Ꮆ' => 'ꮆ', 'Ꮇ' => 'ꮇ', 'Ꮈ' => 'ꮈ', 'Ꮉ' => 'ꮉ', 'Ꮊ' => 'ꮊ', 'Ꮋ' => 'ꮋ', 'Ꮌ' => 'ꮌ', 'Ꮍ' => 'ꮍ', 'Ꮎ' => 'ꮎ', 'Ꮏ' => 'ꮏ', 'Ꮐ' => 'ꮐ', 'Ꮑ' => 'ꮑ', 'Ꮒ' => 'ꮒ', 'Ꮓ' => 'ꮓ', 'Ꮔ' => 'ꮔ', 'Ꮕ' => 'ꮕ', 'Ꮖ' => 'ꮖ', 'Ꮗ' => 'ꮗ', 'Ꮘ' => 'ꮘ', 'Ꮙ' => 'ꮙ', 'Ꮚ' => 'ꮚ', 'Ꮛ' => 'ꮛ', 'Ꮜ' => 'ꮜ', 'Ꮝ' => 'ꮝ', 'Ꮞ' => 'ꮞ', 'Ꮟ' => 'ꮟ', 'Ꮠ' => 'ꮠ', 'Ꮡ' => 'ꮡ', 'Ꮢ' => 'ꮢ', 'Ꮣ' => 'ꮣ', 'Ꮤ' => 'ꮤ', 'Ꮥ' => 'ꮥ', 'Ꮦ' => 'ꮦ', 'Ꮧ' => 'ꮧ', 'Ꮨ' => 'ꮨ', 'Ꮩ' => 'ꮩ', 'Ꮪ' => 'ꮪ', 'Ꮫ' => 'ꮫ', 'Ꮬ' => 'ꮬ', 'Ꮭ' => 'ꮭ', 'Ꮮ' => 'ꮮ', 'Ꮯ' => 'ꮯ', 'Ꮰ' => 'ꮰ', 'Ꮱ' => 'ꮱ', 'Ꮲ' => 'ꮲ', 'Ꮳ' => 'ꮳ', 'Ꮴ' => 'ꮴ', 'Ꮵ' => 'ꮵ', 'Ꮶ' => 'ꮶ', 'Ꮷ' => 'ꮷ', 'Ꮸ' => 'ꮸ', 'Ꮹ' => 'ꮹ', 'Ꮺ' => 'ꮺ', 'Ꮻ' => 'ꮻ', 'Ꮼ' => 'ꮼ', 'Ꮽ' => 'ꮽ', 'Ꮾ' => 'ꮾ', 'Ꮿ' => 'ꮿ', 'Ᏸ' => 'ᏸ', 'Ᏹ' => 'ᏹ', 'Ᏺ' => 'ᏺ', 'Ᏻ' => 'ᏻ', 'Ᏼ' => 'ᏼ', 'Ᏽ' => 'ᏽ', 'Ა' => 'ა', 'Ბ' => 'ბ', 'Გ' => 'გ', 'Დ' => 'დ', 'Ე' => 'ე', 'Ვ' => 'ვ', 'Ზ' => 'ზ', 'Თ' => 'თ', 'Ი' => 'ი', 'Კ' => 'კ', 'Ლ' => 'ლ', 'Მ' => 'მ', 'Ნ' => 'ნ', 'Ო' => 'ო', 'Პ' => 'პ', 'Ჟ' => 'ჟ', 'Რ' => 'რ', 'Ს' => 'ს', 'Ტ' => 'ტ', 'Უ' => 'უ', 'Ფ' => 'ფ', 'Ქ' => 'ქ', 'Ღ' => 'ღ', 'Ყ' => 'ყ', 'Შ' => 'შ', 'Ჩ' => 'ჩ', 'Ც' => 'ც', 'Ძ' => 'ძ', 'Წ' => 'წ', 'Ჭ' => 'ჭ', 'Ხ' => 'ხ', 'Ჯ' => 'ჯ', 'Ჰ' => 'ჰ', 'Ჱ' => 'ჱ', 'Ჲ' => 'ჲ', 'Ჳ' => 'ჳ', 'Ჴ' => 'ჴ', 'Ჵ' => 'ჵ', 'Ჶ' => 'ჶ', 'Ჷ' => 'ჷ', 'Ჸ' => 'ჸ', 'Ჹ' => 'ჹ', 'Ჺ' => 'ჺ', 'Ჽ' => 'ჽ', 'Ჾ' => 'ჾ', 'Ჿ' => 'ჿ', 'Ḁ' => 'ḁ', 'Ḃ' => 'ḃ', 'Ḅ' => 'ḅ', 'Ḇ' => 'ḇ', 'Ḉ' => 'ḉ', 'Ḋ' => 'ḋ', 'Ḍ' => 'ḍ', 'Ḏ' => 'ḏ', 'Ḑ' => 'ḑ', 'Ḓ' => 'ḓ', 'Ḕ' => 'ḕ', 'Ḗ' => 'ḗ', 'Ḙ' => 'ḙ', 'Ḛ' => 'ḛ', 'Ḝ' => 'ḝ', 'Ḟ' => 'ḟ', 'Ḡ' => 'ḡ', 'Ḣ' => 'ḣ', 'Ḥ' => 'ḥ', 'Ḧ' => 'ḧ', 'Ḩ' => 'ḩ', 'Ḫ' => 'ḫ', 'Ḭ' => 'ḭ', 'Ḯ' => 'ḯ', 'Ḱ' => 'ḱ', 'Ḳ' => 'ḳ', 'Ḵ' => 'ḵ', 'Ḷ' => 'ḷ', 'Ḹ' => 'ḹ', 'Ḻ' => 'ḻ', 'Ḽ' => 'ḽ', 'Ḿ' => 'ḿ', 'Ṁ' => 'ṁ', 'Ṃ' => 'ṃ', 'Ṅ' => 'ṅ', 'Ṇ' => 'ṇ', 'Ṉ' => 'ṉ', 'Ṋ' => 'ṋ', 'Ṍ' => 'ṍ', 'Ṏ' => 'ṏ', 'Ṑ' => 'ṑ', 'Ṓ' => 'ṓ', 'Ṕ' => 'ṕ', 'Ṗ' => 'ṗ', 'Ṙ' => 'ṙ', 'Ṛ' => 'ṛ', 'Ṝ' => 'ṝ', 'Ṟ' => 'ṟ', 'Ṡ' => 'ṡ', 'Ṣ' => 'ṣ', 'Ṥ' => 'ṥ', 'Ṧ' => 'ṧ', 'Ṩ' => 'ṩ', 'Ṫ' => 'ṫ', 'Ṭ' => 'ṭ', 'Ṯ' => 'ṯ', 'Ṱ' => 'ṱ', 'Ṳ' => 'ṳ', 'Ṵ' => 'ṵ', 'Ṷ' => 'ṷ', 'Ṹ' => 'ṹ', 'Ṻ' => 'ṻ', 'Ṽ' => 'ṽ', 'Ṿ' => 'ṿ', 'Ẁ' => 'ẁ', 'Ẃ' => 'ẃ', 'Ẅ' => 'ẅ', 'Ẇ' => 'ẇ', 'Ẉ' => 'ẉ', 'Ẋ' => 'ẋ', 'Ẍ' => 'ẍ', 'Ẏ' => 'ẏ', 'Ẑ' => 'ẑ', 'Ẓ' => 'ẓ', 'Ẕ' => 'ẕ', 'ẞ' => 'ß', 'Ạ' => 'ạ', 'Ả' => 'ả', 'Ấ' => 'ấ', 'Ầ' => 'ầ', 'Ẩ' => 'ẩ', 'Ẫ' => 'ẫ', 'Ậ' => 'ậ', 'Ắ' => 'ắ', 'Ằ' => 'ằ', 'Ẳ' => 'ẳ', 'Ẵ' => 'ẵ', 'Ặ' => 'ặ', 'Ẹ' => 'ẹ', 'Ẻ' => 'ẻ', 'Ẽ' => 'ẽ', 'Ế' => 'ế', 'Ề' => 'ề', 'Ể' => 'ể', 'Ễ' => 'ễ', 'Ệ' => 'ệ', 'Ỉ' => 'ỉ', 'Ị' => 'ị', 'Ọ' => 'ọ', 'Ỏ' => 'ỏ', 'Ố' => 'ố', 'Ồ' => 'ồ', 'Ổ' => 'ổ', 'Ỗ' => 'ỗ', 'Ộ' => 'ộ', 'Ớ' => 'ớ', 'Ờ' => 'ờ', 'Ở' => 'ở', 'Ỡ' => 'ỡ', 'Ợ' => 'ợ', 'Ụ' => 'ụ', 'Ủ' => 'ủ', 'Ứ' => 'ứ', 'Ừ' => 'ừ', 'Ử' => 'ử', 'Ữ' => 'ữ', 'Ự' => 'ự', 'Ỳ' => 'ỳ', 'Ỵ' => 'ỵ', 'Ỷ' => 'ỷ', 'Ỹ' => 'ỹ', 'Ỻ' => 'ỻ', 'Ỽ' => 'ỽ', 'Ỿ' => 'ỿ', 'Ἀ' => 'ἀ', 'Ἁ' => 'ἁ', 'Ἂ' => 'ἂ', 'Ἃ' => 'ἃ', 'Ἄ' => 'ἄ', 'Ἅ' => 'ἅ', 'Ἆ' => 'ἆ', 'Ἇ' => 'ἇ', 'Ἐ' => 'ἐ', 'Ἑ' => 'ἑ', 'Ἒ' => 'ἒ', 'Ἓ' => 'ἓ', 'Ἔ' => 'ἔ', 'Ἕ' => 'ἕ', 'Ἠ' => 'ἠ', 'Ἡ' => 'ἡ', 'Ἢ' => 'ἢ', 'Ἣ' => 'ἣ', 'Ἤ' => 'ἤ', 'Ἥ' => 'ἥ', 'Ἦ' => 'ἦ', 'Ἧ' => 'ἧ', 'Ἰ' => 'ἰ', 'Ἱ' => 'ἱ', 'Ἲ' => 'ἲ', 'Ἳ' => 'ἳ', 'Ἴ' => 'ἴ', 'Ἵ' => 'ἵ', 'Ἶ' => 'ἶ', 'Ἷ' => 'ἷ', 'Ὀ' => 'ὀ', 'Ὁ' => 'ὁ', 'Ὂ' => 'ὂ', 'Ὃ' => 'ὃ', 'Ὄ' => 'ὄ', 'Ὅ' => 'ὅ', 'Ὑ' => 'ὑ', 'Ὓ' => 'ὓ', 'Ὕ' => 'ὕ', 'Ὗ' => 'ὗ', 'Ὠ' => 'ὠ', 'Ὡ' => 'ὡ', 'Ὢ' => 'ὢ', 'Ὣ' => 'ὣ', 'Ὤ' => 'ὤ', 'Ὥ' => 'ὥ', 'Ὦ' => 'ὦ', 'Ὧ' => 'ὧ', 'ᾈ' => 'ᾀ', 'ᾉ' => 'ᾁ', 'ᾊ' => 'ᾂ', 'ᾋ' => 'ᾃ', 'ᾌ' => 'ᾄ', 'ᾍ' => 'ᾅ', 'ᾎ' => 'ᾆ', 'ᾏ' => 'ᾇ', 'ᾘ' => 'ᾐ', 'ᾙ' => 'ᾑ', 'ᾚ' => 'ᾒ', 'ᾛ' => 'ᾓ', 'ᾜ' => 'ᾔ', 'ᾝ' => 'ᾕ', 'ᾞ' => 'ᾖ', 'ᾟ' => 'ᾗ', 'ᾨ' => 'ᾠ', 'ᾩ' => 'ᾡ', 'ᾪ' => 'ᾢ', 'ᾫ' => 'ᾣ', 'ᾬ' => 'ᾤ', 'ᾭ' => 'ᾥ', 'ᾮ' => 'ᾦ', 'ᾯ' => 'ᾧ', 'Ᾰ' => 'ᾰ', 'Ᾱ' => 'ᾱ', 'Ὰ' => 'ὰ', 'Ά' => 'ά', 'ᾼ' => 'ᾳ', 'Ὲ' => 'ὲ', 'Έ' => 'έ', 'Ὴ' => 'ὴ', 'Ή' => 'ή', 'ῌ' => 'ῃ', 'Ῐ' => 'ῐ', 'Ῑ' => 'ῑ', 'Ὶ' => 'ὶ', 'Ί' => 'ί', 'Ῠ' => 'ῠ', 'Ῡ' => 'ῡ', 'Ὺ' => 'ὺ', 'Ύ' => 'ύ', 'Ῥ' => 'ῥ', 'Ὸ' => 'ὸ', 'Ό' => 'ό', 'Ὼ' => 'ὼ', 'Ώ' => 'ώ', 'ῼ' => 'ῳ', 'Ω' => 'ω', 'K' => 'k', 'Å' => 'å', 'Ⅎ' => 'ⅎ', 'Ⅰ' => 'ⅰ', 'Ⅱ' => 'ⅱ', 'Ⅲ' => 'ⅲ', 'Ⅳ' => 'ⅳ', 'Ⅴ' => 'ⅴ', 'Ⅵ' => 'ⅵ', 'Ⅶ' => 'ⅶ', 'Ⅷ' => 'ⅷ', 'Ⅸ' => 'ⅸ', 'Ⅹ' => 'ⅹ', 'Ⅺ' => 'ⅺ', 'Ⅻ' => 'ⅻ', 'Ⅼ' => 'ⅼ', 'Ⅽ' => 'ⅽ', 'Ⅾ' => 'ⅾ', 'Ⅿ' => 'ⅿ', 'Ↄ' => 'ↄ', 'Ⓐ' => 'ⓐ', 'Ⓑ' => 'ⓑ', 'Ⓒ' => 'ⓒ', 'Ⓓ' => 'ⓓ', 'Ⓔ' => 'ⓔ', 'Ⓕ' => 'ⓕ', 'Ⓖ' => 'ⓖ', 'Ⓗ' => 'ⓗ', 'Ⓘ' => 'ⓘ', 'Ⓙ' => 'ⓙ', 'Ⓚ' => 'ⓚ', 'Ⓛ' => 'ⓛ', 'Ⓜ' => 'ⓜ', 'Ⓝ' => 'ⓝ', 'Ⓞ' => 'ⓞ', 'Ⓟ' => 'ⓟ', 'Ⓠ' => 'ⓠ', 'Ⓡ' => 'ⓡ', 'Ⓢ' => 'ⓢ', 'Ⓣ' => 'ⓣ', 'Ⓤ' => 'ⓤ', 'Ⓥ' => 'ⓥ', 'Ⓦ' => 'ⓦ', 'Ⓧ' => 'ⓧ', 'Ⓨ' => 'ⓨ', 'Ⓩ' => 'ⓩ', 'Ⰰ' => 'ⰰ', 'Ⰱ' => 'ⰱ', 'Ⰲ' => 'ⰲ', 'Ⰳ' => 'ⰳ', 'Ⰴ' => 'ⰴ', 'Ⰵ' => 'ⰵ', 'Ⰶ' => 'ⰶ', 'Ⰷ' => 'ⰷ', 'Ⰸ' => 'ⰸ', 'Ⰹ' => 'ⰹ', 'Ⰺ' => 'ⰺ', 'Ⰻ' => 'ⰻ', 'Ⰼ' => 'ⰼ', 'Ⰽ' => 'ⰽ', 'Ⰾ' => 'ⰾ', 'Ⰿ' => 'ⰿ', 'Ⱀ' => 'ⱀ', 'Ⱁ' => 'ⱁ', 'Ⱂ' => 'ⱂ', 'Ⱃ' => 'ⱃ', 'Ⱄ' => 'ⱄ', 'Ⱅ' => 'ⱅ', 'Ⱆ' => 'ⱆ', 'Ⱇ' => 'ⱇ', 'Ⱈ' => 'ⱈ', 'Ⱉ' => 'ⱉ', 'Ⱊ' => 'ⱊ', 'Ⱋ' => 'ⱋ', 'Ⱌ' => 'ⱌ', 'Ⱍ' => 'ⱍ', 'Ⱎ' => 'ⱎ', 'Ⱏ' => 'ⱏ', 'Ⱐ' => 'ⱐ', 'Ⱑ' => 'ⱑ', 'Ⱒ' => 'ⱒ', 'Ⱓ' => 'ⱓ', 'Ⱔ' => 'ⱔ', 'Ⱕ' => 'ⱕ', 'Ⱖ' => 'ⱖ', 'Ⱗ' => 'ⱗ', 'Ⱘ' => 'ⱘ', 'Ⱙ' => 'ⱙ', 'Ⱚ' => 'ⱚ', 'Ⱛ' => 'ⱛ', 'Ⱜ' => 'ⱜ', 'Ⱝ' => 'ⱝ', 'Ⱞ' => 'ⱞ', 'Ⱡ' => 'ⱡ', 'Ɫ' => 'ɫ', 'Ᵽ' => 'ᵽ', 'Ɽ' => 'ɽ', 'Ⱨ' => 'ⱨ', 'Ⱪ' => 'ⱪ', 'Ⱬ' => 'ⱬ', 'Ɑ' => 'ɑ', 'Ɱ' => 'ɱ', 'Ɐ' => 'ɐ', 'Ɒ' => 'ɒ', 'Ⱳ' => 'ⱳ', 'Ⱶ' => 'ⱶ', 'Ȿ' => 'ȿ', 'Ɀ' => 'ɀ', 'Ⲁ' => 'ⲁ', 'Ⲃ' => 'ⲃ', 'Ⲅ' => 'ⲅ', 'Ⲇ' => 'ⲇ', 'Ⲉ' => 'ⲉ', 'Ⲋ' => 'ⲋ', 'Ⲍ' => 'ⲍ', 'Ⲏ' => 'ⲏ', 'Ⲑ' => 'ⲑ', 'Ⲓ' => 'ⲓ', 'Ⲕ' => 'ⲕ', 'Ⲗ' => 'ⲗ', 'Ⲙ' => 'ⲙ', 'Ⲛ' => 'ⲛ', 'Ⲝ' => 'ⲝ', 'Ⲟ' => 'ⲟ', 'Ⲡ' => 'ⲡ', 'Ⲣ' => 'ⲣ', 'Ⲥ' => 'ⲥ', 'Ⲧ' => 'ⲧ', 'Ⲩ' => 'ⲩ', 'Ⲫ' => 'ⲫ', 'Ⲭ' => 'ⲭ', 'Ⲯ' => 'ⲯ', 'Ⲱ' => 'ⲱ', 'Ⲳ' => 'ⲳ', 'Ⲵ' => 'ⲵ', 'Ⲷ' => 'ⲷ', 'Ⲹ' => 'ⲹ', 'Ⲻ' => 'ⲻ', 'Ⲽ' => 'ⲽ', 'Ⲿ' => 'ⲿ', 'Ⳁ' => 'ⳁ', 'Ⳃ' => 'ⳃ', 'Ⳅ' => 'ⳅ', 'Ⳇ' => 'ⳇ', 'Ⳉ' => 'ⳉ', 'Ⳋ' => 'ⳋ', 'Ⳍ' => 'ⳍ', 'Ⳏ' => 'ⳏ', 'Ⳑ' => 'ⳑ', 'Ⳓ' => 'ⳓ', 'Ⳕ' => 'ⳕ', 'Ⳗ' => 'ⳗ', 'Ⳙ' => 'ⳙ', 'Ⳛ' => 'ⳛ', 'Ⳝ' => 'ⳝ', 'Ⳟ' => 'ⳟ', 'Ⳡ' => 'ⳡ', 'Ⳣ' => 'ⳣ', 'Ⳬ' => 'ⳬ', 'Ⳮ' => 'ⳮ', 'Ⳳ' => 'ⳳ', 'Ꙁ' => 'ꙁ', 'Ꙃ' => 'ꙃ', 'Ꙅ' => 'ꙅ', 'Ꙇ' => 'ꙇ', 'Ꙉ' => 'ꙉ', 'Ꙋ' => 'ꙋ', 'Ꙍ' => 'ꙍ', 'Ꙏ' => 'ꙏ', 'Ꙑ' => 'ꙑ', 'Ꙓ' => 'ꙓ', 'Ꙕ' => 'ꙕ', 'Ꙗ' => 'ꙗ', 'Ꙙ' => 'ꙙ', 'Ꙛ' => 'ꙛ', 'Ꙝ' => 'ꙝ', 'Ꙟ' => 'ꙟ', 'Ꙡ' => 'ꙡ', 'Ꙣ' => 'ꙣ', 'Ꙥ' => 'ꙥ', 'Ꙧ' => 'ꙧ', 'Ꙩ' => 'ꙩ', 'Ꙫ' => 'ꙫ', 'Ꙭ' => 'ꙭ', 'Ꚁ' => 'ꚁ', 'Ꚃ' => 'ꚃ', 'Ꚅ' => 'ꚅ', 'Ꚇ' => 'ꚇ', 'Ꚉ' => 'ꚉ', 'Ꚋ' => 'ꚋ', 'Ꚍ' => 'ꚍ', 'Ꚏ' => 'ꚏ', 'Ꚑ' => 'ꚑ', 'Ꚓ' => 'ꚓ', 'Ꚕ' => 'ꚕ', 'Ꚗ' => 'ꚗ', 'Ꚙ' => 'ꚙ', 'Ꚛ' => 'ꚛ', 'Ꜣ' => 'ꜣ', 'Ꜥ' => 'ꜥ', 'Ꜧ' => 'ꜧ', 'Ꜩ' => 'ꜩ', 'Ꜫ' => 'ꜫ', 'Ꜭ' => 'ꜭ', 'Ꜯ' => 'ꜯ', 'Ꜳ' => 'ꜳ', 'Ꜵ' => 'ꜵ', 'Ꜷ' => 'ꜷ', 'Ꜹ' => 'ꜹ', 'Ꜻ' => 'ꜻ', 'Ꜽ' => 'ꜽ', 'Ꜿ' => 'ꜿ', 'Ꝁ' => 'ꝁ', 'Ꝃ' => 'ꝃ', 'Ꝅ' => 'ꝅ', 'Ꝇ' => 'ꝇ', 'Ꝉ' => 'ꝉ', 'Ꝋ' => 'ꝋ', 'Ꝍ' => 'ꝍ', 'Ꝏ' => 'ꝏ', 'Ꝑ' => 'ꝑ', 'Ꝓ' => 'ꝓ', 'Ꝕ' => 'ꝕ', 'Ꝗ' => 'ꝗ', 'Ꝙ' => 'ꝙ', 'Ꝛ' => 'ꝛ', 'Ꝝ' => 'ꝝ', 'Ꝟ' => 'ꝟ', 'Ꝡ' => 'ꝡ', 'Ꝣ' => 'ꝣ', 'Ꝥ' => 'ꝥ', 'Ꝧ' => 'ꝧ', 'Ꝩ' => 'ꝩ', 'Ꝫ' => 'ꝫ', 'Ꝭ' => 'ꝭ', 'Ꝯ' => 'ꝯ', 'Ꝺ' => 'ꝺ', 'Ꝼ' => 'ꝼ', 'Ᵹ' => 'ᵹ', 'Ꝿ' => 'ꝿ', 'Ꞁ' => 'ꞁ', 'Ꞃ' => 'ꞃ', 'Ꞅ' => 'ꞅ', 'Ꞇ' => 'ꞇ', 'Ꞌ' => 'ꞌ', 'Ɥ' => 'ɥ', 'Ꞑ' => 'ꞑ', 'Ꞓ' => 'ꞓ', 'Ꞗ' => 'ꞗ', 'Ꞙ' => 'ꞙ', 'Ꞛ' => 'ꞛ', 'Ꞝ' => 'ꞝ', 'Ꞟ' => 'ꞟ', 'Ꞡ' => 'ꞡ', 'Ꞣ' => 'ꞣ', 'Ꞥ' => 'ꞥ', 'Ꞧ' => 'ꞧ', 'Ꞩ' => 'ꞩ', 'Ɦ' => 'ɦ', 'Ɜ' => 'ɜ', 'Ɡ' => 'ɡ', 'Ɬ' => 'ɬ', 'Ɪ' => 'ɪ', 'Ʞ' => 'ʞ', 'Ʇ' => 'ʇ', 'Ʝ' => 'ʝ', 'Ꭓ' => 'ꭓ', 'Ꞵ' => 'ꞵ', 'Ꞷ' => 'ꞷ', 'Ꞹ' => 'ꞹ', 'Ꞻ' => 'ꞻ', 'Ꞽ' => 'ꞽ', 'Ꞿ' => 'ꞿ', 'Ꟃ' => 'ꟃ', 'Ꞔ' => 'ꞔ', 'Ʂ' => 'ʂ', 'Ᶎ' => 'ᶎ', 'Ꟈ' => 'ꟈ', 'Ꟊ' => 'ꟊ', 'Ꟶ' => 'ꟶ', 'A' => 'a', 'B' => 'b', 'C' => 'c', 'D' => 'd', 'E' => 'e', 'F' => 'f', 'G' => 'g', 'H' => 'h', 'I' => 'i', 'J' => 'j', 'K' => 'k', 'L' => 'l', 'M' => 'm', 'N' => 'n', 'O' => 'o', 'P' => 'p', 'Q' => 'q', 'R' => 'r', 'S' => 's', 'T' => 't', 'U' => 'u', 'V' => 'v', 'W' => 'w', 'X' => 'x', 'Y' => 'y', 'Z' => 'z', '𐐀' => '𐐨', '𐐁' => '𐐩', '𐐂' => '𐐪', '𐐃' => '𐐫', '𐐄' => '𐐬', '𐐅' => '𐐭', '𐐆' => '𐐮', '𐐇' => '𐐯', '𐐈' => '𐐰', '𐐉' => '𐐱', '𐐊' => '𐐲', '𐐋' => '𐐳', '𐐌' => '𐐴', '𐐍' => '𐐵', '𐐎' => '𐐶', '𐐏' => '𐐷', '𐐐' => '𐐸', '𐐑' => '𐐹', '𐐒' => '𐐺', '𐐓' => '𐐻', '𐐔' => '𐐼', '𐐕' => '𐐽', '𐐖' => '𐐾', '𐐗' => '𐐿', '𐐘' => '𐑀', '𐐙' => '𐑁', '𐐚' => '𐑂', '𐐛' => '𐑃', '𐐜' => '𐑄', '𐐝' => '𐑅', '𐐞' => '𐑆', '𐐟' => '𐑇', '𐐠' => '𐑈', '𐐡' => '𐑉', '𐐢' => '𐑊', '𐐣' => '𐑋', '𐐤' => '𐑌', '𐐥' => '𐑍', '𐐦' => '𐑎', '𐐧' => '𐑏', '𐒰' => '𐓘', '𐒱' => '𐓙', '𐒲' => '𐓚', '𐒳' => '𐓛', '𐒴' => '𐓜', '𐒵' => '𐓝', '𐒶' => '𐓞', '𐒷' => '𐓟', '𐒸' => '𐓠', '𐒹' => '𐓡', '𐒺' => '𐓢', '𐒻' => '𐓣', '𐒼' => '𐓤', '𐒽' => '𐓥', '𐒾' => '𐓦', '𐒿' => '𐓧', '𐓀' => '𐓨', '𐓁' => '𐓩', '𐓂' => '𐓪', '𐓃' => '𐓫', '𐓄' => '𐓬', '𐓅' => '𐓭', '𐓆' => '𐓮', '𐓇' => '𐓯', '𐓈' => '𐓰', '𐓉' => '𐓱', '𐓊' => '𐓲', '𐓋' => '𐓳', '𐓌' => '𐓴', '𐓍' => '𐓵', '𐓎' => '𐓶', '𐓏' => '𐓷', '𐓐' => '𐓸', '𐓑' => '𐓹', '𐓒' => '𐓺', '𐓓' => '𐓻', '𐲀' => '𐳀', '𐲁' => '𐳁', '𐲂' => '𐳂', '𐲃' => '𐳃', '𐲄' => '𐳄', '𐲅' => '𐳅', '𐲆' => '𐳆', '𐲇' => '𐳇', '𐲈' => '𐳈', '𐲉' => '𐳉', '𐲊' => '𐳊', '𐲋' => '𐳋', '𐲌' => '𐳌', '𐲍' => '𐳍', '𐲎' => '𐳎', '𐲏' => '𐳏', '𐲐' => '𐳐', '𐲑' => '𐳑', '𐲒' => '𐳒', '𐲓' => '𐳓', '𐲔' => '𐳔', '𐲕' => '𐳕', '𐲖' => '𐳖', '𐲗' => '𐳗', '𐲘' => '𐳘', '𐲙' => '𐳙', '𐲚' => '𐳚', '𐲛' => '𐳛', '𐲜' => '𐳜', '𐲝' => '𐳝', '𐲞' => '𐳞', '𐲟' => '𐳟', '𐲠' => '𐳠', '𐲡' => '𐳡', '𐲢' => '𐳢', '𐲣' => '𐳣', '𐲤' => '𐳤', '𐲥' => '𐳥', '𐲦' => '𐳦', '𐲧' => '𐳧', '𐲨' => '𐳨', '𐲩' => '𐳩', '𐲪' => '𐳪', '𐲫' => '𐳫', '𐲬' => '𐳬', '𐲭' => '𐳭', '𐲮' => '𐳮', '𐲯' => '𐳯', '𐲰' => '𐳰', '𐲱' => '𐳱', '𐲲' => '𐳲', '𑢠' => '𑣀', '𑢡' => '𑣁', '𑢢' => '𑣂', '𑢣' => '𑣃', '𑢤' => '𑣄', '𑢥' => '𑣅', '𑢦' => '𑣆', '𑢧' => '𑣇', '𑢨' => '𑣈', '𑢩' => '𑣉', '𑢪' => '𑣊', '𑢫' => '𑣋', '𑢬' => '𑣌', '𑢭' => '𑣍', '𑢮' => '𑣎', '𑢯' => '𑣏', '𑢰' => '𑣐', '𑢱' => '𑣑', '𑢲' => '𑣒', '𑢳' => '𑣓', '𑢴' => '𑣔', '𑢵' => '𑣕', '𑢶' => '𑣖', '𑢷' => '𑣗', '𑢸' => '𑣘', '𑢹' => '𑣙', '𑢺' => '𑣚', '𑢻' => '𑣛', '𑢼' => '𑣜', '𑢽' => '𑣝', '𑢾' => '𑣞', '𑢿' => '𑣟', '𖹀' => '𖹠', '𖹁' => '𖹡', '𖹂' => '𖹢', '𖹃' => '𖹣', '𖹄' => '𖹤', '𖹅' => '𖹥', '𖹆' => '𖹦', '𖹇' => '𖹧', '𖹈' => '𖹨', '𖹉' => '𖹩', '𖹊' => '𖹪', '𖹋' => '𖹫', '𖹌' => '𖹬', '𖹍' => '𖹭', '𖹎' => '𖹮', '𖹏' => '𖹯', '𖹐' => '𖹰', '𖹑' => '𖹱', '𖹒' => '𖹲', '𖹓' => '𖹳', '𖹔' => '𖹴', '𖹕' => '𖹵', '𖹖' => '𖹶', '𖹗' => '𖹷', '𖹘' => '𖹸', '𖹙' => '𖹹', '𖹚' => '𖹺', '𖹛' => '𖹻', '𖹜' => '𖹼', '𖹝' => '𖹽', '𖹞' => '𖹾', '𖹟' => '𖹿', '𞤀' => '𞤢', '𞤁' => '𞤣', '𞤂' => '𞤤', '𞤃' => '𞤥', '𞤄' => '𞤦', '𞤅' => '𞤧', '𞤆' => '𞤨', '𞤇' => '𞤩', '𞤈' => '𞤪', '𞤉' => '𞤫', '𞤊' => '𞤬', '𞤋' => '𞤭', '𞤌' => '𞤮', '𞤍' => '𞤯', '𞤎' => '𞤰', '𞤏' => '𞤱', '𞤐' => '𞤲', '𞤑' => '𞤳', '𞤒' => '𞤴', '𞤓' => '𞤵', '𞤔' => '𞤶', '𞤕' => '𞤷', '𞤖' => '𞤸', '𞤗' => '𞤹', '𞤘' => '𞤺', '𞤙' => '𞤻', '𞤚' => '𞤼', '𞤛' => '𞤽', '𞤜' => '𞤾', '𞤝' => '𞤿', '𞤞' => '𞥀', '𞤟' => '𞥁', '𞤠' => '𞥂', '𞤡' => '𞥃'); +return array('A' => 'a', 'B' => 'b', 'C' => 'c', 'D' => 'd', 'E' => 'e', 'F' => 'f', 'G' => 'g', 'H' => 'h', 'I' => 'i', 'J' => 'j', 'K' => 'k', 'L' => 'l', 'M' => 'm', 'N' => 'n', 'O' => 'o', 'P' => 'p', 'Q' => 'q', 'R' => 'r', 'S' => 's', 'T' => 't', 'U' => 'u', 'V' => 'v', 'W' => 'w', 'X' => 'x', 'Y' => 'y', 'Z' => 'z', 'À' => 'à', 'Á' => 'á', 'Â' => 'â', 'Ã' => 'ã', 'Ä' => 'ä', 'Å' => 'å', 'Æ' => 'æ', 'Ç' => 'ç', 'È' => 'è', 'É' => 'é', 'Ê' => 'ê', 'Ë' => 'ë', 'Ì' => 'ì', 'Í' => 'í', 'Î' => 'î', 'Ï' => 'ï', 'Ð' => 'ð', 'Ñ' => 'ñ', 'Ò' => 'ò', 'Ó' => 'ó', 'Ô' => 'ô', 'Õ' => 'õ', 'Ö' => 'ö', 'Ø' => 'ø', 'Ù' => 'ù', 'Ú' => 'ú', 'Û' => 'û', 'Ü' => 'ü', 'Ý' => 'ý', 'Þ' => 'þ', 'Ā' => 'ā', 'Ă' => 'ă', 'Ą' => 'ą', 'Ć' => 'ć', 'Ĉ' => 'ĉ', 'Ċ' => 'ċ', 'Č' => 'č', 'Ď' => 'ď', 'Đ' => 'đ', 'Ē' => 'ē', 'Ĕ' => 'ĕ', 'Ė' => 'ė', 'Ę' => 'ę', 'Ě' => 'ě', 'Ĝ' => 'ĝ', 'Ğ' => 'ğ', 'Ġ' => 'ġ', 'Ģ' => 'ģ', 'Ĥ' => 'ĥ', 'Ħ' => 'ħ', 'Ĩ' => 'ĩ', 'Ī' => 'ī', 'Ĭ' => 'ĭ', 'Į' => 'į', 'İ' => 'i̇', 'IJ' => 'ij', 'Ĵ' => 'ĵ', 'Ķ' => 'ķ', 'Ĺ' => 'ĺ', 'Ļ' => 'ļ', 'Ľ' => 'ľ', 'Ŀ' => 'ŀ', 'Ł' => 'ł', 'Ń' => 'ń', 'Ņ' => 'ņ', 'Ň' => 'ň', 'Ŋ' => 'ŋ', 'Ō' => 'ō', 'Ŏ' => 'ŏ', 'Ő' => 'ő', 'Œ' => 'œ', 'Ŕ' => 'ŕ', 'Ŗ' => 'ŗ', 'Ř' => 'ř', 'Ś' => 'ś', 'Ŝ' => 'ŝ', 'Ş' => 'ş', 'Š' => 'š', 'Ţ' => 'ţ', 'Ť' => 'ť', 'Ŧ' => 'ŧ', 'Ũ' => 'ũ', 'Ū' => 'ū', 'Ŭ' => 'ŭ', 'Ů' => 'ů', 'Ű' => 'ű', 'Ų' => 'ų', 'Ŵ' => 'ŵ', 'Ŷ' => 'ŷ', 'Ÿ' => 'ÿ', 'Ź' => 'ź', 'Ż' => 'ż', 'Ž' => 'ž', 'Ɓ' => 'ɓ', 'Ƃ' => 'ƃ', 'Ƅ' => 'ƅ', 'Ɔ' => 'ɔ', 'Ƈ' => 'ƈ', 'Ɖ' => 'ɖ', 'Ɗ' => 'ɗ', 'Ƌ' => 'ƌ', 'Ǝ' => 'ǝ', 'Ə' => 'ə', 'Ɛ' => 'ɛ', 'Ƒ' => 'ƒ', 'Ɠ' => 'ɠ', 'Ɣ' => 'ɣ', 'Ɩ' => 'ɩ', 'Ɨ' => 'ɨ', 'Ƙ' => 'ƙ', 'Ɯ' => 'ɯ', 'Ɲ' => 'ɲ', 'Ɵ' => 'ɵ', 'Ơ' => 'ơ', 'Ƣ' => 'ƣ', 'Ƥ' => 'ƥ', 'Ʀ' => 'ʀ', 'Ƨ' => 'ƨ', 'Ʃ' => 'ʃ', 'Ƭ' => 'ƭ', 'Ʈ' => 'ʈ', 'Ư' => 'ư', 'Ʊ' => 'ʊ', 'Ʋ' => 'ʋ', 'Ƴ' => 'ƴ', 'Ƶ' => 'ƶ', 'Ʒ' => 'ʒ', 'Ƹ' => 'ƹ', 'Ƽ' => 'ƽ', 'DŽ' => 'dž', 'Dž' => 'dž', 'LJ' => 'lj', 'Lj' => 'lj', 'NJ' => 'nj', 'Nj' => 'nj', 'Ǎ' => 'ǎ', 'Ǐ' => 'ǐ', 'Ǒ' => 'ǒ', 'Ǔ' => 'ǔ', 'Ǖ' => 'ǖ', 'Ǘ' => 'ǘ', 'Ǚ' => 'ǚ', 'Ǜ' => 'ǜ', 'Ǟ' => 'ǟ', 'Ǡ' => 'ǡ', 'Ǣ' => 'ǣ', 'Ǥ' => 'ǥ', 'Ǧ' => 'ǧ', 'Ǩ' => 'ǩ', 'Ǫ' => 'ǫ', 'Ǭ' => 'ǭ', 'Ǯ' => 'ǯ', 'DZ' => 'dz', 'Dz' => 'dz', 'Ǵ' => 'ǵ', 'Ƕ' => 'ƕ', 'Ƿ' => 'ƿ', 'Ǹ' => 'ǹ', 'Ǻ' => 'ǻ', 'Ǽ' => 'ǽ', 'Ǿ' => 'ǿ', 'Ȁ' => 'ȁ', 'Ȃ' => 'ȃ', 'Ȅ' => 'ȅ', 'Ȇ' => 'ȇ', 'Ȉ' => 'ȉ', 'Ȋ' => 'ȋ', 'Ȍ' => 'ȍ', 'Ȏ' => 'ȏ', 'Ȑ' => 'ȑ', 'Ȓ' => 'ȓ', 'Ȕ' => 'ȕ', 'Ȗ' => 'ȗ', 'Ș' => 'ș', 'Ț' => 'ț', 'Ȝ' => 'ȝ', 'Ȟ' => 'ȟ', 'Ƞ' => 'ƞ', 'Ȣ' => 'ȣ', 'Ȥ' => 'ȥ', 'Ȧ' => 'ȧ', 'Ȩ' => 'ȩ', 'Ȫ' => 'ȫ', 'Ȭ' => 'ȭ', 'Ȯ' => 'ȯ', 'Ȱ' => 'ȱ', 'Ȳ' => 'ȳ', 'Ⱥ' => 'ⱥ', 'Ȼ' => 'ȼ', 'Ƚ' => 'ƚ', 'Ⱦ' => 'ⱦ', 'Ɂ' => 'ɂ', 'Ƀ' => 'ƀ', 'Ʉ' => 'ʉ', 'Ʌ' => 'ʌ', 'Ɇ' => 'ɇ', 'Ɉ' => 'ɉ', 'Ɋ' => 'ɋ', 'Ɍ' => 'ɍ', 'Ɏ' => 'ɏ', 'Ͱ' => 'ͱ', 'Ͳ' => 'ͳ', 'Ͷ' => 'ͷ', 'Ϳ' => 'ϳ', 'Ά' => 'ά', 'Έ' => 'έ', 'Ή' => 'ή', 'Ί' => 'ί', 'Ό' => 'ό', 'Ύ' => 'ύ', 'Ώ' => 'ώ', 'Α' => 'α', 'Β' => 'β', 'Γ' => 'γ', 'Δ' => 'δ', 'Ε' => 'ε', 'Ζ' => 'ζ', 'Η' => 'η', 'Θ' => 'θ', 'Ι' => 'ι', 'Κ' => 'κ', 'Λ' => 'λ', 'Μ' => 'μ', 'Ν' => 'ν', 'Ξ' => 'ξ', 'Ο' => 'ο', 'Π' => 'π', 'Ρ' => 'ρ', 'Σ' => 'σ', 'Τ' => 'τ', 'Υ' => 'υ', 'Φ' => 'φ', 'Χ' => 'χ', 'Ψ' => 'ψ', 'Ω' => 'ω', 'Ϊ' => 'ϊ', 'Ϋ' => 'ϋ', 'Ϗ' => 'ϗ', 'Ϙ' => 'ϙ', 'Ϛ' => 'ϛ', 'Ϝ' => 'ϝ', 'Ϟ' => 'ϟ', 'Ϡ' => 'ϡ', 'Ϣ' => 'ϣ', 'Ϥ' => 'ϥ', 'Ϧ' => 'ϧ', 'Ϩ' => 'ϩ', 'Ϫ' => 'ϫ', 'Ϭ' => 'ϭ', 'Ϯ' => 'ϯ', 'ϴ' => 'θ', 'Ϸ' => 'ϸ', 'Ϲ' => 'ϲ', 'Ϻ' => 'ϻ', 'Ͻ' => 'ͻ', 'Ͼ' => 'ͼ', 'Ͽ' => 'ͽ', 'Ѐ' => 'ѐ', 'Ё' => 'ё', 'Ђ' => 'ђ', 'Ѓ' => 'ѓ', 'Є' => 'є', 'Ѕ' => 'ѕ', 'І' => 'і', 'Ї' => 'ї', 'Ј' => 'ј', 'Љ' => 'љ', 'Њ' => 'њ', 'Ћ' => 'ћ', 'Ќ' => 'ќ', 'Ѝ' => 'ѝ', 'Ў' => 'ў', 'Џ' => 'џ', 'А' => 'а', 'Б' => 'б', 'В' => 'в', 'Г' => 'г', 'Д' => 'д', 'Е' => 'е', 'Ж' => 'ж', 'З' => 'з', 'И' => 'и', 'Й' => 'й', 'К' => 'к', 'Л' => 'л', 'М' => 'м', 'Н' => 'н', 'О' => 'о', 'П' => 'п', 'Р' => 'р', 'С' => 'с', 'Т' => 'т', 'У' => 'у', 'Ф' => 'ф', 'Х' => 'х', 'Ц' => 'ц', 'Ч' => 'ч', 'Ш' => 'ш', 'Щ' => 'щ', 'Ъ' => 'ъ', 'Ы' => 'ы', 'Ь' => 'ь', 'Э' => 'э', 'Ю' => 'ю', 'Я' => 'я', 'Ѡ' => 'ѡ', 'Ѣ' => 'ѣ', 'Ѥ' => 'ѥ', 'Ѧ' => 'ѧ', 'Ѩ' => 'ѩ', 'Ѫ' => 'ѫ', 'Ѭ' => 'ѭ', 'Ѯ' => 'ѯ', 'Ѱ' => 'ѱ', 'Ѳ' => 'ѳ', 'Ѵ' => 'ѵ', 'Ѷ' => 'ѷ', 'Ѹ' => 'ѹ', 'Ѻ' => 'ѻ', 'Ѽ' => 'ѽ', 'Ѿ' => 'ѿ', 'Ҁ' => 'ҁ', 'Ҋ' => 'ҋ', 'Ҍ' => 'ҍ', 'Ҏ' => 'ҏ', 'Ґ' => 'ґ', 'Ғ' => 'ғ', 'Ҕ' => 'ҕ', 'Җ' => 'җ', 'Ҙ' => 'ҙ', 'Қ' => 'қ', 'Ҝ' => 'ҝ', 'Ҟ' => 'ҟ', 'Ҡ' => 'ҡ', 'Ң' => 'ң', 'Ҥ' => 'ҥ', 'Ҧ' => 'ҧ', 'Ҩ' => 'ҩ', 'Ҫ' => 'ҫ', 'Ҭ' => 'ҭ', 'Ү' => 'ү', 'Ұ' => 'ұ', 'Ҳ' => 'ҳ', 'Ҵ' => 'ҵ', 'Ҷ' => 'ҷ', 'Ҹ' => 'ҹ', 'Һ' => 'һ', 'Ҽ' => 'ҽ', 'Ҿ' => 'ҿ', 'Ӏ' => 'ӏ', 'Ӂ' => 'ӂ', 'Ӄ' => 'ӄ', 'Ӆ' => 'ӆ', 'Ӈ' => 'ӈ', 'Ӊ' => 'ӊ', 'Ӌ' => 'ӌ', 'Ӎ' => 'ӎ', 'Ӑ' => 'ӑ', 'Ӓ' => 'ӓ', 'Ӕ' => 'ӕ', 'Ӗ' => 'ӗ', 'Ә' => 'ә', 'Ӛ' => 'ӛ', 'Ӝ' => 'ӝ', 'Ӟ' => 'ӟ', 'Ӡ' => 'ӡ', 'Ӣ' => 'ӣ', 'Ӥ' => 'ӥ', 'Ӧ' => 'ӧ', 'Ө' => 'ө', 'Ӫ' => 'ӫ', 'Ӭ' => 'ӭ', 'Ӯ' => 'ӯ', 'Ӱ' => 'ӱ', 'Ӳ' => 'ӳ', 'Ӵ' => 'ӵ', 'Ӷ' => 'ӷ', 'Ӹ' => 'ӹ', 'Ӻ' => 'ӻ', 'Ӽ' => 'ӽ', 'Ӿ' => 'ӿ', 'Ԁ' => 'ԁ', 'Ԃ' => 'ԃ', 'Ԅ' => 'ԅ', 'Ԇ' => 'ԇ', 'Ԉ' => 'ԉ', 'Ԋ' => 'ԋ', 'Ԍ' => 'ԍ', 'Ԏ' => 'ԏ', 'Ԑ' => 'ԑ', 'Ԓ' => 'ԓ', 'Ԕ' => 'ԕ', 'Ԗ' => 'ԗ', 'Ԙ' => 'ԙ', 'Ԛ' => 'ԛ', 'Ԝ' => 'ԝ', 'Ԟ' => 'ԟ', 'Ԡ' => 'ԡ', 'Ԣ' => 'ԣ', 'Ԥ' => 'ԥ', 'Ԧ' => 'ԧ', 'Ԩ' => 'ԩ', 'Ԫ' => 'ԫ', 'Ԭ' => 'ԭ', 'Ԯ' => 'ԯ', 'Ա' => 'ա', 'Բ' => 'բ', 'Գ' => 'գ', 'Դ' => 'դ', 'Ե' => 'ե', 'Զ' => 'զ', 'Է' => 'է', 'Ը' => 'ը', 'Թ' => 'թ', 'Ժ' => 'ժ', 'Ի' => 'ի', 'Լ' => 'լ', 'Խ' => 'խ', 'Ծ' => 'ծ', 'Կ' => 'կ', 'Հ' => 'հ', 'Ձ' => 'ձ', 'Ղ' => 'ղ', 'Ճ' => 'ճ', 'Մ' => 'մ', 'Յ' => 'յ', 'Ն' => 'ն', 'Շ' => 'շ', 'Ո' => 'ո', 'Չ' => 'չ', 'Պ' => 'պ', 'Ջ' => 'ջ', 'Ռ' => 'ռ', 'Ս' => 'ս', 'Վ' => 'վ', 'Տ' => 'տ', 'Ր' => 'ր', 'Ց' => 'ց', 'Ւ' => 'ւ', 'Փ' => 'փ', 'Ք' => 'ք', 'Օ' => 'օ', 'Ֆ' => 'ֆ', 'Ⴀ' => 'ⴀ', 'Ⴁ' => 'ⴁ', 'Ⴂ' => 'ⴂ', 'Ⴃ' => 'ⴃ', 'Ⴄ' => 'ⴄ', 'Ⴅ' => 'ⴅ', 'Ⴆ' => 'ⴆ', 'Ⴇ' => 'ⴇ', 'Ⴈ' => 'ⴈ', 'Ⴉ' => 'ⴉ', 'Ⴊ' => 'ⴊ', 'Ⴋ' => 'ⴋ', 'Ⴌ' => 'ⴌ', 'Ⴍ' => 'ⴍ', 'Ⴎ' => 'ⴎ', 'Ⴏ' => 'ⴏ', 'Ⴐ' => 'ⴐ', 'Ⴑ' => 'ⴑ', 'Ⴒ' => 'ⴒ', 'Ⴓ' => 'ⴓ', 'Ⴔ' => 'ⴔ', 'Ⴕ' => 'ⴕ', 'Ⴖ' => 'ⴖ', 'Ⴗ' => 'ⴗ', 'Ⴘ' => 'ⴘ', 'Ⴙ' => 'ⴙ', 'Ⴚ' => 'ⴚ', 'Ⴛ' => 'ⴛ', 'Ⴜ' => 'ⴜ', 'Ⴝ' => 'ⴝ', 'Ⴞ' => 'ⴞ', 'Ⴟ' => 'ⴟ', 'Ⴠ' => 'ⴠ', 'Ⴡ' => 'ⴡ', 'Ⴢ' => 'ⴢ', 'Ⴣ' => 'ⴣ', 'Ⴤ' => 'ⴤ', 'Ⴥ' => 'ⴥ', 'Ⴧ' => 'ⴧ', 'Ⴭ' => 'ⴭ', 'Ꭰ' => 'ꭰ', 'Ꭱ' => 'ꭱ', 'Ꭲ' => 'ꭲ', 'Ꭳ' => 'ꭳ', 'Ꭴ' => 'ꭴ', 'Ꭵ' => 'ꭵ', 'Ꭶ' => 'ꭶ', 'Ꭷ' => 'ꭷ', 'Ꭸ' => 'ꭸ', 'Ꭹ' => 'ꭹ', 'Ꭺ' => 'ꭺ', 'Ꭻ' => 'ꭻ', 'Ꭼ' => 'ꭼ', 'Ꭽ' => 'ꭽ', 'Ꭾ' => 'ꭾ', 'Ꭿ' => 'ꭿ', 'Ꮀ' => 'ꮀ', 'Ꮁ' => 'ꮁ', 'Ꮂ' => 'ꮂ', 'Ꮃ' => 'ꮃ', 'Ꮄ' => 'ꮄ', 'Ꮅ' => 'ꮅ', 'Ꮆ' => 'ꮆ', 'Ꮇ' => 'ꮇ', 'Ꮈ' => 'ꮈ', 'Ꮉ' => 'ꮉ', 'Ꮊ' => 'ꮊ', 'Ꮋ' => 'ꮋ', 'Ꮌ' => 'ꮌ', 'Ꮍ' => 'ꮍ', 'Ꮎ' => 'ꮎ', 'Ꮏ' => 'ꮏ', 'Ꮐ' => 'ꮐ', 'Ꮑ' => 'ꮑ', 'Ꮒ' => 'ꮒ', 'Ꮓ' => 'ꮓ', 'Ꮔ' => 'ꮔ', 'Ꮕ' => 'ꮕ', 'Ꮖ' => 'ꮖ', 'Ꮗ' => 'ꮗ', 'Ꮘ' => 'ꮘ', 'Ꮙ' => 'ꮙ', 'Ꮚ' => 'ꮚ', 'Ꮛ' => 'ꮛ', 'Ꮜ' => 'ꮜ', 'Ꮝ' => 'ꮝ', 'Ꮞ' => 'ꮞ', 'Ꮟ' => 'ꮟ', 'Ꮠ' => 'ꮠ', 'Ꮡ' => 'ꮡ', 'Ꮢ' => 'ꮢ', 'Ꮣ' => 'ꮣ', 'Ꮤ' => 'ꮤ', 'Ꮥ' => 'ꮥ', 'Ꮦ' => 'ꮦ', 'Ꮧ' => 'ꮧ', 'Ꮨ' => 'ꮨ', 'Ꮩ' => 'ꮩ', 'Ꮪ' => 'ꮪ', 'Ꮫ' => 'ꮫ', 'Ꮬ' => 'ꮬ', 'Ꮭ' => 'ꮭ', 'Ꮮ' => 'ꮮ', 'Ꮯ' => 'ꮯ', 'Ꮰ' => 'ꮰ', 'Ꮱ' => 'ꮱ', 'Ꮲ' => 'ꮲ', 'Ꮳ' => 'ꮳ', 'Ꮴ' => 'ꮴ', 'Ꮵ' => 'ꮵ', 'Ꮶ' => 'ꮶ', 'Ꮷ' => 'ꮷ', 'Ꮸ' => 'ꮸ', 'Ꮹ' => 'ꮹ', 'Ꮺ' => 'ꮺ', 'Ꮻ' => 'ꮻ', 'Ꮼ' => 'ꮼ', 'Ꮽ' => 'ꮽ', 'Ꮾ' => 'ꮾ', 'Ꮿ' => 'ꮿ', 'Ᏸ' => 'ᏸ', 'Ᏹ' => 'ᏹ', 'Ᏺ' => 'ᏺ', 'Ᏻ' => 'ᏻ', 'Ᏼ' => 'ᏼ', 'Ᏽ' => 'ᏽ', 'Ა' => 'ა', 'Ბ' => 'ბ', 'Გ' => 'გ', 'Დ' => 'დ', 'Ე' => 'ე', 'Ვ' => 'ვ', 'Ზ' => 'ზ', 'Თ' => 'თ', 'Ი' => 'ი', 'Კ' => 'კ', 'Ლ' => 'ლ', 'Მ' => 'მ', 'Ნ' => 'ნ', 'Ო' => 'ო', 'Პ' => 'პ', 'Ჟ' => 'ჟ', 'Რ' => 'რ', 'Ს' => 'ს', 'Ტ' => 'ტ', 'Უ' => 'უ', 'Ფ' => 'ფ', 'Ქ' => 'ქ', 'Ღ' => 'ღ', 'Ყ' => 'ყ', 'Შ' => 'შ', 'Ჩ' => 'ჩ', 'Ც' => 'ც', 'Ძ' => 'ძ', 'Წ' => 'წ', 'Ჭ' => 'ჭ', 'Ხ' => 'ხ', 'Ჯ' => 'ჯ', 'Ჰ' => 'ჰ', 'Ჱ' => 'ჱ', 'Ჲ' => 'ჲ', 'Ჳ' => 'ჳ', 'Ჴ' => 'ჴ', 'Ჵ' => 'ჵ', 'Ჶ' => 'ჶ', 'Ჷ' => 'ჷ', 'Ჸ' => 'ჸ', 'Ჹ' => 'ჹ', 'Ჺ' => 'ჺ', 'Ჽ' => 'ჽ', 'Ჾ' => 'ჾ', 'Ჿ' => 'ჿ', 'Ḁ' => 'ḁ', 'Ḃ' => 'ḃ', 'Ḅ' => 'ḅ', 'Ḇ' => 'ḇ', 'Ḉ' => 'ḉ', 'Ḋ' => 'ḋ', 'Ḍ' => 'ḍ', 'Ḏ' => 'ḏ', 'Ḑ' => 'ḑ', 'Ḓ' => 'ḓ', 'Ḕ' => 'ḕ', 'Ḗ' => 'ḗ', 'Ḙ' => 'ḙ', 'Ḛ' => 'ḛ', 'Ḝ' => 'ḝ', 'Ḟ' => 'ḟ', 'Ḡ' => 'ḡ', 'Ḣ' => 'ḣ', 'Ḥ' => 'ḥ', 'Ḧ' => 'ḧ', 'Ḩ' => 'ḩ', 'Ḫ' => 'ḫ', 'Ḭ' => 'ḭ', 'Ḯ' => 'ḯ', 'Ḱ' => 'ḱ', 'Ḳ' => 'ḳ', 'Ḵ' => 'ḵ', 'Ḷ' => 'ḷ', 'Ḹ' => 'ḹ', 'Ḻ' => 'ḻ', 'Ḽ' => 'ḽ', 'Ḿ' => 'ḿ', 'Ṁ' => 'ṁ', 'Ṃ' => 'ṃ', 'Ṅ' => 'ṅ', 'Ṇ' => 'ṇ', 'Ṉ' => 'ṉ', 'Ṋ' => 'ṋ', 'Ṍ' => 'ṍ', 'Ṏ' => 'ṏ', 'Ṑ' => 'ṑ', 'Ṓ' => 'ṓ', 'Ṕ' => 'ṕ', 'Ṗ' => 'ṗ', 'Ṙ' => 'ṙ', 'Ṛ' => 'ṛ', 'Ṝ' => 'ṝ', 'Ṟ' => 'ṟ', 'Ṡ' => 'ṡ', 'Ṣ' => 'ṣ', 'Ṥ' => 'ṥ', 'Ṧ' => 'ṧ', 'Ṩ' => 'ṩ', 'Ṫ' => 'ṫ', 'Ṭ' => 'ṭ', 'Ṯ' => 'ṯ', 'Ṱ' => 'ṱ', 'Ṳ' => 'ṳ', 'Ṵ' => 'ṵ', 'Ṷ' => 'ṷ', 'Ṹ' => 'ṹ', 'Ṻ' => 'ṻ', 'Ṽ' => 'ṽ', 'Ṿ' => 'ṿ', 'Ẁ' => 'ẁ', 'Ẃ' => 'ẃ', 'Ẅ' => 'ẅ', 'Ẇ' => 'ẇ', 'Ẉ' => 'ẉ', 'Ẋ' => 'ẋ', 'Ẍ' => 'ẍ', 'Ẏ' => 'ẏ', 'Ẑ' => 'ẑ', 'Ẓ' => 'ẓ', 'Ẕ' => 'ẕ', 'ẞ' => 'ß', 'Ạ' => 'ạ', 'Ả' => 'ả', 'Ấ' => 'ấ', 'Ầ' => 'ầ', 'Ẩ' => 'ẩ', 'Ẫ' => 'ẫ', 'Ậ' => 'ậ', 'Ắ' => 'ắ', 'Ằ' => 'ằ', 'Ẳ' => 'ẳ', 'Ẵ' => 'ẵ', 'Ặ' => 'ặ', 'Ẹ' => 'ẹ', 'Ẻ' => 'ẻ', 'Ẽ' => 'ẽ', 'Ế' => 'ế', 'Ề' => 'ề', 'Ể' => 'ể', 'Ễ' => 'ễ', 'Ệ' => 'ệ', 'Ỉ' => 'ỉ', 'Ị' => 'ị', 'Ọ' => 'ọ', 'Ỏ' => 'ỏ', 'Ố' => 'ố', 'Ồ' => 'ồ', 'Ổ' => 'ổ', 'Ỗ' => 'ỗ', 'Ộ' => 'ộ', 'Ớ' => 'ớ', 'Ờ' => 'ờ', 'Ở' => 'ở', 'Ỡ' => 'ỡ', 'Ợ' => 'ợ', 'Ụ' => 'ụ', 'Ủ' => 'ủ', 'Ứ' => 'ứ', 'Ừ' => 'ừ', 'Ử' => 'ử', 'Ữ' => 'ữ', 'Ự' => 'ự', 'Ỳ' => 'ỳ', 'Ỵ' => 'ỵ', 'Ỷ' => 'ỷ', 'Ỹ' => 'ỹ', 'Ỻ' => 'ỻ', 'Ỽ' => 'ỽ', 'Ỿ' => 'ỿ', 'Ἀ' => 'ἀ', 'Ἁ' => 'ἁ', 'Ἂ' => 'ἂ', 'Ἃ' => 'ἃ', 'Ἄ' => 'ἄ', 'Ἅ' => 'ἅ', 'Ἆ' => 'ἆ', 'Ἇ' => 'ἇ', 'Ἐ' => 'ἐ', 'Ἑ' => 'ἑ', 'Ἒ' => 'ἒ', 'Ἓ' => 'ἓ', 'Ἔ' => 'ἔ', 'Ἕ' => 'ἕ', 'Ἠ' => 'ἠ', 'Ἡ' => 'ἡ', 'Ἢ' => 'ἢ', 'Ἣ' => 'ἣ', 'Ἤ' => 'ἤ', 'Ἥ' => 'ἥ', 'Ἦ' => 'ἦ', 'Ἧ' => 'ἧ', 'Ἰ' => 'ἰ', 'Ἱ' => 'ἱ', 'Ἲ' => 'ἲ', 'Ἳ' => 'ἳ', 'Ἴ' => 'ἴ', 'Ἵ' => 'ἵ', 'Ἶ' => 'ἶ', 'Ἷ' => 'ἷ', 'Ὀ' => 'ὀ', 'Ὁ' => 'ὁ', 'Ὂ' => 'ὂ', 'Ὃ' => 'ὃ', 'Ὄ' => 'ὄ', 'Ὅ' => 'ὅ', 'Ὑ' => 'ὑ', 'Ὓ' => 'ὓ', 'Ὕ' => 'ὕ', 'Ὗ' => 'ὗ', 'Ὠ' => 'ὠ', 'Ὡ' => 'ὡ', 'Ὢ' => 'ὢ', 'Ὣ' => 'ὣ', 'Ὤ' => 'ὤ', 'Ὥ' => 'ὥ', 'Ὦ' => 'ὦ', 'Ὧ' => 'ὧ', 'ᾈ' => 'ᾀ', 'ᾉ' => 'ᾁ', 'ᾊ' => 'ᾂ', 'ᾋ' => 'ᾃ', 'ᾌ' => 'ᾄ', 'ᾍ' => 'ᾅ', 'ᾎ' => 'ᾆ', 'ᾏ' => 'ᾇ', 'ᾘ' => 'ᾐ', 'ᾙ' => 'ᾑ', 'ᾚ' => 'ᾒ', 'ᾛ' => 'ᾓ', 'ᾜ' => 'ᾔ', 'ᾝ' => 'ᾕ', 'ᾞ' => 'ᾖ', 'ᾟ' => 'ᾗ', 'ᾨ' => 'ᾠ', 'ᾩ' => 'ᾡ', 'ᾪ' => 'ᾢ', 'ᾫ' => 'ᾣ', 'ᾬ' => 'ᾤ', 'ᾭ' => 'ᾥ', 'ᾮ' => 'ᾦ', 'ᾯ' => 'ᾧ', 'Ᾰ' => 'ᾰ', 'Ᾱ' => 'ᾱ', 'Ὰ' => 'ὰ', 'Ά' => 'ά', 'ᾼ' => 'ᾳ', 'Ὲ' => 'ὲ', 'Έ' => 'έ', 'Ὴ' => 'ὴ', 'Ή' => 'ή', 'ῌ' => 'ῃ', 'Ῐ' => 'ῐ', 'Ῑ' => 'ῑ', 'Ὶ' => 'ὶ', 'Ί' => 'ί', 'Ῠ' => 'ῠ', 'Ῡ' => 'ῡ', 'Ὺ' => 'ὺ', 'Ύ' => 'ύ', 'Ῥ' => 'ῥ', 'Ὸ' => 'ὸ', 'Ό' => 'ό', 'Ὼ' => 'ὼ', 'Ώ' => 'ώ', 'ῼ' => 'ῳ', 'Ω' => 'ω', 'K' => 'k', 'Å' => 'å', 'Ⅎ' => 'ⅎ', 'Ⅰ' => 'ⅰ', 'Ⅱ' => 'ⅱ', 'Ⅲ' => 'ⅲ', 'Ⅳ' => 'ⅳ', 'Ⅴ' => 'ⅴ', 'Ⅵ' => 'ⅵ', 'Ⅶ' => 'ⅶ', 'Ⅷ' => 'ⅷ', 'Ⅸ' => 'ⅸ', 'Ⅹ' => 'ⅹ', 'Ⅺ' => 'ⅺ', 'Ⅻ' => 'ⅻ', 'Ⅼ' => 'ⅼ', 'Ⅽ' => 'ⅽ', 'Ⅾ' => 'ⅾ', 'Ⅿ' => 'ⅿ', 'Ↄ' => 'ↄ', 'Ⓐ' => 'ⓐ', 'Ⓑ' => 'ⓑ', 'Ⓒ' => 'ⓒ', 'Ⓓ' => 'ⓓ', 'Ⓔ' => 'ⓔ', 'Ⓕ' => 'ⓕ', 'Ⓖ' => 'ⓖ', 'Ⓗ' => 'ⓗ', 'Ⓘ' => 'ⓘ', 'Ⓙ' => 'ⓙ', 'Ⓚ' => 'ⓚ', 'Ⓛ' => 'ⓛ', 'Ⓜ' => 'ⓜ', 'Ⓝ' => 'ⓝ', 'Ⓞ' => 'ⓞ', 'Ⓟ' => 'ⓟ', 'Ⓠ' => 'ⓠ', 'Ⓡ' => 'ⓡ', 'Ⓢ' => 'ⓢ', 'Ⓣ' => 'ⓣ', 'Ⓤ' => 'ⓤ', 'Ⓥ' => 'ⓥ', 'Ⓦ' => 'ⓦ', 'Ⓧ' => 'ⓧ', 'Ⓨ' => 'ⓨ', 'Ⓩ' => 'ⓩ', 'Ⰰ' => 'ⰰ', 'Ⰱ' => 'ⰱ', 'Ⰲ' => 'ⰲ', 'Ⰳ' => 'ⰳ', 'Ⰴ' => 'ⰴ', 'Ⰵ' => 'ⰵ', 'Ⰶ' => 'ⰶ', 'Ⰷ' => 'ⰷ', 'Ⰸ' => 'ⰸ', 'Ⰹ' => 'ⰹ', 'Ⰺ' => 'ⰺ', 'Ⰻ' => 'ⰻ', 'Ⰼ' => 'ⰼ', 'Ⰽ' => 'ⰽ', 'Ⰾ' => 'ⰾ', 'Ⰿ' => 'ⰿ', 'Ⱀ' => 'ⱀ', 'Ⱁ' => 'ⱁ', 'Ⱂ' => 'ⱂ', 'Ⱃ' => 'ⱃ', 'Ⱄ' => 'ⱄ', 'Ⱅ' => 'ⱅ', 'Ⱆ' => 'ⱆ', 'Ⱇ' => 'ⱇ', 'Ⱈ' => 'ⱈ', 'Ⱉ' => 'ⱉ', 'Ⱊ' => 'ⱊ', 'Ⱋ' => 'ⱋ', 'Ⱌ' => 'ⱌ', 'Ⱍ' => 'ⱍ', 'Ⱎ' => 'ⱎ', 'Ⱏ' => 'ⱏ', 'Ⱐ' => 'ⱐ', 'Ⱑ' => 'ⱑ', 'Ⱒ' => 'ⱒ', 'Ⱓ' => 'ⱓ', 'Ⱔ' => 'ⱔ', 'Ⱕ' => 'ⱕ', 'Ⱖ' => 'ⱖ', 'Ⱗ' => 'ⱗ', 'Ⱘ' => 'ⱘ', 'Ⱙ' => 'ⱙ', 'Ⱚ' => 'ⱚ', 'Ⱛ' => 'ⱛ', 'Ⱜ' => 'ⱜ', 'Ⱝ' => 'ⱝ', 'Ⱞ' => 'ⱞ', 'Ⱡ' => 'ⱡ', 'Ɫ' => 'ɫ', 'Ᵽ' => 'ᵽ', 'Ɽ' => 'ɽ', 'Ⱨ' => 'ⱨ', 'Ⱪ' => 'ⱪ', 'Ⱬ' => 'ⱬ', 'Ɑ' => 'ɑ', 'Ɱ' => 'ɱ', 'Ɐ' => 'ɐ', 'Ɒ' => 'ɒ', 'Ⱳ' => 'ⱳ', 'Ⱶ' => 'ⱶ', 'Ȿ' => 'ȿ', 'Ɀ' => 'ɀ', 'Ⲁ' => 'ⲁ', 'Ⲃ' => 'ⲃ', 'Ⲅ' => 'ⲅ', 'Ⲇ' => 'ⲇ', 'Ⲉ' => 'ⲉ', 'Ⲋ' => 'ⲋ', 'Ⲍ' => 'ⲍ', 'Ⲏ' => 'ⲏ', 'Ⲑ' => 'ⲑ', 'Ⲓ' => 'ⲓ', 'Ⲕ' => 'ⲕ', 'Ⲗ' => 'ⲗ', 'Ⲙ' => 'ⲙ', 'Ⲛ' => 'ⲛ', 'Ⲝ' => 'ⲝ', 'Ⲟ' => 'ⲟ', 'Ⲡ' => 'ⲡ', 'Ⲣ' => 'ⲣ', 'Ⲥ' => 'ⲥ', 'Ⲧ' => 'ⲧ', 'Ⲩ' => 'ⲩ', 'Ⲫ' => 'ⲫ', 'Ⲭ' => 'ⲭ', 'Ⲯ' => 'ⲯ', 'Ⲱ' => 'ⲱ', 'Ⲳ' => 'ⲳ', 'Ⲵ' => 'ⲵ', 'Ⲷ' => 'ⲷ', 'Ⲹ' => 'ⲹ', 'Ⲻ' => 'ⲻ', 'Ⲽ' => 'ⲽ', 'Ⲿ' => 'ⲿ', 'Ⳁ' => 'ⳁ', 'Ⳃ' => 'ⳃ', 'Ⳅ' => 'ⳅ', 'Ⳇ' => 'ⳇ', 'Ⳉ' => 'ⳉ', 'Ⳋ' => 'ⳋ', 'Ⳍ' => 'ⳍ', 'Ⳏ' => 'ⳏ', 'Ⳑ' => 'ⳑ', 'Ⳓ' => 'ⳓ', 'Ⳕ' => 'ⳕ', 'Ⳗ' => 'ⳗ', 'Ⳙ' => 'ⳙ', 'Ⳛ' => 'ⳛ', 'Ⳝ' => 'ⳝ', 'Ⳟ' => 'ⳟ', 'Ⳡ' => 'ⳡ', 'Ⳣ' => 'ⳣ', 'Ⳬ' => 'ⳬ', 'Ⳮ' => 'ⳮ', 'Ⳳ' => 'ⳳ', 'Ꙁ' => 'ꙁ', 'Ꙃ' => 'ꙃ', 'Ꙅ' => 'ꙅ', 'Ꙇ' => 'ꙇ', 'Ꙉ' => 'ꙉ', 'Ꙋ' => 'ꙋ', 'Ꙍ' => 'ꙍ', 'Ꙏ' => 'ꙏ', 'Ꙑ' => 'ꙑ', 'Ꙓ' => 'ꙓ', 'Ꙕ' => 'ꙕ', 'Ꙗ' => 'ꙗ', 'Ꙙ' => 'ꙙ', 'Ꙛ' => 'ꙛ', 'Ꙝ' => 'ꙝ', 'Ꙟ' => 'ꙟ', 'Ꙡ' => 'ꙡ', 'Ꙣ' => 'ꙣ', 'Ꙥ' => 'ꙥ', 'Ꙧ' => 'ꙧ', 'Ꙩ' => 'ꙩ', 'Ꙫ' => 'ꙫ', 'Ꙭ' => 'ꙭ', 'Ꚁ' => 'ꚁ', 'Ꚃ' => 'ꚃ', 'Ꚅ' => 'ꚅ', 'Ꚇ' => 'ꚇ', 'Ꚉ' => 'ꚉ', 'Ꚋ' => 'ꚋ', 'Ꚍ' => 'ꚍ', 'Ꚏ' => 'ꚏ', 'Ꚑ' => 'ꚑ', 'Ꚓ' => 'ꚓ', 'Ꚕ' => 'ꚕ', 'Ꚗ' => 'ꚗ', 'Ꚙ' => 'ꚙ', 'Ꚛ' => 'ꚛ', 'Ꜣ' => 'ꜣ', 'Ꜥ' => 'ꜥ', 'Ꜧ' => 'ꜧ', 'Ꜩ' => 'ꜩ', 'Ꜫ' => 'ꜫ', 'Ꜭ' => 'ꜭ', 'Ꜯ' => 'ꜯ', 'Ꜳ' => 'ꜳ', 'Ꜵ' => 'ꜵ', 'Ꜷ' => 'ꜷ', 'Ꜹ' => 'ꜹ', 'Ꜻ' => 'ꜻ', 'Ꜽ' => 'ꜽ', 'Ꜿ' => 'ꜿ', 'Ꝁ' => 'ꝁ', 'Ꝃ' => 'ꝃ', 'Ꝅ' => 'ꝅ', 'Ꝇ' => 'ꝇ', 'Ꝉ' => 'ꝉ', 'Ꝋ' => 'ꝋ', 'Ꝍ' => 'ꝍ', 'Ꝏ' => 'ꝏ', 'Ꝑ' => 'ꝑ', 'Ꝓ' => 'ꝓ', 'Ꝕ' => 'ꝕ', 'Ꝗ' => 'ꝗ', 'Ꝙ' => 'ꝙ', 'Ꝛ' => 'ꝛ', 'Ꝝ' => 'ꝝ', 'Ꝟ' => 'ꝟ', 'Ꝡ' => 'ꝡ', 'Ꝣ' => 'ꝣ', 'Ꝥ' => 'ꝥ', 'Ꝧ' => 'ꝧ', 'Ꝩ' => 'ꝩ', 'Ꝫ' => 'ꝫ', 'Ꝭ' => 'ꝭ', 'Ꝯ' => 'ꝯ', 'Ꝺ' => 'ꝺ', 'Ꝼ' => 'ꝼ', 'Ᵹ' => 'ᵹ', 'Ꝿ' => 'ꝿ', 'Ꞁ' => 'ꞁ', 'Ꞃ' => 'ꞃ', 'Ꞅ' => 'ꞅ', 'Ꞇ' => 'ꞇ', 'Ꞌ' => 'ꞌ', 'Ɥ' => 'ɥ', 'Ꞑ' => 'ꞑ', 'Ꞓ' => 'ꞓ', 'Ꞗ' => 'ꞗ', 'Ꞙ' => 'ꞙ', 'Ꞛ' => 'ꞛ', 'Ꞝ' => 'ꞝ', 'Ꞟ' => 'ꞟ', 'Ꞡ' => 'ꞡ', 'Ꞣ' => 'ꞣ', 'Ꞥ' => 'ꞥ', 'Ꞧ' => 'ꞧ', 'Ꞩ' => 'ꞩ', 'Ɦ' => 'ɦ', 'Ɜ' => 'ɜ', 'Ɡ' => 'ɡ', 'Ɬ' => 'ɬ', 'Ɪ' => 'ɪ', 'Ʞ' => 'ʞ', 'Ʇ' => 'ʇ', 'Ʝ' => 'ʝ', 'Ꭓ' => 'ꭓ', 'Ꞵ' => 'ꞵ', 'Ꞷ' => 'ꞷ', 'Ꞹ' => 'ꞹ', 'Ꞻ' => 'ꞻ', 'Ꞽ' => 'ꞽ', 'Ꞿ' => 'ꞿ', 'Ꟃ' => 'ꟃ', 'Ꞔ' => 'ꞔ', 'Ʂ' => 'ʂ', 'Ᶎ' => 'ᶎ', 'Ꟈ' => 'ꟈ', 'Ꟊ' => 'ꟊ', 'Ꟶ' => 'ꟶ', 'A' => 'a', 'B' => 'b', 'C' => 'c', 'D' => 'd', 'E' => 'e', 'F' => 'f', 'G' => 'g', 'H' => 'h', 'I' => 'i', 'J' => 'j', 'K' => 'k', 'L' => 'l', 'M' => 'm', 'N' => 'n', 'O' => 'o', 'P' => 'p', 'Q' => 'q', 'R' => 'r', 'S' => 's', 'T' => 't', 'U' => 'u', 'V' => 'v', 'W' => 'w', 'X' => 'x', 'Y' => 'y', 'Z' => 'z', '𐐀' => '𐐨', '𐐁' => '𐐩', '𐐂' => '𐐪', '𐐃' => '𐐫', '𐐄' => '𐐬', '𐐅' => '𐐭', '𐐆' => '𐐮', '𐐇' => '𐐯', '𐐈' => '𐐰', '𐐉' => '𐐱', '𐐊' => '𐐲', '𐐋' => '𐐳', '𐐌' => '𐐴', '𐐍' => '𐐵', '𐐎' => '𐐶', '𐐏' => '𐐷', '𐐐' => '𐐸', '𐐑' => '𐐹', '𐐒' => '𐐺', '𐐓' => '𐐻', '𐐔' => '𐐼', '𐐕' => '𐐽', '𐐖' => '𐐾', '𐐗' => '𐐿', '𐐘' => '𐑀', '𐐙' => '𐑁', '𐐚' => '𐑂', '𐐛' => '𐑃', '𐐜' => '𐑄', '𐐝' => '𐑅', '𐐞' => '𐑆', '𐐟' => '𐑇', '𐐠' => '𐑈', '𐐡' => '𐑉', '𐐢' => '𐑊', '𐐣' => '𐑋', '𐐤' => '𐑌', '𐐥' => '𐑍', '𐐦' => '𐑎', '𐐧' => '𐑏', '𐒰' => '𐓘', '𐒱' => '𐓙', '𐒲' => '𐓚', '𐒳' => '𐓛', '𐒴' => '𐓜', '𐒵' => '𐓝', '𐒶' => '𐓞', '𐒷' => '𐓟', '𐒸' => '𐓠', '𐒹' => '𐓡', '𐒺' => '𐓢', '𐒻' => '𐓣', '𐒼' => '𐓤', '𐒽' => '𐓥', '𐒾' => '𐓦', '𐒿' => '𐓧', '𐓀' => '𐓨', '𐓁' => '𐓩', '𐓂' => '𐓪', '𐓃' => '𐓫', '𐓄' => '𐓬', '𐓅' => '𐓭', '𐓆' => '𐓮', '𐓇' => '𐓯', '𐓈' => '𐓰', '𐓉' => '𐓱', '𐓊' => '𐓲', '𐓋' => '𐓳', '𐓌' => '𐓴', '𐓍' => '𐓵', '𐓎' => '𐓶', '𐓏' => '𐓷', '𐓐' => '𐓸', '𐓑' => '𐓹', '𐓒' => '𐓺', '𐓓' => '𐓻', '𐲀' => '𐳀', '𐲁' => '𐳁', '𐲂' => '𐳂', '𐲃' => '𐳃', '𐲄' => '𐳄', '𐲅' => '𐳅', '𐲆' => '𐳆', '𐲇' => '𐳇', '𐲈' => '𐳈', '𐲉' => '𐳉', '𐲊' => '𐳊', '𐲋' => '𐳋', '𐲌' => '𐳌', '𐲍' => '𐳍', '𐲎' => '𐳎', '𐲏' => '𐳏', '𐲐' => '𐳐', '𐲑' => '𐳑', '𐲒' => '𐳒', '𐲓' => '𐳓', '𐲔' => '𐳔', '𐲕' => '𐳕', '𐲖' => '𐳖', '𐲗' => '𐳗', '𐲘' => '𐳘', '𐲙' => '𐳙', '𐲚' => '𐳚', '𐲛' => '𐳛', '𐲜' => '𐳜', '𐲝' => '𐳝', '𐲞' => '𐳞', '𐲟' => '𐳟', '𐲠' => '𐳠', '𐲡' => '𐳡', '𐲢' => '𐳢', '𐲣' => '𐳣', '𐲤' => '𐳤', '𐲥' => '𐳥', '𐲦' => '𐳦', '𐲧' => '𐳧', '𐲨' => '𐳨', '𐲩' => '𐳩', '𐲪' => '𐳪', '𐲫' => '𐳫', '𐲬' => '𐳬', '𐲭' => '𐳭', '𐲮' => '𐳮', '𐲯' => '𐳯', '𐲰' => '𐳰', '𐲱' => '𐳱', '𐲲' => '𐳲', '𑢠' => '𑣀', '𑢡' => '𑣁', '𑢢' => '𑣂', '𑢣' => '𑣃', '𑢤' => '𑣄', '𑢥' => '𑣅', '𑢦' => '𑣆', '𑢧' => '𑣇', '𑢨' => '𑣈', '𑢩' => '𑣉', '𑢪' => '𑣊', '𑢫' => '𑣋', '𑢬' => '𑣌', '𑢭' => '𑣍', '𑢮' => '𑣎', '𑢯' => '𑣏', '𑢰' => '𑣐', '𑢱' => '𑣑', '𑢲' => '𑣒', '𑢳' => '𑣓', '𑢴' => '𑣔', '𑢵' => '𑣕', '𑢶' => '𑣖', '𑢷' => '𑣗', '𑢸' => '𑣘', '𑢹' => '𑣙', '𑢺' => '𑣚', '𑢻' => '𑣛', '𑢼' => '𑣜', '𑢽' => '𑣝', '𑢾' => '𑣞', '𑢿' => '𑣟', '𖹀' => '𖹠', '𖹁' => '𖹡', '𖹂' => '𖹢', '𖹃' => '𖹣', '𖹄' => '𖹤', '𖹅' => '𖹥', '𖹆' => '𖹦', '𖹇' => '𖹧', '𖹈' => '𖹨', '𖹉' => '𖹩', '𖹊' => '𖹪', '𖹋' => '𖹫', '𖹌' => '𖹬', '𖹍' => '𖹭', '𖹎' => '𖹮', '𖹏' => '𖹯', '𖹐' => '𖹰', '𖹑' => '𖹱', '𖹒' => '𖹲', '𖹓' => '𖹳', '𖹔' => '𖹴', '𖹕' => '𖹵', '𖹖' => '𖹶', '𖹗' => '𖹷', '𖹘' => '𖹸', '𖹙' => '𖹹', '𖹚' => '𖹺', '𖹛' => '𖹻', '𖹜' => '𖹼', '𖹝' => '𖹽', '𖹞' => '𖹾', '𖹟' => '𖹿', '𞤀' => '𞤢', '𞤁' => '𞤣', '𞤂' => '𞤤', '𞤃' => '𞤥', '𞤄' => '𞤦', '𞤅' => '𞤧', '𞤆' => '𞤨', '𞤇' => '𞤩', '𞤈' => '𞤪', '𞤉' => '𞤫', '𞤊' => '𞤬', '𞤋' => '𞤭', '𞤌' => '𞤮', '𞤍' => '𞤯', '𞤎' => '𞤰', '𞤏' => '𞤱', '𞤐' => '𞤲', '𞤑' => '𞤳', '𞤒' => '𞤴', '𞤓' => '𞤵', '𞤔' => '𞤶', '𞤕' => '𞤷', '𞤖' => '𞤸', '𞤗' => '𞤹', '𞤘' => '𞤺', '𞤙' => '𞤻', '𞤚' => '𞤼', '𞤛' => '𞤽', '𞤜' => '𞤾', '𞤝' => '𞤿', '𞤞' => '𞥀', '𞤟' => '𞥁', '𞤠' => '𞥂', '𞤡' => '𞥃'); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/upperCase.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/upperCase.php index 489fec3c..32dd42e4 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/upperCase.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/Resources/unidata/upperCase.php @@ -2,4 +2,4 @@ namespace WPMailSMTP\Vendor; -return array('a' => 'A', 'b' => 'B', 'c' => 'C', 'd' => 'D', 'e' => 'E', 'f' => 'F', 'g' => 'G', 'h' => 'H', 'i' => 'I', 'j' => 'J', 'k' => 'K', 'l' => 'L', 'm' => 'M', 'n' => 'N', 'o' => 'O', 'p' => 'P', 'q' => 'Q', 'r' => 'R', 's' => 'S', 't' => 'T', 'u' => 'U', 'v' => 'V', 'w' => 'W', 'x' => 'X', 'y' => 'Y', 'z' => 'Z', 'µ' => 'Μ', 'à' => 'À', 'á' => 'Á', 'â' => 'Â', 'ã' => 'Ã', 'ä' => 'Ä', 'å' => 'Å', 'æ' => 'Æ', 'ç' => 'Ç', 'è' => 'È', 'é' => 'É', 'ê' => 'Ê', 'ë' => 'Ë', 'ì' => 'Ì', 'í' => 'Í', 'î' => 'Î', 'ï' => 'Ï', 'ð' => 'Ð', 'ñ' => 'Ñ', 'ò' => 'Ò', 'ó' => 'Ó', 'ô' => 'Ô', 'õ' => 'Õ', 'ö' => 'Ö', 'ø' => 'Ø', 'ù' => 'Ù', 'ú' => 'Ú', 'û' => 'Û', 'ü' => 'Ü', 'ý' => 'Ý', 'þ' => 'Þ', 'ÿ' => 'Ÿ', 'ā' => 'Ā', 'ă' => 'Ă', 'ą' => 'Ą', 'ć' => 'Ć', 'ĉ' => 'Ĉ', 'ċ' => 'Ċ', 'č' => 'Č', 'ď' => 'Ď', 'đ' => 'Đ', 'ē' => 'Ē', 'ĕ' => 'Ĕ', 'ė' => 'Ė', 'ę' => 'Ę', 'ě' => 'Ě', 'ĝ' => 'Ĝ', 'ğ' => 'Ğ', 'ġ' => 'Ġ', 'ģ' => 'Ģ', 'ĥ' => 'Ĥ', 'ħ' => 'Ħ', 'ĩ' => 'Ĩ', 'ī' => 'Ī', 'ĭ' => 'Ĭ', 'į' => 'Į', 'ı' => 'I', 'ij' => 'IJ', 'ĵ' => 'Ĵ', 'ķ' => 'Ķ', 'ĺ' => 'Ĺ', 'ļ' => 'Ļ', 'ľ' => 'Ľ', 'ŀ' => 'Ŀ', 'ł' => 'Ł', 'ń' => 'Ń', 'ņ' => 'Ņ', 'ň' => 'Ň', 'ŋ' => 'Ŋ', 'ō' => 'Ō', 'ŏ' => 'Ŏ', 'ő' => 'Ő', 'œ' => 'Œ', 'ŕ' => 'Ŕ', 'ŗ' => 'Ŗ', 'ř' => 'Ř', 'ś' => 'Ś', 'ŝ' => 'Ŝ', 'ş' => 'Ş', 'š' => 'Š', 'ţ' => 'Ţ', 'ť' => 'Ť', 'ŧ' => 'Ŧ', 'ũ' => 'Ũ', 'ū' => 'Ū', 'ŭ' => 'Ŭ', 'ů' => 'Ů', 'ű' => 'Ű', 'ų' => 'Ų', 'ŵ' => 'Ŵ', 'ŷ' => 'Ŷ', 'ź' => 'Ź', 'ż' => 'Ż', 'ž' => 'Ž', 'ſ' => 'S', 'ƀ' => 'Ƀ', 'ƃ' => 'Ƃ', 'ƅ' => 'Ƅ', 'ƈ' => 'Ƈ', 'ƌ' => 'Ƌ', 'ƒ' => 'Ƒ', 'ƕ' => 'Ƕ', 'ƙ' => 'Ƙ', 'ƚ' => 'Ƚ', 'ƞ' => 'Ƞ', 'ơ' => 'Ơ', 'ƣ' => 'Ƣ', 'ƥ' => 'Ƥ', 'ƨ' => 'Ƨ', 'ƭ' => 'Ƭ', 'ư' => 'Ư', 'ƴ' => 'Ƴ', 'ƶ' => 'Ƶ', 'ƹ' => 'Ƹ', 'ƽ' => 'Ƽ', 'ƿ' => 'Ƿ', 'Dž' => 'DŽ', 'dž' => 'DŽ', 'Lj' => 'LJ', 'lj' => 'LJ', 'Nj' => 'NJ', 'nj' => 'NJ', 'ǎ' => 'Ǎ', 'ǐ' => 'Ǐ', 'ǒ' => 'Ǒ', 'ǔ' => 'Ǔ', 'ǖ' => 'Ǖ', 'ǘ' => 'Ǘ', 'ǚ' => 'Ǚ', 'ǜ' => 'Ǜ', 'ǝ' => 'Ǝ', 'ǟ' => 'Ǟ', 'ǡ' => 'Ǡ', 'ǣ' => 'Ǣ', 'ǥ' => 'Ǥ', 'ǧ' => 'Ǧ', 'ǩ' => 'Ǩ', 'ǫ' => 'Ǫ', 'ǭ' => 'Ǭ', 'ǯ' => 'Ǯ', 'Dz' => 'DZ', 'dz' => 'DZ', 'ǵ' => 'Ǵ', 'ǹ' => 'Ǹ', 'ǻ' => 'Ǻ', 'ǽ' => 'Ǽ', 'ǿ' => 'Ǿ', 'ȁ' => 'Ȁ', 'ȃ' => 'Ȃ', 'ȅ' => 'Ȅ', 'ȇ' => 'Ȇ', 'ȉ' => 'Ȉ', 'ȋ' => 'Ȋ', 'ȍ' => 'Ȍ', 'ȏ' => 'Ȏ', 'ȑ' => 'Ȑ', 'ȓ' => 'Ȓ', 'ȕ' => 'Ȕ', 'ȗ' => 'Ȗ', 'ș' => 'Ș', 'ț' => 'Ț', 'ȝ' => 'Ȝ', 'ȟ' => 'Ȟ', 'ȣ' => 'Ȣ', 'ȥ' => 'Ȥ', 'ȧ' => 'Ȧ', 'ȩ' => 'Ȩ', 'ȫ' => 'Ȫ', 'ȭ' => 'Ȭ', 'ȯ' => 'Ȯ', 'ȱ' => 'Ȱ', 'ȳ' => 'Ȳ', 'ȼ' => 'Ȼ', 'ȿ' => 'Ȿ', 'ɀ' => 'Ɀ', 'ɂ' => 'Ɂ', 'ɇ' => 'Ɇ', 'ɉ' => 'Ɉ', 'ɋ' => 'Ɋ', 'ɍ' => 'Ɍ', 'ɏ' => 'Ɏ', 'ɐ' => 'Ɐ', 'ɑ' => 'Ɑ', 'ɒ' => 'Ɒ', 'ɓ' => 'Ɓ', 'ɔ' => 'Ɔ', 'ɖ' => 'Ɖ', 'ɗ' => 'Ɗ', 'ə' => 'Ə', 'ɛ' => 'Ɛ', 'ɜ' => 'Ɜ', 'ɠ' => 'Ɠ', 'ɡ' => 'Ɡ', 'ɣ' => 'Ɣ', 'ɥ' => 'Ɥ', 'ɦ' => 'Ɦ', 'ɨ' => 'Ɨ', 'ɩ' => 'Ɩ', 'ɪ' => 'Ɪ', 'ɫ' => 'Ɫ', 'ɬ' => 'Ɬ', 'ɯ' => 'Ɯ', 'ɱ' => 'Ɱ', 'ɲ' => 'Ɲ', 'ɵ' => 'Ɵ', 'ɽ' => 'Ɽ', 'ʀ' => 'Ʀ', 'ʂ' => 'Ʂ', 'ʃ' => 'Ʃ', 'ʇ' => 'Ʇ', 'ʈ' => 'Ʈ', 'ʉ' => 'Ʉ', 'ʊ' => 'Ʊ', 'ʋ' => 'Ʋ', 'ʌ' => 'Ʌ', 'ʒ' => 'Ʒ', 'ʝ' => 'Ʝ', 'ʞ' => 'Ʞ', 'ͅ' => 'Ι', 'ͱ' => 'Ͱ', 'ͳ' => 'Ͳ', 'ͷ' => 'Ͷ', 'ͻ' => 'Ͻ', 'ͼ' => 'Ͼ', 'ͽ' => 'Ͽ', 'ά' => 'Ά', 'έ' => 'Έ', 'ή' => 'Ή', 'ί' => 'Ί', 'α' => 'Α', 'β' => 'Β', 'γ' => 'Γ', 'δ' => 'Δ', 'ε' => 'Ε', 'ζ' => 'Ζ', 'η' => 'Η', 'θ' => 'Θ', 'ι' => 'Ι', 'κ' => 'Κ', 'λ' => 'Λ', 'μ' => 'Μ', 'ν' => 'Ν', 'ξ' => 'Ξ', 'ο' => 'Ο', 'π' => 'Π', 'ρ' => 'Ρ', 'ς' => 'Σ', 'σ' => 'Σ', 'τ' => 'Τ', 'υ' => 'Υ', 'φ' => 'Φ', 'χ' => 'Χ', 'ψ' => 'Ψ', 'ω' => 'Ω', 'ϊ' => 'Ϊ', 'ϋ' => 'Ϋ', 'ό' => 'Ό', 'ύ' => 'Ύ', 'ώ' => 'Ώ', 'ϐ' => 'Β', 'ϑ' => 'Θ', 'ϕ' => 'Φ', 'ϖ' => 'Π', 'ϗ' => 'Ϗ', 'ϙ' => 'Ϙ', 'ϛ' => 'Ϛ', 'ϝ' => 'Ϝ', 'ϟ' => 'Ϟ', 'ϡ' => 'Ϡ', 'ϣ' => 'Ϣ', 'ϥ' => 'Ϥ', 'ϧ' => 'Ϧ', 'ϩ' => 'Ϩ', 'ϫ' => 'Ϫ', 'ϭ' => 'Ϭ', 'ϯ' => 'Ϯ', 'ϰ' => 'Κ', 'ϱ' => 'Ρ', 'ϲ' => 'Ϲ', 'ϳ' => 'Ϳ', 'ϵ' => 'Ε', 'ϸ' => 'Ϸ', 'ϻ' => 'Ϻ', 'а' => 'А', 'б' => 'Б', 'в' => 'В', 'г' => 'Г', 'д' => 'Д', 'е' => 'Е', 'ж' => 'Ж', 'з' => 'З', 'и' => 'И', 'й' => 'Й', 'к' => 'К', 'л' => 'Л', 'м' => 'М', 'н' => 'Н', 'о' => 'О', 'п' => 'П', 'р' => 'Р', 'с' => 'С', 'т' => 'Т', 'у' => 'У', 'ф' => 'Ф', 'х' => 'Х', 'ц' => 'Ц', 'ч' => 'Ч', 'ш' => 'Ш', 'щ' => 'Щ', 'ъ' => 'Ъ', 'ы' => 'Ы', 'ь' => 'Ь', 'э' => 'Э', 'ю' => 'Ю', 'я' => 'Я', 'ѐ' => 'Ѐ', 'ё' => 'Ё', 'ђ' => 'Ђ', 'ѓ' => 'Ѓ', 'є' => 'Є', 'ѕ' => 'Ѕ', 'і' => 'І', 'ї' => 'Ї', 'ј' => 'Ј', 'љ' => 'Љ', 'њ' => 'Њ', 'ћ' => 'Ћ', 'ќ' => 'Ќ', 'ѝ' => 'Ѝ', 'ў' => 'Ў', 'џ' => 'Џ', 'ѡ' => 'Ѡ', 'ѣ' => 'Ѣ', 'ѥ' => 'Ѥ', 'ѧ' => 'Ѧ', 'ѩ' => 'Ѩ', 'ѫ' => 'Ѫ', 'ѭ' => 'Ѭ', 'ѯ' => 'Ѯ', 'ѱ' => 'Ѱ', 'ѳ' => 'Ѳ', 'ѵ' => 'Ѵ', 'ѷ' => 'Ѷ', 'ѹ' => 'Ѹ', 'ѻ' => 'Ѻ', 'ѽ' => 'Ѽ', 'ѿ' => 'Ѿ', 'ҁ' => 'Ҁ', 'ҋ' => 'Ҋ', 'ҍ' => 'Ҍ', 'ҏ' => 'Ҏ', 'ґ' => 'Ґ', 'ғ' => 'Ғ', 'ҕ' => 'Ҕ', 'җ' => 'Җ', 'ҙ' => 'Ҙ', 'қ' => 'Қ', 'ҝ' => 'Ҝ', 'ҟ' => 'Ҟ', 'ҡ' => 'Ҡ', 'ң' => 'Ң', 'ҥ' => 'Ҥ', 'ҧ' => 'Ҧ', 'ҩ' => 'Ҩ', 'ҫ' => 'Ҫ', 'ҭ' => 'Ҭ', 'ү' => 'Ү', 'ұ' => 'Ұ', 'ҳ' => 'Ҳ', 'ҵ' => 'Ҵ', 'ҷ' => 'Ҷ', 'ҹ' => 'Ҹ', 'һ' => 'Һ', 'ҽ' => 'Ҽ', 'ҿ' => 'Ҿ', 'ӂ' => 'Ӂ', 'ӄ' => 'Ӄ', 'ӆ' => 'Ӆ', 'ӈ' => 'Ӈ', 'ӊ' => 'Ӊ', 'ӌ' => 'Ӌ', 'ӎ' => 'Ӎ', 'ӏ' => 'Ӏ', 'ӑ' => 'Ӑ', 'ӓ' => 'Ӓ', 'ӕ' => 'Ӕ', 'ӗ' => 'Ӗ', 'ә' => 'Ә', 'ӛ' => 'Ӛ', 'ӝ' => 'Ӝ', 'ӟ' => 'Ӟ', 'ӡ' => 'Ӡ', 'ӣ' => 'Ӣ', 'ӥ' => 'Ӥ', 'ӧ' => 'Ӧ', 'ө' => 'Ө', 'ӫ' => 'Ӫ', 'ӭ' => 'Ӭ', 'ӯ' => 'Ӯ', 'ӱ' => 'Ӱ', 'ӳ' => 'Ӳ', 'ӵ' => 'Ӵ', 'ӷ' => 'Ӷ', 'ӹ' => 'Ӹ', 'ӻ' => 'Ӻ', 'ӽ' => 'Ӽ', 'ӿ' => 'Ӿ', 'ԁ' => 'Ԁ', 'ԃ' => 'Ԃ', 'ԅ' => 'Ԅ', 'ԇ' => 'Ԇ', 'ԉ' => 'Ԉ', 'ԋ' => 'Ԋ', 'ԍ' => 'Ԍ', 'ԏ' => 'Ԏ', 'ԑ' => 'Ԑ', 'ԓ' => 'Ԓ', 'ԕ' => 'Ԕ', 'ԗ' => 'Ԗ', 'ԙ' => 'Ԙ', 'ԛ' => 'Ԛ', 'ԝ' => 'Ԝ', 'ԟ' => 'Ԟ', 'ԡ' => 'Ԡ', 'ԣ' => 'Ԣ', 'ԥ' => 'Ԥ', 'ԧ' => 'Ԧ', 'ԩ' => 'Ԩ', 'ԫ' => 'Ԫ', 'ԭ' => 'Ԭ', 'ԯ' => 'Ԯ', 'ա' => 'Ա', 'բ' => 'Բ', 'գ' => 'Գ', 'դ' => 'Դ', 'ե' => 'Ե', 'զ' => 'Զ', 'է' => 'Է', 'ը' => 'Ը', 'թ' => 'Թ', 'ժ' => 'Ժ', 'ի' => 'Ի', 'լ' => 'Լ', 'խ' => 'Խ', 'ծ' => 'Ծ', 'կ' => 'Կ', 'հ' => 'Հ', 'ձ' => 'Ձ', 'ղ' => 'Ղ', 'ճ' => 'Ճ', 'մ' => 'Մ', 'յ' => 'Յ', 'ն' => 'Ն', 'շ' => 'Շ', 'ո' => 'Ո', 'չ' => 'Չ', 'պ' => 'Պ', 'ջ' => 'Ջ', 'ռ' => 'Ռ', 'ս' => 'Ս', 'վ' => 'Վ', 'տ' => 'Տ', 'ր' => 'Ր', 'ց' => 'Ց', 'ւ' => 'Ւ', 'փ' => 'Փ', 'ք' => 'Ք', 'օ' => 'Օ', 'ֆ' => 'Ֆ', 'ა' => 'Ა', 'ბ' => 'Ბ', 'გ' => 'Გ', 'დ' => 'Დ', 'ე' => 'Ე', 'ვ' => 'Ვ', 'ზ' => 'Ზ', 'თ' => 'Თ', 'ი' => 'Ი', 'კ' => 'Კ', 'ლ' => 'Ლ', 'მ' => 'Მ', 'ნ' => 'Ნ', 'ო' => 'Ო', 'პ' => 'Პ', 'ჟ' => 'Ჟ', 'რ' => 'Რ', 'ს' => 'Ს', 'ტ' => 'Ტ', 'უ' => 'Უ', 'ფ' => 'Ფ', 'ქ' => 'Ქ', 'ღ' => 'Ღ', 'ყ' => 'Ყ', 'შ' => 'Შ', 'ჩ' => 'Ჩ', 'ც' => 'Ც', 'ძ' => 'Ძ', 'წ' => 'Წ', 'ჭ' => 'Ჭ', 'ხ' => 'Ხ', 'ჯ' => 'Ჯ', 'ჰ' => 'Ჰ', 'ჱ' => 'Ჱ', 'ჲ' => 'Ჲ', 'ჳ' => 'Ჳ', 'ჴ' => 'Ჴ', 'ჵ' => 'Ჵ', 'ჶ' => 'Ჶ', 'ჷ' => 'Ჷ', 'ჸ' => 'Ჸ', 'ჹ' => 'Ჹ', 'ჺ' => 'Ჺ', 'ჽ' => 'Ჽ', 'ჾ' => 'Ჾ', 'ჿ' => 'Ჿ', 'ᏸ' => 'Ᏸ', 'ᏹ' => 'Ᏹ', 'ᏺ' => 'Ᏺ', 'ᏻ' => 'Ᏻ', 'ᏼ' => 'Ᏼ', 'ᏽ' => 'Ᏽ', 'ᲀ' => 'В', 'ᲁ' => 'Д', 'ᲂ' => 'О', 'ᲃ' => 'С', 'ᲄ' => 'Т', 'ᲅ' => 'Т', 'ᲆ' => 'Ъ', 'ᲇ' => 'Ѣ', 'ᲈ' => 'Ꙋ', 'ᵹ' => 'Ᵹ', 'ᵽ' => 'Ᵽ', 'ᶎ' => 'Ᶎ', 'ḁ' => 'Ḁ', 'ḃ' => 'Ḃ', 'ḅ' => 'Ḅ', 'ḇ' => 'Ḇ', 'ḉ' => 'Ḉ', 'ḋ' => 'Ḋ', 'ḍ' => 'Ḍ', 'ḏ' => 'Ḏ', 'ḑ' => 'Ḑ', 'ḓ' => 'Ḓ', 'ḕ' => 'Ḕ', 'ḗ' => 'Ḗ', 'ḙ' => 'Ḙ', 'ḛ' => 'Ḛ', 'ḝ' => 'Ḝ', 'ḟ' => 'Ḟ', 'ḡ' => 'Ḡ', 'ḣ' => 'Ḣ', 'ḥ' => 'Ḥ', 'ḧ' => 'Ḧ', 'ḩ' => 'Ḩ', 'ḫ' => 'Ḫ', 'ḭ' => 'Ḭ', 'ḯ' => 'Ḯ', 'ḱ' => 'Ḱ', 'ḳ' => 'Ḳ', 'ḵ' => 'Ḵ', 'ḷ' => 'Ḷ', 'ḹ' => 'Ḹ', 'ḻ' => 'Ḻ', 'ḽ' => 'Ḽ', 'ḿ' => 'Ḿ', 'ṁ' => 'Ṁ', 'ṃ' => 'Ṃ', 'ṅ' => 'Ṅ', 'ṇ' => 'Ṇ', 'ṉ' => 'Ṉ', 'ṋ' => 'Ṋ', 'ṍ' => 'Ṍ', 'ṏ' => 'Ṏ', 'ṑ' => 'Ṑ', 'ṓ' => 'Ṓ', 'ṕ' => 'Ṕ', 'ṗ' => 'Ṗ', 'ṙ' => 'Ṙ', 'ṛ' => 'Ṛ', 'ṝ' => 'Ṝ', 'ṟ' => 'Ṟ', 'ṡ' => 'Ṡ', 'ṣ' => 'Ṣ', 'ṥ' => 'Ṥ', 'ṧ' => 'Ṧ', 'ṩ' => 'Ṩ', 'ṫ' => 'Ṫ', 'ṭ' => 'Ṭ', 'ṯ' => 'Ṯ', 'ṱ' => 'Ṱ', 'ṳ' => 'Ṳ', 'ṵ' => 'Ṵ', 'ṷ' => 'Ṷ', 'ṹ' => 'Ṹ', 'ṻ' => 'Ṻ', 'ṽ' => 'Ṽ', 'ṿ' => 'Ṿ', 'ẁ' => 'Ẁ', 'ẃ' => 'Ẃ', 'ẅ' => 'Ẅ', 'ẇ' => 'Ẇ', 'ẉ' => 'Ẉ', 'ẋ' => 'Ẋ', 'ẍ' => 'Ẍ', 'ẏ' => 'Ẏ', 'ẑ' => 'Ẑ', 'ẓ' => 'Ẓ', 'ẕ' => 'Ẕ', 'ẛ' => 'Ṡ', 'ạ' => 'Ạ', 'ả' => 'Ả', 'ấ' => 'Ấ', 'ầ' => 'Ầ', 'ẩ' => 'Ẩ', 'ẫ' => 'Ẫ', 'ậ' => 'Ậ', 'ắ' => 'Ắ', 'ằ' => 'Ằ', 'ẳ' => 'Ẳ', 'ẵ' => 'Ẵ', 'ặ' => 'Ặ', 'ẹ' => 'Ẹ', 'ẻ' => 'Ẻ', 'ẽ' => 'Ẽ', 'ế' => 'Ế', 'ề' => 'Ề', 'ể' => 'Ể', 'ễ' => 'Ễ', 'ệ' => 'Ệ', 'ỉ' => 'Ỉ', 'ị' => 'Ị', 'ọ' => 'Ọ', 'ỏ' => 'Ỏ', 'ố' => 'Ố', 'ồ' => 'Ồ', 'ổ' => 'Ổ', 'ỗ' => 'Ỗ', 'ộ' => 'Ộ', 'ớ' => 'Ớ', 'ờ' => 'Ờ', 'ở' => 'Ở', 'ỡ' => 'Ỡ', 'ợ' => 'Ợ', 'ụ' => 'Ụ', 'ủ' => 'Ủ', 'ứ' => 'Ứ', 'ừ' => 'Ừ', 'ử' => 'Ử', 'ữ' => 'Ữ', 'ự' => 'Ự', 'ỳ' => 'Ỳ', 'ỵ' => 'Ỵ', 'ỷ' => 'Ỷ', 'ỹ' => 'Ỹ', 'ỻ' => 'Ỻ', 'ỽ' => 'Ỽ', 'ỿ' => 'Ỿ', 'ἀ' => 'Ἀ', 'ἁ' => 'Ἁ', 'ἂ' => 'Ἂ', 'ἃ' => 'Ἃ', 'ἄ' => 'Ἄ', 'ἅ' => 'Ἅ', 'ἆ' => 'Ἆ', 'ἇ' => 'Ἇ', 'ἐ' => 'Ἐ', 'ἑ' => 'Ἑ', 'ἒ' => 'Ἒ', 'ἓ' => 'Ἓ', 'ἔ' => 'Ἔ', 'ἕ' => 'Ἕ', 'ἠ' => 'Ἠ', 'ἡ' => 'Ἡ', 'ἢ' => 'Ἢ', 'ἣ' => 'Ἣ', 'ἤ' => 'Ἤ', 'ἥ' => 'Ἥ', 'ἦ' => 'Ἦ', 'ἧ' => 'Ἧ', 'ἰ' => 'Ἰ', 'ἱ' => 'Ἱ', 'ἲ' => 'Ἲ', 'ἳ' => 'Ἳ', 'ἴ' => 'Ἴ', 'ἵ' => 'Ἵ', 'ἶ' => 'Ἶ', 'ἷ' => 'Ἷ', 'ὀ' => 'Ὀ', 'ὁ' => 'Ὁ', 'ὂ' => 'Ὂ', 'ὃ' => 'Ὃ', 'ὄ' => 'Ὄ', 'ὅ' => 'Ὅ', 'ὑ' => 'Ὑ', 'ὓ' => 'Ὓ', 'ὕ' => 'Ὕ', 'ὗ' => 'Ὗ', 'ὠ' => 'Ὠ', 'ὡ' => 'Ὡ', 'ὢ' => 'Ὢ', 'ὣ' => 'Ὣ', 'ὤ' => 'Ὤ', 'ὥ' => 'Ὥ', 'ὦ' => 'Ὦ', 'ὧ' => 'Ὧ', 'ὰ' => 'Ὰ', 'ά' => 'Ά', 'ὲ' => 'Ὲ', 'έ' => 'Έ', 'ὴ' => 'Ὴ', 'ή' => 'Ή', 'ὶ' => 'Ὶ', 'ί' => 'Ί', 'ὸ' => 'Ὸ', 'ό' => 'Ό', 'ὺ' => 'Ὺ', 'ύ' => 'Ύ', 'ὼ' => 'Ὼ', 'ώ' => 'Ώ', 'ᾀ' => 'ᾈ', 'ᾁ' => 'ᾉ', 'ᾂ' => 'ᾊ', 'ᾃ' => 'ᾋ', 'ᾄ' => 'ᾌ', 'ᾅ' => 'ᾍ', 'ᾆ' => 'ᾎ', 'ᾇ' => 'ᾏ', 'ᾐ' => 'ᾘ', 'ᾑ' => 'ᾙ', 'ᾒ' => 'ᾚ', 'ᾓ' => 'ᾛ', 'ᾔ' => 'ᾜ', 'ᾕ' => 'ᾝ', 'ᾖ' => 'ᾞ', 'ᾗ' => 'ᾟ', 'ᾠ' => 'ᾨ', 'ᾡ' => 'ᾩ', 'ᾢ' => 'ᾪ', 'ᾣ' => 'ᾫ', 'ᾤ' => 'ᾬ', 'ᾥ' => 'ᾭ', 'ᾦ' => 'ᾮ', 'ᾧ' => 'ᾯ', 'ᾰ' => 'Ᾰ', 'ᾱ' => 'Ᾱ', 'ᾳ' => 'ᾼ', 'ι' => 'Ι', 'ῃ' => 'ῌ', 'ῐ' => 'Ῐ', 'ῑ' => 'Ῑ', 'ῠ' => 'Ῠ', 'ῡ' => 'Ῡ', 'ῥ' => 'Ῥ', 'ῳ' => 'ῼ', 'ⅎ' => 'Ⅎ', 'ⅰ' => 'Ⅰ', 'ⅱ' => 'Ⅱ', 'ⅲ' => 'Ⅲ', 'ⅳ' => 'Ⅳ', 'ⅴ' => 'Ⅴ', 'ⅵ' => 'Ⅵ', 'ⅶ' => 'Ⅶ', 'ⅷ' => 'Ⅷ', 'ⅸ' => 'Ⅸ', 'ⅹ' => 'Ⅹ', 'ⅺ' => 'Ⅺ', 'ⅻ' => 'Ⅻ', 'ⅼ' => 'Ⅼ', 'ⅽ' => 'Ⅽ', 'ⅾ' => 'Ⅾ', 'ⅿ' => 'Ⅿ', 'ↄ' => 'Ↄ', 'ⓐ' => 'Ⓐ', 'ⓑ' => 'Ⓑ', 'ⓒ' => 'Ⓒ', 'ⓓ' => 'Ⓓ', 'ⓔ' => 'Ⓔ', 'ⓕ' => 'Ⓕ', 'ⓖ' => 'Ⓖ', 'ⓗ' => 'Ⓗ', 'ⓘ' => 'Ⓘ', 'ⓙ' => 'Ⓙ', 'ⓚ' => 'Ⓚ', 'ⓛ' => 'Ⓛ', 'ⓜ' => 'Ⓜ', 'ⓝ' => 'Ⓝ', 'ⓞ' => 'Ⓞ', 'ⓟ' => 'Ⓟ', 'ⓠ' => 'Ⓠ', 'ⓡ' => 'Ⓡ', 'ⓢ' => 'Ⓢ', 'ⓣ' => 'Ⓣ', 'ⓤ' => 'Ⓤ', 'ⓥ' => 'Ⓥ', 'ⓦ' => 'Ⓦ', 'ⓧ' => 'Ⓧ', 'ⓨ' => 'Ⓨ', 'ⓩ' => 'Ⓩ', 'ⰰ' => 'Ⰰ', 'ⰱ' => 'Ⰱ', 'ⰲ' => 'Ⰲ', 'ⰳ' => 'Ⰳ', 'ⰴ' => 'Ⰴ', 'ⰵ' => 'Ⰵ', 'ⰶ' => 'Ⰶ', 'ⰷ' => 'Ⰷ', 'ⰸ' => 'Ⰸ', 'ⰹ' => 'Ⰹ', 'ⰺ' => 'Ⰺ', 'ⰻ' => 'Ⰻ', 'ⰼ' => 'Ⰼ', 'ⰽ' => 'Ⰽ', 'ⰾ' => 'Ⰾ', 'ⰿ' => 'Ⰿ', 'ⱀ' => 'Ⱀ', 'ⱁ' => 'Ⱁ', 'ⱂ' => 'Ⱂ', 'ⱃ' => 'Ⱃ', 'ⱄ' => 'Ⱄ', 'ⱅ' => 'Ⱅ', 'ⱆ' => 'Ⱆ', 'ⱇ' => 'Ⱇ', 'ⱈ' => 'Ⱈ', 'ⱉ' => 'Ⱉ', 'ⱊ' => 'Ⱊ', 'ⱋ' => 'Ⱋ', 'ⱌ' => 'Ⱌ', 'ⱍ' => 'Ⱍ', 'ⱎ' => 'Ⱎ', 'ⱏ' => 'Ⱏ', 'ⱐ' => 'Ⱐ', 'ⱑ' => 'Ⱑ', 'ⱒ' => 'Ⱒ', 'ⱓ' => 'Ⱓ', 'ⱔ' => 'Ⱔ', 'ⱕ' => 'Ⱕ', 'ⱖ' => 'Ⱖ', 'ⱗ' => 'Ⱗ', 'ⱘ' => 'Ⱘ', 'ⱙ' => 'Ⱙ', 'ⱚ' => 'Ⱚ', 'ⱛ' => 'Ⱛ', 'ⱜ' => 'Ⱜ', 'ⱝ' => 'Ⱝ', 'ⱞ' => 'Ⱞ', 'ⱡ' => 'Ⱡ', 'ⱥ' => 'Ⱥ', 'ⱦ' => 'Ⱦ', 'ⱨ' => 'Ⱨ', 'ⱪ' => 'Ⱪ', 'ⱬ' => 'Ⱬ', 'ⱳ' => 'Ⱳ', 'ⱶ' => 'Ⱶ', 'ⲁ' => 'Ⲁ', 'ⲃ' => 'Ⲃ', 'ⲅ' => 'Ⲅ', 'ⲇ' => 'Ⲇ', 'ⲉ' => 'Ⲉ', 'ⲋ' => 'Ⲋ', 'ⲍ' => 'Ⲍ', 'ⲏ' => 'Ⲏ', 'ⲑ' => 'Ⲑ', 'ⲓ' => 'Ⲓ', 'ⲕ' => 'Ⲕ', 'ⲗ' => 'Ⲗ', 'ⲙ' => 'Ⲙ', 'ⲛ' => 'Ⲛ', 'ⲝ' => 'Ⲝ', 'ⲟ' => 'Ⲟ', 'ⲡ' => 'Ⲡ', 'ⲣ' => 'Ⲣ', 'ⲥ' => 'Ⲥ', 'ⲧ' => 'Ⲧ', 'ⲩ' => 'Ⲩ', 'ⲫ' => 'Ⲫ', 'ⲭ' => 'Ⲭ', 'ⲯ' => 'Ⲯ', 'ⲱ' => 'Ⲱ', 'ⲳ' => 'Ⲳ', 'ⲵ' => 'Ⲵ', 'ⲷ' => 'Ⲷ', 'ⲹ' => 'Ⲹ', 'ⲻ' => 'Ⲻ', 'ⲽ' => 'Ⲽ', 'ⲿ' => 'Ⲿ', 'ⳁ' => 'Ⳁ', 'ⳃ' => 'Ⳃ', 'ⳅ' => 'Ⳅ', 'ⳇ' => 'Ⳇ', 'ⳉ' => 'Ⳉ', 'ⳋ' => 'Ⳋ', 'ⳍ' => 'Ⳍ', 'ⳏ' => 'Ⳏ', 'ⳑ' => 'Ⳑ', 'ⳓ' => 'Ⳓ', 'ⳕ' => 'Ⳕ', 'ⳗ' => 'Ⳗ', 'ⳙ' => 'Ⳙ', 'ⳛ' => 'Ⳛ', 'ⳝ' => 'Ⳝ', 'ⳟ' => 'Ⳟ', 'ⳡ' => 'Ⳡ', 'ⳣ' => 'Ⳣ', 'ⳬ' => 'Ⳬ', 'ⳮ' => 'Ⳮ', 'ⳳ' => 'Ⳳ', 'ⴀ' => 'Ⴀ', 'ⴁ' => 'Ⴁ', 'ⴂ' => 'Ⴂ', 'ⴃ' => 'Ⴃ', 'ⴄ' => 'Ⴄ', 'ⴅ' => 'Ⴅ', 'ⴆ' => 'Ⴆ', 'ⴇ' => 'Ⴇ', 'ⴈ' => 'Ⴈ', 'ⴉ' => 'Ⴉ', 'ⴊ' => 'Ⴊ', 'ⴋ' => 'Ⴋ', 'ⴌ' => 'Ⴌ', 'ⴍ' => 'Ⴍ', 'ⴎ' => 'Ⴎ', 'ⴏ' => 'Ⴏ', 'ⴐ' => 'Ⴐ', 'ⴑ' => 'Ⴑ', 'ⴒ' => 'Ⴒ', 'ⴓ' => 'Ⴓ', 'ⴔ' => 'Ⴔ', 'ⴕ' => 'Ⴕ', 'ⴖ' => 'Ⴖ', 'ⴗ' => 'Ⴗ', 'ⴘ' => 'Ⴘ', 'ⴙ' => 'Ⴙ', 'ⴚ' => 'Ⴚ', 'ⴛ' => 'Ⴛ', 'ⴜ' => 'Ⴜ', 'ⴝ' => 'Ⴝ', 'ⴞ' => 'Ⴞ', 'ⴟ' => 'Ⴟ', 'ⴠ' => 'Ⴠ', 'ⴡ' => 'Ⴡ', 'ⴢ' => 'Ⴢ', 'ⴣ' => 'Ⴣ', 'ⴤ' => 'Ⴤ', 'ⴥ' => 'Ⴥ', 'ⴧ' => 'Ⴧ', 'ⴭ' => 'Ⴭ', 'ꙁ' => 'Ꙁ', 'ꙃ' => 'Ꙃ', 'ꙅ' => 'Ꙅ', 'ꙇ' => 'Ꙇ', 'ꙉ' => 'Ꙉ', 'ꙋ' => 'Ꙋ', 'ꙍ' => 'Ꙍ', 'ꙏ' => 'Ꙏ', 'ꙑ' => 'Ꙑ', 'ꙓ' => 'Ꙓ', 'ꙕ' => 'Ꙕ', 'ꙗ' => 'Ꙗ', 'ꙙ' => 'Ꙙ', 'ꙛ' => 'Ꙛ', 'ꙝ' => 'Ꙝ', 'ꙟ' => 'Ꙟ', 'ꙡ' => 'Ꙡ', 'ꙣ' => 'Ꙣ', 'ꙥ' => 'Ꙥ', 'ꙧ' => 'Ꙧ', 'ꙩ' => 'Ꙩ', 'ꙫ' => 'Ꙫ', 'ꙭ' => 'Ꙭ', 'ꚁ' => 'Ꚁ', 'ꚃ' => 'Ꚃ', 'ꚅ' => 'Ꚅ', 'ꚇ' => 'Ꚇ', 'ꚉ' => 'Ꚉ', 'ꚋ' => 'Ꚋ', 'ꚍ' => 'Ꚍ', 'ꚏ' => 'Ꚏ', 'ꚑ' => 'Ꚑ', 'ꚓ' => 'Ꚓ', 'ꚕ' => 'Ꚕ', 'ꚗ' => 'Ꚗ', 'ꚙ' => 'Ꚙ', 'ꚛ' => 'Ꚛ', 'ꜣ' => 'Ꜣ', 'ꜥ' => 'Ꜥ', 'ꜧ' => 'Ꜧ', 'ꜩ' => 'Ꜩ', 'ꜫ' => 'Ꜫ', 'ꜭ' => 'Ꜭ', 'ꜯ' => 'Ꜯ', 'ꜳ' => 'Ꜳ', 'ꜵ' => 'Ꜵ', 'ꜷ' => 'Ꜷ', 'ꜹ' => 'Ꜹ', 'ꜻ' => 'Ꜻ', 'ꜽ' => 'Ꜽ', 'ꜿ' => 'Ꜿ', 'ꝁ' => 'Ꝁ', 'ꝃ' => 'Ꝃ', 'ꝅ' => 'Ꝅ', 'ꝇ' => 'Ꝇ', 'ꝉ' => 'Ꝉ', 'ꝋ' => 'Ꝋ', 'ꝍ' => 'Ꝍ', 'ꝏ' => 'Ꝏ', 'ꝑ' => 'Ꝑ', 'ꝓ' => 'Ꝓ', 'ꝕ' => 'Ꝕ', 'ꝗ' => 'Ꝗ', 'ꝙ' => 'Ꝙ', 'ꝛ' => 'Ꝛ', 'ꝝ' => 'Ꝝ', 'ꝟ' => 'Ꝟ', 'ꝡ' => 'Ꝡ', 'ꝣ' => 'Ꝣ', 'ꝥ' => 'Ꝥ', 'ꝧ' => 'Ꝧ', 'ꝩ' => 'Ꝩ', 'ꝫ' => 'Ꝫ', 'ꝭ' => 'Ꝭ', 'ꝯ' => 'Ꝯ', 'ꝺ' => 'Ꝺ', 'ꝼ' => 'Ꝼ', 'ꝿ' => 'Ꝿ', 'ꞁ' => 'Ꞁ', 'ꞃ' => 'Ꞃ', 'ꞅ' => 'Ꞅ', 'ꞇ' => 'Ꞇ', 'ꞌ' => 'Ꞌ', 'ꞑ' => 'Ꞑ', 'ꞓ' => 'Ꞓ', 'ꞔ' => 'Ꞔ', 'ꞗ' => 'Ꞗ', 'ꞙ' => 'Ꞙ', 'ꞛ' => 'Ꞛ', 'ꞝ' => 'Ꞝ', 'ꞟ' => 'Ꞟ', 'ꞡ' => 'Ꞡ', 'ꞣ' => 'Ꞣ', 'ꞥ' => 'Ꞥ', 'ꞧ' => 'Ꞧ', 'ꞩ' => 'Ꞩ', 'ꞵ' => 'Ꞵ', 'ꞷ' => 'Ꞷ', 'ꞹ' => 'Ꞹ', 'ꞻ' => 'Ꞻ', 'ꞽ' => 'Ꞽ', 'ꞿ' => 'Ꞿ', 'ꟃ' => 'Ꟃ', 'ꟈ' => 'Ꟈ', 'ꟊ' => 'Ꟊ', 'ꟶ' => 'Ꟶ', 'ꭓ' => 'Ꭓ', 'ꭰ' => 'Ꭰ', 'ꭱ' => 'Ꭱ', 'ꭲ' => 'Ꭲ', 'ꭳ' => 'Ꭳ', 'ꭴ' => 'Ꭴ', 'ꭵ' => 'Ꭵ', 'ꭶ' => 'Ꭶ', 'ꭷ' => 'Ꭷ', 'ꭸ' => 'Ꭸ', 'ꭹ' => 'Ꭹ', 'ꭺ' => 'Ꭺ', 'ꭻ' => 'Ꭻ', 'ꭼ' => 'Ꭼ', 'ꭽ' => 'Ꭽ', 'ꭾ' => 'Ꭾ', 'ꭿ' => 'Ꭿ', 'ꮀ' => 'Ꮀ', 'ꮁ' => 'Ꮁ', 'ꮂ' => 'Ꮂ', 'ꮃ' => 'Ꮃ', 'ꮄ' => 'Ꮄ', 'ꮅ' => 'Ꮅ', 'ꮆ' => 'Ꮆ', 'ꮇ' => 'Ꮇ', 'ꮈ' => 'Ꮈ', 'ꮉ' => 'Ꮉ', 'ꮊ' => 'Ꮊ', 'ꮋ' => 'Ꮋ', 'ꮌ' => 'Ꮌ', 'ꮍ' => 'Ꮍ', 'ꮎ' => 'Ꮎ', 'ꮏ' => 'Ꮏ', 'ꮐ' => 'Ꮐ', 'ꮑ' => 'Ꮑ', 'ꮒ' => 'Ꮒ', 'ꮓ' => 'Ꮓ', 'ꮔ' => 'Ꮔ', 'ꮕ' => 'Ꮕ', 'ꮖ' => 'Ꮖ', 'ꮗ' => 'Ꮗ', 'ꮘ' => 'Ꮘ', 'ꮙ' => 'Ꮙ', 'ꮚ' => 'Ꮚ', 'ꮛ' => 'Ꮛ', 'ꮜ' => 'Ꮜ', 'ꮝ' => 'Ꮝ', 'ꮞ' => 'Ꮞ', 'ꮟ' => 'Ꮟ', 'ꮠ' => 'Ꮠ', 'ꮡ' => 'Ꮡ', 'ꮢ' => 'Ꮢ', 'ꮣ' => 'Ꮣ', 'ꮤ' => 'Ꮤ', 'ꮥ' => 'Ꮥ', 'ꮦ' => 'Ꮦ', 'ꮧ' => 'Ꮧ', 'ꮨ' => 'Ꮨ', 'ꮩ' => 'Ꮩ', 'ꮪ' => 'Ꮪ', 'ꮫ' => 'Ꮫ', 'ꮬ' => 'Ꮬ', 'ꮭ' => 'Ꮭ', 'ꮮ' => 'Ꮮ', 'ꮯ' => 'Ꮯ', 'ꮰ' => 'Ꮰ', 'ꮱ' => 'Ꮱ', 'ꮲ' => 'Ꮲ', 'ꮳ' => 'Ꮳ', 'ꮴ' => 'Ꮴ', 'ꮵ' => 'Ꮵ', 'ꮶ' => 'Ꮶ', 'ꮷ' => 'Ꮷ', 'ꮸ' => 'Ꮸ', 'ꮹ' => 'Ꮹ', 'ꮺ' => 'Ꮺ', 'ꮻ' => 'Ꮻ', 'ꮼ' => 'Ꮼ', 'ꮽ' => 'Ꮽ', 'ꮾ' => 'Ꮾ', 'ꮿ' => 'Ꮿ', 'a' => 'A', 'b' => 'B', 'c' => 'C', 'd' => 'D', 'e' => 'E', 'f' => 'F', 'g' => 'G', 'h' => 'H', 'i' => 'I', 'j' => 'J', 'k' => 'K', 'l' => 'L', 'm' => 'M', 'n' => 'N', 'o' => 'O', 'p' => 'P', 'q' => 'Q', 'r' => 'R', 's' => 'S', 't' => 'T', 'u' => 'U', 'v' => 'V', 'w' => 'W', 'x' => 'X', 'y' => 'Y', 'z' => 'Z', '𐐨' => '𐐀', '𐐩' => '𐐁', '𐐪' => '𐐂', '𐐫' => '𐐃', '𐐬' => '𐐄', '𐐭' => '𐐅', '𐐮' => '𐐆', '𐐯' => '𐐇', '𐐰' => '𐐈', '𐐱' => '𐐉', '𐐲' => '𐐊', '𐐳' => '𐐋', '𐐴' => '𐐌', '𐐵' => '𐐍', '𐐶' => '𐐎', '𐐷' => '𐐏', '𐐸' => '𐐐', '𐐹' => '𐐑', '𐐺' => '𐐒', '𐐻' => '𐐓', '𐐼' => '𐐔', '𐐽' => '𐐕', '𐐾' => '𐐖', '𐐿' => '𐐗', '𐑀' => '𐐘', '𐑁' => '𐐙', '𐑂' => '𐐚', '𐑃' => '𐐛', '𐑄' => '𐐜', '𐑅' => '𐐝', '𐑆' => '𐐞', '𐑇' => '𐐟', '𐑈' => '𐐠', '𐑉' => '𐐡', '𐑊' => '𐐢', '𐑋' => '𐐣', '𐑌' => '𐐤', '𐑍' => '𐐥', '𐑎' => '𐐦', '𐑏' => '𐐧', '𐓘' => '𐒰', '𐓙' => '𐒱', '𐓚' => '𐒲', '𐓛' => '𐒳', '𐓜' => '𐒴', '𐓝' => '𐒵', '𐓞' => '𐒶', '𐓟' => '𐒷', '𐓠' => '𐒸', '𐓡' => '𐒹', '𐓢' => '𐒺', '𐓣' => '𐒻', '𐓤' => '𐒼', '𐓥' => '𐒽', '𐓦' => '𐒾', '𐓧' => '𐒿', '𐓨' => '𐓀', '𐓩' => '𐓁', '𐓪' => '𐓂', '𐓫' => '𐓃', '𐓬' => '𐓄', '𐓭' => '𐓅', '𐓮' => '𐓆', '𐓯' => '𐓇', '𐓰' => '𐓈', '𐓱' => '𐓉', '𐓲' => '𐓊', '𐓳' => '𐓋', '𐓴' => '𐓌', '𐓵' => '𐓍', '𐓶' => '𐓎', '𐓷' => '𐓏', '𐓸' => '𐓐', '𐓹' => '𐓑', '𐓺' => '𐓒', '𐓻' => '𐓓', '𐳀' => '𐲀', '𐳁' => '𐲁', '𐳂' => '𐲂', '𐳃' => '𐲃', '𐳄' => '𐲄', '𐳅' => '𐲅', '𐳆' => '𐲆', '𐳇' => '𐲇', '𐳈' => '𐲈', '𐳉' => '𐲉', '𐳊' => '𐲊', '𐳋' => '𐲋', '𐳌' => '𐲌', '𐳍' => '𐲍', '𐳎' => '𐲎', '𐳏' => '𐲏', '𐳐' => '𐲐', '𐳑' => '𐲑', '𐳒' => '𐲒', '𐳓' => '𐲓', '𐳔' => '𐲔', '𐳕' => '𐲕', '𐳖' => '𐲖', '𐳗' => '𐲗', '𐳘' => '𐲘', '𐳙' => '𐲙', '𐳚' => '𐲚', '𐳛' => '𐲛', '𐳜' => '𐲜', '𐳝' => '𐲝', '𐳞' => '𐲞', '𐳟' => '𐲟', '𐳠' => '𐲠', '𐳡' => '𐲡', '𐳢' => '𐲢', '𐳣' => '𐲣', '𐳤' => '𐲤', '𐳥' => '𐲥', '𐳦' => '𐲦', '𐳧' => '𐲧', '𐳨' => '𐲨', '𐳩' => '𐲩', '𐳪' => '𐲪', '𐳫' => '𐲫', '𐳬' => '𐲬', '𐳭' => '𐲭', '𐳮' => '𐲮', '𐳯' => '𐲯', '𐳰' => '𐲰', '𐳱' => '𐲱', '𐳲' => '𐲲', '𑣀' => '𑢠', '𑣁' => '𑢡', '𑣂' => '𑢢', '𑣃' => '𑢣', '𑣄' => '𑢤', '𑣅' => '𑢥', '𑣆' => '𑢦', '𑣇' => '𑢧', '𑣈' => '𑢨', '𑣉' => '𑢩', '𑣊' => '𑢪', '𑣋' => '𑢫', '𑣌' => '𑢬', '𑣍' => '𑢭', '𑣎' => '𑢮', '𑣏' => '𑢯', '𑣐' => '𑢰', '𑣑' => '𑢱', '𑣒' => '𑢲', '𑣓' => '𑢳', '𑣔' => '𑢴', '𑣕' => '𑢵', '𑣖' => '𑢶', '𑣗' => '𑢷', '𑣘' => '𑢸', '𑣙' => '𑢹', '𑣚' => '𑢺', '𑣛' => '𑢻', '𑣜' => '𑢼', '𑣝' => '𑢽', '𑣞' => '𑢾', '𑣟' => '𑢿', '𖹠' => '𖹀', '𖹡' => '𖹁', '𖹢' => '𖹂', '𖹣' => '𖹃', '𖹤' => '𖹄', '𖹥' => '𖹅', '𖹦' => '𖹆', '𖹧' => '𖹇', '𖹨' => '𖹈', '𖹩' => '𖹉', '𖹪' => '𖹊', '𖹫' => '𖹋', '𖹬' => '𖹌', '𖹭' => '𖹍', '𖹮' => '𖹎', '𖹯' => '𖹏', '𖹰' => '𖹐', '𖹱' => '𖹑', '𖹲' => '𖹒', '𖹳' => '𖹓', '𖹴' => '𖹔', '𖹵' => '𖹕', '𖹶' => '𖹖', '𖹷' => '𖹗', '𖹸' => '𖹘', '𖹹' => '𖹙', '𖹺' => '𖹚', '𖹻' => '𖹛', '𖹼' => '𖹜', '𖹽' => '𖹝', '𖹾' => '𖹞', '𖹿' => '𖹟', '𞤢' => '𞤀', '𞤣' => '𞤁', '𞤤' => '𞤂', '𞤥' => '𞤃', '𞤦' => '𞤄', '𞤧' => '𞤅', '𞤨' => '𞤆', '𞤩' => '𞤇', '𞤪' => '𞤈', '𞤫' => '𞤉', '𞤬' => '𞤊', '𞤭' => '𞤋', '𞤮' => '𞤌', '𞤯' => '𞤍', '𞤰' => '𞤎', '𞤱' => '𞤏', '𞤲' => '𞤐', '𞤳' => '𞤑', '𞤴' => '𞤒', '𞤵' => '𞤓', '𞤶' => '𞤔', '𞤷' => '𞤕', '𞤸' => '𞤖', '𞤹' => '𞤗', '𞤺' => '𞤘', '𞤻' => '𞤙', '𞤼' => '𞤚', '𞤽' => '𞤛', '𞤾' => '𞤜', '𞤿' => '𞤝', '𞥀' => '𞤞', '𞥁' => '𞤟', '𞥂' => '𞤠', '𞥃' => '𞤡'); +return array('a' => 'A', 'b' => 'B', 'c' => 'C', 'd' => 'D', 'e' => 'E', 'f' => 'F', 'g' => 'G', 'h' => 'H', 'i' => 'I', 'j' => 'J', 'k' => 'K', 'l' => 'L', 'm' => 'M', 'n' => 'N', 'o' => 'O', 'p' => 'P', 'q' => 'Q', 'r' => 'R', 's' => 'S', 't' => 'T', 'u' => 'U', 'v' => 'V', 'w' => 'W', 'x' => 'X', 'y' => 'Y', 'z' => 'Z', 'µ' => 'Μ', 'à' => 'À', 'á' => 'Á', 'â' => 'Â', 'ã' => 'Ã', 'ä' => 'Ä', 'å' => 'Å', 'æ' => 'Æ', 'ç' => 'Ç', 'è' => 'È', 'é' => 'É', 'ê' => 'Ê', 'ë' => 'Ë', 'ì' => 'Ì', 'í' => 'Í', 'î' => 'Î', 'ï' => 'Ï', 'ð' => 'Ð', 'ñ' => 'Ñ', 'ò' => 'Ò', 'ó' => 'Ó', 'ô' => 'Ô', 'õ' => 'Õ', 'ö' => 'Ö', 'ø' => 'Ø', 'ù' => 'Ù', 'ú' => 'Ú', 'û' => 'Û', 'ü' => 'Ü', 'ý' => 'Ý', 'þ' => 'Þ', 'ÿ' => 'Ÿ', 'ā' => 'Ā', 'ă' => 'Ă', 'ą' => 'Ą', 'ć' => 'Ć', 'ĉ' => 'Ĉ', 'ċ' => 'Ċ', 'č' => 'Č', 'ď' => 'Ď', 'đ' => 'Đ', 'ē' => 'Ē', 'ĕ' => 'Ĕ', 'ė' => 'Ė', 'ę' => 'Ę', 'ě' => 'Ě', 'ĝ' => 'Ĝ', 'ğ' => 'Ğ', 'ġ' => 'Ġ', 'ģ' => 'Ģ', 'ĥ' => 'Ĥ', 'ħ' => 'Ħ', 'ĩ' => 'Ĩ', 'ī' => 'Ī', 'ĭ' => 'Ĭ', 'į' => 'Į', 'ı' => 'I', 'ij' => 'IJ', 'ĵ' => 'Ĵ', 'ķ' => 'Ķ', 'ĺ' => 'Ĺ', 'ļ' => 'Ļ', 'ľ' => 'Ľ', 'ŀ' => 'Ŀ', 'ł' => 'Ł', 'ń' => 'Ń', 'ņ' => 'Ņ', 'ň' => 'Ň', 'ŋ' => 'Ŋ', 'ō' => 'Ō', 'ŏ' => 'Ŏ', 'ő' => 'Ő', 'œ' => 'Œ', 'ŕ' => 'Ŕ', 'ŗ' => 'Ŗ', 'ř' => 'Ř', 'ś' => 'Ś', 'ŝ' => 'Ŝ', 'ş' => 'Ş', 'š' => 'Š', 'ţ' => 'Ţ', 'ť' => 'Ť', 'ŧ' => 'Ŧ', 'ũ' => 'Ũ', 'ū' => 'Ū', 'ŭ' => 'Ŭ', 'ů' => 'Ů', 'ű' => 'Ű', 'ų' => 'Ų', 'ŵ' => 'Ŵ', 'ŷ' => 'Ŷ', 'ź' => 'Ź', 'ż' => 'Ż', 'ž' => 'Ž', 'ſ' => 'S', 'ƀ' => 'Ƀ', 'ƃ' => 'Ƃ', 'ƅ' => 'Ƅ', 'ƈ' => 'Ƈ', 'ƌ' => 'Ƌ', 'ƒ' => 'Ƒ', 'ƕ' => 'Ƕ', 'ƙ' => 'Ƙ', 'ƚ' => 'Ƚ', 'ƞ' => 'Ƞ', 'ơ' => 'Ơ', 'ƣ' => 'Ƣ', 'ƥ' => 'Ƥ', 'ƨ' => 'Ƨ', 'ƭ' => 'Ƭ', 'ư' => 'Ư', 'ƴ' => 'Ƴ', 'ƶ' => 'Ƶ', 'ƹ' => 'Ƹ', 'ƽ' => 'Ƽ', 'ƿ' => 'Ƿ', 'Dž' => 'DŽ', 'dž' => 'DŽ', 'Lj' => 'LJ', 'lj' => 'LJ', 'Nj' => 'NJ', 'nj' => 'NJ', 'ǎ' => 'Ǎ', 'ǐ' => 'Ǐ', 'ǒ' => 'Ǒ', 'ǔ' => 'Ǔ', 'ǖ' => 'Ǖ', 'ǘ' => 'Ǘ', 'ǚ' => 'Ǚ', 'ǜ' => 'Ǜ', 'ǝ' => 'Ǝ', 'ǟ' => 'Ǟ', 'ǡ' => 'Ǡ', 'ǣ' => 'Ǣ', 'ǥ' => 'Ǥ', 'ǧ' => 'Ǧ', 'ǩ' => 'Ǩ', 'ǫ' => 'Ǫ', 'ǭ' => 'Ǭ', 'ǯ' => 'Ǯ', 'Dz' => 'DZ', 'dz' => 'DZ', 'ǵ' => 'Ǵ', 'ǹ' => 'Ǹ', 'ǻ' => 'Ǻ', 'ǽ' => 'Ǽ', 'ǿ' => 'Ǿ', 'ȁ' => 'Ȁ', 'ȃ' => 'Ȃ', 'ȅ' => 'Ȅ', 'ȇ' => 'Ȇ', 'ȉ' => 'Ȉ', 'ȋ' => 'Ȋ', 'ȍ' => 'Ȍ', 'ȏ' => 'Ȏ', 'ȑ' => 'Ȑ', 'ȓ' => 'Ȓ', 'ȕ' => 'Ȕ', 'ȗ' => 'Ȗ', 'ș' => 'Ș', 'ț' => 'Ț', 'ȝ' => 'Ȝ', 'ȟ' => 'Ȟ', 'ȣ' => 'Ȣ', 'ȥ' => 'Ȥ', 'ȧ' => 'Ȧ', 'ȩ' => 'Ȩ', 'ȫ' => 'Ȫ', 'ȭ' => 'Ȭ', 'ȯ' => 'Ȯ', 'ȱ' => 'Ȱ', 'ȳ' => 'Ȳ', 'ȼ' => 'Ȼ', 'ȿ' => 'Ȿ', 'ɀ' => 'Ɀ', 'ɂ' => 'Ɂ', 'ɇ' => 'Ɇ', 'ɉ' => 'Ɉ', 'ɋ' => 'Ɋ', 'ɍ' => 'Ɍ', 'ɏ' => 'Ɏ', 'ɐ' => 'Ɐ', 'ɑ' => 'Ɑ', 'ɒ' => 'Ɒ', 'ɓ' => 'Ɓ', 'ɔ' => 'Ɔ', 'ɖ' => 'Ɖ', 'ɗ' => 'Ɗ', 'ə' => 'Ə', 'ɛ' => 'Ɛ', 'ɜ' => 'Ɜ', 'ɠ' => 'Ɠ', 'ɡ' => 'Ɡ', 'ɣ' => 'Ɣ', 'ɥ' => 'Ɥ', 'ɦ' => 'Ɦ', 'ɨ' => 'Ɨ', 'ɩ' => 'Ɩ', 'ɪ' => 'Ɪ', 'ɫ' => 'Ɫ', 'ɬ' => 'Ɬ', 'ɯ' => 'Ɯ', 'ɱ' => 'Ɱ', 'ɲ' => 'Ɲ', 'ɵ' => 'Ɵ', 'ɽ' => 'Ɽ', 'ʀ' => 'Ʀ', 'ʂ' => 'Ʂ', 'ʃ' => 'Ʃ', 'ʇ' => 'Ʇ', 'ʈ' => 'Ʈ', 'ʉ' => 'Ʉ', 'ʊ' => 'Ʊ', 'ʋ' => 'Ʋ', 'ʌ' => 'Ʌ', 'ʒ' => 'Ʒ', 'ʝ' => 'Ʝ', 'ʞ' => 'Ʞ', 'ͅ' => 'Ι', 'ͱ' => 'Ͱ', 'ͳ' => 'Ͳ', 'ͷ' => 'Ͷ', 'ͻ' => 'Ͻ', 'ͼ' => 'Ͼ', 'ͽ' => 'Ͽ', 'ά' => 'Ά', 'έ' => 'Έ', 'ή' => 'Ή', 'ί' => 'Ί', 'α' => 'Α', 'β' => 'Β', 'γ' => 'Γ', 'δ' => 'Δ', 'ε' => 'Ε', 'ζ' => 'Ζ', 'η' => 'Η', 'θ' => 'Θ', 'ι' => 'Ι', 'κ' => 'Κ', 'λ' => 'Λ', 'μ' => 'Μ', 'ν' => 'Ν', 'ξ' => 'Ξ', 'ο' => 'Ο', 'π' => 'Π', 'ρ' => 'Ρ', 'ς' => 'Σ', 'σ' => 'Σ', 'τ' => 'Τ', 'υ' => 'Υ', 'φ' => 'Φ', 'χ' => 'Χ', 'ψ' => 'Ψ', 'ω' => 'Ω', 'ϊ' => 'Ϊ', 'ϋ' => 'Ϋ', 'ό' => 'Ό', 'ύ' => 'Ύ', 'ώ' => 'Ώ', 'ϐ' => 'Β', 'ϑ' => 'Θ', 'ϕ' => 'Φ', 'ϖ' => 'Π', 'ϗ' => 'Ϗ', 'ϙ' => 'Ϙ', 'ϛ' => 'Ϛ', 'ϝ' => 'Ϝ', 'ϟ' => 'Ϟ', 'ϡ' => 'Ϡ', 'ϣ' => 'Ϣ', 'ϥ' => 'Ϥ', 'ϧ' => 'Ϧ', 'ϩ' => 'Ϩ', 'ϫ' => 'Ϫ', 'ϭ' => 'Ϭ', 'ϯ' => 'Ϯ', 'ϰ' => 'Κ', 'ϱ' => 'Ρ', 'ϲ' => 'Ϲ', 'ϳ' => 'Ϳ', 'ϵ' => 'Ε', 'ϸ' => 'Ϸ', 'ϻ' => 'Ϻ', 'а' => 'А', 'б' => 'Б', 'в' => 'В', 'г' => 'Г', 'д' => 'Д', 'е' => 'Е', 'ж' => 'Ж', 'з' => 'З', 'и' => 'И', 'й' => 'Й', 'к' => 'К', 'л' => 'Л', 'м' => 'М', 'н' => 'Н', 'о' => 'О', 'п' => 'П', 'р' => 'Р', 'с' => 'С', 'т' => 'Т', 'у' => 'У', 'ф' => 'Ф', 'х' => 'Х', 'ц' => 'Ц', 'ч' => 'Ч', 'ш' => 'Ш', 'щ' => 'Щ', 'ъ' => 'Ъ', 'ы' => 'Ы', 'ь' => 'Ь', 'э' => 'Э', 'ю' => 'Ю', 'я' => 'Я', 'ѐ' => 'Ѐ', 'ё' => 'Ё', 'ђ' => 'Ђ', 'ѓ' => 'Ѓ', 'є' => 'Є', 'ѕ' => 'Ѕ', 'і' => 'І', 'ї' => 'Ї', 'ј' => 'Ј', 'љ' => 'Љ', 'њ' => 'Њ', 'ћ' => 'Ћ', 'ќ' => 'Ќ', 'ѝ' => 'Ѝ', 'ў' => 'Ў', 'џ' => 'Џ', 'ѡ' => 'Ѡ', 'ѣ' => 'Ѣ', 'ѥ' => 'Ѥ', 'ѧ' => 'Ѧ', 'ѩ' => 'Ѩ', 'ѫ' => 'Ѫ', 'ѭ' => 'Ѭ', 'ѯ' => 'Ѯ', 'ѱ' => 'Ѱ', 'ѳ' => 'Ѳ', 'ѵ' => 'Ѵ', 'ѷ' => 'Ѷ', 'ѹ' => 'Ѹ', 'ѻ' => 'Ѻ', 'ѽ' => 'Ѽ', 'ѿ' => 'Ѿ', 'ҁ' => 'Ҁ', 'ҋ' => 'Ҋ', 'ҍ' => 'Ҍ', 'ҏ' => 'Ҏ', 'ґ' => 'Ґ', 'ғ' => 'Ғ', 'ҕ' => 'Ҕ', 'җ' => 'Җ', 'ҙ' => 'Ҙ', 'қ' => 'Қ', 'ҝ' => 'Ҝ', 'ҟ' => 'Ҟ', 'ҡ' => 'Ҡ', 'ң' => 'Ң', 'ҥ' => 'Ҥ', 'ҧ' => 'Ҧ', 'ҩ' => 'Ҩ', 'ҫ' => 'Ҫ', 'ҭ' => 'Ҭ', 'ү' => 'Ү', 'ұ' => 'Ұ', 'ҳ' => 'Ҳ', 'ҵ' => 'Ҵ', 'ҷ' => 'Ҷ', 'ҹ' => 'Ҹ', 'һ' => 'Һ', 'ҽ' => 'Ҽ', 'ҿ' => 'Ҿ', 'ӂ' => 'Ӂ', 'ӄ' => 'Ӄ', 'ӆ' => 'Ӆ', 'ӈ' => 'Ӈ', 'ӊ' => 'Ӊ', 'ӌ' => 'Ӌ', 'ӎ' => 'Ӎ', 'ӏ' => 'Ӏ', 'ӑ' => 'Ӑ', 'ӓ' => 'Ӓ', 'ӕ' => 'Ӕ', 'ӗ' => 'Ӗ', 'ә' => 'Ә', 'ӛ' => 'Ӛ', 'ӝ' => 'Ӝ', 'ӟ' => 'Ӟ', 'ӡ' => 'Ӡ', 'ӣ' => 'Ӣ', 'ӥ' => 'Ӥ', 'ӧ' => 'Ӧ', 'ө' => 'Ө', 'ӫ' => 'Ӫ', 'ӭ' => 'Ӭ', 'ӯ' => 'Ӯ', 'ӱ' => 'Ӱ', 'ӳ' => 'Ӳ', 'ӵ' => 'Ӵ', 'ӷ' => 'Ӷ', 'ӹ' => 'Ӹ', 'ӻ' => 'Ӻ', 'ӽ' => 'Ӽ', 'ӿ' => 'Ӿ', 'ԁ' => 'Ԁ', 'ԃ' => 'Ԃ', 'ԅ' => 'Ԅ', 'ԇ' => 'Ԇ', 'ԉ' => 'Ԉ', 'ԋ' => 'Ԋ', 'ԍ' => 'Ԍ', 'ԏ' => 'Ԏ', 'ԑ' => 'Ԑ', 'ԓ' => 'Ԓ', 'ԕ' => 'Ԕ', 'ԗ' => 'Ԗ', 'ԙ' => 'Ԙ', 'ԛ' => 'Ԛ', 'ԝ' => 'Ԝ', 'ԟ' => 'Ԟ', 'ԡ' => 'Ԡ', 'ԣ' => 'Ԣ', 'ԥ' => 'Ԥ', 'ԧ' => 'Ԧ', 'ԩ' => 'Ԩ', 'ԫ' => 'Ԫ', 'ԭ' => 'Ԭ', 'ԯ' => 'Ԯ', 'ա' => 'Ա', 'բ' => 'Բ', 'գ' => 'Գ', 'դ' => 'Դ', 'ե' => 'Ե', 'զ' => 'Զ', 'է' => 'Է', 'ը' => 'Ը', 'թ' => 'Թ', 'ժ' => 'Ժ', 'ի' => 'Ի', 'լ' => 'Լ', 'խ' => 'Խ', 'ծ' => 'Ծ', 'կ' => 'Կ', 'հ' => 'Հ', 'ձ' => 'Ձ', 'ղ' => 'Ղ', 'ճ' => 'Ճ', 'մ' => 'Մ', 'յ' => 'Յ', 'ն' => 'Ն', 'շ' => 'Շ', 'ո' => 'Ո', 'չ' => 'Չ', 'պ' => 'Պ', 'ջ' => 'Ջ', 'ռ' => 'Ռ', 'ս' => 'Ս', 'վ' => 'Վ', 'տ' => 'Տ', 'ր' => 'Ր', 'ց' => 'Ց', 'ւ' => 'Ւ', 'փ' => 'Փ', 'ք' => 'Ք', 'օ' => 'Օ', 'ֆ' => 'Ֆ', 'ა' => 'Ა', 'ბ' => 'Ბ', 'გ' => 'Გ', 'დ' => 'Დ', 'ე' => 'Ე', 'ვ' => 'Ვ', 'ზ' => 'Ზ', 'თ' => 'Თ', 'ი' => 'Ი', 'კ' => 'Კ', 'ლ' => 'Ლ', 'მ' => 'Მ', 'ნ' => 'Ნ', 'ო' => 'Ო', 'პ' => 'Პ', 'ჟ' => 'Ჟ', 'რ' => 'Რ', 'ს' => 'Ს', 'ტ' => 'Ტ', 'უ' => 'Უ', 'ფ' => 'Ფ', 'ქ' => 'Ქ', 'ღ' => 'Ღ', 'ყ' => 'Ყ', 'შ' => 'Შ', 'ჩ' => 'Ჩ', 'ც' => 'Ც', 'ძ' => 'Ძ', 'წ' => 'Წ', 'ჭ' => 'Ჭ', 'ხ' => 'Ხ', 'ჯ' => 'Ჯ', 'ჰ' => 'Ჰ', 'ჱ' => 'Ჱ', 'ჲ' => 'Ჲ', 'ჳ' => 'Ჳ', 'ჴ' => 'Ჴ', 'ჵ' => 'Ჵ', 'ჶ' => 'Ჶ', 'ჷ' => 'Ჷ', 'ჸ' => 'Ჸ', 'ჹ' => 'Ჹ', 'ჺ' => 'Ჺ', 'ჽ' => 'Ჽ', 'ჾ' => 'Ჾ', 'ჿ' => 'Ჿ', 'ᏸ' => 'Ᏸ', 'ᏹ' => 'Ᏹ', 'ᏺ' => 'Ᏺ', 'ᏻ' => 'Ᏻ', 'ᏼ' => 'Ᏼ', 'ᏽ' => 'Ᏽ', 'ᲀ' => 'В', 'ᲁ' => 'Д', 'ᲂ' => 'О', 'ᲃ' => 'С', 'ᲄ' => 'Т', 'ᲅ' => 'Т', 'ᲆ' => 'Ъ', 'ᲇ' => 'Ѣ', 'ᲈ' => 'Ꙋ', 'ᵹ' => 'Ᵹ', 'ᵽ' => 'Ᵽ', 'ᶎ' => 'Ᶎ', 'ḁ' => 'Ḁ', 'ḃ' => 'Ḃ', 'ḅ' => 'Ḅ', 'ḇ' => 'Ḇ', 'ḉ' => 'Ḉ', 'ḋ' => 'Ḋ', 'ḍ' => 'Ḍ', 'ḏ' => 'Ḏ', 'ḑ' => 'Ḑ', 'ḓ' => 'Ḓ', 'ḕ' => 'Ḕ', 'ḗ' => 'Ḗ', 'ḙ' => 'Ḙ', 'ḛ' => 'Ḛ', 'ḝ' => 'Ḝ', 'ḟ' => 'Ḟ', 'ḡ' => 'Ḡ', 'ḣ' => 'Ḣ', 'ḥ' => 'Ḥ', 'ḧ' => 'Ḧ', 'ḩ' => 'Ḩ', 'ḫ' => 'Ḫ', 'ḭ' => 'Ḭ', 'ḯ' => 'Ḯ', 'ḱ' => 'Ḱ', 'ḳ' => 'Ḳ', 'ḵ' => 'Ḵ', 'ḷ' => 'Ḷ', 'ḹ' => 'Ḹ', 'ḻ' => 'Ḻ', 'ḽ' => 'Ḽ', 'ḿ' => 'Ḿ', 'ṁ' => 'Ṁ', 'ṃ' => 'Ṃ', 'ṅ' => 'Ṅ', 'ṇ' => 'Ṇ', 'ṉ' => 'Ṉ', 'ṋ' => 'Ṋ', 'ṍ' => 'Ṍ', 'ṏ' => 'Ṏ', 'ṑ' => 'Ṑ', 'ṓ' => 'Ṓ', 'ṕ' => 'Ṕ', 'ṗ' => 'Ṗ', 'ṙ' => 'Ṙ', 'ṛ' => 'Ṛ', 'ṝ' => 'Ṝ', 'ṟ' => 'Ṟ', 'ṡ' => 'Ṡ', 'ṣ' => 'Ṣ', 'ṥ' => 'Ṥ', 'ṧ' => 'Ṧ', 'ṩ' => 'Ṩ', 'ṫ' => 'Ṫ', 'ṭ' => 'Ṭ', 'ṯ' => 'Ṯ', 'ṱ' => 'Ṱ', 'ṳ' => 'Ṳ', 'ṵ' => 'Ṵ', 'ṷ' => 'Ṷ', 'ṹ' => 'Ṹ', 'ṻ' => 'Ṻ', 'ṽ' => 'Ṽ', 'ṿ' => 'Ṿ', 'ẁ' => 'Ẁ', 'ẃ' => 'Ẃ', 'ẅ' => 'Ẅ', 'ẇ' => 'Ẇ', 'ẉ' => 'Ẉ', 'ẋ' => 'Ẋ', 'ẍ' => 'Ẍ', 'ẏ' => 'Ẏ', 'ẑ' => 'Ẑ', 'ẓ' => 'Ẓ', 'ẕ' => 'Ẕ', 'ẛ' => 'Ṡ', 'ạ' => 'Ạ', 'ả' => 'Ả', 'ấ' => 'Ấ', 'ầ' => 'Ầ', 'ẩ' => 'Ẩ', 'ẫ' => 'Ẫ', 'ậ' => 'Ậ', 'ắ' => 'Ắ', 'ằ' => 'Ằ', 'ẳ' => 'Ẳ', 'ẵ' => 'Ẵ', 'ặ' => 'Ặ', 'ẹ' => 'Ẹ', 'ẻ' => 'Ẻ', 'ẽ' => 'Ẽ', 'ế' => 'Ế', 'ề' => 'Ề', 'ể' => 'Ể', 'ễ' => 'Ễ', 'ệ' => 'Ệ', 'ỉ' => 'Ỉ', 'ị' => 'Ị', 'ọ' => 'Ọ', 'ỏ' => 'Ỏ', 'ố' => 'Ố', 'ồ' => 'Ồ', 'ổ' => 'Ổ', 'ỗ' => 'Ỗ', 'ộ' => 'Ộ', 'ớ' => 'Ớ', 'ờ' => 'Ờ', 'ở' => 'Ở', 'ỡ' => 'Ỡ', 'ợ' => 'Ợ', 'ụ' => 'Ụ', 'ủ' => 'Ủ', 'ứ' => 'Ứ', 'ừ' => 'Ừ', 'ử' => 'Ử', 'ữ' => 'Ữ', 'ự' => 'Ự', 'ỳ' => 'Ỳ', 'ỵ' => 'Ỵ', 'ỷ' => 'Ỷ', 'ỹ' => 'Ỹ', 'ỻ' => 'Ỻ', 'ỽ' => 'Ỽ', 'ỿ' => 'Ỿ', 'ἀ' => 'Ἀ', 'ἁ' => 'Ἁ', 'ἂ' => 'Ἂ', 'ἃ' => 'Ἃ', 'ἄ' => 'Ἄ', 'ἅ' => 'Ἅ', 'ἆ' => 'Ἆ', 'ἇ' => 'Ἇ', 'ἐ' => 'Ἐ', 'ἑ' => 'Ἑ', 'ἒ' => 'Ἒ', 'ἓ' => 'Ἓ', 'ἔ' => 'Ἔ', 'ἕ' => 'Ἕ', 'ἠ' => 'Ἠ', 'ἡ' => 'Ἡ', 'ἢ' => 'Ἢ', 'ἣ' => 'Ἣ', 'ἤ' => 'Ἤ', 'ἥ' => 'Ἥ', 'ἦ' => 'Ἦ', 'ἧ' => 'Ἧ', 'ἰ' => 'Ἰ', 'ἱ' => 'Ἱ', 'ἲ' => 'Ἲ', 'ἳ' => 'Ἳ', 'ἴ' => 'Ἴ', 'ἵ' => 'Ἵ', 'ἶ' => 'Ἶ', 'ἷ' => 'Ἷ', 'ὀ' => 'Ὀ', 'ὁ' => 'Ὁ', 'ὂ' => 'Ὂ', 'ὃ' => 'Ὃ', 'ὄ' => 'Ὄ', 'ὅ' => 'Ὅ', 'ὑ' => 'Ὑ', 'ὓ' => 'Ὓ', 'ὕ' => 'Ὕ', 'ὗ' => 'Ὗ', 'ὠ' => 'Ὠ', 'ὡ' => 'Ὡ', 'ὢ' => 'Ὢ', 'ὣ' => 'Ὣ', 'ὤ' => 'Ὤ', 'ὥ' => 'Ὥ', 'ὦ' => 'Ὦ', 'ὧ' => 'Ὧ', 'ὰ' => 'Ὰ', 'ά' => 'Ά', 'ὲ' => 'Ὲ', 'έ' => 'Έ', 'ὴ' => 'Ὴ', 'ή' => 'Ή', 'ὶ' => 'Ὶ', 'ί' => 'Ί', 'ὸ' => 'Ὸ', 'ό' => 'Ό', 'ὺ' => 'Ὺ', 'ύ' => 'Ύ', 'ὼ' => 'Ὼ', 'ώ' => 'Ώ', 'ᾀ' => 'ἈΙ', 'ᾁ' => 'ἉΙ', 'ᾂ' => 'ἊΙ', 'ᾃ' => 'ἋΙ', 'ᾄ' => 'ἌΙ', 'ᾅ' => 'ἍΙ', 'ᾆ' => 'ἎΙ', 'ᾇ' => 'ἏΙ', 'ᾐ' => 'ἨΙ', 'ᾑ' => 'ἩΙ', 'ᾒ' => 'ἪΙ', 'ᾓ' => 'ἫΙ', 'ᾔ' => 'ἬΙ', 'ᾕ' => 'ἭΙ', 'ᾖ' => 'ἮΙ', 'ᾗ' => 'ἯΙ', 'ᾠ' => 'ὨΙ', 'ᾡ' => 'ὩΙ', 'ᾢ' => 'ὪΙ', 'ᾣ' => 'ὫΙ', 'ᾤ' => 'ὬΙ', 'ᾥ' => 'ὭΙ', 'ᾦ' => 'ὮΙ', 'ᾧ' => 'ὯΙ', 'ᾰ' => 'Ᾰ', 'ᾱ' => 'Ᾱ', 'ᾳ' => 'ΑΙ', 'ι' => 'Ι', 'ῃ' => 'ΗΙ', 'ῐ' => 'Ῐ', 'ῑ' => 'Ῑ', 'ῠ' => 'Ῠ', 'ῡ' => 'Ῡ', 'ῥ' => 'Ῥ', 'ῳ' => 'ΩΙ', 'ⅎ' => 'Ⅎ', 'ⅰ' => 'Ⅰ', 'ⅱ' => 'Ⅱ', 'ⅲ' => 'Ⅲ', 'ⅳ' => 'Ⅳ', 'ⅴ' => 'Ⅴ', 'ⅵ' => 'Ⅵ', 'ⅶ' => 'Ⅶ', 'ⅷ' => 'Ⅷ', 'ⅸ' => 'Ⅸ', 'ⅹ' => 'Ⅹ', 'ⅺ' => 'Ⅺ', 'ⅻ' => 'Ⅻ', 'ⅼ' => 'Ⅼ', 'ⅽ' => 'Ⅽ', 'ⅾ' => 'Ⅾ', 'ⅿ' => 'Ⅿ', 'ↄ' => 'Ↄ', 'ⓐ' => 'Ⓐ', 'ⓑ' => 'Ⓑ', 'ⓒ' => 'Ⓒ', 'ⓓ' => 'Ⓓ', 'ⓔ' => 'Ⓔ', 'ⓕ' => 'Ⓕ', 'ⓖ' => 'Ⓖ', 'ⓗ' => 'Ⓗ', 'ⓘ' => 'Ⓘ', 'ⓙ' => 'Ⓙ', 'ⓚ' => 'Ⓚ', 'ⓛ' => 'Ⓛ', 'ⓜ' => 'Ⓜ', 'ⓝ' => 'Ⓝ', 'ⓞ' => 'Ⓞ', 'ⓟ' => 'Ⓟ', 'ⓠ' => 'Ⓠ', 'ⓡ' => 'Ⓡ', 'ⓢ' => 'Ⓢ', 'ⓣ' => 'Ⓣ', 'ⓤ' => 'Ⓤ', 'ⓥ' => 'Ⓥ', 'ⓦ' => 'Ⓦ', 'ⓧ' => 'Ⓧ', 'ⓨ' => 'Ⓨ', 'ⓩ' => 'Ⓩ', 'ⰰ' => 'Ⰰ', 'ⰱ' => 'Ⰱ', 'ⰲ' => 'Ⰲ', 'ⰳ' => 'Ⰳ', 'ⰴ' => 'Ⰴ', 'ⰵ' => 'Ⰵ', 'ⰶ' => 'Ⰶ', 'ⰷ' => 'Ⰷ', 'ⰸ' => 'Ⰸ', 'ⰹ' => 'Ⰹ', 'ⰺ' => 'Ⰺ', 'ⰻ' => 'Ⰻ', 'ⰼ' => 'Ⰼ', 'ⰽ' => 'Ⰽ', 'ⰾ' => 'Ⰾ', 'ⰿ' => 'Ⰿ', 'ⱀ' => 'Ⱀ', 'ⱁ' => 'Ⱁ', 'ⱂ' => 'Ⱂ', 'ⱃ' => 'Ⱃ', 'ⱄ' => 'Ⱄ', 'ⱅ' => 'Ⱅ', 'ⱆ' => 'Ⱆ', 'ⱇ' => 'Ⱇ', 'ⱈ' => 'Ⱈ', 'ⱉ' => 'Ⱉ', 'ⱊ' => 'Ⱊ', 'ⱋ' => 'Ⱋ', 'ⱌ' => 'Ⱌ', 'ⱍ' => 'Ⱍ', 'ⱎ' => 'Ⱎ', 'ⱏ' => 'Ⱏ', 'ⱐ' => 'Ⱐ', 'ⱑ' => 'Ⱑ', 'ⱒ' => 'Ⱒ', 'ⱓ' => 'Ⱓ', 'ⱔ' => 'Ⱔ', 'ⱕ' => 'Ⱕ', 'ⱖ' => 'Ⱖ', 'ⱗ' => 'Ⱗ', 'ⱘ' => 'Ⱘ', 'ⱙ' => 'Ⱙ', 'ⱚ' => 'Ⱚ', 'ⱛ' => 'Ⱛ', 'ⱜ' => 'Ⱜ', 'ⱝ' => 'Ⱝ', 'ⱞ' => 'Ⱞ', 'ⱡ' => 'Ⱡ', 'ⱥ' => 'Ⱥ', 'ⱦ' => 'Ⱦ', 'ⱨ' => 'Ⱨ', 'ⱪ' => 'Ⱪ', 'ⱬ' => 'Ⱬ', 'ⱳ' => 'Ⱳ', 'ⱶ' => 'Ⱶ', 'ⲁ' => 'Ⲁ', 'ⲃ' => 'Ⲃ', 'ⲅ' => 'Ⲅ', 'ⲇ' => 'Ⲇ', 'ⲉ' => 'Ⲉ', 'ⲋ' => 'Ⲋ', 'ⲍ' => 'Ⲍ', 'ⲏ' => 'Ⲏ', 'ⲑ' => 'Ⲑ', 'ⲓ' => 'Ⲓ', 'ⲕ' => 'Ⲕ', 'ⲗ' => 'Ⲗ', 'ⲙ' => 'Ⲙ', 'ⲛ' => 'Ⲛ', 'ⲝ' => 'Ⲝ', 'ⲟ' => 'Ⲟ', 'ⲡ' => 'Ⲡ', 'ⲣ' => 'Ⲣ', 'ⲥ' => 'Ⲥ', 'ⲧ' => 'Ⲧ', 'ⲩ' => 'Ⲩ', 'ⲫ' => 'Ⲫ', 'ⲭ' => 'Ⲭ', 'ⲯ' => 'Ⲯ', 'ⲱ' => 'Ⲱ', 'ⲳ' => 'Ⲳ', 'ⲵ' => 'Ⲵ', 'ⲷ' => 'Ⲷ', 'ⲹ' => 'Ⲹ', 'ⲻ' => 'Ⲻ', 'ⲽ' => 'Ⲽ', 'ⲿ' => 'Ⲿ', 'ⳁ' => 'Ⳁ', 'ⳃ' => 'Ⳃ', 'ⳅ' => 'Ⳅ', 'ⳇ' => 'Ⳇ', 'ⳉ' => 'Ⳉ', 'ⳋ' => 'Ⳋ', 'ⳍ' => 'Ⳍ', 'ⳏ' => 'Ⳏ', 'ⳑ' => 'Ⳑ', 'ⳓ' => 'Ⳓ', 'ⳕ' => 'Ⳕ', 'ⳗ' => 'Ⳗ', 'ⳙ' => 'Ⳙ', 'ⳛ' => 'Ⳛ', 'ⳝ' => 'Ⳝ', 'ⳟ' => 'Ⳟ', 'ⳡ' => 'Ⳡ', 'ⳣ' => 'Ⳣ', 'ⳬ' => 'Ⳬ', 'ⳮ' => 'Ⳮ', 'ⳳ' => 'Ⳳ', 'ⴀ' => 'Ⴀ', 'ⴁ' => 'Ⴁ', 'ⴂ' => 'Ⴂ', 'ⴃ' => 'Ⴃ', 'ⴄ' => 'Ⴄ', 'ⴅ' => 'Ⴅ', 'ⴆ' => 'Ⴆ', 'ⴇ' => 'Ⴇ', 'ⴈ' => 'Ⴈ', 'ⴉ' => 'Ⴉ', 'ⴊ' => 'Ⴊ', 'ⴋ' => 'Ⴋ', 'ⴌ' => 'Ⴌ', 'ⴍ' => 'Ⴍ', 'ⴎ' => 'Ⴎ', 'ⴏ' => 'Ⴏ', 'ⴐ' => 'Ⴐ', 'ⴑ' => 'Ⴑ', 'ⴒ' => 'Ⴒ', 'ⴓ' => 'Ⴓ', 'ⴔ' => 'Ⴔ', 'ⴕ' => 'Ⴕ', 'ⴖ' => 'Ⴖ', 'ⴗ' => 'Ⴗ', 'ⴘ' => 'Ⴘ', 'ⴙ' => 'Ⴙ', 'ⴚ' => 'Ⴚ', 'ⴛ' => 'Ⴛ', 'ⴜ' => 'Ⴜ', 'ⴝ' => 'Ⴝ', 'ⴞ' => 'Ⴞ', 'ⴟ' => 'Ⴟ', 'ⴠ' => 'Ⴠ', 'ⴡ' => 'Ⴡ', 'ⴢ' => 'Ⴢ', 'ⴣ' => 'Ⴣ', 'ⴤ' => 'Ⴤ', 'ⴥ' => 'Ⴥ', 'ⴧ' => 'Ⴧ', 'ⴭ' => 'Ⴭ', 'ꙁ' => 'Ꙁ', 'ꙃ' => 'Ꙃ', 'ꙅ' => 'Ꙅ', 'ꙇ' => 'Ꙇ', 'ꙉ' => 'Ꙉ', 'ꙋ' => 'Ꙋ', 'ꙍ' => 'Ꙍ', 'ꙏ' => 'Ꙏ', 'ꙑ' => 'Ꙑ', 'ꙓ' => 'Ꙓ', 'ꙕ' => 'Ꙕ', 'ꙗ' => 'Ꙗ', 'ꙙ' => 'Ꙙ', 'ꙛ' => 'Ꙛ', 'ꙝ' => 'Ꙝ', 'ꙟ' => 'Ꙟ', 'ꙡ' => 'Ꙡ', 'ꙣ' => 'Ꙣ', 'ꙥ' => 'Ꙥ', 'ꙧ' => 'Ꙧ', 'ꙩ' => 'Ꙩ', 'ꙫ' => 'Ꙫ', 'ꙭ' => 'Ꙭ', 'ꚁ' => 'Ꚁ', 'ꚃ' => 'Ꚃ', 'ꚅ' => 'Ꚅ', 'ꚇ' => 'Ꚇ', 'ꚉ' => 'Ꚉ', 'ꚋ' => 'Ꚋ', 'ꚍ' => 'Ꚍ', 'ꚏ' => 'Ꚏ', 'ꚑ' => 'Ꚑ', 'ꚓ' => 'Ꚓ', 'ꚕ' => 'Ꚕ', 'ꚗ' => 'Ꚗ', 'ꚙ' => 'Ꚙ', 'ꚛ' => 'Ꚛ', 'ꜣ' => 'Ꜣ', 'ꜥ' => 'Ꜥ', 'ꜧ' => 'Ꜧ', 'ꜩ' => 'Ꜩ', 'ꜫ' => 'Ꜫ', 'ꜭ' => 'Ꜭ', 'ꜯ' => 'Ꜯ', 'ꜳ' => 'Ꜳ', 'ꜵ' => 'Ꜵ', 'ꜷ' => 'Ꜷ', 'ꜹ' => 'Ꜹ', 'ꜻ' => 'Ꜻ', 'ꜽ' => 'Ꜽ', 'ꜿ' => 'Ꜿ', 'ꝁ' => 'Ꝁ', 'ꝃ' => 'Ꝃ', 'ꝅ' => 'Ꝅ', 'ꝇ' => 'Ꝇ', 'ꝉ' => 'Ꝉ', 'ꝋ' => 'Ꝋ', 'ꝍ' => 'Ꝍ', 'ꝏ' => 'Ꝏ', 'ꝑ' => 'Ꝑ', 'ꝓ' => 'Ꝓ', 'ꝕ' => 'Ꝕ', 'ꝗ' => 'Ꝗ', 'ꝙ' => 'Ꝙ', 'ꝛ' => 'Ꝛ', 'ꝝ' => 'Ꝝ', 'ꝟ' => 'Ꝟ', 'ꝡ' => 'Ꝡ', 'ꝣ' => 'Ꝣ', 'ꝥ' => 'Ꝥ', 'ꝧ' => 'Ꝧ', 'ꝩ' => 'Ꝩ', 'ꝫ' => 'Ꝫ', 'ꝭ' => 'Ꝭ', 'ꝯ' => 'Ꝯ', 'ꝺ' => 'Ꝺ', 'ꝼ' => 'Ꝼ', 'ꝿ' => 'Ꝿ', 'ꞁ' => 'Ꞁ', 'ꞃ' => 'Ꞃ', 'ꞅ' => 'Ꞅ', 'ꞇ' => 'Ꞇ', 'ꞌ' => 'Ꞌ', 'ꞑ' => 'Ꞑ', 'ꞓ' => 'Ꞓ', 'ꞔ' => 'Ꞔ', 'ꞗ' => 'Ꞗ', 'ꞙ' => 'Ꞙ', 'ꞛ' => 'Ꞛ', 'ꞝ' => 'Ꞝ', 'ꞟ' => 'Ꞟ', 'ꞡ' => 'Ꞡ', 'ꞣ' => 'Ꞣ', 'ꞥ' => 'Ꞥ', 'ꞧ' => 'Ꞧ', 'ꞩ' => 'Ꞩ', 'ꞵ' => 'Ꞵ', 'ꞷ' => 'Ꞷ', 'ꞹ' => 'Ꞹ', 'ꞻ' => 'Ꞻ', 'ꞽ' => 'Ꞽ', 'ꞿ' => 'Ꞿ', 'ꟃ' => 'Ꟃ', 'ꟈ' => 'Ꟈ', 'ꟊ' => 'Ꟊ', 'ꟶ' => 'Ꟶ', 'ꭓ' => 'Ꭓ', 'ꭰ' => 'Ꭰ', 'ꭱ' => 'Ꭱ', 'ꭲ' => 'Ꭲ', 'ꭳ' => 'Ꭳ', 'ꭴ' => 'Ꭴ', 'ꭵ' => 'Ꭵ', 'ꭶ' => 'Ꭶ', 'ꭷ' => 'Ꭷ', 'ꭸ' => 'Ꭸ', 'ꭹ' => 'Ꭹ', 'ꭺ' => 'Ꭺ', 'ꭻ' => 'Ꭻ', 'ꭼ' => 'Ꭼ', 'ꭽ' => 'Ꭽ', 'ꭾ' => 'Ꭾ', 'ꭿ' => 'Ꭿ', 'ꮀ' => 'Ꮀ', 'ꮁ' => 'Ꮁ', 'ꮂ' => 'Ꮂ', 'ꮃ' => 'Ꮃ', 'ꮄ' => 'Ꮄ', 'ꮅ' => 'Ꮅ', 'ꮆ' => 'Ꮆ', 'ꮇ' => 'Ꮇ', 'ꮈ' => 'Ꮈ', 'ꮉ' => 'Ꮉ', 'ꮊ' => 'Ꮊ', 'ꮋ' => 'Ꮋ', 'ꮌ' => 'Ꮌ', 'ꮍ' => 'Ꮍ', 'ꮎ' => 'Ꮎ', 'ꮏ' => 'Ꮏ', 'ꮐ' => 'Ꮐ', 'ꮑ' => 'Ꮑ', 'ꮒ' => 'Ꮒ', 'ꮓ' => 'Ꮓ', 'ꮔ' => 'Ꮔ', 'ꮕ' => 'Ꮕ', 'ꮖ' => 'Ꮖ', 'ꮗ' => 'Ꮗ', 'ꮘ' => 'Ꮘ', 'ꮙ' => 'Ꮙ', 'ꮚ' => 'Ꮚ', 'ꮛ' => 'Ꮛ', 'ꮜ' => 'Ꮜ', 'ꮝ' => 'Ꮝ', 'ꮞ' => 'Ꮞ', 'ꮟ' => 'Ꮟ', 'ꮠ' => 'Ꮠ', 'ꮡ' => 'Ꮡ', 'ꮢ' => 'Ꮢ', 'ꮣ' => 'Ꮣ', 'ꮤ' => 'Ꮤ', 'ꮥ' => 'Ꮥ', 'ꮦ' => 'Ꮦ', 'ꮧ' => 'Ꮧ', 'ꮨ' => 'Ꮨ', 'ꮩ' => 'Ꮩ', 'ꮪ' => 'Ꮪ', 'ꮫ' => 'Ꮫ', 'ꮬ' => 'Ꮬ', 'ꮭ' => 'Ꮭ', 'ꮮ' => 'Ꮮ', 'ꮯ' => 'Ꮯ', 'ꮰ' => 'Ꮰ', 'ꮱ' => 'Ꮱ', 'ꮲ' => 'Ꮲ', 'ꮳ' => 'Ꮳ', 'ꮴ' => 'Ꮴ', 'ꮵ' => 'Ꮵ', 'ꮶ' => 'Ꮶ', 'ꮷ' => 'Ꮷ', 'ꮸ' => 'Ꮸ', 'ꮹ' => 'Ꮹ', 'ꮺ' => 'Ꮺ', 'ꮻ' => 'Ꮻ', 'ꮼ' => 'Ꮼ', 'ꮽ' => 'Ꮽ', 'ꮾ' => 'Ꮾ', 'ꮿ' => 'Ꮿ', 'a' => 'A', 'b' => 'B', 'c' => 'C', 'd' => 'D', 'e' => 'E', 'f' => 'F', 'g' => 'G', 'h' => 'H', 'i' => 'I', 'j' => 'J', 'k' => 'K', 'l' => 'L', 'm' => 'M', 'n' => 'N', 'o' => 'O', 'p' => 'P', 'q' => 'Q', 'r' => 'R', 's' => 'S', 't' => 'T', 'u' => 'U', 'v' => 'V', 'w' => 'W', 'x' => 'X', 'y' => 'Y', 'z' => 'Z', '𐐨' => '𐐀', '𐐩' => '𐐁', '𐐪' => '𐐂', '𐐫' => '𐐃', '𐐬' => '𐐄', '𐐭' => '𐐅', '𐐮' => '𐐆', '𐐯' => '𐐇', '𐐰' => '𐐈', '𐐱' => '𐐉', '𐐲' => '𐐊', '𐐳' => '𐐋', '𐐴' => '𐐌', '𐐵' => '𐐍', '𐐶' => '𐐎', '𐐷' => '𐐏', '𐐸' => '𐐐', '𐐹' => '𐐑', '𐐺' => '𐐒', '𐐻' => '𐐓', '𐐼' => '𐐔', '𐐽' => '𐐕', '𐐾' => '𐐖', '𐐿' => '𐐗', '𐑀' => '𐐘', '𐑁' => '𐐙', '𐑂' => '𐐚', '𐑃' => '𐐛', '𐑄' => '𐐜', '𐑅' => '𐐝', '𐑆' => '𐐞', '𐑇' => '𐐟', '𐑈' => '𐐠', '𐑉' => '𐐡', '𐑊' => '𐐢', '𐑋' => '𐐣', '𐑌' => '𐐤', '𐑍' => '𐐥', '𐑎' => '𐐦', '𐑏' => '𐐧', '𐓘' => '𐒰', '𐓙' => '𐒱', '𐓚' => '𐒲', '𐓛' => '𐒳', '𐓜' => '𐒴', '𐓝' => '𐒵', '𐓞' => '𐒶', '𐓟' => '𐒷', '𐓠' => '𐒸', '𐓡' => '𐒹', '𐓢' => '𐒺', '𐓣' => '𐒻', '𐓤' => '𐒼', '𐓥' => '𐒽', '𐓦' => '𐒾', '𐓧' => '𐒿', '𐓨' => '𐓀', '𐓩' => '𐓁', '𐓪' => '𐓂', '𐓫' => '𐓃', '𐓬' => '𐓄', '𐓭' => '𐓅', '𐓮' => '𐓆', '𐓯' => '𐓇', '𐓰' => '𐓈', '𐓱' => '𐓉', '𐓲' => '𐓊', '𐓳' => '𐓋', '𐓴' => '𐓌', '𐓵' => '𐓍', '𐓶' => '𐓎', '𐓷' => '𐓏', '𐓸' => '𐓐', '𐓹' => '𐓑', '𐓺' => '𐓒', '𐓻' => '𐓓', '𐳀' => '𐲀', '𐳁' => '𐲁', '𐳂' => '𐲂', '𐳃' => '𐲃', '𐳄' => '𐲄', '𐳅' => '𐲅', '𐳆' => '𐲆', '𐳇' => '𐲇', '𐳈' => '𐲈', '𐳉' => '𐲉', '𐳊' => '𐲊', '𐳋' => '𐲋', '𐳌' => '𐲌', '𐳍' => '𐲍', '𐳎' => '𐲎', '𐳏' => '𐲏', '𐳐' => '𐲐', '𐳑' => '𐲑', '𐳒' => '𐲒', '𐳓' => '𐲓', '𐳔' => '𐲔', '𐳕' => '𐲕', '𐳖' => '𐲖', '𐳗' => '𐲗', '𐳘' => '𐲘', '𐳙' => '𐲙', '𐳚' => '𐲚', '𐳛' => '𐲛', '𐳜' => '𐲜', '𐳝' => '𐲝', '𐳞' => '𐲞', '𐳟' => '𐲟', '𐳠' => '𐲠', '𐳡' => '𐲡', '𐳢' => '𐲢', '𐳣' => '𐲣', '𐳤' => '𐲤', '𐳥' => '𐲥', '𐳦' => '𐲦', '𐳧' => '𐲧', '𐳨' => '𐲨', '𐳩' => '𐲩', '𐳪' => '𐲪', '𐳫' => '𐲫', '𐳬' => '𐲬', '𐳭' => '𐲭', '𐳮' => '𐲮', '𐳯' => '𐲯', '𐳰' => '𐲰', '𐳱' => '𐲱', '𐳲' => '𐲲', '𑣀' => '𑢠', '𑣁' => '𑢡', '𑣂' => '𑢢', '𑣃' => '𑢣', '𑣄' => '𑢤', '𑣅' => '𑢥', '𑣆' => '𑢦', '𑣇' => '𑢧', '𑣈' => '𑢨', '𑣉' => '𑢩', '𑣊' => '𑢪', '𑣋' => '𑢫', '𑣌' => '𑢬', '𑣍' => '𑢭', '𑣎' => '𑢮', '𑣏' => '𑢯', '𑣐' => '𑢰', '𑣑' => '𑢱', '𑣒' => '𑢲', '𑣓' => '𑢳', '𑣔' => '𑢴', '𑣕' => '𑢵', '𑣖' => '𑢶', '𑣗' => '𑢷', '𑣘' => '𑢸', '𑣙' => '𑢹', '𑣚' => '𑢺', '𑣛' => '𑢻', '𑣜' => '𑢼', '𑣝' => '𑢽', '𑣞' => '𑢾', '𑣟' => '𑢿', '𖹠' => '𖹀', '𖹡' => '𖹁', '𖹢' => '𖹂', '𖹣' => '𖹃', '𖹤' => '𖹄', '𖹥' => '𖹅', '𖹦' => '𖹆', '𖹧' => '𖹇', '𖹨' => '𖹈', '𖹩' => '𖹉', '𖹪' => '𖹊', '𖹫' => '𖹋', '𖹬' => '𖹌', '𖹭' => '𖹍', '𖹮' => '𖹎', '𖹯' => '𖹏', '𖹰' => '𖹐', '𖹱' => '𖹑', '𖹲' => '𖹒', '𖹳' => '𖹓', '𖹴' => '𖹔', '𖹵' => '𖹕', '𖹶' => '𖹖', '𖹷' => '𖹗', '𖹸' => '𖹘', '𖹹' => '𖹙', '𖹺' => '𖹚', '𖹻' => '𖹛', '𖹼' => '𖹜', '𖹽' => '𖹝', '𖹾' => '𖹞', '𖹿' => '𖹟', '𞤢' => '𞤀', '𞤣' => '𞤁', '𞤤' => '𞤂', '𞤥' => '𞤃', '𞤦' => '𞤄', '𞤧' => '𞤅', '𞤨' => '𞤆', '𞤩' => '𞤇', '𞤪' => '𞤈', '𞤫' => '𞤉', '𞤬' => '𞤊', '𞤭' => '𞤋', '𞤮' => '𞤌', '𞤯' => '𞤍', '𞤰' => '𞤎', '𞤱' => '𞤏', '𞤲' => '𞤐', '𞤳' => '𞤑', '𞤴' => '𞤒', '𞤵' => '𞤓', '𞤶' => '𞤔', '𞤷' => '𞤕', '𞤸' => '𞤖', '𞤹' => '𞤗', '𞤺' => '𞤘', '𞤻' => '𞤙', '𞤼' => '𞤚', '𞤽' => '𞤛', '𞤾' => '𞤜', '𞤿' => '𞤝', '𞥀' => '𞤞', '𞥁' => '𞤟', '𞥂' => '𞤠', '𞥃' => '𞤡', 'ß' => 'SS', 'ff' => 'FF', 'fi' => 'FI', 'fl' => 'FL', 'ffi' => 'FFI', 'ffl' => 'FFL', 'ſt' => 'ST', 'st' => 'ST', 'և' => 'ԵՒ', 'ﬓ' => 'ՄՆ', 'ﬔ' => 'ՄԵ', 'ﬕ' => 'ՄԻ', 'ﬖ' => 'ՎՆ', 'ﬗ' => 'ՄԽ', 'ʼn' => 'ʼN', 'ΐ' => 'Ϊ́', 'ΰ' => 'Ϋ́', 'ǰ' => 'J̌', 'ẖ' => 'H̱', 'ẗ' => 'T̈', 'ẘ' => 'W̊', 'ẙ' => 'Y̊', 'ẚ' => 'Aʾ', 'ὐ' => 'Υ̓', 'ὒ' => 'Υ̓̀', 'ὔ' => 'Υ̓́', 'ὖ' => 'Υ̓͂', 'ᾶ' => 'Α͂', 'ῆ' => 'Η͂', 'ῒ' => 'Ϊ̀', 'ΐ' => 'Ϊ́', 'ῖ' => 'Ι͂', 'ῗ' => 'Ϊ͂', 'ῢ' => 'Ϋ̀', 'ΰ' => 'Ϋ́', 'ῤ' => 'Ρ̓', 'ῦ' => 'Υ͂', 'ῧ' => 'Ϋ͂', 'ῶ' => 'Ω͂', 'ᾈ' => 'ἈΙ', 'ᾉ' => 'ἉΙ', 'ᾊ' => 'ἊΙ', 'ᾋ' => 'ἋΙ', 'ᾌ' => 'ἌΙ', 'ᾍ' => 'ἍΙ', 'ᾎ' => 'ἎΙ', 'ᾏ' => 'ἏΙ', 'ᾘ' => 'ἨΙ', 'ᾙ' => 'ἩΙ', 'ᾚ' => 'ἪΙ', 'ᾛ' => 'ἫΙ', 'ᾜ' => 'ἬΙ', 'ᾝ' => 'ἭΙ', 'ᾞ' => 'ἮΙ', 'ᾟ' => 'ἯΙ', 'ᾨ' => 'ὨΙ', 'ᾩ' => 'ὩΙ', 'ᾪ' => 'ὪΙ', 'ᾫ' => 'ὫΙ', 'ᾬ' => 'ὬΙ', 'ᾭ' => 'ὭΙ', 'ᾮ' => 'ὮΙ', 'ᾯ' => 'ὯΙ', 'ᾼ' => 'ΑΙ', 'ῌ' => 'ΗΙ', 'ῼ' => 'ΩΙ', 'ᾲ' => 'ᾺΙ', 'ᾴ' => 'ΆΙ', 'ῂ' => 'ῊΙ', 'ῄ' => 'ΉΙ', 'ῲ' => 'ῺΙ', 'ῴ' => 'ΏΙ', 'ᾷ' => 'Α͂Ι', 'ῇ' => 'Η͂Ι', 'ῷ' => 'Ω͂Ι'); diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/bootstrap.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/bootstrap.php index 6dceb7a1..1e656631 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/bootstrap.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/bootstrap.php @@ -11,6 +11,10 @@ use WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring as p; +if (\PHP_VERSION_ID >= 80000) { + return require __DIR__.'/bootstrap80.php'; +} + if (!function_exists('mb_convert_encoding')) { function mb_convert_encoding($string, $to_encoding, $from_encoding = null) { return p\Mbstring::mb_convert_encoding($string, $to_encoding, $from_encoding); } } @@ -18,7 +22,7 @@ if (!function_exists('mb_decode_mimeheader')) { function mb_decode_mimeheader($string) { return p\Mbstring::mb_decode_mimeheader($string); } } if (!function_exists('mb_encode_mimeheader')) { - function mb_encode_mimeheader($string, $charset = null, $transfer_encoding = null, $newline = null, $indent = null) { return p\Mbstring::mb_encode_mimeheader($string, $charset, $transfer_encoding, $newline, $indent); } + function mb_encode_mimeheader($string, $charset = null, $transfer_encoding = null, $newline = "\r\n", $indent = 0) { return p\Mbstring::mb_encode_mimeheader($string, $charset, $transfer_encoding, $newline, $indent); } } if (!function_exists('mb_decode_numericentity')) { function mb_decode_numericentity($string, $map, $encoding = null) { return p\Mbstring::mb_decode_numericentity($string, $map, $encoding); } @@ -51,7 +55,7 @@ if (!function_exists('mb_detect_order')) { function mb_detect_order($encoding = null) { return p\Mbstring::mb_detect_order($encoding); } } if (!function_exists('mb_parse_str')) { - function mb_parse_str($string, &$result = array()) { parse_str($string, $result); } + function mb_parse_str($string, &$result = []) { parse_str($string, $result); return (bool) $result; } } if (!function_exists('mb_strlen')) { function mb_strlen($string, $encoding = null) { return p\Mbstring::mb_strlen($string, $encoding); } @@ -108,13 +112,11 @@ if (!function_exists('mb_output_handler')) { function mb_output_handler($string, $status) { return p\Mbstring::mb_output_handler($string, $status); } } if (!function_exists('mb_http_input')) { - function mb_http_input($type = '') { return p\Mbstring::mb_http_input($type); } + function mb_http_input($type = null) { return p\Mbstring::mb_http_input($type); } } -if (PHP_VERSION_ID >= 80000) { - require_once __DIR__.'/Resources/mb_convert_variables.php8'; -} elseif (!function_exists('mb_convert_variables')) { - function mb_convert_variables($toEncoding, $fromEncoding, &$a = null, &$b = null, &$c = null, &$d = null, &$e = null, &$f = null) { return p\Mbstring::mb_convert_variables($toEncoding, $fromEncoding, $a, $b, $c, $d, $e, $f); } +if (!function_exists('mb_convert_variables')) { + function mb_convert_variables($to_encoding, $from_encoding, &...$vars) { return p\Mbstring::mb_convert_variables($to_encoding, $from_encoding, ...$vars); } } if (!function_exists('mb_ord')) { @@ -130,6 +132,10 @@ if (!function_exists('mb_str_split')) { function mb_str_split($string, $length = 1, $encoding = null) { return p\Mbstring::mb_str_split($string, $length, $encoding); } } +if (!function_exists('mb_str_pad')) { + function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = STR_PAD_RIGHT, ?string $encoding = null): string { return p\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); } +} + if (extension_loaded('mbstring')) { return; } diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/bootstrap80.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/bootstrap80.php new file mode 100644 index 00000000..7b0767f4 --- /dev/null +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-mbstring/bootstrap80.php @@ -0,0 +1,261 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ +use WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring as p; +if (!\function_exists('mb_convert_encoding')) { + function mb_convert_encoding(array|string|null $string, ?string $to_encoding, array|string|null $from_encoding = null) : array|string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_convert_encoding($string ?? '', (string) $to_encoding, $from_encoding); + } +} +if (!\function_exists('mb_decode_mimeheader')) { + function mb_decode_mimeheader(?string $string) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_decode_mimeheader((string) $string); + } +} +if (!\function_exists('mb_encode_mimeheader')) { + function mb_encode_mimeheader(?string $string, ?string $charset = null, ?string $transfer_encoding = null, ?string $newline = "\r\n", ?int $indent = 0) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_encode_mimeheader((string) $string, $charset, $transfer_encoding, (string) $newline, (int) $indent); + } +} +if (!\function_exists('mb_decode_numericentity')) { + function mb_decode_numericentity(?string $string, array $map, ?string $encoding = null) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_decode_numericentity((string) $string, $map, $encoding); + } +} +if (!\function_exists('mb_encode_numericentity')) { + function mb_encode_numericentity(?string $string, array $map, ?string $encoding = null, ?bool $hex = \false) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_encode_numericentity((string) $string, $map, $encoding, (bool) $hex); + } +} +if (!\function_exists('mb_convert_case')) { + function mb_convert_case(?string $string, ?int $mode, ?string $encoding = null) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_convert_case((string) $string, (int) $mode, $encoding); + } +} +if (!\function_exists('mb_internal_encoding')) { + function mb_internal_encoding(?string $encoding = null) : string|bool + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_internal_encoding($encoding); + } +} +if (!\function_exists('mb_language')) { + function mb_language(?string $language = null) : string|bool + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_language($language); + } +} +if (!\function_exists('mb_list_encodings')) { + function mb_list_encodings() : array + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_list_encodings(); + } +} +if (!\function_exists('mb_encoding_aliases')) { + function mb_encoding_aliases(?string $encoding) : array + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_encoding_aliases((string) $encoding); + } +} +if (!\function_exists('mb_check_encoding')) { + function mb_check_encoding(array|string|null $value = null, ?string $encoding = null) : bool + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_check_encoding($value, $encoding); + } +} +if (!\function_exists('mb_detect_encoding')) { + function mb_detect_encoding(?string $string, array|string|null $encodings = null, ?bool $strict = \false) : string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_detect_encoding((string) $string, $encodings, (bool) $strict); + } +} +if (!\function_exists('mb_detect_order')) { + function mb_detect_order(array|string|null $encoding = null) : array|bool + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_detect_order($encoding); + } +} +if (!\function_exists('mb_parse_str')) { + function mb_parse_str(?string $string, &$result = []) : bool + { + \parse_str((string) $string, $result); + return (bool) $result; + } +} +if (!\function_exists('mb_strlen')) { + function mb_strlen(?string $string, ?string $encoding = null) : int + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strlen((string) $string, $encoding); + } +} +if (!\function_exists('mb_strpos')) { + function mb_strpos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null) : int|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strpos((string) $haystack, (string) $needle, (int) $offset, $encoding); + } +} +if (!\function_exists('mb_strtolower')) { + function mb_strtolower(?string $string, ?string $encoding = null) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strtolower((string) $string, $encoding); + } +} +if (!\function_exists('mb_strtoupper')) { + function mb_strtoupper(?string $string, ?string $encoding = null) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strtoupper((string) $string, $encoding); + } +} +if (!\function_exists('mb_substitute_character')) { + function mb_substitute_character(string|int|null $substitute_character = null) : string|int|bool + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_substitute_character($substitute_character); + } +} +if (!\function_exists('mb_substr')) { + function mb_substr(?string $string, ?int $start, ?int $length = null, ?string $encoding = null) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_substr((string) $string, (int) $start, $length, $encoding); + } +} +if (!\function_exists('mb_stripos')) { + function mb_stripos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null) : int|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_stripos((string) $haystack, (string) $needle, (int) $offset, $encoding); + } +} +if (!\function_exists('mb_stristr')) { + function mb_stristr(?string $haystack, ?string $needle, ?bool $before_needle = \false, ?string $encoding = null) : string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_stristr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); + } +} +if (!\function_exists('mb_strrchr')) { + function mb_strrchr(?string $haystack, ?string $needle, ?bool $before_needle = \false, ?string $encoding = null) : string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strrchr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); + } +} +if (!\function_exists('mb_strrichr')) { + function mb_strrichr(?string $haystack, ?string $needle, ?bool $before_needle = \false, ?string $encoding = null) : string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strrichr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); + } +} +if (!\function_exists('mb_strripos')) { + function mb_strripos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null) : int|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strripos((string) $haystack, (string) $needle, (int) $offset, $encoding); + } +} +if (!\function_exists('mb_strrpos')) { + function mb_strrpos(?string $haystack, ?string $needle, ?int $offset = 0, ?string $encoding = null) : int|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strrpos((string) $haystack, (string) $needle, (int) $offset, $encoding); + } +} +if (!\function_exists('mb_strstr')) { + function mb_strstr(?string $haystack, ?string $needle, ?bool $before_needle = \false, ?string $encoding = null) : string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strstr((string) $haystack, (string) $needle, (bool) $before_needle, $encoding); + } +} +if (!\function_exists('mb_get_info')) { + function mb_get_info(?string $type = 'all') : array|string|int|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_get_info((string) $type); + } +} +if (!\function_exists('mb_http_output')) { + function mb_http_output(?string $encoding = null) : string|bool + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_http_output($encoding); + } +} +if (!\function_exists('mb_strwidth')) { + function mb_strwidth(?string $string, ?string $encoding = null) : int + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_strwidth((string) $string, $encoding); + } +} +if (!\function_exists('mb_substr_count')) { + function mb_substr_count(?string $haystack, ?string $needle, ?string $encoding = null) : int + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_substr_count((string) $haystack, (string) $needle, $encoding); + } +} +if (!\function_exists('mb_output_handler')) { + function mb_output_handler(?string $string, ?int $status) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_output_handler((string) $string, (int) $status); + } +} +if (!\function_exists('mb_http_input')) { + function mb_http_input(?string $type = null) : array|string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_http_input($type); + } +} +if (!\function_exists('mb_convert_variables')) { + function mb_convert_variables(?string $to_encoding, array|string|null $from_encoding, mixed &$var, mixed &...$vars) : string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_convert_variables((string) $to_encoding, $from_encoding ?? '', $var, ...$vars); + } +} +if (!\function_exists('mb_ord')) { + function mb_ord(?string $string, ?string $encoding = null) : int|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_ord((string) $string, $encoding); + } +} +if (!\function_exists('mb_chr')) { + function mb_chr(?int $codepoint, ?string $encoding = null) : string|false + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_chr((int) $codepoint, $encoding); + } +} +if (!\function_exists('mb_scrub')) { + function mb_scrub(?string $string, ?string $encoding = null) : string + { + $encoding ??= \mb_internal_encoding(); + return \mb_convert_encoding((string) $string, $encoding, $encoding); + } +} +if (!\function_exists('mb_str_split')) { + function mb_str_split(?string $string, ?int $length = 1, ?string $encoding = null) : array + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_str_split((string) $string, (int) $length, $encoding); + } +} +if (!\function_exists('WPMailSMTP\\Vendor\\mb_str_pad')) { + function mb_str_pad(string $string, int $length, string $pad_string = ' ', int $pad_type = \STR_PAD_RIGHT, ?string $encoding = null) : string + { + return \WPMailSMTP\Vendor\Symfony\Polyfill\Mbstring\Mbstring::mb_str_pad($string, $length, $pad_string, $pad_type, $encoding); + } +} +if (\extension_loaded('mbstring')) { + return; +} +if (!\defined('MB_CASE_UPPER')) { + \define('MB_CASE_UPPER', 0); +} +if (!\defined('MB_CASE_LOWER')) { + \define('MB_CASE_LOWER', 1); +} +if (!\defined('MB_CASE_TITLE')) { + \define('MB_CASE_TITLE', 2); +} diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/LICENSE b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/LICENSE index 4cd8bdd3..6e3afce6 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/LICENSE +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2015-2019 Fabien Potencier +Copyright (c) 2015-present Fabien Potencier Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/Php72.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/Php72.php index 52a985cd..667b25b8 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/Php72.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/Php72.php @@ -69,8 +69,8 @@ final class Php72 if ('\\' === \DIRECTORY_SEPARATOR) { return 'Windows'; } - $map = array('Darwin' => 'Darwin', 'DragonFly' => 'BSD', 'FreeBSD' => 'BSD', 'NetBSD' => 'BSD', 'OpenBSD' => 'BSD', 'Linux' => 'Linux', 'SunOS' => 'Solaris'); - return isset($map[\PHP_OS]) ? $map[\PHP_OS] : 'Unknown'; + $map = ['Darwin' => 'Darwin', 'DragonFly' => 'BSD', 'FreeBSD' => 'BSD', 'NetBSD' => 'BSD', 'OpenBSD' => 'BSD', 'Linux' => 'Linux', 'SunOS' => 'Solaris']; + return $map[\PHP_OS] ?? 'Unknown'; } public static function spl_object_id($object) { @@ -118,10 +118,10 @@ final class Php72 } private static function initHashMask() { - $obj = (object) array(); + $obj = (object) []; self::$hashMask = -1; // check if we are nested in an output buffering handler to prevent a fatal error with ob_start() below - $obFuncs = array('ob_clean', 'ob_end_clean', 'ob_flush', 'ob_end_flush', 'ob_get_contents', 'ob_get_flush'); + $obFuncs = ['ob_clean', 'ob_end_clean', 'ob_flush', 'ob_end_flush', 'ob_get_contents', 'ob_get_flush']; foreach (\debug_backtrace(\PHP_VERSION_ID >= 50400 ? \DEBUG_BACKTRACE_IGNORE_ARGS : \false) as $frame) { if (isset($frame['function'][0]) && !isset($frame['class']) && 'o' === $frame['function'][0] && \in_array($frame['function'], $obFuncs)) { $frame['line'] = 0; @@ -146,7 +146,7 @@ final class Php72 } else { $s = \chr(0xf0 | $code >> 18) . \chr(0x80 | $code >> 12 & 0x3f) . \chr(0x80 | $code >> 6 & 0x3f) . \chr(0x80 | $code & 0x3f); } - if ('UTF-8' !== $encoding) { + if ('UTF-8' !== ($encoding = $encoding ?? \mb_internal_encoding())) { $s = \mb_convert_encoding($s, $encoding, 'UTF-8'); } return $s; diff --git a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/bootstrap.php b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/bootstrap.php index 8ace9df8..40a629e5 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/bootstrap.php +++ b/wp/wp-content/plugins/wp-mail-smtp/vendor_prefixed/symfony/polyfill-php72/bootstrap.php @@ -11,7 +11,7 @@ use WPMailSMTP\Vendor\Symfony\Polyfill\Php72 as p; -if (PHP_VERSION_ID >= 70200) { +if (\PHP_VERSION_ID >= 70200) { return; } @@ -31,7 +31,7 @@ if (!defined('PHP_OS_FAMILY')) { define('PHP_OS_FAMILY', p\Php72::php_os_family()); } -if ('\\' === DIRECTORY_SEPARATOR && !function_exists('sapi_windows_vt100_support')) { +if ('\\' === \DIRECTORY_SEPARATOR && !function_exists('sapi_windows_vt100_support')) { function sapi_windows_vt100_support($stream, $enable = null) { return p\Php72::sapi_windows_vt100_support($stream, $enable); } } if (!function_exists('stream_isatty')) { diff --git a/wp/wp-content/plugins/wp-mail-smtp/wp_mail_smtp.php b/wp/wp-content/plugins/wp-mail-smtp/wp_mail_smtp.php index 7b0960f0..a0f14afc 100644 --- a/wp/wp-content/plugins/wp-mail-smtp/wp_mail_smtp.php +++ b/wp/wp-content/plugins/wp-mail-smtp/wp_mail_smtp.php @@ -1,8 +1,8 @@ wp_mail() function to use Gmail/Mailgun/SendGrid/SMTP instead of the default mail() and creates an options page to manage the settings. @@ -248,15 +248,35 @@ if ( ! function_exists( 'wp_mail_smtp_insecure_php_version_notice' ) ) { } if ( ! defined( 'WPMS_PLUGIN_VER' ) ) { - define( 'WPMS_PLUGIN_VER', '3.11.1' ); + /** + * Plugin version. + * + * @since 0.11.1 + */ + define( 'WPMS_PLUGIN_VER', '4.0.1' ); } if ( ! defined( 'WPMS_PHP_VER' ) ) { + /** + * Minimum supported PHP version. + * + * @since 1.0.0 + */ define( 'WPMS_PHP_VER', '7.2' ); } if ( ! defined( 'WPMS_WP_VER' ) ) { - define( 'WPMS_WP_VER', '5.2' ); + /** + * Minimum supported WordPress version. + * + * @since 3.3.0 + */ + define( 'WPMS_WP_VER', '5.5' ); } if ( ! defined( 'WPMS_PLUGIN_FILE' ) ) { + /** + * Plugin main file path. + * + * @since 2.1.2 + */ define( 'WPMS_PLUGIN_FILE', __FILE__ ); } diff --git a/wp/wp-content/plugins/wp-schema-pro/changelog.txt b/wp/wp-content/plugins/wp-schema-pro/changelog.txt index 473cdec2..d0b4bec4 100644 --- a/wp/wp-content/plugins/wp-schema-pro/changelog.txt +++ b/wp/wp-content/plugins/wp-schema-pro/changelog.txt @@ -1,3 +1,11 @@ +v2.7.16 +# Improvement: Improved codebase for improved security. +# Improvement: PHP 8.2 compatibility testing and fixes. +# Improvement: Updated placeholder URL from HTTP to HTTPS. +# Fix: Resolved conflicts with Avada builder plugin. +# Fix: Resolved fatal error caused by identical function name conflicts with other plugins. +# Fix: Undefined wpcom_vip_url_to_postid causing fatal error. + v2.7.15 # Fix: Fields data not saving when page is updated. # Fix: Implemented refined guidelines for Product review and rating. diff --git a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-custom-fields-markup.php b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-custom-fields-markup.php index 88c726d3..0b7ba435 100644 --- a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-custom-fields-markup.php +++ b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-custom-fields-markup.php @@ -140,7 +140,13 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Custom_Fields_Markup' ) ) { $atts ); - $post_id = empty( $args['post_id'] ) ? get_the_ID() : (int) $args['post_id']; + $post_id = empty( $args['post_id'] ) ? get_the_ID() : (int) $args['post_id']; + $post = get_post( $post_id ); + + if ( ! current_user_can( 'edit_post', $post_id ) || ( ! current_user_can( 'read_private_posts' ) && ( 'private' === $post->post_status ) ) ) { + return ''; // Insufficient permissions or invalid post. + } + $allowed_post_types = array( 'post', 'page', 'comment', 'term' ); if ( ! in_array( $args['post_type'], $allowed_post_types ) ) { return 'Invalid post type'; @@ -467,7 +473,7 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Custom_Fields_Markup' ) ) { } } - self::$meta_options = call_user_func_array('array_merge', self::$meta_options); + self::$meta_options = call_user_func_array( 'array_merge', self::$meta_options ); } } @@ -1184,7 +1190,8 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Custom_Fields_Markup' ) ) { * Get meta options */ $this->init_static_fields( $post_id ); - $post_meta = self::$meta_options; + $post_meta = self::$meta_options; + $meta_value = null; foreach ( $post_meta as $key => $data ) { if ( is_numeric( $key ) ) { // Sanitize values. @@ -1193,30 +1200,42 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Custom_Fields_Markup' ) ) { switch ( $sanitize_filter ) { case 'FILTER_SANITIZE_STRING': - $meta_value = filter_input( INPUT_POST, $data['name'], FILTER_DEFAULT ); // phpcs:ignore WordPressVIPMinimum.Security.PHPFilterFunctions.RestrictedFilter + if ( isset( $data['name'] ) ) { + $meta_value = filter_input( INPUT_POST, $data['name'], FILTER_DEFAULT ); // phpcs:ignore WordPressVIPMinimum.Security.PHPFilterFunctions.RestrictedFilter + } break; case 'FILTER_SANITIZE_URL': - $meta_value = filter_input( INPUT_POST, $data['name'], FILTER_SANITIZE_URL ); + if ( isset( $data['name'] ) ) { + $meta_value = filter_input( INPUT_POST, $data['name'], FILTER_SANITIZE_URL ); + } break; case 'FILTER_SANITIZE_NUMBER_INT': - $meta_value = filter_input( INPUT_POST, $data['name'], FILTER_SANITIZE_NUMBER_INT ); + if ( isset( $data['name'] ) ) { + $meta_value = filter_input( INPUT_POST, $data['name'], FILTER_SANITIZE_NUMBER_INT ); + } break; case 'repeater-target': case 'repeater': - $meta_value = isset( $_POST[ $data['name'] ] ) ? $_POST[ $data['name'] ] : ''; // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized + if ( isset( $data['name'] ) ) { + $meta_value = isset( $_POST[ $data['name'] ] ) ? $_POST[ $data['name'] ] : ''; // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized + } break; default: - $meta_value = filter_input( INPUT_POST, $data['name'], FILTER_DEFAULT ); // phpcs:ignore WordPressVIPMinimum.Security.PHPFilterFunctions.RestrictedFilter + if ( isset( $data['name'] ) ) { + $meta_value = filter_input( INPUT_POST, $data['name'], FILTER_DEFAULT ); // phpcs:ignore WordPressVIPMinimum.Security.PHPFilterFunctions.RestrictedFilter + } break; } - update_post_meta( $post_id, $data['name'] . '-fieldtype', filter_input( INPUT_POST, $data['name'] . '-fieldtype', FILTER_DEFAULT ) ); // phpcs:ignore WordPressVIPMinimum.Security.PHPFilterFunctions.RestrictedFilter - update_post_meta( $post_id, $data['name'], $meta_value ); + if ( isset( $data['name'] ) ) { + update_post_meta( $post_id, $data['name'] . '-fieldtype', filter_input( INPUT_POST, $data['name'] . '-fieldtype', FILTER_DEFAULT ) ); // phpcs:ignore WordPressVIPMinimum.Security.PHPFilterFunctions.RestrictedFilter + update_post_meta( $post_id, $data['name'], $meta_value ); + } } } diff --git a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema-template.php b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema-template.php index eb87616c..ab57cac3 100644 --- a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema-template.php +++ b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema-template.php @@ -165,7 +165,7 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Schema_Template' ) ) { } if ( is_array( $value ) ) { foreach ( $value as $val ) { - if( is_array( $val ) ) { + if ( is_array( $val ) ) { $selected[] = $val['value']; } else { $selected[] = $val; diff --git a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema-wizard.php b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema-wizard.php index 30234499..111de935 100644 --- a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema-wizard.php +++ b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema-wizard.php @@ -15,6 +15,8 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Schema_Wizard' ) ) : * BSF_AIOSRS_Pro_Schema_Wizard class. */ class BSF_AIOSRS_Pro_Schema_Wizard { + protected $steps = array(); + protected $step; /** * Hook in tabs. @@ -24,25 +26,7 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Schema_Wizard' ) ) : add_action( 'admin_menu', array( $this, 'admin_menus' ) ); add_action( 'admin_init', array( $this, 'setup_wizard' ) ); } - } - /** - * Add admin menus/screens. - */ - public function admin_menus() { - add_dashboard_page( '', '', 'manage_options', 'aiosrs-pro-setup', '' ); - } - - /** - * Show the setup wizard. - */ - public function setup_wizard() { - if ( isset( $_REQUEST['wp_schema_pro_admin_page_nonce'] ) && ! wp_verify_nonce( sanitize_text_field( $_REQUEST['wp_schema_pro_admin_page_nonce'] ), 'wp_schema_pro_admin_page' ) ) { - return; - } - if ( empty( $_GET['page'] ) || 'aiosrs-pro-setup' !== $_GET['page'] ) { - return; - } $this->steps = array( 'basic-config' => array( 'name' => __( 'Choose Schema Type', 'wp-schema-pro' ), @@ -60,7 +44,27 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Schema_Wizard' ) ) : 'handler' => '', ), ); + } + /** + * Add admin menus/screens. + */ + public function admin_menus() { + add_dashboard_page( '', '', 'manage_options', 'aiosrs-pro-setup', '' ); + } + + /** + * Show the setup wizard. + */ + public function setup_wizard() { + if ( isset( $_REQUEST['wp_schema_pro_admin_page_nonce'] ) && ! wp_verify_nonce( sanitize_text_field( $_REQUEST['wp_schema_pro_admin_page_nonce'] ), 'wp_schema_pro_admin_page' ) ) { + return; + } + + if ( empty( $_GET['page'] ) || 'aiosrs-pro-setup' !== $_GET['page'] ) { + return; + } + $this->step = isset( $_GET['step'] ) ? sanitize_key( $_GET['step'] ) : current( array_keys( $this->steps ) ); wp_enqueue_style( 'aiosrs-pro-setup', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'setup-wizard.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, array( 'dashicons', 'install' ), BSF_AIOSRS_PRO_VER ); diff --git a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema.php b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema.php index abcb4a52..88c2c7e3 100644 --- a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema.php +++ b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-schema.php @@ -1621,10 +1621,10 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Schema' ) ) { ), ), 'rating' => array( - 'label' => esc_html__( 'Rating', 'wp-schema-pro' ), - 'type' => 'rating', - 'default' => 'accept-user-rating', - 'description' => esc_html__( 'To maintain accurate product information, kindly provide at least one rating.', 'wp-schema-pro') + 'label' => esc_html__( 'Rating', 'wp-schema-pro' ), + 'type' => 'rating', + 'default' => 'accept-user-rating', + 'description' => esc_html__( 'To maintain accurate product information, kindly provide at least one rating.', 'wp-schema-pro' ), ), 'review-count' => array( 'label' => esc_html__( 'Review Count', 'wp-schema-pro' ), @@ -1633,10 +1633,10 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Schema' ) ) { 'description' => esc_html__( 'The count of total number of reviews. e.g. "11"', 'wp-schema-pro' ), ), 'product-review' => array( - 'label' => esc_html__( 'Review', 'wp-schema-pro' ), - 'type' => 'repeater', - 'description' => esc_html__( 'To ensure the accuracy of our product ratings, kindly provide at least one review.', 'wp-schema-pro'), - 'fields' => array( + 'label' => esc_html__( 'Review', 'wp-schema-pro' ), + 'type' => 'repeater', + 'description' => esc_html__( 'To ensure the accuracy of our product ratings, kindly provide at least one review.', 'wp-schema-pro' ), + 'fields' => array( 'reviewer-type' => array( 'label' => esc_html__( 'Reviewer Type', 'wp-schema-pro' ), 'type' => 'text', diff --git a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-setup-wizard.php b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-setup-wizard.php index 008bf16d..40453d0b 100644 --- a/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-setup-wizard.php +++ b/wp/wp-content/plugins/wp-schema-pro/classes/class-bsf-aiosrs-pro-setup-wizard.php @@ -9,97 +9,102 @@ if ( ! defined( 'ABSPATH' ) ) { exit; } -if ( ! class_exists( 'BSF_AIOSRS_Pro_Setup_Wizard' ) ) : +if (!class_exists('BSF_AIOSRS_Pro_Setup_Wizard')) : /** * BSF_AIOSRS_Pro_Setup_Wizard class. */ - class BSF_AIOSRS_Pro_Setup_Wizard { + class BSF_AIOSRS_Pro_Setup_Wizard + { + + public $steps = array(); + public $step; /** * Hook in tabs. */ - public function __construct() { + public function __construct() + { - if ( apply_filters( 'wp_schema_pro_enable_setup_wizard', true ) && current_user_can( 'manage_options' ) ) { - - if ( get_transient( 'wp-schema-pro-activated' ) ) { - delete_transient( 'wp-schema-pro-activated' ); + if (apply_filters('wp_schema_pro_enable_setup_wizard', true) && current_user_can('manage_options')) { + if (get_transient('wp-schema-pro-activated')) { + delete_transient('wp-schema-pro-activated'); } - add_action( 'admin_menu', array( $this, 'admin_menus' ) ); - add_action( 'admin_init', array( $this, 'setup_wizard' ) ); - + add_action('admin_menu', array($this, 'admin_menus')); + add_action('admin_init', array($this, 'setup_wizard')); } } /** * Add admin menus/screens. */ - public function admin_menus() { - add_dashboard_page( '', '', 'manage_options', 'aiosrs-pro-setup-wizard', '' ); + public function admin_menus() + { + add_dashboard_page('', '', 'manage_options', 'aiosrs-pro-setup-wizard', ''); } /** * Show the setup wizard. */ - public function setup_wizard() { - if ( isset( $_REQUEST['wp_schema_pro_admin_page_nonce'] ) && ! wp_verify_nonce( sanitize_text_field( $_REQUEST['wp_schema_pro_admin_page_nonce'] ), 'wp_schema_pro_admin_page' ) ) { + public function setup_wizard() + { + if (isset($_REQUEST['wp_schema_pro_admin_page_nonce']) && !wp_verify_nonce(sanitize_text_field($_REQUEST['wp_schema_pro_admin_page_nonce']), 'wp_schema_pro_admin_page')) { return; } - if ( empty( $_GET['page'] ) || 'aiosrs-pro-setup-wizard' !== $_GET['page'] ) { + if (empty($_GET['page']) || 'aiosrs-pro-setup-wizard' !== $_GET['page']) { return; } $this->steps = array( 'welcome' => array( - 'name' => __( 'Welcome', 'wp-schema-pro' ), - 'view' => array( $this, 'welcome' ), + 'name' => __('Welcome', 'wp-schema-pro'), + 'view' => array($this, 'welcome'), ), 'general-setting' => array( - 'name' => __( 'General', 'wp-schema-pro' ), - 'view' => array( $this, 'general_setting' ), - 'handler' => array( $this, 'general_setting_save' ), + 'name' => __('General', 'wp-schema-pro'), + 'view' => array($this, 'general_setting'), + 'handler' => array($this, 'general_setting_save'), ), 'social-profiles' => array( - 'name' => __( 'Social Profiles', 'wp-schema-pro' ), - 'view' => array( $this, 'social_profiles' ), - 'handler' => array( $this, 'social_profiles_save' ), + 'name' => __('Social Profiles', 'wp-schema-pro'), + 'view' => array($this, 'social_profiles'), + 'handler' => array($this, 'social_profiles_save'), ), 'global-schemas' => array( - 'name' => __( 'Other Schemas', 'wp-schema-pro' ), - 'view' => array( $this, 'global_schemas' ), - 'handler' => array( $this, 'global_schemas_save' ), + 'name' => __('Other Schemas', 'wp-schema-pro'), + 'view' => array($this, 'global_schemas'), + 'handler' => array($this, 'global_schemas_save'), ), 'success' => array( - 'name' => __( 'Done', 'wp-schema-pro' ), - 'view' => array( $this, 'success' ), + 'name' => __('Done', 'wp-schema-pro'), + 'view' => array($this, 'success'), 'handler' => '', ), ); - $this->step = isset( $_GET['step'] ) ? sanitize_key( $_GET['step'] ) : current( array_keys( $this->steps ) ); + $this->step = isset($_GET['step']) ? sanitize_key($_GET['step']) : current(array_keys($this->steps)); - wp_enqueue_style( 'aiosrs-pro-setup-wizard', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'setup-wizard.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, array( 'dashicons', 'install' ), BSF_AIOSRS_PRO_VER ); - wp_enqueue_style( 'aiosrs-pro-admin-edit-style', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'style.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, BSF_AIOSRS_PRO_VER, 'false' ); - wp_enqueue_style( 'aiosrs-pro-admin-settings-style', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'settings-style.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, BSF_AIOSRS_PRO_VER, 'false' ); - wp_register_script( 'aiosrs-pro-settings-script', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_js . 'settings-script.' . BSF_AIOSRS_Pro_Admin::$minfy_js_ext, array( 'jquery', 'bsf-target-rule-select2', 'wp-i18n' ), BSF_AIOSRS_PRO_VER, true ); + wp_enqueue_style('aiosrs-pro-setup-wizard', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'setup-wizard.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, array('dashicons', 'install'), BSF_AIOSRS_PRO_VER); + wp_enqueue_style('aiosrs-pro-admin-edit-style', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'style.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, BSF_AIOSRS_PRO_VER, 'false'); + wp_enqueue_style('aiosrs-pro-admin-settings-style', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_css . 'settings-style.' . BSF_AIOSRS_Pro_Admin::$minfy_css_ext, BSF_AIOSRS_PRO_VER, 'false'); + wp_register_script('aiosrs-pro-settings-script', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_js . 'settings-script.' . BSF_AIOSRS_Pro_Admin::$minfy_js_ext, array('jquery', 'bsf-target-rule-select2', 'wp-i18n'), BSF_AIOSRS_PRO_VER, true); wp_enqueue_media(); - wp_enqueue_script( 'media' ); - wp_enqueue_style( 'bsf-target-rule-select2', BSF_AIOSRS_PRO_URI . 'classes/lib/target-rule/select2.css', '', BSF_AIOSRS_PRO_VER, false ); - wp_register_script( 'bsf-target-rule-select2', BSF_AIOSRS_PRO_URI . 'classes/lib/target-rule/select2.js', array( 'jquery', 'backbone', 'wp-util' ), BSF_AIOSRS_PRO_VER, true ); + wp_enqueue_script('media'); + wp_enqueue_style('bsf-target-rule-select2', BSF_AIOSRS_PRO_URI . 'classes/lib/target-rule/select2.css', '', BSF_AIOSRS_PRO_VER, false); + wp_register_script('bsf-target-rule-select2', BSF_AIOSRS_PRO_URI . 'classes/lib/target-rule/select2.js', array('jquery', 'backbone', 'wp-util'), BSF_AIOSRS_PRO_VER, true); wp_localize_script( 'aiosrs-pro-settings-script', 'AIOSRS_search', apply_filters( 'aiosrs_pro_settings_script_localize', array( - 'search_field' => wp_create_nonce( 'spec_schema' ), + 'search_field' => wp_create_nonce('spec_schema'), ) ) ); - wp_register_script( 'aiosrs-pro-setup-wizard', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_js . 'setup-wizard.' . BSF_AIOSRS_Pro_Admin::$minfy_js_ext, array( 'jquery' ), BSF_AIOSRS_PRO_VER, true ); - if ( isset( $_POST['_wpnonce'] ) && wp_verify_nonce( sanitize_text_field( $_POST['_wpnonce'] ), 'aiosrs-pro-setup-wizard' ) && ! empty( $_POST['save_step'] ) && isset( $this->steps[ $this->step ]['handler'] ) ) { - call_user_func( $this->steps[ $this->step ]['handler'] ); + wp_register_script('aiosrs-pro-setup-wizard', BSF_AIOSRS_PRO_URI . 'admin/assets/' . BSF_AIOSRS_Pro_Admin::$minfy_js . 'setup-wizard.' . BSF_AIOSRS_Pro_Admin::$minfy_js_ext, array('jquery'), BSF_AIOSRS_PRO_VER, true); + if (isset($_POST['_wpnonce']) && wp_verify_nonce(sanitize_text_field($_POST['_wpnonce']), 'aiosrs-pro-setup-wizard') && !empty($_POST['save_step']) && isset($this->steps[$this->step]['handler'])) { + call_user_func($this->steps[$this->step]['handler']); } ob_start(); @@ -113,48 +118,64 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Setup_Wizard' ) ) : /** * Get previous step link */ - public function get_prev_step_link() { - $keys = array_keys( $this->steps ); - return add_query_arg( 'step', $keys[ array_search( $this->step, array_keys( $this->steps ), true ) - 1 ] ); + public function get_prev_step_link() + { + $keys = array_keys($this->steps); + return add_query_arg('step', $keys[array_search($this->step, array_keys($this->steps), true) - 1]); } /** * Get next step link */ - public function get_next_step_link() { - $keys = array_keys( $this->steps ); - return add_query_arg( 'step', $keys[ array_search( $this->step, array_keys( $this->steps ), true ) + 1 ] ); + public function get_next_step_link() + { + $keys = array_keys($this->steps); + return add_query_arg('step', $keys[array_search($this->step, array_keys($this->steps), true) + 1]); } /** * Setup Wizard Header. */ - public function setup_wizard_header() { + public function setup_wizard_header() + { ?> + - <?php esc_html_e( 'Schema Setup', 'wp-schema-pro' ); ?> + <?php esc_html_e('Schema Setup', 'wp-schema-pro'); ?> - - - + + + +
      - +
      - - - + + + + steps; ?>
        $step ) : + foreach ($ouput_steps as $step_key => $step) : $classes = ''; - if ( $step_key === $this->step ) { + if ($step_key === $this->step) { $classes = 'active'; - } elseif ( array_search( $this->step, array_keys( $this->steps ), true ) > array_search( $step_key, array_keys( $this->steps ), true ) ) { + } elseif (array_search($this->step, array_keys($this->steps), true) > array_search($step_key, array_keys($this->steps), true)) { $classes = 'done'; } - $url = add_query_arg( 'step', $step_key ) + $url = add_query_arg('step', $step_key) ?> -
      1. - +
      2. +
      @@ -205,51 +229,53 @@ if ( ! class_exists( 'BSF_AIOSRS_Pro_Setup_Wizard' ) ) : /** * Output the content for the current step. */ - public function setup_wizard_content() { - echo '
      '; - call_user_func( $this->steps[ $this->step ]['view'] ); + public function setup_wizard_content() + { + echo '
      '; + call_user_func($this->steps[$this->step]['view']); echo '
      '; } /** * Welcome. */ - public function welcome() { - if ( is_multisite() ) { - $branding_msg = get_site_option( 'wp-schema-pro-branding-settings' ); + public function welcome() + { + if (is_multisite()) { + $branding_msg = get_site_option('wp-schema-pro-branding-settings'); } else { $branding_msg = BSF_AIOSRS_Pro_Helper::$settings['wp-schema-pro-branding-settings']; } - $sp_name = isset( $branding_msg['sp_plugin_name'] ) ? $branding_msg['sp_plugin_name'] : ''; - if ( '' !== $sp_name ) { - /* translators: %s: search term */ - $brand_msg = sprintf( __( 'Welcome to %s setup wizard !', 'wp-schema-pro' ), $sp_name ); - /* translators: %s: search term */ - $brand_steup = sprintf( __( '%s adds Google-recommended schema markups across your site and specific pages. This improves your SEO and allows search engines to display rich snippets for your website.', 'wp-schema-pro' ), $sp_name ); + $sp_name = isset($branding_msg['sp_plugin_name']) ? $branding_msg['sp_plugin_name'] : ''; + if ('' !== $sp_name) { + /* translators: %s: search term */ + $brand_msg = sprintf(__('Welcome to %s setup wizard !', 'wp-schema-pro'), $sp_name); + /* translators: %s: search term */ + $brand_steup = sprintf(__('%s adds Google-recommended schema markups across your site and specific pages. This improves your SEO and allows search engines to display rich snippets for your website.', 'wp-schema-pro'), $sp_name); ?> -

      -

      +

      +

      -

      +

      - +

      - +

      - +

      - Watch a detailed video on the setup wizard tutorial.', 'wp-schema-pro' ) ); ?> + Watch a detailed video on the setup wizard tutorial.', 'wp-schema-pro')); ?>

      - » - + » +

      -

      -

      +

      +

      - + - + - > - + > + - > - + > + - > - + + } + } + ?> + +

      + Learn more', 'wp-schema-pro') + ); + } + ?> +

      +
      - -
      - + +
      + -
      - +
      + - - + +
      -

      -

      +

      +

      - +
      - +
      - > + + + + + + - -

      - Learn more', 'wp-schema-pro' ) - ); } - ?> -

      -

      - - - « + + + «

      get_next_step_link(); - wp_safe_redirect( esc_url_raw( $redirect_url ) ); + wp_safe_redirect(esc_url_raw($redirect_url)); exit; } /** * Social Profiles */ - public function social_profiles() { + public function social_profiles() + { $settings = BSF_AIOSRS_Pro_Helper::$settings['wp-schema-pro-social-profiles']; ?> -

      -

      +

      +

      - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + $value ) { if ( isset( $value ) && ! empty( $value ) ) { ?> - - - - - + + + + - - - + + +

      - - - « + + + «

      get_next_step_link(); - wp_safe_redirect( esc_url_raw( $redirect_url ) ); + wp_safe_redirect(esc_url_raw($redirect_url)); exit; } /** * Global Schemas */ - public function global_schemas() { + public function global_schemas() + { $settings = BSF_AIOSRS_Pro_Helper::$settings['wp-schema-pro-global-schemas']; ?> -

      -

      +

      +

      - + - + + $page_title) { ?> +
      - + - + + $page_title) { ?> +
      - + '; - BSF_AIOSRS_Pro_Admin::get_tooltip( $message ); + $message = ''; + BSF_AIOSRS_Pro_Admin::get_tooltip($message); ?> - + + + -

      +

      - + '; - BSF_AIOSRS_Pro_Admin::get_tooltip( $message ); + $message = ''; + BSF_AIOSRS_Pro_Admin::get_tooltip($message); ?> -

      +

      - + '; - BSF_AIOSRS_Pro_Admin::get_tooltip( $message ); + $message = ''; + BSF_AIOSRS_Pro_Admin::get_tooltip($message); ?> -

      +

      - - - « + + + «

      get_next_step_link(); - wp_safe_redirect( esc_url_raw( $redirect_url ) ); + wp_safe_redirect(esc_url_raw($redirect_url)); exit; } /** * Final step. */ - public function success() { + public function success() + { ?> -

      +

      - +

      - +

      - +

      - - + +

      - +

      - +
      - diff --git a/wp/wp-content/plugins/wp-schema-pro/languages/wp-schema-pro.pot b/wp/wp-content/plugins/wp-schema-pro/languages/wp-schema-pro.pot index f3a105d5..21af7b2a 100644 --- a/wp/wp-content/plugins/wp-schema-pro/languages/wp-schema-pro.pot +++ b/wp/wp-content/plugins/wp-schema-pro/languages/wp-schema-pro.pot @@ -2,9 +2,9 @@ # This file is distributed under the GPL2. msgid "" msgstr "" -"Project-Id-Version: Schema Pro 2.7.15\n" +"Project-Id-Version: Schema Pro 2.7.16\n" "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-schema-pro\n" -"POT-Creation-Date: 2024-02-12 05:31:48+00:00\n" +"POT-Creation-Date: 2024-02-27 05:41:13+00:00\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -143,23 +143,23 @@ msgstr "" msgid "(0 Reviews)" msgstr "" -#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:249 +#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:255 #: classes/class-bsf-aiosrs-pro-schema.php:1117 msgid "Applicant Location" msgstr "" -#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:253 +#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:259 #: classes/class-bsf-aiosrs-pro-schema.php:1121 msgid "" "The geographic location(s) in which employees may be located to be eligible " "for the Remote job." msgstr "" -#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:797 +#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:805 msgid "Reset" msgstr "" -#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:813 +#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:821 #: classes/class-bsf-aiosrs-pro-markup.php:153 #: classes/class-bsf-aiosrs-pro-markup.php:299 #. translators: 1: number of reviews @@ -168,18 +168,18 @@ msgid_plural "(%1s Reviews)" msgstr[0] "" msgstr[1] "" -#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:850 +#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:858 #: classes/class-bsf-aiosrs-pro-schema.php:3794 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:311 template/settings.php:93 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:338 template/settings.php:93 #: template/wpsp-advanced-settings.php:127 msgid "Select Image" msgstr "" -#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:865 +#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:873 msgid "Add your snippet here..." msgstr "" -#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:918 +#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:926 msgid "By clicking on this, it will allow you to fill advanced data." msgstr "" @@ -204,103 +204,103 @@ msgstr "" msgid "You searched for " msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:48 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:32 msgid "Choose Schema Type" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:53 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:37 msgid "Set Target Pages" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:58 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:42 msgid "Ready!" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:116 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:139 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:120 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:148 msgid "Schema Setup" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:146 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:170 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:150 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:192 msgid "Exit Setup Wizard" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:192 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:196 msgid "Select the Schema Type:" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:210 -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:350 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:378 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:476 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:597 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:214 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:354 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:405 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:505 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:628 msgid "Next" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:308 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:312 #: classes/class-bsf-aiosrs-pro-schema.php:3368 #. translators: 1 schema title msgid "Enable On" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:309 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:313 msgid "Add target pages where this Schema should appear." msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:316 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:320 #: classes/class-bsf-aiosrs-pro-schema.php:3376 msgid "Display Rules" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:320 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:324 #: classes/class-bsf-aiosrs-pro-schema.php:3380 msgid "Add “AND” Rule" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:329 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:333 #: classes/class-bsf-aiosrs-pro-schema.php:3389 msgid "Exclude From" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:330 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:334 msgid "This Schema will not appear at these pages." msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:337 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:341 #: classes/class-bsf-aiosrs-pro-schema.php:3397 msgid "Exclude On" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:340 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:344 #: classes/class-bsf-aiosrs-pro-schema.php:3400 msgid "Add “OR” Rule" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:440 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:444 msgid "Your Schema is Ready!" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:455 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:459 #. translators: 1 schema title msgid "Here’s what to do next:" msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:456 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:460 msgid "" "Step 1: Complete the setup and proceed to fill the required properties of " "this schema." msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:457 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:461 msgid "Step 2: Add necessary Schema information on individual pages and posts." msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:458 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:462 msgid "Step 3: Test if Schema is integrated correctly." msgstr "" -#: classes/class-bsf-aiosrs-pro-schema-wizard.php:464 +#: classes/class-bsf-aiosrs-pro-schema-wizard.php:468 msgid "Complete Setup" msgstr "" @@ -1102,8 +1102,8 @@ msgid "Local Business Type" msgstr "" #: classes/class-bsf-aiosrs-pro-schema.php:1204 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:59 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:265 template/settings.php:16 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:64 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:292 template/settings.php:16 #: template/settings.php:33 msgid "General" msgstr "" @@ -1325,7 +1325,7 @@ msgstr "" #: classes/class-bsf-aiosrs-pro-schema.php:1646 #: classes/class-bsf-aiosrs-pro-schema.php:1699 #: classes/class-bsf-aiosrs-pro-schema.php:2279 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:276 template/settings.php:58 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:303 template/settings.php:58 msgid "Organization" msgstr "" @@ -2203,7 +2203,7 @@ msgid "Movie Director Name" msgstr "" #: classes/class-bsf-aiosrs-pro-schema.php:2896 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:329 template/settings.php:111 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:356 template/settings.php:111 msgid "Organization Name" msgstr "" @@ -4384,31 +4384,31 @@ msgstr "" msgid "%s draft updated." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:55 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:60 msgid "Welcome" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:64 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:407 template/settings.php:17 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:69 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:436 template/settings.php:17 #: template/settings.php:171 template/wpsp-advanced-settings.php:190 msgid "Social Profiles" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:69 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:505 template/settings.php:19 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:74 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:536 template/settings.php:19 msgid "Other Schemas" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:74 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:79 msgid "Done" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:226 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:252 #. translators: %s: search term msgid "Welcome to %s setup wizard !" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:228 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:254 #. translators: %s: search term msgid "" "%s adds Google-recommended schema markups across your site and specific " @@ -4416,212 +4416,212 @@ msgid "" "snippets for your website." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:235 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:261 msgid "Welcome To Schema Pro Setup Wizard!" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:237 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:263 msgid "" "Schema Pro adds Google-recommended schema markups across your site and " "specific pages. This improves your SEO and allows search engines to display " "rich snippets for your website." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:243 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:269 msgid "" "This wizard is the first step to making Google understand your site better. " "Just fill in the required basic information. It’s easy!" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:251 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:277 msgid "Start" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:266 template/settings.php:44 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:293 template/settings.php:44 msgid "" "To help Google understand what your website is about, select the most " "suitable type for your website below, and fill in the required basic " "information." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:270 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:297 msgid "This Website Represents " msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:273 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:519 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:536 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:554 template/settings.php:55 -#: template/settings.php:294 template/settings.php:435 -#: template/settings.php:477 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:300 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:550 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:567 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:585 template/settings.php:55 +#: template/settings.php:294 template/settings.php:440 +#: template/settings.php:482 msgid "--None--" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:274 template/settings.php:56 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:301 template/settings.php:56 msgid "Personal Website" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:275 template/settings.php:57 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:302 template/settings.php:57 msgid "Business Website" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:277 template/settings.php:59 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:304 template/settings.php:59 msgid "Personal Blog" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:278 template/settings.php:60 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:305 template/settings.php:60 msgid "Community Blog/News Website " msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:279 template/settings.php:61 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:306 template/settings.php:61 msgid "Webshop" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:292 template/settings.php:74 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:319 template/settings.php:74 msgid "Website Logo" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:295 template/settings.php:77 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:322 template/settings.php:77 msgid "Add Custom Logo" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:318 template/settings.php:100 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:345 template/settings.php:100 msgid "Recommended minimum logo size 112 x 112 pixels." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:319 template/settings.php:101 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:346 template/settings.php:101 msgid "The image must be in .jpg, .png, .gif, .svg, or .webp format." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:323 template/settings.php:105 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:350 template/settings.php:105 msgid "Website Owner Name" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:337 template/settings.php:118 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:364 template/settings.php:118 msgid "Organization Type" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:364 template/settings.php:141 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:391 template/settings.php:141 msgid "" "Select the type that best describes your website. If you can't find one " "that applies exactly, use the generic \"General/Other\" type. Further " "create Local Business schema for \"General/Other\" type." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:366 template/settings.php:143 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:393 template/settings.php:143 msgid "" "Select the type that best describes your website. If you can't find one " "that applies exactly, use the generic \"General/Other\" type. Further " "create Local Business schema for \"General/Other\" type. " msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:379 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:477 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:598 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:406 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:506 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:629 msgid "Previous" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:408 template/settings.php:182 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:437 template/settings.php:182 msgid "" "Please enter all your possible social media profiles. These links can " "appear in the knowledge panel of the search results for your website." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:412 template/settings.php:189 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:441 template/settings.php:189 msgid "Facebook" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:416 template/settings.php:193 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:445 template/settings.php:193 msgid "Instagram" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:420 template/settings.php:197 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:449 template/settings.php:197 msgid "YouTube" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:424 template/settings.php:201 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:453 template/settings.php:201 msgid "Twitter" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:428 template/settings.php:205 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:457 template/settings.php:205 msgid "Pinterest" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:432 template/settings.php:209 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:461 template/settings.php:209 msgid "LinkedIn" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:436 template/settings.php:213 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:465 template/settings.php:213 msgid "SoundCloud" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:440 template/settings.php:217 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:469 template/settings.php:217 msgid "Tumblr" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:444 template/settings.php:221 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:473 template/settings.php:221 msgid "Wikipedia" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:448 template/settings.php:225 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:477 template/settings.php:225 msgid "MySpace" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:452 template/settings.php:229 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:481 template/settings.php:229 msgid "Google+" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:461 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:470 template/settings.php:238 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:490 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:499 template/settings.php:238 #: template/settings.php:250 template/settings.php:305 msgid "Other" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:506 template/settings.php:420 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:537 template/settings.php:425 msgid "" "Fill in additional information about your website to make sure that search " "engines fully understand what it’s about. This will help improve your SEO " "further." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:511 template/settings.php:427 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:542 template/settings.php:432 msgid "Select About Page" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:513 template/settings.php:429 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:544 template/settings.php:434 msgid "" "Select your about page from the dropdown list. This will add AboutPage " "schema on the selected page." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:528 template/settings.php:448 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:559 template/settings.php:453 msgid "Select Contact Page" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:530 template/settings.php:450 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:561 template/settings.php:455 msgid "" "Select your contact page from the dropdown list. This will add ContactPage " "schema on the selected page." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:545 template/settings.php:468 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:576 template/settings.php:473 msgid "Select Menu for SiteLinks Schema" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:559 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:590 msgid "" "This helps Google understand the most important pages on your website and " "can generate Rich Snippets." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:564 template/settings.php:487 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:595 template/settings.php:492 msgid "Enable SiteLinks Search Box" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:573 -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:589 -#: template/breadcrumb-settings.php:66 template/settings.php:383 -#: template/settings.php:496 template/settings.php:513 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:604 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:620 +#: template/breadcrumb-settings.php:66 template/settings.php:388 +#: template/settings.php:501 template/settings.php:518 #: template/wpsp-advanced-settings.php:60 #: template/wpsp-advanced-settings.php:153 #: template/wpsp-advanced-settings.php:177 @@ -4629,60 +4629,60 @@ msgstr "" msgid "Yes" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:575 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:606 msgid "" "If enabled, Google can display a search box on your search website’s search " "results." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:580 -#: template/breadcrumb-settings.php:57 template/settings.php:503 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:611 +#: template/breadcrumb-settings.php:57 template/settings.php:508 msgid "Enable Breadcrumbs" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:591 template/settings.php:505 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:622 template/settings.php:510 msgid "" "If enabled, Google can add breadcrumbs to your website’s and pages search " "results." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:631 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:664 msgid "Well done!" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:636 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:669 msgid "" "You've successfully added schema to your website! You’re on your way to get " "rich snippets for your pages." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:639 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:672 msgid "" "The information you provided is globally applied to the website. You can " "always go back, change, and add more to this later from your dashboard." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:642 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:675 msgid "" "From the dashboard, you can also explore other advanced features like " "breadcrumbs and white label services." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:645 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:678 msgid "Wondering what’s next?" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:646 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:679 msgid "" " The next step would be to create and set schema markups for your " "individual pages." msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:649 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:682 msgid "Give it a try now!" msgstr "" -#: classes/class-bsf-aiosrs-pro-setup-wizard.php:655 +#: classes/class-bsf-aiosrs-pro-setup-wizard.php:688 msgid "Create First Schema" msgstr "" @@ -4933,7 +4933,7 @@ msgstr "" #: template/branding-settings.php:84 template/breadcrumb-settings.php:127 #: template/settings.php:154 template/settings.php:258 -#: template/settings.php:393 template/settings.php:520 +#: template/settings.php:398 template/settings.php:525 #: template/wpsp-advanced-settings.php:209 msgid "Save Changes" msgstr "" @@ -4947,33 +4947,33 @@ msgid "Whitelabel settings are applied to all the sites in the Network." msgstr "" #: template/branding-settings.php:99 template/breadcrumb-settings.php:146 -#: template/settings.php:546 template/wpsp-advanced-settings.php:228 +#: template/settings.php:551 template/wpsp-advanced-settings.php:228 msgid "Setup Wizard" msgstr "" #: template/branding-settings.php:111 template/breadcrumb-settings.php:153 -#: template/settings.php:553 template/wpsp-advanced-settings.php:235 +#: template/settings.php:558 template/wpsp-advanced-settings.php:235 #. translators: %s: search term msgid "Need help configure %s step by step?" msgstr "" #: template/branding-settings.php:119 template/breadcrumb-settings.php:161 -#: template/settings.php:561 template/wpsp-advanced-settings.php:243 +#: template/settings.php:566 template/wpsp-advanced-settings.php:243 msgid "Not sure where to start? Check out our video on " msgstr "" #: template/branding-settings.php:126 template/breadcrumb-settings.php:168 -#: template/settings.php:569 template/wpsp-advanced-settings.php:249 +#: template/settings.php:574 template/wpsp-advanced-settings.php:249 msgid "Start Setup Wizard" msgstr "" #: template/branding-settings.php:133 template/breadcrumb-settings.php:175 -#: template/settings.php:577 template/wpsp-advanced-settings.php:256 +#: template/settings.php:582 template/wpsp-advanced-settings.php:256 msgid "Regenerate Schema" msgstr "" #: template/branding-settings.php:137 template/breadcrumb-settings.php:185 -#: template/settings.php:584 template/wpsp-advanced-settings.php:261 +#: template/settings.php:589 template/wpsp-advanced-settings.php:261 #: template/wpsp-advanced-settings.php:263 msgid "" "Having issues with your schema? Try regenerating the code on all your " @@ -4981,32 +4981,32 @@ msgid "" msgstr "" #: template/branding-settings.php:144 template/breadcrumb-settings.php:193 -#: template/settings.php:592 template/wpsp-advanced-settings.php:271 +#: template/settings.php:597 template/wpsp-advanced-settings.php:271 msgid "Schema Regenerated Successfully." msgstr "" #: template/branding-settings.php:152 template/breadcrumb-settings.php:201 -#: template/settings.php:600 template/wpsp-advanced-settings.php:279 +#: template/settings.php:605 template/wpsp-advanced-settings.php:279 msgid "Regenerate Now" msgstr "" #: template/branding-settings.php:160 template/breadcrumb-settings.php:210 -#: template/settings.php:609 template/wpsp-advanced-settings.php:288 +#: template/settings.php:614 template/wpsp-advanced-settings.php:288 msgid "Knowledge Base" msgstr "" #: template/branding-settings.php:164 template/breadcrumb-settings.php:214 -#: template/settings.php:613 template/wpsp-advanced-settings.php:292 +#: template/settings.php:618 template/wpsp-advanced-settings.php:292 msgid "Not sure how something works? Take a peek at the knowledge base and learn." msgstr "" #: template/branding-settings.php:167 template/breadcrumb-settings.php:217 -#: template/settings.php:616 template/wpsp-advanced-settings.php:295 +#: template/settings.php:621 template/wpsp-advanced-settings.php:295 msgid "Visit Knowledge Base" msgstr "" #: template/branding-settings.php:176 template/breadcrumb-settings.php:227 -#: template/settings.php:626 template/wpsp-advanced-settings.php:305 +#: template/settings.php:631 template/wpsp-advanced-settings.php:305 msgid "Rollback Version" msgstr "" @@ -5026,7 +5026,7 @@ msgid "" "site hierarchy. " msgstr "" -#: template/breadcrumb-settings.php:68 template/settings.php:515 +#: template/breadcrumb-settings.php:68 template/settings.php:520 msgid "" "If enabled, Google can add breadcrumbs to your website’s and pages search " "results. " @@ -5038,7 +5038,7 @@ msgid "" "example - Domain name > Selected Option > Post Name." msgstr "" -#: template/breadcrumb-settings.php:180 template/settings.php:582 +#: template/breadcrumb-settings.php:180 template/settings.php:587 msgid "" "Having issues with your schema? Try regenerating the code on all your " "posts/pages." @@ -5069,14 +5069,14 @@ msgid "Contact Information" msgstr "" #: template/settings.php:36 template/settings.php:174 template/settings.php:278 -#: template/settings.php:412 +#: template/settings.php:417 msgid "" "Looks like you have Yoast SEO plugin installed. So we've gone ahead and " "disabled some features which comes with Yoast SEO as well." msgstr "" #: template/settings.php:37 template/settings.php:175 template/settings.php:279 -#: template/settings.php:413 +#: template/settings.php:418 msgid "If you would still like to enable then," msgstr "" @@ -5143,77 +5143,77 @@ msgstr "" msgid "Contact Page URL" msgstr "" -#: template/settings.php:336 +#: template/settings.php:341 msgid "Contact Number" msgstr "" -#: template/settings.php:339 +#: template/settings.php:344 msgid "" "Enter the international version of your contact phone number starting with " "the “+” sign and country code, e.g., +1 for the US and Canada. Example: " "+1-800-555-1212. Search your country code here" msgstr "" -#: template/settings.php:343 +#: template/settings.php:348 msgid "Area Served" msgstr "" -#: template/settings.php:345 +#: template/settings.php:350 msgid "" "\tThe geographic area where a service or offered item is provided. " "Supersedes serviceArea. Examples US,ES FR" msgstr "" -#: template/settings.php:352 +#: template/settings.php:357 msgid "Available Language" msgstr "" -#: template/settings.php:354 +#: template/settings.php:359 msgid "" "Details about the language spoken. Languages may be specified by their " "common English name. If omitted, the language defaults to English." msgstr "" -#: template/settings.php:361 +#: template/settings.php:366 msgid "Contact Option" msgstr "" -#: template/settings.php:363 +#: template/settings.php:368 msgid "" "An option available on this contact point (e.g. a toll-free number or " "support for hearing-impaired callers). Hearing Impaired Supported:- Uses " "devices to support users with hearing impairments." msgstr "" -#: template/settings.php:368 +#: template/settings.php:373 msgid "Hearing Impaired Supported" msgstr "" -#: template/settings.php:370 +#: template/settings.php:375 msgid "Toll Free" msgstr "" -#: template/settings.php:374 +#: template/settings.php:379 msgid "Enable ContactPoint on schema type?" msgstr "" -#: template/settings.php:376 +#: template/settings.php:381 msgid "" "If enabled, It will add ContactPoint on Local Business and Person schema " "type." msgstr "" -#: template/settings.php:409 +#: template/settings.php:414 msgid "Other Schema" msgstr "" -#: template/settings.php:482 +#: template/settings.php:487 msgid "" "This helps Google understand the most important pages on your website and " "can generate Rich Snippets. " msgstr "" -#: template/settings.php:498 +#: template/settings.php:503 msgid "If enabled, Google can display a search box with your Search results. " msgstr "" @@ -5401,7 +5401,7 @@ msgctxt "rating out of" msgid "0/5" msgstr "" -#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:804 +#: classes/class-bsf-aiosrs-pro-custom-fields-markup.php:812 #: classes/class-bsf-aiosrs-pro-markup.php:129 #: classes/class-bsf-aiosrs-pro-markup.php:148 #: classes/class-bsf-aiosrs-pro-markup.php:290 diff --git a/wp/wp-content/plugins/wp-schema-pro/template/branding-settings.php b/wp/wp-content/plugins/wp-schema-pro/template/branding-settings.php index 9738b547..ab1d3518 100644 --- a/wp/wp-content/plugins/wp-schema-pro/template/branding-settings.php +++ b/wp/wp-content/plugins/wp-schema-pro/template/branding-settings.php @@ -61,7 +61,7 @@ $setting_url = self::get_page_url( 'branding-settings' ); - + diff --git a/wp/wp-content/plugins/wp-schema-pro/template/settings.php b/wp/wp-content/plugins/wp-schema-pro/template/settings.php index c5caa44b..c0c99c07 100644 --- a/wp/wp-content/plugins/wp-schema-pro/template/settings.php +++ b/wp/wp-content/plugins/wp-schema-pro/template/settings.php @@ -318,7 +318,12 @@ $current_section = isset( $_GET['section'] ) ? sanitize_text_field( $_GET