merge from icpu2626