Test #2

Hello, World!

Hello, World!

Edu on Air: K12 <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 id="signinMethod" class="box auth-box"> <h1> Sign in or create account </h1> <p> To register for events. </p> <button class="auth blue" onclick="signIn()"> Continue with Google </button> <button onclick="signInStep('enterEmail')" class="outline auth"> Continue with email </button> <div class="privacy-policy"> <a class="privacy-link" target="_blank" href="https://policies.google.com/privacy" > Privacy Policy </a > </div> </div> <div id="enterEmail" class="box hidden auth-box"> <h1> Sign in with email </h1> <div class="input-container"> <label for="emailAddress"> Enter your email </label> <input type="email" id="emailAddress" oninput="hideErrors('invalid-email')" /> <div class="error-container hidden" id="invalid-email"> <i class="google-material-icons">info</i> <span> <output>Enter a valid email address</output> </span> </div> </div> <div class="sign-in-buttons"> <div class="auth link"> <button type="button" onclick="signInStep('signinMethod')" class="button-link"> Back </button> </div> <button class="auth blue" onclick="checkEmail()"> Next </button> </div> <div class="privacy-policy"> <a class="privacy-link" target="_blank" href="https://policies.google.com/privacy" > Privacy Policy </a> </div> </div> <div id="hasGoogleAccount" class="box hidden auth-box"> <h1> Sign in with Google </h1> <p> <output>The email you entered is associated with a Google account. Sign in with Google to continue.</output> </p> <div class="sign-in-buttons"> <div class="auth link"> <button type="button" onclick="signInStep('enterEmail')" class="button-link"> Back </button> </div> <button class="auth blue" onclick="signIn()"> Sign in with Google </button> </div> <div class="privacy-policy"> <a class="privacy-link" target="_blank" href="https://policies.google.com/privacy" > Privacy Policy </a> </div> </div> <div id="enterPassword" class="box hidden auth-box"> <form> <h1> Sign in with email </h1> <p id="loginEmail" class="email"></p> <div class="input-container" id="password-container"> <label for="loginPassword"> Enter your password </label> <input type="password" autocomplete="current-password" id="loginPassword" oninput="hideErrors('no-password', 'invalid-password')" required /> <div id="no-password" class="error-container hidden"> <i class="google-material-icons">info</i> <span> <output>Enter a password</output> </span> </div> <div id="invalid-password" class="error-container hidden"> <i class="google-material-icons">info</i> <span> <output>Wrong password. Try again or click 'Forgot password' to reset it.</output> </span> </div> </div> <div class="error-takeover hidden" id="login-retry-limit"> <div> <i class="google-material-icons">report_problem</i> <h2> Too many failed attempts </h2> </div> <p class="error-message"> <output>Unavailable because of too many failed attempts to sign in. Try again in a few minutes.</output> </p> </div> <div class="sign-in-buttons"> <div class="auth link forgot-password"> <button type="button" onclick="signInStep('resetPassword')" class="button-link"> Forgot Password? </button> </div> <div class="auth link right-anchor"> <button type="button" onclick="signInStep('enterEmail')" class="button-link"> Back </button> </div> <button type="button" class="auth blue" onclick="signInEmailPassword()" id="password-sign-in" > Next </button> </div> <div class="privacy-policy"> <a class="privacy-link" target="_blank" href="https://policies.google.com/privacy" > Privacy Policy </a> </div> </form> </div> <div id="createAccount" class="box auth-box hidden"> <form> <h1> Create Account </h1> <div class="input-container"> <label for="accountEmail">Email Address:</label> <input type="email" id="accountEmail" autocomplete="new-username" oninput="hideErrors('email-in-use')" disabled /> <div id="email-in-use" class="error-container hidden"> <i class="google-material-icons">info</i> <span> <output>This email is already in use. Please go back and select a different email.</output> </span> </div> </div> <div class="input-container"> <label for="accountPassword"> Enter your password </label> <input type="password" autocomplete="new-password" id="accountPassword" oninput="hideErrors('create-account-no-password', 'weak-password')" /> <div id="create-account-no-password" class="error-container hidden"> <i class="google-material-icons">info</i> <span> <output>Enter password</output> </span> </div> <div id="weak-password" class="error-container hidden"> <i class="google-material-icons">info</i> <span> <output>Use 6 or more characters with a mix of letters, numbers & symbols</output> </span> </div> </div> <div class="input-pair"> <div class="input-container"> <label for="accountFirstName"> First Name </label> <input type="text" id="accountFirstName" oninput="hideErrors('no-first-name')" /> <div id="no-first-name" class="error-container hidden"> <i class="google-material-icons">info</i> <span> <output>Enter first name</output> </span> </div> </div> <div class="input-container"> <label for="accountLastName"> Last Name </label> <input type="text" id="accountLastName" oninput="hideErrors('no-last-name')" /> <div id="no-last-name" class="error-container hidden"> <i class="google-material-icons">info</i> <span> <output>Enter last name</output> </span> </div> </div> </div> <div class="sign-in-buttons"> <div class="auth link"> <button type="button" onclick="signInStep('enterEmail')" class="button-link"> Back </button> </div> <button type="button" class="auth blue" onclick="createAccount()"> Next </button> </div> <div class="privacy-policy"> <a class="privacy-link" target="_blank" href="https://policies.google.com/privacy" > Privacy Policy </a> </div> </form> </div> <div id="accountCreationConfirmation" class="box auth-box hidden"> <p> <div id="emailConfirmation" class="email-text"></div> An email has been sent to your email address. Click the confirmation link in that email to verify your account. </p> <p> Please check your promotional tab or spam folder. You can resend the message if you did not receive it. </p> <button class="auth blue" onclick="resendAccountConfirmation()"> Resend email </button> <button class="auth blue" onclick="accountCreationComplete()"> Done </button> <p id="confirmation-resent" class="hidden"> Confirmation email resent </p> <div class="privacy-policy"> <a class="privacy-link" target="_blank" href="https://policies.google.com/privacy" > Privacy Policy </a> </div> </div> <div id="resetPassword" class="box auth-box hidden"> <h1> Reset Password </h1> <p> If you’ve forgotten your password, you can request to have an email sent with a link to create a new one. </p> <div class="sign-in-buttons"> <div class="auth link"> <button type="button" onclick="signInStep('enterPassword')" class="button-link"> Back </button> </div> <button class="auth blue" onclick="resetPassword()"> Reset Password </button> </div> <div class="privacy-policy"> <a class="privacy-link" target="_blank" href="https://policies.google.com/privacy" > Privacy Policy </a> </div> </div> <div id="postReset" class="box auth-box hidden"> <h1> Reset Password </h1> <p> We’ve sent an email to your email address. Follow the instructions in that email to reset your password. </p> <div class="sign-in-buttons"> <div class="auth link"> <button type="button" onclick="signInStep('signinMethod')" class="button-link"> Back </button> </div> </div> <div class="privacy-policy"> <a class="privacy-link" target="_blank" href="https://policies.google.com/privacy" > Privacy Policy </a> </div> </div> </div> <div id="gated-signout" class="boxed-takeover"> <div class="box"> <h1> Forbidden </h1> <p> <output>Sorry, you do not have permission to access this resource.</output> </p> <button onclick="signOut()"> Sign out </button> </div> </div> <div id="user-upgrade-error" class="boxed-takeover"> <div class="box"> <h1>User account conflict</h1> <p> <output>Sorry, the user account you are using is now linked to Google. Please sign in with Google to use this account.</output> </p> <button onclick="signOut()"> Sign out </button> </div> </div> <div id="private-error" class="boxed-takeover"> <div class="box"> <div class="formatted-html"><h1>Forbidden</h1><p>You do not have permission to access this private event</p></div> <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="cookie-error" class="boxed-takeover"> <div class="box"> <h1>Cookies are disabled</h1> <p> Cookies are required in order to sign in. Please enable cookies in your browser's settings and disable any adblockers. Then refresh this page. </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. If this issue persists, please sign out and sign back in after reloading. </p> <button onclick="signOut()"> Sign out </button> </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.bfab45df.js" ></script> <!-- Developer Profiles --> <script src="/static/scripts/developer_profiles_api_v0.2.3.js"></script> <script> window.templateBundleMap = { platform: { "default": { script: "/scripts/app.platform.default.js", style: "/styles/app.platform.default.css", }, "devfest": { script: "/scripts/app.platform.devfest.js", style: "/styles/app.platform.devfest.css", }, "cloud": { script: "/scripts/app.platform.cloud.bffc4027.js", style: "/styles/app.platform.cloud.ff437da9.css", }, }, event: { "default": { script: "/scripts/app.event.default.ef236fca.js", style: "/styles/app.event.default.76a7a704.css", }, "cloud_2017": { script: "/scripts/app.event.cloud_2017.14fe68ec.js", style: "/styles/app.event.cloud_2017.978f9577.css", }, "cloud_2018": { script: "/scripts/app.event.cloud_2018.920955c7.js", style: "/styles/app.event.cloud_2018.4524a015.css", }, "cloud_summit_2018": { script: "/scripts/app.event.cloud_summit_2018.b80bb2df.js", style: "/styles/app.event.cloud_summit_2018.2828e67d.css", }, "cloud_transform_2018": { script: "/scripts/app.event.cloud_transform_2018.21a8e490.js", style: "/styles/app.event.cloud_transform_2018.fc10d7ff.css", }, "cloud_data_ai_2018": { script: "/scripts/app.event.cloud_data_ai_2018.502619fb.js", style: "/styles/app.event.cloud_data_ai_2018.66e30895.css", }, "devfest_2018": { script: "/scripts/app.event.devfest_2018.5614ac9a.js", style: "/styles/app.event.devfest_2018.55fd9704.css", }, "chrome_2018": { script: "/scripts/app.event.chrome_2018.cf503ed7.js", style: "/styles/app.event.chrome_2018.acf234a7.css", }, "cloud_q1_2019": { script: "/scripts/app.event.cloud_q1_2019.67fde800.js", style: "/styles/app.event.cloud_q1_2019.98f47d07.css", }, "global_events_gml_2019": { script: "/scripts/app.event.global_events_gml_2019.6695235b.js", style: "/styles/app.event.global_events_gml_2019.bb1763a3.css", }, "single_session": { script: "/scripts/app.event.single_session.c647effd.js", style: "/styles/app.event.single_session.da02b89f.css", }, }, theme: { gemini: "/styles/themes/gemini.faecb6b7.css", youtube: "/styles/themes/youtube.6ad3b535.css", }, angularJsDependencies: "/scripts/dependencies.4f4b11f9.js" } </script> <div class="hidden" id="bad-browser"> <div id="bad-browser-shade"></div> <div id="bad-browser-text"> <span id="warning-icon" ><i class="google-material-icons">warning</i></span > <h2> Your browser<br /> is not supported </h2> <p> For the full experience, use Google Chrome, Firefox, Safari or Edge. </p> </div> </div> <script> // Show bad browser modal for IE and Opera browsers. Separated into // independent code block to prevent other script errors from blocking. // Internet Explorer 6-11 var isIE = !!document.documentMode; // Opera browser var isOpera = /(Opera|OPR\/)/g.test(window.navigator.userAgent); if (isIE || isOpera) { document.getElementById('bad-browser').className = ''; document.body.className += ' unsupported'; } </script> <script> const cookieBarScript = document.createElement('script') const lang = window.navigator.userLanguage || window.navigator.language || 'en'; cookieBarScript.setAttribute('data-glue-cookie-notification-bar-language', lang); cookieBarScript.setAttribute('src', 'https://www.gstatic.com/glue/cookienotificationbar/cookienotificationbar.min.js'); document.body.appendChild(cookieBarScript); </script> <script> function hideTempElements() { const elementIdsToHide = [ 'invalid-password', 'invalid-email', 'no-password', 'email-in-use', 'weak-password', 'create-account-no-password', 'no-first-name', 'no-last-name', 'login-retry-limit', 'confirmation-resent', ]; elementIdsToHide.forEach(id => { document.getElementById(id).classList.add('hidden'); }); } function signInStep(stepName) { hideTempElements(); const currentView = document.getElementById(stepName); document .getElementById('password-container') .classList.remove('hidden'); document.getElementById('password-sign-in').disabled = false; [ 'signinMethod', 'enterEmail', 'hasGoogleAccount', 'enterPassword', 'createAccount', 'accountCreationConfirmation', 'resetPassword', 'postReset', ] .filter(elementId => elementId !== stepName) .forEach(elementId => document.getElementById(elementId).classList.add('hidden') ); currentView.classList.remove('hidden'); const input = currentView.querySelector("input:not([disabled])"); if (input) { input.focus(); } } function checkEmail() { document.getElementById('invalid-email').classList.add('hidden'); const enteredEmail = document.getElementById('emailAddress').value; if (/^.*@google\.com$/i.test(enteredEmail)) { signInStep('hasGoogleAccount'); makeErrorAccessible(document.getElementById('hasGoogleAccount')); } else { const emailRegex = /.+@.+\..+/; if (!enteredEmail || !emailRegex.test(enteredEmail)) { document.getElementById('invalid-email').classList.remove('hidden'); makeErrorAccessible(document.getElementById('invalid-email')); return; } window.firebase .auth() .fetchSignInMethodsForEmail(enteredEmail) .then(signinOptions => { if (signinOptions.length === 0) { document.getElementById('accountEmail').value = enteredEmail; signInStep('createAccount'); } else if (signinOptions.includes('google.com')) { signInStep('hasGoogleAccount'); } else { document.getElementById( 'loginEmail' ).textContent = enteredEmail; signInStep('enterPassword'); } }) .catch(error => console.error(error)); } } function hideErrors(...errorIds) { for(let id of errorIds) { const errorToHide = document.getElementById(id); const errorMessage = errorToHide.querySelector("output"); if(!errorToHide.classList.contains("hidden")) { errorToHide.classList.add("hidden"); } errorMessage.removeAttribute("aria-role"); errorMessage.removeAttribute("aria-live"); } } function makeErrorAccessible(errorContainer) { const errorMessage = errorContainer.querySelector("output"); errorMessage.setAttribute("aria-role", "alert"); errorMessage.setAttribute("aria-live", "polite"); } function signInEmailPassword() { document.getElementById('invalid-password').classList.add('hidden'); document.getElementById('no-password').classList.add('hidden'); document.getElementById('password-sign-in').disabled = false; const password = document.getElementById('loginPassword').value; if (!password) { document.getElementById('no-password').classList.remove('hidden'); makeErrorAccessible(document.getElementById('no-password')); return; } window.firebase .auth() .signInWithEmailAndPassword( document.getElementById('loginEmail').textContent, document.getElementById('loginPassword').value ) .then(() => { window.location.reload(true); }) .catch(error => { if (error.code === 'auth/wrong-password') { document .getElementById('invalid-password') .classList.remove('hidden'); console.debug('wrong password'); makeErrorAccessible(document.getElementById('invalid-password')); } else if (error.code === 'auth/too-many-requests') { document .getElementById('password-container') .classList.add('hidden'); document .getElementById('login-retry-limit') .classList.remove('hidden'); makeErrorAccessible(document.getElementById('login-retry-limit')); document.getElementById('password-sign-in').disabled = true; } else { console.error(error); } }); } function createAccount() { hideTempElements(); const accountEmail = document.getElementById('accountEmail').value; const accountPassword = document .getElementById('accountPassword') .value.trim(); const accountFirstName = document .getElementById('accountFirstName') .value.trim(); const accountLastName = document .getElementById('accountLastName') .value.trim(); document.getElementById('accountPassword').value = accountPassword; document.getElementById('accountFirstName').value = accountFirstName; document.getElementById('accountLastName').value = accountLastName; if (!accountPassword) { document .getElementById('create-account-no-password') .classList.remove('hidden'); makeErrorAccessible(document.getElementById('create-account-no-password')); } if (!accountFirstName) { document.getElementById('no-first-name').classList.remove('hidden'); makeErrorAccessible(document.getElementById('no-first-name')); } if (!accountLastName) { document.getElementById('no-last-name').classList.remove('hidden'); makeErrorAccessible(document.getElementById('no-last-name')); } if (!accountPassword || !accountFirstName || !accountLastName) return; window.firebase .auth() .createUserWithEmailAndPassword(accountEmail, accountPassword) .then(resp => { resp.user.updateProfile({ displayName: `${accountFirstName} ${accountLastName}`, }).then(() => { // Solves issue with Firebase profile data propagation to the // user after creation–outlined here: // https://buganizer.corp.google.com/issues/204450136 const unsubscribe = window.firebase .auth() .onAuthStateChanged(user => { user.getIdToken(true); unsubscribe(); }); }); const emailConfirmation = document.getElementById("emailConfirmation"); if(emailConfirmation) { document.getElementById( 'emailConfirmation' ).textContent = accountEmail; } sendAccountConfirmation({ url: window.location.href }); signInStep('accountCreationConfirmation'); }) .catch(error => { if (error.code === 'auth/weak-password') { document .getElementById('weak-password') .classList.remove('hidden'); makeErrorAccessible(document.getElementById('weak-password')) } else if (error.code === 'auth/email-already-in-use') { document .getElementById('email-in-use') .classList.remove('hidden'); makeErrorAccessible(document.getElementById('email-in-use')) } else { console.error(error); } }); } function sendAccountConfirmation() { window.firebase.auth().currentUser.sendEmailVerification({ url: window.location.href }); } function resendAccountConfirmation() { window.firebase.auth().currentUser.sendEmailVerification({ url: window.location.href }); document .getElementById('confirmation-resent') .classList.remove('hidden'); } function accountCreationComplete() { location.reload(true); } function resetPassword() { const email = document.getElementById('loginEmail').textContent; window.firebase .auth() .sendPasswordResetEmail(email, { url: window.location.origin }) .then(() => { this.document.getElementById('email-text').textContent = email; this.signInStep('postReset'); }); } </script> </body> </html> </div> </div></div></div></div></div></div> <footer class="blog-item-footer"> <div class="footer-meta"> <div class="blog-meta-item blog-meta-author"><a href="/?author=5b7a13d3cd99afa7a358b345" class="blog-author-name">Andrew Raucci</a></div> </div> <div class="blog-item-actions blog-item-actions--footer"> <div class="blog-item-actions-wrapper"> <div class="Share sqs-share-buttons" data-item-identifier="660bfeb5946fab51377a9960" data-item-path="home/test-2"> <div class="Share-buttons"> <!-- Facebook --><a href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.blend-it.org%2Fhome%2Ftest-2" class="Share-buttons-item Share-buttons-item--social" target="_blank" data-service="facebook"> <svg class="Share-buttons-item-icon" viewBox="0 0 64 64"> <use xlink:href="/universal/svg/social-accounts.svg#facebook-icon"></use> </svg><span class="Share-buttons-item-label">Facebook</span><span class="Share-buttons-item-count">0</span> </a><!-- Twitter --><a href="https://twitter.com/intent/tweet?url=https%3A%2F%2Fwww.blend-it.org%2Fhome%2Ftest-2&text=" class="Share-buttons-item Share-buttons-item--social" target="_blank" data-service="twitter"> <svg class="Share-buttons-item-icon" viewBox="0 0 64 64"> <use xlink:href="/universal/svg/social-accounts.svg#twitter-icon"></use> </svg><span class="Share-buttons-item-label">Twitter</span> </a><!-- Simple Like --><a href="#" class="Share-buttons-item Share-buttons-item--like" data-item-identifier="660bfeb5946fab51377a9960" data-like-count="0" data-service="squarespace-like"> <svg class="Share-buttons-item-icon" viewBox="0 0 64 64"> <g class="svg-icon"> <path d="M39.9,37.8c-7.3,4.8-7.7,6.9-7.9,7.8c-0.2-0.9-0.6-3-7.9-7.8c-16-10.6,1.4-25.4,7.9-11.7C38.5,12.4,55.9,27.3,39.9,37.8z"/> </g> </svg><span class="Share-buttons-item-label"><span class="Share-buttons-item-label-count">0</span> Likes</span> </a> </div> </div> </div> </div> <div class="blog-item-author-profile blog-item-author-profile--footer responsive-margin--top"> <div class="author-name"><a href="/?author=5b7a13d3cd99afa7a358b345">Andrew Raucci</a></div> </div> </footer> <section class="blog-item-comments"> <div class="blog-item-comments-toggle-wrapper"> <label for="show-comments" title="Show/Hide Comments" class="blog-item-comments-toggle"> Leave a comment </label> <div id="blogItemCommentsContent" class="blog-item-comments-content"> <div id="comments-660bfeb5946fab51377a9960" class="p-comment"> <div class="squarespace-comments" id="comments-660bfeb5946fab51377a9960" data-item-id="660bfeb5946fab51377a9960" data-public-comment-count="0" data-comment-state="1"></div> </div> </div> </div> </section> </div> <aside id="blogItemSidebar" class="blog-item-sidebar"> <div class="blog-item-author-profile blog-item-author-profile--sidebar"> <div class="author-name"><a href="/?author=5b7a13d3cd99afa7a358b345">Andrew Raucci</a></div> </div> <div class="sqs-layout sqs-grid-12 columns-12 empty" data-layout-label="Blog Item Sidebar" data-type="block-field" data-updated-on="1579109347211" id="blogItemSidebarContent"><div class="row sqs-row"><div class="col sqs-col-12 span-12"></div></div></div> </aside> </article> </div> <section class="blog-item-pagination"> <!-- --><a href="/home/flip-it" class="blog-item-pagination-link blog-item-pagination-link--next"> <div class="blog-item-label"> <svg class="next-icon" viewBox="0 0 50 100"> <use xlink:href="/assets/ui-icons.svg#thick-arrow-right-icon"></use> </svg> </div> <span class="pagination-title-wrapper"> <img data-src="https://images.squarespace-cdn.com/content/v1/5e14c95e14ff2a427d907451/1702314772744-M0IEPC4SBHSCKFZ8669M/IMG_8198.jpg" data-image="https://images.squarespace-cdn.com/content/v1/5e14c95e14ff2a427d907451/1702314772744-M0IEPC4SBHSCKFZ8669M/IMG_8198.jpg" data-image-dimensions="2251x3001" data-image-focal-point="0.5,0.5" alt="FLIP IT!" /> <h2 class="blog-item-pagination-title"><time class="dt-published date-pagination" datetime="2023-12-18" pubdate>Dec 18 </time>FLIP IT!</h2> </span> </a> </section> <h2 class="related-title responsive-padding--top">Related Posts</h2> <section id="related" class="blog-item-related clear" data-controller="RelatedPostImages"> <article id="article-63287cf087011962873e5ba7" class="blog-list-item entry entry--list entry--related h-entry hentry category-google category-teacher-toolbox category-instruction category-workflow author-andrew-raucci post-type-text article-index-1 has-main-image" data-item-id="63287cf087011962873e5ba7" data-item-title="SAVE DIGITAL ANNOTATIONS with KAMI"> <div class="thumbnail-title-wrapper"> <div class="excerpt-thumb"> <a href="/home/saving-annotations-the-easy-way" class="excerpt-image content-fill"><img data-src="https://images.squarespace-cdn.com/content/v1/5e14c95e14ff2a427d907451/1663770105701-5O02GPQLGV6O7FNPB4OP/k11.png" data-image="https://images.squarespace-cdn.com/content/v1/5e14c95e14ff2a427d907451/1663770105701-5O02GPQLGV6O7FNPB4OP/k11.png" data-image-dimensions="1668x1250" data-image-focal-point="0.5,0.5" alt="SAVE DIGITAL ANNOTATIONS with KAMI" /></a> </div> </div> <div class="entry-text"> <header class="entry-header"> <a href="/home/saving-annotations-the-easy-way" class="u-url" rel="bookmark"> <time class="dt-published date-callout" datetime="2023-01-10" pubdate> <div class="date-wrapper"> <span class="month">Jan </span><span class="day">10</span> </div> </time> <h2 class="entry-title entry-title--list p-name"> <time class="dt-published date-highlight" datetime="2023-01-10" pubdate>Jan 10 </time> SAVE DIGITAL ANNOTATIONS with KAMI </h2> </a> </header> </div> </article><article id="article-6346ba5f22549e0444d68dcf" class="blog-list-item entry entry--list entry--related h-entry hentry category-design category-audio-video category-engagement author-andrew-raucci post-type-text article-index-2 has-main-image" data-item-id="6346ba5f22549e0444d68dcf" data-item-title="8th GRADE IMPACT STUDENTS use CANVA for CAREER PLANNING"> <div class="thumbnail-title-wrapper"> <div class="excerpt-thumb"> <a href="/home/create-with-canva" class="excerpt-image content-fill"><img data-src="https://images.squarespace-cdn.com/content/v1/5e14c95e14ff2a427d907451/1665682639763-YLZJN25MX67F0ZIAIY8U/Canva_design_video_AdobeExpress+%281%29.gif" data-image="https://images.squarespace-cdn.com/content/v1/5e14c95e14ff2a427d907451/1665682639763-YLZJN25MX67F0ZIAIY8U/Canva_design_video_AdobeExpress+%281%29.gif" data-image-dimensions="533x284" data-image-focal-point="0.5,0.5" alt="8th GRADE IMPACT STUDENTS use CANVA for CAREER PLANNING" /></a> </div> </div> <div class="entry-text"> <header class="entry-header"> <a href="/home/create-with-canva" class="u-url" rel="bookmark"> <time class="dt-published date-callout" datetime="2023-02-15" pubdate> <div class="date-wrapper"> <span class="month">Feb </span><span class="day">15</span> </div> </time> <h2 class="entry-title entry-title--list p-name"> <time class="dt-published date-highlight" datetime="2023-02-15" pubdate>Feb 15 </time> 8th GRADE IMPACT STUDENTS use CANVA for CAREER PLANNING </h2> </a> </header> </div> </article><article id="article-6491bc9317e79d219414b4fb" class="blog-list-item entry entry--list entry--related h-entry hentry category-design category-engagement category-audio-video category-google author-andrew-raucci post-type-text article-index-3 has-main-image" data-item-id="6491bc9317e79d219414b4fb" data-item-title="GENIUS HOUR 2023"> <div class="thumbnail-title-wrapper"> <div class="excerpt-thumb"> <a href="/home/genius-hour-2023-milecreek-tzs3t" class="excerpt-image content-fill"><img data-src="https://images.squarespace-cdn.com/content/v1/5e14c95e14ff2a427d907451/1686574655184-1C0MGBEG5ZH5CJZJJHYO/IMG_6023.jpg" data-image="https://images.squarespace-cdn.com/content/v1/5e14c95e14ff2a427d907451/1686574655184-1C0MGBEG5ZH5CJZJJHYO/IMG_6023.jpg" data-image-dimensions="2373x1780" data-image-focal-point="0.5,0.5" alt="GENIUS HOUR 2023" /></a> </div> </div> <div class="entry-text"> <header class="entry-header"> <a href="/home/genius-hour-2023-milecreek-tzs3t" class="u-url" rel="bookmark"> <time class="dt-published date-callout" datetime="2023-06-08" pubdate> <div class="date-wrapper"> <span class="month">Jun </span><span class="day"> 8</span> </div> </time> <h2 class="entry-title entry-title--list p-name"> <time class="dt-published date-highlight" datetime="2023-06-08" pubdate>Jun 8 </time> GENIUS HOUR 2023 </h2> </a> </header> </div> </article> </section> </div> </main> <footer id="footer" class="site-footer responsive-margin--top responsive-padding--left responsive-padding--right responsive-padding--top responsive-padding--bottom" role="contentinfo"> <div class="sqs-layout sqs-grid-12 columns-12" data-layout-label="Footer Content" data-type="block-field" data-updated-on="1578663435916" id="footerBlocks"><div class="row sqs-row"><div class="col sqs-col-12 span-12"><div class="sqs-block html-block sqs-block-html" data-block-type="2" data-sqsp-block="text" id="block-1247c1139743806c8954"><div class="sqs-block-content"> <div class="sqs-html-content" data-sqsp-text-block-content> <h3 style="text-align:center;white-space:pre-wrap;">Blend IT proudly follows Region 18 Public Schools</h3> </div> </div></div><div class="sqs-block socialaccountlinks-v2-block sqs-block-socialaccountlinks-v2" data-block-type="54" data-sqsp-block="social-links" id="block-91cd59b5aabb63818c8c"><div class="sqs-block-content"> <div class="sqs-svg-icon--outer social-icon-alignment-center social-icons-color-standard social-icons-size-large social-icons-shape-circle social-icons-style-knockout" > <style> #block-91cd59b5aabb63818c8c .social-icons-style-border .sqs-svg-icon--wrapper { box-shadow: 0 0 0 2px inset; border: none; } </style> <nav class="sqs-svg-icon--list"> <a href="https://twitter.com/lolschoolsct?lang=en" target="_blank" class="sqs-svg-icon--wrapper twitter-unauth" aria-label="Twitter"> <div> <svg class="sqs-svg-icon--social" viewBox="0 0 64 64"> <use class="sqs-use--icon" xlink:href="#twitter-unauth-icon"></use> <use class="sqs-use--mask" xlink:href="#twitter-unauth-mask"></use> </svg> </div> </a><a href="https://www.facebook.com/LymeOldLymeSchools/" target="_blank" class="sqs-svg-icon--wrapper facebook-unauth" aria-label="Facebook"> <div> <svg class="sqs-svg-icon--social" viewBox="0 0 64 64"> <use class="sqs-use--icon" xlink:href="#facebook-unauth-icon"></use> <use class="sqs-use--mask" xlink:href="#facebook-unauth-mask"></use> </svg> </div> </a> </nav> </div> </div></div></div></div></div> <div id="footerNavWrapper" class="nav-wrapper footer-nav"> </div> </footer> </div> <div id="mobileBar" class="mobile-bar" data-controller="MobileOffset"> <a class="nav-toggle-label nav-toggle-label--mobile flex-item" id="navToggleMobile" data-controller="NavToggle"> <svg class="Icon Icon--hamburger nav-toggle-label-icon" viewBox="0 0 26 18"> <use class="use--odd" xlink:href="/assets/ui-icons.svg#hamburger-icon--odd"></use> <use class="use--even" xlink:href="/assets/ui-icons.svg#hamburger-icon--even"></use> </svg> </a><!-- --><div class="social-ellipsis social-ellipsis--mobile flex-item" id="socialEllipsisMobile" data-controller="SocialToggle"> <svg class="ellipsis-icon" viewBox="0 0 25 6"> <use xlink:href="/assets/ui-icons.svg#ellipsis-icon"></use> </svg> <svg class="Icon Icon--close social-close-icon" viewBox="0 0 18 18"> <use xlink:href="/assets/ui-icons.svg#close-icon-line"></use> </svg> </div><!-- --><div class="search-cart--mobile flex-item"> <a href="/search" rel="search" class="header-search header-search--mobile" data-controller="SearchToggle"> <svg class="Icon Icon--search search-icon" viewBox="0 0 20 20"> <use xlink:href="/assets/ui-icons.svg#search-icon"></use> </svg> <svg class="Icon Icon--close search-close-icon" viewBox="0 0 18 18"> <use xlink:href="/assets/ui-icons.svg#close-icon-line"></use> </svg> </a> </div><!-- --> </div> <script src="https://static1.squarespace.com/static/ta/54d39057e4b01a0da310c80f/4947/scripts/site-bundle.js" type="text/javascript"></script> <script data-sqs-type="imageloader-bootstrapper">if(window.ImageLoader) window.ImageLoader.bootstrap({}, document);</script><script>Squarespace.afterBodyLoad(Y);</script><svg xmlns="http://www.w3.org/2000/svg" version="1.1" style="display:none" data-usage="social-icons-svg"><symbol id="twitter-unauth-icon" viewBox="0 0 64 64"><path d="M48,22.1c-1.2,0.5-2.4,0.9-3.8,1c1.4-0.8,2.4-2.1,2.9-3.6c-1.3,0.8-2.7,1.3-4.2,1.6 C41.7,19.8,40,19,38.2,19c-3.6,0-6.6,2.9-6.6,6.6c0,0.5,0.1,1,0.2,1.5c-5.5-0.3-10.3-2.9-13.5-6.9c-0.6,1-0.9,2.1-0.9,3.3 c0,2.3,1.2,4.3,2.9,5.5c-1.1,0-2.1-0.3-3-0.8c0,0,0,0.1,0,0.1c0,3.2,2.3,5.8,5.3,6.4c-0.6,0.1-1.1,0.2-1.7,0.2c-0.4,0-0.8,0-1.2-0.1 c0.8,2.6,3.3,4.5,6.1,4.6c-2.2,1.8-5.1,2.8-8.2,2.8c-0.5,0-1.1,0-1.6-0.1c2.9,1.9,6.4,2.9,10.1,2.9c12.1,0,18.7-10,18.7-18.7 c0-0.3,0-0.6,0-0.8C46,24.5,47.1,23.4,48,22.1z"/></symbol><symbol id="twitter-unauth-mask" viewBox="0 0 64 64"><path d="M0,0v64h64V0H0z M44.7,25.5c0,0.3,0,0.6,0,0.8C44.7,35,38.1,45,26.1,45c-3.7,0-7.2-1.1-10.1-2.9 c0.5,0.1,1,0.1,1.6,0.1c3.1,0,5.9-1,8.2-2.8c-2.9-0.1-5.3-2-6.1-4.6c0.4,0.1,0.8,0.1,1.2,0.1c0.6,0,1.2-0.1,1.7-0.2 c-3-0.6-5.3-3.3-5.3-6.4c0,0,0-0.1,0-0.1c0.9,0.5,1.9,0.8,3,0.8c-1.8-1.2-2.9-3.2-2.9-5.5c0-1.2,0.3-2.3,0.9-3.3 c3.2,4,8.1,6.6,13.5,6.9c-0.1-0.5-0.2-1-0.2-1.5c0-3.6,2.9-6.6,6.6-6.6c1.9,0,3.6,0.8,4.8,2.1c1.5-0.3,2.9-0.8,4.2-1.6 c-0.5,1.5-1.5,2.8-2.9,3.6c1.3-0.2,2.6-0.5,3.8-1C47.1,23.4,46,24.5,44.7,25.5z"/></symbol><symbol id="facebook-unauth-icon" viewBox="0 0 64 64"><path d="M34.1,47V33.3h4.6l0.7-5.3h-5.3v-3.4c0-1.5,0.4-2.6,2.6-2.6l2.8,0v-4.8c-0.5-0.1-2.2-0.2-4.1-0.2 c-4.1,0-6.9,2.5-6.9,7V28H24v5.3h4.6V47H34.1z"/></symbol><symbol id="facebook-unauth-mask" viewBox="0 0 64 64"><path d="M0,0v64h64V0H0z M39.6,22l-2.8,0c-2.2,0-2.6,1.1-2.6,2.6V28h5.3l-0.7,5.3h-4.6V47h-5.5V33.3H24V28h4.6V24 c0-4.6,2.8-7,6.9-7c2,0,3.6,0.1,4.1,0.2V22z"/></symbol></svg> </body> </html>