https://object-e.net/projects/poly-mono/attachment/diagram1-2