code: def __exit__(self, exc_type, exc_val, exc_tb):
      self.end = timeit.default_timer()
      self.elapsed = self.end - self.start
      return self.elapsed
  
imports: import functools
  import math
  import numbers
  import random
  import sys
  import timeit
  import warnings
  from collections import defaultdict
  from contextlib import contextmanager
  from itertools import zip_longest
  import numpy
  import torch
  from pyro.poutine.util import site_is_subsample
label_desc: Use image node_id 2 for calling the timed obj's underlying member method code with example usage: obj.__exit__(exc_type, exc_val, exc_tb) and returns: self