def METHOD_NAME(self):
    def draw_circle(event, x, y, flags, param):
        if event == cv2.EVENT_LBUTTONDBLCLK:
            cv2.circle(
                self.overlay,
                (x, int(y - self.side_img.shape[0])),
                self.circle_scale,
                self.color_lst[self.bp_cnt],
                -1,
            )
            cv2.putText(
                self.overlay,
                str(self.bp_cnt + 1),
                (x + 4, int(y - self.side_img.shape[0])),
                cv2.FONT_HERSHEY_SIMPLEX,
                self.font_size,
                self.color_lst[self.bp_cnt],
                2,
            )
            self.cord_written = True
    for bp_cnt, bp_name in enumerate(self.bp_list):
        self.cord_written = False
        self.bp_cnt = bp_cnt
        self.side_img = np.zeros(
            (int(self.img_height / 4), self.img_width, 3), np.uint8
        )
        cv2.putText(
            self.side_img,
            "Double left click on body part {}.".format(bp_name),
            (10, 50),
            self.font,
            self.font_size,
            self.color_lst[bp_cnt],
            2,
        )
        img_concat = cv2.vconcat([self.side_img, self.overlay])
        cv2.namedWindow("Define pose", cv2.WINDOW_NORMAL)
        cv2.imshow("Define pose", img_concat)
        while not self.cord_written:
            cv2.setMouseCallback("Define pose", draw_circle)
            img_concat = cv2.vconcat([self.side_img, self.overlay])
            cv2.namedWindow("Define pose", cv2.WINDOW_NORMAL)
            cv2.imshow("Define pose", img_concat)
            cv2.waitKey(1)
        cv2.destroyWindow("Define pose")
    self.save()