class_docstr: a immutable object holding a source code fragment,
  possibly deindenting it.
docstr: return new source object with trailing
  and leading blank lines removed.
docstr_tok: ["return","new","source","object","with","trailing","and","leading","blank","lines","removed","."]
code: def strip(self):
      """return new source object with trailing
      and leading blank lines removed.
      """
      start, end = 0, len(self)
      while start < end and not self.lines[start].strip():
          start += 1
      while end > start and not self.lines[end - 1].strip():
          end -= 1
      source = Source()
      source.lines[:] = self.lines[start:end]
      return source
  
imports: from __future__ import generators
  from bisect import bisect_right
  import sys
  import inspect, tokenize
  import py
  from types import ModuleType
label_desc: Use image node_id 6 for calling the Source obj's underlying member method code with example usage: obj.strip() and returns: source