as usual, a stunning number of fixes required