def reduce_order_meijer(func):
 (nan, nbq, ops1) = _reduce_order(func.an, func.bq, ReduceOrder.meijer_plus, (lambda x: default_sort_key((- x))))
 (nbm, nap, ops2) = _reduce_order(func.bm, func.ap, ReduceOrder.meijer_minus, default_sort_key)
 return (G_Function(nan, nap, nbm, nbq), (ops1 + ops2))

def reduce_order_meijer ( func ) : ( nan , nbq , ops1 ) = _reduce_order ( func . an , func . bq , ReduceOrder . meijer_plus , ( lambda x : default_sort_key ( ( - x ) ) ) ) ( nbm , nap , ops2 ) = _reduce_order ( func . bm , func . ap , ReduceOrder . meijer_minus , default_sort_key ) return ( G_Function ( nan , nap , nbm , nbq ) , ( ops1 + ops2 ) )
given the meijer g function parameters .