published daemonad, hmonoid, hfunctor