=== SAVED CAST: selfish_26_s101 ===
Normalized points: 60
Raw points: N/A

--- NORMALIZED STROKE POINTS (x, y in [0,1], top-left origin) ---
  [ 0]  (0.6272, 0.0000)
  [ 1]  (0.7022, 0.2593)
  [ 2]  (0.7870, 0.5155)
  [ 3]  (0.8599, 0.7713)
  [ 4]  (0.6164, 0.7860)
  [ 5]  (0.3806, 0.7017)
  [ 6]  (0.6272, 0.2553)
  [ 7]  (0.6637, 0.3128)
  [ 8]  (0.6578, 0.3554)
  [ 9]  (0.5935, 0.3777)
  [10]  (0.5926, 0.3299)
  [11]  (0.6379, 0.3243)
  [12]  (0.6272, 0.8542)
  [13]  (0.6272, 0.7155)
  [14]  (0.6298, 0.5768)
  [15]  (0.6374, 0.4382)
  [16]  (0.6339, 0.2997)
  [17]  (0.6128, 0.1637)
  [18]  (0.6272, 0.2990)
  [19]  (0.6659, 0.3241)
  [20]  (0.6954, 0.3628)
  [21]  (0.6932, 0.3993)
  [22]  (0.6534, 0.3957)
  [23]  (0.6776, 0.3606)
  [24]  (0.6272, 0.5988)
  [25]  (0.6582, 0.6361)
  [26]  (0.6799, 0.6796)
  [27]  (0.6384, 0.6660)
  [28]  (0.6392, 0.6316)
  [29]  (0.6812, 0.6205)
  [30]  (0.6272, 0.4906)
  [31]  (0.5298, 0.4940)
  [32]  (0.4324, 0.4940)
  [33]  (0.3349, 0.4940)
  [34]  (0.2375, 0.4908)
  [35]  (0.1401, 0.4871)
  [36]  (0.6272, 0.6171)
  [37]  (0.6362, 0.6416)
  [38]  (0.6441, 0.6665)
  [39]  (0.6464, 0.6801)
  [40]  (0.6426, 0.6587)
  [41]  (0.6671, 0.6496)
  [42]  (0.6272, 0.6496)
  [43]  (0.6452, 0.6633)
  [44]  (0.6471, 0.6687)
  [45]  (0.6254, 0.6620)
  [46]  (0.6127, 0.6526)
  [47]  (0.6272, 0.6352)
  [48]  (0.6272, 0.6352)
  [49]  (0.6420, 0.6620)
  [50]  (0.6214, 0.6638)
  [51]  (0.5911, 0.6588)
  [52]  (0.5971, 0.6470)
  [53]  (0.6235, 0.6315)
  [54]  (0.6272, 1.0000)
  [55]  (0.4685, 0.7540)
  [56]  (0.4419, 0.5063)
  [57]  (0.7264, 0.5808)
  [58]  (0.5840, 0.3326)
  [59]  (0.4682, 0.0627)

--- KEY VERTICES (corners with angle < 120 degrees) ---
  V0  (0.8599, 0.7713)  angle=102.4 deg
  V1  (0.3806, 0.7017)  angle=99.2 deg
  V2  (0.6272, 0.2553)  angle=118.6 deg
  V3  (0.6637, 0.3128)  angle=40.4 deg
  V4  (0.6578, 0.3554)  angle=62.9 deg
  V5  (0.5935, 0.3777)  angle=108.0 deg
  V6  (0.5926, 0.3299)  angle=84.0 deg
  V7  (0.6379, 0.3243)  angle=98.3 deg
  V8  (0.6272, 0.8542)  angle=178.8 deg
  V9  (0.6128, 0.1637)  angle=177.2 deg
  V10  (0.6272, 0.2990)  angle=51.0 deg
  V11  (0.6954, 0.3628)  angle=40.7 deg
  V12  (0.6932, 0.3993)  angle=91.8 deg
  V13  (0.6534, 0.3957)  angle=119.4 deg
  V14  (0.6776, 0.3606)  angle=157.4 deg
  V15  (0.6272, 0.5988)  angle=51.7 deg
  V16  (0.6799, 0.6796)  angle=134.7 deg
  V17  (0.6384, 0.6660)  angle=73.1 deg
  V18  (0.6392, 0.6316)  angle=74.0 deg
  V19  (0.6812, 0.6205)  angle=97.9 deg
  V20  (0.6272, 0.4906)  angle=69.4 deg
  V21  (0.1401, 0.4871)  angle=167.2 deg
  V22  (0.6272, 0.6171)  angle=54.9 deg
  V23  (0.6464, 0.6801)  angle=179.5 deg
  V24  (0.6426, 0.6587)  angle=79.8 deg
  V25  (0.6671, 0.6496)  angle=159.6 deg
  V26  (0.6272, 0.6496)  angle=142.9 deg
  V27  (0.6452, 0.6633)  angle=33.7 deg
  V28  (0.6471, 0.6687)  angle=126.3 deg
  V29  (0.6127, 0.6526)  angle=93.3 deg
  V30  (0.6272, 0.6352)  angle=127.6 deg
  V31  (0.6272, 0.6352)  angle=121.0 deg
  V32  (0.6420, 0.6620)  angle=114.1 deg
  V33  (0.5911, 0.6588)  angle=107.6 deg
  V34  (0.5971, 0.6470)  angle=32.6 deg
  V35  (0.6235, 0.6315)  angle=119.9 deg
  V36  (0.6272, 1.0000)  angle=147.7 deg
  V37  (0.4419, 0.5063)  angle=110.8 deg
  V38  (0.7264, 0.5808)  angle=134.5 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
    }
),
