=== SAVED CAST: bless_9_s51 ===
Normalized points: 60
Raw points: N/A

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.4444, 0.4340)
  [ 1]  (0.5027, 0.4790)
  [ 2]  (0.5610, 0.5241)
  [ 3]  (0.5362, 0.5760)
  [ 4]  (0.4861, 0.6301)
  [ 5]  (0.4155, 0.6233)
  [ 6]  (0.3757, 0.5888)
  [ 7]  (0.3923, 0.5170)
  [ 8]  (0.4383, 0.4645)
  [ 9]  (0.5031, 0.4408)
  [10]  (0.5258, 0.4517)
  [11]  (0.4543, 0.4696)
  [12]  (0.4444, 0.4597)
  [13]  (0.5082, 0.4683)
  [14]  (0.5721, 0.4769)
  [15]  (0.6360, 0.4854)
  [16]  (0.6705, 0.5285)
  [17]  (0.6716, 0.5823)
  [18]  (0.6131, 0.6094)
  [19]  (0.5553, 0.6170)
  [20]  (0.4986, 0.5863)
  [21]  (0.4937, 0.5458)
  [22]  (0.5352, 0.4965)
  [23]  (0.5924, 0.4711)
  [24]  (0.4444, 0.2752)
  [25]  (0.4485, 0.3211)
  [26]  (0.4527, 0.3670)
  [27]  (0.4569, 0.4129)
  [28]  (0.4611, 0.4588)
  [29]  (0.4652, 0.5048)
  [30]  (0.4668, 0.5507)
  [31]  (0.4635, 0.5967)
  [32]  (0.4602, 0.6427)
  [33]  (0.4568, 0.6886)
  [34]  (0.4535, 0.7346)
  [35]  (0.4502, 0.7806)
  [36]  (0.4444, 0.0000)
  [37]  (0.4772, 0.0217)
  [38]  (0.5101, 0.0434)
  [39]  (0.5429, 0.0651)
  [40]  (0.5578, 0.1000)
  [41]  (0.5687, 0.1379)
  [42]  (0.5649, 0.1630)
  [43]  (0.5259, 0.1579)
  [44]  (0.4914, 0.1486)
  [45]  (0.4898, 0.1093)
  [46]  (0.4883, 0.0699)
  [47]  (0.5072, 0.0429)
  [48]  (0.4444, 0.8524)
  [49]  (0.4829, 0.8846)
  [50]  (0.4906, 0.9273)
  [51]  (0.4796, 0.9764)
  [52]  (0.4500, 1.0000)
  [53]  (0.4000, 0.9955)
  [54]  (0.3569, 0.9825)
  [55]  (0.3426, 0.9343)
  [56]  (0.3284, 0.8862)
  [57]  (0.3695, 0.8586)
  [58]  (0.4118, 0.8315)
  [59]  (0.4601, 0.8215)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.5610, 0.5241)  angle=77.8 deg
  V1  (0.4861, 0.6301)  angle=52.8 deg
  V2  (0.4155, 0.6233)  angle=35.3 deg
  V3  (0.3757, 0.5888)  angle=62.1 deg
  V4  (0.5031, 0.4408)  angle=45.8 deg
  V5  (0.5258, 0.4517)  angle=140.3 deg
  V6  (0.4543, 0.4696)  angle=58.7 deg
  V7  (0.4444, 0.4597)  angle=142.9 deg
  V8  (0.6360, 0.4854)  angle=43.6 deg
  V9  (0.6705, 0.5285)  angle=37.6 deg
  V10  (0.6716, 0.5823)  angle=66.3 deg
  V11  (0.5553, 0.6170)  angle=35.9 deg
  V12  (0.4986, 0.5863)  angle=54.6 deg
  V13  (0.4937, 0.5458)  angle=47.1 deg
  V14  (0.5924, 0.4711)  angle=103.1 deg
  V15  (0.4444, 0.2752)  angle=148.1 deg
  V16  (0.4502, 0.7806)  angle=175.4 deg
  V17  (0.4444, 0.0000)  angle=123.9 deg
  V18  (0.5429, 0.0651)  angle=33.6 deg
  V19  (0.5649, 0.1630)  angle=88.8 deg
  V20  (0.4914, 0.1486)  angle=72.7 deg
  V21  (0.4883, 0.0699)  angle=37.3 deg
  V22  (0.5072, 0.0429)  angle=149.4 deg
  V23  (0.4444, 0.8524)  angle=54.6 deg
  V24  (0.4829, 0.8846)  angle=40.0 deg
  V25  (0.4796, 0.9764)  angle=38.7 deg
  V26  (0.4500, 1.0000)  angle=43.7 deg
  V27  (0.3569, 0.9825)  angle=56.7 deg
  V28  (0.3284, 0.8862)  angle=72.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
    }
),
