setting contexts instead of direct assignment