adding utility for composing generators