s (this latter is tallied in cur[2]).
[ 2] = Total time spent in subfunctions, excluding time executing the
       frame's function (this latter is tallied in cur[1]).
[-3] = Name of the function that corresponds to this frame.
[-2] = Actual frame that we correspond to (used to sync exception handling).
[-1] = Our parent 6-tuple (corresponds to frame.f_back).

Timing data for each function is stored as a 5-tuple in the dictionary
self.timings[].  The index is always the name stored in self.cur[-3].
The following are the definitions of the members:

[0] = The number of times this function was called, not counting direct
      or indirect recursion,
[1] = Number of times this function appears on the stack, minus one
[2] = Total time spent internal to this function
[3] = Cumulative time that this function was present on the stack.  In
      non-recursive functions, this is the total execution time from start
      to finish of each invocation of a function, including time spent in
      all subfunctions.
[4] = A dictionary indicating for each function name, the number of times
      it was called by us.
r