first commit of new abinstall function