             body.unshift c
             return c.id
 
+  catchClauses = [] # TODO make this more precise
+
   estraverse.replace c,
     enter: (c, parent) ->
       switch c.type

              callee: { type: 'Identifier', name: 'isinstance' }
              arguments: [c.left, right]
            }
  c

ensure_block = (c) ->

              property: { type: 'Identifier', name: 'lower' }
            }), @)
            when_(match.any, (->), @))
        when 'CatchClause'
          catchClauses.push(c)
          return

    leave: (c, parent) ->
      switch c.type
