code: def pile(args):
      
      from jcvi.utils.grouper import Grouper
  
      p = OptionParser(pile.__doc__)
      p.add_option("--minOverlap", default=0, type="int",
                   help="Minimum overlap required [default: %default]")
      opts, args = p.parse_args(args)
  
      if len(args) != 2:
          sys.exit(not p.print_help())
  
      abedfile, bbedfile = args
      iw = intersectBed_wao(abedfile, bbedfile, minOverlap=opts.minOverlap)
      groups = Grouper()
      for a, b in iw:
          groups.join(a.accn, b.accn)
  
      ngroups = 0
      for group in groups:
          if len(group) > 1:
              ngroups += 1
              print("|".join(group))
  
      logging.debug("A total of {0} piles (>= 2 members)".format(ngroups))
docs: %prog pile abedfile bbedfile > piles
  
      Call intersectBed on two bedfiles.