updated compile to allow functions to exist