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

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (1.0000, 0.6758)
  [ 1]  (0.9561, 0.6560)
  [ 2]  (0.9165, 0.6287)
  [ 3]  (0.8768, 0.6014)
  [ 4]  (0.8372, 0.5740)
  [ 5]  (0.7996, 0.5443)
  [ 6]  (0.7655, 0.5102)
  [ 7]  (0.7315, 0.4761)
  [ 8]  (0.6975, 0.4420)
  [ 9]  (0.6635, 0.4080)
  [10]  (0.6646, 0.3665)
  [11]  (0.6820, 0.3216)
  [12]  (0.6994, 0.2767)
  [13]  (0.7300, 0.2439)
  [14]  (0.7732, 0.2226)
  [15]  (0.8164, 0.2014)
  [16]  (0.8603, 0.1967)
  [17]  (0.9053, 0.2139)
  [18]  (0.9502, 0.2312)
  [19]  (0.9667, 0.2692)
  [20]  (0.9695, 0.3173)
  [21]  (0.9722, 0.3654)
  [22]  (0.9576, 0.4076)
  [23]  (0.9262, 0.4441)
  [24]  (0.8948, 0.4806)
  [25]  (0.8634, 0.5171)
  [26]  (0.8320, 0.5536)
  [27]  (0.7913, 0.5782)
  [28]  (0.7483, 0.5998)
  [29]  (0.7052, 0.6213)
  [30]  (0.6622, 0.6429)
  [31]  (0.6177, 0.6611)
  [32]  (1.0000, 0.7072)
  [33]  (0.9679, 0.7118)
  [34]  (0.9358, 0.7163)
  [35]  (0.9037, 0.7209)
  [36]  (0.8716, 0.7255)
  [37]  (0.8395, 0.7301)
  [38]  (0.8073, 0.7329)
  [39]  (0.7749, 0.7351)
  [40]  (0.7426, 0.7373)
  [41]  (0.7102, 0.7396)
  [42]  (0.6779, 0.7418)
  [43]  (0.6456, 0.7440)
  [44]  (0.6132, 0.7463)
  [45]  (0.5809, 0.7485)
  [46]  (0.5485, 0.7507)
  [47]  (0.5162, 0.7530)
  [48]  (0.4838, 0.7552)
  [49]  (0.4515, 0.7574)
  [50]  (0.4193, 0.7607)
  [51]  (0.3870, 0.7641)
  [52]  (0.3548, 0.7675)
  [53]  (0.3225, 0.7710)
  [54]  (0.2903, 0.7744)
  [55]  (0.2581, 0.7778)
  [56]  (0.2258, 0.7812)
  [57]  (0.1936, 0.7846)
  [58]  (0.1614, 0.7880)
  [59]  (0.1291, 0.7914)
  [60]  (0.0968, 0.7944)
  [61]  (0.0646, 0.7973)
  [62]  (0.0323, 0.8003)
  [63]  (0.0000, 0.8033)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.6635, 0.4080)  angle=46.5 deg
  V1  (0.9502, 0.2312)  angle=45.6 deg
  V2  (0.6177, 0.6611)  angle=150.8 deg
  V3  (1.0000, 0.7072)  angle=165.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
    }
),
