1<html lang='en'> 2 <head> 3 <!-- Google tag (gtag.js) -->
vendor: 64 bytes, lines 3-4
3 4<script async src="https://www.googletagmanager.com/gtag/js?id=
4G-C0FB3VEGYR
vendor: 12 bytes, line 4
4"></script>
5<script> 6 window.dataLayer = window.dataLayer || []; 7 function gtag(){dataLayer.push(arguments);} 8 gtag('js', new Date()); 9 10 // Classifies the current page as 'marketing', 'product', or 'other' for the 11 // GA4 content_group dimension. First match wins; marketing is checked first 12 // so pages like /tools/diagnostic aren't claimed by the /diagnostic product 13 // rule. When a new marketing page launches, add it here â ping Katie McNeil. 14 function quillContentGroup() { 15 var path = window.location.pathname.toLowerCase(); 16 17 // === MARKETING (checked first) === 18 if (path === '/' || path === '') return 'marketing'; 19 20 var marketingPrefixes = [ 21 '/sign-up/', '/tools/', '/admins/', '/teacher-center/', 22 '/teacher_premium/', '/en/', '/articles/', '/premium/', 23 '/quill-for-','/literature/', '/social-studies/', '/interdisciplinary-science/', 24 '/blog/' 25 ]; 26 for (var i = 0; i < marketingPrefixes.length; i++) { 27 if (path.indexOf(marketingPrefixes[i]) === 0) return 'marketing'; 28 } 29 30 var marketingExact = [ 31 '/account/new', '/sign-up', '/tools', '/admins', 32 '/teacher-center', '/teacher_premium', '/premium', 33 '/about', '/team', '/contact', '/press', '/careers', 34 '/impact', '/research-and-efficacy', 35 '/science-of-reading-and-writing', '/privacy-and-security', 36 '/ethical_ai', '/ethical-ai', '/pathways', '/faq', '/news', '/ap', '/preap', 37 '/springboard', '/college-board', '/blog', 38 '/social-studies', '/interdisciplinary-science', '/literature/' 39 ]; 40 if (marketingExact.indexOf(path) !== -1) return 'marketing'; 41 42 // === PRODUCT === 43 var productPrefixes = [ 44 '/student-center', '/classrooms/', '/classroom/', '/teachers/', 45 '/assign/', '/amplify/', '/account_settings', '/activity_sessions', 46 '/activities/', '/students_classrooms', '/diagnostic/', '/lessons/', 47 '/proofreader/', '/evidence/', '/grammar/', '/comprehension', 48 '/connect/', '/auth/', '/canvas_integration/', 49 '/oauth', '/clever/', '/join/', '/tutorials/', '/referrals' 50 ]; 51 for (var j = 0; j < productPrefixes.length; j++) { 52 if (path.indexOf(productPrefixes[j]) === 0) return 'product'; 53 } 54 55 var productExact = [ 56 '/classes', '/class', '/classrooms', '/classroom', 57 '/diagnostic', '/lessons', '/proofreader', '/evidence', 58 '/grammar', '/ai-writing-check', '/connect', 59 '/add_classroom', '/subscriptions', 60 '/admin_access', '/quill_academy', '/backpack', '/profile', 61 '/student', '/home', '/dashboard', '/teachers', '/activities', 62 '/join', '/referrals' 63 ]; 64 if (productExact.indexOf(path) !== -1) return 'product'; 65 66 // === OTHER (auth, legal, errors, internal) === 67 var otherPrefixes = ['/login', '/password', '/api/', '/cb/', '/cms/', '/session/']; 68 for (var k = 0; k < otherPrefixes.length; k++) { 69 if (path.indexOf(otherPrefixes[k]) === 0) return 'other'; 70 } 71 72 var otherExact = [ 73 '/sign-in', '/logout', '/forgot-password', '/tos', '/terms', 74 '/privacy', '/404', '/error', '/state_standards', '/teks', 75 '/locker', '/cms' 76 ]; 77 if (otherExact.indexOf(path) !== -1) return 'other'; 78 79 return undefined; 80 } 81 82 gtag('config', 'G-C0FB3VEGYR', { 83 content_group: quillContentGroup() 84 }); 85</script>
85 86 87 88
88<script type="text/javascript"> 89 window.global ||= window; 90 var process = process || { env: {} } // can likely remove this after pipeline rollout 91 window.postbuildEnv = {"CDN_URL":"https://assets.quill.org","CLASSLINK_SSO_CLIENT_ID":"c17453308740881ebb0af7c4870a1fc0391df4e1975f","CLASSLINK_ENABLED":true,"QUILL_CMS":"https://cms.quill.org","DEFAULT_URL":"https://www.quill.org","LESSONS_WEBSOCKETS_URL":"https://lessons-server.quill.org/","PERMITTED_LANGUAGES":" [\"english\", \"spanish\", \"portuguese\", \"chinese\", \"hindi\", \"french\", \"arabic\", \"russian\", \"urdu\", \"korean\", \"thai\", \"ukrainian\", \"dari\", \"tagalog\", \"japanese\", \"vietnamese\", \"german\"]","PUSHER_CLUSTER":"mt1","PUSHER_KEY":"b2cbf247b2e2d930b21d","QUILL_GRAMMAR_URL":"https://quill.org/grammar/#","RAILS_ENV":"production","PUBLIC_POSTHOG_HOST":"https://us.i.posthog.com","PUBLIC_POSTHOG_KEY":"phc_QxdZ6b251qqgNO4hy2MGtmosrVkPuR8iSFcAAerjGsB","SUPABASE_URL":"https://sessions.quill.org","SUPABASE_ANON_KEY":"sb_publishable_OAYJnjMR_Cfz0Xzhwxkmsw_FocrWhqo","SUPABASE_SERVICE_ENABLED":true,"SUPABASE_SESSION_PRIMARY":false} 92 </script>
92 93 94 95 <title>Quill.org | Sign Up</title> 96 <link rel="icon" type="image/x-icon" href="https://assets.quill.org/images/shared/favicon.ico" /> 97 98 <meta charset="utf-8"> 99 <meta http-equiv="X-UA-Compatible" content="IE=edge">
100<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"NRJS-bfa0d165f8376e8bdbd","applicationID":"548856875","transactionName":"IFgMQ0ELX19RQhYABwBYF1lHFxxdUUc=","queueTime":2,"applicationTime":38,"agent":""}</script>
vendor: 1 bytes, line 100
100
101<script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"NRJS-bfa0d165f8376e8bdbd",applicationID:"548856875",browserID:"548858369"};;/*! For license information please see nr-loader-rum-1.322.0.min.js.LICENSE.txt */ 102(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),a=0===Object.keys(r).length?e:r;for(let s in a)if(void 0!==e[s])try{if(null===e[s]){r[s]=null;continue}Array.isArray(e[s])&&Array.isArray(t[s])?r[s]=Array.from(new Set([...e[s],...t[s]])):e[s]instanceof Map||e[s]instanceof Set||e[s]instanceof Date||e[s]instanceof RegExp?r[s]=e[s]:"object"==typeof e[s]&&null!==t[s]&&"object"==typeof t[s]?r[s]=i(e[s],t[s]):r[s]=e[s]}catch(e){r[s]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>s});var n=r(384),i=r(8122);const a={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function s(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,a)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["xv",0,"1.322.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,a="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),s=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===s?.document?.visibilityState),c=""+s?.location,u=/iPad|iPhone|iPod/.test(s.navigator?.userAgent),d=u&&"undefined"==typeof SharedWorker,l=((()=>{const e=s.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)());r.d(t,["OF",0,u,"RI",0,i,"WN",0,l,"bv",0,a,"gm",0,s,"m",0,c,"mw",0,o,"sb",0,d,"zk",0,()=>{const e=s?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<s.performance.now())return e}])},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>u,x3:()=>c});var n=r(3241),i=r(3606),a=r(860),s=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:a.P3[t]||0};e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&d(e))}function u(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,d(e)}}function d(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const a=e.ee,o=i.i.handlers;if(a&&!a.aborted&&a.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=a.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}
102).forEach(t=>{t[0]?.on&&t[0].context()instanceof s.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}a.isolatedBacklog||delete o[t],a.backlog[t]=null,a.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],a=e[2];n.apply(i,a)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),a=r(2646),s=r(5607);const o="nr@context:".concat(s.W),c=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&u.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,a){!1!==a&&(a=!0);if(c.aborted&&!i)return;t&&a&&t.emit(e,r,n);var o=g(n);m(e).forEach(e=>{e.apply(o,r)});var u=v()[s[e]];u&&u.push([f,e,r,o]);return o},get:h,listeners:m,context:g,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{s[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,o,()=>new a.y(o)):new a.y(o)}function p(e,t){n[e]=m(e).concat(t)}function m(e){return n[e]||[]}function h(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),u=(0,n.Zm)();u.ee||(u.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,a){a?(a.buffer([e],i),a.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>a});var n=r(9908);a.on=s;var i=a.handlers={};function a(e,t,r,a){s(a||n.d,i,e,t,r)}function s(e,t,r,i,a){a||(a="feature"),e||(e=n.d);var s=t[a]=t[a]||{};(s[r]=s[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function a(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>a,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,a=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const s=[];for(var o=0;o<e;o++)s.push(i(r,a++).toString(16));return s.join("")}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>a});var n=r(944);const i=new Map;function a(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),a=t.includes("nrWrapper");return r||a||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},5289(e,t,r){"use strict";r.d(t,{GG:()=>s,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function a(){return"undefined"==typeof document||"complete"===document.readyState}function s(e,t){if(a())return e();const r=(0,i.J)(e),s=setInterval(()=>
102{a()&&(clearInterval(s),r())},500);(0,n.sp)("load",r,t)}function o(e){if(a())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(a())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>d,dV:()=>u,pV:()=>l});var n=r(6154),i=r(1863),a=r(944),s=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function u(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,s.i)(...Object.values(e.o))),e}function d(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,a.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),u(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>a,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function a(e,t,r){(0,n.sp)("pagehide",e,t,r)}},9300(e,t,r){"use strict";r(860).K7.ajax;r.d(t,["mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>a});var n=r(9566),i=r(1741);class a extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>a});var n=r(944),i=r(4261);class a{#e(e,...t){if(this[e]!==a.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>d});var n=r(3241),i=r(9908),a=r(1863),s=r(944),o=r(3969),c=r(8362),u=r(860);function d(e,t,r,a){const d=a||r;!d||d[e]&&d[e]!==c.d.prototype[e]||(d[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,u.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,s.R)(23,e)}})}function l(e,t,r,n,s){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(s||null===r)&&(0,i.p)("api-"+n,[(0,a.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",a="browser/blobs",s="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},u={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:a,[o.sessionReplay]:a,[o.logging]:s,[o.genericEvents]:"ins"};r.d(t,["$J",0,u,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,s,"df",0,a,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const a=t[n]={exports:{}};return e[n](a,a.exports,r),a.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],a=t[n++];r.o(e,i)?0===a&&n++:0===a?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:a})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>"nr-rum-1.322.0.min.js",r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.322.0.PROD:";r.l=(n,i,a,s)=>{if(e[n])return void e[n].push(i);let o,c;if(void 0!==a){const e=document.getElementsByTagName("script");for(var u=0;u<e.length;u++){const r=e[u];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+a){o=r;break}}}if(!o){c=!0;var d={296:"sha512-/59P7qAoMYQDJAZerTRPChdYcdrlcoEAw2TwA1wz6Y0/XLmt3sblL
102I5JCXAuxG0YxsW7iqJzgrcO7NJWO58EfQ=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+a),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),d[s]&&(o.integrity=d[s])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={374:0,840:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const a=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=a);const s=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(s,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,a,s]=n;var o,c,u=0;if(i.some(t=>0!==e[t])){for(o in a)r.o(a,o)&&(r.m[o]=a[o]);if(s)s(r)}for(t&&t(n);u<i.length;u++)c=i[u],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.322.0.PROD"]=self["webpackChunk:NRBA-1.322.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),a=r(1741);var s=r(2555),o=r(981);t.K7.genericEvents,o.R.PA,o.R.UA,o.R.BP;const c={RESOURCES:"experimental.resources",REGISTER:"register"};var u=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var l=r(2614),f=r(944),g=r(8122);const p="[data-nr-mask]",m=e=>(0,g.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:u.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(c.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(c.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,f.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(c.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:l.wk,inactiveMs:l.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(p):""===t||null===t?e.mask_selector=p:(0,f.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,f.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,f.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var h=r(6154),v=r(9324);let b=0;const y={buildEnv:"PROD",distMethod:"CDN",version:v.xv,originTime:h.WN},_={consented:!1},w={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||_.consented},set consented(e){_.consented=e}
102,customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++b},listeningForIframeMessages:!1},R="BA";var A=r(7836),x=r(3241);const E={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var S=r(9908);const k="newrelic-iframe-";function T(e,t={},n,o){let{init:c,info:u,loader_config:d,runtime:l={},exposed:f=!0}=t;if(!u){const e=(0,i.pV)();c=e.init,u=e.info,d=e.loader_config}var p;e.init=m(c||{}),e.loader_config=(p=d||{},(0,g.a)(p,E)),u.jsAttributes??={},h.bv&&(u.jsAttributes.isWorker=!0),e.info=(0,s.D)(u);const v=e.init;e.runtime??=(e=>{const t=(0,g.a)(e,w),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:R,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(a.W.prototype).forEach(r=>{const n=a.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=A.ee.get(e.agentIdentifier),e.exposed=f,(0,x.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&h.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(k)&&(0,S.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var j=r(1863),P=r(4261),N=r(1738);
102var O=r(1687),M=r(4234),I=r(5289),D=r(7767);function V(e){return!!(0,i.dV)().o.MO&&(0,D.V)(e)&&!0===e?.session_trace.enabled}var W=r(6389),B=r(7699);const C=new WeakSet,K=new WeakMap;class U extends M.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,W.J)(()=>{(0,O.Ak)(e,this.featureName),t()}))}):(0,O.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,s.f)(e.info))return(0,f.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(K.has(e))return K.get(e);const i=(async()=>{if((0,D.V)(e.init))try{const{setupAgentSession:t}=await r.e(296).then(r.bind(r,1768));t(e)}catch(e){(0,f.R)(20,e),t.emit("internal-error",[e]),(0,S.p)(B.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await Promise.resolve().then(function(){const e=new Error("Cannot find module '../../loaders/configure/iframe-message-handler'");throw e.code="MODULE_NOT_FOUND",e});t(e)}catch(e){(0,f.R)(23,e)}const[{Connector:i},{Harvester:a}]=await Promise.all([r.e(296).then(r.bind(r,6589)),r.e(296).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new a(e);const s=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(s.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();K.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,f.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,O.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,f.R)(34,e),this.abortHandler?.(),(0,O.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};h.RI?(0,I.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return V(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!C.has(e)&&(C.add(e),!(0,s.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}T(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var L=r(6630);class F extends U{static featureName=L.T;constructor(e){var t;super(e,L.T),this.setupInspectionEvents(),t=e,(0,N.Y)(P.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,S.p)("api-"+P.Fw,[(0,j.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(296).then(r.bind(r,908)):r.e(296).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,x.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,I.sB)(t=>{e(t,"DOMContentLoaded")}),(0,I.GG)(t=>{e(t,"load")}),(0,I.Qr)(t=>{e(t,"navigate")}),this.ee.on(l.tS.UPDATE,(e,t)=>{(0,x.W)({type:"lifecycle",name:"session",data:t})})}}class G extends e.d{constructor(e){var t;(super(),h.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(F),T(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(P.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,P.cD,n);(0,f.R)(40,typeof r)}else(0,f.R)(39,typeof e)},t),function(e){(0,N.Y)(P.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,f.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,S.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,P.Dl,!0)},e)}(this),function(e){(0,N.Y)(P.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,P.nb,!1);(0,f.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(P.Pv,function(t=!0){if("boolean"==typeof t){if((0,S.p)("api-"+P.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,f.R)(65,typeof t)},e)}(this),this.run()):(0,f.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};
102return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,f.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,f.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var H=r(2843),z=r(782);class Y extends U{static featureName=z.T;constructor(e){super(e,z.T),h.RI&&((0,H.u)(()=>(0,S.p)("docHidden",[(0,j.t)()],void 0,z.T,this.ee),!0),(0,H.G)(()=>(0,S.p)("winPagehide",[(0,j.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(296).then(r.bind(r,9981))))}}var Z=r(3969);class q extends U{static featureName=Z.TZ;constructor(e){super(e,Z.TZ),this.importAggregator(e,()=>r.e(296).then(r.bind(r,9623)))}}new G({features:[F,Y,q],loaderType:"lite"})})()})();</script>
102 103 <meta name="viewport" content="width=device-width, initial-scale=1"> 104 <meta property="og:type" content="website" /> 105 <meta property="og:title" content="Sign Up" /> 106 <meta property="og:image" content="https://assets.quill.org/images/share/facebook.png" /> 107 <meta property="twitter:image" content="https://assets.quill.org/images/share/facebook.png" /> 108 <meta name="description" content=""> 109 <meta name="og:description" content=""> 110 <link rel="apple-touch-icon" href="https://assets.quill.org/images/logos/apple-touch-icon.png"> 111 <link rel="canonical" href="https://www.quill.org/account/new"> 112 <link rel="manifest" href="/manifest.json" /> 113 114
114<script defer src="https://kit.fontawesome.com/a149fb25a6.js" crossorigin="anonymous" integrity="sha384-p7JrABPXxZLpj1XoHTzkPyVs8ekVssRFXc4B7XU6Z1c8XVDA7sVPem/lQ9UouxqE"></script>
114 115 <!-- Inspectlet tracking --> 116 <link href="https://fonts.googleapis.com/css?family=Roboto+Mono" rel="stylesheet" lazyload> 117 118 <!-- credit to https://blog.typekit.com/2011/05/25/loading-typekit-fonts-asynchronously/ --> 119
120<script> 121 (function() { 122 var config = { 123 kitId: 'zyx1nqp', 124 scriptTimeout: 3000 125 }; 126 var h = document.getElementsByTagName('html')[0]; 127 h.className += ' wf-loading'; 128 var t = setTimeout(function() { 129 h.className = h.className.replace(/(\s|^)wf-loading(\s|$)/g, ' '); 130 h.className += ' wf-inactive'; 131 }, config.scriptTimeout); 132 var d = false; 133 var tk = document.createElement('script'); 134 tk.src = '//use.typekit.net/' + config.kitId + '.js'; 135 tk.type = 'text/javascript'; 136 tk.async = 'true'; 137 tk.onload = tk.onreadystatechange = function() { 138 var rs = this.readyState; 139 if (d || rs && rs != 'complete' && rs != 'loaded') return; 140 d = true; 141 clearTimeout(t); 142 try { Typekit.load(config); } catch (e) {} 143 }; 144 var s = document.getElementsByTagName('script')[0]; 145 s.parentNode.insertBefore(tk, s); 146 })(); 147</script>
147 148 149 <link rel="stylesheet" href="//www.quill.org/vite/assets/shared-CfosUMcV.css" media="screen" /> 150 151 <link rel="stylesheet" href="//www.quill.org/vite/assets/application-CVWh7Zex.css" media="all" /> 152 <!-- start Segment.io --> 153
153<script type="text/javascript"> 154 155 !function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","debug","page","once","off","on"];analytics.factory=function(t){return function(){var e=Array.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics}};for(var t=0;t<analytics.methods.length;t++){var e=analytics.methods[t];analytics[e]=analytics.factory(e)}analytics.load=function(t,e){var n=document.createElement("script");n.type="text/javascript";n.async=!0;n.src="https://cdn.segment.com/analytics.js/v1/"+t+"/analytics.min.js";var a=document.getElementsByTagName("script")[0];a.parentNode.insertBefore(n,a);analytics._loadOptions=e};analytics.SNIPPET_VERSION="4.1.0"; 156 analytics.load("XVeKI40fXyEqHE1Is9btaglTLTAaMHzQ", { 157 integrations: { 158 all: true 159 160 , Intercom: false 161 , Vitally: false 162 , Heap: false 163 } 164 } 165 ); 166 analytics.reset() 167 168 169 // In case a teacher was signed in on this computer and set the Intercom 170 // localStorage, and then a student logged into this computer, let's 171 // explicitly tell Intercom to shut it down so the student does not 172 // see Intercom. 173 window.onload = function() { 174 if (typeof Intercom !== 'undefined') { 175 Intercom('shutdown'); 176 } 177 }; 178 }}(); 179 </script>
179 180 <!-- end Segment.io --> 181 182 183
184<script> 185window.birdieSettings = Object.assign({}, window.birdieSettings || {}, {}); 186</script>
186 187<!-- Birdie code Snippet -->
188<script>(function(){window.addEventListener("load",function(){var t=document.createElement("script");t.type="text/javascript",t.src="https://app.birdie.so/widget/embed/l8o0vtmo",document.body.appendChild(t)});})();</script>
188 189 190
190<script src="//www.quill.org/vite/assets/session-BRreV21E.js" crossorigin="anonymous" type="module"></script>
190<link rel="modulepreload" href="//www.quill.org/vite/assets/preNavigationBannerApp-cAGbMq5q.js" as="script" crossorigin="anonymous"> 191<link rel="modulepreload" href="//www.quill.org/vite/assets/constants-6l3j42Ul.js" as="script" crossorigin="anonymous"> 192<link rel="modulepreload" href="//www.quill.org/vite/assets/index-4ZGqqI84.js" as="script" crossorigin="anonymous"> 193<link rel="modulepreload" href="//www.quill.org/vite/assets/requestWrapper-CJXXdkOj.js" as="script" crossorigin="anonymous"> 194<link rel="modulepreload" href="//www.quill.org/vite/assets/password_wrapper-D369EHDt.js" as="script" crossorigin="anonymous"> 195<link rel="modulepreload" href="//www.quill.org/vite/assets/index-CvxRfEqC.js" as="script" crossorigin="anonymous"> 196<link rel="modulepreload" href="//www.quill.org/vite/assets/assignActivityPackBanner-3cgzjZub.js" as="script" crossorigin="anonymous"> 197<link rel="modulepreload" href="//www.quill.org/vite/assets/school_selector-ZhtpFQqg.js" as="script" crossorigin="anonymous"> 198<link rel="modulepreload" href="//www.quill.org/vite/assets/useDebounce-Dxa6sTg2.js" as="script" crossorigin="anonymous"> 199<link rel="modulepreload" href="//www.quill.org/vite/assets/radioButton-Ch3-HEAP.js" as="script" crossorigin="anonymous"> 200<link rel="modulepreload" href="//www.quill.org/vite/assets/AuthGoogleAccessForm-Boe46-Rn.js" as="script" crossorigin="anonymous"> 201<link rel="modulepreload" href="//www.quill.org/vite/assets/jquery-DGpjPq2O.js" as="script" crossorigin="anonymous"> 202<link rel="modulepreload" href="//www.quill.org/vite/assets/useSnackbarMonitor-eXDNdY9g.js" as="script" crossorigin="anonymous"> 203<link rel="modulepreload" href="//www.quill.org/vite/assets/snackbar-x0kYEhih.js" as="script" crossorigin="anonymous"> 204<link rel="modulepreload" href="//www.quill.org/vite/assets/useWindowSize-qa9b7xr7.js" as="script" crossorigin="anonymous"> 205<link rel="modulepreload" href="//www.quill.org/vite/assets/demoAccountBanner-yGTOhJVd.js" as="script" crossorigin="anonymous"> 206<link rel="modulepreload" href="//www.quill.org/vite/assets/_commonjsHelpers-BosuxZz1.js" as="script" crossorigin="anonymous"> 207<link rel="modulepreload" href="//www.quill.org/vite/assets/___vite-browser-external_commonjs-proxy-DRaEfepn.js" as="script" crossorigin="anonymous"> 208<link rel="modulepreload" href="//www.quill.org/vite/assets/get_auth_token-DUHxnVBB.js" as="script" crossorigin="anonymous"> 209 210 <meta name="csrf-param" content="authenticity_token" /> 211<meta name="csrf-token" content="a08wbmrKrkEW9dPYxbBQ9oR7CtdyLb03QUdanNzvOuNEGzNHRmX-esYAPjN8VHisBwWioI4bVQcHXBLwKSbRag" /> 212 <meta id='current-user-testing-flag' property="flag" content= /> 213 <meta id='current-user-id' property="id" content= /> 214 <meta id='current-user-is-premium?' property="is_premium?" content= /> 215 <meta id='current-user-email' property="email" content= /> 216 217<!--[if !IE 7]> 218 <style type="text/css"> 219 #wrap { display: table ; height: 100% } 220 </style> 221<![endif]--> 222 223<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries --> 224<!-- WARNING: Respond.js doesn't work if you view the page via file:// --> 225<!--[if lt IE 9]> 226
226<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
226 227
227<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
227 228<![endif]--> 229</head> 230 231
231<script> 232 function handleTabNavigation(e) { 233 if (e.code !== 'Tab') { return } 234 235 const element = document.getElementById("body") 236 if (element) { element.classList.remove("hide-focus-outline") } 237 } 238 </script>
238 239 <body class="hide-focus-outline" id="body" onkeydown="handleTabNavigation(event)"> 240 <div> 241 <a class="skip-main" href="#post-primary-nav">Skip past primary navigation</a> 242 </div> 243 244 245 246 247 248 249 250 251 <div id='application_nav_bar'> 252 253 254 <nav aria-label="Primary" class="non-standard-navbar navbar desktop-navbar" role="navigation"> 255 256<div class="q-navbar-home"> 257 <div class="logo-only"> 258 <a aria-label="Quill" class="focus-on-dark" href="/"> 259 <img alt="Quill logo" class="lazyload" src="/images/quill_header_logo.svg" /> 260 </a> 261 </div> 262</div> 263 264
265<script> 266 // Utility function to close a dropdown for a given button. 267 function closeDropdown(button) { 268 button.setAttribute("aria-expanded", "false"); 269 const menu = button.nextElementSibling; 270 if (menu) { 271 menu.style.display = "none"; 272 } 273 } 274 275 // Toggle dropdown on button click and handle Escape key on button. 276 document.querySelectorAll(".navbar-tooltip-trigger > button").forEach(button => { 277 button.addEventListener("click", event => { 278 event.stopPropagation(); 279 // Close all other dropdowns. 280 document.querySelectorAll(".navbar-tooltip-trigger > button").forEach(otherButton => { 281 if (otherButton !== button) { 282 closeDropdown(otherButton); 283 } 284 }); 285 286 // Toggle the clicked dropdown. 287 const expanded = button.getAttribute("aria-expanded") === "true"; 288 if (expanded) { 289 closeDropdown(button); 290 } else { 291 button.setAttribute("aria-expanded", "true"); 292 const menu = button.nextElementSibling; 293 if (menu) { 294 menu.style.display = "block"; 295 } 296 } 297 }); 298 299 button.addEventListener("keydown", event => { 300 if (event.key === "Escape") { 301 closeDropdown(button); 302 button.focus(); 303 } 304 }); 305 }); 306 307 // Close dropdown when clicking outside of its container. 308 document.addEventListener("click", event => { 309 document.querySelectorAll(".navbar-tooltip-trigger").forEach(container => { 310 if (!container.contains(event.target)) { 311 const button = container.querySelector("button"); 312 if (button) { 313 closeDropdown(button); 314 } 315 } 316 }); 317 }); 318 319 // Close dropdown when keydown event occurs outside of its container. 320 document.addEventListener("keydown", event => { 321 document.querySelectorAll(".navbar-tooltip-trigger").forEach(container => { 322 if (!container.contains(event.target)) { 323 const button = container.querySelector("button"); 324 if (button) { 325 closeDropdown(button); 326 } 327 } 328 }); 329 }); 330 331 const evidenceSidebarStorageKey = "evidence-sidebar-open"; 332 const evidenceSidebarToggle = document.getElementById("evidence-nav-toggle"); 333 334 function evidenceSidebarElements() { 335 return { 336 sidebar: document.querySelector(".main-admin-container .left-side-menu"), 337 activityContainer: document.querySelector(".main-admin-container .activity-container") 338 }; 339 } 340 341 function evidenceSidebarHasActivityEditorSection(sidebar) { 342 if (!sidebar) { return false; } 343 344 return Array.from(sidebar.querySelectorAll(".menu-label")).some(label => ( 345 label.textContent && label.textContent.trim() === "Activity Editor" 346 )); 347 } 348 349 function evidenceSidebarOpen() { 350 return window.localStorage.getItem(evidenceSidebarStorageKey) !== "false"; 351 } 352 353 function updateEvidenceSidebarToggle() { 354 if (!evidenceSidebarToggle) { return; } 355 356 const { sidebar, activityContainer } = evidenceSidebarElements(); 357 const hasSidebarLayout = Boolean( 358 sidebar && 359 activityContainer && 360 evidenceSidebarHasActivityEditorSection(sidebar) 361 ); 362 363 evidenceSidebarToggle.hidden = !hasSidebarLayout; 364 365 if (!hasSidebarLayout) { 366 document.body.classList.remove("evidence-sidebar-collapsed"); 367 return; 368 } 369 370 const isOpen = evidenceSidebarOpen(); 371 const img = evidenceSidebarToggle.querySelector("img"); 372 const openIconSrc = evidenceSidebarToggle.dataset.openIconSrc; 373 const closeIconSrc = evidenceSidebarToggle.dataset.closeIconSrc; 374 375 evidenceSidebarToggle.setAttribute("aria-expanded", String(isOpen)); 376 evidenceSidebarToggle.setAttribute("aria-label", isOpen ? "Close navigation" : "Open navigation"); 377 document.body.classList.toggle("evidence-sidebar-collapsed", !isOpen); 378 379 if (img) { 380 img.src = isOpen ? closeIconSrc : openIconSrc; 381 } 382 } 383 384 if (evidenceSidebarToggle) { 385 evidenceSidebarToggle.addEventListener("click", () => { 386 window.localStorage.setItem(evidenceSidebarStorageKey, String(!evidenceSidebarOpen())); 387 updateEvidenceSidebarToggle(); 388 }); 389 390 window.addEventListener("hashchange", updateEvidenceSidebarToggle); 391 392 let evidenceSidebarUpdatePending = false;
393 const evidenceSidebarObserver = new MutationObserver(() => { 394 if (!evidenceSidebarUpdatePending) { 395 evidenceSidebarUpdatePending = true; 396 requestAnimationFrame(() => { 397 evidenceSidebarUpdatePending = false; 398 updateEvidenceSidebarToggle(); 399 }); 400 } 401 }); 402 const evidenceSidebarObserverTarget = document.querySelector(".main-admin-container") || document.body; 403 evidenceSidebarObserver.observe(evidenceSidebarObserverTarget, { 404 childList: true, 405 subtree: true 406 }); 407 408 updateEvidenceSidebarToggle(); 409 } 410</script>
410 411 412 </nav> 413 <nav aria-label="Primary" class="non-standard-navbar navbar mobile-navbar" role="navigation"> 414 415 416<nav class="q-navbar-home sub-page"> 417 <div class="logo-only"> 418 <a aria-label="Quill" class="focus-on-dark" href=/> 419 <img src="/images/quill_header_logo.svg" alt="Quill logo" /> 420 </a> 421 </div> 422</nav> 423 424 </nav> 425 426
427<script> 428 function toggleMobileSecondaryDropdown(primaryDropdownOpen) { 429 const dropdown = document.querySelector('#mobile-subnav-dropdown'); 430 431 if(!dropdown) { return } 432 433 const parent = dropdown.parentElement 434 435 if(primaryDropdownOpen) { 436 parent.classList.remove('open'); 437 return; 438 } 439 if(parent.classList.contains('open')) { 440 parent.classList.remove('open'); 441 } else { 442 parent.classList.add('open'); 443 } 444 } 445 446 function toggleMobilePrimaryDropdown() { 447 toggleMobileSecondaryDropdown(true) 448 const dropdown = document.querySelector('#mobile-primary-dropdown-container'); 449 const child = dropdown.firstElementChild 450 if(child.classList.contains('open')) { 451 child.classList.remove('open'); 452 } else { 453 child.classList.add('open'); 454 } 455 } 456 457 function closeSubnavDropdown(dropdown, refocus) { 458 dropdown.classList.remove('open'); 459 const button = dropdown.querySelector('button'); 460 if (button) { 461 button.setAttribute('aria-expanded', 'false'); 462 if (refocus) { button.focus(); } 463 } 464 } 465 466 function toggleSubnavDropdown(button) { 467 const dropdown = button.closest('.subnav-dropdown'); 468 if (!dropdown) { return } 469 document.querySelectorAll('.subnav-dropdown.open').forEach(function(other) { 470 if (other !== dropdown) { closeSubnavDropdown(other, false); } 471 }); 472 const isOpen = dropdown.classList.toggle('open'); 473 button.setAttribute('aria-expanded', isOpen ? 'true' : 'false'); 474 } 475 476 document.addEventListener('click', function(event) { 477 document.querySelectorAll('.subnav-dropdown.open').forEach(function(dropdown) { 478 if (!dropdown.contains(event.target)) { closeSubnavDropdown(dropdown, false); } 479 }); 480 }); 481 482 document.addEventListener('keydown', function(event) { 483 if (event.key !== 'Escape') { return } 484 document.querySelectorAll('.subnav-dropdown.open').forEach(function(dropdown) { 485 closeSubnavDropdown(dropdown, true); 486 }); 487 }); 488</script>
488 489 490 </div> 491 492 <div id="post-primary-nav" class="page"> 493
493<script type="application/json" id="js-react-on-rails-context">{"railsEnv":"production","inMailer":false,"i18nLocale":"en","i18nDefaultLocale":"en","rorVersion":"13.3.3","rorPro":false,"href":"https://www.quill.org/account/new","location":"/account/new","scheme":"https","host":"www.quill.org","port":null,"pathname":"/account/new","search":null,"httpAcceptLanguage":"en-US,en;q=0.9","serverSide":false}</script>
493 494<div id="NewAccountApp-react-component-440586d8-d0ae-443b-8c6a-447a4169d41e"></div> 495
495<script type="application/json" class="js-react-on-rails-component" data-component-name="NewAccountApp" data-dom-id="NewAccountApp-react-component-440586d8-d0ae-443b-8c6a-447a4169d41e">{"teacherFromGoogleSignUp":false,"subjectAreas":[{"id":1,"name":"English / Language Arts / Reading","created_at":"2022-11-14T15:55:36.712Z","updated_at":"2022-11-14T15:55:36.712Z"},{"id":2,"name":"English as a New Language","created_at":"2022-11-14T15:55:36.717Z","updated_at":"2022-11-14T15:55:36.717Z"},{"id":3,"name":"General Elementary","created_at":"2022-11-14T15:55:36.723Z","updated_at":"2022-11-14T15:55:36.723Z"},{"id":4,"name":"Math","created_at":"2022-11-14T15:55:36.727Z","updated_at":"2022-11-14T15:55:36.727Z"},{"id":5,"name":"Science","created_at":"2022-11-14T15:55:36.732Z","updated_at":"2022-11-14T15:55:36.732Z"},{"id":6,"name":"History / Social Studies","created_at":"2022-11-14T15:55:36.737Z","updated_at":"2022-11-14T15:55:36.737Z"},{"id":7,"name":"Other","created_at":"2022-11-14T15:55:36.741Z","updated_at":"2022-11-14T15:55:36.741Z"}],"subRoles":["Instructional coach","Department head","School administrator","College administrator","District administrator","Tech coordinator","Librarian/media specialist","Billing contact"],"user":null,"school":null,"subscription":null,"isAdmin":null,"isDemo":false}</script>
495 496 497
498<script src="//www.quill.org/vite/assets/cookie_warning-BcdD8r6u.js" crossorigin="anonymous" type="module"></script>
498 499 500 </div> 501 <!-- This is a placeholder for ReactOnRails to know where to render the store props for 502 client side hydration --> 503 504 505 <footer class="home-footer"> 506 <section aria-labelledby="premiumFooterBannerHeader" class="banner-container three-part-premium dark-mode"> 507 <section class="banner-card"> 508 <div class="content-container"> 509 <div class="text-container"> 510 <h2>1.6x Rate of Growth</h2> 511 <p>Research studies demonstrate how Quill effectively builds writing skills.</p> 512 </div> 513 <img src="https://assets.quill.org/images/logos/essa-logo-light.png" alt='Essa Tier Logo'/> 514 </div> 515 <a class="quill-button outlined small white focus-on-dark" href="/research-and-efficacy" rel="noopener noreferrer" target="_blank">See Research Studies</a> 516 </section> 517 <section class="banner-card"> 518 <div class="content-container"> 519 <div class="text-container"> 520 <h2>10,000+ Quill Premium Educators</h2> 521 <p>These educators use Premiumâs growth data, school-wide reports, and data integrations to boost outcomes.</p> 522 </div> 523 </div> 524 <a class="quill-button outlined small white focus-on-dark" href="/premium" rel="noopener noreferrer" target="_blank">Explore Premium & Pricing</a> 525 </section> 526 <section class="banner-card"> 527 <div class="content-container"> 528 <div class="text-container"> 529 <h2>92% Privacy Score</h2> 530 <p>Common Sense awards the Privacy Seal for Quillâs high standards.</p> 531 </div> 532 <img src="https://assets.quill.org/images/logos/common-sense-privacy-logo-light.png" alt='Common Sense Privacy Logo' /> 533 </div> 534 <a class="quill-button outlined small white focus-on-dark" href="/privacy-and-security" rel="noopener noreferrer" target="_blank">View Privacy & Security</a> 535 </section> 536 </section> 537 <div class="footer-navigation"> 538 <ul> 539 <li> 540 <p>SCHOOLS & DISTRICTS</p> 541 </li> 542 <li> 543 <a class=focus-on-dark href=/admins>For Administrators</a> 544 </li> 545 <li> 546 <a class=focus-on-dark href=/science-of-reading-and-writing>Science of Reading & Writing</a> 547 </li> 548 <li> 549 <a class=focus-on-dark href=/privacy-and-security>Privacy & Security</a> 550 </li> 551 <li> 552 <a class=focus-on-dark href=/research-and-efficacy>Research & Efficacy</a> 553 </li> 554 <li> 555 <a class=focus-on-dark href=/premium>Premium Pricing</a> 556 </li> 557</ul> 558 559 <ul> 560 <li> 561 <p>LEARNING TOOLS</p> 562 </li> 563 <li> 564 <a class=focus-on-dark href=/tools/connect>Quill Connect</a> 565 </li> 566 <li> 567 <a class=focus-on-dark href=/tools/lessons>Quill Lessons</a> 568 </li> 569 <li> 570 <a class=focus-on-dark href=/tools/diagnostic>Quill Diagnostic</a> 571 </li> 572 <li> 573 <a class=focus-on-dark href=/tools/proofreader>Quill Proofreader</a> 574 </li> 575 <li> 576 <a class=focus-on-dark href=/tools/grammar>Quill Grammar</a> 577 </li> 578 <li> 579 <a class=focus-on-dark href=/tools/evidence>Quill Reading for Evidence</a> 580 </li> 581</ul> 582 583 584 <ul> 585 <li> 586 <p>EXPLORE CURRICULUM</p> 587 </li> 588 <li> 589 <a class=focus-on-dark href=/activities/packs>Featured Activity Packs</a> 590 </li> 591 <li> 592 <a class=focus-on-dark href=/ap>AP Activities</a> 593 </li> 594 <li> 595 <a class=focus-on-dark href=/preap>Pre-AP Activities</a> 596 </li> 597 <li> 598 <a class=focus-on-dark href=/springboard>SpringBoard Activities</a> 599 </li> 600 <li> 601 <a class=focus-on-dark href=/activities/section/7>ELA Standards</a> 602 </li> 603</ul> 604 605 <ul> 606 <li> 607 <p>TEACHER CENTER</p> 608 </li> 609 <li> 610 <a class=focus-on-dark href=/teacher-center>All Resources</a> 611 </li> 612 <li> 613 <a class=focus-on-dark href=/teacher-center/topic/whats-new>What's New?</a> 614 </li> 615 <li> 616 <a class=focus-on-dark href=/teacher-center/topic/writing-for-learning>Writing For Learning</a> 617 </li> 618 <li> 619 <a class=focus-on-dark href=/teacher-center/topic/getting_started>Getting Started</a> 620 </li> 621 <li> 622 <a class=focus-on-dark href=/teacher-center/topic/video-tutorials>Video Tutorials</a> 623 </li> 624 <li> 625 <a class=focus-on-dark href=/teacher-center/topic/best-practices>Best Practices</a> 626 </li> 627 <li> 628 <a class=focus-on-dark href=/faq>FAQ</a> 629 </li> 630</ul> 631 632 <ul> 633 <li> 634 <p>ABOUT US</p> 635 </li> 636 <li> 637 <a class=focus-on-dark href=/about>About Us</a> 638 </li> 639 <li> 640 <a class=focus-on-dark href=/impact>Impact</a> 641 </li> 642 <li> 643 <a class=focus-on-dark href=/press>Press</a> 644 </li> 645 <li> 646 <a class=focus-on-dark href=/ethical-ai>Ethical AI Hub</a> 647 </li> 648 <li> 649 <a class=focus-on-dark href=/pathways>Pathways Initiative</a> 650 </li> 651 <li> 652 <a class=focus-on-dark href=/team>Team</a> 653 </li> 654 <li> 655 <a class=focus-on-dark href=/careers>Careers</a> 656 </li> 657 <li> 658 <a class=focus-on-dark href=/contact>Contact Us</a> 659 </li> 660</ul> 661 662 </div> 663 <div class="partners-footer"> 664 <p>Quill is a free literacy tool powered by an open source, non-profit community of educators and developers.</p> 665 <div class="partner-links"> 666 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/logos/[email protected]" alt='Axim C
666ollaborative Logo'/> 667 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/logos/[email protected]" alt='Cambiar Education Logo'/> 668 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/logos/[email protected]" alt='Fast Forward Logo'/> 669 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/logos/[email protected]" alt='Overdeck Family Foundation Logo'/> 670 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/logos/[email protected]" alt='Robertson Foundation Logo'/> 671 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/logos/[email protected]" alt='Robinhood Logo'/> 672 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/logos/[email protected]" alt='Siegel Family Endowment Logo'/> 673 </div> 674 </div> 675 <div class="privacy-and-social flex-row space-between vertically-centered"> 676 <div class="pas-left flex-row"> 677 <p>© 2026 Quill</p> 678 <p>Quill is a 501(c)(3) nonprofit organization</p> 679 <a class="focus-on-light" href="/tos">Terms</a> 680 <a class="focus-on-light" href="/privacy">Privacy</a> 681</div> 682 683 <div class="pas-right flex-row"> 684 <a class="focus-on-dark" rel="noopener noreferrer" target="_blank" href="https://www.commonsense.org/education/reviews/quill"> 685 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/icons/xs/social-media/common-sense.svg" alt="Common Sense Logo"/> 686 </a> 687 <a class="focus-on-dark" rel="noopener noreferrer" target="_blank" href="https://apps.instructure.com/product/2336"> 688 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/icons/xs/social-media/canvas.svg" alt="Canvas Logo"/> 689 </a> 690 <a class="focus-on-dark" rel="noopener noreferrer" target="_blank" href="https://clever.com/library/app/quill"> 691 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/icons/xs/social-media/clever.svg" alt="Clever Logo"/> 692 </a> 693 <a class="focus-on-dark" rel="noopener noreferrer" target="_blank" href="https://edtechindex.org/product/ultid/U294-2794-E22F-64C9-48/"> 694 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/icons/xs/social-media/iste.svg" alt="ISTE Logo"/> 695 </a> 696 <a class="focus-on-dark" rel="noopener noreferrer" target="_blank" href="https://www.google.com/search?q=Quill.org%2C+41+East+11th+Street%2C+New+York%2C+NY&sca_esv=e56551571a6f13fc&ei=JAD8aPGfBJCf5NoPvKCm8Aw&oq=Quill.org+4&gs_lp=Egxnd3Mtd2l6LXNlcnAiC1F1aWxsLm9yZyA0KgIIADICECYyCBAAGKIEGIkFMgUQABjvBTIIEAAYogQYiQUyCBAAGKIEGIkFSI8hUJgDWLgXcAJ4AJABAJgBV6AB0gGqAQEzuAEByAEA-AEBmAIFoALrAcICDhAAGIAEGLADGLEDGIMBwgIIEAAYgAQYsAPCAgsQABiABBiRAhiKBcICBRAAGIAEwgIGEAAYFhgewgILEAAYgAQYhgMYigXCAggQABiABBiiBJgDAIgGAZAGCpIHATWgB7URsgcBM7gH5AHCBwUwLjEuNMgHEg&sclient=gws-wiz-serp#lrd=0x89c25a16e9c13887:0x332ba694d8452c4c,1,,,,"> 697 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/icons/xs/social-media/google.svg" alt="Google Logo"/> 698 </a> 699 <a class="focus-on-dark" rel="noopener noreferrer" target="_blank" href="https://www.linkedin.com/company/quill-org"> 700 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/icons/xs/social-media/linkedin.svg" alt="LinkedIn Logo"/> 701 </a> 702 <a class="focus-on-dark" rel="noopener noreferrer" target="_blank" href="https://www.youtube.com/@Quillorg"> 703 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/icons/xs/social-media/youtube.svg" alt="YouTube Logo"/> 704 </a> 705 <a class="focus-on-dark" rel="noopener noreferrer" target="_blank" href="https://www.tiktok.com/@writewithquill"> 706 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/icons/xs/social-media/tiktok.svg" alt="TikTok Logo"/> 707 </a> 708 <a class="focus-on-dark" rel="noopener noreferrer" target="_blank" href="https://facebook.com/quill.org"> 709 <img class="lazyload" loading="lazy" src="https://assets.quill.org/images/icons/xs/social-media/facebook.svg" alt="Facebook Logo"/> 710 </a> 711</div> 712 713 </div> 714 <div class="disclaimer-container"> 715 <p class="cb-disclaimer">College Board, AP, Pre-AP, and the acorn logo are registered trademarks of College Board.<p> 716 </div> 717 </footer> 718 719 720 <!-- Include all compiled plugins (below), or include individual files as needed --> 721 722 </body> 723 724</html> 725
726<script> 727 document.addEventListener("DOMContentLoaded", function() { 728 if (window.matchMedia('(display-mode: minimal-ui)').matches) { 729 function removeTargetFromLinks() { 730 document.querySelectorAll('a[target=_blank]').forEach(function(a) {a.removeAttribute('target');}); 731 } 732 removeTargetFromLinks(); 733 const observer = new MutationObserver(removeTargetFromLinks); 734 observer.observe(document.body, { childList: true, subtree: true }); 735 } 736 }); 737</script>
737 738
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.