op binder out_name a (out_term st false e) w (out_term st false ee) t cp
| B.Bind (a, B.Abbr v, t) ->
let op, cp = if p then "(", ")" else "", "" in
let a = R.alpha B.mem e a in
let ee = B.push e B.empty a (B.abbr v) in
op binder out_name a (out_term st false e) w (out_term st false ee) t cp
| B.Bind (a, B.Abbr v, t) ->
let op, cp = if p then "(", ")" else "", "" in
let a = R.alpha B.mem e a in
let ee = B.push e B.empty a (B.abbr v) in