mid-way through re-arranging the isoch function