ASI new implementation