renamed extraction to payload_generator