Expose generate()