extensive revesions and refinements