Fix generate_id