1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US"> 3 4<head profile="http://gmpg.org/xfn/11"> 5<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 6<meta name="viewport" content="width=device-width, initial-scale=1" /> 7 8<title> bunnie's blog</title> 9 10<link rel="stylesheet" href="https://www.bunniestudios.com/wordpress/wp-content/themes/default/style.css?v=9" type="text/css" media="screen" /> 11<link rel="pingback" href="https://www.bunniestudios.com/wordpress/xmlrpc.php" /> 12 13<style type="text/css" media="screen"> 14 15 #page { background: none; } 16 17</style> 18 19 20 21<meta name='robots' content='max-image-preview:large' /> 22
23<script> 24MathJax = { 25 tex: { 26 inlineMath: [['$','$'],['\\(','\\)']], 27 processEscapes: true 28 }, 29 options: { 30 ignoreHtmlClass: 'tex2jax_ignore|editor-rich-text' 31 } 32}; 33 34</script>
34 35<link rel='dns-prefetch' href='//cdn.jsdelivr.net' /> 36<link rel="alternate" type="application/rss+xml" title="bunnie's blog » Feed" href="https://www.bunniestudios.com/blog/feed/" /> 37<link rel="alternate" type="application/rss+xml" title="bunnie's blog » Comments Feed" href="https://www.bunniestudios.com/blog/comments/feed/" /> 38<style id="wp-img-auto-sizes-contain-inline-css"> 39img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 40/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 41</style> 42<style id="wp-emoji-styles-inline-css"> 43 44 img.wp-smiley, img.emoji { 45 display: inline !important; 46 border: none !important; 47 box-shadow: none !important; 48 height: 1em !important; 49 width: 1em !important; 50 margin: 0 0.07em !important; 51 vertical-align: -0.1em !important; 52 background: none !important; 53 padding: 0 !important; 54 } 55/*# sourceURL=wp-emoji-styles-inline-css */ 56</style> 57<style id="wp-block-library-inline-css"> 58:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;
58--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}} 59 60/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */ 61</style> 62<style id="wp-block-button-inline-css"> 63.wp-block-button__link{align-content:center;box-sizing:border-box;cursor:pointer;display:inline-block;height:100%;text-align:center;word-break:break-word}.wp-block-button__link.aligncenter{text-align:center}.wp-block-button__link.alignright{text-align:right}:where(.wp-block-button__link){border-radius:9999px;box-shadow:none;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}.wp-block-button[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}.wp-block-buttons>.wp-block-button.has-custom-width{max-width:none}.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{width:100%}.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons>.wp-block-button[class*=wp-block-button__width]{width:calc(var(--wp--block-button--width)*1% - var(--wp--style--block-gap, .5em)*(1 - var(--wp--block-button--width)/100))}.wp-block-buttons>.wp-block-button.wp-block-button__width-25{width:calc(25% - var(--wp--style--block-gap, .5em)*.75)}.wp-block-buttons>.wp-block-button.wp-block-button__width-50{width:calc(50% - var(--wp--style--block-gap, .5em)*.5)}.wp-block-buttons>.wp-block-button.wp-block-button__width-75{width:calc(75% - var(--wp--style--block-gap, .5em)*.25)}.wp-block-buttons>.wp-block-button.wp-block-button__width-100{flex-basis:100%;width:100%}.wp-block-buttons.is-vertical>.wp-block-button[class*=wp-block-button__width]{width:calc(var(--wp--block-button--width)*1%)}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-25{width:25%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-50{width:50%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-75{width:75%}.wp-block-button.is-style-squared,.wp-block-button__link.wp-block-button.is-style-squared{border-radius:0}.wp-block-button.no-border-radius,.wp-block-button__link.no-border-radius{border-radius:0!important}:root :where(.wp-block-button .wp-block-button__link.is-style-outline),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link){border:2px solid;padding:.667em 1.333em}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)){color:currentColor}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)){background-color:transparent;background-image:none} 64/*# sourceURL=https://www.bunniestudios.com/wordpress/wp-includes/blocks/button/style.min.css */ 65</style> 66<style id="wp-block-image-inline-css"> 67.wp-block-image>a,.wp-block-image>figure>a{display:inline-block}.wp-block-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom}@media not (prefers-reduced-motion){.wp-block-image img.hide{visibility:hidden}.wp-block-image img.show{animation:show-content-image .4s}}.wp-block-image[style*=border-radius] img,.wp-block-image[style*=border-radius]>a{border-radius:inherit}.wp-block-image.has-custom-border img{box-sizing:border-box}.wp-block-image.aligncenter{text-align:center}.wp-block-image.alignfull>a,.wp-block-image.alignwide>a{width:100%}.wp-block-image.alignfull img,.wp-block-image.alignwide img{height:auto;width:100%}.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright,.wp-block-image.aligncenter,.wp-block-image.alignleft,.wp-block-image.alignright{display:table}.wp-block-image .aligncenter>figcaption,.wp-block-image .alignleft>figcaption,.wp-block-image .alignright>figcaption,.wp-block-image.aligncenter>figcaption,.wp-block-image.alignleft>figcaption,.wp-block-image.alignright>figcaption{caption-side:bottom;display:table-caption}.wp-block-image .alignleft{float:left;margin:.5em 1em .5em 0}.wp-block-image .alignright{float:right;margin:.5em 0 .5em 1em}.wp-block-image .aligncenter{margin-left:auto;margin-right:auto}.wp-block-image :where(figcaption){margin-bottom:1em;margin-top:.5em}.wp-block-image.is-style-circle-mask img{border-radius:9999px}@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){.wp-block-image.is-style-circle-mask img{border-radius:0;-webkit-mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}}:root :where(.wp-block-image.is-style-rounded img,.wp-block-image .is-style-rounded img){border-radius:9999px}.wp-block-image figure{margin:0}.wp-lightbox-container{display:flex;flex-direction:column;position:relative}.wp-lightbox-container img{cursor:zoom-in}.wp-lightbox-container img:hover+button{opacity:1}.wp-lightbox-container button{align-items:center;backdrop-filter:blur(16px) saturate(180%);background-color:rgba(90,90,90,.25);border:none;border-radius:4px;cursor:zoom-in;display:flex;height:20px;justify-content:center;opacity:0;padding:0;position:absolute;right:16px;text-align:center;top:16px;width:20px;z-index:100}@media not (prefers-reduced-motion){.wp-lightbox-container button{transition:opacity .2s ease}}.wp-lightbox-container button:focus-visible{outline:3px auto rgba(90,90,90,.25);outline:3px auto -webkit-focus-ring-color;outline-offset:3px}.wp-lightbox-container button:hover{cursor:pointer;opacity:1}.wp-lightbox-container button:focus{opacity:1}.wp-lightbox-container button:focus,.wp-lightbox-container button:hover,.wp-lightbox-container button:not(:hover):not(:active):not(.has-background){background-color:rgba(90,90,90,.25);border:none}.wp-lightbox-overlay{box-sizing:border-box;
67cursor:zoom-out;height:100vh;left:0;overflow:hidden;position:fixed;top:0;visibility:hidden;width:100%;z-index:100000}.wp-lightbox-overlay .wp-lightbox-close-button{align-items:center;cursor:pointer;display:flex;font-family:inherit;gap:8px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 4px;position:absolute;right:calc(env(safe-area-inset-right) + 16px);top:calc(env(safe-area-inset-top) + 16px);z-index:5000000}.wp-lightbox-overlay .wp-lightbox-close-button:focus,.wp-lightbox-overlay .wp-lightbox-close-button:hover,.wp-lightbox-overlay .wp-lightbox-close-button:not(:hover):not(:active):not(.has-background){background:none;border:none}.wp-lightbox-overlay .wp-lightbox-close-button:has(.wp-lightbox-close-text:not([hidden])) .wp-lightbox-close-icon svg{height:1em;width:1em}.wp-lightbox-overlay .wp-lightbox-close-icon svg{display:block}.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{align-items:center;bottom:16px;cursor:pointer;display:flex;font-family:inherit;gap:4px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 8px;position:absolute;z-index:2000002}.wp-lightbox-overlay .wp-lightbox-navigation-button-next[hidden],.wp-lightbox-overlay .wp-lightbox-navigation-button-prev[hidden]{display:none}@media (min-width:960px){.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{bottom:50%;transform:translateY(-50%)}}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:not(:hover):not(:active):not(.has-background),.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:not(:hover):not(:active):not(.has-background){background:none;border:none;padding:0 8px}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg{display:block;height:1.5em;width:1.5em}.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{left:calc(env(safe-area-inset-left) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-button-next{right:calc(env(safe-area-inset-right) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-icon svg{vertical-align:middle}.wp-lightbox-overlay .lightbox-image-container{height:var(--wp--lightbox-container-height);left:50%;overflow:hidden;position:absolute;top:50%;transform:translate(-50%,-50%);transform-origin:top left;width:var(--wp--lightbox-container-width);z-index:2000001}.wp-lightbox-overlay .wp-block-image{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:center;margin:0;position:relative;transform-origin:0 0;width:100%;z-index:3000000}.wp-lightbox-overlay .wp-block-image img{height:var(--wp--lightbox-image-height);min-height:var(--wp--lightbox-image-height);min-width:var(--wp--lightbox-image-width);width:var(--wp--lightbox-image-width)}.wp-lightbox-overlay .wp-block-image figcaption{display:none}.wp-lightbox-overlay button{background:none;border:none}.wp-lightbox-overlay .scrim{background-color:#fff;height:100%;opacity:.9;position:absolute;width:100%;z-index:2000000}.wp-lightbox-overlay.active{visibility:visible}@media not (prefers-reduced-motion){.wp-lightbox-overlay.active{animation:turn-on-visibility .25s both}.wp-lightbox-overlay.active img{animation:turn-on-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active){animation:turn-off-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active) img{animation:turn-off-visibility .25s both}.wp-lightbox-overlay.zoom.active{animation:none;opacity:1;visibility:visible}.wp-lightbox-overlay.zoom.active .lightbox-image-container{animation:lightbox-zoom-in .4s}.wp-lightbox-overlay.zoom.active .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.active .scrim{animation:turn-on-visibility .4s forwards}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active){animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container{animation:lightbox-zoom-out .4s}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .scrim{animation:turn-off-visibility .4s forwards}}
67@keyframes show-content-image{0%{visibility:hidden}99%{visibility:hidden}to{visibility:visible}}@keyframes turn-on-visibility{0%{opacity:0}to{opacity:1}}@keyframes turn-off-visibility{0%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes lightbox-zoom-in{0%{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale))}to{transform:translate(-50%,-50%) scale(1)}}@keyframes lightbox-zoom-out{0%{transform:translate(-50%,-50%) scale(1);visibility:visible}99%{visibility:visible}to{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale));visibility:hidden}} 68/*# sourceURL=https://www.bunniestudios.com/wordpress/wp-includes/blocks/image/style.min.css */ 69</style> 70<style id="wp-block-paragraph-inline-css"> 71.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg} 72/*# sourceURL=https://www.bunniestudios.com/wordpress/wp-includes/blocks/paragraph/style.min.css */ 73</style> 74<style id="wp-block-buttons-inline-css"> 75.wp-block-buttons{box-sizing:border-box}.wp-block-buttons.is-vertical{flex-direction:column}.wp-block-buttons.is-vertical>.wp-block-button:last-child{margin-bottom:0}.wp-block-buttons>.wp-block-button{display:inline-block;margin:0}.wp-block-buttons.is-content-justification-left{justify-content:flex-start}.wp-block-buttons.is-content-justification-left.is-vertical{align-items:flex-start}.wp-block-buttons.is-content-justification-center{justify-content:center}.wp-block-buttons.is-content-justification-center.is-vertical{align-items:center}.wp-block-buttons.is-content-justification-right{justify-content:flex-end}.wp-block-buttons.is-content-justification-right.is-vertical{align-items:flex-end}.wp-block-buttons.is-content-justification-space-between{justify-content:space-between}.wp-block-buttons.aligncenter{text-align:center}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block-button.aligncenter{margin-left:auto;margin-right:auto;width:100%}.wp-block-buttons[style*=text-decoration] .wp-block-button,.wp-block-buttons[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}.wp-block-buttons.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons .wp-block-button__link{width:100%}.wp-block-button.aligncenter{text-align:center} 76/*# sourceURL=https://www.bunniestudios.com/wordpress/wp-includes/blocks/buttons/style.min.css */ 77</style> 78 79<style id="classic-theme-styles-inline-css"> 80/*! This file is auto-generated */ 81.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} 82/*# sourceURL=/wp-includes/css/classic-themes.min.css */ 83</style> 84 85<style id="global-styles-inline-css"> 86:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
860) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
86.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 87/*# sourceURL=global-styles-inline-css */ 88</style> 89 90<link rel='stylesheet' id='email-subscribers-css' href='https://www.bunniestudios.com/wordpress/wp-content/plugins/email-subscribers/lite/public/css/email-subscribers-public.css?ver=5.5.13' media='all' />
91<script id="jquery-core-js" src="https://www.bunniestudios.com/wordpress/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 91
91
92<script id="jquery-migrate-js" src="https://www.bunniestudios.com/wordpress/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
92 93<link rel="https://api.w.org/" href="https://www.bunniestudios.com/blog/wp-json/" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.bunniestudios.com/wordpress/xmlrpc.php?rsd" /> 94<meta name="generator" content="WordPress 7.1.2" /> 95<style id="wp-custom-css"> 96/** call-to-action button **/ 97.cta { 98 background: #ffeef860; 99 background-image: -webkit-linear-gradient(top, #ffeef860, #fee0f0ff); 100 background-image: -moz-linear-gradient(top, #ffeef860, #fee0f0ff); 101 background-image: -ms-linear-gradient(top, #ffeef860, #fee0f0ff); 102 background-image: -o-linear-gradient(top, #ffeef860, #fee0f0ff); 103 background-image: linear-gradient(to bottom, #ffeef860, #fee0f0ff); 104 -webkit-border-radius: 4; 105 -moz-border-radius: 4; 106 border-radius: 4px; 107 -webkit-box-shadow: 2px 2px 5px #666666; 108 -moz-box-shadow: 2px 2px 5px #666666; 109 box-shadow: 2px 2px 5px #666666; 110 color: #404040; 111 font-size: 12px; 112 padding: 5px 5px 5px 5px; 113 text-decoration: none; 114} 115 .cta:hover { 116 background: #ffeef860; 117 background-image: -webkit-linear-gradient(top, #fee0f0ff, #ffeef860); 118 background-image: -moz-linear-gradient(top, #fee0f0ff, #ffeef860); 119 background-image: -ms-linear-gradient(top, #fee0f0ff, #ffeef860); 120 background-image: -o-linear-gradient(top, #fee0f0ff, #ffeef860); 121 background-image: linear-gradient(to bottom, #fee0f0ff, #ffeef860); 122 text-decoration: none; 123} 124</style> 125</head> 126<body class="home blog wp-theme-default"> 127<!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 64 bytes, lines 127-128
127 128<script async src="https://www.googletagmanager.com/gtag/js?id=
128UA-73296428-1
vendor: 12 bytes, line 128
128"></script>
129<script> 130
vendor: 134 bytes, lines 130-134
130window.dataLayer = window.dataLayer || []; 131 function gtag(){dataLayer.push(arguments);} 132 gtag('js', new Date()); 133 134 gtag('config', '
134UA-73296428-1
vendor: 4 bytes, line 134
134');
135</script>
135 136<div id="page"> 137 138 139<div id="header" role="banner"> 140 <a href="https://www.bunniestudios.com/blog/"><div id="headerimg"></div></a> 141</div> 142<hr /> 143 144 <div id="content" class="narrowcolumn" role="main"> 145 146 147 148 <div class="post-7620 post type-post status-publish format-standard hentry category-name-that-ware" id="post-7620"> 149 <h2><a href="https://www.bunniestudios.com/blog/2026/name-that-ware-september-2026/" rel="bookmark" title="Permanent Link to Name that Ware, September 2026">Name that Ware, September 2026</a></h2> 150 <small>September 30th, 2026 <!-- by bunnie --></small> 151 152 <div class="entry"> 153 154<p class="wp-block-paragraph">The Ware for September 2026 is shown below.</p> 155 156 157 158<figure class="wp-block-image size-large"><a href="https://bunniefoo.com/ntw/ntw_sep_2026_a.jpg"><img decoding="async" src="https://bunniefoo.com/ntw/ntw_sep_2026_a_sm.jpg" alt=""/></a></figure> 159 160 161 162<figure class="wp-block-image size-large"><a href="https://bunniefoo.com/ntw/ntw_sep_2026_b.jpg"><img decoding="async" src="https://bunniefoo.com/ntw/ntw_sep_2026_b_sm.jpg" alt=""/></a></figure> 163 164 165 166<figure class="wp-block-image size-large"><a href="https://bunniefoo.com/ntw/ntw_sep_2026_c.jpg"><img decoding="async" src="https://bunniefoo.com/ntw/ntw_sep_2026_c_sm.jpg" alt=""/></a></figure> 167 168 169 170<figure class="wp-block-image size-large"><a href="https://bunniefoo.com/ntw/ntw_sep_2026_d.jpg"><img decoding="async" src="https://bunniefoo.com/ntw/ntw_sep_2026_d_sm.jpg" alt=""/></a></figure> 171 172 173 174<p class="wp-block-paragraph">We seem to be on a theme of hybrid circuits! This aesthetically pleasing ware was submitted anonymously. Thank you, you know
174who you are!</p> 175 176 177 178<p class="wp-block-paragraph">While I realize that color palettes are not actually a deciding factor in most circuit board designs, I still appreciate it when things work out to have a nice color scheme overall. I like how the bold colors of the main circuit board draw contrast with the pastel earth-tones of the hybrid circuits.</p> 179 </div> 180 181 <p class="postmetadata"> Posted in <a href="https://www.bunniestudios.com/blog/category/hacking/name-that-ware/" rel="category tag">name that ware</a> | <a href="https://www.bunniestudios.com/blog/2026/name-that-ware-september-2026/#comments">8 Comments »</a></p> 182 </div> 183 184 185 <div class="post-7618 post type-post status-publish format-standard hentry category-name-that-ware" id="post-7618"> 186 <h2><a href="https://www.bunniestudios.com/blog/2026/winner-name-that-ware-august-2026/" rel="bookmark" title="Permanent Link to Winner, Name that Ware August 2026">Winner, Name that Ware August 2026</a></h2> 187 <small>September 30th, 2026 <!-- by bunnie --></small> 188 189 <div class="entry"> 190 191<p class="wp-block-paragraph">The Ware for August 2026 is the “IC unit” from a Lafayette 150-in-1 “IC Electronic Project Kit”, part number 99-35107.</p> 192 193 194 195<figure class="wp-block-image size-large"><img decoding="async" src="https://bunniefoo.com/ntw/ntw_aug_26_soln.jpg" alt=""/></figure> 196 197 198 199<p class="wp-block-paragraph">Above is a contextual photo of how the unit looked mounted in the kit.</p> 200 201 202 203<figure class="wp-block-image size-large"><img decoding="async" src="https://bunniefoo.com/ntw/ntw_aug_26_solnb.jpg" alt=""/></figure> 204 205 206 207<p class="wp-block-paragraph">And above are a couple examples of projects you can build with the “IC” as part of the kit.</p> 208 209 210 211<p class="wp-block-paragraph">Answering Hales’ question, the part itself is covered with a clear overcoat of polymer that looks liquidy, but it is in fact a durable, hard coating. As a child, I appreciated how almost every part was out there and easy to see – you can really see the parallel-plate construction and dielectric of the capacitor, and if you look closely enough you can see the contact junction of the diode. It stimulated a sense of wonder and curiosity about how this all worked.</p> 212 213 214 215<p class="wp-block-paragraph">I’ll give the prize to Parkview! The IC module was re-used between a few generations of kits, so the 100-in-1 science kit is close enough for a guess. Congrats, email me for your prize.</p> 216 </div> 217 218 <p class="postmetadata"> Posted in <a href="https://www.bunniestudios.com/blog/category/hacking/name-that-ware/" rel="category tag">name that ware</a> | <a href="https://www.bunniestudios.com/blog/2026/winner-name-that-ware-august-2026/#comments">1 Comment »</a></p> 219 </div> 220 221 222 <div class="post-7612 post type-post status-publish format-standard hentry category-name-that-ware" id="post-7612"> 223 <h2><a href="https://www.bunniestudios.com/blog/2026/name-that-ware-august-2026/" rel="bookmark" title="Permanent Link to Name that Ware, August 2026">Name that Ware, August 2026</a></h2> 224 <small>August 30th, 2026 <!-- by bunnie --></small> 225 226 <div class="entry"> 227 228<p class="wp-block-paragraph">The Ware for August 2026 is shown below.</p> 229 230 231 232<figure class="wp-block-image size-large"><img decoding="async" src="https://bunniefoo.com/ntw/ntw_aug_26.jpg" alt=""/></figure> 233 234 235 236<p class="wp-block-paragraph">Technically, this is an integrated circuit – just from a very different era than last month’s ware!</p> 237 </div> 238 239 <p class="postmetadata"> Posted in <a href="https://www.bunniestudios.com/blog/category/hacking/name-that-ware/" rel="category tag">name that ware</a> | <a href="https://www.bunniestudios.com/blog/2026/name-that-ware-august-2026/#comments">8 Comments »</a></p> 240 </div> 241 242 243 <div class="post-7603 post type-post status-publish format-standard hentry category-baochip category-name-that-ware" id="post-7603"> 244 <h2><a href="https://www.bunniestudios.com/blog/2026/winner-name-that-ware-july-2026/" rel="bookmark" title="Permanent Link to Winner, Name that Ware July 2026">Winner, Name that Ware July 2026</a></h2> 245 <small>August 30th, 2026 <!-- by bunnie --></small> 246 247 <div class="entry"> 248 249<p class="wp-block-paragraph">The structure in question for last month’s ware are a pair of NPN transistors that form the core of a bandgap voltage reference circuit.</p> 250 251 252 253<p class="wp-block-paragraph">As its name implies, a bandgap voltage reference generates a near-constant voltage for use inside chips. The voltage is intended to be fairly constant over process variations, temperature variations, and power supply fluctuations. The circuit itself is <a href="https://bunniefoo.com/ntw/ntw_july_2026_annotated.png" data-type="link" data-id="https://bunniefoo.com/ntw/ntw_july_2026_annotated.png">extremely clever</a>
253, using circuit elements that have offsets that move in opposite directions with temperature to cancel each other out. Without this circuit, chips would have performance characteristics that strongly depend upon its operating temperature. Therefore, almost every system on chip has at least one of these.</p> 254 255 256 257<figure class="wp-block-image size-large"><img decoding="async" src="https://bunniefoo.com/ntw/ntw_july_2026_annotated.png" alt=""/></figure> 258 259 260 261<p class="wp-block-paragraph">If you’re ever looking at a chip micrograph, the circuit will jump out because it’s likely to be the only thing that has two arrays of perfectly square NPN transistors next to each other. I’ve highlighted the active transistors in pink. In this case, the transistor ratio is 1:64. Modern chip designs will always include a ring of extra “dummy” transistors around the active transistors. The reason for the dummies is that they protect the core from process variations. At these insanely small geometries, a well-known problem is that transistors on the edge of an array behave differently from those in the core. This is due to a myriad of problems, but a simple example of the problem for visualization purposes is to imagine the devices going through an etching process: the concentration of the etchant will depend upon the density of the pattern being etched. The devices on the edge of an array will etch at a different rate than those in the center, and thus they will have a slightly different net performance characteristic. As a result, for very sensitive circuits like a bandgap voltage reference, it’s standard practice to “throw away” the edge devices as their characteristics are harder to control.</p> 262 263 264 265<p class="wp-block-paragraph">The orange region above the pair of NPN transistors is a pair of PMOS devices that are current mirrors that drive the NPN transistors. The blue square are a pair of resistors, and the green square is a differential amplifier that forms the active circuit core of the bandgap circuit. These circuits are so commonplace that it’s fairly easy to find a representative schematic just Googling for one:</p> 266 267 268 269<figure class="wp-block-image size-large"><a href="https://www.researchgate.net/figure/Schematic-of-the-proposed-bandgap-circuit_fig2_2978563"><img decoding="async" src="https://bunniefoo.com/ntw/Schematic-of-the-proposed-bandgap-circuit.png" alt=""/></a></figure> 270 271 272 273<p class="wp-block-paragraph">The above was one of the first hits I got googling for “<a href="https://www.researchgate.net/figure/Schematic-of-the-proposed-bandgap-circuit_fig2_2978563" data-type="link" data-id="https://www.researchgate.net/figure/Schematic-of-the-proposed-bandgap-circuit_fig2_2978563">bandgap circuit</a>“. The actual topology of this schematic is not exactly the same, but very similar to the circuit in the layout above.</p> 274 275 276 277<p class="wp-block-paragraph">When looking at a large, unknown die shot, I will often orient myself by first looking for a bandgap circuit, and then looking for an SRAM. Between the two of these, I get a size standard to which I can use to compare analog and digital circuits against, and work my way from there towards other functional elements on a chip.</p> 278 279 280 281<p class="wp-block-paragraph">While nobody guessed this circuit, asdf’s response gave me a chuckle, so I’ll give asdf the prize. Drop me an email to claim your prize!</p> 282 </div> 283 284 <p class="postmetadata"> Posted in <a href="https://www.bunniestudios.com/blog/category/baochip/" rel="category tag">baochip</a>, <a href="https://www.bunniestudios.com/blog/category/hacking/name-that-ware/" rel="category tag">name that ware</a> | <a href="https://www.bunniestudios.com/blog/2026/winner-name-that-ware-july-2026/#respond">No Comments »</a></p> 285 </div> 286 287 288 <div class="post-7589 post type-post status-publish format-standard hentry category-name-that-ware" id="post-7589"> 289 <h2><a href="https://www.bunniestudios.com/blog/2026/name-that-ware-july-2026/" rel="bookmark" title="Permanent Link to Name that Ware, July 2026">Name that Ware, July 2026</a></h2> 290 <small>July 30th, 2026 <!-- by bunnie --></small> 291 292 <div class="entry"> 293 294<p class="wp-block-paragraph">The Ware for July 2026 is shown below.</p> 295 296 297 298<figure class="wp-block-image size-large"><img decoding="async" src="https://bunniefoo.com/ntw/ntw_july_2026.jpg" alt=""/></figure> 299 300 301 302<p class="wp-block-paragraph">I’
302ve got silicon on the brain, so I’m going to give a die shot another go at name that ware. Hopefully this one is a bit easier than the last one. This excerpt is a design pattern I look for and find on almost every SoC. It’s technically showing a bit more than just the part I’m focused on, so as a hint I’m primarily interested in identifying the structure towards the lower left corner of this image.</p> 303 304 305 306<p class="wp-block-paragraph">If you’ve seen one of these before, you’ll know what it is – it’s pretty unmistakable, and a design pattern that’s highly conserved across processes, nodes and foundries. Bonus points to anyone that can explain some of the reasons why things are organized the way they are!</p> 307 308 309 310<p class="wp-block-paragraph"></p> 311 </div> 312 313 <p class="postmetadata"> Posted in <a href="https://www.bunniestudios.com/blog/category/hacking/name-that-ware/" rel="category tag">name that ware</a> | <a href="https://www.bunniestudios.com/blog/2026/name-that-ware-july-2026/#comments">8 Comments »</a></p> 314 </div> 315 316 317 <div class="navigation"> 318 <div class="alignleft"><a href="https://www.bunniestudios.com/blog/page/2/" >« Older Entries</a></div> 319 <div class="alignright"></div> 320 </div> 321 322 323 </div> 324 325 <div id="sidebar" role="complementary"> 326 <ul> 327 <li id="email-subscribers-form-1" class="widget widget_email-subscribers-form"><div class="emaillist" id="es_form_f1-n1"><form action="/#es_form_f1-n1" method="post" class="es_subscription_form es_shortcode_form es_ajax_subscription_form" id="es_subscription_form_6abe20e12b9a2" data-source="ig-es" data-form-id="1"><div class="es-field-wrap"><label>Name*<br /><input type="text" name="esfpx_name" class="ig_es_form_field_name" placeholder="" value="" required="required" /></label></div><div class="es-field-wrap"><label>Email*<br /><input class="es_required_field es_txt_email ig_es_form_field_email" type="email" name="esfpx_email" value="" placeholder="" required="required" /></label></div><input type="hidden" name="esfpx_lists[]" value="d80f73a28285" /><input type="hidden" name="esfpx_form_id" value="1" /><input type="hidden" name="es" value="subscribe" /> 328 <input type="hidden" name="esfpx_es_form_identifier" value="f1-n1" /> 329 <input type="hidden" name="esfpx_es_email_page" value="7589" /> 330 <input type="hidden" name="esfpx_es_email_page_url" value="https://www.bunniestudios.com/blog/2026/name-that-ware-july-2026/" /> 331 <input type="hidden" name="esfpx_status" value="Unconfirmed" /> 332 <input type="hidden" name="esfpx_es-subscribe" id="es-subscribe-6abe20e12b9a2" value="2d047f44f7" /> 333 <label style="position:absolute;top:-99999px;left:-99999px;z-index:-99;"><input type="email" name="esfpx_es_hp_email" class="es_required_field" tabindex="-1" autocomplete="-1" value="" /></label><input type="submit" name="submit" class="es_subscription_form_submit es_submit_button es_textbox_button" id="es_subscription_form_submit_6abe20e12b9a2" value="Subscribe" /><span class="es_spinner_image" id="spinner-image"><img src="https://www.bunniestudios.com/wordpress/wp-content/plugins/email-subscribers/lite/public/images/spinner.gif" alt="Loading" /></span></form><span class="es_subscription_message " id="es_subscription_message_6abe20e12b9a2"></span></div></li><li id="block-2" class="widget widget_block"> 334<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex"> 335<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://github.com/sponsors/bunnie">Sponsor bunnie on Github</a></div> 336</div> 337</li><li id="categories-4" class="widget widget_categories"><h2 class="widgettitle">Categories</h2> 338 <ul> 339 <li class="cat-item cat-item-4"><a href="https://www.bunniestudios.com/blog/category/administrative/">Administrative</a> 340</li> 341 <li class="cat-item cat-item-74"><a href="https://www.bunniestudios.com/blog/category/baochip/">baochip</a> 342</li> 343 <li class="cat-item cat-item-70"><a href="https://www.bunniestudios.com/blog/category/betrusted/">betrusted</a> 344</li> 345 <li class="cat-item cat-item-16"><a href="https://www.bunniestudios.com/blog/category/ponderings/biology/">Biology</a> 346</li> 347 <li class="cat-item cat-item-38">
347<a href="https://www.bunniestudios.com/blog/category/chibitronics/">chibitronics</a> 348</li> 349 <li class="cat-item cat-item-6"><a href="https://www.bunniestudios.com/blog/category/chumby/">chumby</a> 350</li> 351 <li class="cat-item cat-item-69"><a href="https://www.bunniestudios.com/blog/category/covid-19/">covid-19</a> 352</li> 353 <li class="cat-item cat-item-66"><a href="https://www.bunniestudios.com/blog/category/ponderings/feminism/">Feminism</a> 354</li> 355 <li class="cat-item cat-item-20"><a href="https://www.bunniestudios.com/blog/category/gongkai/">gongkai</a> 356</li> 357 <li class="cat-item cat-item-2"><a href="https://www.bunniestudios.com/blog/category/hacking/">Hacking</a> 358</li> 359 <li class="cat-item cat-item-73"><a href="https://www.bunniestudios.com/blog/category/iris/">IRIS</a> 360</li> 361 <li class="cat-item cat-item-7"><a href="https://www.bunniestudios.com/blog/category/chumby/made-in-china/">Made in China</a> 362</li> 363 <li class="cat-item cat-item-18"><a href="https://www.bunniestudios.com/blog/category/hacking/made-in-italy/">Made in Italy</a> 364</li> 365 <li class="cat-item cat-item-54"><a href="https://www.bunniestudios.com/blog/category/hacking/name-that-ware/">name that ware</a> 366</li> 367 <li class="cat-item cat-item-17"><a href="https://www.bunniestudios.com/blog/category/hacking/netv/">NeTV</a> 368</li> 369 <li class="cat-item cat-item-28"><a href="https://www.bunniestudios.com/blog/category/novena/">novena</a> 370</li> 371 <li class="cat-item cat-item-67"><a href="https://www.bunniestudios.com/blog/category/hacking/open-source/">open source</a> 372</li> 373 <li class="cat-item cat-item-5"><a href="https://www.bunniestudios.com/blog/category/ponderings/">Ponderings</a> 374</li> 375 <li class="cat-item cat-item-71"><a href="https://www.bunniestudios.com/blog/category/betrusted/precursor/">precursor</a> 376</li> 377 <li class="cat-item cat-item-3"><a href="https://www.bunniestudios.com/blog/category/social/">Social</a> 378</li> 379 <li class="cat-item cat-item-19"><a href="https://www.bunniestudios.com/blog/category/the-factory-floor/">The Factory Floor</a> 380</li> 381 <li class="cat-item cat-item-1"><a href="https://www.bunniestudios.com/blog/category/uncategorized/">Uncategorized</a> 382</li> 383 </ul> 384 385 </li><li id="pages-3" class="widget widget_pages"><h2 class="widgettitle">Pages</h2> 386 <ul> 387 <li class="page_item page-item-2266"><a href="https://www.bunniestudios.com/blog/2012-name-that-ware-calendar/">2012 Name That Ware Calendar</a></li> 388<li class="page_item page-item-133"><a href="https://www.bunniestudios.com/blog/contact-bunnie/">Contact bunnie</a></li> 389<li class="page_item page-item-2362"><a href="https://www.bunniestudios.com/blog/crosslicense-1-0-xl-1-0/">Crosslicense 1.0 (XL-1.0)</a></li> 390<li class="page_item page-item-1932"><a href="https://www.bunniestudios.com/blog/on-influenza-a-h1n1/">On Influenza A (H1N1)</a></li> 391<li class="page_item page-item-1022 page_item_has_children"><a href="https://www.bunniestudios.com/blog/on-microsd-problems/">On MicroSD Problems</a> 392<ul class='children'> 393 <li class="page_item page-item-3592"><a href="https://www.bunniestudios.com/blog/on-microsd-problems/on-hacking-microsd-cards/">On Hacking MicroSD Cards</a></li> 394</ul> 395</li> 396<li class="page_item page-item-3107"><a href="https://www.bunniestudios.com/blog/the-12-gongkai-phone/">The $12 “Gongkai” Phone</a></li> 397<li class="page_item page-item-2812 page_item_has_children"><a href="https://www.bunniestudios.com/blog/the-factory-floor-part-1-of-4the-quotation-or-how-to-make-a-bom/">The Factory Floor, Part 1 of 4:<br>The Quotation (or, How to Make a BOM)</a> 398<ul class='children'> 399 <li class="page_item page-item-2831"><a href="https://www.bunniestudios.com/blog/the-factory-floor-part-1-of-4the-quotation-or-how-to-make-a-bom/the-factory-floor-part-2-of-4on-design-for-manufacturing/">The Factory Floor, Part 2 of 4:<br>On Design for Manufacturing</a></li> 400 <li class="page_item page-item-2850"><a href="https://www.bunniestudios.com/blog/the-factory-floor-part-1-of-4the-quotation-or-how-to-make-a-bom/the-factory-floor-part-3-of-4-industrial-design-for-upstarts/">The Factory Floor, Part 3 of 4:<br> Industrial Design for Startups</a></li> 401 <li class="page_item page-item-2911"><a href="https://www.bunniestudios.com/blog/the-factory-floor-part-1-of-4the-quotation-or-how-to-make-a-bom/the-factory-floor-part-4-of-4picking-and-maintaining-a-partner/">The Factory Floor, Part 4 of 4:<br>Picking (and Maintaining) a Partner</a></li> 402</ul> 403</li> 404<li class="page_item page-item-1927"><a href="https://www.bunniestudios.com/blog/why-the-best-days-of-open-hardware-are-yet-to-come/">Why the Best Days of Open Hardware are Yet to Come</a></li> 405<li class="page_item page-item-236"><a href="https://www.bunniestudios.com/blog/add-a-vga-lcd-to-a-chumby/">Add a VGA LCD to a Chumby</a></li> 406<li class="page_item page-item-27"><a href="https://www.bunniestudios.com/blog/dvorak-on-the-tandy-102/">Dvorak on the Tandy 102</a></li> 407<li class="page_item page-item-21 page_item_has_children"><a href="https://www.bunniestudios.com/blog/hackdac/">HackDAC</a> 408<ul class='children'> 409 <li class="page_item page-item-24"><a href="https://www.bunniestudios.com/blog/hackdac/hackdac-implementation/">HackDAC Implementation</a></li> 410 <li class="page_item page-item-22"><a href="https://www.bunniestudios.com/blog/hackdac/hackdac-theory/">HackDAC Theory</a></li> 411</ul> 412</li> 413<li class="page_item page-item-40"><a href="https://www.bunniestudios.com/blog/hacking-the-pic-18f1320/">Hacking the PIC 18F1320</a></li> 414<li class="page_item page-item-51"><a href="https://www.bunniestudios.com/blog/modifying-s400-scanner
414-for-watermark-enhancement/">Modifying the S400 Scanner for Watermark Enhancement</a></li> 415<li class="page_item page-item-36"><a href="https://www.bunniestudios.com/blog/pictures-of-logic-gates-in-silicon/">Pictures of Logic Gates in Silicon</a></li> 416<li class="page_item page-item-3"><a href="https://www.bunniestudios.com/blog/some-hacks-ive-done/">Some hacks I’ve done</a></li> 417<li class="page_item page-item-15"><a href="https://www.bunniestudios.com/blog/diodes-solitons-and-taoism/">Diodes, Solitons, and Taoism</a></li> 418<li class="page_item page-item-11"><a href="https://www.bunniestudios.com/blog/name-that-ware-contest-rules/">Name that Ware Contest Rules</a></li> 419 </ul> 420 421 </li><li id="linkcat-9" class="widget widget_links"><h2 class="widgettitle">Stuff</h2> 422 <ul class='xoxo blogroll'> 423<li><a href="https://www.cafepress.com/bunniestudios" title="bunnie studios logo merchandise (for fun, I make no profit)">bunniestudios logo merch</a></li> 424<li><a href="https://bunniefoo.com/bunnie/factpub.pdf" title="White paper on Factpub fact-extraction copyright paywall bypass">Factpub Whitepaper</a></li> 425<li><a href="https://bunniestudios.com/bunnie/" rel="me" title="My old home page">Old home page</a></li> 426<li><a href="https://bunniestudios.com/bunnie/phdthesis.pdf" title="My PhD thesis">PhD thesis</a></li> 427 428 </ul> 429</li> 430<li id="search-3" class="widget widget_search"><form role="search" method="get" id="searchform" class="searchform" action="https://www.bunniestudios.com/blog/"> 431 <div> 432 <label class="screen-reader-text" for="s">Search for:</label> 433 <input type="text" value="" name="s" id="s" /> 434 <input type="submit" id="searchsubmit" value="Search" /> 435 </div> 436 </form></li><li id="meta-3" class="widget widget_meta"><h2 class="widgettitle">Meta</h2> 437 <ul> 438 <li><a href="https://www.bunniestudios.com/wordpress/wp-login.php">Log in</a></li> 439 <li><a href="https://www.bunniestudios.com/blog/feed/">Entries feed</a></li> 440 <li><a href="https://www.bunniestudios.com/blog/comments/feed/">Comments feed</a></li> 441 442 <li><a href="https://wordpress.org/">WordPress.org</a></li> 443 </ul> 444 445 </li> </ul> 446 </div> 447 448 449 450<hr /> 451<div id="footer" role="contentinfo"> 452<!-- If you'd like to support WordPress, having the "powered by" link somewhere on your blog is the best way; it's our only promotion or advertising. --> 453 <p> 454 bunnie's blog is proudly powered by <a href="http://wordpress.org/">WordPress</a> <br /><a href="https://www.bunniestudios.com/blog/feed/">Entries (RSS)</a> and <a href="https://www.bunniestudios.com/blog/comments/feed/">Comments (RSS)</a>. <!-- 44 queries. 0.703 seconds. --> 455 </p> 456</div> 457</div> 458 459<!-- Gorgeous design by Michael Heilemann - http://binarybonsai.com/kubrick/ --> 460 461
461<script type="speculationrules"> 462{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/blog/*"},{"not":{"href_matches":["/wordpress/wp-*.php","/wordpress/wp-admin/*","/wordpress/wp-content/uploads/*","/wordpress/wp-content/*","/wordpress/wp-content/plugins/*","/wordpress/wp-content/themes/default/*","/blog/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 463</script>
vendor: 1 bytes, line 463
463
464<script id="email-subscribers-js-extra"> 465var es_data = {"messages":{"es_empty_email_notice":"Please enter email address","es_rate_limit_notice":"You need to wait for some time before subscribing again","es_single_optin_success_message":"Successfully Subscribed.","es_email_exists_notice":"Email Address already exists!","es_unexpected_error_notice":"Oops.. Unexpected error occurred.","es_invalid_email_notice":"Invalid email address","es_try_later_notice":"Please try after some time"},"es_ajax_url":"https://www.bunniestudios.com/wordpress/wp-admin/admin-ajax.php"}; 466//# sourceURL=email-subscribers-js-extra 467</script>
vendor: 1 bytes, line 467
467
468<script id="email-subscribers-js" src="https://www.bunniestudios.com/wordpress/wp-content/plugins/email-subscribers/lite/public/js/email-subscribers-public.js?ver=5.5.13"></script>
vendor: 1 bytes, line 468
468
469<script id="mathjax-js" src="//cdn.jsdelivr.net/npm/mathjax@4/tex-chtml.js?ver=7.1.2"></script>
vendor: 1 bytes, line 469
469
470<script id="wp-emoji-settings" type="application/json"> 471{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://www.bunniestudios.com/wordpress/wp-includes/js/wp-emoji-release.min.js?ver=7.1.2"}} 472</script>
vendor: 1 bytes, line 472
472
473<script type="module"> 474/*! This file is auto-generated */ 475var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 476//# sourceURL=https://www.bunniestudios.com/wordpress/wp-includes/js/wp-emoji-loader.min.js 477</script>
477 478</body> 479</html> 480 481<!-- Dynamic page generated in 0.703 seconds. --> 482<!-- Cached page generated by WP-Super-Cache on 2026-10-01 16:59:13 --> 483 484<!-- super cache -->
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.