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

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.8838, 0.8812)
  [ 1]  (0.6641, 0.9248)
  [ 2]  (0.4402, 0.9469)
  [ 3]  (0.2160, 0.9667)
  [ 4]  (0.0619, 0.8993)
  [ 5]  (0.0529, 0.6746)
  [ 6]  (0.0557, 0.4497)
  [ 7]  (0.0668, 0.2250)
  [ 8]  (0.0668, 0.0000)
  [ 9]  (0.8838, 0.2395)
  [10]  (0.9151, 0.3350)
  [11]  (0.8843, 0.4237)
  [12]  (0.7960, 0.4497)
  [13]  (0.7078, 0.4230)
  [14]  (0.6829, 0.3375)
  [15]  (0.7599, 0.2927)
  [16]  (0.8590, 0.2903)
  [17]  (0.8953, 0.3123)
  [18]  (0.8838, 0.5639)
  [19]  (0.7968, 0.5641)
  [20]  (0.7099, 0.5649)
  [21]  (0.6229, 0.5657)
  [22]  (0.5359, 0.5665)
  [23]  (0.4490, 0.5647)
  [24]  (0.3622, 0.5595)
  [25]  (0.2754, 0.5544)
  [26]  (0.1886, 0.5492)
  [27]  (0.8838, 0.3201)
  [28]  (0.9039, 0.3402)
  [29]  (0.9239, 0.3602)
  [30]  (0.9012, 0.3602)
  [31]  (0.8730, 0.3576)
  [32]  (0.8450, 0.3546)
  [33]  (0.8366, 0.3275)
  [34]  (0.8337, 0.3022)
  [35]  (0.8568, 0.2858)
  [36]  (0.8838, 0.2972)
  [37]  (0.9209, 0.3049)
  [38]  (0.9471, 0.3360)
  [39]  (0.9244, 0.3549)
  [40]  (0.8866, 0.3700)
  [41]  (0.8553, 0.3535)
  [42]  (0.8425, 0.3272)
  [43]  (0.8785, 0.3083)
  [44]  (0.9145, 0.2894)
  [45]  (0.8838, 1.0000)
  [46]  (0.7902, 0.8908)
  [47]  (0.7004, 0.7786)
  [48]  (0.6147, 0.6631)
  [49]  (0.5291, 0.5476)
  [50]  (0.4726, 0.4164)
  [51]  (0.4239, 0.2811)
  [52]  (0.4763, 0.1780)
  [53]  (0.6169, 0.1498)
  [54]  (0.8838, 0.2665)
  [55]  (0.9210, 0.3008)
  [56]  (0.9331, 0.3437)
  [57]  (0.9183, 0.3867)
  [58]  (0.8681, 0.3933)
  [59]  (0.8180, 0.3998)
  [60]  (0.7902, 0.3659)
  [61]  (0.8099, 0.3293)
  [62]  (0.8490, 0.2972)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.0619, 0.8993)  angle=64.1 deg
  V1  (0.0668, 0.0000)  angle=106.3 deg
  V2  (0.8838, 0.2395)  angle=55.5 deg
  V3  (0.9151, 0.3350)  angle=37.4 deg
  V4  (0.8843, 0.4237)  angle=54.4 deg
  V5  (0.7960, 0.4497)  angle=33.2 deg
  V6  (0.7078, 0.4230)  angle=57.0 deg
  V7  (0.6829, 0.3375)  angle=76.0 deg
  V8  (0.8590, 0.2903)  angle=32.6 deg
  V9  (0.8953, 0.3123)  angle=61.4 deg
  V10  (0.8838, 0.5639)  angle=87.3 deg
  V11  (0.1886, 0.5492)  angle=158.3 deg
  V12  (0.8838, 0.3201)  angle=63.2 deg
  V13  (0.9239, 0.3602)  angle=135.1 deg
  V14  (0.8450, 0.3546)  angle=66.9 deg
  V15  (0.8337, 0.3022)  angle=61.3 deg
  V16  (0.8568, 0.2858)  angle=58.4 deg
  V17  (0.9209, 0.3049)  angle=38.3 deg
  V18  (0.9471, 0.3360)  angle=90.4 deg
  V19  (0.8866, 0.3700)  angle=49.6 deg
  V20  (0.8553, 0.3535)  angle=36.2 deg
  V21  (0.8425, 0.3272)  angle=88.4 deg
  V22  (0.9145, 0.2894)  angle=120.1 deg
  V23  (0.8838, 1.0000)  angle=136.9 deg
  V24  (0.4239, 0.2811)  angle=46.7 deg
  V25  (0.4763, 0.1780)  angle=51.7 deg
  V26  (0.6169, 0.1498)  angle=35.0 deg
  V27  (0.9210, 0.3008)  angle=31.5 deg
  V28  (0.9331, 0.3437)  angle=34.9 deg
  V29  (0.9183, 0.3867)  angle=63.5 deg
  V30  (0.8180, 0.3998)  angle=58.2 deg
  V31  (0.7902, 0.3659)  angle=67.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
    }
),
