pseudo product

pseudo product