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

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.6657, 0.8293)
  [ 1]  (0.6619, 0.6965)
  [ 2]  (0.6896, 0.5670)
  [ 3]  (0.7842, 0.5252)
  [ 4]  (0.9119, 0.5633)
  [ 5]  (1.0000, 0.5598)
  [ 6]  (0.9680, 0.4311)
  [ 7]  (0.9489, 0.2992)
  [ 8]  (0.9192, 0.1707)
  [ 9]  (0.6657, 0.5468)
  [10]  (0.5800, 0.5538)
  [11]  (0.4942, 0.5593)
  [12]  (0.4083, 0.5641)
  [13]  (0.3223, 0.5644)
  [14]  (0.2363, 0.5648)
  [15]  (0.1503, 0.5652)
  [16]  (0.0644, 0.5622)
  [17]  (0.0000, 0.5492)
  [18]  (0.6657, 0.4029)
  [19]  (0.6986, 0.4380)
  [20]  (0.6873, 0.4640)
  [21]  (0.6435, 0.4767)
  [22]  (0.6013, 0.4536)
  [23]  (0.6202, 0.4203)
  [24]  (0.6584, 0.3992)
  [25]  (0.6246, 0.4146)
  [26]  (0.5795, 0.4315)
  [27]  (0.6657, 0.4078)
  [28]  (0.6901, 0.4338)
  [29]  (0.7050, 0.4602)
  [30]  (0.6804, 0.4787)
  [31]  (0.6477, 0.4644)
  [32]  (0.6342, 0.4384)
  [33]  (0.6442, 0.4104)
  [34]  (0.6798, 0.4079)
  [35]  (0.6830, 0.4419)
  [36]  (0.6657, 0.4338)
  [37]  (0.6955, 0.4518)
  [38]  (0.6979, 0.4874)
  [39]  (0.6733, 0.4999)
  [40]  (0.6394, 0.4989)
  [41]  (0.6176, 0.4706)
  [42]  (0.6352, 0.4487)
  [43]  (0.6574, 0.4527)
  [44]  (0.6391, 0.4834)
  [45]  (0.6657, 0.7634)
  [46]  (0.6222, 0.7322)
  [47]  (0.5801, 0.6991)
  [48]  (0.5383, 0.6656)
  [49]  (0.5008, 0.6293)
  [50]  (0.4855, 0.5781)
  [51]  (0.4715, 0.5267)
  [52]  (0.4803, 0.4739)
  [53]  (0.4953, 0.4231)
  [54]  (0.6657, 0.4915)
  [55]  (0.6868, 0.5129)
  [56]  (0.6979, 0.5373)
  [57]  (0.6923, 0.5668)
  [58]  (0.6635, 0.5592)
  [59]  (0.6414, 0.5466)
  [60]  (0.6450, 0.5167)
  [61]  (0.6606, 0.4971)
  [62]  (0.6797, 0.5073)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.6896, 0.5670)  angle=54.1 deg
  V1  (0.7842, 0.5252)  angle=40.4 deg
  V2  (1.0000, 0.5598)  angle=101.6 deg
  V3  (0.9192, 0.1707)  angle=133.0 deg
  V4  (0.6657, 0.5468)  angle=51.3 deg
  V5  (0.0000, 0.5492)  angle=156.2 deg
  V6  (0.6657, 0.4029)  angle=59.2 deg
  V7  (0.6986, 0.4380)  angle=66.6 deg
  V8  (0.6873, 0.4640)  angle=50.4 deg
  V9  (0.6435, 0.4767)  angle=44.8 deg
  V10  (0.6013, 0.4536)  angle=91.0 deg
  V11  (0.6202, 0.4203)  angle=31.4 deg
  V12  (0.6584, 0.3992)  angle=175.4 deg
  V13  (0.5795, 0.4315)  angle=174.8 deg
  V14  (0.6657, 0.4078)  angle=62.3 deg
  V15  (0.7050, 0.4602)  angle=82.7 deg
  V16  (0.6804, 0.4787)  angle=60.6 deg
  V17  (0.6477, 0.4644)  angle=38.7 deg
  V18  (0.6342, 0.4384)  angle=47.3 deg
  V19  (0.6442, 0.4104)  angle=66.2 deg
  V20  (0.6798, 0.4079)  angle=88.8 deg
  V21  (0.6830, 0.4419)  angle=120.2 deg
  V22  (0.6657, 0.4338)  angle=173.9 deg
  V23  (0.6955, 0.4518)  angle=55.2 deg
  V24  (0.6979, 0.4874)  angle=66.9 deg
  V25  (0.6394, 0.4989)  angle=50.5 deg
  V26  (0.6176, 0.4706)  angle=76.6 deg
  V27  (0.6352, 0.4487)  angle=61.5 deg
  V28  (0.6574, 0.4527)  angle=110.5 deg
  V29  (0.6391, 0.4834)  angle=36.3 deg
  V30  (0.6657, 0.7634)  angle=131.0 deg
  V31  (0.4953, 0.4231)  angle=95.5 deg
  V32  (0.6979, 0.5373)  angle=35.3 deg
  V33  (0.6923, 0.5668)  angle=94.0 deg
  V34  (0.6414, 0.5466)  angle=67.0 deg
  V35  (0.6450, 0.5167)  angle=31.6 deg
  V36  (0.6606, 0.4971)  angle=79.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
    }
),
