better ysevent + yscontract
better event + fixed provider