with decoherence