mostly tweaking three_info