def normal_ordered_form(expr, independent=False, recursive_limit=10, _recursive_depth=0):
 if (_recursive_depth > recursive_limit):
  warnings.warn('Too many recursions, aborting')
  return expr
 if isinstance(expr, Add):
  return _normal_ordered_form_terms(expr, recursive_limit=recursive_limit, _recursive_depth=_recursive_depth, independent=independent)
 elif isinstance(expr, Mul):
  return _normal_ordered_form_factor(expr, recursive_limit=recursive_limit, _recursive_depth=_recursive_depth, independent=independent)
 else:
  return expr

def normal_ordered_form ( expr , independent = False , recursive_limit = 10 , _recursive_depth = 0 ) : if ( _recursive_depth > recursive_limit ) : warnings . warn ( 'Too many recursions, aborting' ) return expr if isinstance ( expr , Add ) : return _normal_ordered_form_terms ( expr , recursive_limit = recursive_limit , _recursive_depth = _recursive_depth , independent = independent ) elif isinstance ( expr , Mul ) : return _normal_ordered_form_factor ( expr , recursive_limit = recursive_limit , _recursive_depth = _recursive_depth , independent = independent ) else : return expr
write an expression with bosonic or fermionic operators on normal ordered form .