Not related to this PR, but how do you feel about changing the GetContext so it doesn't set context and then set the context explicitly where it should be? I think the current paradigm is easier to implement but harder to follow.