@winzou Looks like we must keep these interface. I hate this code as much as you do but I don't know is there other work around. (Don't use interface?)