add extra binary generation function