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

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.6677, 0.2636)
  [ 1]  (0.7071, 0.4070)
  [ 2]  (0.7428, 0.5515)
  [ 3]  (0.7785, 0.6959)
  [ 4]  (0.8056, 0.8420)
  [ 5]  (0.6942, 0.8717)
  [ 6]  (0.5455, 0.8701)
  [ 7]  (0.3967, 0.8714)
  [ 8]  (0.6677, 0.4270)
  [ 9]  (0.7558, 0.4427)
  [10]  (0.8114, 0.5115)
  [11]  (0.7660, 0.5658)
  [12]  (0.6835, 0.5636)
  [13]  (0.7035, 0.4855)
  [14]  (0.7920, 0.4851)
  [15]  (0.7234, 0.5103)
  [16]  (0.6677, 1.0000)
  [17]  (0.6828, 0.8948)
  [18]  (0.7069, 0.7911)
  [19]  (0.7382, 0.6893)
  [20]  (0.7723, 0.5885)
  [21]  (0.8024, 0.4864)
  [22]  (0.8179, 0.3829)
  [23]  (0.7748, 0.2874)
  [24]  (0.6677, 0.0000)
  [25]  (0.7147, 0.0392)
  [26]  (0.6963, 0.0989)
  [27]  (0.6452, 0.1144)
  [28]  (0.6092, 0.0785)
  [29]  (0.6353, 0.0294)
  [30]  (0.6931, 0.0418)
  [31]  (0.6557, 0.0655)
  [32]  (0.6677, 0.1349)
  [33]  (0.5983, 0.1411)
  [34]  (0.5287, 0.1413)
  [35]  (0.4591, 0.1394)
  [36]  (0.3895, 0.1375)
  [37]  (0.3198, 0.1357)
  [38]  (0.2508, 0.1278)
  [39]  (0.1821, 0.1160)
  [40]  (0.6677, 0.2957)
  [41]  (0.6017, 0.3042)
  [42]  (0.5353, 0.3078)
  [43]  (0.4687, 0.3084)
  [44]  (0.4022, 0.3091)
  [45]  (0.3356, 0.3097)
  [46]  (0.2691, 0.3074)
  [47]  (0.2026, 0.3044)
  [48]  (0.6677, 0.4190)
  [49]  (0.6998, 0.4918)
  [50]  (0.7192, 0.5692)
  [51]  (0.7301, 0.6484)
  [52]  (0.7408, 0.7275)
  [53]  (0.7500, 0.8069)
  [54]  (0.7586, 0.8863)
  [55]  (0.7472, 0.8738)
  [56]  (0.6677, 0.9344)
  [57]  (0.6010, 0.8111)
  [58]  (0.5274, 0.6920)
  [59]  (0.4508, 0.5747)
  [60]  (0.3800, 0.4538)
  [61]  (0.4738, 0.4057)
  [62]  (0.6137, 0.4011)
  [63]  (0.7512, 0.4229)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.8056, 0.8420)  angle=85.6 deg
  V1  (0.3967, 0.8714)  angle=121.9 deg
  V2  (0.6677, 0.4270)  angle=68.7 deg
  V3  (0.7558, 0.4427)  angle=40.9 deg
  V4  (0.8114, 0.5115)  angle=78.9 deg
  V5  (0.7660, 0.5658)  angle=51.6 deg
  V6  (0.6835, 0.5636)  angle=102.8 deg
  V7  (0.7035, 0.4855)  angle=75.4 deg
  V8  (0.7920, 0.4851)  angle=160.1 deg
  V9  (0.7234, 0.5103)  angle=63.4 deg
  V10  (0.6677, 1.0000)  angle=178.3 deg
  V11  (0.8179, 0.3829)  angle=32.8 deg
  V12  (0.6677, 0.0000)  angle=150.2 deg
  V13  (0.7147, 0.0392)  angle=67.3 deg
  V14  (0.6963, 0.0989)  angle=56.1 deg
  V15  (0.6452, 0.1144)  angle=61.7 deg
  V16  (0.6092, 0.0785)  angle=73.1 deg
  V17  (0.6353, 0.0294)  angle=74.1 deg
  V18  (0.6931, 0.0418)  angle=135.5 deg
  V19  (0.6557, 0.0655)  angle=67.5 deg
  V20  (0.6677, 0.1349)  angle=94.8 deg
  V21  (0.1821, 0.1160)  angle=169.5 deg
  V22  (0.6677, 0.2957)  angle=152.4 deg
  V23  (0.2026, 0.3044)  angle=168.8 deg
  V24  (0.6677, 0.4190)  angle=52.3 deg
  V25  (0.7586, 0.8863)  angle=143.9 deg
  V26  (0.7472, 0.8738)  angle=85.0 deg
  V27  (0.6677, 0.9344)  angle=98.9 deg
  V28  (0.3800, 0.4538)  angle=93.2 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
    }
),
