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

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.7084, 1.0000)
  [ 1]  (0.7062, 0.9130)
  [ 2]  (0.7039, 0.8259)
  [ 3]  (0.7024, 0.7389)
  [ 4]  (0.7011, 0.6519)
  [ 5]  (0.6997, 0.5648)
  [ 6]  (0.7033, 0.4780)
  [ 7]  (0.7118, 0.3913)
  [ 8]  (0.7203, 0.3047)
  [ 9]  (0.7084, 0.2515)
  [10]  (0.6438, 0.2543)
  [11]  (0.5790, 0.2549)
  [12]  (0.5142, 0.2555)
  [13]  (0.4494, 0.2563)
  [14]  (0.3846, 0.2572)
  [15]  (0.3198, 0.2581)
  [16]  (0.2550, 0.2590)
  [17]  (0.1915, 0.2485)
  [18]  (0.7084, 0.0179)
  [19]  (0.6604, 0.0124)
  [20]  (0.6124, 0.0070)
  [21]  (0.5642, 0.0044)
  [22]  (0.5160, 0.0027)
  [23]  (0.4677, 0.0010)
  [24]  (0.4194, 0.0000)
  [25]  (0.3711, 0.0019)
  [26]  (0.3229, 0.0039)
  [27]  (0.7084, 0.1676)
  [28]  (0.7667, 0.2117)
  [29]  (0.7961, 0.2712)
  [30]  (0.7748, 0.3247)
  [31]  (0.7037, 0.3373)
  [32]  (0.6436, 0.2958)
  [33]  (0.6758, 0.2356)
  [34]  (0.7315, 0.1931)
  [35]  (0.7084, 0.2131)
  [36]  (0.7084, 0.1485)
  [37]  (0.7661, 0.1696)
  [38]  (0.7917, 0.2161)
  [39]  (0.7979, 0.2762)
  [40]  (0.7387, 0.2930)
  [41]  (0.6959, 0.2616)
  [42]  (0.7154, 0.2170)
  [43]  (0.7665, 0.1915)
  [44]  (0.8085, 0.2325)
  [45]  (0.7084, 0.6375)
  [46]  (0.7373, 0.6907)
  [47]  (0.7537, 0.7428)
  [48]  (0.7153, 0.7858)
  [49]  (0.6687, 0.7503)
  [50]  (0.6809, 0.6910)
  [51]  (0.7148, 0.6490)
  [52]  (0.7682, 0.6436)
  [53]  (0.7513, 0.6783)
  [54]  (0.7084, 0.5895)
  [55]  (0.7403, 0.6256)
  [56]  (0.7601, 0.6626)
  [57]  (0.7343, 0.7033)
  [58]  (0.6931, 0.7059)
  [59]  (0.6462, 0.6949)
  [60]  (0.6329, 0.6646)
  [61]  (0.6529, 0.6245)
  [62]  (0.6990, 0.6106)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.7084, 0.2515)  angle=79.9 deg
  V1  (0.1915, 0.2485)  angle=146.5 deg
  V2  (0.7084, 0.0179)  angle=149.5 deg
  V3  (0.3229, 0.0039)  angle=154.6 deg
  V4  (0.7961, 0.2712)  angle=48.1 deg
  V5  (0.7748, 0.3247)  angle=58.2 deg
  V6  (0.7037, 0.3373)  angle=44.7 deg
  V7  (0.6436, 0.2958)  angle=83.6 deg
  V8  (0.7315, 0.1931)  angle=176.5 deg
  V9  (0.7084, 0.2131)  angle=130.8 deg
  V10  (0.7084, 0.1485)  angle=110.1 deg
  V11  (0.7661, 0.1696)  angle=41.0 deg
  V12  (0.7979, 0.2762)  angle=80.0 deg
  V13  (0.7387, 0.2930)  angle=51.9 deg
  V14  (0.6959, 0.2616)  angle=77.4 deg
  V15  (0.7154, 0.2170)  angle=40.0 deg
  V16  (0.7665, 0.1915)  angle=70.8 deg
  V17  (0.8085, 0.2325)  angle=59.5 deg
  V18  (0.7084, 0.6375)  angle=42.3 deg
  V19  (0.7537, 0.7428)  angle=59.2 deg
  V20  (0.7153, 0.7858)  angle=85.5 deg
  V21  (0.6687, 0.7503)  angle=64.4 deg
  V22  (0.7148, 0.6490)  angle=45.3 deg
  V23  (0.7682, 0.6436)  angle=121.9 deg
  V24  (0.7513, 0.6783)  angle=128.2 deg
  V25  (0.7084, 0.5895)  angle=164.2 deg
  V26  (0.7601, 0.6626)  angle=60.5 deg
  V27  (0.7343, 0.7033)  angle=53.9 deg
  V28  (0.6462, 0.6949)  angle=52.9 deg
  V29  (0.6329, 0.6646)  angle=50.4 deg
  V30  (0.6529, 0.6245)  angle=46.7 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
    }
),
