code: def bindlines(self, owner=None, own=None):
      if not owner:
          owner = 0
  
      if isinstance(owner, string_types):
          owner = [owner]
      elif not isinstance(owner, collections.Iterable):
          owner = [owner]
  
      if not own:
          own = range(len(owner))
  
      if isinstance(own, string_types):
          own = [own]
      elif not isinstance(own, collections.Iterable):
          own = [own]
  
      for lineowner, lineown in zip(owner, own):
          if isinstance(lineowner, string_types):
              lownerref = getattr(self._owner.lines, lineowner)
          else:
              lownerref = self._owner.lines[lineowner]
  
          if isinstance(lineown, string_types):
              lownref = getattr(self.lines, lineown)
          else:
              lownref = self.lines[lineown]
  
          lownref.addbinding(lownerref)
  
      return self
  
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import collections
  import operator
  import sys
  from .utils.py3 import map, range, zip, with_metaclass, string_types
  from .utils import DotDict
  from .lineroot import LineRoot, LineSingle
  from .linebuffer import LineActions, LineNum
  from .lineseries import LineSeries, LineSeriesMaker
  from .dataseries import DataSeries
  from .None import metabase
label_desc: Use image node_id 8 for calling the LineIterator obj's underlying member method code with example usage: obj.bindlines(owner, own) and returns: self