a partial solution to #6