better angular integration