Add advanced compile