text: # This file was automatically generated by SWIG (http://www.swig.org).
  # Version 2.0.9
  #
  # Do not make changes to this file unless you know what you are doing--modify
  # the SWIG interface file instead.
  
  
  
  from sys import version_info
  if version_info >= (2,6,0):
      def swig_import_helper():
          from os.path import dirname
          import imp
          fp = None
          try:
              fp, pathname, description = imp.find_module('_bl2', [dirname(__file__)])
          except ImportError:
              import _bl2
              return _bl2
          if fp is not None:
              try:
                  _mod = imp.load_module('_bl2', fp, pathname, description)
              finally:
                  fp.close()
              return _mod
      _bl2 = swig_import_helper()
      del swig_import_helper
  else:
      import _bl2
  del version_info
  try:
      _swig_property = property
  except NameError:
      pass # Python < 2.2 doesn't have 'property'.
  def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
      if (name == "thisown"): return self.this.own(value)
      if (name == "this"):
          if type(value).__name__ == 'SwigPyObject':
              self.__dict__[name] = value
              return
      method = class_type.__swig_setmethods__.get(name,None)
      if method: return method(self,value)
      if (not static):
          self.__dict__[name] = value
      else:
          raise AttributeError("You cannot add attributes to %s" % self)
  
  def _swig_setattr(self,class_type,name,value):
      return _swig_setattr_nondynamic(self,class_type,name,value,0)
  
  def _swig_getattr(self,class_type,name):
      if (name == "thisown"): return self.this.own()
      method = class_type.__swig_getmethods__.get(name,None)
      if method: return method(self)
      raise AttributeError(name)
  
  def _swig_repr(self):
      try: strthis = "proxy of " + self.this.__repr__()
      except: strthis = ""
      return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
  
  try:
      _object = object
      _newclass = 1
  except AttributeError:
      class _object : pass
      _newclass = 0
  
  
  BL_DIM = _bl2.BL_DIM
  
  def StartParallel():
    return _bl2.StartParallel()
  StartParallel = _bl2.StartParallel
  
  def rank():
    return _bl2.rank()
  rank = _bl2.rank
  
  def size():
    return _bl2.size()
  size = _bl2.size
  
  def ReduceRealMax(*args):
    return _bl2.ReduceRealMax(*args)
  ReduceRealMax = _bl2.ReduceRealMax
  
  def open_ifstream(*args):
    return _bl2.open_ifstream(*args)
  open_ifstream = _bl2.open_ifstream
  
  def open_ofstream(*args):
    return _bl2.open_ofstream(*args)
  open_ofstream = _bl2.open_ofstream
  
  def close_ofstream(*args):
    return _bl2.close_ofstream(*args)
  close_ofstream = _bl2.close_ofstream
  
  def close_ifstream(*args):
    return _bl2.close_ifstream(*args)
  close_ifstream = _bl2.close_ifstream
  class IntVect(_object):
      __swig_setmethods__ = {}
      __setattr__ = lambda self, name, value: _swig_setattr(self, IntVect, name, value)
      __swig_getmethods__ = {}
      __getattr__ = lambda self, name: _swig_getattr(self, IntVect, name)
      __repr__ = _swig_repr
      def __init__(self, *args): 
          this = _bl2.new_IntVect(*args)
          try: self.this.append(this)
          except: self.this = this
      def shift(self, *args): return _bl2.IntVect_shift(self, *args)
      def writeOn(self, *args): return _bl2.IntVect_writeOn(self, *args)
      def read(self, *args): return _bl2.IntVect_read(self, *args)
      def __getitem__(self, *args): return _bl2.IntVect___getitem__(self, *args)
      def __len__(self): return _bl2.IntVect___len__(self)
      def __setitem__(self, *args): return _bl2.IntVect___setitem__(self, *args)
      def __cmp__(self, *args): return _bl2.IntVect___cmp__(self, *args)
      def __str__(self): return _bl2.IntVect___str__(self)
      __swig_getmethods__["TheZeroVector"] = lambda x: _bl2.IntVect_TheZeroVector
      if _newclass:TheZeroVector = staticmethod(_bl2.IntVect_TheZeroVector)
      __swig_getmethods__["TheUnitVector"] = lambda x: _bl2.IntVect_TheUnitVector
      if _newclass:TheUnitVector = staticmethod(_bl2.IntVect_TheUnitVector)
      __swig_getmethods__["TheNodeVector"] = lambda x: _bl2.IntVect_TheNodeVector
      if _newclass:TheNodeVector = staticmethod(_bl2.IntVect_TheNodeVector)
      __swig_getmethods__["TheCellVector"] = lambda x: _bl2.IntVect_TheCellVector
      if _newclass:TheCellVector = staticmethod(_bl2.IntVect_TheCellVector)
      __swig_destroy__ = _bl2.delete_IntVect
      __del__ = lambda self : None;
  IntVect_swigregister = _bl2.IntVect_swigregister
  IntVect_swigregister(IntVect)
  
  def IntVect_TheZeroVector():
    return _bl2.IntVect_TheZeroVector()
  IntVect_TheZeroVector = _bl2.IntVect_TheZeroVector
  
  def IntVect_TheUnitVector():
    return _bl2.IntVect_TheUnitVector()
  IntVect_TheUnitVector = _bl2.IntVect_TheUnitVector
  
  def IntVect_TheNodeVector():
    return _bl2.IntVect_TheNodeVector()
  IntVect_TheNodeVector = _bl2.IntVect_TheNodeVector
  
  def IntVect_TheCellVector():
    return _bl2.IntVect_TheCellVector()
  IntVect_TheCellVector = _bl2.IntVect_TheCellVector
  
  class Box(_object):
      __swig_setmethods__ = {}
      __setattr__ = lambda self, name, value: _swig_setattr(self, Box, name, value)
      __swig_getmethods__ = {}
      __getattr__ = lambda self, name: _swig_getattr(self, Box, name)
      __repr__ = _swig_repr
      def __init__(self, *args): 
          this = _bl2.new_Box(*args)
          try: self.this.append(this)
          except: self.this = this
      def smallEnd(self): return _bl2.Box_smallEnd(self)
      def bigEnd(self): return _bl2.Box_bigEnd(self)
      def type(self): return _bl2.Box_type(self)
      def size(self): return _bl2.Box_size(self)
      def ok(self): return _bl2.Box_ok(self)
      def contains(self, *args): return _bl2.Box_contains(self, *args)
      def intersects(self, *args): return _bl2.Box_intersects(self, *args)
      def sameSize(self, *args): return _bl2.Box_sameSize(self, *args)
      def sameType(self, *args): return _bl2.Box_sameType(self, *args)
      def cellCentered(self): return _bl2.Box_cellCentered(self)
      def numPts(self): return _bl2.Box_numPts(self)
      def volume(self): return _bl2.Box_volume(self)
      def index(self, *args): return _bl2.Box_index(self, *args)
      def setSmall(self, *args): return _bl2.Box_setSmall(self, *args)
      def setBig(self, *args): return _bl2.Box_setBig(self, *args)
      def shift(self, *args): return _bl2.Box_shift(self, *args)
      def shiftHalf(self, *args): return _bl2.Box_shiftHalf(self, *args)
      def convert(self, *args): return _bl2.Box_convert(self, *args)
      def surroundingNodes(self, *args): return _bl2.Box_surroundingNodes(self, *args)
      def enclosedCells(self, *args): return _bl2.Box_enclosedCells(self, *args)
      def minBox(self, *args): return _bl2.Box_minBox(self, *args)
      def chop(self, *args): return _bl2.Box_chop(self, *args)
      def grow(self, *args): return _bl2.Box_grow(self, *args)
      def growLo(self, *args): return _bl2.Box_growLo(self, *args)
      def growHi(self, *args): return _bl2.Box_growHi(self, *args)
      def refine(self, *args): return _bl2.Box_refine(self, *args)
      def coarsen(self, *args): return _bl2.Box_coarsen(self, *args)
      def next(self, *args): return _bl2.Box_next(self, *args)
      def read(self, *args): return _bl2.Box_read(self, *args)
      def write(self, *args): return _bl2.Box_write(self, *args)
      def __and__(self, *args): return _bl2.Box___and__(self, *args)
      def writeOn(self, *args): return _bl2.Box_writeOn(self, *args)
      def __str__(self): return _bl2.Box___str__(self)
      def __cmp__(self, *args): return _bl2.Box___cmp__(self, *args)
      __swig_destroy__ = _bl2.delete_Box
      __del__ = lambda self : None;
  Box_swigregister = _bl2.Box_swigregister
  Box_swigregister(Box)
  
  class FArrayBox(_object):
      __swig_setmethods__ = {}
      __setattr__ = lambda self, name, value: _swig_setattr(self, FArrayBox, name, value)
      __swig_getmethods__ = {}
      __getattr__ = lambda self, name: _swig_getattr(self, FArrayBox, name)
      __repr__ = _swig_repr
      def __init__(self, *args): 
          this = _bl2.new_FArrayBox(*args)
          try: self.this.append(this)
          except: self.this = this
      __swig_destroy__ = _bl2.delete_FArrayBox
      __del__ = lambda self : None;
      def box(self): return _bl2.FArrayBox_box(self)
      def nComp(self): return _bl2.FArrayBox_nComp(self)
      def writeOn(self, *args): return _bl2.FArrayBox_writeOn(self, *args)
      def norm(self, *args): return _bl2.FArrayBox_norm(self, *args)
      def copy(self, *args): return _bl2.FArrayBox_copy(self, *args)
      def readFrom(self, *args): return _bl2.FArrayBox_readFrom(self, *args)
      def __str__(self): return _bl2.FArrayBox___str__(self)
      def setVal(self, *args): return _bl2.FArrayBox_setVal(self, *args)
      def min(self, *args): return _bl2.FArrayBox_min(self, *args)
      def max(self, *args): return _bl2.FArrayBox_max(self, *args)
      def minIndex(self, *args): return _bl2.FArrayBox_minIndex(self, *args)
      def maxIndex(self, *args): return _bl2.FArrayBox_maxIndex(self, *args)
      def sum(self, *args): return _bl2.FArrayBox_sum(self, *args)
      def get_array(self): return _bl2.FArrayBox_get_array(self)
      def valIV(self, *args): return _bl2.FArrayBox_valIV(self, *args)
      def setValIV(self, *args): return _bl2.FArrayBox_setValIV(self, *args)
      def floor(self, *args): return _bl2.FArrayBox_floor(self, *args)
      def __add__(self, *args): return _bl2.FArrayBox___add__(self, *args)
      def __sub__(self, *args): return _bl2.FArrayBox___sub__(self, *args)
      def __mul__(self, *args): return _bl2.FArrayBox___mul__(self, *args)
      def __div__(self, *args): return _bl2.FArrayBox___div__(self, *args)
  FArrayBox_swigregister = _bl2.FArrayBox_swigregister
  FArrayBox_swigregister(FArrayBox)
  
  class BoxArray(_object):
      __swig_setmethods__ = {}
      __setattr__ = lambda self, name, value: _swig_setattr(self, BoxArray, name, value)
      __swig_getmethods__ = {}
      __getattr__ = lambda self, name: _swig_getattr(self, BoxArray, name)
      __repr__ = _swig_repr
      __swig_destroy__ = _bl2.delete_BoxArray
      __del__ = lambda self : None;
      def __init__(self, *args): 
          this = _bl2.new_BoxArray(*args)
          try: self.this.append(this)
          except: self.this = this
      def resize(self, *args): return _bl2.BoxArray_resize(self, *args)
      def define(self, *args): return _bl2.BoxArray_define(self, *args)
      def writeOn(self, *args): return _bl2.BoxArray_writeOn(self, *args)
      def readFrom(self, *args): return _bl2.BoxArray_readFrom(self, *args)
      def size(self): return _bl2.BoxArray_size(self)
      def get(self, *args): return _bl2.BoxArray_get(self, *args)
      def set(self, *args): return _bl2.BoxArray_set(self, *args)
      def maxSize(self, *args): return _bl2.BoxArray_maxSize(self, *args)
      def ok(self): return _bl2.BoxArray_ok(self)
      def isDisjoint(self): return _bl2.BoxArray_isDisjoint(self)
      def contains(self, *args): return _bl2.BoxArray_contains(self, *args)
      def minimalBox(self): return _bl2.BoxArray_minimalBox(self)
      def refine(self, *args): return _bl2.BoxArray_refine(self, *args)
      def coarsen(self, *args): return _bl2.BoxArray_coarsen(self, *args)
      def __getitem__(self, *args): return _bl2.BoxArray___getitem__(self, *args)
      def complementIn(self, *args): return _bl2.BoxArray_complementIn(self, *args)
      def __and__(self, *args): return _bl2.BoxArray___and__(self, *args)
      def __or__(self, *args): return _bl2.BoxArray___or__(self, *args)
      def __len__(self): return _bl2.BoxArray___len__(self)
      def __str__(self): return _bl2.BoxArray___str__(self)
      def __cmp__(self, *args): return _bl2.BoxArray___cmp__(self, *args)
  BoxArray_swigregister = _bl2.BoxArray_swigregister
  BoxArray_swigregister(BoxArray)
  
  class SwigPyIterator(_object):
      __swig_setmethods__ = {}
      __setattr__ = lambda self, name, value: _swig_setattr(self, SwigPyIterator, name, value)
      __swig_getmethods__ = {}
      __getattr__ = lambda self, name: _swig_getattr(self, SwigPyIterator, name)
      def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
      __repr__ = _swig_repr
      __swig_destroy__ = _bl2.delete_SwigPyIterator
      __del__ = lambda self : None;
      def value(self): return _bl2.SwigPyIterator_value(self)
      def incr(self, n=1): return _bl2.SwigPyIterator_incr(self, n)
      def decr(self, n=1): return _bl2.SwigPyIterator_decr(self, n)
      def distance(self, *args): return _bl2.SwigPyIterator_distance(self, *args)
      def equal(self, *args): return _bl2.SwigPyIterator_equal(self, *args)
      def copy(self): return _bl2.SwigPyIterator_copy(self)
      def next(self): return _bl2.SwigPyIterator_next(self)
      def __next__(self): return _bl2.SwigPyIterator___next__(self)
      def previous(self): return _bl2.SwigPyIterator_previous(self)
      def advance(self, *args): return _bl2.SwigPyIterator_advance(self, *args)
      def __eq__(self, *args): return _bl2.SwigPyIterator___eq__(self, *args)
      def __ne__(self, *args): return _bl2.SwigPyIterator___ne__(self, *args)
      def __iadd__(self, *args): return _bl2.SwigPyIterator___iadd__(self, *args)
      def __isub__(self, *args): return _bl2.SwigPyIterator___isub__(self, *args)
      def __add__(self, *args): return _bl2.SwigPyIterator___add__(self, *args)
      def __sub__(self, *args): return _bl2.SwigPyIterator___sub__(self, *args)
      def __iter__(self): return self
  SwigPyIterator_swigregister = _bl2.SwigPyIterator_swigregister
  SwigPyIterator_swigregister(SwigPyIterator)
  
  class MultiFab(_object):
      __swig_setmethods__ = {}
      __setattr__ = lambda self, name, value: _swig_setattr(self, MultiFab, name, value)
      __swig_getmethods__ = {}
      __getattr__ = lambda self, name: _swig_getattr(self, MultiFab, name)
      __repr__ = _swig_repr
      def __init__(self, *args): 
          this = _bl2.new_MultiFab(*args)
          try: self.this.append(this)
          except: self.this = this
      __swig_destroy__ = _bl2.delete_MultiFab
      __del__ = lambda self : None;
      def define(self, *args): return _bl2.MultiFab_define(self, *args)
      def ok(self): return _bl2.MultiFab_ok(self)
      def nGrow(self): return _bl2.MultiFab_nGrow(self)
      def boxArray(self): return _bl2.MultiFab_boxArray(self)
      def size(self): return _bl2.MultiFab_size(self)
      def nComp(self): return _bl2.MultiFab_nComp(self)
      def min(self, *args): return _bl2.MultiFab_min(self, *args)
      def max(self, *args): return _bl2.MultiFab_max(self, *args)
      def copy(self, *args): return _bl2.MultiFab_copy(self, *args)
      def setVal(self, *args): return _bl2.MultiFab_setVal(self, *args)
      def setBndry(self, *args): return _bl2.MultiFab_setBndry(self, *args)
      def FillBoundary(self, *args): return _bl2.MultiFab_FillBoundary(self, *args)
      def sum(self, comp=0): return _bl2.MultiFab_sum(self, comp)
      def writeOut(self, *args): return _bl2.MultiFab_writeOut(self, *args)
      def copyToFab(self, *args): return _bl2.MultiFab_copyToFab(self, *args)
      def copyComp(self, *args): return _bl2.MultiFab_copyComp(self, *args)
      def __getitem__(self, *args): return _bl2.MultiFab___getitem__(self, *args)
  MultiFab_swigregister = _bl2.MultiFab_swigregister
  MultiFab_swigregister(MultiFab)
  
  class RealBox(_object):
      __swig_setmethods__ = {}
      __setattr__ = lambda self, name, value: _swig_setattr(self, RealBox, name, value)
      __swig_getmethods__ = {}
      __getattr__ = lambda self, name: _swig_getattr(self, RealBox, name)
      __repr__ = _swig_repr
      def __init__(self, *args): 
          this = _bl2.new_RealBox(*args)
          try: self.this.append(this)
          except: self.this = this
      __swig_destroy__ = _bl2.delete_RealBox
      __del__ = lambda self : None;
  RealBox_swigregister = _bl2.RealBox_swigregister
  RealBox_swigregister(RealBox)
  
  class Geometry(_object):
      __swig_setmethods__ = {}
      __setattr__ = lambda self, name, value: _swig_setattr(self, Geometry, name, value)
      __swig_getmethods__ = {}
      __getattr__ = lambda self, name: _swig_getattr(self, Geometry, name)
      __repr__ = _swig_repr
      def __init__(self, *args): 
          this = _bl2.new_Geometry(*args)
          try: self.this.append(this)
          except: self.this = this
      def FillPeriodicBoundary(self, *args): return _bl2.Geometry_FillPeriodicBoundary(self, *args)
      __swig_destroy__ = _bl2.delete_Geometry
      __del__ = lambda self : None;
  Geometry_swigregister = _bl2.Geometry_swigregister
  Geometry_swigregister(Geometry)
  
  # This file is compatible with both classic and new-style classes.
  
  
  