=== SAVED CAST: harvest_4_s71 ===
Normalized points: 63
Raw points: N/A

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.7590, 1.0000)
  [ 1]  (0.7414, 0.9081)
  [ 2]  (0.7239, 0.8162)
  [ 3]  (0.7116, 0.7236)
  [ 4]  (0.7034, 0.6304)
  [ 5]  (0.6951, 0.5372)
  [ 6]  (0.6868, 0.4440)
  [ 7]  (0.6860, 0.3505)
  [ 8]  (0.6860, 0.2570)
  [ 9]  (0.7590, 0.2415)
  [10]  (0.6786, 0.2481)
  [11]  (0.5982, 0.2546)
  [12]  (0.5178, 0.2612)
  [13]  (0.4375, 0.2689)
  [14]  (0.3572, 0.2767)
  [15]  (0.2769, 0.2844)
  [16]  (0.1966, 0.2921)
  [17]  (0.1161, 0.2966)
  [18]  (0.7590, 0.0000)
  [19]  (0.6966, 0.0048)
  [20]  (0.6341, 0.0098)
  [21]  (0.5718, 0.0161)
  [22]  (0.5095, 0.0224)
  [23]  (0.4472, 0.0287)
  [24]  (0.3849, 0.0350)
  [25]  (0.3231, 0.0452)
  [26]  (0.2645, 0.0646)
  [27]  (0.7590, 0.1831)
  [28]  (0.8308, 0.2385)
  [29]  (0.8775, 0.3074)
  [30]  (0.8839, 0.3976)
  [31]  (0.8013, 0.4345)
  [32]  (0.7237, 0.3877)
  [33]  (0.6895, 0.3260)
  [34]  (0.7257, 0.2452)
  [35]  (0.8047, 0.2415)
  [36]  (0.7590, 0.2352)
  [37]  (0.8144, 0.2878)
  [38]  (0.8426, 0.3474)
  [39]  (0.8119, 0.4090)
  [40]  (0.7357, 0.4039)
  [41]  (0.7043, 0.3406)
  [42]  (0.7290, 0.2745)
  [43]  (0.7986, 0.2830)
  [44]  (0.8537, 0.3347)
  [45]  (0.7590, 0.7156)
  [46]  (0.8225, 0.7717)
  [47]  (0.8292, 0.8534)
  [48]  (0.7860, 0.9107)
  [49]  (0.7103, 0.9036)
  [50]  (0.6355, 0.8638)
  [51]  (0.6657, 0.7865)
  [52]  (0.7361, 0.7526)
  [53]  (0.7498, 0.7912)
  [54]  (0.7590, 0.7705)
  [55]  (0.8253, 0.8120)
  [56]  (0.8651, 0.8634)
  [57]  (0.8418, 0.9381)
  [58]  (0.7714, 0.9485)
  [59]  (0.7043, 0.9322)
  [60]  (0.6860, 0.8618)
  [61]  (0.7529, 0.8213)
  [62]  (0.8292, 0.8230)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.6860, 0.2570)  angle=78.0 deg
  V1  (0.7590, 0.2415)  angle=172.7 deg
  V2  (0.1161, 0.2966)  angle=158.4 deg
  V3  (0.7590, 0.0000)  angle=159.6 deg
  V4  (0.2645, 0.0646)  angle=148.2 deg
  V5  (0.8775, 0.3074)  angle=30.1 deg
  V6  (0.8839, 0.3976)  angle=70.0 deg
  V7  (0.8013, 0.4345)  angle=55.1 deg
  V8  (0.6895, 0.3260)  angle=53.1 deg
  V9  (0.7257, 0.2452)  angle=63.2 deg
  V10  (0.8047, 0.2415)  angle=169.5 deg
  V11  (0.7590, 0.2352)  angle=144.3 deg
  V12  (0.8426, 0.3474)  angle=51.8 deg
  V13  (0.8119, 0.4090)  angle=67.3 deg
  V14  (0.7357, 0.4039)  angle=59.7 deg
  V15  (0.7043, 0.3406)  angle=46.9 deg
  V16  (0.7290, 0.2745)  angle=76.4 deg
  V17  (0.7986, 0.2830)  angle=36.2 deg
  V18  (0.8537, 0.3347)  angle=60.8 deg
  V19  (0.7590, 0.7156)  angle=62.4 deg
  V20  (0.8225, 0.7717)  angle=43.8 deg
  V21  (0.8292, 0.8534)  angle=41.7 deg
  V22  (0.7860, 0.9107)  angle=58.3 deg
  V23  (0.6355, 0.8638)  angle=83.4 deg
  V24  (0.6657, 0.7865)  angle=42.9 deg
  V25  (0.7361, 0.7526)  angle=96.2 deg
  V26  (0.7498, 0.7912)  angle=136.5 deg
  V27  (0.7590, 0.7705)  angle=98.1 deg
  V28  (0.8651, 0.8634)  angle=55.2 deg
  V29  (0.8418, 0.9381)  angle=64.2 deg
  V30  (0.7043, 0.9322)  angle=61.7 deg
  V31  (0.6860, 0.8618)  angle=73.4 deg
  V32  (0.7529, 0.8213)  angle=32.6 deg

--- SUGGESTED DOT TEMPLATE FORMAT ---
// Paste into SpellGestureTracker.java getDotTemplates():
new DotTemplate(DetectedPattern.SPELL_NAME, "description",
    new double[][] {
        // pick key dots from vertices above
    },
    new int[][] {
        // define connections between dots
    }
),
