<!DOCTYPE html>
<html>
<head>
<title>Bytes: Breaking Babel</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="color-scheme" content="light dark">
<meta name="supported-color-schemes" content="light dark">
<link href="https://fonts.googleapis.com/css2?family=Fira+Mono&family=Outfit:wght@400;500;700;900&family=Paytone+One" rel="stylesheet">
<style>@media (prefers-color-scheme: dark) {
.email-wrapper {
color: #F9F4DA !important;
background-color: #0F0D0E !important;
}
hr {
border-color: #262422 !important;
}
mark {
background-color: #231F20 !important;
color: #F9F4DA !important;
}
pre {
background-color: #231F20 !important;
border: 1px solid #231F20 !important;
color: #F9F4DA !important;
}
.bg-alt {
background-color: #231F20 !important;
}
.unsubscribe-link {
color: #504C48 !important;
}
.token.punctuation {
color: #f9f4da !important;
}
}
@media screen and (min-width: 600px) {
.mobile-break {
display: none;
}
}</style>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<table class="email-wrapper" border="0" cellspacing="0" width="100%" style="background-color: #FFF; border-collapse: collapse; color: #231F20; font-family: Outfit, sans-serif; font-size: 16px; width: 100%;"><tbody><tr>
<td style="border-collapse: collapse !important; word-break: normal;"></td>
<td width="600px" style="border-collapse: collapse !important; width: 600px; word-break: normal;"><div style="max-width:600px;padding-top:80px">
<div style="text-align:center"><img width="600" style="max-width: 100%; padding-bottom: 40px;" src="https://bytes.dev/images/bytes-banner-rounded.png" alt="Bytes"></div>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><strong style="font-weight: 600;">Today’s issue:</strong> An npm registry for the space age, shocking revelations from the State of JS, and John Mayer’s hidden JavaScript b-sides.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Welcome to <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/owhkhwuwx0x8poav/aHR0cHM6Ly9ieXRlcy5kZXYvYXJjaGl2ZXMvNDYw" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591707">#460</a>.</p>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="80" src="https://bytes.dev/images/content/eyes.png" alt="Eyeballs logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">The Main Thing</h2>
</div>
<div class="bg-alt" style="background-color: #f5f5f5; border-radius: 16px; margin-bottom: 40px; max-width: 100%; padding: 24px; padding-bottom: 12px;">
<img src="https://bytes.dev/images/content/tower-cheesa.jpg" alt="The leaning tower of cheese-a from Goofy Movie" width="600" style="border-radius: 5px; max-width: 100%;"><p style="font-family: Outfit, sans-serif; font-size: 15px; font-style: italic; line-height: 1; margin: 0; padding-bottom: 4px; padding-left: 24px; padding-right: 24px; padding-top: 10px; text-align: center;">Showing off your team's toolchain that no one's touched since Covid<!-- --> </p>
</div>
<h3 style="font-size: 24px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;">Breaking Babel</h3>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">The JavaScript transpiler of your youth just woke up and released <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/z2hgh7ue5m5dn0hp/aHR0cHM6Ly9iYWJlbGpzLmlvL2Jsb2cvMjAyNi8wMS8zMS83LjI5LjA=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591708">Babel 7.29.0 and Babel 8.0.0 RC</a>.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">For those keeping score at home, this is the <em>29th</em> minor release since Babel 7 launched back in August 2018, a simpler time when nobody had heard of React Hooks and everybody was convinced that Hillary Clinton had the most controversial email server in the country.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">We were so innocent then <span role="img" aria-label="smiling face with tear">🥲</span>.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Predictably, this v7.29 release is all about prepping for the big Babel 8 migration. <code style="font-size: 14px;">@babel/standalone</code> can now define explicit transpilation targets directly in <code style="font-size: 14px;"><script></code> tags via a <code style="font-size: 14px;">data-targets</code> attribute, and it finally supports Babel’s async core API. Small changes, but helpful when upgrading a build tool you haven’t thought about for half a decade.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">As for Babel 8, we can expect:</p>
<ul>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><strong style="font-weight: 600;">An ESM-only future.</strong> Babel 8 drops CommonJS entirely, and goes all in on Node 20’s <code style="font-size: 14px;">require(esm)</code> era.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><strong style="font-weight: 600;">More modern defaults.</strong> <code style="font-size: 14px;">@babel/preset-env</code> stops blindly transpiling everything to ES5 and instead follows Browserslist’s defaults.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><strong style="font-weight: 600;">Fewer surprise breaking changes.</strong> Most of the breaking behavior was already hiding behind flags in Babel 7, so upgrades should be boring.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><strong style="font-weight: 600;">A smaller, cleaner surface area.</strong> Less legacy code and a smaller toolchain that assumes you’re not targeting IE11 anymore.</p>
</li>
</ul>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><strong style="font-weight: 600;">Bottom Line:</strong> I definitely wasn’t <em>planning</em> on writing extensively about jQuery and Babel in the first six weeks of the year, but it feels right to honor the pioneers who helped us get to wherever the hell web dev is now in 2026.</p>
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="border-collapse: collapse; margin-top: 40px; text-align: center;"><tbody><tr><td style="border-collapse: collapse !important; padding-top: 12px; word-break: normal;">
<a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/p8hehqu4rpr7mraq/aHR0cHM6Ly9mYWNlYm9vay5jb20vc2hhcmVyL3NoYXJlci5waHA_dT1odHRwcyUzQSUyRiUyRmJ5dGVzLmRldiUyRmFyY2hpdmVzJTJGNDYw" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1830591709"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/fb-share-icon.png"></a><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/x0hph3uek4k7ooi5/aHR0cHM6Ly93d3cubGlua2VkaW4uY29tL3NoYXJpbmcvc2hhcmUtb2Zmc2l0ZS8_dXJsPWh0dHBzJTNBJTJGJTJGYnl0ZXMuZGV2JTJGYXJjaGl2ZXMlMkY0NjA=" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1830591710"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/li-share-icon.png"></a><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/6qhehoulx3x2zrso/aHR0cHM6Ly90d2l0dGVyLmNvbS9pbnRlbnQvdHdlZXQvP3RleHQ9QmFiZWwlMjBpcyUyMGJhY2slMjB3aXRoJTIwYSUyMG1ham9yJTIwbmV3JTIwcmVsZWFzZSUyMGFuZCUyMHRoZSUyMGVuZCUyMG9mJTIwYW4lMjBlcmEmdXJsPWh0dHBzJTNBJTJGJTJGYnl0ZXMuZGV2JTJGYXJjaGl2ZXMlMkY0NjA=" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1830591711"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/tw-share-icon.png"></a><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/kkhmh2unzoz9rvil/bWFpbHRvOj9ib2R5PVRob3VnaHQlMjB5b3UlMjdkJTIwbG92ZSUyMHRoaXMlMjB3ZWVrJTI3cyUyMEJ5dGVzJTBBLS0tJTBBQmFiZWwlMjBpcyUyMGJhY2slMjB3aXRoJTIwYSUyMG1ham9yJTIwbmV3JTIwcmVsZWFzZSUyMGFuZCUyMHRoZSUyMGVuZCUyMG9mJTIwYW4lMjBlcmElMEFodHRwcyUzQSUyRiUyRmJ5dGVzLmRldiUyRmFyY2hpdmVzJTJGNDYwJnN1YmplY3Q9WW91JTIwbGlrZSUyMGNvcm5icmVhZCUzRg==" rel="noopener" style="color: #12b5e5; font-weight: 600; padding-left: 5px; text-decoration: none;" target="_blank" url-id="1830591712"><img alt="" style="display: inline-block; max-width: 100%; width: 32px;" width="25" src="https://bytes.dev/images/em-share-icon.png"></a>
</td></tr></tbody></table>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="150" src="https://bytes.dev/images/content/qa-wolf-logo.png" alt="QA Wolf logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;"><span>Our Friends <br class="mobile-break">(With Benefits)</span></h2>
</div>
<div class="bg-alt" style="background-color: #f5f5f5; border-radius: 16px; margin-bottom: 40px; max-width: 100%; padding: 24px; padding-bottom: 12px;">
<img src="https://bytes.dev/images/content/dinosaur-storm.jpg" alt="Dinosaurs in a lightning storm" width="600" style="border-radius: 5px; max-width: 100%;"><p style="font-family: Outfit, sans-serif; font-size: 15px; font-style: italic; line-height: 1; margin: 0; padding-bottom: 4px; padding-left: 24px; padding-right: 24px; padding-top: 10px; text-align: center;">Teams still hand-rolling their test suite in 2026<!-- --> </p>
</div>
<h3 style="font-size: 24px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;"><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/58hvh8ug3439q8s6/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS9wbGF0Zm9ybT91dG1fY2FtcGFpZ249QUNRX0FsbF9FdmVudCUyMFJlZ2lzdHJhdGlvbnNfX05ld3NsZXR0ZXJBdWRpZW5jZV8tX05ld3NsZXR0ZXJfQUlXYWl0bGlzdF8yMDI2MDIwNi1Ob25lX0V4cGVyaW1lbnQtRkFMU0UmdXRtX2NvbnRlbnQ9QUlXYWl0bGlzdF9HZXRFYXJseUFjY2Vzc19Ob25lX0hlYWRsaW5lJTNBSW50cm9kdWNpbmdUaGVOZXdBSVBsYXRmb3JtVGhhdDEweFlvdXJRQVRlYW1zQ292ZXJhZ2VfX19fTmV3c2xldHRlci1QcmltYXJ5UGxhY2VtZW50XzIwMjYwMjA2X3YxXyZ1dG1fbWVkaXVtPW5ld3NsZXR0ZXImdXRtX3NvdXJjZT1ieXRlcyZ1dG1fdGVybT1oZWFkbGluZS1JbnRyb2R1Y2luZ1RoZU5ld0FJUGxhdGZvcm1UaGF0MTB4WW91clFBVGVhbUNvdmVyYWdl" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591713">Introducing the new AI platform that can 10x your QA team’s coverage</a></h3>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/25h2h9u3lqlo6pf3/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS8_dXRtX2NhbXBhaWduPUFDUV9BbGxfRXZlbnQlMjBSZWdpc3RyYXRpb25zX19OZXdzbGV0dGVyQXVkaWVuY2VfLV9OZXdzbGV0dGVyX0FJV2FpdGxpc3RfMjAyNjAyMDYtTm9uZV9FeHBlcmltZW50LUZBTFNFJnV0bV9jb250ZW50PUFJV2FpdGxpc3RfR2V0RWFybHlBY2Nlc3NfTm9uZV9IZWFkbGluZSUzQUludHJvZHVjaW5nVGhlTmV3QUlQbGF0Zm9ybVRoYXQxMHhZb3VyUUFUZWFtc0NvdmVyYWdlX19fX05ld3NsZXR0ZXItUHJpbWFyeVBsYWNlbWVudF8yMDI2MDIwNl92MV8mdXRtX21lZGl1bT1uZXdzbGV0dGVyJnV0bV9zb3VyY2U9Ynl0ZXMmdXRtX3Rlcm09Ym9keS1RQVdvbGY=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591714">QA Wolf’s</a> new AI assistant maps and automates even your most complex user flows.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">It turns your prompts into Playwright and Appium code for consistent, repeatable test runs – not flaky, vision-first execution. With advanced flake detection and self-healing, one QA engineer using our AI can manage 600+ E2E tests.</p>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Level up every stage:</p>
<ul>
<li>
<strong style="font-weight: 600;">Planning:</strong> 150+ test cases outlined in 15 minutes.</li>
<li>
<strong style="font-weight: 600;">Automation:</strong> 5x faster than writing in VS Code.</li>
<li>
<strong style="font-weight: 600;">Execution:</strong> Unlimited, 100% parallel runs—12x faster than computer-use agents.</li>
</ul>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;"><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/qvh8h8udele6z9ul/aHR0cHM6Ly93d3cucWF3b2xmLmNvbS9wbGF0Zm9ybT91dG1fY2FtcGFpZ249QUNRX0FsbF9FdmVudCUyMFJlZ2lzdHJhdGlvbnNfX05ld3NsZXR0ZXJBdWRpZW5jZV8tX05ld3NsZXR0ZXJfQUlXYWl0bGlzdF8yMDI2MDIwNi1Ob25lX0V4cGVyaW1lbnQtRkFMU0UmdXRtX2NvbnRlbnQ9QUlXYWl0bGlzdF9HZXRFYXJseUFjY2Vzc19Ob25lX0hlYWRsaW5lJTNBSW50cm9kdWNpbmdUaGVOZXdBSVBsYXRmb3JtVGhhdDEweFlvdXJRQVRlYW1zQ292ZXJhZ2VfX19fTmV3c2xldHRlci1QcmltYXJ5UGxhY2VtZW50XzIwMjYwMjA2X3YxXyZ1dG1fbWVkaXVtPW5ld3NsZXR0ZXImdXRtX3NvdXJjZT1ieXRlcyZ1dG1fdGVybT1jdGEtR2V0RWFybHlBY2Nlc3M=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591715">Get Early Access.</a></p>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="110" src="https://bytes.dev/images/content/spot-the-bug.png" alt="Spot the Bug logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">Spot the Bug</h2>
<div class="section-presenter" style="margin-bottom:50px;margin-top:15px">
<h4 style="font-size: 19px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;">Sponsored by <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/g3hnhwumg0gzrqur/aHR0cHM6Ly93d3cubWV0aWN1bG91cy5haS8_dXRtX2NhbXBhaWduPTI2cTEmdXRtX2NvbnRlbnQ9cHJlc2VudGluZyZ1dG1fbWVkaXVtPW5ld3NsZXR0ZXImdXRtX3NvdXJjZT1ieXRlcw==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591716">Meticulous</a>
</h4>
<p style="font-family: Outfit, sans-serif; font-size: 16px; line-height: 1.5; margin-top: 5px; padding-left: 24px; padding-right: 24px;"><em>Meticulous generates and maintains an exhaustive suite of <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/g3hnhwumg0gzrqur/aHR0cHM6Ly93d3cubWV0aWN1bG91cy5haS8_dXRtX2NhbXBhaWduPTI2cTEmdXRtX2NvbnRlbnQ9cHJlc2VudGluZyZ1dG1fbWVkaXVtPW5ld3NsZXR0ZXImdXRtX3NvdXJjZT1ieXRlcw==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591716">e2e UI tests</a> that covers every edge case of your web app. See why CTOs at Dropbox, Notion and LaunchDarkly rely on them.</em></p>
</div>
</div>
<pre class="language-js" style="background-color: #f9f9f9; border: 1px solid #f9f9f9; border-radius: 8px; color: #231F20; overflow: auto; padding: 24px;"><code class="language-js" style="font-size: 14px;"><span class="token keyword" style="color: #f38ba3; font-size: 14px;">class</span> <span class="token class-name" style="color: #12b5e5; font-size: 14px;">Person</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token function" style="color: #9d7dce; font-size: 14px;">constructor</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token parameter" style="color: #f38ba3; font-size: 14px;">name<span class="token punctuation" style="color: #231F20; font-size: 14px;">,</span> age</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>name <span class="token operator" style="color: #12b5e5; font-size: 14px;">=</span> name<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>age <span class="token operator" style="color: #12b5e5; font-size: 14px;">=</span> age<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">set</span> <span class="token function" style="color: #9d7dce; font-size: 14px;">name</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token parameter" style="color: #f38ba3; font-size: 14px;">value</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>name <span class="token operator" style="color: #12b5e5; font-size: 14px;">=</span> value<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">set</span> <span class="token function" style="color: #9d7dce; font-size: 14px;">age</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token parameter" style="color: #f38ba3; font-size: 14px;">value</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>age <span class="token operator" style="color: #12b5e5; font-size: 14px;">=</span> value<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token function" style="color: #9d7dce; font-size: 14px;">printName</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
console<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span><span class="token function" style="color: #9d7dce; font-size: 14px;">log</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>name<span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token function" style="color: #9d7dce; font-size: 14px;">printAge</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
console<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span><span class="token function" style="color: #9d7dce; font-size: 14px;">log</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>age<span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
</code></pre>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="110" src="https://bytes.dev/images/content/cool-bits.png" alt="Cool Bits logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">Cool Bits</h2>
</div>
<ol>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Ahmad Shadeed wrote a convincing case for <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/9qhzhdud4e420ef9/aHR0cHM6Ly9pc2hhZGVlZC5jb20vYXJ0aWNsZS90b28tZWFybHktYnJlYWtwb2ludC8=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591717">why setting your breakpoint too early is bad responsive design</a>. As someone who consumes the internet solely through my T-Mobile Sidekick from 2006, I wholeheartedly agree.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/3ohphdu3xkxd08ar/aHR0cHM6Ly93d3cuaGFydmV5LmFpL2Jsb2cvcmVidWlsZGluZy1oYXJ2ZXlzLWRlc2lnbi1zeXN0ZW0tZnJvbS10aGUtZ3JvdW5kLXVw" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591718">Rebuilding Harvey’s design system from the ground up</a> is a great deep dive into how Harvey’s team went from a “bag of components” to a real design system, without blowing up their whole platform. Which is rarer than it should be. [sponsored]</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/n2hohquv2l2omdt6/aHR0cHM6Ly8yMDI1LnN0YXRlb2Zqcy5jb20vZW4tVVMv" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591719">State of JS 2025</a> just came out and it turns out everyone’s still using React, complaining about React, and pretending they have other options than React.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Michael Bolin wrote on the OpenAI blog about <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/48hvh7umw7w2lzcx/aHR0cHM6Ly9vcGVuYWkuY29tL2luZGV4L3Vucm9sbGluZy10aGUtY29kZXgtYWdlbnQtbG9vcC8=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591720">unrolling the Codex agent loop</a>.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Allen Pike wrote an article that I’m 90% sure is the name of a John Mayer b-side, <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/wnh2h6uqmlmo75t7/aHR0cHM6Ly9hbGxlbnBpa2UuY29tLzIwMjYvYS1icm9rZW4taGVhcnQv" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591721">A Broken Heart: Or, getting a 100x speedup with one dumb line of code</a>.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Indragie Karunaratne wrote about how <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/08hwhgu2npn7exal/aHR0cHM6Ly9ibG9nLnNlbnRyeS5pby9zZWVyLWRlYnVnLXdpdGgtYWktYXQtZXZlcnktc3RhZ2Utb2YtZGV2ZWxvcG1lbnQvP3V0bV9jYW1wYWlnbj1zZWVyLWZ5MjdxMS1zZWVybGF1bmNoJnV0bV9jb250ZW50PW5ld3NsZXR0ZXItYmxvZy1sYXVuY2gtbGVhcm5tb3JlJnV0bV9tZWRpdW09cGFpZC1jb21tdW5pdHkmdXRtX3NvdXJjZT1ieXRlcw==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591723">Sentry’s Seer now helps you debug during local dev and code review</a>, so you can avoid shipping bugs to production in the first place. [sponsored]</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Lars Ingebrigtsen broke down <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/8ghqh3uow7w5dpak/aHR0cHM6Ly9sYXJzLmluZ2VicmlndHNlbi5uby8yMDI2LzAyLzAyL3doYXRzLXVwLXdpdGgtYWxsLXRob3NlLWVxdWFscy1zaWducy1hbnl3YXkv" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591724">why the Epstein files are full of equals signs</a>. Still waiting for someone to unpack why they’re also full of Harvard faculty members.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Jacob Heric explained how <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/vqh3hmuomqmk0dbg/aHR0cHM6Ly93d3cuaW5uZ2VzdC5jb20vYmxvZy9taWdyYXRpbmctb2ZmLW5leHRqcy10YW5zdGFjay1zdGFydA==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591725">migrating from Next.js to TanStack Start</a> reduced Inngest’s local dev time by 83%. Another feather in Lord Tanner’s cap.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/l2heh6ulqdqk2kf6/aHR0cHM6Ly9zcnYuYnV5c2VsbGFkcy5jb20vYWRzL2xvbmcveC9UQzJDT09TUVRUVFRUVDZCQTc3Q0xUVFRUVFRGRE5ERTI2VFRUVFRUVjRPRk5CVlRUVFRUVDdQMjU3QU5WRVFNQzdLNllNSVBGVDdGS040TEczSElQN1NRWlFTVA==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591726">RSVP for GitLab Transcend</a>, an exclusive virtual event where engineering leaders will share <em>*real stories*</em> of how their teams are using agentic AI for software delivery. [sponsored]</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/m2h7h6u32l2n5oam/aHR0cHM6Ly9naXRodWIuY29tL25wbXgtZGV2L25wbXguZGV2" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591727">npmx.dev</a> is a new browser for the npm registry that wants to be faster, more developer friendly, and hopefully acquired by SpaceX sometime this year.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Remy Porter wrote about the problems caused by <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/dphehmued2d760im/aHR0cHM6Ly90aGVkYWlseXd0Zi5jb20vYXJ0aWNsZXMvYS1wZXJjaXNlLXBhcnNlcg==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591728">a very “percise” parser</a>.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;"><a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/e0hph0u7mdmnv7f8/aHR0cHM6Ly93d3cuc3BlZWNobWF0aWNzLmNvbS9zdGFydHVwLXByb2dyYW0_dXRtX2NhbXBhaWduPXN0YXJ0dXAtcHJvZ3JhbSZ1dG1fY29udGVudD1uZXdzbGV0dGVyJnV0bV9tZWRpdW09cGFpZC1tZWRpYSZ1dG1fc291cmNlPXRlY2hwcmVzc28=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591729">Speechmatics</a> helps startups ship voice products that work in the real world – not just clean demos. Their speech-to-text and text-to-speech APIs are built for accents, background noise, and 55+ languages. Trusted in high-stakes production environments. [sponsored]</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Erik Johannes Husom wrote an interesting article about <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/7qh7h2u9dxd4lwuz/aHR0cHM6Ly9lcmlram9oYW5uZXMubm8vcG9zdHMvMjAyNjAxMzAtb3V0c291cmNpbmctdGhpbmtpbmcvaW5kZXguaHRtbA==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591730">outsourcing thinking</a>. At least it <em>seemed</em> interesting from the one-sentence summary I had Claude generate for me.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">The RepoFlow team <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/owhkhwuwx0x89otv/aHR0cHM6Ly93d3cucmVwb2Zsb3cuaW8vYmxvZy9ub2RlLWpzLTE2LXRvLTI1LWJlbmNobWFya3MtaG93LXBlcmZvcm1hbmNlLWV2b2x2ZWQtb3Zlci10aW1l" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591731">benchmarked Node.js 16 through 25</a> to see what really changed.</p>
</li>
<li>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5;">Martin Alderson wrote about the <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/z2hgh7ue5m5d60sp/aHR0cHM6Ly9tYXJ0aW5hbGRlcnNvbi5jb20vcG9zdHMvdHdvLWtpbmRzLW9mLWFpLXVzZXJzLWFyZS1lbWVyZ2luZy8=" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591732">two kinds of AI users</a> and what they mean for the future of enterprise software. My mom is the “send her son endless Instagram reels of fake toddlers riding on the backs of fake animals to deliver fake life-saving medicine to other fake toddlers who don’t have any fake adults to care for them” kind of AI user 🫠.</p>
</li>
</ol>
<hr style="border: 0; border-bottom: 5px solid; border-color: #f5f5f5; margin-bottom: 100px; margin-top: 100px;">
<div style="text-align:center;margin-bottom:36px">
<img width="110" src="https://bytes.dev/images/content/spot-the-bug.png" alt="Spot the Bug logo" style="max-width: 100%;"><h2 style="font-family: Paytone One, sans-serif; font-size: 28px; margin-top: 10px; text-transform: uppercase;">Spot the Bug: Solution</h2>
<div class="section-presenter" style="margin-bottom:50px;margin-top:15px"><h4 style="font-size: 19px; margin-bottom: 0; padding-left: 24px; padding-right: 24px;">Sponsored by <a href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/g3hnhwumg0gzrqur/aHR0cHM6Ly93d3cubWV0aWN1bG91cy5haS8_dXRtX2NhbXBhaWduPTI2cTEmdXRtX2NvbnRlbnQ9cHJlc2VudGluZyZ1dG1fbWVkaXVtPW5ld3NsZXR0ZXImdXRtX3NvdXJjZT1ieXRlcw==" style="color: #12b5e5; font-weight: 600; text-decoration: underline;" url-id="1830591716">Meticulous</a>
</h4></div>
</div>
<p style="font-family: Outfit, sans-serif; font-size: 17px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">When the class assigns the name and age properties, it calls the setters, which in turn call themselves. This creates an infinite loop and will throw a “Maximum call stack size exceeded” error. To fix this, you should use different names for the properties and the setters.</p>
<pre class="language-js" style="background-color: #f9f9f9; border: 1px solid #f9f9f9; border-radius: 8px; color: #231F20; overflow: auto; padding: 24px;"><code class="language-js" style="font-size: 14px;"><span class="token keyword" style="color: #f38ba3; font-size: 14px;">class</span> <span class="token class-name" style="color: #12b5e5; font-size: 14px;">Person</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token function" style="color: #9d7dce; font-size: 14px;">constructor</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token parameter" style="color: #f38ba3; font-size: 14px;">name<span class="token punctuation" style="color: #231F20; font-size: 14px;">,</span> age</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>_name <span class="token operator" style="color: #12b5e5; font-size: 14px;">=</span> name<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>_age <span class="token operator" style="color: #12b5e5; font-size: 14px;">=</span> age<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">set</span> <span class="token function" style="color: #9d7dce; font-size: 14px;">name</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token parameter" style="color: #f38ba3; font-size: 14px;">value</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>_name <span class="token operator" style="color: #12b5e5; font-size: 14px;">=</span> value<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">set</span> <span class="token function" style="color: #9d7dce; font-size: 14px;">age</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token parameter" style="color: #f38ba3; font-size: 14px;">value</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>_age <span class="token operator" style="color: #12b5e5; font-size: 14px;">=</span> value<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">get</span> <span class="token function" style="color: #9d7dce; font-size: 14px;">name</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">return</span> <span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>_name<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">get</span> <span class="token function" style="color: #9d7dce; font-size: 14px;">age</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
<span class="token keyword" style="color: #f38ba3; font-size: 14px;">return</span> <span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>_age<span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token function" style="color: #9d7dce; font-size: 14px;">printName</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
console<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span><span class="token function" style="color: #9d7dce; font-size: 14px;">log</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>_name<span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token function" style="color: #9d7dce; font-size: 14px;">printAge</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span> <span class="token punctuation" style="color: #231F20; font-size: 14px;">{</span>
console<span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span><span class="token function" style="color: #9d7dce; font-size: 14px;">log</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">(</span><span class="token keyword" style="color: #f38ba3; font-size: 14px;">this</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">.</span>_age<span class="token punctuation" style="color: #231F20; font-size: 14px;">)</span><span class="token punctuation" style="color: #231F20; font-size: 14px;">;</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
<span class="token punctuation" style="color: #231F20; font-size: 14px;">}</span>
</code></pre>
<div style="text-align:center;padding-bottom:80px;padding-top:80px">
<div class="bg-alt" style="background-color: #f5f5f5; border-radius: 16px; margin-bottom: 40px; padding: 24px;"><div style="margin-top:-40px">
<img src="https://bytes.dev/images/bytes-icon.png" alt="Bytes" width="55px" style="max-width: 100%; width: 55px;"><h5 style="font-size:18px;font-weight:400;margin-bottom:24px">Want us to say nice things <br> about your company?</h5>
<div style="margin-bottom:16px"><a style="background-color: #FCBA28; border: 1px solid #231F20; border-radius: 100px; color: #231F20; font-size: 14px; font-weight: 600; padding: 8px 14px; text-decoration: none;" href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/p8hehqu4rpr76rfq/aHR0cHM6Ly9ieXRlcy5kZXYvYWR2ZXJ0aXNl" url-id="1830591733">Sponsor Bytes</a></div>
<div style="margin-bottom:20px"><a style="color: #FCBA28; font-size: 14px; font-weight: 600; text-decoration: underline;" href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/x0hph3uek4k72ob5/aHR0cHM6Ly9ieXRlcy5kZXYvc2hhcmU=" url-id="1830591734">or share it</a></div>
<p style="font-family: Outfit, sans-serif; font-size: 14px; line-height: 1.5; padding-left: 24px; padding-right: 24px;">Built with ❤️ by<!-- --> <a style="color: #ed203d; font-weight: 600; text-decoration: underline;" href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/6qhehoulx3x2rrfo/aHR0cHM6Ly9maXJlc2hpcC5kZXY=" url-id="1830591735">Fireship</a></p>
</div></div>
<p style="font-family: Outfit, sans-serif; font-size: 14px; line-height: 1.5; opacity: 0.5; padding-left: 24px; padding-right: 24px;">50 W Broadway Ste 333 PMB 51647 Salt Lake City, Utah 84101</p>
<div style="font-family:Papyrus, cursive"><a class="unsubscribe-link" href="https://c5e21242.click.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o/kkhmh2unzoz9wvbl/aHR0cHM6Ly9ieXRlcy5kZXYvdW5zdWJzY3JpYmU=" style="color: #9B9890;" url-id="1830591736">Unsubscribe from Bytes</a></div>
</div>
</div></td>
<td style="border-collapse: collapse !important; word-break: normal;"></td>
</tr></tbody></table>
<span style="display: none"><a href="https://c5e21242.unsubscribe.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o">Unsubscribe</a></span>
<!-- -->
<img src="https://c5e21242.open.convertkit-mail.com/v8u5q54200irhvl3r3ebghv00p0lls9hq32o" alt="">
</body>
</html>