{"commands":[
 {"command":"parameters.add","params":{"name":"od","expression":"80 mm","comment":"outer diameter"}},
 {"command":"parameters.add","params":{"name":"bore","expression":"30 mm","comment":"centre bore diameter, < pcd - hole_d"}},
 {"command":"parameters.add","params":{"name":"t","expression":"6 mm","comment":"flange thickness"}},
 {"command":"parameters.add","params":{"name":"pcd","expression":"60 mm","comment":"bolt pitch circle diameter"}},
 {"command":"parameters.add","params":{"name":"hole_d","expression":"8 mm","comment":"bolt hole diameter (thru)"}},
 {"command":"parameters.add","params":{"name":"n","expression":"4","unit":"","comment":"bolt hole count, whole number 1 or more"}},
 {"command":"sketch.create","params":{"plane":"XY","name":"FlangeSketch"}},
 {"command":"sketch.circle.center","params":{"center":[0,0],"diameter":80}},
 {"command":"sketch.circle.center","params":{"center":[0,0],"diameter":30}},
 {"command":"sketch.dimension","params":{"entities":["c1"],"type":"diameter","value":"od"}},
 {"command":"sketch.dimension","params":{"entities":["c2"],"type":"diameter","value":"bore"}},
 {"command":"sketch.finish","params":{}},
 {"command":"solid.extrude","params":{"distance":"t","profiles":[{"point":[27.5,0]}],"name":"Flange","body_name":"Flange"}},
 {"command":"solid.cylinder","params":{"diameter":"hole_d","height":"t + 2","base":["pcd/2*cos(45 deg)","pcd/2*sin(45 deg)",-1],"operation":"cut","name":"BoltHole"}},
 {"command":"solid.pattern.circular","params":{"features":["BoltHole"],"axis":"Z","count":"n","name":"BoltHoles"}}
]}
