added generate_manifest util