bracket abstraction