function removeContourFeet(contour, leftFeet, rightFeet) {
  return contour.map((pt, i) => {
    if (leftFeet.indexOf(i) >= 0) {
      const pt3 = contour[mod(i+2, contour.length)];
      return { x: pt.x, y: pt3.y, on: pt.on };
    } else if (rightFeet.indexOf(i) >= 0) {
      const pt3 = contour[mod(i-2, contour.length)];
      return { x: pt.x, y: pt3.y, on: pt.on };
    }
    return pt;
  }).filter((pt, i) => {
    if (leftFeet.indexOf(mod(i-1, contour.length)) >= 0) return false;
    if (leftFeet.indexOf(mod(i-2, contour.length)) >= 0) return false;
    if (rightFeet.indexOf(mod(i+1, contour.length)) >= 0) return false;
    if (rightFeet.indexOf(mod(i+2, contour.length)) >= 0) return false;
    return true;
  });
}
Remove feet of a single contour
@param { Contour } contour 
@param { number[] } leftFeet 
@param { number[] } rightFeet 
@returns { Contour }