doesn't getcontext return a reference? I mean what's the purpose of calling it twice?