Handle basic ASI

Theoretically this should cover most of the cases. @jkroso let me know if I managed to miss anything.