since flatmap is not hot and reified, okay to use dochan