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

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.6449, 0.1391)
  [ 1]  (0.7102, 0.3256)
  [ 2]  (0.7579, 0.5165)
  [ 3]  (0.7860, 0.7121)
  [ 4]  (0.7857, 0.8865)
  [ 5]  (0.5894, 0.8652)
  [ 6]  (0.3919, 0.8722)
  [ 7]  (0.2140, 0.8327)
  [ 8]  (0.6449, 0.2137)
  [ 9]  (0.6790, 0.2544)
  [10]  (0.7131, 0.2952)
  [11]  (0.6845, 0.3357)
  [12]  (0.6397, 0.3357)
  [13]  (0.5976, 0.3108)
  [14]  (0.5998, 0.2633)
  [15]  (0.6485, 0.2419)
  [16]  (0.6449, 1.0000)
  [17]  (0.6020, 0.8721)
  [18]  (0.5550, 0.7455)
  [19]  (0.5089, 0.6185)
  [20]  (0.5155, 0.5111)
  [21]  (0.6479, 0.5253)
  [22]  (0.6840, 0.4397)
  [23]  (0.6377, 0.3131)
  [24]  (0.6449, 0.0000)
  [25]  (0.6557, 0.0635)
  [26]  (0.6644, 0.1260)
  [27]  (0.6086, 0.1559)
  [28]  (0.5753, 0.1008)
  [29]  (0.5789, 0.0468)
  [30]  (0.6314, 0.0420)
  [31]  (0.6236, 0.1036)
  [32]  (0.6449, 0.4810)
  [33]  (0.6520, 0.5429)
  [34]  (0.6592, 0.6048)
  [35]  (0.6663, 0.6667)
  [36]  (0.6734, 0.7286)
  [37]  (0.6802, 0.7905)
  [38]  (0.6740, 0.8525)
  [39]  (0.6839, 0.8075)
  [40]  (0.6449, 0.4235)
  [41]  (0.5938, 0.4268)
  [42]  (0.5428, 0.4302)
  [43]  (0.4916, 0.4313)
  [44]  (0.4404, 0.4317)
  [45]  (0.3893, 0.4322)
  [46]  (0.3381, 0.4326)
  [47]  (0.2869, 0.4331)
  [48]  (0.6449, 0.1677)
  [49]  (0.5922, 0.1691)
  [50]  (0.5395, 0.1706)
  [51]  (0.4869, 0.1720)
  [52]  (0.4342, 0.1735)
  [53]  (0.3815, 0.1743)
  [54]  (0.3288, 0.1741)
  [55]  (0.2761, 0.1740)
  [56]  (0.6449, 0.8644)
  [57]  (0.5553, 0.7764)
  [58]  (0.4703, 0.6839)
  [59]  (0.3862, 0.5906)
  [60]  (0.3343, 0.4818)
  [61]  (0.4041, 0.4183)
  [62]  (0.5276, 0.3956)
  [63]  (0.6518, 0.3772)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.7857, 0.8865)  angle=96.1 deg
  V1  (0.2140, 0.8327)  angle=112.3 deg
  V2  (0.6449, 0.2137)  angle=105.3 deg
  V3  (0.7131, 0.2952)  angle=75.2 deg
  V4  (0.6845, 0.3357)  angle=54.6 deg
  V5  (0.6397, 0.3357)  angle=30.8 deg
  V6  (0.5976, 0.3108)  angle=62.0 deg
  V7  (0.5998, 0.2633)  angle=63.7 deg
  V8  (0.6485, 0.2419)  angle=114.0 deg
  V9  (0.6449, 1.0000)  angle=161.2 deg
  V10  (0.5155, 0.5111)  angle=92.6 deg
  V11  (0.6479, 0.5253)  angle=73.2 deg
  V12  (0.6840, 0.4397)  angle=43.0 deg
  V13  (0.6449, 0.0000)  angle=169.0 deg
  V14  (0.6644, 0.1260)  angle=69.7 deg
  V15  (0.6086, 0.1559)  angle=87.0 deg
  V16  (0.5753, 0.1008)  angle=35.0 deg
  V17  (0.5789, 0.0468)  angle=81.0 deg
  V18  (0.6314, 0.0420)  angle=102.4 deg
  V19  (0.6740, 0.8525)  angle=173.2 deg
  V20  (0.6449, 0.4235)  angle=87.9 deg
  V21  (0.2869, 0.4331)  angle=143.9 deg
  V22  (0.6449, 0.1677)  angle=145.0 deg
  V23  (0.2761, 0.1740)  angle=118.3 deg
  V24  (0.6449, 0.8644)  angle=162.6 deg
  V25  (0.3343, 0.4818)  angle=73.2 deg
  V26  (0.4041, 0.4183)  angle=31.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
    }
),
