Now that looks good,
And support the relevant Gcode like G76 (linuxcnc) or what ever flavour is used.