Thank you masterxeon1001 !
https://www.youtube.com/user/masterxeon1001/videos
Buy masterxeon1001 a beer!
https://gumroad.com/masterxeon1001
(click on the Donate Box, enter an amount and pay using Paypal)
Blender 2.8.x / 2.9.x
Get it here: https://builder.blender.org/download
HardOps
BoxCutter
Get it here: https://blendermarket.com or https://gumroad.com
Start with a cube. Scale to a vertical thin panel. Decorate.
Dice. Twist360 Z 3.
Smart apply and remove 2 of 3 panels.
Add angled cylinder and knife project an offset edge loop onto mesh. Custom transform orientation helps.
Union join cylinder. Apply bool. Edgeloop walking cleanup.
Radial array Z 3
Vertical plane inside + screw 360.
Custom bevel profile.
SHIFT Smart apply an object + delete everything except some verts + curve extract + convert to mesh + radial array Z 3
Select all and add a Lattice + Z 3 + scale middle + Lattice + Z 6
Lattice on top of modifier stack before any radial array, bevel, mirror.
Remove bottom half of object and mirror Z.
Move lattice up/down Z to adjust bulge.