made almost all conditional compilations dynamic