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

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.4318, 0.5055)
  [ 1]  (0.4832, 0.4853)
  [ 2]  (0.5392, 0.4963)
  [ 3]  (0.5888, 0.5224)
  [ 4]  (0.6178, 0.5634)
  [ 5]  (0.5905, 0.6036)
  [ 6]  (0.5371, 0.6123)
  [ 7]  (0.4872, 0.5883)
  [ 8]  (0.4502, 0.5455)
  [ 9]  (0.4390, 0.4896)
  [10]  (0.4647, 0.4601)
  [11]  (0.5212, 0.4616)
  [12]  (0.4318, 0.4751)
  [13]  (0.4746, 0.4769)
  [14]  (0.5166, 0.4976)
  [15]  (0.5394, 0.5399)
  [16]  (0.5449, 0.5786)
  [17]  (0.5071, 0.6084)
  [18]  (0.4613, 0.6084)
  [19]  (0.4137, 0.6018)
  [20]  (0.3900, 0.5652)
  [21]  (0.3964, 0.5183)
  [22]  (0.4145, 0.4751)
  [23]  (0.4584, 0.4618)
  [24]  (0.4318, 0.2000)
  [25]  (0.4407, 0.2560)
  [26]  (0.4471, 0.3123)
  [27]  (0.4525, 0.3687)
  [28]  (0.4585, 0.4251)
  [29]  (0.4662, 0.4813)
  [30]  (0.4738, 0.5374)
  [31]  (0.4809, 0.5937)
  [32]  (0.4880, 0.6499)
  [33]  (0.4907, 0.7064)
  [34]  (0.4914, 0.7631)
  [35]  (0.4984, 0.7254)
  [36]  (0.4318, 0.0000)
  [37]  (0.4666, 0.0103)
  [38]  (0.4930, 0.0389)
  [39]  (0.5015, 0.0772)
  [40]  (0.4925, 0.1101)
  [41]  (0.4619, 0.1317)
  [42]  (0.4227, 0.1318)
  [43]  (0.3963, 0.1064)
  [44]  (0.3822, 0.0699)
  [45]  (0.3875, 0.0317)
  [46]  (0.4243, 0.0288)
  [47]  (0.4603, 0.0398)
  [48]  (0.4318, 0.8723)
  [49]  (0.4727, 0.8797)
  [50]  (0.5043, 0.9056)
  [51]  (0.5211, 0.9421)
  [52]  (0.5182, 0.9823)
  [53]  (0.4859, 1.0000)
  [54]  (0.4447, 0.9944)
  [55]  (0.4113, 0.9752)
  [56]  (0.3911, 0.9401)
  [57]  (0.3829, 0.8994)
  [58]  (0.4024, 0.8654)
  [59]  (0.4432, 0.8580)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.4832, 0.4853)  angle=32.5 deg
  V1  (0.6178, 0.5634)  angle=69.3 deg
  V2  (0.5905, 0.6036)  angle=46.7 deg
  V3  (0.5371, 0.6123)  angle=34.8 deg
  V4  (0.4390, 0.4896)  angle=52.4 deg
  V5  (0.4647, 0.4601)  angle=50.5 deg
  V6  (0.5212, 0.4616)  angle=169.9 deg
  V7  (0.4318, 0.4751)  angle=168.9 deg
  V8  (0.5166, 0.4976)  angle=35.5 deg
  V9  (0.5449, 0.5786)  angle=59.8 deg
  V10  (0.5071, 0.6084)  angle=38.3 deg
  V11  (0.4137, 0.6018)  angle=49.1 deg
  V12  (0.3900, 0.5652)  angle=40.8 deg
  V13  (0.4145, 0.4751)  angle=50.2 deg
  V14  (0.4584, 0.4618)  angle=78.8 deg
  V15  (0.4318, 0.2000)  angle=176.8 deg
  V16  (0.4914, 0.7631)  angle=168.8 deg
  V17  (0.4318, 0.0000)  angle=111.7 deg
  V18  (0.4666, 0.0103)  angle=30.9 deg
  V19  (0.4930, 0.0389)  angle=30.1 deg
  V20  (0.4925, 0.1101)  angle=39.6 deg
  V21  (0.4619, 0.1317)  angle=35.0 deg
  V22  (0.4227, 0.1318)  angle=44.0 deg
  V23  (0.3875, 0.0317)  angle=77.6 deg
  V24  (0.4603, 0.0398)  angle=75.0 deg
  V25  (0.4318, 0.8723)  angle=81.6 deg
  V26  (0.5182, 0.9823)  angle=57.0 deg
  V27  (0.4859, 1.0000)  angle=36.6 deg
  V28  (0.4113, 0.9752)  angle=30.4 deg
  V29  (0.3829, 0.8994)  angle=41.3 deg
  V30  (0.4024, 0.8654)  angle=50.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
    }
),
