=== SAVED CAST: leakagecurse_2_s7 ===
Normalized points: 63
Raw points: N/A

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.3689, 0.0000)
  [ 1]  (0.3601, 0.1249)
  [ 2]  (0.3515, 0.2498)
  [ 3]  (0.3430, 0.3747)
  [ 4]  (0.3357, 0.4997)
  [ 5]  (0.3288, 0.6247)
  [ 6]  (0.3238, 0.7497)
  [ 7]  (0.3236, 0.8749)
  [ 8]  (0.3179, 1.0000)
  [ 9]  (0.3689, 0.2583)
  [10]  (0.2869, 0.3050)
  [11]  (0.2328, 0.3833)
  [12]  (0.2641, 0.4603)
  [13]  (0.3573, 0.4713)
  [14]  (0.4539, 0.4522)
  [15]  (0.4612, 0.3591)
  [16]  (0.3974, 0.2842)
  [17]  (0.3102, 0.3005)
  [18]  (0.3689, 0.6225)
  [19]  (0.2876, 0.6643)
  [20]  (0.2385, 0.7449)
  [21]  (0.2412, 0.8263)
  [22]  (0.3303, 0.8509)
  [23]  (0.4042, 0.8118)
  [24]  (0.3727, 0.7283)
  [25]  (0.2898, 0.6885)
  [26]  (0.2628, 0.7212)
  [27]  (0.3689, 0.8723)
  [28]  (0.4843, 0.8779)
  [29]  (0.5941, 0.8461)
  [30]  (0.5427, 0.7441)
  [31]  (0.5171, 0.6317)
  [32]  (0.5278, 0.5167)
  [33]  (0.5682, 0.4097)
  [34]  (0.6704, 0.3683)
  [35]  (0.7672, 0.4124)
  [36]  (0.3689, 0.8763)
  [37]  (0.3728, 0.8057)
  [38]  (0.3728, 0.7350)
  [39]  (0.3736, 0.6644)
  [40]  (0.3766, 0.5937)
  [41]  (0.3796, 0.5231)
  [42]  (0.3859, 0.4527)
  [43]  (0.3942, 0.3825)
  [44]  (0.3963, 0.3121)
  [45]  (0.3689, 0.5846)
  [46]  (0.3381, 0.6198)
  [47]  (0.3086, 0.6554)
  [48]  (0.3248, 0.6951)
  [49]  (0.3711, 0.6894)
  [50]  (0.3912, 0.6471)
  [51]  (0.3572, 0.6185)
  [52]  (0.3194, 0.5909)
  [53]  (0.3003, 0.6064)
  [54]  (0.3689, 0.5645)
  [55]  (0.3220, 0.5877)
  [56]  (0.2765, 0.6119)
  [57]  (0.2717, 0.6641)
  [58]  (0.3101, 0.6858)
  [59]  (0.3485, 0.6615)
  [60]  (0.3509, 0.6222)
  [61]  (0.3110, 0.5935)
  [62]  (0.2588, 0.5979)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.3179, 1.0000)  angle=178.7 deg
  V1  (0.3689, 0.2583)  angle=123.6 deg
  V2  (0.2328, 0.3833)  angle=56.8 deg
  V3  (0.2641, 0.4603)  angle=61.1 deg
  V4  (0.4539, 0.4522)  angle=74.3 deg
  V5  (0.4612, 0.3591)  angle=44.9 deg
  V6  (0.3974, 0.2842)  angle=60.2 deg
  V7  (0.3102, 0.3005)  angle=89.7 deg
  V8  (0.3689, 0.6225)  angle=73.2 deg
  V9  (0.2876, 0.6643)  angle=31.5 deg
  V10  (0.2385, 0.7449)  angle=33.2 deg
  V11  (0.2412, 0.8263)  angle=72.7 deg
  V12  (0.3303, 0.8509)  angle=43.3 deg
  V13  (0.4042, 0.8118)  angle=82.8 deg
  V14  (0.3727, 0.7283)  angle=43.7 deg
  V15  (0.2898, 0.6885)  angle=76.0 deg
  V16  (0.2628, 0.7212)  angle=74.7 deg
  V17  (0.3689, 0.8723)  angle=52.1 deg
  V18  (0.5941, 0.8461)  angle=100.6 deg
  V19  (0.5682, 0.4097)  angle=47.3 deg
  V20  (0.6704, 0.3683)  angle=46.5 deg
  V21  (0.7672, 0.4124)  angle=106.2 deg
  V22  (0.3689, 0.8763)  angle=142.5 deg
  V23  (0.3963, 0.3121)  angle=176.0 deg
  V24  (0.3689, 0.5846)  angle=35.4 deg
  V25  (0.3086, 0.6554)  angle=62.0 deg
  V26  (0.3248, 0.6951)  angle=74.8 deg
  V27  (0.3711, 0.6894)  angle=57.6 deg
  V28  (0.3912, 0.6471)  angle=75.3 deg
  V29  (0.3194, 0.5909)  angle=75.3 deg
  V30  (0.3003, 0.6064)  angle=172.3 deg
  V31  (0.3689, 0.5645)  angle=174.9 deg
  V32  (0.2765, 0.6119)  angle=56.8 deg
  V33  (0.2717, 0.6641)  angle=65.8 deg
  V34  (0.3101, 0.6858)  angle=61.8 deg
  V35  (0.3485, 0.6615)  angle=54.0 deg
  V36  (0.3509, 0.6222)  angle=57.9 deg
  V37  (0.3110, 0.5935)  angle=40.6 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
    }
),
