add comments to explain offset_x, offset_y