call compile instead