triangles refactored

Thank you Github app
`step_1` and `step_2` are AWESOME OPPORTUNITIES to create a meaningful name that adds to the self-documenting nature of your code and the ability to easily digest behavior from afar.

Take advantage of this.

`step_1` is a long line with a lot going on. If you think it is too much then you have yet another opportunity to create a named parameter :-)