events adapter