=== SAVED CAST: skyboundcurse_1_m ===
Normalized points: 64
Raw points: N/A

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.0000, 0.2167)
  [ 1]  (0.0322, 0.2145)
  [ 2]  (0.0645, 0.2123)
  [ 3]  (0.0967, 0.2102)
  [ 4]  (0.1289, 0.2080)
  [ 5]  (0.1611, 0.2058)
  [ 6]  (0.1934, 0.2036)
  [ 7]  (0.2256, 0.2015)
  [ 8]  (0.2578, 0.1993)
  [ 9]  (0.2901, 0.1971)
  [10]  (0.3223, 0.1950)
  [11]  (0.3545, 0.1929)
  [12]  (0.3868, 0.1914)
  [13]  (0.4191, 0.1899)
  [14]  (0.4513, 0.1884)
  [15]  (0.4836, 0.1869)
  [16]  (0.5159, 0.1853)
  [17]  (0.5481, 0.1838)
  [18]  (0.5804, 0.1823)
  [19]  (0.6127, 0.1808)
  [20]  (0.6449, 0.1793)
  [21]  (0.6772, 0.1778)
  [22]  (0.7095, 0.1762)
  [23]  (0.7417, 0.1747)
  [24]  (0.7740, 0.1732)
  [25]  (0.8063, 0.1717)
  [26]  (0.8385, 0.1702)
  [27]  (0.8708, 0.1687)
  [28]  (0.9031, 0.1686)
  [29]  (0.9354, 0.1690)
  [30]  (0.9677, 0.1693)
  [31]  (1.0000, 0.1697)
  [32]  (0.0000, 0.4097)
  [33]  (0.0320, 0.4179)
  [34]  (0.0640, 0.4262)
  [35]  (0.0959, 0.4345)
  [36]  (0.1274, 0.4442)
  [37]  (0.1578, 0.4572)
  [38]  (0.1881, 0.4703)
  [39]  (0.2184, 0.4833)
  [40]  (0.2488, 0.4964)
  [41]  (0.2791, 0.5094)
  [42]  (0.3095, 0.5225)
  [43]  (0.3398, 0.5355)
  [44]  (0.3699, 0.5491)
  [45]  (0.3997, 0.5634)
  [46]  (0.4295, 0.5777)
  [47]  (0.4592, 0.5919)
  [48]  (0.4890, 0.6062)
  [49]  (0.5188, 0.6205)
  [50]  (0.5486, 0.6348)
  [51]  (0.5784, 0.6491)
  [52]  (0.6082, 0.6633)
  [53]  (0.6379, 0.6776)
  [54]  (0.6677, 0.6919)
  [55]  (0.6975, 0.7062)
  [56]  (0.7268, 0.7214)
  [57]  (0.7558, 0.7371)
  [58]  (0.7849, 0.7528)
  [59]  (0.8139, 0.7686)
  [60]  (0.8430, 0.7843)
  [61]  (0.8720, 0.8000)
  [62]  (0.9011, 0.8157)
  [63]  (0.9302, 0.8314)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (1.0000, 0.1697)  angle=165.8 deg
  V1  (0.0000, 0.4097)  angle=152.0 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
    }
),
