making function precompile