Splitting generic and custom functionality into two different plugins