text: export default function (part) {
    let {
      paperless,
      sa,
      store,
      complete,
      points,
      options,
      macro,
      Point,
      paths,
      Path,
    } = part.shorthand()
  
    points.topLeft = points.bottomLeft.shiftFractionTowards(points.topLeft, 0.75)
    points.topRight = new Point(points.bottomRight.x, points.topLeft.y)
    if (options.pocketRadius > 0) {
      macro('round', {
        from: points.topLeft,
        to: points.bottomRight,
        via: points.bottomLeft,
        radius: store.get('pocketRadius'),
        prefix: 'roundLeft',
      })
      macro('round', {
        from: points.bottomLeft,
        to: points.topRight,
        via: points.bottomRight,
        radius: store.get('pocketRadius'),
        prefix: 'roundRight',
      })
  
      paths.seam = new Path()
        .move(points.topLeft)
        .line(points.roundLeftStart)
        .curve(points.roundLeftCp1, points.roundLeftCp2, points.roundLeftEnd)
        .line(points.roundRightStart)
        .curve(points.roundRightCp1, points.roundRightCp2, points.roundRightEnd)
    } else {
      paths.seam = new Path().move(points.topLeft).line(points.bottomLeft).line(points.bottomRight)
    }
  
    paths.seam = paths.seam.line(points.topRight).line(points.topLeft).close().attr('class', 'lining')
  
    delete paths.fold
  
    if (complete) {
      points.title = points.topLeft.shiftFractionTowards(points.bottomRight, 0.5)
      macro('title', {
        at: points.title,
        nr: 16,
        title: 'pocketLining',
      })
  
      macro('grainline', {
        from: points.bottomLeft.shift(0, 10 + (store.get('pocketRadius') || 0)),
        to: points.topLeft.shift(0, 10 + (store.get('pocketRadius') || 0)),
      })
  
      if (sa) paths.sa = paths.seam.offset(sa).attr('class', 'lining sa')
  
      if (paperless) {
        macro('vd', {
          from: points.bottomRight,
          to: points.topRight,
          x: points.topRight.x + sa + 15,
        })
        macro('hd', {
          from: points.topLeft,
          to: points.topRight,
          y: points.topRight.y - sa - 15,
        })
        if (options.pocketRadius > 0) {
          macro('hd', {
            from: points.roundRightStart,
            to: points.roundRightEnd,
            y: points.bottomRight.y + sa + 15,
          })
        }
      }
    }
  
    return part
  }
  