add context tracking