delegation with json