precompiling to public