diff --git a/python/tasks/mlb_player.py b/python/tasks/mlb_player.py
index 824380d..83bc8d1 100644
--- a/python/tasks/mlb_player.py
+++ b/python/tasks/mlb_player.py
@@ -1336,11 +1336,33 @@ def kernel_19(o_18):
         ]
     )
 
-def kernel_20(o_18):
+def kernel_20(
+    o_18,
+    o_21=None,
+):
+    if o_21 is None:
+        o_21 = kernel_21()
+
     import cv2
     import numpy
     import os
 
+
+    t1 = numpy.array(o_18['t2']['t7'][0]['keypoints']).reshape(17, -1)
+    t2 = o_18['t2']['t6'][0]
+    t3 = o_18['t2']['t1'][0]['image_canvas'].copy()
+    assert o_18['t2']['t7'][0]['image_id'] == os.path.split(o_18['t2']['t1'][0]['image_name'])[1]
+
+    for i, o2 in enumerate(o_21['p_color']):
+        if i >= 17:
+            print('fuck %d' % i)
+            continue
+        o1 = t1[i, :]
+        cv2.circle(t3, tuple(o1[:2].astype(numpy.int32)), 3, o2, -1)
+    cv2.imwrite('output.jpg', cv2.cvtColor(t3, cv2.COLOR_RGB2BGR))
+    cv2.imwrite('output-v2.jpg', cv2.cvtColor(t2, cv2.COLOR_RGB2BGR))
+
+def kernel_21():
     l_pair = [
         (0, 1), (0, 2), (1, 3), (2, 4),  # Head
         (5, 6), (5, 7), (7, 9), (6, 8), (8, 10),
@@ -1386,16 +1408,36 @@ def kernel_20(o_18):
         #'Neck',
     ]
 
-    t1 = numpy.array(o_18['t2']['t7'][0]['keypoints']).reshape(17, -1)
-    t2 = o_18['t2']['t6'][0]
-    t3 = o_18['t2']['t1'][0]['image_canvas'].copy()
-    assert o_18['t2']['t7'][0]['image_id'] == os.path.split(o_18['t2']['t1'][0]['image_name'])[1]
+    return dict(
+        l_pair=l_pair,
+        p_color=p_color,
+        line_color=line_color,
+    )
 
-    for i, o2 in enumerate(p_color):
-        if i >= 17:
-            print('fuck %d' % i)
-            continue
-        o1 = t1[i, :]
-        cv2.circle(t3, tuple(o1[:2].astype(numpy.int32)), 3, o2, -1)
-    cv2.imwrite('output.jpg', cv2.cvtColor(t3, cv2.COLOR_RGB2BGR))
-    cv2.imwrite('output-v2.jpg', cv2.cvtColor(t2, cv2.COLOR_RGB2BGR))
+def kernel_22(o_18):
+    t1 = o_18['t2']['t7']
+    t2 = [
+        numpy.array(o['keypoints']).reshape(17, 3)
+        for o in t1
+    ]
+    t3 = []
+    for o in t2:
+        t4 = numpy.min(o[0])
+        t5 = numpy.max(o[0])
+        t6 = numpy.min(o[1])
+        t7 = numpy.max(o[1])
+
+        t8 = (t5 - t4) * (t7 - t6)
+        t3.append(t8)
+    t4 = [
+        dict(
+            square=t3[i],
+            keypoints=t2[i],
+            image_name=o['image_id'],
+        )
+        for i, o in enumerate(t1)
+    ]
+
+    return dict(
+        t4=t4,
+    )