=== SAVED CAST: b_3 ===
Normalized points: 64
Raw points: 24

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.8572, 0.9377)
  [ 1]  (0.8281, 0.9433)
  [ 2]  (0.7991, 0.9490)
  [ 3]  (0.7701, 0.9547)
  [ 4]  (0.7411, 0.9603)
  [ 5]  (0.7120, 0.9649)
  [ 6]  (0.6825, 0.9671)
  [ 7]  (0.6530, 0.9692)
  [ 8]  (0.6235, 0.9714)
  [ 9]  (0.5940, 0.9736)
  [10]  (0.5646, 0.9757)
  [11]  (0.5351, 0.9779)
  [12]  (0.5056, 0.9801)
  [13]  (0.4761, 0.9822)
  [14]  (0.4466, 0.9844)
  [15]  (0.4172, 0.9866)
  [16]  (0.3877, 0.9888)
  [17]  (0.3582, 0.9909)
  [18]  (0.3287, 0.9931)
  [19]  (0.2992, 0.9953)
  [20]  (0.2698, 0.9974)
  [21]  (0.2402, 0.9983)
  [22]  (0.2107, 0.9989)
  [23]  (0.1811, 0.9994)
  [24]  (0.1516, 1.0000)
  [25]  (0.1428, 0.9889)
  [26]  (0.1589, 0.9641)
  [27]  (0.1789, 0.9428)
  [28]  (0.2017, 0.9240)
  [29]  (0.2245, 0.9052)
  [30]  (0.2473, 0.8864)
  [31]  (0.2701, 0.8676)
  [32]  (0.2929, 0.8488)
  [33]  (0.3157, 0.8299)
  [34]  (0.3366, 0.8091)
  [35]  (0.3576, 0.7882)
  [36]  (0.3785, 0.7674)
  [37]  (0.3995, 0.7465)
  [38]  (0.4015, 0.7186)
  [39]  (0.3994, 0.6891)
  [40]  (0.3973, 0.6597)
  [41]  (0.3914, 0.6307)
  [42]  (0.3850, 0.6019)
  [43]  (0.3785, 0.5730)
  [44]  (0.3720, 0.5442)
  [45]  (0.3656, 0.5154)
  [46]  (0.3591, 0.4865)
  [47]  (0.3526, 0.4577)
  [48]  (0.3462, 0.4288)
  [49]  (0.3397, 0.4000)
  [50]  (0.3330, 0.3712)
  [51]  (0.3251, 0.3427)
  [52]  (0.3171, 0.3143)
  [53]  (0.3091, 0.2858)
  [54]  (0.3012, 0.2573)
  [55]  (0.2932, 0.2288)
  [56]  (0.2853, 0.2004)
  [57]  (0.2773, 0.1719)
  [58]  (0.2694, 0.1434)
  [59]  (0.2614, 0.1150)
  [60]  (0.2534, 0.0865)
  [61]  (0.2455, 0.0580)
  [62]  (0.2391, 0.0292)
  [63]  (0.2347, 0.0000)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.1516, 1.0000)  angle=52.8 deg
  V1  (0.1428, 0.9889)  angle=71.1 deg
  V2  (0.3995, 0.7465)  angle=40.9 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
    }
),
