more refactoring; dont fix intrinsics