Add further details on contexts, refactor