proper precompiling