add HOLE_DIAMETER constant and make sure hole iteration has some order
fix direct M3 vector name