Chopped up and made the middle length variable because why not. Someday, I hope to find a length that irritates small children while being silent to my old ears.
Edit the OpenSCAD file, or print one of the generated ones.
The author remixed this model.
Split model, imported into OpenSCAD to make mid-length adjustable