added algebras over endofunctors