Strict osum/oproduct