fixed when_some