=== SAVED CAST: s_3 ===
Normalized points: 64
Raw points: 12

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.4445, 1.0000)
  [ 1]  (0.4389, 0.9813)
  [ 2]  (0.4333, 0.9627)
  [ 3]  (0.4277, 0.9440)
  [ 4]  (0.4221, 0.9254)
  [ 5]  (0.4165, 0.9067)
  [ 6]  (0.4144, 0.8874)
  [ 7]  (0.4123, 0.8680)
  [ 8]  (0.4101, 0.8487)
  [ 9]  (0.4080, 0.8293)
  [10]  (0.4059, 0.8100)
  [11]  (0.4038, 0.7906)
  [12]  (0.4016, 0.7713)
  [13]  (0.3995, 0.7519)
  [14]  (0.3974, 0.7325)
  [15]  (0.3953, 0.7132)
  [16]  (0.3932, 0.6938)
  [17]  (0.3910, 0.6745)
  [18]  (0.3889, 0.6551)
  [19]  (0.3976, 0.6386)
  [20]  (0.4088, 0.6227)
  [21]  (0.4201, 0.6068)
  [22]  (0.4314, 0.5910)
  [23]  (0.4427, 0.5751)
  [24]  (0.4573, 0.5676)
  [25]  (0.4764, 0.5716)
  [26]  (0.4954, 0.5755)
  [27]  (0.5145, 0.5794)
  [28]  (0.5336, 0.5834)
  [29]  (0.5526, 0.5873)
  [30]  (0.5717, 0.5913)
  [31]  (0.5908, 0.5952)
  [32]  (0.6098, 0.5991)
  [33]  (0.6111, 0.5830)
  [34]  (0.6095, 0.5635)
  [35]  (0.6079, 0.5441)
  [36]  (0.6061, 0.5248)
  [37]  (0.6044, 0.5054)
  [38]  (0.6026, 0.4860)
  [39]  (0.6009, 0.4666)
  [40]  (0.5991, 0.4472)
  [41]  (0.5973, 0.4278)
  [42]  (0.5956, 0.4084)
  [43]  (0.5938, 0.3890)
  [44]  (0.5921, 0.3696)
  [45]  (0.5903, 0.3502)
  [46]  (0.5886, 0.3308)
  [47]  (0.5868, 0.3114)
  [48]  (0.5851, 0.2920)
  [49]  (0.5844, 0.2726)
  [50]  (0.5844, 0.2531)
  [51]  (0.5844, 0.2337)
  [52]  (0.5844, 0.2142)
  [53]  (0.5844, 0.1947)
  [54]  (0.5844, 0.1752)
  [55]  (0.5844, 0.1558)
  [56]  (0.5844, 0.1363)
  [57]  (0.5844, 0.1168)
  [58]  (0.5844, 0.0974)
  [59]  (0.5844, 0.0779)
  [60]  (0.5844, 0.0584)
  [61]  (0.5844, 0.0389)
  [62]  (0.5844, 0.0195)
  [63]  (0.5844, 0.0000)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.3889, 0.6551)  angle=33.8 deg
  V1  (0.4573, 0.5676)  angle=38.7 deg
  V2  (0.6098, 0.5991)  angle=97.3 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
    }
),
