1<!DOCTYPE html> 2<html lang="en"> 3 <head> 4 <meta charset="utf-8"/> 5 <link href="https://media.base44.com/images/public/6a0a12851e827cc02ca8a055/0126cafb9_emblem33x.png" rel="icon" type="image/png"/> 6 <meta content="width=device-width, initial-scale=1.0" name="viewport"/> 7 <link href="/manifest.json" rel="manifest"/> 8 <meta content="phwzb-HnkU1PN45UfIXJ8JnoXlmXo34vAE2mbhCb6tw" name="google-site-verification"/> 9 <title> 10 Blog | Fretted Instruments School 11 </title> 12 <meta content="Blog on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1." name="description"/> 13 <!-- Open Graph / Social --> 14 <meta content="website" property="og:type"/> 15 <meta content="Blog | Fretted Instruments School" property="og:title"/> 16 <meta content="Blog on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1." property="og:description"/> 17 <meta content="https://media.base44.com/images/public/6a0a12851e827cc02ca8a055/034f282fd_FIS.png/v1/fill/w_1200,h_630/034f282fd_FIS.png" property="og:image"/> 18 <meta content="1200" property="og:image:width"/> 19 <meta content="630" property="og:image:height"/> 20 <!-- Twitter Card --> 21 <meta content="summary_large_image" name="twitter:card"/> 22 <meta content="Blog | Fretted Instruments School" name="twitter:title"/> 23 <meta content="Blog on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1." name="twitter:description"/> 24 <meta content="https://media.base44.com/images/public/6a0a12851e827cc02ca8a055/034f282fd_FIS.png/v1/fill/w_1200,h_630/034f282fd_FIS.png" name="twitter:image"/> 25 <!-- Canonical URL --> 26 <!-- Robots: allow AI bots --> 27 <meta content="index, follow" name="robots"/> 28 <meta content="index, follow" name="googlebot"/> 29 <!-- JSON-LD Structured Data --> 30
30<script type="application/ld+json"> 31 { 32 "@context": "https://schema.org", 33 "@graph": [ 34 { 35 "@type": ["LocalBusiness", "MusicGroup"], 36 "@id": "https://frettedinstrumentsnyc.com/#business", 37 "name": "Jack Baker's Fretted Instruments School", 38 "description": "Guitar and banjo lessons in Manhattan, NYC since 1970. Specializing in fingerstyle acoustic guitar, Chet Atkins style, bluegrass banjo, clawhammer, and folk guitar. In-person and online lessons available.", 39 "url": "https://frettedinstrumentsnyc.com", 40 "telephone": "", 41 "foundingDate": "1970", 42 "areaServed": ["Manhattan", "New York City", "New York", "United States"], 43 "serviceType": ["Guitar Lessons", "Banjo Lessons", "Fingerstyle Guitar", "Bluegrass Banjo", "Clawhammer Banjo", "Online Music Lessons"], 44 "priceRange": "$$", 45 "address": { 46 "@type": "PostalAddress", 47 "addressLocality": "Manhattan", 48 "addressRegion": "NY", 49 "addressCountry": "US" 50 }, 51 "geo": { 52 "@type": "GeoCoordinates", 53 "latitude": "40.7831", 54 "longitude": "-73.9712" 55 }, 56 "openingHours": "Mo-Su 09:00-20:00", 57 "hasMap": "https://maps.google.com/?q=Manhattan,+New+York+City", 58 "sameAs": [ 59 "https://frettedinstrumentsnyc.com" 60 ], 61 "knowsAbout": ["Fingerstyle Guitar", "Chet Atkins", "Bluegrass Banjo", "Clawhammer", "Folk Guitar", "Acoustic Guitar"] 62 }, 63 { 64 "@type": "Person", 65 "@id": "https://frettedinstrumentsnyc.com/#jackbaker", 66 "name": "Jack Baker", 67 "jobTitle": "Guitar and Banjo Instructor", 68 "description": "Jack Baker has been teaching guitar and banjo in Manhattan since 1970. A respected figure in the NYC folk music community, he has been cited in The New Yorker and his arrangements are archived by the Historical Society.", 69 "worksFor": { 70 "@id": "https://frettedinstrumentsnyc.com/#business" 71 }, 72 "knowsAbout": ["Fingerstyle Guitar", "Chet Atkins Style Guitar", "Bluegrass Banjo", "Clawhammer Banjo", "Folk Music", "Acoustic Guitar"], 73 "sameAs": [ 74 "https://frettedinstrumentsnyc.com" 75 ] 76 }, 77 { 78 "@type": "FAQPage", 79 "mainEntity": [ 80 { 81 "@type": "Question", 82 "name": "Do you offer online guitar and banjo lessons?", 83 "acceptedAnswer": { 84 "@type": "Answer", 85 "text": "Yes, Fretted Instruments School offers online lessons via video call for students across the United States who cannot attend in person in Manhattan." 86 } 87 }, 88 { 89 "@type": "Question", 90 "name": "What styles of guitar do you teach?", 91 "acceptedAnswer": { 92 "@type": "Answer", 93 "text": "We teach fingerstyle acoustic guitar, Chet Atkins style, folk guitar, slide guitar, and classical fingerpicking. All levels from beginner to advanced are welcome." 94 } 95 }, 96 { 97 "@type": "Question", 98 "name": "What banjo styles do you teach?", 99 "acceptedAnswer": { 100 "@type": "Answer", 101 "text": "We teach bluegrass banjo (Scruggs style), clawhammer banjo, and old-time banjo for all skill levels from beginner to advanced." 102 } 103 }, 104 { 105 "@type": "Question", 106 "name": "How long has Fretted Instruments School been teaching?", 107 "acceptedAnswer": { 108 "@type": "Answer", 109 "text": "Fretted Instruments School has been offering guitar and banjo lessons in Manhattan, New York City since 1970 â over 50 years of music instruction." 110 } 111 }, 112 { 113 "@type": "Question", 114 "name": "Where are you located?", 115 "acceptedAnswer": { 116 "@type": "Answer", 117 "text": "We are located in Manhattan, New York City. In-person lessons are available in Manhattan, and online lessons are available for students nationwide." 118 } 119 } 120 ] 121 } 122 ] 123 } 124 </script>
124 125
125<script crossorigin="" src="/assets/index-XwGB7ylX.js" type="module"> 126 </script>
126 127 <link crossorigin="" href="/assets/index-xZ0_MNDp.css" rel="stylesheet"/> 128
128<script type="module"> 129 if (window.self === window.top) { 130 let lastPath = ""; 131 function getPageNameFromPath(path) { 132 const segments = path.split("/").filter(Boolean); 133 return segments[0] || null; 134 } 135 function trackPageView() { 136 const path = window.location.pathname; 137 if (path === lastPath) return; 138 lastPath = path; 139 const pageName = getPageNameFromPath(path) || "home"; 140 const appId = "6a0a12851e827cc02ca8a055"; 141 if (!appId) return; 142 fetch(`/api/app-logs/${appId}/log-user-in-app/${pageName}`, { 143 method: "POST", 144 }).catch(() => {}); 145 } 146 const originalPushState = history.pushState.bind(history); 147 history.pushState = function (...args) { 148 originalPushState(...args); 149 trackPageView(); 150 }; 151 const originalReplaceState = history.replaceState.bind(history); 152 history.replaceState = function (...args) { 153 originalReplaceState(...args); 154 trackPageView(); 155 }; 156 window.addEventListener("popstate", trackPageView); 157 trackPageView(); 158} 159 </script>
159 160 <meta content="https://frettedinstrumentsnyc.com/blog" property="og:url"/> 161 <meta content="Fretted Instruments School" property="og:site_name"/> 162 <meta content="https://frettedinstrumentsnyc.com/blog" name="twitter:url"/> 163
163<script> 164 (function () { 165 var titles = {"/": "Fretted Instruments School", "/music": "Music | Fretted Instruments School", "/about": "About | Fretted Instruments School", "/contact": "Contact | Fretted Instruments School", "/guitar-lessons-nyc": "Guitar Lessons NYC | Fretted Instruments School", "/testimonials": "Testimonials | Fretted Instruments School", "/fretboard-practice": "Fretboard Practice | Fretted Instruments School", "/blog": "Blog | Fretted Instruments School", "/home": "Fretted Instruments School"}; 166 // PascalCase boundaries -> "-", mirroring _PASCAL_BOUNDARY_RE without lookbehind 167 // (old Safari fails to PARSE a lookbehind, taking the whole script down). 168 var dashed = function (s) { 169 return s.replace(/([a-z0-9])([A-Z])/g, "$1-$2").replace(/([A-Z])([A-Z][a-z])/g, "$1-$2"); 170 }; 171 var decode = function (s) { 172 // A %2F inside ONE segment must not become a structural separator: /blog/foo%2Fbar is a 173 // dynamic slug, and letting it split would match a static /blog/foo/bar and write ITS title. 174 try { var d = decodeURIComponent(s); return d.indexOf("/") < 0 ? d : s; } catch (e) { return s; } 175 }; 176 var segments = function (path) { return path.split("/").filter(Boolean).map(decode); }; 177 var norm = function (path) { 178 var parts = segments(path).map(function (s) { return dashed(s).toLowerCase(); }); 179 return parts.length ? "/" + parts.join("/") : "/"; 180 }; 181 var lastPath = location.pathname, written = document.title, on = true; 182 var sync = function () { 183 // Path only: a hash/query change is the same page, and the SDK strips its own auth 184 // params with replaceState -- neither must clobber a server-rendered title in place. 185 if (!on || location.pathname === lastPath) return; 186 lastPath = location.pathname; 187 if (document.title !== written) { on = false; return; } 188 // Write ONLY a title the map proves. An unmapped path is a dynamic route (/blog/:slug) the 189 // map cannot carry, and writing a placeholder there is destructive, not merely vague: the 190 // prerender worker runs no setUserAgent, so its capture browser reads as human and executes 191 // this script, and coordinator.js's settle wait explicitly tolerates a full navigation -- 192 // a redirect landing on an unmapped path would bake the placeholder into the stored 193 // snapshot. Leaving the title alone degrades to today's behavior instead. 194 // Exact lookup only. A dash-stripped retry here would let a genuinely different /set-up 195 // claim /setup: the map carries a dash-free key only where a PascalCase boundary put the 196 // dashes there, and the client cannot tell the two apart. The map emits every reachable 197 // shape per segment instead (_client_url_variants). 198 var title = titles[norm(location.pathname)]; 199 if (title === undefined) return; 200 document.title = title; 201 // Re-read: the setter stores verbatim but the getter strips and collapses whitespace, so 202 // keeping the assigned string would make the next sync() read our own write as the app's. 203 written = document.title; 204 }; 205 var wrap = function (fn) { 206 // The history entry is already pushed by the time sync() runs, so a throw here would 207 // surface inside the host app's router and break navigation. This is injected into apps 208 // we cannot test, so it swallows rather than trusting the trace. 209 return function () { 210 var r = fn.apply(this, arguments); 211 try { sync(); } catch (e) {} 212 return r; 213 }; 214 }; 215 history.pushState = wrap(history.pushState); 216 history.replaceState = wrap(history.replaceState); 217 window.addEventListener("popstate", sync); 218})(); 219 </script>
219 220 <meta content="yes" name="mobile-web-app-capable"/> 221 <meta content="black" name="apple-mobile-web-app-status-bar-style"/> 222 <meta content="Fretted Instruments School" name="apple-mobile-web-app-title"/> 223 <link href="https://frettedinstrumentsnyc.com/blog" rel="canonical"/> 224
224<script data-seo-source="builder" type="application/ld+json"> 225 {"name": "Fretted Instruments School", "@context": "https://schema.org", "@type": "WebSite", "url": "https://frettedinstrumentsnyc.com"} 226 </script>
226 227
227<script data-seo-source="builder" type="application/ld+json"> 228 {"name": "Fretted Instruments School", "logo": "https://media.base44.com/images/public/6a0a12851e827cc02ca8a055/91686d355_logo.png", "@context": "https://schema.org", "@type": "Organization", "url": "https://frettedinstrumentsnyc.com"} 229 </script>
229 230
230<script data-seo-source="builder" type="application/ld+json"> 231 {"@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{"@type": "ListItem", "position": 1, "name": "Home", "item": "https://frettedinstrumentsnyc.com/"}, {"@type": "ListItem", "position": 2, "name": "Blog | Fretted Instruments School", "item": "https://frettedinstrumentsnyc.com/blog"}]} 232 </script>
232 233
233<script> 234 (function(){var SAMPLING_RATE=1.0;var sid=(crypto.randomUUID&&crypto.randomUUID())||(Date.now()+'-'+Math.random().toString(36).slice(2));function samplingValue(v){var h=2166136261;for(var i=0;i<v.length;i++){h^=v.charCodeAt(i);h=Math.imul(h,16777619);}return(h>>>0)/4294967296;}var _sampledOut=samplingValue(sid)>=SAMPLING_RATE;window.Base44=window.Base44||{};if(_sampledOut){var _noop=function(){};window.Base44.recordings=Object.freeze({version:'1',setUserID:_noop,setUserAnonymousID:_noop,setMetadata:_noop,event:_noop,issue:_noop,start:_noop,stop:_noop,isActive:function(){return false;},getSessionID:function(){return null;},getSessionURL:function(){return null;},forceFlushBatch:_noop});try{console.debug('[base44 recordings] session sampled out');}catch(_){}return;}var s=document.createElement('script');window.Base44.__preQ=window.Base44.__preQ||[];if(!window.Base44.recordings){var _pre=function(m){return function(){if(window.Base44.__preQ.length<100)window.Base44.__preQ.push([m,Array.prototype.slice.call(arguments)]);};};window.Base44.recordings={version:'1',setUserID:_pre('setUserID'),setUserAnonymousID:_pre('setUserAnonymousID'),setMetadata:_pre('setMetadata'),event:_pre('event'),issue:_pre('issue'),start:_pre('start'),stop:_pre('stop'),isActive:function(){return false;},getSessionID:function(){return null;},getSessionURL:function(){return null;},forceFlushBatch:_pre('forceFlushBatch')};}s.src='https://unpkg.com/[email protected]/dist/rrweb.umd.cjs';s.integrity='sha384-vi2VGEOczLoSZVrAqXzYd5VWgeBvxiOEgda6/sVzRK+lvhbs9TuqZ474UUptLXLB';s.crossOrigin='anonymous';s.async=true;s.onload=function(){if(!window.rrweb)return;var _started=false;var APP_ID="6a0a12851e827cc02ca8a055";var INGEST_TOKEN="L7BsULVhVJS257AM7QAOYXes2oQtRwwn9v48lNFXgIw";var NETWORK_IGNORE_HEADERS=["cookie", "set-cookie", "authorization", "x-api-key"];var buffer=[];var lastFlush=Date.now();var recorderStopFn=null;var _stopRequested=false;var MAX_SESSION_MS=1800000;var IDLE_TIMEOUT_MS=900000;var lastActivityAt=0;var idleTimer=null;var maxTimer=null;var _sdkActive=null;var _sdkPending=[];var SDK_CAP=256;var sdkSafe=function(v){try{return String(v).slice(0,SDK_CAP);}catch(_){return '';}};var sdkDeep=function(v){try{return JSON.parse(JSON.stringify(v||{}));}catch(_){return {};}};var sdkEmit=function(method,payload){if(_sampledOut)return;var ev={method:method,payload:payload||{}};if(_sdkActive){try{_sdkActive('base44_sdk',Object.assign({method:method},payload||{}));}catch(_){}return;}if(_sdkPending.length<100)_sdkPending.push(ev);};window.Base44=window.Base44||{};window.Base44.recordings=Object.freeze({version:'1',setUserID:function(id){sdkEmit('setUserID',{value:sdkSafe(id)});},setUserAnonymousID:function(id){sdkEmit('setUserAnonymousID',{value:sdkSafe(id)});},setMetadata:function(key,value){if(_sampledOut)return;if(typeof key!=='string'||key.length>64)return;var v;try{v=JSON.parse(JSON.stringify(value));}catch(_){return;}sdkEmit('setMetadata',{key:key,value:v});},event:function(name,payload){if(_sampledOut)return;if(typeof name!=='string')return;sdkEmit('event',{name:name.slice(0,64),payload:sdkDeep(payload)});},issue:function(name,payload){if(_sampledOut)return;if(typeof name!=='string')return;sdkEmit('issue',{name:name.slice(0,64),payload:sdkDeep(payload)});},start:function(){},stop:function(){stopRecording('manual',true);},isActive:function(){return !_sampledOut&&!_stopRequested&&!!recorderStopFn;},getSessionID:function(){return _sampledOut?null:sid;},getSessionURL:function(){return null;},forceFlushBatch:function(){if(_sampledOut)return;try{flush(false);}catch(_){}}});if(window.Base44.__preQ&&window.Base44.__preQ.length){var _pq=window.Base44.__preQ;window.Base44.__preQ=[];for(var _qi=0;_qi<_pq.length;_qi++){var _m=_pq[_qi][0],_a=_pq[_qi][1];try{var _fn=window.Base44.recordings[_m];if(typeof _fn==='function')_fn.apply(null,_a);}catch(_){}}}function redactUrl(u){try{u=String(u||'');var q=u.indexOf('?');if(q>=0)u=u.slice(0,q);var h=u.indexOf('#');if(h>=0)u=u.slice(0,h);return u;}catch(_){return'';}}function redactText(s){try{s=String(s||'');return s.replace(/https?:\/\/[^\s)'\"]+|\/[^\s)'\"]*[?#][^\s)'\"]*/g,function(m){return redactUrl(m);});}catch(_){return'';}}function stopRecording(reason,dropBuffered){if(_stopRequested){if(dropBuffered)buffer.length=0;return;}if(!dropBuffered){try{flush(false);}catch(_){}}_stopRequested=true;buffer.length=0;if(idleTimer){try{clearTimeout(idleTimer);}catch(_){}idleTimer=null;}if(maxTimer){try{clearTimeout(maxTimer);}catch(_){}maxTimer=null;}if(recorderStopFn){try{recorderStopFn();recorderStopFn=null;}catch(_){}}
234try{if(reason)console.debug('[base44 recordings] stopped: '+reason);}catch(_){}}function scheduleIdleStop(){if(_stopRequested)return;if(idleTimer){try{clearTimeout(idleTimer);}catch(_){}}var wait=IDLE_TIMEOUT_MS-(Date.now()-lastActivityAt);if(wait<0)wait=0;idleTimer=setTimeout(function(){if(_stopRequested)return;if(Date.now()-lastActivityAt>=IDLE_TIMEOUT_MS)stopRecording('idle_timeout',false);else scheduleIdleStop();},wait);}function markActivity(){if(_stopRequested)return;lastActivityAt=Date.now();scheduleIdleStop();}function isMeaningfulActivityEvent(ev){try{return !!(ev&&ev.type===3&&ev.data&&((ev.data.source===2&&(ev.data.type===2||ev.data.type===4||ev.data.type===9))||ev.data.source===3||ev.data.source===5));}catch(_){return false;}}function sessionLifetimeCapture(){lastActivityAt=Date.now();maxTimer=setTimeout(function(){stopRecording('max_duration',false);},MAX_SESSION_MS);scheduleIdleStop();}function flush(ka){if(_stopRequested){buffer.length=0;return;}if(!buffer.length)return;var tok=null;try{tok=localStorage.getItem('base44_access_token');}catch(_){}var payload={app_id:APP_ID,session_id:sid,events:buffer.splice(0),page_url:redactUrl(location.href),user_agent:navigator.userAgent,access_token:tok};lastFlush=Date.now();var opts={method:'POST',headers:{'Content-Type':'application/json','X-Base44-Recording-Token':INGEST_TOKEN},body:JSON.stringify(payload)};if(ka)opts.keepalive=true;fetch('/api/runtime/session-recordings/ingest',opts).then(function(r){try{var skip=r.headers.get('X-Base44-Recording-Skip');if(skip==='excluded'||skip==='admin'){stopRecording('excluded',true);return;}if(skip==='sampled'){stopRecording('sampled',true);return;}}catch(_){}if(!r.ok){try{console.warn('session-recordings ingest http',r.status);}catch(_){}try{if(r.status===429&&r.headers.get('X-Base44-Recording-Limit')==='reached'){stopRecording('quota_reached',true);}}catch(_){}}}).catch(function(e){try{console.warn('session-recordings ingest err',e);}catch(_){}});}function devtoolsCapture(){if(!(window.rrweb&&window.rrweb.record&&window.rrweb.record.addCustomEvent))return;var add=window.rrweb.record.addCustomEvent;var inside=false;function safe(fn){return function(){if(inside)return;inside=true;try{return fn.apply(this,arguments);}finally{inside=false;}};}['log','info','warn','error','debug'].forEach(function(level){var orig=console[level];if(!orig)return;console[level]=function(){try{add('console',{level:level});}catch(_){}return orig.apply(console,arguments);};});window.addEventListener('error',safe(function(e){add('error',{message:redactText(String(e.message||'unknown')),source:redactUrl(e.filename||''),line:e.lineno||0,col:e.colno||0,stack:e.error&&e.error.stack?redactText(String(e.error.stack).slice(0,1000)):''});}));window.addEventListener('unhandledrejection',safe(function(e){var r=e.reason||{};add('error',{message:redactText(String(r.message||r||'unhandled rejection')),stack:r.stack?redactText(String(r.stack).slice(0,1000)):'',rejection:true});}));if(window.fetch){var of=window.fetch.bind(window);window.fetch=function(input,init){var t0=performance.now();var method=(init&&init.method)||(input&&input.method)||'GET';var url=typeof input==='string'?input:(input&&input.url)||'';if(url.indexOf('/api/runtime/session-recordings/ingest')>=0)return of(input,init);var rurl=redactUrl(url);return of(input,init).then(function(r){try{add('network',{kind:'fetch',method:method,url:rurl,status:r.status,duration:Math.round(performance.now()-t0)});}catch(_){}return r;}).catch(function(e){try{add('network',{kind:'fetch',method:method,url:rurl,status:0,duration:Math.round(performance.now()-t0),error:String(e&&e.message||e)});}catch(_){}throw e;});};}if(window.XMLHttpRequest){var xp=window.XMLHttpRequest.prototype;var oo=xp.open,os=xp.send;xp.open=function(m,u){this.__gp_m=m;this.__gp_u=u;return oo.apply(this,arguments);};xp.send=function(){var xhr=this,t0=performance.now();xhr.addEventListener('loadend',function(){try{if((xhr.__gp_u||'').indexOf('/api/runtime/session-recordings/ingest')<0)add('network',{kind:'xhr',method:xhr.__gp_m||'GET',url:redactUrl(xhr.__gp_u),status:xhr.status,duration:Math.round(performance.now()-t0)});}catch(_){}});return os.apply(this,arguments);};}}var EMAIL_RE=/([a-zA-Z0-9._%+-]+)@([a-zA-Z0-9.-]+\.[a-zA-Z]{2,})/g;var MASK_EMAILS=true;var MASK_NUMBERS=false;var CAPTURE_IFRAMES=true;function maskTextFn(text){if(!MASK_EMAILS||typeof text!=='string')return text;return text.replace(EMAIL_RE,'[email]');}function performanceCapture(){if(!('PerformanceObserver' in window))return;if(!(window.rrweb&&window.rrweb.record&&window.rrweb.record.addCustomEvent))return;var addPerf=window.rrweb.record.addCustomEvent;function emit(metric,value){try{addPerf('performance',{metric:metric,value:value,timestamp:Date.now()});}catch(_){}}try{new PerformanceObserver(function(list){var entries=list.getEntries();var last=entries[entries.length-1];if(last)emit('LCP',Math.round(last.renderTime||last.loadTime||last.startTime||0));}).observe({type:'largest-contentful-paint',buffered:true});}catch(_){}try{new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];emit('FID',Math.round(e.processingStart-e.startTime));}}).observe({type:'first-input',buffered:true});}catch(_){}try{var clsValue=0;new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];if(!e.hadRecentInput){clsValue+=e.value;}}emit('CLS',Math.round(clsValue*1000)/1000);}).observe({type:'layout-shift',buffered:true});}catch(_){}try{new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];if(e.name==='first-contentful-paint')emit('FCP',Math.round(e.startTime));}}).observe({type:'paint',buffered:true});}catch(_){}try{new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];emit('TTFB',Math.round(e.responseStart));}}).observe({type:'navigation',buffered:true});}catch(_){}}function issueCapture(){if(_sampledOut)return;if(!(window.rrweb&&window.rrweb.record&&window.rrweb.record.addCustomEvent))return;var addIssue=window.rrweb.record.addCustomEvent;var _crashEmitted=false;function emitIssue(kind){var page='';try{page=location.pathname;}catch(_){}try{addIssue('base44_issue',{kind:kind,page:page});}catch(_){}}var isReload=false;try{if(performance.getEntriesByType){var navEntry=performance.getEntriesByType('navigation')[0];if(navEntry&&navEntry.type==='reload')isReload=true;}}catch(_){}if(!isReload){try{if(performance.navigation&&performance.navigation.type===1)isReload=true;}catch(_){}}if(isReload)emitIssue('page_refresh');try{window.addEventListener('unhandledrejection',function(){try{if(_crashEmitted)return;_crashEmitted=true;emitIssue('app_crash');}catch(_){}},true);}catch(_){}}function startRecord(){if(_started)return;if(_stopRequested){try{console.debug('[base44 recordings] stop requested before start; not recording');}catch(_){}return;}if(_sampledOut){try{console.debug('[base44 recordings] session sampled out');}catch(_){}return;}_started=true;var maskInputOptions={password:true,email:true};if(MASK_NUMBERS){maskInputOptions.number=true;maskInputOptions.tel=true;maskInputOptions.date=true;}var recordOpts={emit:function(ev){if(_stopRequested)return;if(isMeaningfulActivityEvent(ev))markActivity();try{if(ev&&ev.type===4&&ev.data&&typeof ev.data.href==='string')ev.data.href=redactUrl(ev.data.href);}catch(_){}buffer.push(ev);if(ev.type===2){flush(false);return;}if(buffer.length>=50||Date.now()-lastFlush>5000)flush(false);},maskAllInputs:true,maskInputOptions:maskInputOptions,maskTextFn:maskTextFn,maskTextSelector:'.session-record-mask,[data-no-record]',blockSelector:'.session-record-block,[data-no-record-block]',recordCanvas:false,inlineStylesheet:true,checkoutEveryNms:60000};if(CAPTURE_IFRAMES)recordOpts.iframe=true;recorderStopFn=window.rrweb.record(recordOpts);if(window.rrweb.record.addCustomEvent){_sdkActive=window.rrweb.record.addCustomEvent;for(var _i=0;_i<_sdkPending.length;_i++){var _e=_sdkPending[_i];try{_sdkActive('base44_sdk',Object.assign({method:_e.method},_e.payload||{}));}catch(_){}}_sdkPending=[];}devtoolsCapture();performanceCapture();issueCapture();sessionLifetimeCapture();setTimeout(function(){try{window.rrweb.record.takeFullSnapshot&&window.rrweb.record.takeFullSnapshot(true);}catch(_){}},1500);setInterval(function(){flush(false);},5000);window.addEventListener('beforeunload',function(){flush(true);});}function whenReady(){var tries=0;function check(){var root=document.getElementById('root')||document.querySelector('main')||document.body;if(root&&root.childElementCount>0)return startRecord();if(++tries>50)return startRecord();setTimeout(check,100);}check();}
234if(document.readyState==='complete')whenReady();else window.addEventListener('load',whenReady);};(document.head||document.body).appendChild(s);})(); 235 </script>
235 236 </head> 237 <body> 238 <div id="root"> 239 <div data-seo-source="builder" id="seo-snapshot" style="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;"> 240 <main> 241 <header> 242 <h1> 243 Blog | Fretted Instruments School 244 </h1> 245 <p> 246 Blog on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1. 247 </p> 248 </header> 249 <nav aria-label="Pages"> 250 <h2> 251 Pages 252 </h2> 253 <ul> 254 <li> 255 <a href="/"> 256 Home 257 </a> 258 </li> 259 <li> 260 <a href="/music"> 261 Music 262 </a> 263 â Music on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1. 264 </li> 265 <li> 266 <a href="/about"> 267 About 268 </a> 269 â About on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1. 270 </li> 271 <li> 272 <a href="/contact"> 273 Contact 274 </a> 275 â Contact on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1. 276 </li> 277 <li> 278 <a href="/guitar-lessons-nyc"> 279 Guitar Lessons NYC 280 </a> 281 â Guitar Lessons NYC on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1. 282 </li> 283 <li> 284 <a href="/testimonials"> 285 Testimonials 286 </a> 287 â Testimonials on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1. 288 </li> 289 <li> 290 <a href="/fretboard-practice"> 291 Fretboard Practice 292 </a> 293 â Fretboard Practice on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1. 294 </li> 295 <li> 296 <a href="/blog"> 297 Blog 298 </a> 299 â Blog on Fretted Instruments School. Fretted Instruments School helps you organize, track, and share your work in 1. 300 </li> 301 </ul> 302 </nav> 303 </main> 304 </div> 305 </div> 306 </body> 307</html>
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.