added back precompiler in the initializer