database and precompile