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

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.6689, 0.0665)
  [ 1]  (0.6869, 0.2735)
  [ 2]  (0.7172, 0.4792)
  [ 3]  (0.7612, 0.6821)
  [ 4]  (0.8112, 0.8838)
  [ 5]  (0.6732, 0.9457)
  [ 6]  (0.4658, 0.9332)
  [ 7]  (0.2854, 0.8512)
  [ 8]  (0.6689, 0.1891)
  [ 9]  (0.7488, 0.2180)
  [10]  (0.7996, 0.2840)
  [11]  (0.7697, 0.3457)
  [12]  (0.6807, 0.3589)
  [13]  (0.6022, 0.3235)
  [14]  (0.6301, 0.2449)
  [15]  (0.7043, 0.2171)
  [16]  (0.6689, 0.9839)
  [17]  (0.6262, 0.8721)
  [18]  (0.5806, 0.7614)
  [19]  (0.5917, 0.6564)
  [20]  (0.7061, 0.6355)
  [21]  (0.7320, 0.5191)
  [22]  (0.7226, 0.4006)
  [23]  (0.7120, 0.2816)
  [24]  (0.6689, 0.0000)
  [25]  (0.7325, 0.0424)
  [26]  (0.7433, 0.1132)
  [27]  (0.6820, 0.1371)
  [28]  (0.6074, 0.1456)
  [29]  (0.5547, 0.0902)
  [30]  (0.5847, 0.0287)
  [31]  (0.6570, 0.0250)
  [32]  (0.6689, 1.0000)
  [33]  (0.6645, 0.9112)
  [34]  (0.6565, 0.8226)
  [35]  (0.6443, 0.7345)
  [36]  (0.6291, 0.6468)
  [37]  (0.6171, 0.5588)
  [38]  (0.6145, 0.4698)
  [39]  (0.6178, 0.3809)
  [40]  (0.6689, 0.2975)
  [41]  (0.6061, 0.2974)
  [42]  (0.5433, 0.2968)
  [43]  (0.4805, 0.2962)
  [44]  (0.4176, 0.2955)
  [45]  (0.3548, 0.2948)
  [46]  (0.2920, 0.2937)
  [47]  (0.2292, 0.2925)
  [48]  (0.6689, 0.0498)
  [49]  (0.6003, 0.0460)
  [50]  (0.5318, 0.0420)
  [51]  (0.4632, 0.0380)
  [52]  (0.3947, 0.0341)
  [53]  (0.3260, 0.0321)
  [54]  (0.2574, 0.0298)
  [55]  (0.1888, 0.0314)
  [56]  (0.6689, 0.9720)
  [57]  (0.5660, 0.8657)
  [58]  (0.4708, 0.7528)
  [59]  (0.3820, 0.6344)
  [60]  (0.3289, 0.5028)
  [61]  (0.4083, 0.3990)
  [62]  (0.5496, 0.3560)
  [63]  (0.6924, 0.3174)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.8112, 0.8838)  angle=79.7 deg
  V1  (0.2854, 0.8512)  angle=95.6 deg
  V2  (0.6689, 0.1891)  angle=79.8 deg
  V3  (0.7488, 0.2180)  angle=32.5 deg
  V4  (0.7996, 0.2840)  angle=63.5 deg
  V5  (0.7697, 0.3457)  angle=55.8 deg
  V6  (0.6807, 0.3589)  angle=32.6 deg
  V7  (0.6022, 0.3235)  angle=85.3 deg
  V8  (0.6301, 0.2449)  angle=50.0 deg
  V9  (0.7043, 0.2171)  angle=113.1 deg
  V10  (0.6689, 0.9839)  angle=156.4 deg
  V11  (0.5917, 0.6564)  angle=73.6 deg
  V12  (0.7061, 0.6355)  angle=67.1 deg
  V13  (0.6689, 0.0000)  angle=132.4 deg
  V14  (0.7325, 0.0424)  angle=47.7 deg
  V15  (0.7433, 0.1132)  angle=77.3 deg
  V16  (0.6074, 0.1456)  angle=52.9 deg
  V17  (0.5547, 0.0902)  angle=69.6 deg
  V18  (0.5847, 0.0287)  angle=61.1 deg
  V19  (0.6570, 0.0250)  angle=92.2 deg
  V20  (0.6689, 1.0000)  angle=177.9 deg
  V21  (0.6689, 0.2975)  angle=121.4 deg
  V22  (0.2292, 0.2925)  angle=150.0 deg
  V23  (0.6689, 0.0498)  angle=147.9 deg
  V24  (0.1888, 0.0314)  angle=115.7 deg
  V25  (0.6689, 0.9720)  angle=163.0 deg
  V26  (0.3289, 0.5028)  angle=59.4 deg
  V27  (0.4083, 0.3990)  angle=35.7 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
    }
),
