support for advanced compilation