<xmp>.</xmp> <!-- framebuster code ends here --> <!-- for ng4 --> <app-root> <div class="loading-ball-anim"> <div class="ball" style="background-color:#4285F5"></div> <div class="ball" style="background-color:#EA4436;animation-delay:.25s"></div> <div class="ball" style="background-color:#FBBD06;animation-delay:.5s"></div> <div class="ball" style="background-color:#34A952;animation-delay:.75s"></div> </div> </app-root> <script>setTimeout(function(){document.querySelector('.loading-ball-anim').classList.add('start')},100);</script> <!-- for angularJS --> <div id="app" class="loading"> <div class="main-ctrl" ng-controller="main as mainCtrl"> <ui-view class="main-view-container"></ui-view> </div> </div> <div id="gated-signin" class="boxed-takeover"> <div class="box"> <h1>Welcome!</h1> <p>Please sign in to get started.</p> <button onclick="signIn()">Sign in</button> </div> </div> <div id="gated-signout" class="boxed-takeover"> <div class="box"> <h1>Forbidden</h1> <p>Sorry, you do not have permission to access this resource.</p> <button onclick="signOut()">Sign out</button> </div> </div> <div id="general-error" class="boxed-takeover"> <div class="box"> <h1>We'll be right back</h1> <p>We are having temporary difficulties, and are working to fix the issue.</p> </div> </div> <div id="auth-error" class="boxed-takeover"> <div class="box"> <h1>Error authenticating user</h1> <p>There was an error during authentication. Please refresh to try again.</p> </div> </div> <div id="offline-error" class="boxed-takeover"> <div class="box"> <h1>You're currently offline</h1> <p>Refresh the page when your connection is restored to return to the app.</p> </div> </div> <script defer src="/scripts/app.preload.9522766c.js"></script> <script> window.templateBundleMap = { platform: { "legacy": { script: "/scripts/app.platform.legacy.60ab3a85.js", style: "/styles/app.platform.legacy.6419fe7b.css", }, "default": { script: "/scripts/app.platform.default.5724eef9.js", style: "/styles/app.platform.default.31314f31.css", }, "devfest": { script: "/scripts/app.platform.devfest.679b7550.js", style: "/styles/app.platform.devfest.421f34bc.css", }, "eduonair": { script: "/scripts/app.platform.eduonair.e9ff5268.js", style: "/styles/app.platform.eduonair.1fb68483.css", }, }, event: { "default": { script: "/scripts/app.event.default.64e6c6e0.js", style: "/styles/app.event.default.d3edf184.css", }, "horizon": { script: "/scripts/app.event.horizon.js", style: "/styles/app.event.horizon.css", }, "next_2017": { script: "/scripts/app.event.next_2017.95cec6ea.js", style: "/styles/app.event.next_2017.fe5856d4.css", }, "cloud_2017": { script: "/scripts/app.event.cloud_2017.9fbc3940.js", style: "/styles/app.event.cloud_2017.620c4042.css", }, "cloud_2018": { script: "/scripts/app.event.cloud_2018.0a7ebbd5.js", style: "/styles/app.event.cloud_2018.d76c2119.css", }, "cloud_summit_2018": { script: "/scripts/app.event.cloud_summit_2018.a0b4991f.js", style: "/styles/app.event.cloud_summit_2018.e65232d8.css", }, "cloud_transform_2018": { script: "/scripts/app.event.cloud_transform_2018.263193bc.js", style: "/styles/app.event.cloud_transform_2018.2ef59237.css", }, "cloud_data_ai_2018": { script: "/scripts/app.event.cloud_data_ai_2018.c98aae45.js", style: "/styles/app.event.cloud_data_ai_2018.f07a851b.css", }, "devfest_2018": { script: "/scripts/app.event.devfest_2018.5916fd55.js", style: "/styles/app.event.devfest_2018.12ef2672.css", }, "chrome_2018": { script: "/scripts/app.event.chrome_2018.622ed1ac.js", style: "/styles/app.event.chrome_2018.4dc18f19.css", }, "cloud_q1_2019": { script: "/scripts/app.event.cloud_q1_2019.de1790ab.js", style: "/styles/app.event.cloud_q1_2019.7ce5f1c3.css", }, "global_events_gml_2019": { script: "/scripts/app.event.global_events_gml_2019.788b55c0.js", style: "/styles/app.event.global_events_gml_2019.e610d468.css", }, }, angularJsDependencies: "/scripts/dependencies.0d36f177.js" } </script> <!-- Google Tag Manager --> <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-MLDHDL7" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-MLDHDL7');</script> <!-- End Google Tag Manager --> <noscript> <p style="margin:100px 6px;text-align:center;">This app requires JavaScript <nobr>to function.</nobr><br> Please enable javascript and reload <nobr>the page.</nobr></p> </noscript> <div class="container hidden" id="cookie-bar"> <span>This site uses cookies from Google to deliver services and to analyze traffic</span> <div class="buttons"> <a href="https://policies.google.com/technologies/cookies" rel="noopener" target="_blank">See details</a> <button class="confirm">OK, Got it</button> </div> </div> <script> var cookieBarState = false; try{ cookieBarState = window.localStorage.getItem('cookiebar_state'); } catch(e){ console.log("Failed to load cookie bar state"); } if(!cookieBarState){ var cookieBarEl = document.querySelector('#cookie-bar'); if(cookieBarEl){ cookieBarEl.classList.remove('hidden'); var button = cookieBarEl.querySelector('.confirm'); function buttonClickHandler (event){ try{ window.localStorage.setItem('cookiebar_state', 'True'); } catch (e){ console.log("Failed to save cookiebar state"); } var cookieBarEl = document.querySelector('#cookie-bar'); cookieBarEl.classList.add('hidden'); } button.addEventListener('click', buttonClickHandler); } } </script> </body> </html>