Scanner decoupled from Generator