# This file was automatically generated by SWIG (http://www.swig.org).
# Version 1.3.33
#
# Don't modify this file, modify the SWIG interface instead.

import _QuantLib
import new
new_instancemethod = new.instancemethod
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__ == 'PySwigObject':
            self.__dict__[name] = value
            return
    method = class_type.__swig_setmethods__.get(name,None)
    if method: return method(self,value)
    if (not static) or hasattr(self,name):
        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,)

import types
try:
    _object = types.ObjectType
    _newclass = 1
except AttributeError:
    class _object : pass
    _newclass = 0
del types


def _swig_setattr_nondynamic_method(set):
    def set_attr(self,name,value):
        if (name == "thisown"): return self.this.own(value)
        if hasattr(self,name) or (name == "this"):
            set(self,name,value)
        else:
            raise AttributeError("You cannot add attributes to %s" % self)
    return set_attr


class PySwigIterator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _QuantLib.delete_PySwigIterator
    __del__ = lambda self : None;
    def value(*args): return _QuantLib.PySwigIterator_value(*args)
    def incr(*args): return _QuantLib.PySwigIterator_incr(*args)
    def decr(*args): return _QuantLib.PySwigIterator_decr(*args)
    def distance(*args): return _QuantLib.PySwigIterator_distance(*args)
    def equal(*args): return _QuantLib.PySwigIterator_equal(*args)
    def copy(*args): return _QuantLib.PySwigIterator_copy(*args)
    def next(*args): return _QuantLib.PySwigIterator_next(*args)
    def previous(*args): return _QuantLib.PySwigIterator_previous(*args)
    def advance(*args): return _QuantLib.PySwigIterator_advance(*args)
    def __eq__(*args): return _QuantLib.PySwigIterator___eq__(*args)
    def __ne__(*args): return _QuantLib.PySwigIterator___ne__(*args)
    def __iadd__(*args): return _QuantLib.PySwigIterator___iadd__(*args)
    def __isub__(*args): return _QuantLib.PySwigIterator___isub__(*args)
    def __add__(*args): return _QuantLib.PySwigIterator___add__(*args)
    def __sub__(*args): return _QuantLib.PySwigIterator___sub__(*args)
    def __iter__(self): return self
PySwigIterator_swigregister = _QuantLib.PySwigIterator_swigregister
PySwigIterator_swigregister(PySwigIterator)
cvar = _QuantLib.cvar
__hexversion__ = cvar.__hexversion__
__version__ = cvar.__version__

Sunday = _QuantLib.Sunday
Monday = _QuantLib.Monday
Tuesday = _QuantLib.Tuesday
Wednesday = _QuantLib.Wednesday
Thursday = _QuantLib.Thursday
Friday = _QuantLib.Friday
Saturday = _QuantLib.Saturday
January = _QuantLib.January
February = _QuantLib.February
March = _QuantLib.March
April = _QuantLib.April
May = _QuantLib.May
June = _QuantLib.June
July = _QuantLib.July
August = _QuantLib.August
September = _QuantLib.September
October = _QuantLib.October
November = _QuantLib.November
December = _QuantLib.December
Days = _QuantLib.Days
Weeks = _QuantLib.Weeks
Months = _QuantLib.Months
Years = _QuantLib.Years
NoFrequency = _QuantLib.NoFrequency
Once = _QuantLib.Once
Annual = _QuantLib.Annual
Semiannual = _QuantLib.Semiannual
EveryFourthMonth = _QuantLib.EveryFourthMonth
Quarterly = _QuantLib.Quarterly
Bimonthly = _QuantLib.Bimonthly
Monthly = _QuantLib.Monthly
Biweekly = _QuantLib.Biweekly
Weekly = _QuantLib.Weekly
Daily = _QuantLib.Daily
class Period(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def length(*args): return _QuantLib.Period_length(*args)
    def units(*args): return _QuantLib.Period_units(*args)
    def frequency(*args): return _QuantLib.Period_frequency(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Period(*args)
        try: self.this.append(this)
        except: self.this = this
    def __str__(*args): return _QuantLib.Period___str__(*args)
    def __repr__(*args): return _QuantLib.Period___repr__(*args)
    def __neg__(*args): return _QuantLib.Period___neg__(*args)
    def __mul__(*args): return _QuantLib.Period___mul__(*args)
    def __rmul__(*args): return _QuantLib.Period___rmul__(*args)
    def __cmp__(*args): return _QuantLib.Period___cmp__(*args)
    __swig_destroy__ = _QuantLib.delete_Period
    __del__ = lambda self : None;
Period_swigregister = _QuantLib.Period_swigregister
Period_swigregister(Period)

class PeriodVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.PeriodVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.PeriodVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.PeriodVector___len__(*args)
    def pop(*args): return _QuantLib.PeriodVector_pop(*args)
    def __getslice__(*args): return _QuantLib.PeriodVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.PeriodVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.PeriodVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.PeriodVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.PeriodVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.PeriodVector___setitem__(*args)
    def append(*args): return _QuantLib.PeriodVector_append(*args)
    def empty(*args): return _QuantLib.PeriodVector_empty(*args)
    def size(*args): return _QuantLib.PeriodVector_size(*args)
    def clear(*args): return _QuantLib.PeriodVector_clear(*args)
    def swap(*args): return _QuantLib.PeriodVector_swap(*args)
    def get_allocator(*args): return _QuantLib.PeriodVector_get_allocator(*args)
    def begin(*args): return _QuantLib.PeriodVector_begin(*args)
    def end(*args): return _QuantLib.PeriodVector_end(*args)
    def rbegin(*args): return _QuantLib.PeriodVector_rbegin(*args)
    def rend(*args): return _QuantLib.PeriodVector_rend(*args)
    def pop_back(*args): return _QuantLib.PeriodVector_pop_back(*args)
    def erase(*args): return _QuantLib.PeriodVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_PeriodVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.PeriodVector_push_back(*args)
    def front(*args): return _QuantLib.PeriodVector_front(*args)
    def back(*args): return _QuantLib.PeriodVector_back(*args)
    def assign(*args): return _QuantLib.PeriodVector_assign(*args)
    def resize(*args): return _QuantLib.PeriodVector_resize(*args)
    def insert(*args): return _QuantLib.PeriodVector_insert(*args)
    def reserve(*args): return _QuantLib.PeriodVector_reserve(*args)
    def capacity(*args): return _QuantLib.PeriodVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_PeriodVector
    __del__ = lambda self : None;
PeriodVector_swigregister = _QuantLib.PeriodVector_swigregister
PeriodVector_swigregister(PeriodVector)

class Date(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def weekday(*args): return _QuantLib.Date_weekday(*args)
    def dayOfMonth(*args): return _QuantLib.Date_dayOfMonth(*args)
    def dayOfYear(*args): return _QuantLib.Date_dayOfYear(*args)
    def month(*args): return _QuantLib.Date_month(*args)
    def year(*args): return _QuantLib.Date_year(*args)
    def serialNumber(*args): return _QuantLib.Date_serialNumber(*args)
    isLeap = staticmethod(_QuantLib.Date_isLeap)
    minDate = staticmethod(_QuantLib.Date_minDate)
    maxDate = staticmethod(_QuantLib.Date_maxDate)
    todaysDate = staticmethod(_QuantLib.Date_todaysDate)
    endOfMonth = staticmethod(_QuantLib.Date_endOfMonth)
    isEndOfMonth = staticmethod(_QuantLib.Date_isEndOfMonth)
    nextWeekday = staticmethod(_QuantLib.Date_nextWeekday)
    nthWeekday = staticmethod(_QuantLib.Date_nthWeekday)
    def __add__(*args): return _QuantLib.Date___add__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Date(*args)
        try: self.this.append(this)
        except: self.this = this
    def weekdayNumber(*args): return _QuantLib.Date_weekdayNumber(*args)
    def __str__(*args): return _QuantLib.Date___str__(*args)
    def __repr__(*args): return _QuantLib.Date___repr__(*args)
    def ISO(*args): return _QuantLib.Date_ISO(*args)
    def __sub__(*args): return _QuantLib.Date___sub__(*args)
    def __cmp__(*args): return _QuantLib.Date___cmp__(*args)
    def __nonzero__(*args): return _QuantLib.Date___nonzero__(*args)
    def __hash__(*args): return _QuantLib.Date___hash__(*args)
    __swig_destroy__ = _QuantLib.delete_Date
    __del__ = lambda self : None;
Date_swigregister = _QuantLib.Date_swigregister
Date_swigregister(Date)
Date_isLeap = _QuantLib.Date_isLeap
Date_minDate = _QuantLib.Date_minDate
Date_maxDate = _QuantLib.Date_maxDate
Date_todaysDate = _QuantLib.Date_todaysDate
Date_endOfMonth = _QuantLib.Date_endOfMonth
Date_isEndOfMonth = _QuantLib.Date_isEndOfMonth
Date_nextWeekday = _QuantLib.Date_nextWeekday
Date_nthWeekday = _QuantLib.Date_nthWeekday

class DateParser(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    parse = staticmethod(_QuantLib.DateParser_parse)
    parseISO = staticmethod(_QuantLib.DateParser_parseISO)
    def __init__(self, *args): 
        this = _QuantLib.new_DateParser(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DateParser
    __del__ = lambda self : None;
DateParser_swigregister = _QuantLib.DateParser_swigregister
DateParser_swigregister(DateParser)
DateParser_parse = _QuantLib.DateParser_parse
DateParser_parseISO = _QuantLib.DateParser_parseISO

class PeriodParser(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    parse = staticmethod(_QuantLib.PeriodParser_parse)
    def __init__(self, *args): 
        this = _QuantLib.new_PeriodParser(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_PeriodParser
    __del__ = lambda self : None;
PeriodParser_swigregister = _QuantLib.PeriodParser_swigregister
PeriodParser_swigregister(PeriodParser)
PeriodParser_parse = _QuantLib.PeriodParser_parse

Date._old___add__ = Date.__add__
Date._old___sub__ = Date.__sub__
def Date_new___add__(self,x):
    if type(x) is tuple and len(x) == 2:
        return self._old___add__(Period(x[0],x[1]))
    else:
        return self._old___add__(x)
def Date_new___sub__(self,x):
    if type(x) is tuple and len(x) == 2:
        return self._old___sub__(Period(x[0],x[1]))
    else:
        return self._old___sub__(x)
Date.__add__ = Date_new___add__
Date.__sub__ = Date_new___sub__

class DateVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.DateVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.DateVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.DateVector___len__(*args)
    def pop(*args): return _QuantLib.DateVector_pop(*args)
    def __getslice__(*args): return _QuantLib.DateVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.DateVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.DateVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.DateVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.DateVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.DateVector___setitem__(*args)
    def append(*args): return _QuantLib.DateVector_append(*args)
    def empty(*args): return _QuantLib.DateVector_empty(*args)
    def size(*args): return _QuantLib.DateVector_size(*args)
    def clear(*args): return _QuantLib.DateVector_clear(*args)
    def swap(*args): return _QuantLib.DateVector_swap(*args)
    def get_allocator(*args): return _QuantLib.DateVector_get_allocator(*args)
    def begin(*args): return _QuantLib.DateVector_begin(*args)
    def end(*args): return _QuantLib.DateVector_end(*args)
    def rbegin(*args): return _QuantLib.DateVector_rbegin(*args)
    def rend(*args): return _QuantLib.DateVector_rend(*args)
    def pop_back(*args): return _QuantLib.DateVector_pop_back(*args)
    def erase(*args): return _QuantLib.DateVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_DateVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.DateVector_push_back(*args)
    def front(*args): return _QuantLib.DateVector_front(*args)
    def back(*args): return _QuantLib.DateVector_back(*args)
    def assign(*args): return _QuantLib.DateVector_assign(*args)
    def resize(*args): return _QuantLib.DateVector_resize(*args)
    def insert(*args): return _QuantLib.DateVector_insert(*args)
    def reserve(*args): return _QuantLib.DateVector_reserve(*args)
    def capacity(*args): return _QuantLib.DateVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_DateVector
    __del__ = lambda self : None;
DateVector_swigregister = _QuantLib.DateVector_swigregister
DateVector_swigregister(DateVector)

class IMM(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    F = _QuantLib.IMM_F
    G = _QuantLib.IMM_G
    H = _QuantLib.IMM_H
    J = _QuantLib.IMM_J
    K = _QuantLib.IMM_K
    M = _QuantLib.IMM_M
    N = _QuantLib.IMM_N
    Q = _QuantLib.IMM_Q
    U = _QuantLib.IMM_U
    V = _QuantLib.IMM_V
    X = _QuantLib.IMM_X
    Z = _QuantLib.IMM_Z
    isIMMdate = staticmethod(_QuantLib.IMM_isIMMdate)
    isIMMcode = staticmethod(_QuantLib.IMM_isIMMcode)
    code = staticmethod(_QuantLib.IMM_code)
    date = staticmethod(_QuantLib.IMM_date)
    nextDate = staticmethod(_QuantLib.IMM_nextDate)
    nextCode = staticmethod(_QuantLib.IMM_nextCode)
    def __init__(self, *args): 
        this = _QuantLib.new_IMM(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_IMM
    __del__ = lambda self : None;
IMM_swigregister = _QuantLib.IMM_swigregister
IMM_swigregister(IMM)
IMM_isIMMdate = _QuantLib.IMM_isIMMdate
IMM_isIMMcode = _QuantLib.IMM_isIMMcode
IMM_code = _QuantLib.IMM_code
IMM_date = _QuantLib.IMM_date
IMM_nextDate = _QuantLib.IMM_nextDate
IMM_nextCode = _QuantLib.IMM_nextCode

class IntVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.IntVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.IntVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.IntVector___len__(*args)
    def pop(*args): return _QuantLib.IntVector_pop(*args)
    def __getslice__(*args): return _QuantLib.IntVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.IntVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.IntVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.IntVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.IntVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.IntVector___setitem__(*args)
    def append(*args): return _QuantLib.IntVector_append(*args)
    def empty(*args): return _QuantLib.IntVector_empty(*args)
    def size(*args): return _QuantLib.IntVector_size(*args)
    def clear(*args): return _QuantLib.IntVector_clear(*args)
    def swap(*args): return _QuantLib.IntVector_swap(*args)
    def get_allocator(*args): return _QuantLib.IntVector_get_allocator(*args)
    def begin(*args): return _QuantLib.IntVector_begin(*args)
    def end(*args): return _QuantLib.IntVector_end(*args)
    def rbegin(*args): return _QuantLib.IntVector_rbegin(*args)
    def rend(*args): return _QuantLib.IntVector_rend(*args)
    def pop_back(*args): return _QuantLib.IntVector_pop_back(*args)
    def erase(*args): return _QuantLib.IntVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_IntVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.IntVector_push_back(*args)
    def front(*args): return _QuantLib.IntVector_front(*args)
    def back(*args): return _QuantLib.IntVector_back(*args)
    def assign(*args): return _QuantLib.IntVector_assign(*args)
    def resize(*args): return _QuantLib.IntVector_resize(*args)
    def insert(*args): return _QuantLib.IntVector_insert(*args)
    def reserve(*args): return _QuantLib.IntVector_reserve(*args)
    def capacity(*args): return _QuantLib.IntVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_IntVector
    __del__ = lambda self : None;
IntVector_swigregister = _QuantLib.IntVector_swigregister
IntVector_swigregister(IntVector)

class DoubleVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.DoubleVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.DoubleVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.DoubleVector___len__(*args)
    def pop(*args): return _QuantLib.DoubleVector_pop(*args)
    def __getslice__(*args): return _QuantLib.DoubleVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.DoubleVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.DoubleVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.DoubleVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.DoubleVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.DoubleVector___setitem__(*args)
    def append(*args): return _QuantLib.DoubleVector_append(*args)
    def empty(*args): return _QuantLib.DoubleVector_empty(*args)
    def size(*args): return _QuantLib.DoubleVector_size(*args)
    def clear(*args): return _QuantLib.DoubleVector_clear(*args)
    def swap(*args): return _QuantLib.DoubleVector_swap(*args)
    def get_allocator(*args): return _QuantLib.DoubleVector_get_allocator(*args)
    def begin(*args): return _QuantLib.DoubleVector_begin(*args)
    def end(*args): return _QuantLib.DoubleVector_end(*args)
    def rbegin(*args): return _QuantLib.DoubleVector_rbegin(*args)
    def rend(*args): return _QuantLib.DoubleVector_rend(*args)
    def pop_back(*args): return _QuantLib.DoubleVector_pop_back(*args)
    def erase(*args): return _QuantLib.DoubleVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_DoubleVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.DoubleVector_push_back(*args)
    def front(*args): return _QuantLib.DoubleVector_front(*args)
    def back(*args): return _QuantLib.DoubleVector_back(*args)
    def assign(*args): return _QuantLib.DoubleVector_assign(*args)
    def resize(*args): return _QuantLib.DoubleVector_resize(*args)
    def insert(*args): return _QuantLib.DoubleVector_insert(*args)
    def reserve(*args): return _QuantLib.DoubleVector_reserve(*args)
    def capacity(*args): return _QuantLib.DoubleVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_DoubleVector
    __del__ = lambda self : None;
DoubleVector_swigregister = _QuantLib.DoubleVector_swigregister
DoubleVector_swigregister(DoubleVector)

class StrVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.StrVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.StrVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.StrVector___len__(*args)
    def pop(*args): return _QuantLib.StrVector_pop(*args)
    def __getslice__(*args): return _QuantLib.StrVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.StrVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.StrVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.StrVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.StrVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.StrVector___setitem__(*args)
    def append(*args): return _QuantLib.StrVector_append(*args)
    def empty(*args): return _QuantLib.StrVector_empty(*args)
    def size(*args): return _QuantLib.StrVector_size(*args)
    def clear(*args): return _QuantLib.StrVector_clear(*args)
    def swap(*args): return _QuantLib.StrVector_swap(*args)
    def get_allocator(*args): return _QuantLib.StrVector_get_allocator(*args)
    def begin(*args): return _QuantLib.StrVector_begin(*args)
    def end(*args): return _QuantLib.StrVector_end(*args)
    def rbegin(*args): return _QuantLib.StrVector_rbegin(*args)
    def rend(*args): return _QuantLib.StrVector_rend(*args)
    def pop_back(*args): return _QuantLib.StrVector_pop_back(*args)
    def erase(*args): return _QuantLib.StrVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_StrVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.StrVector_push_back(*args)
    def front(*args): return _QuantLib.StrVector_front(*args)
    def back(*args): return _QuantLib.StrVector_back(*args)
    def assign(*args): return _QuantLib.StrVector_assign(*args)
    def resize(*args): return _QuantLib.StrVector_resize(*args)
    def insert(*args): return _QuantLib.StrVector_insert(*args)
    def reserve(*args): return _QuantLib.StrVector_reserve(*args)
    def capacity(*args): return _QuantLib.StrVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_StrVector
    __del__ = lambda self : None;
StrVector_swigregister = _QuantLib.StrVector_swigregister
StrVector_swigregister(StrVector)

class NodePair(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NodePair(*args)
        try: self.this.append(this)
        except: self.this = this
    first = _swig_property(_QuantLib.NodePair_first_get, _QuantLib.NodePair_first_set)
    second = _swig_property(_QuantLib.NodePair_second_get, _QuantLib.NodePair_second_set)
    def __len__(self): return 2
    def __repr__(self): return str((self.first, self.second))
    def __getitem__(self, index): 
      if not (index % 2): 
        return self.first
      else:
        return self.second
    def __setitem__(self, index, val):
      if not (index % 2): 
        self.first = val
      else:
        self.second = val
    __swig_destroy__ = _QuantLib.delete_NodePair
    __del__ = lambda self : None;
NodePair_swigregister = _QuantLib.NodePair_swigregister
NodePair_swigregister(NodePair)

class NodeVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.NodeVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.NodeVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.NodeVector___len__(*args)
    def pop(*args): return _QuantLib.NodeVector_pop(*args)
    def __getslice__(*args): return _QuantLib.NodeVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.NodeVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.NodeVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.NodeVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.NodeVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.NodeVector___setitem__(*args)
    def append(*args): return _QuantLib.NodeVector_append(*args)
    def empty(*args): return _QuantLib.NodeVector_empty(*args)
    def size(*args): return _QuantLib.NodeVector_size(*args)
    def clear(*args): return _QuantLib.NodeVector_clear(*args)
    def swap(*args): return _QuantLib.NodeVector_swap(*args)
    def get_allocator(*args): return _QuantLib.NodeVector_get_allocator(*args)
    def begin(*args): return _QuantLib.NodeVector_begin(*args)
    def end(*args): return _QuantLib.NodeVector_end(*args)
    def rbegin(*args): return _QuantLib.NodeVector_rbegin(*args)
    def rend(*args): return _QuantLib.NodeVector_rend(*args)
    def pop_back(*args): return _QuantLib.NodeVector_pop_back(*args)
    def erase(*args): return _QuantLib.NodeVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_NodeVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.NodeVector_push_back(*args)
    def front(*args): return _QuantLib.NodeVector_front(*args)
    def back(*args): return _QuantLib.NodeVector_back(*args)
    def assign(*args): return _QuantLib.NodeVector_assign(*args)
    def resize(*args): return _QuantLib.NodeVector_resize(*args)
    def insert(*args): return _QuantLib.NodeVector_insert(*args)
    def reserve(*args): return _QuantLib.NodeVector_reserve(*args)
    def capacity(*args): return _QuantLib.NodeVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_NodeVector
    __del__ = lambda self : None;
NodeVector_swigregister = _QuantLib.NodeVector_swigregister
NodeVector_swigregister(NodeVector)

class Exercise(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.Exercise___deref__(*args)
    def __nonzero__(*args): return _QuantLib.Exercise___nonzero__(*args)
    American = _QuantLib.Exercise_American
    Bermudan = _QuantLib.Exercise_Bermudan
    European = _QuantLib.Exercise_European
    def __init__(self, *args): 
        this = _QuantLib.new_Exercise(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Exercise
    __del__ = lambda self : None;
    def type(*args): return _QuantLib.Exercise_type(*args)
    def dates(*args): return _QuantLib.Exercise_dates(*args)
Exercise_swigregister = _QuantLib.Exercise_swigregister
Exercise_swigregister(Exercise)

class EuropeanExercise(Exercise):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuropeanExercise(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuropeanExercise
    __del__ = lambda self : None;
EuropeanExercise_swigregister = _QuantLib.EuropeanExercise_swigregister
EuropeanExercise_swigregister(EuropeanExercise)

class AmericanExercise(Exercise):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AmericanExercise(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AmericanExercise
    __del__ = lambda self : None;
AmericanExercise_swigregister = _QuantLib.AmericanExercise_swigregister
AmericanExercise_swigregister(AmericanExercise)

class BermudanExercise(Exercise):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BermudanExercise(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BermudanExercise
    __del__ = lambda self : None;
BermudanExercise_swigregister = _QuantLib.BermudanExercise_swigregister
BermudanExercise_swigregister(BermudanExercise)

class Observable(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.Observable___deref__(*args)
    def __nonzero__(*args): return _QuantLib.Observable___nonzero__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Observable(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Observable
    __del__ = lambda self : None;
Observable_swigregister = _QuantLib.Observable_swigregister
Observable_swigregister(Observable)

class Observer(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Observer(*args)
        try: self.this.append(this)
        except: self.this = this
    def _registerWith(*args): return _QuantLib.Observer__registerWith(*args)
    def _unregisterWith(*args): return _QuantLib.Observer__unregisterWith(*args)
    def registerWith(self,x):
        self._registerWith(x.asObservable())
    def unregisterWith(self,x):
        self._unregisterWith(x.asObservable())

    __swig_destroy__ = _QuantLib.delete_Observer
    __del__ = lambda self : None;
Observer_swigregister = _QuantLib.Observer_swigregister
Observer_swigregister(Observer)

class Array(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Array(*args)
        try: self.this.append(this)
        except: self.this = this
    def __len__(*args): return _QuantLib.Array___len__(*args)
    def __str__(*args): return _QuantLib.Array___str__(*args)
    def __add__(*args): return _QuantLib.Array___add__(*args)
    def __sub__(*args): return _QuantLib.Array___sub__(*args)
    def __mul__(*args): return _QuantLib.Array___mul__(*args)
    def __div__(*args): return _QuantLib.Array___div__(*args)
    def __rmul__(*args): return _QuantLib.Array___rmul__(*args)
    def __getslice__(*args): return _QuantLib.Array___getslice__(*args)
    def __setslice__(*args): return _QuantLib.Array___setslice__(*args)
    def __nonzero__(*args): return _QuantLib.Array___nonzero__(*args)
    def __getitem__(*args): return _QuantLib.Array___getitem__(*args)
    def __setitem__(*args): return _QuantLib.Array___setitem__(*args)
    __swig_destroy__ = _QuantLib.delete_Array
    __del__ = lambda self : None;
Array_swigregister = _QuantLib.Array_swigregister
Array_swigregister(Array)

class DefaultLexicographicalViewColumn(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def __getitem__(*args): return _QuantLib.DefaultLexicographicalViewColumn___getitem__(*args)
    def __setitem__(*args): return _QuantLib.DefaultLexicographicalViewColumn___setitem__(*args)
    __swig_destroy__ = _QuantLib.delete_DefaultLexicographicalViewColumn
    __del__ = lambda self : None;
DefaultLexicographicalViewColumn_swigregister = _QuantLib.DefaultLexicographicalViewColumn_swigregister
DefaultLexicographicalViewColumn_swigregister(DefaultLexicographicalViewColumn)

class LexicographicalView(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def xSize(*args): return _QuantLib.LexicographicalView_xSize(*args)
    def ySize(*args): return _QuantLib.LexicographicalView_ySize(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_LexicographicalView(*args)
        try: self.this.append(this)
        except: self.this = this
    def __str__(*args): return _QuantLib.LexicographicalView___str__(*args)
    def __getitem__(*args): return _QuantLib.LexicographicalView___getitem__(*args)
    __swig_destroy__ = _QuantLib.delete_LexicographicalView
    __del__ = lambda self : None;
LexicographicalView_swigregister = _QuantLib.LexicographicalView_swigregister
LexicographicalView_swigregister(LexicographicalView)

class MatrixRow(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def __getitem__(*args): return _QuantLib.MatrixRow___getitem__(*args)
    def __setitem__(*args): return _QuantLib.MatrixRow___setitem__(*args)
    __swig_destroy__ = _QuantLib.delete_MatrixRow
    __del__ = lambda self : None;
MatrixRow_swigregister = _QuantLib.MatrixRow_swigregister
MatrixRow_swigregister(MatrixRow)

class Matrix(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Matrix(*args)
        try: self.this.append(this)
        except: self.this = this
    def rows(*args): return _QuantLib.Matrix_rows(*args)
    def columns(*args): return _QuantLib.Matrix_columns(*args)
    def __str__(*args): return _QuantLib.Matrix___str__(*args)
    def __add__(*args): return _QuantLib.Matrix___add__(*args)
    def __sub__(*args): return _QuantLib.Matrix___sub__(*args)
    def __mul__(*args): return _QuantLib.Matrix___mul__(*args)
    def __div__(*args): return _QuantLib.Matrix___div__(*args)
    def __getitem__(*args): return _QuantLib.Matrix___getitem__(*args)
    def __rmul__(*args): return _QuantLib.Matrix___rmul__(*args)
    __swig_destroy__ = _QuantLib.delete_Matrix
    __del__ = lambda self : None;
Matrix_swigregister = _QuantLib.Matrix_swigregister
Matrix_swigregister(Matrix)

class SalvagingAlgorithm(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    NoAlgorithm = _QuantLib.SalvagingAlgorithm_NoAlgorithm
    Spectral = _QuantLib.SalvagingAlgorithm_Spectral
    def __init__(self, *args): 
        this = _QuantLib.new_SalvagingAlgorithm(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SalvagingAlgorithm
    __del__ = lambda self : None;
SalvagingAlgorithm_swigregister = _QuantLib.SalvagingAlgorithm_swigregister
SalvagingAlgorithm_swigregister(SalvagingAlgorithm)

transpose = _QuantLib.transpose
outerProduct = _QuantLib.outerProduct
pseudoSqrt = _QuantLib.pseudoSqrt
class SVD(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SVD(*args)
        try: self.this.append(this)
        except: self.this = this
    def U(*args): return _QuantLib.SVD_U(*args)
    def V(*args): return _QuantLib.SVD_V(*args)
    def S(*args): return _QuantLib.SVD_S(*args)
    def singularValues(*args): return _QuantLib.SVD_singularValues(*args)
    __swig_destroy__ = _QuantLib.delete_SVD
    __del__ = lambda self : None;
SVD_swigregister = _QuantLib.SVD_swigregister
SVD_swigregister(SVD)

class Quote(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.Quote___deref__(*args)
    def __nonzero__(*args): return _QuantLib.Quote___nonzero__(*args)
    def asObservable(*args): return _QuantLib.Quote_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Quote(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Quote
    __del__ = lambda self : None;
    def value(*args): return _QuantLib.Quote_value(*args)
Quote_swigregister = _QuantLib.Quote_swigregister
Quote_swigregister(Quote)

class QuoteHandle(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_QuoteHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def __deref__(*args): return _QuantLib.QuoteHandle___deref__(*args)
    def __nonzero__(*args): return _QuantLib.QuoteHandle___nonzero__(*args)
    def asObservable(*args): return _QuantLib.QuoteHandle_asObservable(*args)
    __swig_destroy__ = _QuantLib.delete_QuoteHandle
    __del__ = lambda self : None;
    def value(*args): return _QuantLib.QuoteHandle_value(*args)
QuoteHandle_swigregister = _QuantLib.QuoteHandle_swigregister
QuoteHandle_swigregister(QuoteHandle)

class RelinkableQuoteHandle(QuoteHandle):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RelinkableQuoteHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def linkTo(*args): return _QuantLib.RelinkableQuoteHandle_linkTo(*args)
    __swig_destroy__ = _QuantLib.delete_RelinkableQuoteHandle
    __del__ = lambda self : None;
RelinkableQuoteHandle_swigregister = _QuantLib.RelinkableQuoteHandle_swigregister
RelinkableQuoteHandle_swigregister(RelinkableQuoteHandle)

class SimpleQuote(Quote):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SimpleQuote(*args)
        try: self.this.append(this)
        except: self.this = this
    def setValue(*args): return _QuantLib.SimpleQuote_setValue(*args)
    __swig_destroy__ = _QuantLib.delete_SimpleQuote
    __del__ = lambda self : None;
SimpleQuote_swigregister = _QuantLib.SimpleQuote_swigregister
SimpleQuote_swigregister(SimpleQuote)

class DerivedQuote(Quote):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DerivedQuote(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DerivedQuote
    __del__ = lambda self : None;
DerivedQuote_swigregister = _QuantLib.DerivedQuote_swigregister
DerivedQuote_swigregister(DerivedQuote)

class CompositeQuote(Quote):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CompositeQuote(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CompositeQuote
    __del__ = lambda self : None;
CompositeQuote_swigregister = _QuantLib.CompositeQuote_swigregister
CompositeQuote_swigregister(CompositeQuote)

class QuoteVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.QuoteVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.QuoteVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.QuoteVector___len__(*args)
    def pop(*args): return _QuantLib.QuoteVector_pop(*args)
    def __getslice__(*args): return _QuantLib.QuoteVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.QuoteVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.QuoteVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.QuoteVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.QuoteVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.QuoteVector___setitem__(*args)
    def append(*args): return _QuantLib.QuoteVector_append(*args)
    def empty(*args): return _QuantLib.QuoteVector_empty(*args)
    def size(*args): return _QuantLib.QuoteVector_size(*args)
    def clear(*args): return _QuantLib.QuoteVector_clear(*args)
    def swap(*args): return _QuantLib.QuoteVector_swap(*args)
    def get_allocator(*args): return _QuantLib.QuoteVector_get_allocator(*args)
    def begin(*args): return _QuantLib.QuoteVector_begin(*args)
    def end(*args): return _QuantLib.QuoteVector_end(*args)
    def rbegin(*args): return _QuantLib.QuoteVector_rbegin(*args)
    def rend(*args): return _QuantLib.QuoteVector_rend(*args)
    def pop_back(*args): return _QuantLib.QuoteVector_pop_back(*args)
    def erase(*args): return _QuantLib.QuoteVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_QuoteVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.QuoteVector_push_back(*args)
    def front(*args): return _QuantLib.QuoteVector_front(*args)
    def back(*args): return _QuantLib.QuoteVector_back(*args)
    def assign(*args): return _QuantLib.QuoteVector_assign(*args)
    def resize(*args): return _QuantLib.QuoteVector_resize(*args)
    def insert(*args): return _QuantLib.QuoteVector_insert(*args)
    def reserve(*args): return _QuantLib.QuoteVector_reserve(*args)
    def capacity(*args): return _QuantLib.QuoteVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_QuoteVector
    __del__ = lambda self : None;
QuoteVector_swigregister = _QuantLib.QuoteVector_swigregister
QuoteVector_swigregister(QuoteVector)

class QuoteHandleVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.QuoteHandleVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.QuoteHandleVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.QuoteHandleVector___len__(*args)
    def pop(*args): return _QuantLib.QuoteHandleVector_pop(*args)
    def __getslice__(*args): return _QuantLib.QuoteHandleVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.QuoteHandleVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.QuoteHandleVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.QuoteHandleVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.QuoteHandleVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.QuoteHandleVector___setitem__(*args)
    def append(*args): return _QuantLib.QuoteHandleVector_append(*args)
    def empty(*args): return _QuantLib.QuoteHandleVector_empty(*args)
    def size(*args): return _QuantLib.QuoteHandleVector_size(*args)
    def clear(*args): return _QuantLib.QuoteHandleVector_clear(*args)
    def swap(*args): return _QuantLib.QuoteHandleVector_swap(*args)
    def get_allocator(*args): return _QuantLib.QuoteHandleVector_get_allocator(*args)
    def begin(*args): return _QuantLib.QuoteHandleVector_begin(*args)
    def end(*args): return _QuantLib.QuoteHandleVector_end(*args)
    def rbegin(*args): return _QuantLib.QuoteHandleVector_rbegin(*args)
    def rend(*args): return _QuantLib.QuoteHandleVector_rend(*args)
    def pop_back(*args): return _QuantLib.QuoteHandleVector_pop_back(*args)
    def erase(*args): return _QuantLib.QuoteHandleVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_QuoteHandleVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.QuoteHandleVector_push_back(*args)
    def front(*args): return _QuantLib.QuoteHandleVector_front(*args)
    def back(*args): return _QuantLib.QuoteHandleVector_back(*args)
    def assign(*args): return _QuantLib.QuoteHandleVector_assign(*args)
    def resize(*args): return _QuantLib.QuoteHandleVector_resize(*args)
    def insert(*args): return _QuantLib.QuoteHandleVector_insert(*args)
    def reserve(*args): return _QuantLib.QuoteHandleVector_reserve(*args)
    def capacity(*args): return _QuantLib.QuoteHandleVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_QuoteHandleVector
    __del__ = lambda self : None;
QuoteHandleVector_swigregister = _QuantLib.QuoteHandleVector_swigregister
QuoteHandleVector_swigregister(QuoteHandleVector)

class RelinkableQuoteHandleVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.RelinkableQuoteHandleVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.RelinkableQuoteHandleVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.RelinkableQuoteHandleVector___len__(*args)
    def pop(*args): return _QuantLib.RelinkableQuoteHandleVector_pop(*args)
    def __getslice__(*args): return _QuantLib.RelinkableQuoteHandleVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.RelinkableQuoteHandleVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.RelinkableQuoteHandleVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.RelinkableQuoteHandleVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.RelinkableQuoteHandleVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.RelinkableQuoteHandleVector___setitem__(*args)
    def append(*args): return _QuantLib.RelinkableQuoteHandleVector_append(*args)
    def empty(*args): return _QuantLib.RelinkableQuoteHandleVector_empty(*args)
    def size(*args): return _QuantLib.RelinkableQuoteHandleVector_size(*args)
    def clear(*args): return _QuantLib.RelinkableQuoteHandleVector_clear(*args)
    def swap(*args): return _QuantLib.RelinkableQuoteHandleVector_swap(*args)
    def get_allocator(*args): return _QuantLib.RelinkableQuoteHandleVector_get_allocator(*args)
    def begin(*args): return _QuantLib.RelinkableQuoteHandleVector_begin(*args)
    def end(*args): return _QuantLib.RelinkableQuoteHandleVector_end(*args)
    def rbegin(*args): return _QuantLib.RelinkableQuoteHandleVector_rbegin(*args)
    def rend(*args): return _QuantLib.RelinkableQuoteHandleVector_rend(*args)
    def pop_back(*args): return _QuantLib.RelinkableQuoteHandleVector_pop_back(*args)
    def erase(*args): return _QuantLib.RelinkableQuoteHandleVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_RelinkableQuoteHandleVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.RelinkableQuoteHandleVector_push_back(*args)
    def front(*args): return _QuantLib.RelinkableQuoteHandleVector_front(*args)
    def back(*args): return _QuantLib.RelinkableQuoteHandleVector_back(*args)
    def assign(*args): return _QuantLib.RelinkableQuoteHandleVector_assign(*args)
    def resize(*args): return _QuantLib.RelinkableQuoteHandleVector_resize(*args)
    def insert(*args): return _QuantLib.RelinkableQuoteHandleVector_insert(*args)
    def reserve(*args): return _QuantLib.RelinkableQuoteHandleVector_reserve(*args)
    def capacity(*args): return _QuantLib.RelinkableQuoteHandleVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_RelinkableQuoteHandleVector
    __del__ = lambda self : None;
RelinkableQuoteHandleVector_swigregister = _QuantLib.RelinkableQuoteHandleVector_swigregister
RelinkableQuoteHandleVector_swigregister(RelinkableQuoteHandleVector)

nullInt = _QuantLib.nullInt
nullDouble = _QuantLib.nullDouble
class DayCounter(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def dayCount(*args): return _QuantLib.DayCounter_dayCount(*args)
    def yearFraction(*args): return _QuantLib.DayCounter_yearFraction(*args)
    def __str__(*args): return _QuantLib.DayCounter___str__(*args)
    def __eq__(*args): return _QuantLib.DayCounter___eq__(*args)
    def __ne__(*args): return _QuantLib.DayCounter___ne__(*args)
    __swig_destroy__ = _QuantLib.delete_DayCounter
    __del__ = lambda self : None;
DayCounter_swigregister = _QuantLib.DayCounter_swigregister
DayCounter_swigregister(DayCounter)

class Actual360(DayCounter):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Actual360(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Actual360
    __del__ = lambda self : None;
Actual360_swigregister = _QuantLib.Actual360_swigregister
Actual360_swigregister(Actual360)

class Actual365Fixed(DayCounter):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Actual365Fixed(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Actual365Fixed
    __del__ = lambda self : None;
Actual365Fixed_swigregister = _QuantLib.Actual365Fixed_swigregister
Actual365Fixed_swigregister(Actual365Fixed)

class Thirty360(DayCounter):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    USA = _QuantLib.Thirty360_USA
    BondBasis = _QuantLib.Thirty360_BondBasis
    European = _QuantLib.Thirty360_European
    EurobondBasis = _QuantLib.Thirty360_EurobondBasis
    Italian = _QuantLib.Thirty360_Italian
    def __init__(self, *args): 
        this = _QuantLib.new_Thirty360(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Thirty360
    __del__ = lambda self : None;
Thirty360_swigregister = _QuantLib.Thirty360_swigregister
Thirty360_swigregister(Thirty360)

class ActualActual(DayCounter):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    ISMA = _QuantLib.ActualActual_ISMA
    Bond = _QuantLib.ActualActual_Bond
    ISDA = _QuantLib.ActualActual_ISDA
    Historical = _QuantLib.ActualActual_Historical
    Actual365 = _QuantLib.ActualActual_Actual365
    AFB = _QuantLib.ActualActual_AFB
    Euro = _QuantLib.ActualActual_Euro
    def __init__(self, *args): 
        this = _QuantLib.new_ActualActual(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ActualActual
    __del__ = lambda self : None;
ActualActual_swigregister = _QuantLib.ActualActual_swigregister
ActualActual_swigregister(ActualActual)

class OneDayCounter(DayCounter):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_OneDayCounter(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_OneDayCounter
    __del__ = lambda self : None;
OneDayCounter_swigregister = _QuantLib.OneDayCounter_swigregister
OneDayCounter_swigregister(OneDayCounter)

class SimpleDayCounter(DayCounter):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SimpleDayCounter(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SimpleDayCounter
    __del__ = lambda self : None;
SimpleDayCounter_swigregister = _QuantLib.SimpleDayCounter_swigregister
SimpleDayCounter_swigregister(SimpleDayCounter)

Simple = _QuantLib.Simple
Compounded = _QuantLib.Compounded
Continuous = _QuantLib.Continuous
SimpleThenCompounded = _QuantLib.SimpleThenCompounded
class InterestRate(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_InterestRate(*args)
        try: self.this.append(this)
        except: self.this = this
    def rate(*args): return _QuantLib.InterestRate_rate(*args)
    def dayCounter(*args): return _QuantLib.InterestRate_dayCounter(*args)
    def compounding(*args): return _QuantLib.InterestRate_compounding(*args)
    def frequency(*args): return _QuantLib.InterestRate_frequency(*args)
    def discountFactor(*args): return _QuantLib.InterestRate_discountFactor(*args)
    def compoundFactor(*args): return _QuantLib.InterestRate_compoundFactor(*args)
    impliedRate = staticmethod(_QuantLib.InterestRate_impliedRate)
    def equivalentRate(*args): return _QuantLib.InterestRate_equivalentRate(*args)
    def __str__(*args): return _QuantLib.InterestRate___str__(*args)
    __swig_destroy__ = _QuantLib.delete_InterestRate
    __del__ = lambda self : None;
InterestRate_swigregister = _QuantLib.InterestRate_swigregister
InterestRate_swigregister(InterestRate)
InterestRate_impliedRate = _QuantLib.InterestRate_impliedRate

Following = _QuantLib.Following
ModifiedFollowing = _QuantLib.ModifiedFollowing
Preceding = _QuantLib.Preceding
ModifiedPreceding = _QuantLib.ModifiedPreceding
Unadjusted = _QuantLib.Unadjusted
JoinHolidays = _QuantLib.JoinHolidays
JoinBusinessDays = _QuantLib.JoinBusinessDays
class Calendar(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def isBusinessDay(*args): return _QuantLib.Calendar_isBusinessDay(*args)
    def isHoliday(*args): return _QuantLib.Calendar_isHoliday(*args)
    def isEndOfMonth(*args): return _QuantLib.Calendar_isEndOfMonth(*args)
    def addHoliday(*args): return _QuantLib.Calendar_addHoliday(*args)
    def removeHoliday(*args): return _QuantLib.Calendar_removeHoliday(*args)
    def adjust(*args): return _QuantLib.Calendar_adjust(*args)
    def advance(*args): return _QuantLib.Calendar_advance(*args)
    def businessDaysBetween(*args): return _QuantLib.Calendar_businessDaysBetween(*args)
    def __str__(*args): return _QuantLib.Calendar___str__(*args)
    def __eq__(*args): return _QuantLib.Calendar___eq__(*args)
    def __ne__(*args): return _QuantLib.Calendar___ne__(*args)
    __swig_destroy__ = _QuantLib.delete_Calendar
    __del__ = lambda self : None;
Calendar_swigregister = _QuantLib.Calendar_swigregister
Calendar_swigregister(Calendar)

class Argentina(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Merval = _QuantLib.Argentina_Merval
    def __init__(self, *args): 
        this = _QuantLib.new_Argentina(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Argentina
    __del__ = lambda self : None;
Argentina_swigregister = _QuantLib.Argentina_swigregister
Argentina_swigregister(Argentina)

class Australia(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Australia(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Australia
    __del__ = lambda self : None;
Australia_swigregister = _QuantLib.Australia_swigregister
Australia_swigregister(Australia)

class Brazil(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Settlement = _QuantLib.Brazil_Settlement
    Exchange = _QuantLib.Brazil_Exchange
    def __init__(self, *args): 
        this = _QuantLib.new_Brazil(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Brazil
    __del__ = lambda self : None;
Brazil_swigregister = _QuantLib.Brazil_swigregister
Brazil_swigregister(Brazil)

class Canada(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Settlement = _QuantLib.Canada_Settlement
    TSX = _QuantLib.Canada_TSX
    def __init__(self, *args): 
        this = _QuantLib.new_Canada(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Canada
    __del__ = lambda self : None;
Canada_swigregister = _QuantLib.Canada_swigregister
Canada_swigregister(Canada)

class China(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_China(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_China
    __del__ = lambda self : None;
China_swigregister = _QuantLib.China_swigregister
China_swigregister(China)

class CzechRepublic(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    PSE = _QuantLib.CzechRepublic_PSE
    def __init__(self, *args): 
        this = _QuantLib.new_CzechRepublic(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CzechRepublic
    __del__ = lambda self : None;
CzechRepublic_swigregister = _QuantLib.CzechRepublic_swigregister
CzechRepublic_swigregister(CzechRepublic)

class Denmark(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Denmark(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Denmark
    __del__ = lambda self : None;
Denmark_swigregister = _QuantLib.Denmark_swigregister
Denmark_swigregister(Denmark)

class Finland(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Finland(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Finland
    __del__ = lambda self : None;
Finland_swigregister = _QuantLib.Finland_swigregister
Finland_swigregister(Finland)

class Germany(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Settlement = _QuantLib.Germany_Settlement
    FrankfurtStockExchange = _QuantLib.Germany_FrankfurtStockExchange
    Xetra = _QuantLib.Germany_Xetra
    Eurex = _QuantLib.Germany_Eurex
    def __init__(self, *args): 
        this = _QuantLib.new_Germany(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Germany
    __del__ = lambda self : None;
Germany_swigregister = _QuantLib.Germany_swigregister
Germany_swigregister(Germany)

class HongKong(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    HKEx = _QuantLib.HongKong_HKEx
    def __init__(self, *args): 
        this = _QuantLib.new_HongKong(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_HongKong
    __del__ = lambda self : None;
HongKong_swigregister = _QuantLib.HongKong_swigregister
HongKong_swigregister(HongKong)

class Hungary(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Hungary(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Hungary
    __del__ = lambda self : None;
Hungary_swigregister = _QuantLib.Hungary_swigregister
Hungary_swigregister(Hungary)

class Iceland(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    ICEX = _QuantLib.Iceland_ICEX
    def __init__(self, *args): 
        this = _QuantLib.new_Iceland(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Iceland
    __del__ = lambda self : None;
Iceland_swigregister = _QuantLib.Iceland_swigregister
Iceland_swigregister(Iceland)

class India(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    NSE = _QuantLib.India_NSE
    def __init__(self, *args): 
        this = _QuantLib.new_India(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_India
    __del__ = lambda self : None;
India_swigregister = _QuantLib.India_swigregister
India_swigregister(India)

class Indonesia(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    BEJ = _QuantLib.Indonesia_BEJ
    JSX = _QuantLib.Indonesia_JSX
    def __init__(self, *args): 
        this = _QuantLib.new_Indonesia(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Indonesia
    __del__ = lambda self : None;
Indonesia_swigregister = _QuantLib.Indonesia_swigregister
Indonesia_swigregister(Indonesia)

class Italy(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Settlement = _QuantLib.Italy_Settlement
    Exchange = _QuantLib.Italy_Exchange
    def __init__(self, *args): 
        this = _QuantLib.new_Italy(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Italy
    __del__ = lambda self : None;
Italy_swigregister = _QuantLib.Italy_swigregister
Italy_swigregister(Italy)

class Japan(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Japan(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Japan
    __del__ = lambda self : None;
Japan_swigregister = _QuantLib.Japan_swigregister
Japan_swigregister(Japan)

class Mexico(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    BMV = _QuantLib.Mexico_BMV
    def __init__(self, *args): 
        this = _QuantLib.new_Mexico(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Mexico
    __del__ = lambda self : None;
Mexico_swigregister = _QuantLib.Mexico_swigregister
Mexico_swigregister(Mexico)

class NewZealand(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NewZealand(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NewZealand
    __del__ = lambda self : None;
NewZealand_swigregister = _QuantLib.NewZealand_swigregister
NewZealand_swigregister(NewZealand)

class Norway(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Norway(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Norway
    __del__ = lambda self : None;
Norway_swigregister = _QuantLib.Norway_swigregister
Norway_swigregister(Norway)

class Poland(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Poland(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Poland
    __del__ = lambda self : None;
Poland_swigregister = _QuantLib.Poland_swigregister
Poland_swigregister(Poland)

class SaudiArabia(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Tadawul = _QuantLib.SaudiArabia_Tadawul
    def __init__(self, *args): 
        this = _QuantLib.new_SaudiArabia(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SaudiArabia
    __del__ = lambda self : None;
SaudiArabia_swigregister = _QuantLib.SaudiArabia_swigregister
SaudiArabia_swigregister(SaudiArabia)

class Singapore(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    SGX = _QuantLib.Singapore_SGX
    def __init__(self, *args): 
        this = _QuantLib.new_Singapore(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Singapore
    __del__ = lambda self : None;
Singapore_swigregister = _QuantLib.Singapore_swigregister
Singapore_swigregister(Singapore)

class Slovakia(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    BSSE = _QuantLib.Slovakia_BSSE
    def __init__(self, *args): 
        this = _QuantLib.new_Slovakia(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Slovakia
    __del__ = lambda self : None;
Slovakia_swigregister = _QuantLib.Slovakia_swigregister
Slovakia_swigregister(Slovakia)

class SouthAfrica(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SouthAfrica(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SouthAfrica
    __del__ = lambda self : None;
SouthAfrica_swigregister = _QuantLib.SouthAfrica_swigregister
SouthAfrica_swigregister(SouthAfrica)

class SouthKorea(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    KRX = _QuantLib.SouthKorea_KRX
    def __init__(self, *args): 
        this = _QuantLib.new_SouthKorea(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SouthKorea
    __del__ = lambda self : None;
SouthKorea_swigregister = _QuantLib.SouthKorea_swigregister
SouthKorea_swigregister(SouthKorea)

class Sweden(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Sweden(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Sweden
    __del__ = lambda self : None;
Sweden_swigregister = _QuantLib.Sweden_swigregister
Sweden_swigregister(Sweden)

class Switzerland(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Switzerland(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Switzerland
    __del__ = lambda self : None;
Switzerland_swigregister = _QuantLib.Switzerland_swigregister
Switzerland_swigregister(Switzerland)

class Taiwan(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    TSEC = _QuantLib.Taiwan_TSEC
    def __init__(self, *args): 
        this = _QuantLib.new_Taiwan(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Taiwan
    __del__ = lambda self : None;
Taiwan_swigregister = _QuantLib.Taiwan_swigregister
Taiwan_swigregister(Taiwan)

class TARGET(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TARGET(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_TARGET
    __del__ = lambda self : None;
TARGET_swigregister = _QuantLib.TARGET_swigregister
TARGET_swigregister(TARGET)

class Turkey(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Turkey(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Turkey
    __del__ = lambda self : None;
Turkey_swigregister = _QuantLib.Turkey_swigregister
Turkey_swigregister(Turkey)

class Ukraine(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    USE = _QuantLib.Ukraine_USE
    def __init__(self, *args): 
        this = _QuantLib.new_Ukraine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Ukraine
    __del__ = lambda self : None;
Ukraine_swigregister = _QuantLib.Ukraine_swigregister
Ukraine_swigregister(Ukraine)

class UnitedKingdom(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Settlement = _QuantLib.UnitedKingdom_Settlement
    Exchange = _QuantLib.UnitedKingdom_Exchange
    Metals = _QuantLib.UnitedKingdom_Metals
    def __init__(self, *args): 
        this = _QuantLib.new_UnitedKingdom(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_UnitedKingdom
    __del__ = lambda self : None;
UnitedKingdom_swigregister = _QuantLib.UnitedKingdom_swigregister
UnitedKingdom_swigregister(UnitedKingdom)

class UnitedStates(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Settlement = _QuantLib.UnitedStates_Settlement
    NYSE = _QuantLib.UnitedStates_NYSE
    GovernmentBond = _QuantLib.UnitedStates_GovernmentBond
    NERC = _QuantLib.UnitedStates_NERC
    def __init__(self, *args): 
        this = _QuantLib.new_UnitedStates(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_UnitedStates
    __del__ = lambda self : None;
UnitedStates_swigregister = _QuantLib.UnitedStates_swigregister
UnitedStates_swigregister(UnitedStates)

class NullCalendar(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NullCalendar(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NullCalendar
    __del__ = lambda self : None;
NullCalendar_swigregister = _QuantLib.NullCalendar_swigregister
NullCalendar_swigregister(NullCalendar)

class JointCalendar(Calendar):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_JointCalendar(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_JointCalendar
    __del__ = lambda self : None;
JointCalendar_swigregister = _QuantLib.JointCalendar_swigregister
JointCalendar_swigregister(JointCalendar)

class Rounding(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Rounding(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.Rounding___call__(*args)
    __swig_destroy__ = _QuantLib.delete_Rounding
    __del__ = lambda self : None;
Rounding_swigregister = _QuantLib.Rounding_swigregister
Rounding_swigregister(Rounding)

class UpRounding(Rounding):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_UpRounding(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_UpRounding
    __del__ = lambda self : None;
UpRounding_swigregister = _QuantLib.UpRounding_swigregister
UpRounding_swigregister(UpRounding)

class DownRounding(Rounding):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DownRounding(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DownRounding
    __del__ = lambda self : None;
DownRounding_swigregister = _QuantLib.DownRounding_swigregister
DownRounding_swigregister(DownRounding)

class ClosestRounding(Rounding):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ClosestRounding(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ClosestRounding
    __del__ = lambda self : None;
ClosestRounding_swigregister = _QuantLib.ClosestRounding_swigregister
ClosestRounding_swigregister(ClosestRounding)

class CeilingTruncation(Rounding):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CeilingTruncation(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CeilingTruncation
    __del__ = lambda self : None;
CeilingTruncation_swigregister = _QuantLib.CeilingTruncation_swigregister
CeilingTruncation_swigregister(CeilingTruncation)

class FloorTruncation(Rounding):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FloorTruncation(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FloorTruncation
    __del__ = lambda self : None;
FloorTruncation_swigregister = _QuantLib.FloorTruncation_swigregister
FloorTruncation_swigregister(FloorTruncation)

class Currency(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def name(*args): return _QuantLib.Currency_name(*args)
    def code(*args): return _QuantLib.Currency_code(*args)
    def numericCode(*args): return _QuantLib.Currency_numericCode(*args)
    def symbol(*args): return _QuantLib.Currency_symbol(*args)
    def fractionSymbol(*args): return _QuantLib.Currency_fractionSymbol(*args)
    def fractionsPerUnit(*args): return _QuantLib.Currency_fractionsPerUnit(*args)
    def rounding(*args): return _QuantLib.Currency_rounding(*args)
    def format(*args): return _QuantLib.Currency_format(*args)
    def __nonzero__(*args): return _QuantLib.Currency___nonzero__(*args)
    def triangulationCurrency(*args): return _QuantLib.Currency_triangulationCurrency(*args)
    def __str__(*args): return _QuantLib.Currency___str__(*args)
    def __eq__(*args): return _QuantLib.Currency___eq__(*args)
    def __ne__(*args): return _QuantLib.Currency___ne__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Currency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Currency
    __del__ = lambda self : None;
Currency_swigregister = _QuantLib.Currency_swigregister
Currency_swigregister(Currency)

class ARSCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ARSCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ARSCurrency
    __del__ = lambda self : None;
ARSCurrency_swigregister = _QuantLib.ARSCurrency_swigregister
ARSCurrency_swigregister(ARSCurrency)

class ATSCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ATSCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ATSCurrency
    __del__ = lambda self : None;
ATSCurrency_swigregister = _QuantLib.ATSCurrency_swigregister
ATSCurrency_swigregister(ATSCurrency)

class AUDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AUDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AUDCurrency
    __del__ = lambda self : None;
AUDCurrency_swigregister = _QuantLib.AUDCurrency_swigregister
AUDCurrency_swigregister(AUDCurrency)

class BDTCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BDTCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BDTCurrency
    __del__ = lambda self : None;
BDTCurrency_swigregister = _QuantLib.BDTCurrency_swigregister
BDTCurrency_swigregister(BDTCurrency)

class BEFCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BEFCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BEFCurrency
    __del__ = lambda self : None;
BEFCurrency_swigregister = _QuantLib.BEFCurrency_swigregister
BEFCurrency_swigregister(BEFCurrency)

class BGLCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BGLCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BGLCurrency
    __del__ = lambda self : None;
BGLCurrency_swigregister = _QuantLib.BGLCurrency_swigregister
BGLCurrency_swigregister(BGLCurrency)

class BRLCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BRLCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BRLCurrency
    __del__ = lambda self : None;
BRLCurrency_swigregister = _QuantLib.BRLCurrency_swigregister
BRLCurrency_swigregister(BRLCurrency)

class BYRCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BYRCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BYRCurrency
    __del__ = lambda self : None;
BYRCurrency_swigregister = _QuantLib.BYRCurrency_swigregister
BYRCurrency_swigregister(BYRCurrency)

class CADCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CADCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CADCurrency
    __del__ = lambda self : None;
CADCurrency_swigregister = _QuantLib.CADCurrency_swigregister
CADCurrency_swigregister(CADCurrency)

class CHFCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CHFCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CHFCurrency
    __del__ = lambda self : None;
CHFCurrency_swigregister = _QuantLib.CHFCurrency_swigregister
CHFCurrency_swigregister(CHFCurrency)

class CLPCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CLPCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CLPCurrency
    __del__ = lambda self : None;
CLPCurrency_swigregister = _QuantLib.CLPCurrency_swigregister
CLPCurrency_swigregister(CLPCurrency)

class CNYCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CNYCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CNYCurrency
    __del__ = lambda self : None;
CNYCurrency_swigregister = _QuantLib.CNYCurrency_swigregister
CNYCurrency_swigregister(CNYCurrency)

class COPCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_COPCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_COPCurrency
    __del__ = lambda self : None;
COPCurrency_swigregister = _QuantLib.COPCurrency_swigregister
COPCurrency_swigregister(COPCurrency)

class CYPCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CYPCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CYPCurrency
    __del__ = lambda self : None;
CYPCurrency_swigregister = _QuantLib.CYPCurrency_swigregister
CYPCurrency_swigregister(CYPCurrency)

class CZKCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CZKCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CZKCurrency
    __del__ = lambda self : None;
CZKCurrency_swigregister = _QuantLib.CZKCurrency_swigregister
CZKCurrency_swigregister(CZKCurrency)

class DEMCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DEMCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DEMCurrency
    __del__ = lambda self : None;
DEMCurrency_swigregister = _QuantLib.DEMCurrency_swigregister
DEMCurrency_swigregister(DEMCurrency)

class DKKCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DKKCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DKKCurrency
    __del__ = lambda self : None;
DKKCurrency_swigregister = _QuantLib.DKKCurrency_swigregister
DKKCurrency_swigregister(DKKCurrency)

class EEKCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EEKCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EEKCurrency
    __del__ = lambda self : None;
EEKCurrency_swigregister = _QuantLib.EEKCurrency_swigregister
EEKCurrency_swigregister(EEKCurrency)

class ESPCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ESPCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ESPCurrency
    __del__ = lambda self : None;
ESPCurrency_swigregister = _QuantLib.ESPCurrency_swigregister
ESPCurrency_swigregister(ESPCurrency)

class EURCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURCurrency
    __del__ = lambda self : None;
EURCurrency_swigregister = _QuantLib.EURCurrency_swigregister
EURCurrency_swigregister(EURCurrency)

class FIMCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FIMCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FIMCurrency
    __del__ = lambda self : None;
FIMCurrency_swigregister = _QuantLib.FIMCurrency_swigregister
FIMCurrency_swigregister(FIMCurrency)

class FRFCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FRFCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FRFCurrency
    __del__ = lambda self : None;
FRFCurrency_swigregister = _QuantLib.FRFCurrency_swigregister
FRFCurrency_swigregister(FRFCurrency)

class GBPCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GBPCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_GBPCurrency
    __del__ = lambda self : None;
GBPCurrency_swigregister = _QuantLib.GBPCurrency_swigregister
GBPCurrency_swigregister(GBPCurrency)

class GRDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GRDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_GRDCurrency
    __del__ = lambda self : None;
GRDCurrency_swigregister = _QuantLib.GRDCurrency_swigregister
GRDCurrency_swigregister(GRDCurrency)

class HKDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_HKDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_HKDCurrency
    __del__ = lambda self : None;
HKDCurrency_swigregister = _QuantLib.HKDCurrency_swigregister
HKDCurrency_swigregister(HKDCurrency)

class HUFCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_HUFCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_HUFCurrency
    __del__ = lambda self : None;
HUFCurrency_swigregister = _QuantLib.HUFCurrency_swigregister
HUFCurrency_swigregister(HUFCurrency)

class IEPCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_IEPCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_IEPCurrency
    __del__ = lambda self : None;
IEPCurrency_swigregister = _QuantLib.IEPCurrency_swigregister
IEPCurrency_swigregister(IEPCurrency)

class ILSCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ILSCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ILSCurrency
    __del__ = lambda self : None;
ILSCurrency_swigregister = _QuantLib.ILSCurrency_swigregister
ILSCurrency_swigregister(ILSCurrency)

class INRCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_INRCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_INRCurrency
    __del__ = lambda self : None;
INRCurrency_swigregister = _QuantLib.INRCurrency_swigregister
INRCurrency_swigregister(INRCurrency)

class IQDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_IQDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_IQDCurrency
    __del__ = lambda self : None;
IQDCurrency_swigregister = _QuantLib.IQDCurrency_swigregister
IQDCurrency_swigregister(IQDCurrency)

class IRRCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_IRRCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_IRRCurrency
    __del__ = lambda self : None;
IRRCurrency_swigregister = _QuantLib.IRRCurrency_swigregister
IRRCurrency_swigregister(IRRCurrency)

class ISKCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ISKCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ISKCurrency
    __del__ = lambda self : None;
ISKCurrency_swigregister = _QuantLib.ISKCurrency_swigregister
ISKCurrency_swigregister(ISKCurrency)

class ITLCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ITLCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ITLCurrency
    __del__ = lambda self : None;
ITLCurrency_swigregister = _QuantLib.ITLCurrency_swigregister
ITLCurrency_swigregister(ITLCurrency)

class JPYCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_JPYCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_JPYCurrency
    __del__ = lambda self : None;
JPYCurrency_swigregister = _QuantLib.JPYCurrency_swigregister
JPYCurrency_swigregister(JPYCurrency)

class KRWCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_KRWCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_KRWCurrency
    __del__ = lambda self : None;
KRWCurrency_swigregister = _QuantLib.KRWCurrency_swigregister
KRWCurrency_swigregister(KRWCurrency)

class KWDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_KWDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_KWDCurrency
    __del__ = lambda self : None;
KWDCurrency_swigregister = _QuantLib.KWDCurrency_swigregister
KWDCurrency_swigregister(KWDCurrency)

class LTLCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LTLCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_LTLCurrency
    __del__ = lambda self : None;
LTLCurrency_swigregister = _QuantLib.LTLCurrency_swigregister
LTLCurrency_swigregister(LTLCurrency)

class LUFCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LUFCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_LUFCurrency
    __del__ = lambda self : None;
LUFCurrency_swigregister = _QuantLib.LUFCurrency_swigregister
LUFCurrency_swigregister(LUFCurrency)

class LVLCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LVLCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_LVLCurrency
    __del__ = lambda self : None;
LVLCurrency_swigregister = _QuantLib.LVLCurrency_swigregister
LVLCurrency_swigregister(LVLCurrency)

class MTLCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MTLCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_MTLCurrency
    __del__ = lambda self : None;
MTLCurrency_swigregister = _QuantLib.MTLCurrency_swigregister
MTLCurrency_swigregister(MTLCurrency)

class MXNCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MXNCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_MXNCurrency
    __del__ = lambda self : None;
MXNCurrency_swigregister = _QuantLib.MXNCurrency_swigregister
MXNCurrency_swigregister(MXNCurrency)

class NLGCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NLGCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NLGCurrency
    __del__ = lambda self : None;
NLGCurrency_swigregister = _QuantLib.NLGCurrency_swigregister
NLGCurrency_swigregister(NLGCurrency)

class NOKCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NOKCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NOKCurrency
    __del__ = lambda self : None;
NOKCurrency_swigregister = _QuantLib.NOKCurrency_swigregister
NOKCurrency_swigregister(NOKCurrency)

class NPRCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NPRCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NPRCurrency
    __del__ = lambda self : None;
NPRCurrency_swigregister = _QuantLib.NPRCurrency_swigregister
NPRCurrency_swigregister(NPRCurrency)

class NZDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NZDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NZDCurrency
    __del__ = lambda self : None;
NZDCurrency_swigregister = _QuantLib.NZDCurrency_swigregister
NZDCurrency_swigregister(NZDCurrency)

class PKRCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_PKRCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_PKRCurrency
    __del__ = lambda self : None;
PKRCurrency_swigregister = _QuantLib.PKRCurrency_swigregister
PKRCurrency_swigregister(PKRCurrency)

class PLNCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_PLNCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_PLNCurrency
    __del__ = lambda self : None;
PLNCurrency_swigregister = _QuantLib.PLNCurrency_swigregister
PLNCurrency_swigregister(PLNCurrency)

class PTECurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_PTECurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_PTECurrency
    __del__ = lambda self : None;
PTECurrency_swigregister = _QuantLib.PTECurrency_swigregister
PTECurrency_swigregister(PTECurrency)

class ROLCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ROLCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ROLCurrency
    __del__ = lambda self : None;
ROLCurrency_swigregister = _QuantLib.ROLCurrency_swigregister
ROLCurrency_swigregister(ROLCurrency)

class RONCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RONCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_RONCurrency
    __del__ = lambda self : None;
RONCurrency_swigregister = _QuantLib.RONCurrency_swigregister
RONCurrency_swigregister(RONCurrency)

class SARCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SARCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SARCurrency
    __del__ = lambda self : None;
SARCurrency_swigregister = _QuantLib.SARCurrency_swigregister
SARCurrency_swigregister(SARCurrency)

class SEKCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SEKCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SEKCurrency
    __del__ = lambda self : None;
SEKCurrency_swigregister = _QuantLib.SEKCurrency_swigregister
SEKCurrency_swigregister(SEKCurrency)

class SGDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SGDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SGDCurrency
    __del__ = lambda self : None;
SGDCurrency_swigregister = _QuantLib.SGDCurrency_swigregister
SGDCurrency_swigregister(SGDCurrency)

class SITCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SITCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SITCurrency
    __del__ = lambda self : None;
SITCurrency_swigregister = _QuantLib.SITCurrency_swigregister
SITCurrency_swigregister(SITCurrency)

class SKKCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SKKCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SKKCurrency
    __del__ = lambda self : None;
SKKCurrency_swigregister = _QuantLib.SKKCurrency_swigregister
SKKCurrency_swigregister(SKKCurrency)

class THBCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_THBCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_THBCurrency
    __del__ = lambda self : None;
THBCurrency_swigregister = _QuantLib.THBCurrency_swigregister
THBCurrency_swigregister(THBCurrency)

class TRLCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TRLCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_TRLCurrency
    __del__ = lambda self : None;
TRLCurrency_swigregister = _QuantLib.TRLCurrency_swigregister
TRLCurrency_swigregister(TRLCurrency)

class TRYCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TRYCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_TRYCurrency
    __del__ = lambda self : None;
TRYCurrency_swigregister = _QuantLib.TRYCurrency_swigregister
TRYCurrency_swigregister(TRYCurrency)

class TTDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TTDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_TTDCurrency
    __del__ = lambda self : None;
TTDCurrency_swigregister = _QuantLib.TTDCurrency_swigregister
TTDCurrency_swigregister(TTDCurrency)

class TWDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TWDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_TWDCurrency
    __del__ = lambda self : None;
TWDCurrency_swigregister = _QuantLib.TWDCurrency_swigregister
TWDCurrency_swigregister(TWDCurrency)

class USDCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_USDCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_USDCurrency
    __del__ = lambda self : None;
USDCurrency_swigregister = _QuantLib.USDCurrency_swigregister
USDCurrency_swigregister(USDCurrency)

class VEBCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_VEBCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_VEBCurrency
    __del__ = lambda self : None;
VEBCurrency_swigregister = _QuantLib.VEBCurrency_swigregister
VEBCurrency_swigregister(VEBCurrency)

class ZARCurrency(Currency):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ZARCurrency(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ZARCurrency
    __del__ = lambda self : None;
ZARCurrency_swigregister = _QuantLib.ZARCurrency_swigregister
ZARCurrency_swigregister(ZARCurrency)

class LinearInterpolation(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LinearInterpolation(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.LinearInterpolation___call__(*args)
    __swig_destroy__ = _QuantLib.delete_LinearInterpolation
    __del__ = lambda self : None;
LinearInterpolation_swigregister = _QuantLib.LinearInterpolation_swigregister
LinearInterpolation_swigregister(LinearInterpolation)

class LogLinearInterpolation(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LogLinearInterpolation(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.LogLinearInterpolation___call__(*args)
    __swig_destroy__ = _QuantLib.delete_LogLinearInterpolation
    __del__ = lambda self : None;
LogLinearInterpolation_swigregister = _QuantLib.LogLinearInterpolation_swigregister
LogLinearInterpolation_swigregister(LogLinearInterpolation)

class BackwardFlatInterpolation(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BackwardFlatInterpolation(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.BackwardFlatInterpolation___call__(*args)
    __swig_destroy__ = _QuantLib.delete_BackwardFlatInterpolation
    __del__ = lambda self : None;
BackwardFlatInterpolation_swigregister = _QuantLib.BackwardFlatInterpolation_swigregister
BackwardFlatInterpolation_swigregister(BackwardFlatInterpolation)

class ForwardFlatInterpolation(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ForwardFlatInterpolation(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.ForwardFlatInterpolation___call__(*args)
    __swig_destroy__ = _QuantLib.delete_ForwardFlatInterpolation
    __del__ = lambda self : None;
ForwardFlatInterpolation_swigregister = _QuantLib.ForwardFlatInterpolation_swigregister
ForwardFlatInterpolation_swigregister(ForwardFlatInterpolation)

class CubicSplineInterpolation(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CubicSplineInterpolation(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.CubicSplineInterpolation___call__(*args)
    def derivative(*args): return _QuantLib.CubicSplineInterpolation_derivative(*args)
    def secondDerivative(*args): return _QuantLib.CubicSplineInterpolation_secondDerivative(*args)
    __swig_destroy__ = _QuantLib.delete_CubicSplineInterpolation
    __del__ = lambda self : None;
CubicSplineInterpolation_swigregister = _QuantLib.CubicSplineInterpolation_swigregister
CubicSplineInterpolation_swigregister(CubicSplineInterpolation)

class MonotonicCubicSpline(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MonotonicCubicSpline(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.MonotonicCubicSpline___call__(*args)
    def derivative(*args): return _QuantLib.MonotonicCubicSpline_derivative(*args)
    def secondDerivative(*args): return _QuantLib.MonotonicCubicSpline_secondDerivative(*args)
    __swig_destroy__ = _QuantLib.delete_MonotonicCubicSpline
    __del__ = lambda self : None;
MonotonicCubicSpline_swigregister = _QuantLib.MonotonicCubicSpline_swigregister
MonotonicCubicSpline_swigregister(MonotonicCubicSpline)

class BilinearInterpolation(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BilinearInterpolation(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.BilinearInterpolation___call__(*args)
    __swig_destroy__ = _QuantLib.delete_BilinearInterpolation
    __del__ = lambda self : None;
BilinearInterpolation_swigregister = _QuantLib.BilinearInterpolation_swigregister
BilinearInterpolation_swigregister(BilinearInterpolation)

class BicubicSpline(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BicubicSpline(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.BicubicSpline___call__(*args)
    __swig_destroy__ = _QuantLib.delete_BicubicSpline
    __del__ = lambda self : None;
BicubicSpline_swigregister = _QuantLib.BicubicSpline_swigregister
BicubicSpline_swigregister(BicubicSpline)

class BackwardFlat(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BackwardFlat(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BackwardFlat
    __del__ = lambda self : None;
BackwardFlat_swigregister = _QuantLib.BackwardFlat_swigregister
BackwardFlat_swigregister(BackwardFlat)

class ForwardFlat(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ForwardFlat(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ForwardFlat
    __del__ = lambda self : None;
ForwardFlat_swigregister = _QuantLib.ForwardFlat_swigregister
ForwardFlat_swigregister(ForwardFlat)

class Linear(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Linear(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Linear
    __del__ = lambda self : None;
Linear_swigregister = _QuantLib.Linear_swigregister
Linear_swigregister(Linear)

class LogLinear(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LogLinear(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_LogLinear
    __del__ = lambda self : None;
LogLinear_swigregister = _QuantLib.LogLinear_swigregister
LogLinear_swigregister(LogLinear)

class CubicSpline(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CubicSpline(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CubicSpline
    __del__ = lambda self : None;
CubicSpline_swigregister = _QuantLib.CubicSpline_swigregister
CubicSpline_swigregister(CubicSpline)

class YieldTermStructure(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.YieldTermStructure___deref__(*args)
    def __nonzero__(*args): return _QuantLib.YieldTermStructure___nonzero__(*args)
    def asObservable(*args): return _QuantLib.YieldTermStructure_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_YieldTermStructure(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_YieldTermStructure
    __del__ = lambda self : None;
    def dayCounter(*args): return _QuantLib.YieldTermStructure_dayCounter(*args)
    def calendar(*args): return _QuantLib.YieldTermStructure_calendar(*args)
    def referenceDate(*args): return _QuantLib.YieldTermStructure_referenceDate(*args)
    def maxDate(*args): return _QuantLib.YieldTermStructure_maxDate(*args)
    def maxTime(*args): return _QuantLib.YieldTermStructure_maxTime(*args)
    def discount(*args): return _QuantLib.YieldTermStructure_discount(*args)
    def zeroRate(*args): return _QuantLib.YieldTermStructure_zeroRate(*args)
    def forwardRate(*args): return _QuantLib.YieldTermStructure_forwardRate(*args)
    def enableExtrapolation(*args): return _QuantLib.YieldTermStructure_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.YieldTermStructure_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.YieldTermStructure_allowsExtrapolation(*args)
YieldTermStructure_swigregister = _QuantLib.YieldTermStructure_swigregister
YieldTermStructure_swigregister(YieldTermStructure)

class YieldTermStructureHandle(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_YieldTermStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def __deref__(*args): return _QuantLib.YieldTermStructureHandle___deref__(*args)
    def __nonzero__(*args): return _QuantLib.YieldTermStructureHandle___nonzero__(*args)
    def asObservable(*args): return _QuantLib.YieldTermStructureHandle_asObservable(*args)
    __swig_destroy__ = _QuantLib.delete_YieldTermStructureHandle
    __del__ = lambda self : None;
    def dayCounter(*args): return _QuantLib.YieldTermStructureHandle_dayCounter(*args)
    def calendar(*args): return _QuantLib.YieldTermStructureHandle_calendar(*args)
    def referenceDate(*args): return _QuantLib.YieldTermStructureHandle_referenceDate(*args)
    def maxDate(*args): return _QuantLib.YieldTermStructureHandle_maxDate(*args)
    def maxTime(*args): return _QuantLib.YieldTermStructureHandle_maxTime(*args)
    def discount(*args): return _QuantLib.YieldTermStructureHandle_discount(*args)
    def zeroRate(*args): return _QuantLib.YieldTermStructureHandle_zeroRate(*args)
    def forwardRate(*args): return _QuantLib.YieldTermStructureHandle_forwardRate(*args)
    def enableExtrapolation(*args): return _QuantLib.YieldTermStructureHandle_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.YieldTermStructureHandle_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.YieldTermStructureHandle_allowsExtrapolation(*args)
YieldTermStructureHandle_swigregister = _QuantLib.YieldTermStructureHandle_swigregister
YieldTermStructureHandle_swigregister(YieldTermStructureHandle)

class RelinkableYieldTermStructureHandle(YieldTermStructureHandle):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RelinkableYieldTermStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def linkTo(*args): return _QuantLib.RelinkableYieldTermStructureHandle_linkTo(*args)
    __swig_destroy__ = _QuantLib.delete_RelinkableYieldTermStructureHandle
    __del__ = lambda self : None;
RelinkableYieldTermStructureHandle_swigregister = _QuantLib.RelinkableYieldTermStructureHandle_swigregister
RelinkableYieldTermStructureHandle_swigregister(RelinkableYieldTermStructureHandle)

class ImpliedTermStructure(YieldTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ImpliedTermStructure(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ImpliedTermStructure
    __del__ = lambda self : None;
ImpliedTermStructure_swigregister = _QuantLib.ImpliedTermStructure_swigregister
ImpliedTermStructure_swigregister(ImpliedTermStructure)

class ZeroSpreadedTermStructure(YieldTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ZeroSpreadedTermStructure(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ZeroSpreadedTermStructure
    __del__ = lambda self : None;
ZeroSpreadedTermStructure_swigregister = _QuantLib.ZeroSpreadedTermStructure_swigregister
ZeroSpreadedTermStructure_swigregister(ZeroSpreadedTermStructure)

class ForwardSpreadedTermStructure(YieldTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ForwardSpreadedTermStructure(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ForwardSpreadedTermStructure
    __del__ = lambda self : None;
ForwardSpreadedTermStructure_swigregister = _QuantLib.ForwardSpreadedTermStructure_swigregister
ForwardSpreadedTermStructure_swigregister(ForwardSpreadedTermStructure)

class FlatForward(YieldTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FlatForward(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FlatForward
    __del__ = lambda self : None;
FlatForward_swigregister = _QuantLib.FlatForward_swigregister
FlatForward_swigregister(FlatForward)

class BlackVolTermStructure(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.BlackVolTermStructure___deref__(*args)
    def __nonzero__(*args): return _QuantLib.BlackVolTermStructure___nonzero__(*args)
    def asObservable(*args): return _QuantLib.BlackVolTermStructure_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_BlackVolTermStructure(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BlackVolTermStructure
    __del__ = lambda self : None;
    def referenceDate(*args): return _QuantLib.BlackVolTermStructure_referenceDate(*args)
    def dayCounter(*args): return _QuantLib.BlackVolTermStructure_dayCounter(*args)
    def calendar(*args): return _QuantLib.BlackVolTermStructure_calendar(*args)
    def maxDate(*args): return _QuantLib.BlackVolTermStructure_maxDate(*args)
    def maxTime(*args): return _QuantLib.BlackVolTermStructure_maxTime(*args)
    def minStrike(*args): return _QuantLib.BlackVolTermStructure_minStrike(*args)
    def maxStrike(*args): return _QuantLib.BlackVolTermStructure_maxStrike(*args)
    def blackVol(*args): return _QuantLib.BlackVolTermStructure_blackVol(*args)
    def blackVariance(*args): return _QuantLib.BlackVolTermStructure_blackVariance(*args)
    def blackForwardVol(*args): return _QuantLib.BlackVolTermStructure_blackForwardVol(*args)
    def blackForwardVariance(*args): return _QuantLib.BlackVolTermStructure_blackForwardVariance(*args)
    def enableExtrapolation(*args): return _QuantLib.BlackVolTermStructure_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.BlackVolTermStructure_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.BlackVolTermStructure_allowsExtrapolation(*args)
BlackVolTermStructure_swigregister = _QuantLib.BlackVolTermStructure_swigregister
BlackVolTermStructure_swigregister(BlackVolTermStructure)

class BlackVolTermStructureHandle(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BlackVolTermStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def __deref__(*args): return _QuantLib.BlackVolTermStructureHandle___deref__(*args)
    def __nonzero__(*args): return _QuantLib.BlackVolTermStructureHandle___nonzero__(*args)
    def asObservable(*args): return _QuantLib.BlackVolTermStructureHandle_asObservable(*args)
    __swig_destroy__ = _QuantLib.delete_BlackVolTermStructureHandle
    __del__ = lambda self : None;
    def referenceDate(*args): return _QuantLib.BlackVolTermStructureHandle_referenceDate(*args)
    def dayCounter(*args): return _QuantLib.BlackVolTermStructureHandle_dayCounter(*args)
    def calendar(*args): return _QuantLib.BlackVolTermStructureHandle_calendar(*args)
    def maxDate(*args): return _QuantLib.BlackVolTermStructureHandle_maxDate(*args)
    def maxTime(*args): return _QuantLib.BlackVolTermStructureHandle_maxTime(*args)
    def minStrike(*args): return _QuantLib.BlackVolTermStructureHandle_minStrike(*args)
    def maxStrike(*args): return _QuantLib.BlackVolTermStructureHandle_maxStrike(*args)
    def blackVol(*args): return _QuantLib.BlackVolTermStructureHandle_blackVol(*args)
    def blackVariance(*args): return _QuantLib.BlackVolTermStructureHandle_blackVariance(*args)
    def blackForwardVol(*args): return _QuantLib.BlackVolTermStructureHandle_blackForwardVol(*args)
    def blackForwardVariance(*args): return _QuantLib.BlackVolTermStructureHandle_blackForwardVariance(*args)
    def enableExtrapolation(*args): return _QuantLib.BlackVolTermStructureHandle_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.BlackVolTermStructureHandle_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.BlackVolTermStructureHandle_allowsExtrapolation(*args)
BlackVolTermStructureHandle_swigregister = _QuantLib.BlackVolTermStructureHandle_swigregister
BlackVolTermStructureHandle_swigregister(BlackVolTermStructureHandle)

class RelinkableBlackVolTermStructureHandle(BlackVolTermStructureHandle):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RelinkableBlackVolTermStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def linkTo(*args): return _QuantLib.RelinkableBlackVolTermStructureHandle_linkTo(*args)
    __swig_destroy__ = _QuantLib.delete_RelinkableBlackVolTermStructureHandle
    __del__ = lambda self : None;
RelinkableBlackVolTermStructureHandle_swigregister = _QuantLib.RelinkableBlackVolTermStructureHandle_swigregister
RelinkableBlackVolTermStructureHandle_swigregister(RelinkableBlackVolTermStructureHandle)

class LocalVolTermStructure(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.LocalVolTermStructure___deref__(*args)
    def __nonzero__(*args): return _QuantLib.LocalVolTermStructure___nonzero__(*args)
    def asObservable(*args): return _QuantLib.LocalVolTermStructure_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_LocalVolTermStructure(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_LocalVolTermStructure
    __del__ = lambda self : None;
    def referenceDate(*args): return _QuantLib.LocalVolTermStructure_referenceDate(*args)
    def dayCounter(*args): return _QuantLib.LocalVolTermStructure_dayCounter(*args)
    def calendar(*args): return _QuantLib.LocalVolTermStructure_calendar(*args)
    def maxDate(*args): return _QuantLib.LocalVolTermStructure_maxDate(*args)
    def maxTime(*args): return _QuantLib.LocalVolTermStructure_maxTime(*args)
    def minStrike(*args): return _QuantLib.LocalVolTermStructure_minStrike(*args)
    def maxStrike(*args): return _QuantLib.LocalVolTermStructure_maxStrike(*args)
    def localVol(*args): return _QuantLib.LocalVolTermStructure_localVol(*args)
    def enableExtrapolation(*args): return _QuantLib.LocalVolTermStructure_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.LocalVolTermStructure_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.LocalVolTermStructure_allowsExtrapolation(*args)
LocalVolTermStructure_swigregister = _QuantLib.LocalVolTermStructure_swigregister
LocalVolTermStructure_swigregister(LocalVolTermStructure)

class LocalVolTermStructureHandle(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LocalVolTermStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def __deref__(*args): return _QuantLib.LocalVolTermStructureHandle___deref__(*args)
    def __nonzero__(*args): return _QuantLib.LocalVolTermStructureHandle___nonzero__(*args)
    def asObservable(*args): return _QuantLib.LocalVolTermStructureHandle_asObservable(*args)
    __swig_destroy__ = _QuantLib.delete_LocalVolTermStructureHandle
    __del__ = lambda self : None;
    def referenceDate(*args): return _QuantLib.LocalVolTermStructureHandle_referenceDate(*args)
    def dayCounter(*args): return _QuantLib.LocalVolTermStructureHandle_dayCounter(*args)
    def calendar(*args): return _QuantLib.LocalVolTermStructureHandle_calendar(*args)
    def maxDate(*args): return _QuantLib.LocalVolTermStructureHandle_maxDate(*args)
    def maxTime(*args): return _QuantLib.LocalVolTermStructureHandle_maxTime(*args)
    def minStrike(*args): return _QuantLib.LocalVolTermStructureHandle_minStrike(*args)
    def maxStrike(*args): return _QuantLib.LocalVolTermStructureHandle_maxStrike(*args)
    def localVol(*args): return _QuantLib.LocalVolTermStructureHandle_localVol(*args)
    def enableExtrapolation(*args): return _QuantLib.LocalVolTermStructureHandle_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.LocalVolTermStructureHandle_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.LocalVolTermStructureHandle_allowsExtrapolation(*args)
LocalVolTermStructureHandle_swigregister = _QuantLib.LocalVolTermStructureHandle_swigregister
LocalVolTermStructureHandle_swigregister(LocalVolTermStructureHandle)

class RelinkableLocalVolTermStructureHandle(LocalVolTermStructureHandle):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RelinkableLocalVolTermStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def linkTo(*args): return _QuantLib.RelinkableLocalVolTermStructureHandle_linkTo(*args)
    __swig_destroy__ = _QuantLib.delete_RelinkableLocalVolTermStructureHandle
    __del__ = lambda self : None;
RelinkableLocalVolTermStructureHandle_swigregister = _QuantLib.RelinkableLocalVolTermStructureHandle_swigregister
RelinkableLocalVolTermStructureHandle_swigregister(RelinkableLocalVolTermStructureHandle)

class OptionletVolatilityStructure(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.OptionletVolatilityStructure___deref__(*args)
    def __nonzero__(*args): return _QuantLib.OptionletVolatilityStructure___nonzero__(*args)
    def asObservable(*args): return _QuantLib.OptionletVolatilityStructure_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_OptionletVolatilityStructure(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_OptionletVolatilityStructure
    __del__ = lambda self : None;
    def referenceDate(*args): return _QuantLib.OptionletVolatilityStructure_referenceDate(*args)
    def dayCounter(*args): return _QuantLib.OptionletVolatilityStructure_dayCounter(*args)
    def calendar(*args): return _QuantLib.OptionletVolatilityStructure_calendar(*args)
    def maxDate(*args): return _QuantLib.OptionletVolatilityStructure_maxDate(*args)
    def maxTime(*args): return _QuantLib.OptionletVolatilityStructure_maxTime(*args)
    def minStrike(*args): return _QuantLib.OptionletVolatilityStructure_minStrike(*args)
    def maxStrike(*args): return _QuantLib.OptionletVolatilityStructure_maxStrike(*args)
    def volatility(*args): return _QuantLib.OptionletVolatilityStructure_volatility(*args)
    def blackVariance(*args): return _QuantLib.OptionletVolatilityStructure_blackVariance(*args)
    def enableExtrapolation(*args): return _QuantLib.OptionletVolatilityStructure_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.OptionletVolatilityStructure_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.OptionletVolatilityStructure_allowsExtrapolation(*args)
OptionletVolatilityStructure_swigregister = _QuantLib.OptionletVolatilityStructure_swigregister
OptionletVolatilityStructure_swigregister(OptionletVolatilityStructure)

class OptionletVolatilityStructureHandle(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_OptionletVolatilityStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def __deref__(*args): return _QuantLib.OptionletVolatilityStructureHandle___deref__(*args)
    def __nonzero__(*args): return _QuantLib.OptionletVolatilityStructureHandle___nonzero__(*args)
    def asObservable(*args): return _QuantLib.OptionletVolatilityStructureHandle_asObservable(*args)
    __swig_destroy__ = _QuantLib.delete_OptionletVolatilityStructureHandle
    __del__ = lambda self : None;
    def referenceDate(*args): return _QuantLib.OptionletVolatilityStructureHandle_referenceDate(*args)
    def dayCounter(*args): return _QuantLib.OptionletVolatilityStructureHandle_dayCounter(*args)
    def calendar(*args): return _QuantLib.OptionletVolatilityStructureHandle_calendar(*args)
    def maxDate(*args): return _QuantLib.OptionletVolatilityStructureHandle_maxDate(*args)
    def maxTime(*args): return _QuantLib.OptionletVolatilityStructureHandle_maxTime(*args)
    def minStrike(*args): return _QuantLib.OptionletVolatilityStructureHandle_minStrike(*args)
    def maxStrike(*args): return _QuantLib.OptionletVolatilityStructureHandle_maxStrike(*args)
    def volatility(*args): return _QuantLib.OptionletVolatilityStructureHandle_volatility(*args)
    def blackVariance(*args): return _QuantLib.OptionletVolatilityStructureHandle_blackVariance(*args)
    def enableExtrapolation(*args): return _QuantLib.OptionletVolatilityStructureHandle_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.OptionletVolatilityStructureHandle_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.OptionletVolatilityStructureHandle_allowsExtrapolation(*args)
OptionletVolatilityStructureHandle_swigregister = _QuantLib.OptionletVolatilityStructureHandle_swigregister
OptionletVolatilityStructureHandle_swigregister(OptionletVolatilityStructureHandle)

class RelinkableOptionletVolatilityStructureHandle(OptionletVolatilityStructureHandle):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RelinkableOptionletVolatilityStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def linkTo(*args): return _QuantLib.RelinkableOptionletVolatilityStructureHandle_linkTo(*args)
    __swig_destroy__ = _QuantLib.delete_RelinkableOptionletVolatilityStructureHandle
    __del__ = lambda self : None;
RelinkableOptionletVolatilityStructureHandle_swigregister = _QuantLib.RelinkableOptionletVolatilityStructureHandle_swigregister
RelinkableOptionletVolatilityStructureHandle_swigregister(RelinkableOptionletVolatilityStructureHandle)

class SwaptionVolatilityStructure(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.SwaptionVolatilityStructure___deref__(*args)
    def __nonzero__(*args): return _QuantLib.SwaptionVolatilityStructure___nonzero__(*args)
    def asObservable(*args): return _QuantLib.SwaptionVolatilityStructure_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_SwaptionVolatilityStructure(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SwaptionVolatilityStructure
    __del__ = lambda self : None;
    def referenceDate(*args): return _QuantLib.SwaptionVolatilityStructure_referenceDate(*args)
    def dayCounter(*args): return _QuantLib.SwaptionVolatilityStructure_dayCounter(*args)
    def calendar(*args): return _QuantLib.SwaptionVolatilityStructure_calendar(*args)
    def maxSwapTenor(*args): return _QuantLib.SwaptionVolatilityStructure_maxSwapTenor(*args)
    def maxSwapLength(*args): return _QuantLib.SwaptionVolatilityStructure_maxSwapLength(*args)
    def minStrike(*args): return _QuantLib.SwaptionVolatilityStructure_minStrike(*args)
    def maxStrike(*args): return _QuantLib.SwaptionVolatilityStructure_maxStrike(*args)
    def volatility(*args): return _QuantLib.SwaptionVolatilityStructure_volatility(*args)
    def blackVariance(*args): return _QuantLib.SwaptionVolatilityStructure_blackVariance(*args)
    def enableExtrapolation(*args): return _QuantLib.SwaptionVolatilityStructure_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.SwaptionVolatilityStructure_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.SwaptionVolatilityStructure_allowsExtrapolation(*args)
SwaptionVolatilityStructure_swigregister = _QuantLib.SwaptionVolatilityStructure_swigregister
SwaptionVolatilityStructure_swigregister(SwaptionVolatilityStructure)

class SwaptionVolatilityStructureHandle(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SwaptionVolatilityStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def __deref__(*args): return _QuantLib.SwaptionVolatilityStructureHandle___deref__(*args)
    def __nonzero__(*args): return _QuantLib.SwaptionVolatilityStructureHandle___nonzero__(*args)
    def asObservable(*args): return _QuantLib.SwaptionVolatilityStructureHandle_asObservable(*args)
    __swig_destroy__ = _QuantLib.delete_SwaptionVolatilityStructureHandle
    __del__ = lambda self : None;
    def referenceDate(*args): return _QuantLib.SwaptionVolatilityStructureHandle_referenceDate(*args)
    def dayCounter(*args): return _QuantLib.SwaptionVolatilityStructureHandle_dayCounter(*args)
    def calendar(*args): return _QuantLib.SwaptionVolatilityStructureHandle_calendar(*args)
    def maxSwapTenor(*args): return _QuantLib.SwaptionVolatilityStructureHandle_maxSwapTenor(*args)
    def maxSwapLength(*args): return _QuantLib.SwaptionVolatilityStructureHandle_maxSwapLength(*args)
    def minStrike(*args): return _QuantLib.SwaptionVolatilityStructureHandle_minStrike(*args)
    def maxStrike(*args): return _QuantLib.SwaptionVolatilityStructureHandle_maxStrike(*args)
    def volatility(*args): return _QuantLib.SwaptionVolatilityStructureHandle_volatility(*args)
    def blackVariance(*args): return _QuantLib.SwaptionVolatilityStructureHandle_blackVariance(*args)
    def enableExtrapolation(*args): return _QuantLib.SwaptionVolatilityStructureHandle_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.SwaptionVolatilityStructureHandle_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.SwaptionVolatilityStructureHandle_allowsExtrapolation(*args)
SwaptionVolatilityStructureHandle_swigregister = _QuantLib.SwaptionVolatilityStructureHandle_swigregister
SwaptionVolatilityStructureHandle_swigregister(SwaptionVolatilityStructureHandle)

class RelinkableSwaptionVolatilityStructureHandle(SwaptionVolatilityStructureHandle):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RelinkableSwaptionVolatilityStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def linkTo(*args): return _QuantLib.RelinkableSwaptionVolatilityStructureHandle_linkTo(*args)
    __swig_destroy__ = _QuantLib.delete_RelinkableSwaptionVolatilityStructureHandle
    __del__ = lambda self : None;
RelinkableSwaptionVolatilityStructureHandle_swigregister = _QuantLib.RelinkableSwaptionVolatilityStructureHandle_swigregister
RelinkableSwaptionVolatilityStructureHandle_swigregister(RelinkableSwaptionVolatilityStructureHandle)

class BlackConstantVol(BlackVolTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BlackConstantVol(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BlackConstantVol
    __del__ = lambda self : None;
BlackConstantVol_swigregister = _QuantLib.BlackConstantVol_swigregister
BlackConstantVol_swigregister(BlackConstantVol)

class BlackVarianceSurface(BlackVolTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BlackVarianceSurface(*args)
        try: self.this.append(this)
        except: self.this = this
    ConstantExtrapolation = _QuantLib.BlackVarianceSurface_ConstantExtrapolation
    InterpolatorDefaultExtrapolation = _QuantLib.BlackVarianceSurface_InterpolatorDefaultExtrapolation
    __swig_destroy__ = _QuantLib.delete_BlackVarianceSurface
    __del__ = lambda self : None;
BlackVarianceSurface_swigregister = _QuantLib.BlackVarianceSurface_swigregister
BlackVarianceSurface_swigregister(BlackVarianceSurface)

class LocalConstantVol(LocalVolTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LocalConstantVol(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_LocalConstantVol
    __del__ = lambda self : None;
LocalConstantVol_swigregister = _QuantLib.LocalConstantVol_swigregister
LocalConstantVol_swigregister(LocalConstantVol)

class ConstantOptionletVol(OptionletVolatilityStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ConstantOptionletVol(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ConstantOptionletVol
    __del__ = lambda self : None;
ConstantOptionletVol_swigregister = _QuantLib.ConstantOptionletVol_swigregister
ConstantOptionletVol_swigregister(ConstantOptionletVol)

class SwaptionVolatilityMatrix(SwaptionVolatilityStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SwaptionVolatilityMatrix(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SwaptionVolatilityMatrix
    __del__ = lambda self : None;
SwaptionVolatilityMatrix_swigregister = _QuantLib.SwaptionVolatilityMatrix_swigregister
SwaptionVolatilityMatrix_swigregister(SwaptionVolatilityMatrix)

class StochasticProcess(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.StochasticProcess___deref__(*args)
    def __nonzero__(*args): return _QuantLib.StochasticProcess___nonzero__(*args)
    def asObservable(*args): return _QuantLib.StochasticProcess_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_StochasticProcess(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_StochasticProcess
    __del__ = lambda self : None;
StochasticProcess_swigregister = _QuantLib.StochasticProcess_swigregister
StochasticProcess_swigregister(StochasticProcess)

class StochasticProcess1D(StochasticProcess):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _QuantLib.delete_StochasticProcess1D
    __del__ = lambda self : None;
StochasticProcess1D_swigregister = _QuantLib.StochasticProcess1D_swigregister
StochasticProcess1D_swigregister(StochasticProcess1D)

class GeneralizedBlackScholesProcess(StochasticProcess1D):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GeneralizedBlackScholesProcess(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_GeneralizedBlackScholesProcess
    __del__ = lambda self : None;
GeneralizedBlackScholesProcess_swigregister = _QuantLib.GeneralizedBlackScholesProcess_swigregister
GeneralizedBlackScholesProcess_swigregister(GeneralizedBlackScholesProcess)

class BlackScholesProcess(GeneralizedBlackScholesProcess):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BlackScholesProcess(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BlackScholesProcess
    __del__ = lambda self : None;
BlackScholesProcess_swigregister = _QuantLib.BlackScholesProcess_swigregister
BlackScholesProcess_swigregister(BlackScholesProcess)

class BlackScholesMertonProcess(GeneralizedBlackScholesProcess):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BlackScholesMertonProcess(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BlackScholesMertonProcess
    __del__ = lambda self : None;
BlackScholesMertonProcess_swigregister = _QuantLib.BlackScholesMertonProcess_swigregister
BlackScholesMertonProcess_swigregister(BlackScholesMertonProcess)

class BlackProcess(GeneralizedBlackScholesProcess):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BlackProcess(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BlackProcess
    __del__ = lambda self : None;
BlackProcess_swigregister = _QuantLib.BlackProcess_swigregister
BlackProcess_swigregister(BlackProcess)

class GarmanKohlagenProcess(GeneralizedBlackScholesProcess):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GarmanKohlagenProcess(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_GarmanKohlagenProcess
    __del__ = lambda self : None;
GarmanKohlagenProcess_swigregister = _QuantLib.GarmanKohlagenProcess_swigregister
GarmanKohlagenProcess_swigregister(GarmanKohlagenProcess)

class Merton76Process(StochasticProcess1D):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Merton76Process(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Merton76Process
    __del__ = lambda self : None;
Merton76Process_swigregister = _QuantLib.Merton76Process_swigregister
Merton76Process_swigregister(Merton76Process)

class StochasticProcessArray(StochasticProcess):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_StochasticProcessArray(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_StochasticProcessArray
    __del__ = lambda self : None;
StochasticProcessArray_swigregister = _QuantLib.StochasticProcessArray_swigregister
StochasticProcessArray_swigregister(StochasticProcessArray)

class StochasticProcessVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.StochasticProcessVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.StochasticProcessVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.StochasticProcessVector___len__(*args)
    def pop(*args): return _QuantLib.StochasticProcessVector_pop(*args)
    def __getslice__(*args): return _QuantLib.StochasticProcessVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.StochasticProcessVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.StochasticProcessVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.StochasticProcessVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.StochasticProcessVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.StochasticProcessVector___setitem__(*args)
    def append(*args): return _QuantLib.StochasticProcessVector_append(*args)
    def empty(*args): return _QuantLib.StochasticProcessVector_empty(*args)
    def size(*args): return _QuantLib.StochasticProcessVector_size(*args)
    def clear(*args): return _QuantLib.StochasticProcessVector_clear(*args)
    def swap(*args): return _QuantLib.StochasticProcessVector_swap(*args)
    def get_allocator(*args): return _QuantLib.StochasticProcessVector_get_allocator(*args)
    def begin(*args): return _QuantLib.StochasticProcessVector_begin(*args)
    def end(*args): return _QuantLib.StochasticProcessVector_end(*args)
    def rbegin(*args): return _QuantLib.StochasticProcessVector_rbegin(*args)
    def rend(*args): return _QuantLib.StochasticProcessVector_rend(*args)
    def pop_back(*args): return _QuantLib.StochasticProcessVector_pop_back(*args)
    def erase(*args): return _QuantLib.StochasticProcessVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_StochasticProcessVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.StochasticProcessVector_push_back(*args)
    def front(*args): return _QuantLib.StochasticProcessVector_front(*args)
    def back(*args): return _QuantLib.StochasticProcessVector_back(*args)
    def assign(*args): return _QuantLib.StochasticProcessVector_assign(*args)
    def resize(*args): return _QuantLib.StochasticProcessVector_resize(*args)
    def insert(*args): return _QuantLib.StochasticProcessVector_insert(*args)
    def reserve(*args): return _QuantLib.StochasticProcessVector_reserve(*args)
    def capacity(*args): return _QuantLib.StochasticProcessVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_StochasticProcessVector
    __del__ = lambda self : None;
StochasticProcessVector_swigregister = _QuantLib.StochasticProcessVector_swigregister
StochasticProcessVector_swigregister(StochasticProcessVector)

class PricingEngine(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.PricingEngine___deref__(*args)
    def __nonzero__(*args): return _QuantLib.PricingEngine___nonzero__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_PricingEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_PricingEngine
    __del__ = lambda self : None;
PricingEngine_swigregister = _QuantLib.PricingEngine_swigregister
PricingEngine_swigregister(PricingEngine)

class Instrument(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.Instrument___deref__(*args)
    def __nonzero__(*args): return _QuantLib.Instrument___nonzero__(*args)
    def asObservable(*args): return _QuantLib.Instrument_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Instrument(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Instrument
    __del__ = lambda self : None;
    def NPV(*args): return _QuantLib.Instrument_NPV(*args)
    def errorEstimate(*args): return _QuantLib.Instrument_errorEstimate(*args)
    def isExpired(*args): return _QuantLib.Instrument_isExpired(*args)
    def setPricingEngine(*args): return _QuantLib.Instrument_setPricingEngine(*args)
    def recalculate(*args): return _QuantLib.Instrument_recalculate(*args)
    def freeze(*args): return _QuantLib.Instrument_freeze(*args)
    def unfreeze(*args): return _QuantLib.Instrument_unfreeze(*args)
Instrument_swigregister = _QuantLib.Instrument_swigregister
Instrument_swigregister(Instrument)

class Stock(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Stock(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Stock
    __del__ = lambda self : None;
Stock_swigregister = _QuantLib.Stock_swigregister
Stock_swigregister(Stock)

class CompositeInstrument(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CompositeInstrument(*args)
        try: self.this.append(this)
        except: self.this = this
    def add(*args): return _QuantLib.CompositeInstrument_add(*args)
    def subtract(*args): return _QuantLib.CompositeInstrument_subtract(*args)
    __swig_destroy__ = _QuantLib.delete_CompositeInstrument
    __del__ = lambda self : None;
CompositeInstrument_swigregister = _QuantLib.CompositeInstrument_swigregister
CompositeInstrument_swigregister(CompositeInstrument)

class Option(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    Put = _QuantLib.Option_Put
    Call = _QuantLib.Option_Call
    __swig_destroy__ = _QuantLib.delete_Option
    __del__ = lambda self : None;
Option_swigregister = _QuantLib.Option_swigregister
Option_swigregister(Option)

class Barrier(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    DownIn = _QuantLib.Barrier_DownIn
    UpIn = _QuantLib.Barrier_UpIn
    DownOut = _QuantLib.Barrier_DownOut
    UpOut = _QuantLib.Barrier_UpOut
    def __init__(self, *args): 
        this = _QuantLib.new_Barrier(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Barrier
    __del__ = lambda self : None;
Barrier_swigregister = _QuantLib.Barrier_swigregister
Barrier_swigregister(Barrier)

class Payoff(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.Payoff___deref__(*args)
    def __nonzero__(*args): return _QuantLib.Payoff___nonzero__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Payoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Payoff
    __del__ = lambda self : None;
    def __call__(*args): return _QuantLib.Payoff___call__(*args)
Payoff_swigregister = _QuantLib.Payoff_swigregister
Payoff_swigregister(Payoff)

class VanillaOption(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_VanillaOption(*args)
        try: self.this.append(this)
        except: self.this = this
    def delta(*args): return _QuantLib.VanillaOption_delta(*args)
    def gamma(*args): return _QuantLib.VanillaOption_gamma(*args)
    def theta(*args): return _QuantLib.VanillaOption_theta(*args)
    def thetaPerDay(*args): return _QuantLib.VanillaOption_thetaPerDay(*args)
    def vega(*args): return _QuantLib.VanillaOption_vega(*args)
    def rho(*args): return _QuantLib.VanillaOption_rho(*args)
    def dividendRho(*args): return _QuantLib.VanillaOption_dividendRho(*args)
    def strikeSensitivity(*args): return _QuantLib.VanillaOption_strikeSensitivity(*args)
    def priceCurve(*args): return _QuantLib.VanillaOption_priceCurve(*args)
    def impliedVolatility(*args): return _QuantLib.VanillaOption_impliedVolatility(*args)
    __swig_destroy__ = _QuantLib.delete_VanillaOption
    __del__ = lambda self : None;
VanillaOption_swigregister = _QuantLib.VanillaOption_swigregister
VanillaOption_swigregister(VanillaOption)

class EuropeanOption(VanillaOption):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuropeanOption(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuropeanOption
    __del__ = lambda self : None;
EuropeanOption_swigregister = _QuantLib.EuropeanOption_swigregister
EuropeanOption_swigregister(EuropeanOption)

class ForwardVanillaOption(VanillaOption):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ForwardVanillaOption(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ForwardVanillaOption
    __del__ = lambda self : None;
ForwardVanillaOption_swigregister = _QuantLib.ForwardVanillaOption_swigregister
ForwardVanillaOption_swigregister(ForwardVanillaOption)

class QuantoVanillaOption(VanillaOption):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_QuantoVanillaOption(*args)
        try: self.this.append(this)
        except: self.this = this
    def qvega(*args): return _QuantLib.QuantoVanillaOption_qvega(*args)
    def qrho(*args): return _QuantLib.QuantoVanillaOption_qrho(*args)
    def qlambda(*args): return _QuantLib.QuantoVanillaOption_qlambda(*args)
    __swig_destroy__ = _QuantLib.delete_QuantoVanillaOption
    __del__ = lambda self : None;
QuantoVanillaOption_swigregister = _QuantLib.QuantoVanillaOption_swigregister
QuantoVanillaOption_swigregister(QuantoVanillaOption)

class QuantoForwardVanillaOption(QuantoVanillaOption):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_QuantoForwardVanillaOption(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_QuantoForwardVanillaOption
    __del__ = lambda self : None;
QuantoForwardVanillaOption_swigregister = _QuantLib.QuantoForwardVanillaOption_swigregister
QuantoForwardVanillaOption_swigregister(QuantoForwardVanillaOption)

class MultiAssetOption(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def delta(*args): return _QuantLib.MultiAssetOption_delta(*args)
    def gamma(*args): return _QuantLib.MultiAssetOption_gamma(*args)
    def theta(*args): return _QuantLib.MultiAssetOption_theta(*args)
    def vega(*args): return _QuantLib.MultiAssetOption_vega(*args)
    def rho(*args): return _QuantLib.MultiAssetOption_rho(*args)
    def dividendRho(*args): return _QuantLib.MultiAssetOption_dividendRho(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_MultiAssetOption(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_MultiAssetOption
    __del__ = lambda self : None;
MultiAssetOption_swigregister = _QuantLib.MultiAssetOption_swigregister
MultiAssetOption_swigregister(MultiAssetOption)

class AnalyticEuropeanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AnalyticEuropeanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AnalyticEuropeanEngine
    __del__ = lambda self : None;
AnalyticEuropeanEngine_swigregister = _QuantLib.AnalyticEuropeanEngine_swigregister
AnalyticEuropeanEngine_swigregister(AnalyticEuropeanEngine)

class IntegralEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_IntegralEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_IntegralEngine
    __del__ = lambda self : None;
IntegralEngine_swigregister = _QuantLib.IntegralEngine_swigregister
IntegralEngine_swigregister(IntegralEngine)

class FDBermudanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FDBermudanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FDBermudanEngine
    __del__ = lambda self : None;
FDBermudanEngine_swigregister = _QuantLib.FDBermudanEngine_swigregister
FDBermudanEngine_swigregister(FDBermudanEngine)

class FDEuropeanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FDEuropeanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FDEuropeanEngine
    __del__ = lambda self : None;
FDEuropeanEngine_swigregister = _QuantLib.FDEuropeanEngine_swigregister
FDEuropeanEngine_swigregister(FDEuropeanEngine)

class BinomialVanillaEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BinomialVanillaEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BinomialVanillaEngine
    __del__ = lambda self : None;
BinomialVanillaEngine_swigregister = _QuantLib.BinomialVanillaEngine_swigregister
BinomialVanillaEngine_swigregister(BinomialVanillaEngine)

class MCEuropeanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args, **kwargs): 
        this = _QuantLib.new_MCEuropeanEngine(*args, **kwargs)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_MCEuropeanEngine
    __del__ = lambda self : None;
MCEuropeanEngine_swigregister = _QuantLib.MCEuropeanEngine_swigregister
MCEuropeanEngine_swigregister(MCEuropeanEngine)

class FDAmericanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FDAmericanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FDAmericanEngine
    __del__ = lambda self : None;
FDAmericanEngine_swigregister = _QuantLib.FDAmericanEngine_swigregister
FDAmericanEngine_swigregister(FDAmericanEngine)

class FDShoutEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FDShoutEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FDShoutEngine
    __del__ = lambda self : None;
FDShoutEngine_swigregister = _QuantLib.FDShoutEngine_swigregister
FDShoutEngine_swigregister(FDShoutEngine)

class BaroneAdesiWhaleyEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BaroneAdesiWhaleyEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BaroneAdesiWhaleyEngine
    __del__ = lambda self : None;
BaroneAdesiWhaleyEngine_swigregister = _QuantLib.BaroneAdesiWhaleyEngine_swigregister
BaroneAdesiWhaleyEngine_swigregister(BaroneAdesiWhaleyEngine)

class BjerksundStenslandEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BjerksundStenslandEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BjerksundStenslandEngine
    __del__ = lambda self : None;
BjerksundStenslandEngine_swigregister = _QuantLib.BjerksundStenslandEngine_swigregister
BjerksundStenslandEngine_swigregister(BjerksundStenslandEngine)

class AnalyticDigitalAmericanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AnalyticDigitalAmericanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AnalyticDigitalAmericanEngine
    __del__ = lambda self : None;
AnalyticDigitalAmericanEngine_swigregister = _QuantLib.AnalyticDigitalAmericanEngine_swigregister
AnalyticDigitalAmericanEngine_swigregister(AnalyticDigitalAmericanEngine)

class DividendVanillaOption(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DividendVanillaOption(*args)
        try: self.this.append(this)
        except: self.this = this
    def delta(*args): return _QuantLib.DividendVanillaOption_delta(*args)
    def gamma(*args): return _QuantLib.DividendVanillaOption_gamma(*args)
    def theta(*args): return _QuantLib.DividendVanillaOption_theta(*args)
    def vega(*args): return _QuantLib.DividendVanillaOption_vega(*args)
    def rho(*args): return _QuantLib.DividendVanillaOption_rho(*args)
    def dividendRho(*args): return _QuantLib.DividendVanillaOption_dividendRho(*args)
    def strikeSensitivity(*args): return _QuantLib.DividendVanillaOption_strikeSensitivity(*args)
    def priceCurve(*args): return _QuantLib.DividendVanillaOption_priceCurve(*args)
    def impliedVolatility(*args): return _QuantLib.DividendVanillaOption_impliedVolatility(*args)
    __swig_destroy__ = _QuantLib.delete_DividendVanillaOption
    __del__ = lambda self : None;
DividendVanillaOption_swigregister = _QuantLib.DividendVanillaOption_swigregister
DividendVanillaOption_swigregister(DividendVanillaOption)

class AnalyticDividendEuropeanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AnalyticDividendEuropeanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AnalyticDividendEuropeanEngine
    __del__ = lambda self : None;
AnalyticDividendEuropeanEngine_swigregister = _QuantLib.AnalyticDividendEuropeanEngine_swigregister
AnalyticDividendEuropeanEngine_swigregister(AnalyticDividendEuropeanEngine)

class FDDividendEuropeanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FDDividendEuropeanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FDDividendEuropeanEngine
    __del__ = lambda self : None;
FDDividendEuropeanEngine_swigregister = _QuantLib.FDDividendEuropeanEngine_swigregister
FDDividendEuropeanEngine_swigregister(FDDividendEuropeanEngine)

class FDDividendAmericanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FDDividendAmericanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FDDividendAmericanEngine
    __del__ = lambda self : None;
FDDividendAmericanEngine_swigregister = _QuantLib.FDDividendAmericanEngine_swigregister
FDDividendAmericanEngine_swigregister(FDDividendAmericanEngine)

class BarrierOption(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BarrierOption(*args)
        try: self.this.append(this)
        except: self.this = this
    def delta(*args): return _QuantLib.BarrierOption_delta(*args)
    def gamma(*args): return _QuantLib.BarrierOption_gamma(*args)
    def theta(*args): return _QuantLib.BarrierOption_theta(*args)
    def vega(*args): return _QuantLib.BarrierOption_vega(*args)
    def rho(*args): return _QuantLib.BarrierOption_rho(*args)
    def dividendRho(*args): return _QuantLib.BarrierOption_dividendRho(*args)
    def strikeSensitivity(*args): return _QuantLib.BarrierOption_strikeSensitivity(*args)
    def priceCurve(*args): return _QuantLib.BarrierOption_priceCurve(*args)
    def impliedVolatility(*args): return _QuantLib.BarrierOption_impliedVolatility(*args)
    __swig_destroy__ = _QuantLib.delete_BarrierOption
    __del__ = lambda self : None;
BarrierOption_swigregister = _QuantLib.BarrierOption_swigregister
BarrierOption_swigregister(BarrierOption)

class AnalyticBarrierEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AnalyticBarrierEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AnalyticBarrierEngine
    __del__ = lambda self : None;
AnalyticBarrierEngine_swigregister = _QuantLib.AnalyticBarrierEngine_swigregister
AnalyticBarrierEngine_swigregister(AnalyticBarrierEngine)

class MCBarrierEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args, **kwargs): 
        this = _QuantLib.new_MCBarrierEngine(*args, **kwargs)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_MCBarrierEngine
    __del__ = lambda self : None;
MCBarrierEngine_swigregister = _QuantLib.MCBarrierEngine_swigregister
MCBarrierEngine_swigregister(MCBarrierEngine)

class ForwardEuropeanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ForwardEuropeanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ForwardEuropeanEngine
    __del__ = lambda self : None;
ForwardEuropeanEngine_swigregister = _QuantLib.ForwardEuropeanEngine_swigregister
ForwardEuropeanEngine_swigregister(ForwardEuropeanEngine)

class QuantoEuropeanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_QuantoEuropeanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_QuantoEuropeanEngine
    __del__ = lambda self : None;
QuantoEuropeanEngine_swigregister = _QuantLib.QuantoEuropeanEngine_swigregister
QuantoEuropeanEngine_swigregister(QuantoEuropeanEngine)

class QuantoForwardEuropeanEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_QuantoForwardEuropeanEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_QuantoForwardEuropeanEngine
    __del__ = lambda self : None;
QuantoForwardEuropeanEngine_swigregister = _QuantLib.QuantoForwardEuropeanEngine_swigregister
QuantoForwardEuropeanEngine_swigregister(QuantoForwardEuropeanEngine)

class PlainVanillaPayoff(Payoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_PlainVanillaPayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_PlainVanillaPayoff
    __del__ = lambda self : None;
PlainVanillaPayoff_swigregister = _QuantLib.PlainVanillaPayoff_swigregister
PlainVanillaPayoff_swigregister(PlainVanillaPayoff)

class PercentageStrikePayoff(Payoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_PercentageStrikePayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_PercentageStrikePayoff
    __del__ = lambda self : None;
PercentageStrikePayoff_swigregister = _QuantLib.PercentageStrikePayoff_swigregister
PercentageStrikePayoff_swigregister(PercentageStrikePayoff)

class CashOrNothingPayoff(Payoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CashOrNothingPayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CashOrNothingPayoff
    __del__ = lambda self : None;
CashOrNothingPayoff_swigregister = _QuantLib.CashOrNothingPayoff_swigregister
CashOrNothingPayoff_swigregister(CashOrNothingPayoff)

class AssetOrNothingPayoff(Payoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AssetOrNothingPayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AssetOrNothingPayoff
    __del__ = lambda self : None;
AssetOrNothingPayoff_swigregister = _QuantLib.AssetOrNothingPayoff_swigregister
AssetOrNothingPayoff_swigregister(AssetOrNothingPayoff)

class SuperSharePayoff(Payoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SuperSharePayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SuperSharePayoff
    __del__ = lambda self : None;
SuperSharePayoff_swigregister = _QuantLib.SuperSharePayoff_swigregister
SuperSharePayoff_swigregister(SuperSharePayoff)

class GapPayoff(Payoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GapPayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_GapPayoff
    __del__ = lambda self : None;
GapPayoff_swigregister = _QuantLib.GapPayoff_swigregister
GapPayoff_swigregister(GapPayoff)

class BasketPayoff(Payoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BasketPayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BasketPayoff
    __del__ = lambda self : None;
BasketPayoff_swigregister = _QuantLib.BasketPayoff_swigregister
BasketPayoff_swigregister(BasketPayoff)

class MinBasketPayoff(BasketPayoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MinBasketPayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_MinBasketPayoff
    __del__ = lambda self : None;
MinBasketPayoff_swigregister = _QuantLib.MinBasketPayoff_swigregister
MinBasketPayoff_swigregister(MinBasketPayoff)

class MaxBasketPayoff(BasketPayoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MaxBasketPayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_MaxBasketPayoff
    __del__ = lambda self : None;
MaxBasketPayoff_swigregister = _QuantLib.MaxBasketPayoff_swigregister
MaxBasketPayoff_swigregister(MaxBasketPayoff)

class AverageBasketPayoff(BasketPayoff):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AverageBasketPayoff(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AverageBasketPayoff
    __del__ = lambda self : None;
AverageBasketPayoff_swigregister = _QuantLib.AverageBasketPayoff_swigregister
AverageBasketPayoff_swigregister(AverageBasketPayoff)

class BasketOption(MultiAssetOption):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BasketOption(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BasketOption
    __del__ = lambda self : None;
BasketOption_swigregister = _QuantLib.BasketOption_swigregister
BasketOption_swigregister(BasketOption)

class MCBasketEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args, **kwargs): 
        this = _QuantLib.new_MCBasketEngine(*args, **kwargs)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_MCBasketEngine
    __del__ = lambda self : None;
MCBasketEngine_swigregister = _QuantLib.MCBasketEngine_swigregister
MCBasketEngine_swigregister(MCBasketEngine)

class MCAmericanBasketEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args, **kwargs): 
        this = _QuantLib.new_MCAmericanBasketEngine(*args, **kwargs)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_MCAmericanBasketEngine
    __del__ = lambda self : None;
MCAmericanBasketEngine_swigregister = _QuantLib.MCAmericanBasketEngine_swigregister
MCAmericanBasketEngine_swigregister(MCAmericanBasketEngine)

class StulzEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_StulzEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_StulzEngine
    __del__ = lambda self : None;
StulzEngine_swigregister = _QuantLib.StulzEngine_swigregister
StulzEngine_swigregister(StulzEngine)

class RealTimeSeries(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RealTimeSeries(*args)
        try: self.this.append(this)
        except: self.this = this
    def dates(*args): return _QuantLib.RealTimeSeries_dates(*args)
    def values(*args): return _QuantLib.RealTimeSeries_values(*args)
    def __len__(*args): return _QuantLib.RealTimeSeries___len__(*args)
    def __getitem__(*args): return _QuantLib.RealTimeSeries___getitem__(*args)
    def __setitem__(*args): return _QuantLib.RealTimeSeries___setitem__(*args)
    __swig_destroy__ = _QuantLib.delete_RealTimeSeries
    __del__ = lambda self : None;
RealTimeSeries_swigregister = _QuantLib.RealTimeSeries_swigregister
RealTimeSeries_swigregister(RealTimeSeries)

class IntervalPriceTimeSeries(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_IntervalPriceTimeSeries(*args)
        try: self.this.append(this)
        except: self.this = this
    def dates(*args): return _QuantLib.IntervalPriceTimeSeries_dates(*args)
    def values(*args): return _QuantLib.IntervalPriceTimeSeries_values(*args)
    def __len__(*args): return _QuantLib.IntervalPriceTimeSeries___len__(*args)
    def __getitem__(*args): return _QuantLib.IntervalPriceTimeSeries___getitem__(*args)
    def __setitem__(*args): return _QuantLib.IntervalPriceTimeSeries___setitem__(*args)
    __swig_destroy__ = _QuantLib.delete_IntervalPriceTimeSeries
    __del__ = lambda self : None;
IntervalPriceTimeSeries_swigregister = _QuantLib.IntervalPriceTimeSeries_swigregister
IntervalPriceTimeSeries_swigregister(IntervalPriceTimeSeries)

class IntervalPriceVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.IntervalPriceVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.IntervalPriceVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.IntervalPriceVector___len__(*args)
    def pop(*args): return _QuantLib.IntervalPriceVector_pop(*args)
    def __getslice__(*args): return _QuantLib.IntervalPriceVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.IntervalPriceVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.IntervalPriceVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.IntervalPriceVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.IntervalPriceVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.IntervalPriceVector___setitem__(*args)
    def append(*args): return _QuantLib.IntervalPriceVector_append(*args)
    def empty(*args): return _QuantLib.IntervalPriceVector_empty(*args)
    def size(*args): return _QuantLib.IntervalPriceVector_size(*args)
    def clear(*args): return _QuantLib.IntervalPriceVector_clear(*args)
    def swap(*args): return _QuantLib.IntervalPriceVector_swap(*args)
    def get_allocator(*args): return _QuantLib.IntervalPriceVector_get_allocator(*args)
    def begin(*args): return _QuantLib.IntervalPriceVector_begin(*args)
    def end(*args): return _QuantLib.IntervalPriceVector_end(*args)
    def rbegin(*args): return _QuantLib.IntervalPriceVector_rbegin(*args)
    def rend(*args): return _QuantLib.IntervalPriceVector_rend(*args)
    def pop_back(*args): return _QuantLib.IntervalPriceVector_pop_back(*args)
    def erase(*args): return _QuantLib.IntervalPriceVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_IntervalPriceVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.IntervalPriceVector_push_back(*args)
    def front(*args): return _QuantLib.IntervalPriceVector_front(*args)
    def back(*args): return _QuantLib.IntervalPriceVector_back(*args)
    def assign(*args): return _QuantLib.IntervalPriceVector_assign(*args)
    def resize(*args): return _QuantLib.IntervalPriceVector_resize(*args)
    def insert(*args): return _QuantLib.IntervalPriceVector_insert(*args)
    def reserve(*args): return _QuantLib.IntervalPriceVector_reserve(*args)
    def capacity(*args): return _QuantLib.IntervalPriceVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_IntervalPriceVector
    __del__ = lambda self : None;
IntervalPriceVector_swigregister = _QuantLib.IntervalPriceVector_swigregister
IntervalPriceVector_swigregister(IntervalPriceVector)

class IntervalPrice(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Open = _QuantLib.IntervalPrice_Open
    Close = _QuantLib.IntervalPrice_Close
    High = _QuantLib.IntervalPrice_High
    Low = _QuantLib.IntervalPrice_Low
    def __init__(self, *args): 
        this = _QuantLib.new_IntervalPrice(*args)
        try: self.this.append(this)
        except: self.this = this
    def setValue(*args): return _QuantLib.IntervalPrice_setValue(*args)
    def setValues(*args): return _QuantLib.IntervalPrice_setValues(*args)
    def value(*args): return _QuantLib.IntervalPrice_value(*args)
    def open(*args): return _QuantLib.IntervalPrice_open(*args)
    def close(*args): return _QuantLib.IntervalPrice_close(*args)
    def high(*args): return _QuantLib.IntervalPrice_high(*args)
    def low(*args): return _QuantLib.IntervalPrice_low(*args)
    makeSeries = staticmethod(_QuantLib.IntervalPrice_makeSeries)
    extractValues = staticmethod(_QuantLib.IntervalPrice_extractValues)
    extractComponent = staticmethod(_QuantLib.IntervalPrice_extractComponent)
    __swig_destroy__ = _QuantLib.delete_IntervalPrice
    __del__ = lambda self : None;
IntervalPrice_swigregister = _QuantLib.IntervalPrice_swigregister
IntervalPrice_swigregister(IntervalPrice)
IntervalPrice_makeSeries = _QuantLib.IntervalPrice_makeSeries
IntervalPrice_extractValues = _QuantLib.IntervalPrice_extractValues
IntervalPrice_extractComponent = _QuantLib.IntervalPrice_extractComponent

class IndexManager(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    instance = staticmethod(_QuantLib.IndexManager_instance)
    def setHistory(*args): return _QuantLib.IndexManager_setHistory(*args)
    def getHistory(*args): return _QuantLib.IndexManager_getHistory(*args)
    def hasHistory(*args): return _QuantLib.IndexManager_hasHistory(*args)
    def histories(*args): return _QuantLib.IndexManager_histories(*args)
    __swig_destroy__ = _QuantLib.delete_IndexManager
    __del__ = lambda self : None;
IndexManager_swigregister = _QuantLib.IndexManager_swigregister
IndexManager_swigregister(IndexManager)
IndexManager_instance = _QuantLib.IndexManager_instance

class Index(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.Index___deref__(*args)
    def __nonzero__(*args): return _QuantLib.Index___nonzero__(*args)
    def addFixings(*args): return _QuantLib.Index_addFixings(*args)
    def __str__(*args): return _QuantLib.Index___str__(*args)
    def asObservable(*args): return _QuantLib.Index_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Index(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Index
    __del__ = lambda self : None;
    def name(*args): return _QuantLib.Index_name(*args)
    def fixingCalendar(*args): return _QuantLib.Index_fixingCalendar(*args)
    def isValidFixingDate(*args): return _QuantLib.Index_isValidFixingDate(*args)
    def fixing(*args): return _QuantLib.Index_fixing(*args)
    def addFixing(*args): return _QuantLib.Index_addFixing(*args)
Index_swigregister = _QuantLib.Index_swigregister
Index_swigregister(Index)

class InterestRateIndex(Index):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def familyName(*args): return _QuantLib.InterestRateIndex_familyName(*args)
    def tenor(*args): return _QuantLib.InterestRateIndex_tenor(*args)
    def fixingDays(*args): return _QuantLib.InterestRateIndex_fixingDays(*args)
    def fixingDate(*args): return _QuantLib.InterestRateIndex_fixingDate(*args)
    def currency(*args): return _QuantLib.InterestRateIndex_currency(*args)
    def dayCounter(*args): return _QuantLib.InterestRateIndex_dayCounter(*args)
    def termStructure(*args): return _QuantLib.InterestRateIndex_termStructure(*args)
    def maturityDate(*args): return _QuantLib.InterestRateIndex_maturityDate(*args)
    def valueDate(*args): return _QuantLib.InterestRateIndex_valueDate(*args)
    __swig_destroy__ = _QuantLib.delete_InterestRateIndex
    __del__ = lambda self : None;
InterestRateIndex_swigregister = _QuantLib.InterestRateIndex_swigregister
InterestRateIndex_swigregister(InterestRateIndex)

class IborIndex(InterestRateIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_IborIndex(*args)
        try: self.this.append(this)
        except: self.this = this
    def businessDayConvention(*args): return _QuantLib.IborIndex_businessDayConvention(*args)
    def endOfMonth(*args): return _QuantLib.IborIndex_endOfMonth(*args)
    __swig_destroy__ = _QuantLib.delete_IborIndex
    __del__ = lambda self : None;
IborIndex_swigregister = _QuantLib.IborIndex_swigregister
IborIndex_swigregister(IborIndex)

class SwapIndex(InterestRateIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SwapIndex(*args)
        try: self.this.append(this)
        except: self.this = this
    def fixedLegTenor(*args): return _QuantLib.SwapIndex_fixedLegTenor(*args)
    def fixedLegConvention(*args): return _QuantLib.SwapIndex_fixedLegConvention(*args)
    def iborIndex(*args): return _QuantLib.SwapIndex_iborIndex(*args)
    __swig_destroy__ = _QuantLib.delete_SwapIndex
    __del__ = lambda self : None;
SwapIndex_swigregister = _QuantLib.SwapIndex_swigregister
SwapIndex_swigregister(SwapIndex)

class AUDLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AUDLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AUDLibor
    __del__ = lambda self : None;
AUDLibor_swigregister = _QuantLib.AUDLibor_swigregister
AUDLibor_swigregister(AUDLibor)

class CADLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CADLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CADLibor
    __del__ = lambda self : None;
CADLibor_swigregister = _QuantLib.CADLibor_swigregister
CADLibor_swigregister(CADLibor)

class Cdor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Cdor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Cdor
    __del__ = lambda self : None;
Cdor_swigregister = _QuantLib.Cdor_swigregister
Cdor_swigregister(Cdor)

class CHFLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CHFLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CHFLibor
    __del__ = lambda self : None;
CHFLibor_swigregister = _QuantLib.CHFLibor_swigregister
CHFLibor_swigregister(CHFLibor)

class DKKLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DKKLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DKKLibor
    __del__ = lambda self : None;
DKKLibor_swigregister = _QuantLib.DKKLibor_swigregister
DKKLibor_swigregister(DKKLibor)

class Euribor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor
    __del__ = lambda self : None;
Euribor_swigregister = _QuantLib.Euribor_swigregister
Euribor_swigregister(Euribor)

class EuriborSW(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSW(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSW
    __del__ = lambda self : None;
EuriborSW_swigregister = _QuantLib.EuriborSW_swigregister
EuriborSW_swigregister(EuriborSW)

class Euribor2W(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor2W(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor2W
    __del__ = lambda self : None;
Euribor2W_swigregister = _QuantLib.Euribor2W_swigregister
Euribor2W_swigregister(Euribor2W)

class Euribor3W(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor3W(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor3W
    __del__ = lambda self : None;
Euribor3W_swigregister = _QuantLib.Euribor3W_swigregister
Euribor3W_swigregister(Euribor3W)

class Euribor1M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor1M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor1M
    __del__ = lambda self : None;
Euribor1M_swigregister = _QuantLib.Euribor1M_swigregister
Euribor1M_swigregister(Euribor1M)

class Euribor2M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor2M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor2M
    __del__ = lambda self : None;
Euribor2M_swigregister = _QuantLib.Euribor2M_swigregister
Euribor2M_swigregister(Euribor2M)

class Euribor3M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor3M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor3M
    __del__ = lambda self : None;
Euribor3M_swigregister = _QuantLib.Euribor3M_swigregister
Euribor3M_swigregister(Euribor3M)

class Euribor4M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor4M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor4M
    __del__ = lambda self : None;
Euribor4M_swigregister = _QuantLib.Euribor4M_swigregister
Euribor4M_swigregister(Euribor4M)

class Euribor5M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor5M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor5M
    __del__ = lambda self : None;
Euribor5M_swigregister = _QuantLib.Euribor5M_swigregister
Euribor5M_swigregister(Euribor5M)

class Euribor6M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor6M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor6M
    __del__ = lambda self : None;
Euribor6M_swigregister = _QuantLib.Euribor6M_swigregister
Euribor6M_swigregister(Euribor6M)

class Euribor7M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor7M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor7M
    __del__ = lambda self : None;
Euribor7M_swigregister = _QuantLib.Euribor7M_swigregister
Euribor7M_swigregister(Euribor7M)

class Euribor8M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor8M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor8M
    __del__ = lambda self : None;
Euribor8M_swigregister = _QuantLib.Euribor8M_swigregister
Euribor8M_swigregister(Euribor8M)

class Euribor9M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor9M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor9M
    __del__ = lambda self : None;
Euribor9M_swigregister = _QuantLib.Euribor9M_swigregister
Euribor9M_swigregister(Euribor9M)

class Euribor10M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor10M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor10M
    __del__ = lambda self : None;
Euribor10M_swigregister = _QuantLib.Euribor10M_swigregister
Euribor10M_swigregister(Euribor10M)

class Euribor11M(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor11M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor11M
    __del__ = lambda self : None;
Euribor11M_swigregister = _QuantLib.Euribor11M_swigregister
Euribor11M_swigregister(Euribor11M)

class Euribor1Y(Euribor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor1Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor1Y
    __del__ = lambda self : None;
Euribor1Y_swigregister = _QuantLib.Euribor1Y_swigregister
Euribor1Y_swigregister(Euribor1Y)

class Euribor365(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365
    __del__ = lambda self : None;
Euribor365_swigregister = _QuantLib.Euribor365_swigregister
Euribor365_swigregister(Euribor365)

class Euribor365_SW(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_SW(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_SW
    __del__ = lambda self : None;
Euribor365_SW_swigregister = _QuantLib.Euribor365_SW_swigregister
Euribor365_SW_swigregister(Euribor365_SW)

class Euribor365_2W(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_2W(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_2W
    __del__ = lambda self : None;
Euribor365_2W_swigregister = _QuantLib.Euribor365_2W_swigregister
Euribor365_2W_swigregister(Euribor365_2W)

class Euribor365_3W(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_3W(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_3W
    __del__ = lambda self : None;
Euribor365_3W_swigregister = _QuantLib.Euribor365_3W_swigregister
Euribor365_3W_swigregister(Euribor365_3W)

class Euribor365_1M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_1M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_1M
    __del__ = lambda self : None;
Euribor365_1M_swigregister = _QuantLib.Euribor365_1M_swigregister
Euribor365_1M_swigregister(Euribor365_1M)

class Euribor365_2M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_2M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_2M
    __del__ = lambda self : None;
Euribor365_2M_swigregister = _QuantLib.Euribor365_2M_swigregister
Euribor365_2M_swigregister(Euribor365_2M)

class Euribor365_3M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_3M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_3M
    __del__ = lambda self : None;
Euribor365_3M_swigregister = _QuantLib.Euribor365_3M_swigregister
Euribor365_3M_swigregister(Euribor365_3M)

class Euribor365_4M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_4M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_4M
    __del__ = lambda self : None;
Euribor365_4M_swigregister = _QuantLib.Euribor365_4M_swigregister
Euribor365_4M_swigregister(Euribor365_4M)

class Euribor365_5M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_5M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_5M
    __del__ = lambda self : None;
Euribor365_5M_swigregister = _QuantLib.Euribor365_5M_swigregister
Euribor365_5M_swigregister(Euribor365_5M)

class Euribor365_6M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_6M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_6M
    __del__ = lambda self : None;
Euribor365_6M_swigregister = _QuantLib.Euribor365_6M_swigregister
Euribor365_6M_swigregister(Euribor365_6M)

class Euribor365_7M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_7M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_7M
    __del__ = lambda self : None;
Euribor365_7M_swigregister = _QuantLib.Euribor365_7M_swigregister
Euribor365_7M_swigregister(Euribor365_7M)

class Euribor365_8M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_8M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_8M
    __del__ = lambda self : None;
Euribor365_8M_swigregister = _QuantLib.Euribor365_8M_swigregister
Euribor365_8M_swigregister(Euribor365_8M)

class Euribor365_9M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_9M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_9M
    __del__ = lambda self : None;
Euribor365_9M_swigregister = _QuantLib.Euribor365_9M_swigregister
Euribor365_9M_swigregister(Euribor365_9M)

class Euribor365_10M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_10M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_10M
    __del__ = lambda self : None;
Euribor365_10M_swigregister = _QuantLib.Euribor365_10M_swigregister
Euribor365_10M_swigregister(Euribor365_10M)

class Euribor365_11M(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_11M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_11M
    __del__ = lambda self : None;
Euribor365_11M_swigregister = _QuantLib.Euribor365_11M_swigregister
Euribor365_11M_swigregister(Euribor365_11M)

class Euribor365_1Y(Euribor365):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Euribor365_1Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Euribor365_1Y
    __del__ = lambda self : None;
Euribor365_1Y_swigregister = _QuantLib.Euribor365_1Y_swigregister
Euribor365_1Y_swigregister(Euribor365_1Y)

class EURLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor
    __del__ = lambda self : None;
EURLibor_swigregister = _QuantLib.EURLibor_swigregister
EURLibor_swigregister(EURLibor)

class EURLiborSW(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLiborSW(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLiborSW
    __del__ = lambda self : None;
EURLiborSW_swigregister = _QuantLib.EURLiborSW_swigregister
EURLiborSW_swigregister(EURLiborSW)

class EURLibor2W(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor2W(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor2W
    __del__ = lambda self : None;
EURLibor2W_swigregister = _QuantLib.EURLibor2W_swigregister
EURLibor2W_swigregister(EURLibor2W)

class EURLibor1M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor1M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor1M
    __del__ = lambda self : None;
EURLibor1M_swigregister = _QuantLib.EURLibor1M_swigregister
EURLibor1M_swigregister(EURLibor1M)

class EURLibor2M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor2M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor2M
    __del__ = lambda self : None;
EURLibor2M_swigregister = _QuantLib.EURLibor2M_swigregister
EURLibor2M_swigregister(EURLibor2M)

class EURLibor3M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor3M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor3M
    __del__ = lambda self : None;
EURLibor3M_swigregister = _QuantLib.EURLibor3M_swigregister
EURLibor3M_swigregister(EURLibor3M)

class EURLibor4M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor4M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor4M
    __del__ = lambda self : None;
EURLibor4M_swigregister = _QuantLib.EURLibor4M_swigregister
EURLibor4M_swigregister(EURLibor4M)

class EURLibor5M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor5M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor5M
    __del__ = lambda self : None;
EURLibor5M_swigregister = _QuantLib.EURLibor5M_swigregister
EURLibor5M_swigregister(EURLibor5M)

class EURLibor6M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor6M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor6M
    __del__ = lambda self : None;
EURLibor6M_swigregister = _QuantLib.EURLibor6M_swigregister
EURLibor6M_swigregister(EURLibor6M)

class EURLibor7M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor7M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor7M
    __del__ = lambda self : None;
EURLibor7M_swigregister = _QuantLib.EURLibor7M_swigregister
EURLibor7M_swigregister(EURLibor7M)

class EURLibor8M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor8M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor8M
    __del__ = lambda self : None;
EURLibor8M_swigregister = _QuantLib.EURLibor8M_swigregister
EURLibor8M_swigregister(EURLibor8M)

class EURLibor9M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor9M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor9M
    __del__ = lambda self : None;
EURLibor9M_swigregister = _QuantLib.EURLibor9M_swigregister
EURLibor9M_swigregister(EURLibor9M)

class EURLibor10M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor10M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor10M
    __del__ = lambda self : None;
EURLibor10M_swigregister = _QuantLib.EURLibor10M_swigregister
EURLibor10M_swigregister(EURLibor10M)

class EURLibor11M(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor11M(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor11M
    __del__ = lambda self : None;
EURLibor11M_swigregister = _QuantLib.EURLibor11M_swigregister
EURLibor11M_swigregister(EURLibor11M)

class EURLibor1Y(EURLibor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EURLibor1Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EURLibor1Y
    __del__ = lambda self : None;
EURLibor1Y_swigregister = _QuantLib.EURLibor1Y_swigregister
EURLibor1Y_swigregister(EURLibor1Y)

class GBPLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GBPLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_GBPLibor
    __del__ = lambda self : None;
GBPLibor_swigregister = _QuantLib.GBPLibor_swigregister
GBPLibor_swigregister(GBPLibor)

class Jibar(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Jibar(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Jibar
    __del__ = lambda self : None;
Jibar_swigregister = _QuantLib.Jibar_swigregister
Jibar_swigregister(Jibar)

class JPYLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_JPYLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_JPYLibor
    __del__ = lambda self : None;
JPYLibor_swigregister = _QuantLib.JPYLibor_swigregister
JPYLibor_swigregister(JPYLibor)

class NZDLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NZDLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NZDLibor
    __del__ = lambda self : None;
NZDLibor_swigregister = _QuantLib.NZDLibor_swigregister
NZDLibor_swigregister(NZDLibor)

class Tibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Tibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Tibor
    __del__ = lambda self : None;
Tibor_swigregister = _QuantLib.Tibor_swigregister
Tibor_swigregister(Tibor)

class TRLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TRLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_TRLibor
    __del__ = lambda self : None;
TRLibor_swigregister = _QuantLib.TRLibor_swigregister
TRLibor_swigregister(TRLibor)

class USDLibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_USDLibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_USDLibor
    __del__ = lambda self : None;
USDLibor_swigregister = _QuantLib.USDLibor_swigregister
USDLibor_swigregister(USDLibor)

class Zibor(IborIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Zibor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Zibor
    __del__ = lambda self : None;
Zibor_swigregister = _QuantLib.Zibor_swigregister
Zibor_swigregister(Zibor)

class EuriborSwapFixA(SwapIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA
    __del__ = lambda self : None;
EuriborSwapFixA_swigregister = _QuantLib.EuriborSwapFixA_swigregister
EuriborSwapFixA_swigregister(EuriborSwapFixA)

class EuriborSwapFixA1Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA1Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA1Y
    __del__ = lambda self : None;
EuriborSwapFixA1Y_swigregister = _QuantLib.EuriborSwapFixA1Y_swigregister
EuriborSwapFixA1Y_swigregister(EuriborSwapFixA1Y)

class EuriborSwapFixA2Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA2Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA2Y
    __del__ = lambda self : None;
EuriborSwapFixA2Y_swigregister = _QuantLib.EuriborSwapFixA2Y_swigregister
EuriborSwapFixA2Y_swigregister(EuriborSwapFixA2Y)

class EuriborSwapFixA3Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA3Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA3Y
    __del__ = lambda self : None;
EuriborSwapFixA3Y_swigregister = _QuantLib.EuriborSwapFixA3Y_swigregister
EuriborSwapFixA3Y_swigregister(EuriborSwapFixA3Y)

class EuriborSwapFixA4Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA4Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA4Y
    __del__ = lambda self : None;
EuriborSwapFixA4Y_swigregister = _QuantLib.EuriborSwapFixA4Y_swigregister
EuriborSwapFixA4Y_swigregister(EuriborSwapFixA4Y)

class EuriborSwapFixA5Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA5Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA5Y
    __del__ = lambda self : None;
EuriborSwapFixA5Y_swigregister = _QuantLib.EuriborSwapFixA5Y_swigregister
EuriborSwapFixA5Y_swigregister(EuriborSwapFixA5Y)

class EuriborSwapFixA6Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA6Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA6Y
    __del__ = lambda self : None;
EuriborSwapFixA6Y_swigregister = _QuantLib.EuriborSwapFixA6Y_swigregister
EuriborSwapFixA6Y_swigregister(EuriborSwapFixA6Y)

class EuriborSwapFixA7Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA7Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA7Y
    __del__ = lambda self : None;
EuriborSwapFixA7Y_swigregister = _QuantLib.EuriborSwapFixA7Y_swigregister
EuriborSwapFixA7Y_swigregister(EuriborSwapFixA7Y)

class EuriborSwapFixA8Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA8Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA8Y
    __del__ = lambda self : None;
EuriborSwapFixA8Y_swigregister = _QuantLib.EuriborSwapFixA8Y_swigregister
EuriborSwapFixA8Y_swigregister(EuriborSwapFixA8Y)

class EuriborSwapFixA9Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA9Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA9Y
    __del__ = lambda self : None;
EuriborSwapFixA9Y_swigregister = _QuantLib.EuriborSwapFixA9Y_swigregister
EuriborSwapFixA9Y_swigregister(EuriborSwapFixA9Y)

class EuriborSwapFixA10Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA10Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA10Y
    __del__ = lambda self : None;
EuriborSwapFixA10Y_swigregister = _QuantLib.EuriborSwapFixA10Y_swigregister
EuriborSwapFixA10Y_swigregister(EuriborSwapFixA10Y)

class EuriborSwapFixA12Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA12Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA12Y
    __del__ = lambda self : None;
EuriborSwapFixA12Y_swigregister = _QuantLib.EuriborSwapFixA12Y_swigregister
EuriborSwapFixA12Y_swigregister(EuriborSwapFixA12Y)

class EuriborSwapFixA15Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA15Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA15Y
    __del__ = lambda self : None;
EuriborSwapFixA15Y_swigregister = _QuantLib.EuriborSwapFixA15Y_swigregister
EuriborSwapFixA15Y_swigregister(EuriborSwapFixA15Y)

class EuriborSwapFixA20Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA20Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA20Y
    __del__ = lambda self : None;
EuriborSwapFixA20Y_swigregister = _QuantLib.EuriborSwapFixA20Y_swigregister
EuriborSwapFixA20Y_swigregister(EuriborSwapFixA20Y)

class EuriborSwapFixA25Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA25Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA25Y
    __del__ = lambda self : None;
EuriborSwapFixA25Y_swigregister = _QuantLib.EuriborSwapFixA25Y_swigregister
EuriborSwapFixA25Y_swigregister(EuriborSwapFixA25Y)

class EuriborSwapFixA30Y(EuriborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixA30Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixA30Y
    __del__ = lambda self : None;
EuriborSwapFixA30Y_swigregister = _QuantLib.EuriborSwapFixA30Y_swigregister
EuriborSwapFixA30Y_swigregister(EuriborSwapFixA30Y)

class EuriborSwapFixIFR(SwapIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR
    __del__ = lambda self : None;
EuriborSwapFixIFR_swigregister = _QuantLib.EuriborSwapFixIFR_swigregister
EuriborSwapFixIFR_swigregister(EuriborSwapFixIFR)

class EuriborSwapFixIFR1Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR1Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR1Y
    __del__ = lambda self : None;
EuriborSwapFixIFR1Y_swigregister = _QuantLib.EuriborSwapFixIFR1Y_swigregister
EuriborSwapFixIFR1Y_swigregister(EuriborSwapFixIFR1Y)

class EuriborSwapFixIFR2Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR2Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR2Y
    __del__ = lambda self : None;
EuriborSwapFixIFR2Y_swigregister = _QuantLib.EuriborSwapFixIFR2Y_swigregister
EuriborSwapFixIFR2Y_swigregister(EuriborSwapFixIFR2Y)

class EuriborSwapFixIFR3Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR3Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR3Y
    __del__ = lambda self : None;
EuriborSwapFixIFR3Y_swigregister = _QuantLib.EuriborSwapFixIFR3Y_swigregister
EuriborSwapFixIFR3Y_swigregister(EuriborSwapFixIFR3Y)

class EuriborSwapFixIFR4Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR4Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR4Y
    __del__ = lambda self : None;
EuriborSwapFixIFR4Y_swigregister = _QuantLib.EuriborSwapFixIFR4Y_swigregister
EuriborSwapFixIFR4Y_swigregister(EuriborSwapFixIFR4Y)

class EuriborSwapFixIFR5Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR5Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR5Y
    __del__ = lambda self : None;
EuriborSwapFixIFR5Y_swigregister = _QuantLib.EuriborSwapFixIFR5Y_swigregister
EuriborSwapFixIFR5Y_swigregister(EuriborSwapFixIFR5Y)

class EuriborSwapFixIFR6Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR6Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR6Y
    __del__ = lambda self : None;
EuriborSwapFixIFR6Y_swigregister = _QuantLib.EuriborSwapFixIFR6Y_swigregister
EuriborSwapFixIFR6Y_swigregister(EuriborSwapFixIFR6Y)

class EuriborSwapFixIFR7Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR7Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR7Y
    __del__ = lambda self : None;
EuriborSwapFixIFR7Y_swigregister = _QuantLib.EuriborSwapFixIFR7Y_swigregister
EuriborSwapFixIFR7Y_swigregister(EuriborSwapFixIFR7Y)

class EuriborSwapFixIFR8Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR8Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR8Y
    __del__ = lambda self : None;
EuriborSwapFixIFR8Y_swigregister = _QuantLib.EuriborSwapFixIFR8Y_swigregister
EuriborSwapFixIFR8Y_swigregister(EuriborSwapFixIFR8Y)

class EuriborSwapFixIFR9Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR9Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR9Y
    __del__ = lambda self : None;
EuriborSwapFixIFR9Y_swigregister = _QuantLib.EuriborSwapFixIFR9Y_swigregister
EuriborSwapFixIFR9Y_swigregister(EuriborSwapFixIFR9Y)

class EuriborSwapFixIFR10Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR10Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR10Y
    __del__ = lambda self : None;
EuriborSwapFixIFR10Y_swigregister = _QuantLib.EuriborSwapFixIFR10Y_swigregister
EuriborSwapFixIFR10Y_swigregister(EuriborSwapFixIFR10Y)

class EuriborSwapFixIFR12Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR12Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR12Y
    __del__ = lambda self : None;
EuriborSwapFixIFR12Y_swigregister = _QuantLib.EuriborSwapFixIFR12Y_swigregister
EuriborSwapFixIFR12Y_swigregister(EuriborSwapFixIFR12Y)

class EuriborSwapFixIFR15Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR15Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR15Y
    __del__ = lambda self : None;
EuriborSwapFixIFR15Y_swigregister = _QuantLib.EuriborSwapFixIFR15Y_swigregister
EuriborSwapFixIFR15Y_swigregister(EuriborSwapFixIFR15Y)

class EuriborSwapFixIFR20Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR20Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR20Y
    __del__ = lambda self : None;
EuriborSwapFixIFR20Y_swigregister = _QuantLib.EuriborSwapFixIFR20Y_swigregister
EuriborSwapFixIFR20Y_swigregister(EuriborSwapFixIFR20Y)

class EuriborSwapFixIFR25Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR25Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR25Y
    __del__ = lambda self : None;
EuriborSwapFixIFR25Y_swigregister = _QuantLib.EuriborSwapFixIFR25Y_swigregister
EuriborSwapFixIFR25Y_swigregister(EuriborSwapFixIFR25Y)

class EuriborSwapFixIFR30Y(EuriborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EuriborSwapFixIFR30Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EuriborSwapFixIFR30Y
    __del__ = lambda self : None;
EuriborSwapFixIFR30Y_swigregister = _QuantLib.EuriborSwapFixIFR30Y_swigregister
EuriborSwapFixIFR30Y_swigregister(EuriborSwapFixIFR30Y)

class EurliborSwapFixA(SwapIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA
    __del__ = lambda self : None;
EurliborSwapFixA_swigregister = _QuantLib.EurliborSwapFixA_swigregister
EurliborSwapFixA_swigregister(EurliborSwapFixA)

class EurliborSwapFixA1Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA1Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA1Y
    __del__ = lambda self : None;
EurliborSwapFixA1Y_swigregister = _QuantLib.EurliborSwapFixA1Y_swigregister
EurliborSwapFixA1Y_swigregister(EurliborSwapFixA1Y)

class EurliborSwapFixA2Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA2Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA2Y
    __del__ = lambda self : None;
EurliborSwapFixA2Y_swigregister = _QuantLib.EurliborSwapFixA2Y_swigregister
EurliborSwapFixA2Y_swigregister(EurliborSwapFixA2Y)

class EurliborSwapFixA3Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA3Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA3Y
    __del__ = lambda self : None;
EurliborSwapFixA3Y_swigregister = _QuantLib.EurliborSwapFixA3Y_swigregister
EurliborSwapFixA3Y_swigregister(EurliborSwapFixA3Y)

class EurliborSwapFixA4Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA4Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA4Y
    __del__ = lambda self : None;
EurliborSwapFixA4Y_swigregister = _QuantLib.EurliborSwapFixA4Y_swigregister
EurliborSwapFixA4Y_swigregister(EurliborSwapFixA4Y)

class EurliborSwapFixA5Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA5Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA5Y
    __del__ = lambda self : None;
EurliborSwapFixA5Y_swigregister = _QuantLib.EurliborSwapFixA5Y_swigregister
EurliborSwapFixA5Y_swigregister(EurliborSwapFixA5Y)

class EurliborSwapFixA6Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA6Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA6Y
    __del__ = lambda self : None;
EurliborSwapFixA6Y_swigregister = _QuantLib.EurliborSwapFixA6Y_swigregister
EurliborSwapFixA6Y_swigregister(EurliborSwapFixA6Y)

class EurliborSwapFixA7Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA7Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA7Y
    __del__ = lambda self : None;
EurliborSwapFixA7Y_swigregister = _QuantLib.EurliborSwapFixA7Y_swigregister
EurliborSwapFixA7Y_swigregister(EurliborSwapFixA7Y)

class EurliborSwapFixA8Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA8Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA8Y
    __del__ = lambda self : None;
EurliborSwapFixA8Y_swigregister = _QuantLib.EurliborSwapFixA8Y_swigregister
EurliborSwapFixA8Y_swigregister(EurliborSwapFixA8Y)

class EurliborSwapFixA9Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA9Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA9Y
    __del__ = lambda self : None;
EurliborSwapFixA9Y_swigregister = _QuantLib.EurliborSwapFixA9Y_swigregister
EurliborSwapFixA9Y_swigregister(EurliborSwapFixA9Y)

class EurliborSwapFixA10Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA10Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA10Y
    __del__ = lambda self : None;
EurliborSwapFixA10Y_swigregister = _QuantLib.EurliborSwapFixA10Y_swigregister
EurliborSwapFixA10Y_swigregister(EurliborSwapFixA10Y)

class EurliborSwapFixA12Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA12Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA12Y
    __del__ = lambda self : None;
EurliborSwapFixA12Y_swigregister = _QuantLib.EurliborSwapFixA12Y_swigregister
EurliborSwapFixA12Y_swigregister(EurliborSwapFixA12Y)

class EurliborSwapFixA15Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA15Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA15Y
    __del__ = lambda self : None;
EurliborSwapFixA15Y_swigregister = _QuantLib.EurliborSwapFixA15Y_swigregister
EurliborSwapFixA15Y_swigregister(EurliborSwapFixA15Y)

class EurliborSwapFixA20Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA20Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA20Y
    __del__ = lambda self : None;
EurliborSwapFixA20Y_swigregister = _QuantLib.EurliborSwapFixA20Y_swigregister
EurliborSwapFixA20Y_swigregister(EurliborSwapFixA20Y)

class EurliborSwapFixA25Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA25Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA25Y
    __del__ = lambda self : None;
EurliborSwapFixA25Y_swigregister = _QuantLib.EurliborSwapFixA25Y_swigregister
EurliborSwapFixA25Y_swigregister(EurliborSwapFixA25Y)

class EurliborSwapFixA30Y(EurliborSwapFixA):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixA30Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixA30Y
    __del__ = lambda self : None;
EurliborSwapFixA30Y_swigregister = _QuantLib.EurliborSwapFixA30Y_swigregister
EurliborSwapFixA30Y_swigregister(EurliborSwapFixA30Y)

class EurliborSwapFixB(SwapIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB
    __del__ = lambda self : None;
EurliborSwapFixB_swigregister = _QuantLib.EurliborSwapFixB_swigregister
EurliborSwapFixB_swigregister(EurliborSwapFixB)

class EurliborSwapFixB1Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB1Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB1Y
    __del__ = lambda self : None;
EurliborSwapFixB1Y_swigregister = _QuantLib.EurliborSwapFixB1Y_swigregister
EurliborSwapFixB1Y_swigregister(EurliborSwapFixB1Y)

class EurliborSwapFixB2Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB2Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB2Y
    __del__ = lambda self : None;
EurliborSwapFixB2Y_swigregister = _QuantLib.EurliborSwapFixB2Y_swigregister
EurliborSwapFixB2Y_swigregister(EurliborSwapFixB2Y)

class EurliborSwapFixB3Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB3Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB3Y
    __del__ = lambda self : None;
EurliborSwapFixB3Y_swigregister = _QuantLib.EurliborSwapFixB3Y_swigregister
EurliborSwapFixB3Y_swigregister(EurliborSwapFixB3Y)

class EurliborSwapFixB4Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB4Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB4Y
    __del__ = lambda self : None;
EurliborSwapFixB4Y_swigregister = _QuantLib.EurliborSwapFixB4Y_swigregister
EurliborSwapFixB4Y_swigregister(EurliborSwapFixB4Y)

class EurliborSwapFixB5Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB5Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB5Y
    __del__ = lambda self : None;
EurliborSwapFixB5Y_swigregister = _QuantLib.EurliborSwapFixB5Y_swigregister
EurliborSwapFixB5Y_swigregister(EurliborSwapFixB5Y)

class EurliborSwapFixB6Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB6Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB6Y
    __del__ = lambda self : None;
EurliborSwapFixB6Y_swigregister = _QuantLib.EurliborSwapFixB6Y_swigregister
EurliborSwapFixB6Y_swigregister(EurliborSwapFixB6Y)

class EurliborSwapFixB7Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB7Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB7Y
    __del__ = lambda self : None;
EurliborSwapFixB7Y_swigregister = _QuantLib.EurliborSwapFixB7Y_swigregister
EurliborSwapFixB7Y_swigregister(EurliborSwapFixB7Y)

class EurliborSwapFixB8Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB8Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB8Y
    __del__ = lambda self : None;
EurliborSwapFixB8Y_swigregister = _QuantLib.EurliborSwapFixB8Y_swigregister
EurliborSwapFixB8Y_swigregister(EurliborSwapFixB8Y)

class EurliborSwapFixB9Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB9Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB9Y
    __del__ = lambda self : None;
EurliborSwapFixB9Y_swigregister = _QuantLib.EurliborSwapFixB9Y_swigregister
EurliborSwapFixB9Y_swigregister(EurliborSwapFixB9Y)

class EurliborSwapFixB10Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB10Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB10Y
    __del__ = lambda self : None;
EurliborSwapFixB10Y_swigregister = _QuantLib.EurliborSwapFixB10Y_swigregister
EurliborSwapFixB10Y_swigregister(EurliborSwapFixB10Y)

class EurliborSwapFixB12Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB12Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB12Y
    __del__ = lambda self : None;
EurliborSwapFixB12Y_swigregister = _QuantLib.EurliborSwapFixB12Y_swigregister
EurliborSwapFixB12Y_swigregister(EurliborSwapFixB12Y)

class EurliborSwapFixB15Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB15Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB15Y
    __del__ = lambda self : None;
EurliborSwapFixB15Y_swigregister = _QuantLib.EurliborSwapFixB15Y_swigregister
EurliborSwapFixB15Y_swigregister(EurliborSwapFixB15Y)

class EurliborSwapFixB20Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB20Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB20Y
    __del__ = lambda self : None;
EurliborSwapFixB20Y_swigregister = _QuantLib.EurliborSwapFixB20Y_swigregister
EurliborSwapFixB20Y_swigregister(EurliborSwapFixB20Y)

class EurliborSwapFixB25Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB25Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB25Y
    __del__ = lambda self : None;
EurliborSwapFixB25Y_swigregister = _QuantLib.EurliborSwapFixB25Y_swigregister
EurliborSwapFixB25Y_swigregister(EurliborSwapFixB25Y)

class EurliborSwapFixB30Y(EurliborSwapFixB):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixB30Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixB30Y
    __del__ = lambda self : None;
EurliborSwapFixB30Y_swigregister = _QuantLib.EurliborSwapFixB30Y_swigregister
EurliborSwapFixB30Y_swigregister(EurliborSwapFixB30Y)

class EurliborSwapFixIFR(SwapIndex):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR
    __del__ = lambda self : None;
EurliborSwapFixIFR_swigregister = _QuantLib.EurliborSwapFixIFR_swigregister
EurliborSwapFixIFR_swigregister(EurliborSwapFixIFR)

class EurliborSwapFixIFR1Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR1Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR1Y
    __del__ = lambda self : None;
EurliborSwapFixIFR1Y_swigregister = _QuantLib.EurliborSwapFixIFR1Y_swigregister
EurliborSwapFixIFR1Y_swigregister(EurliborSwapFixIFR1Y)

class EurliborSwapFixIFR2Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR2Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR2Y
    __del__ = lambda self : None;
EurliborSwapFixIFR2Y_swigregister = _QuantLib.EurliborSwapFixIFR2Y_swigregister
EurliborSwapFixIFR2Y_swigregister(EurliborSwapFixIFR2Y)

class EurliborSwapFixIFR3Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR3Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR3Y
    __del__ = lambda self : None;
EurliborSwapFixIFR3Y_swigregister = _QuantLib.EurliborSwapFixIFR3Y_swigregister
EurliborSwapFixIFR3Y_swigregister(EurliborSwapFixIFR3Y)

class EurliborSwapFixIFR4Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR4Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR4Y
    __del__ = lambda self : None;
EurliborSwapFixIFR4Y_swigregister = _QuantLib.EurliborSwapFixIFR4Y_swigregister
EurliborSwapFixIFR4Y_swigregister(EurliborSwapFixIFR4Y)

class EurliborSwapFixIFR5Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR5Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR5Y
    __del__ = lambda self : None;
EurliborSwapFixIFR5Y_swigregister = _QuantLib.EurliborSwapFixIFR5Y_swigregister
EurliborSwapFixIFR5Y_swigregister(EurliborSwapFixIFR5Y)

class EurliborSwapFixIFR6Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR6Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR6Y
    __del__ = lambda self : None;
EurliborSwapFixIFR6Y_swigregister = _QuantLib.EurliborSwapFixIFR6Y_swigregister
EurliborSwapFixIFR6Y_swigregister(EurliborSwapFixIFR6Y)

class EurliborSwapFixIFR7Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR7Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR7Y
    __del__ = lambda self : None;
EurliborSwapFixIFR7Y_swigregister = _QuantLib.EurliborSwapFixIFR7Y_swigregister
EurliborSwapFixIFR7Y_swigregister(EurliborSwapFixIFR7Y)

class EurliborSwapFixIFR8Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR8Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR8Y
    __del__ = lambda self : None;
EurliborSwapFixIFR8Y_swigregister = _QuantLib.EurliborSwapFixIFR8Y_swigregister
EurliborSwapFixIFR8Y_swigregister(EurliborSwapFixIFR8Y)

class EurliborSwapFixIFR9Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR9Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR9Y
    __del__ = lambda self : None;
EurliborSwapFixIFR9Y_swigregister = _QuantLib.EurliborSwapFixIFR9Y_swigregister
EurliborSwapFixIFR9Y_swigregister(EurliborSwapFixIFR9Y)

class EurliborSwapFixIFR10Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR10Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR10Y
    __del__ = lambda self : None;
EurliborSwapFixIFR10Y_swigregister = _QuantLib.EurliborSwapFixIFR10Y_swigregister
EurliborSwapFixIFR10Y_swigregister(EurliborSwapFixIFR10Y)

class EurliborSwapFixIFR12Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR12Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR12Y
    __del__ = lambda self : None;
EurliborSwapFixIFR12Y_swigregister = _QuantLib.EurliborSwapFixIFR12Y_swigregister
EurliborSwapFixIFR12Y_swigregister(EurliborSwapFixIFR12Y)

class EurliborSwapFixIFR15Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR15Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR15Y
    __del__ = lambda self : None;
EurliborSwapFixIFR15Y_swigregister = _QuantLib.EurliborSwapFixIFR15Y_swigregister
EurliborSwapFixIFR15Y_swigregister(EurliborSwapFixIFR15Y)

class EurliborSwapFixIFR20Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR20Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR20Y
    __del__ = lambda self : None;
EurliborSwapFixIFR20Y_swigregister = _QuantLib.EurliborSwapFixIFR20Y_swigregister
EurliborSwapFixIFR20Y_swigregister(EurliborSwapFixIFR20Y)

class EurliborSwapFixIFR25Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR25Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR25Y
    __del__ = lambda self : None;
EurliborSwapFixIFR25Y_swigregister = _QuantLib.EurliborSwapFixIFR25Y_swigregister
EurliborSwapFixIFR25Y_swigregister(EurliborSwapFixIFR25Y)

class EurliborSwapFixIFR30Y(EurliborSwapFixIFR):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_EurliborSwapFixIFR30Y(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_EurliborSwapFixIFR30Y
    __del__ = lambda self : None;
EurliborSwapFixIFR30Y_swigregister = _QuantLib.EurliborSwapFixIFR30Y_swigregister
EurliborSwapFixIFR30Y_swigregister(EurliborSwapFixIFR30Y)

class DateGeneration(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Backward = _QuantLib.DateGeneration_Backward
    Forward = _QuantLib.DateGeneration_Forward
    Zero = _QuantLib.DateGeneration_Zero
    ThirdWednesday = _QuantLib.DateGeneration_ThirdWednesday
    def __init__(self, *args): 
        this = _QuantLib.new_DateGeneration(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DateGeneration
    __del__ = lambda self : None;
DateGeneration_swigregister = _QuantLib.DateGeneration_swigregister
DateGeneration_swigregister(DateGeneration)

class Schedule(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Schedule(*args)
        try: self.this.append(this)
        except: self.this = this
    def __len__(*args): return _QuantLib.Schedule___len__(*args)
    def isRegular(*args): return _QuantLib.Schedule_isRegular(*args)
    def __getitem__(*args): return _QuantLib.Schedule___getitem__(*args)
    __swig_destroy__ = _QuantLib.delete_Schedule
    __del__ = lambda self : None;
Schedule_swigregister = _QuantLib.Schedule_swigregister
Schedule_swigregister(Schedule)

class CashFlow(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.CashFlow___deref__(*args)
    def __nonzero__(*args): return _QuantLib.CashFlow___nonzero__(*args)
    def asObservable(*args): return _QuantLib.CashFlow_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_CashFlow(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CashFlow
    __del__ = lambda self : None;
    def amount(*args): return _QuantLib.CashFlow_amount(*args)
    def date(*args): return _QuantLib.CashFlow_date(*args)
CashFlow_swigregister = _QuantLib.CashFlow_swigregister
CashFlow_swigregister(CashFlow)

class SimpleCashFlow(CashFlow):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SimpleCashFlow(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SimpleCashFlow
    __del__ = lambda self : None;
SimpleCashFlow_swigregister = _QuantLib.SimpleCashFlow_swigregister
SimpleCashFlow_swigregister(SimpleCashFlow)

class FixedRateCoupon(CashFlow):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FixedRateCoupon(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FixedRateCoupon
    __del__ = lambda self : None;
FixedRateCoupon_swigregister = _QuantLib.FixedRateCoupon_swigregister
FixedRateCoupon_swigregister(FixedRateCoupon)

class IborCoupon(CashFlow):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_IborCoupon(*args)
        try: self.this.append(this)
        except: self.this = this
    def rate(*args): return _QuantLib.IborCoupon_rate(*args)
    def indexFixing(*args): return _QuantLib.IborCoupon_indexFixing(*args)
    def nominal(*args): return _QuantLib.IborCoupon_nominal(*args)
    __swig_destroy__ = _QuantLib.delete_IborCoupon
    __del__ = lambda self : None;
IborCoupon_swigregister = _QuantLib.IborCoupon_swigregister
IborCoupon_swigregister(IborCoupon)

class FloatingRateCoupon(CashFlow):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def rate(*args): return _QuantLib.FloatingRateCoupon_rate(*args)
    def fixingDays(*args): return _QuantLib.FloatingRateCoupon_fixingDays(*args)
    def spread(*args): return _QuantLib.FloatingRateCoupon_spread(*args)
    def indexFixing(*args): return _QuantLib.FloatingRateCoupon_indexFixing(*args)
    def fixingDate(*args): return _QuantLib.FloatingRateCoupon_fixingDate(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_FloatingRateCoupon(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FloatingRateCoupon
    __del__ = lambda self : None;
FloatingRateCoupon_swigregister = _QuantLib.FloatingRateCoupon_swigregister
FloatingRateCoupon_swigregister(FloatingRateCoupon)

class Leg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.Leg_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.Leg___nonzero__(*args)
    def __len__(*args): return _QuantLib.Leg___len__(*args)
    def pop(*args): return _QuantLib.Leg_pop(*args)
    def __getslice__(*args): return _QuantLib.Leg___getslice__(*args)
    def __setslice__(*args): return _QuantLib.Leg___setslice__(*args)
    def __delslice__(*args): return _QuantLib.Leg___delslice__(*args)
    def __delitem__(*args): return _QuantLib.Leg___delitem__(*args)
    def __getitem__(*args): return _QuantLib.Leg___getitem__(*args)
    def __setitem__(*args): return _QuantLib.Leg___setitem__(*args)
    def append(*args): return _QuantLib.Leg_append(*args)
    def empty(*args): return _QuantLib.Leg_empty(*args)
    def size(*args): return _QuantLib.Leg_size(*args)
    def clear(*args): return _QuantLib.Leg_clear(*args)
    def swap(*args): return _QuantLib.Leg_swap(*args)
    def get_allocator(*args): return _QuantLib.Leg_get_allocator(*args)
    def begin(*args): return _QuantLib.Leg_begin(*args)
    def end(*args): return _QuantLib.Leg_end(*args)
    def rbegin(*args): return _QuantLib.Leg_rbegin(*args)
    def rend(*args): return _QuantLib.Leg_rend(*args)
    def pop_back(*args): return _QuantLib.Leg_pop_back(*args)
    def erase(*args): return _QuantLib.Leg_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Leg(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.Leg_push_back(*args)
    def front(*args): return _QuantLib.Leg_front(*args)
    def back(*args): return _QuantLib.Leg_back(*args)
    def assign(*args): return _QuantLib.Leg_assign(*args)
    def resize(*args): return _QuantLib.Leg_resize(*args)
    def insert(*args): return _QuantLib.Leg_insert(*args)
    def reserve(*args): return _QuantLib.Leg_reserve(*args)
    def capacity(*args): return _QuantLib.Leg_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_Leg
    __del__ = lambda self : None;
Leg_swigregister = _QuantLib.Leg_swigregister
Leg_swigregister(Leg)

FixedRateLeg = _QuantLib.FixedRateLeg
IborLeg = _QuantLib.IborLeg
CmsLeg = _QuantLib.CmsLeg
CmsZeroLeg = _QuantLib.CmsZeroLeg
class Duration(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Simple = _QuantLib.Duration_Simple
    Macaulay = _QuantLib.Duration_Macaulay
    Modified = _QuantLib.Duration_Modified
    def __init__(self, *args): 
        this = _QuantLib.new_Duration(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Duration
    __del__ = lambda self : None;
Duration_swigregister = _QuantLib.Duration_swigregister
Duration_swigregister(Duration)

class CashFlows(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    startDate = staticmethod(_QuantLib.CashFlows_startDate)
    maturityDate = staticmethod(_QuantLib.CashFlows_maturityDate)
    npv = staticmethod(_QuantLib.CashFlows_npv)
    bps = staticmethod(_QuantLib.CashFlows_bps)
    atmRate = staticmethod(_QuantLib.CashFlows_atmRate)
    irr = staticmethod(_QuantLib.CashFlows_irr)
    duration = staticmethod(_QuantLib.CashFlows_duration)
    convexity = staticmethod(_QuantLib.CashFlows_convexity)
    __swig_destroy__ = _QuantLib.delete_CashFlows
    __del__ = lambda self : None;
CashFlows_swigregister = _QuantLib.CashFlows_swigregister
CashFlows_swigregister(CashFlows)
CashFlows_startDate = _QuantLib.CashFlows_startDate
CashFlows_maturityDate = _QuantLib.CashFlows_maturityDate
CashFlows_npv = _QuantLib.CashFlows_npv
CashFlows_bps = _QuantLib.CashFlows_bps
CashFlows_atmRate = _QuantLib.CashFlows_atmRate
CashFlows_irr = _QuantLib.CashFlows_irr
CashFlows_duration = _QuantLib.CashFlows_duration
CashFlows_convexity = _QuantLib.CashFlows_convexity

class Bond(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def settlementDate(*args): return _QuantLib.Bond_settlementDate(*args)
    def cashflows(*args): return _QuantLib.Bond_cashflows(*args)
    def redemption(*args): return _QuantLib.Bond_redemption(*args)
    def calendar(*args): return _QuantLib.Bond_calendar(*args)
    def cleanPrice(*args): return _QuantLib.Bond_cleanPrice(*args)
    def dirtyPrice(*args): return _QuantLib.Bond_dirtyPrice(*args)
    def bondYield(*args): return _QuantLib.Bond_bondYield(*args)
    def accruedAmount(*args): return _QuantLib.Bond_accruedAmount(*args)
    __swig_destroy__ = _QuantLib.delete_Bond
    __del__ = lambda self : None;
Bond_swigregister = _QuantLib.Bond_swigregister
Bond_swigregister(Bond)

class ZeroCouponBond(Bond):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args, **kwargs): 
        this = _QuantLib.new_ZeroCouponBond(*args, **kwargs)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ZeroCouponBond
    __del__ = lambda self : None;
ZeroCouponBond_swigregister = _QuantLib.ZeroCouponBond_swigregister
ZeroCouponBond_swigregister(ZeroCouponBond)

class FixedRateBond(Bond):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args, **kwargs): 
        this = _QuantLib.new_FixedRateBond(*args, **kwargs)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FixedRateBond
    __del__ = lambda self : None;
FixedRateBond_swigregister = _QuantLib.FixedRateBond_swigregister
FixedRateBond_swigregister(FixedRateBond)

class FloatingRateBond(Bond):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args, **kwargs): 
        this = _QuantLib.new_FloatingRateBond(*args, **kwargs)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FloatingRateBond
    __del__ = lambda self : None;
FloatingRateBond_swigregister = _QuantLib.FloatingRateBond_swigregister
FloatingRateBond_swigregister(FloatingRateBond)

class DiscountingBondEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DiscountingBondEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DiscountingBondEngine
    __del__ = lambda self : None;
DiscountingBondEngine_swigregister = _QuantLib.DiscountingBondEngine_swigregister
DiscountingBondEngine_swigregister(DiscountingBondEngine)

class CallabilityPrice(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Dirty = _QuantLib.CallabilityPrice_Dirty
    Clean = _QuantLib.CallabilityPrice_Clean
    def __init__(self, *args): 
        this = _QuantLib.new_CallabilityPrice(*args)
        try: self.this.append(this)
        except: self.this = this
    def amount(*args): return _QuantLib.CallabilityPrice_amount(*args)
    def type(*args): return _QuantLib.CallabilityPrice_type(*args)
    __swig_destroy__ = _QuantLib.delete_CallabilityPrice
    __del__ = lambda self : None;
CallabilityPrice_swigregister = _QuantLib.CallabilityPrice_swigregister
CallabilityPrice_swigregister(CallabilityPrice)

class Callability(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.Callability___deref__(*args)
    def __nonzero__(*args): return _QuantLib.Callability___nonzero__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Callability(*args)
        try: self.this.append(this)
        except: self.this = this
    Call = _QuantLib.Callability_Call
    Put = _QuantLib.Callability_Put
    __swig_destroy__ = _QuantLib.delete_Callability
    __del__ = lambda self : None;
    def price(*args): return _QuantLib.Callability_price(*args)
    def type(*args): return _QuantLib.Callability_type(*args)
    def date(*args): return _QuantLib.Callability_date(*args)
Callability_swigregister = _QuantLib.Callability_swigregister
Callability_swigregister(Callability)

class SoftCallability(Callability):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SoftCallability(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SoftCallability
    __del__ = lambda self : None;
SoftCallability_swigregister = _QuantLib.SoftCallability_swigregister
SoftCallability_swigregister(SoftCallability)

class CallabilitySchedule(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.CallabilitySchedule_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.CallabilitySchedule___nonzero__(*args)
    def __len__(*args): return _QuantLib.CallabilitySchedule___len__(*args)
    def pop(*args): return _QuantLib.CallabilitySchedule_pop(*args)
    def __getslice__(*args): return _QuantLib.CallabilitySchedule___getslice__(*args)
    def __setslice__(*args): return _QuantLib.CallabilitySchedule___setslice__(*args)
    def __delslice__(*args): return _QuantLib.CallabilitySchedule___delslice__(*args)
    def __delitem__(*args): return _QuantLib.CallabilitySchedule___delitem__(*args)
    def __getitem__(*args): return _QuantLib.CallabilitySchedule___getitem__(*args)
    def __setitem__(*args): return _QuantLib.CallabilitySchedule___setitem__(*args)
    def append(*args): return _QuantLib.CallabilitySchedule_append(*args)
    def empty(*args): return _QuantLib.CallabilitySchedule_empty(*args)
    def size(*args): return _QuantLib.CallabilitySchedule_size(*args)
    def clear(*args): return _QuantLib.CallabilitySchedule_clear(*args)
    def swap(*args): return _QuantLib.CallabilitySchedule_swap(*args)
    def get_allocator(*args): return _QuantLib.CallabilitySchedule_get_allocator(*args)
    def begin(*args): return _QuantLib.CallabilitySchedule_begin(*args)
    def end(*args): return _QuantLib.CallabilitySchedule_end(*args)
    def rbegin(*args): return _QuantLib.CallabilitySchedule_rbegin(*args)
    def rend(*args): return _QuantLib.CallabilitySchedule_rend(*args)
    def pop_back(*args): return _QuantLib.CallabilitySchedule_pop_back(*args)
    def erase(*args): return _QuantLib.CallabilitySchedule_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_CallabilitySchedule(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.CallabilitySchedule_push_back(*args)
    def front(*args): return _QuantLib.CallabilitySchedule_front(*args)
    def back(*args): return _QuantLib.CallabilitySchedule_back(*args)
    def assign(*args): return _QuantLib.CallabilitySchedule_assign(*args)
    def resize(*args): return _QuantLib.CallabilitySchedule_resize(*args)
    def insert(*args): return _QuantLib.CallabilitySchedule_insert(*args)
    def reserve(*args): return _QuantLib.CallabilitySchedule_reserve(*args)
    def capacity(*args): return _QuantLib.CallabilitySchedule_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_CallabilitySchedule
    __del__ = lambda self : None;
CallabilitySchedule_swigregister = _QuantLib.CallabilitySchedule_swigregister
CallabilitySchedule_swigregister(CallabilitySchedule)

class CapFloor(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def impliedVolatility(*args): return _QuantLib.CapFloor_impliedVolatility(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_CapFloor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CapFloor
    __del__ = lambda self : None;
CapFloor_swigregister = _QuantLib.CapFloor_swigregister
CapFloor_swigregister(CapFloor)

class Cap(CapFloor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Cap(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Cap
    __del__ = lambda self : None;
Cap_swigregister = _QuantLib.Cap_swigregister
Cap_swigregister(Cap)

class Floor(CapFloor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Floor(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Floor
    __del__ = lambda self : None;
Floor_swigregister = _QuantLib.Floor_swigregister
Floor_swigregister(Floor)

class Collar(CapFloor):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Collar(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Collar
    __del__ = lambda self : None;
Collar_swigregister = _QuantLib.Collar_swigregister
Collar_swigregister(Collar)

class BlackCapFloorEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BlackCapFloorEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BlackCapFloorEngine
    __del__ = lambda self : None;
BlackCapFloorEngine_swigregister = _QuantLib.BlackCapFloorEngine_swigregister
BlackCapFloorEngine_swigregister(BlackCapFloorEngine)

class CompoundForward(YieldTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CompoundForward(*args)
        try: self.this.append(this)
        except: self.this = this
    def dates(*args): return _QuantLib.CompoundForward_dates(*args)
    def compoundForward(*args): return _QuantLib.CompoundForward_compoundForward(*args)
    __swig_destroy__ = _QuantLib.delete_CompoundForward
    __del__ = lambda self : None;
CompoundForward_swigregister = _QuantLib.CompoundForward_swigregister
CompoundForward_swigregister(CompoundForward)

class Dividend(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.Dividend___deref__(*args)
    def __nonzero__(*args): return _QuantLib.Dividend___nonzero__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Dividend(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Dividend
    __del__ = lambda self : None;
    def amount(*args): return _QuantLib.Dividend_amount(*args)
    def date(*args): return _QuantLib.Dividend_date(*args)
Dividend_swigregister = _QuantLib.Dividend_swigregister
Dividend_swigregister(Dividend)

class FixedDividend(Dividend):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FixedDividend(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FixedDividend
    __del__ = lambda self : None;
FixedDividend_swigregister = _QuantLib.FixedDividend_swigregister
FixedDividend_swigregister(FixedDividend)

class FractionalDividend(Dividend):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FractionalDividend(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FractionalDividend
    __del__ = lambda self : None;
FractionalDividend_swigregister = _QuantLib.FractionalDividend_swigregister
FractionalDividend_swigregister(FractionalDividend)

class DividendSchedule(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.DividendSchedule_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.DividendSchedule___nonzero__(*args)
    def __len__(*args): return _QuantLib.DividendSchedule___len__(*args)
    def pop(*args): return _QuantLib.DividendSchedule_pop(*args)
    def __getslice__(*args): return _QuantLib.DividendSchedule___getslice__(*args)
    def __setslice__(*args): return _QuantLib.DividendSchedule___setslice__(*args)
    def __delslice__(*args): return _QuantLib.DividendSchedule___delslice__(*args)
    def __delitem__(*args): return _QuantLib.DividendSchedule___delitem__(*args)
    def __getitem__(*args): return _QuantLib.DividendSchedule___getitem__(*args)
    def __setitem__(*args): return _QuantLib.DividendSchedule___setitem__(*args)
    def append(*args): return _QuantLib.DividendSchedule_append(*args)
    def empty(*args): return _QuantLib.DividendSchedule_empty(*args)
    def size(*args): return _QuantLib.DividendSchedule_size(*args)
    def clear(*args): return _QuantLib.DividendSchedule_clear(*args)
    def swap(*args): return _QuantLib.DividendSchedule_swap(*args)
    def get_allocator(*args): return _QuantLib.DividendSchedule_get_allocator(*args)
    def begin(*args): return _QuantLib.DividendSchedule_begin(*args)
    def end(*args): return _QuantLib.DividendSchedule_end(*args)
    def rbegin(*args): return _QuantLib.DividendSchedule_rbegin(*args)
    def rend(*args): return _QuantLib.DividendSchedule_rend(*args)
    def pop_back(*args): return _QuantLib.DividendSchedule_pop_back(*args)
    def erase(*args): return _QuantLib.DividendSchedule_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_DividendSchedule(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.DividendSchedule_push_back(*args)
    def front(*args): return _QuantLib.DividendSchedule_front(*args)
    def back(*args): return _QuantLib.DividendSchedule_back(*args)
    def assign(*args): return _QuantLib.DividendSchedule_assign(*args)
    def resize(*args): return _QuantLib.DividendSchedule_resize(*args)
    def insert(*args): return _QuantLib.DividendSchedule_insert(*args)
    def reserve(*args): return _QuantLib.DividendSchedule_reserve(*args)
    def capacity(*args): return _QuantLib.DividendSchedule_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_DividendSchedule
    __del__ = lambda self : None;
DividendSchedule_swigregister = _QuantLib.DividendSchedule_swigregister
DividendSchedule_swigregister(DividendSchedule)

class ConvertibleZeroCouponBond(Bond):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ConvertibleZeroCouponBond(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ConvertibleZeroCouponBond
    __del__ = lambda self : None;
ConvertibleZeroCouponBond_swigregister = _QuantLib.ConvertibleZeroCouponBond_swigregister
ConvertibleZeroCouponBond_swigregister(ConvertibleZeroCouponBond)

class ConvertibleFixedCouponBond(Bond):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ConvertibleFixedCouponBond(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ConvertibleFixedCouponBond
    __del__ = lambda self : None;
ConvertibleFixedCouponBond_swigregister = _QuantLib.ConvertibleFixedCouponBond_swigregister
ConvertibleFixedCouponBond_swigregister(ConvertibleFixedCouponBond)

class ConvertibleFloatingRateBond(Bond):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ConvertibleFloatingRateBond(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ConvertibleFloatingRateBond
    __del__ = lambda self : None;
ConvertibleFloatingRateBond_swigregister = _QuantLib.ConvertibleFloatingRateBond_swigregister
ConvertibleFloatingRateBond_swigregister(ConvertibleFloatingRateBond)

class BinomialConvertibleEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BinomialConvertibleEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BinomialConvertibleEngine
    __del__ = lambda self : None;
BinomialConvertibleEngine_swigregister = _QuantLib.BinomialConvertibleEngine_swigregister
BinomialConvertibleEngine_swigregister(BinomialConvertibleEngine)

class DiscountCurve(YieldTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DiscountCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def dates(*args): return _QuantLib.DiscountCurve_dates(*args)
    def discounts(*args): return _QuantLib.DiscountCurve_discounts(*args)
    def nodes(*args): return _QuantLib.DiscountCurve_nodes(*args)
    __swig_destroy__ = _QuantLib.delete_DiscountCurve
    __del__ = lambda self : None;
DiscountCurve_swigregister = _QuantLib.DiscountCurve_swigregister
DiscountCurve_swigregister(DiscountCurve)

class NormalDistribution(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NormalDistribution(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.NormalDistribution___call__(*args)
    def derivative(*args): return _QuantLib.NormalDistribution_derivative(*args)
    __swig_destroy__ = _QuantLib.delete_NormalDistribution
    __del__ = lambda self : None;
NormalDistribution_swigregister = _QuantLib.NormalDistribution_swigregister
NormalDistribution_swigregister(NormalDistribution)

class CumulativeNormalDistribution(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CumulativeNormalDistribution(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.CumulativeNormalDistribution___call__(*args)
    def derivative(*args): return _QuantLib.CumulativeNormalDistribution_derivative(*args)
    __swig_destroy__ = _QuantLib.delete_CumulativeNormalDistribution
    __del__ = lambda self : None;
CumulativeNormalDistribution_swigregister = _QuantLib.CumulativeNormalDistribution_swigregister
CumulativeNormalDistribution_swigregister(CumulativeNormalDistribution)

class InverseCumulativeNormal(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_InverseCumulativeNormal(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.InverseCumulativeNormal___call__(*args)
    __swig_destroy__ = _QuantLib.delete_InverseCumulativeNormal
    __del__ = lambda self : None;
InverseCumulativeNormal_swigregister = _QuantLib.InverseCumulativeNormal_swigregister
InverseCumulativeNormal_swigregister(InverseCumulativeNormal)

class MoroInverseCumulativeNormal(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MoroInverseCumulativeNormal(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.MoroInverseCumulativeNormal___call__(*args)
    __swig_destroy__ = _QuantLib.delete_MoroInverseCumulativeNormal
    __del__ = lambda self : None;
MoroInverseCumulativeNormal_swigregister = _QuantLib.MoroInverseCumulativeNormal_swigregister
MoroInverseCumulativeNormal_swigregister(MoroInverseCumulativeNormal)

class BivariateCumulativeNormalDistribution(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BivariateCumulativeNormalDistribution(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.BivariateCumulativeNormalDistribution___call__(*args)
    __swig_destroy__ = _QuantLib.delete_BivariateCumulativeNormalDistribution
    __del__ = lambda self : None;
BivariateCumulativeNormalDistribution_swigregister = _QuantLib.BivariateCumulativeNormalDistribution_swigregister
BivariateCumulativeNormalDistribution_swigregister(BivariateCumulativeNormalDistribution)

class Money(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Money(*args)
        try: self.this.append(this)
        except: self.this = this
    def currency(*args): return _QuantLib.Money_currency(*args)
    def value(*args): return _QuantLib.Money_value(*args)
    def rounded(*args): return _QuantLib.Money_rounded(*args)
    def __pos__(*args): return _QuantLib.Money___pos__(*args)
    def __neg__(*args): return _QuantLib.Money___neg__(*args)
    def __add__(*args): return _QuantLib.Money___add__(*args)
    def __sub__(*args): return _QuantLib.Money___sub__(*args)
    def __mul__(*args): return _QuantLib.Money___mul__(*args)
    def __div__(*args): return _QuantLib.Money___div__(*args)
    def __rmul__(*args): return _QuantLib.Money___rmul__(*args)
    def __cmp__(*args): return _QuantLib.Money___cmp__(*args)
    def __str__(*args): return _QuantLib.Money___str__(*args)
    NoConversion = _QuantLib.Money_NoConversion
    BaseCurrencyConversion = _QuantLib.Money_BaseCurrencyConversion
    AutomatedConversion = _QuantLib.Money_AutomatedConversion
    setConversionType = staticmethod(_QuantLib.Money_setConversionType)
    setBaseCurrency = staticmethod(_QuantLib.Money_setBaseCurrency)
    __swig_destroy__ = _QuantLib.delete_Money
    __del__ = lambda self : None;
Money_swigregister = _QuantLib.Money_swigregister
Money_swigregister(Money)
Money_setConversionType = _QuantLib.Money_setConversionType
Money_setBaseCurrency = _QuantLib.Money_setBaseCurrency

class ExchangeRate(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Direct = _QuantLib.ExchangeRate_Direct
    Derived = _QuantLib.ExchangeRate_Derived
    def __init__(self, *args): 
        this = _QuantLib.new_ExchangeRate(*args)
        try: self.this.append(this)
        except: self.this = this
    def source(*args): return _QuantLib.ExchangeRate_source(*args)
    def target(*args): return _QuantLib.ExchangeRate_target(*args)
    def type(*args): return _QuantLib.ExchangeRate_type(*args)
    def rate(*args): return _QuantLib.ExchangeRate_rate(*args)
    def exchange(*args): return _QuantLib.ExchangeRate_exchange(*args)
    chain = staticmethod(_QuantLib.ExchangeRate_chain)
    __swig_destroy__ = _QuantLib.delete_ExchangeRate
    __del__ = lambda self : None;
ExchangeRate_swigregister = _QuantLib.ExchangeRate_swigregister
ExchangeRate_swigregister(ExchangeRate)
ExchangeRate_chain = _QuantLib.ExchangeRate_chain

class ExchangeRateManager(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    instance = staticmethod(_QuantLib.ExchangeRateManager_instance)
    def add(*args): return _QuantLib.ExchangeRateManager_add(*args)
    def lookup(*args): return _QuantLib.ExchangeRateManager_lookup(*args)
    def clear(*args): return _QuantLib.ExchangeRateManager_clear(*args)
    __swig_destroy__ = _QuantLib.delete_ExchangeRateManager
    __del__ = lambda self : None;
ExchangeRateManager_swigregister = _QuantLib.ExchangeRateManager_swigregister
ExchangeRateManager_swigregister(ExchangeRateManager)
ExchangeRateManager_instance = _QuantLib.ExchangeRateManager_instance

class ForwardCurve(YieldTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ForwardCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def dates(*args): return _QuantLib.ForwardCurve_dates(*args)
    def forwards(*args): return _QuantLib.ForwardCurve_forwards(*args)
    def nodes(*args): return _QuantLib.ForwardCurve_nodes(*args)
    __swig_destroy__ = _QuantLib.delete_ForwardCurve
    __del__ = lambda self : None;
ForwardCurve_swigregister = _QuantLib.ForwardCurve_swigregister
ForwardCurve_swigregister(ForwardCurve)

class TimeGrid(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TimeGrid(*args)
        try: self.this.append(this)
        except: self.this = this
    def __len__(*args): return _QuantLib.TimeGrid___len__(*args)
    def __getitem__(*args): return _QuantLib.TimeGrid___getitem__(*args)
    def dt(*args): return _QuantLib.TimeGrid_dt(*args)
    __swig_destroy__ = _QuantLib.delete_TimeGrid
    __del__ = lambda self : None;
TimeGrid_swigregister = _QuantLib.TimeGrid_swigregister
TimeGrid_swigregister(TimeGrid)

class SegmentIntegral(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SegmentIntegral(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.SegmentIntegral___call__(*args)
    __swig_destroy__ = _QuantLib.delete_SegmentIntegral
    __del__ = lambda self : None;
SegmentIntegral_swigregister = _QuantLib.SegmentIntegral_swigregister
SegmentIntegral_swigregister(SegmentIntegral)

class TrapezoidIntegralDefault(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TrapezoidIntegralDefault(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.TrapezoidIntegralDefault___call__(*args)
    __swig_destroy__ = _QuantLib.delete_TrapezoidIntegralDefault
    __del__ = lambda self : None;
TrapezoidIntegralDefault_swigregister = _QuantLib.TrapezoidIntegralDefault_swigregister
TrapezoidIntegralDefault_swigregister(TrapezoidIntegralDefault)

class TrapezoidIntegralMidPoint(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TrapezoidIntegralMidPoint(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.TrapezoidIntegralMidPoint___call__(*args)
    __swig_destroy__ = _QuantLib.delete_TrapezoidIntegralMidPoint
    __del__ = lambda self : None;
TrapezoidIntegralMidPoint_swigregister = _QuantLib.TrapezoidIntegralMidPoint_swigregister
TrapezoidIntegralMidPoint_swigregister(TrapezoidIntegralMidPoint)

class SimpsonIntegral(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SimpsonIntegral(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.SimpsonIntegral___call__(*args)
    __swig_destroy__ = _QuantLib.delete_SimpsonIntegral
    __del__ = lambda self : None;
SimpsonIntegral_swigregister = _QuantLib.SimpsonIntegral_swigregister
SimpsonIntegral_swigregister(SimpsonIntegral)

class GaussKronrodAdaptive(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GaussKronrodAdaptive(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.GaussKronrodAdaptive___call__(*args)
    __swig_destroy__ = _QuantLib.delete_GaussKronrodAdaptive
    __del__ = lambda self : None;
GaussKronrodAdaptive_swigregister = _QuantLib.GaussKronrodAdaptive_swigregister
GaussKronrodAdaptive_swigregister(GaussKronrodAdaptive)

class GaussKronrodNonAdaptive(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GaussKronrodNonAdaptive(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.GaussKronrodNonAdaptive___call__(*args)
    __swig_destroy__ = _QuantLib.delete_GaussKronrodNonAdaptive
    __del__ = lambda self : None;
GaussKronrodNonAdaptive_swigregister = _QuantLib.GaussKronrodNonAdaptive_swigregister
GaussKronrodNonAdaptive_swigregister(GaussKronrodNonAdaptive)

class SampleNumber(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def value(*args): return _QuantLib.SampleNumber_value(*args)
    def weight(*args): return _QuantLib.SampleNumber_weight(*args)
    __swig_destroy__ = _QuantLib.delete_SampleNumber
    __del__ = lambda self : None;
SampleNumber_swigregister = _QuantLib.SampleNumber_swigregister
SampleNumber_swigregister(SampleNumber)

class SampleArray(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def value(*args): return _QuantLib.SampleArray_value(*args)
    def weight(*args): return _QuantLib.SampleArray_weight(*args)
    __swig_destroy__ = _QuantLib.delete_SampleArray
    __del__ = lambda self : None;
SampleArray_swigregister = _QuantLib.SampleArray_swigregister
SampleArray_swigregister(SampleArray)

class SampleRealVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def value(*args): return _QuantLib.SampleRealVector_value(*args)
    def weight(*args): return _QuantLib.SampleRealVector_weight(*args)
    __swig_destroy__ = _QuantLib.delete_SampleRealVector
    __del__ = lambda self : None;
SampleRealVector_swigregister = _QuantLib.SampleRealVector_swigregister
SampleRealVector_swigregister(SampleRealVector)

class LecuyerUniformRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LecuyerUniformRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.LecuyerUniformRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_LecuyerUniformRng
    __del__ = lambda self : None;
LecuyerUniformRng_swigregister = _QuantLib.LecuyerUniformRng_swigregister
LecuyerUniformRng_swigregister(LecuyerUniformRng)

class KnuthUniformRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _QuantLib.delete_KnuthUniformRng
    __del__ = lambda self : None;
KnuthUniformRng_swigregister = _QuantLib.KnuthUniformRng_swigregister
KnuthUniformRng_swigregister(KnuthUniformRng)

class MersenneTwisterUniformRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _QuantLib.delete_MersenneTwisterUniformRng
    __del__ = lambda self : None;
MersenneTwisterUniformRng_swigregister = _QuantLib.MersenneTwisterUniformRng_swigregister
MersenneTwisterUniformRng_swigregister(MersenneTwisterUniformRng)

class UniformRandomGenerator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_UniformRandomGenerator(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.UniformRandomGenerator_next(*args)
    __swig_destroy__ = _QuantLib.delete_UniformRandomGenerator
    __del__ = lambda self : None;
UniformRandomGenerator_swigregister = _QuantLib.UniformRandomGenerator_swigregister
UniformRandomGenerator_swigregister(UniformRandomGenerator)

class CentralLimitLecuyerGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CentralLimitLecuyerGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.CentralLimitLecuyerGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_CentralLimitLecuyerGaussianRng
    __del__ = lambda self : None;
CentralLimitLecuyerGaussianRng_swigregister = _QuantLib.CentralLimitLecuyerGaussianRng_swigregister
CentralLimitLecuyerGaussianRng_swigregister(CentralLimitLecuyerGaussianRng)

class CentralLimitKnuthGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CentralLimitKnuthGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.CentralLimitKnuthGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_CentralLimitKnuthGaussianRng
    __del__ = lambda self : None;
CentralLimitKnuthGaussianRng_swigregister = _QuantLib.CentralLimitKnuthGaussianRng_swigregister
CentralLimitKnuthGaussianRng_swigregister(CentralLimitKnuthGaussianRng)

class CentralLimitMersenneTwisterGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CentralLimitMersenneTwisterGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.CentralLimitMersenneTwisterGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_CentralLimitMersenneTwisterGaussianRng
    __del__ = lambda self : None;
CentralLimitMersenneTwisterGaussianRng_swigregister = _QuantLib.CentralLimitMersenneTwisterGaussianRng_swigregister
CentralLimitMersenneTwisterGaussianRng_swigregister(CentralLimitMersenneTwisterGaussianRng)

class BoxMullerLecuyerGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BoxMullerLecuyerGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.BoxMullerLecuyerGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_BoxMullerLecuyerGaussianRng
    __del__ = lambda self : None;
BoxMullerLecuyerGaussianRng_swigregister = _QuantLib.BoxMullerLecuyerGaussianRng_swigregister
BoxMullerLecuyerGaussianRng_swigregister(BoxMullerLecuyerGaussianRng)

class BoxMullerKnuthGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BoxMullerKnuthGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.BoxMullerKnuthGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_BoxMullerKnuthGaussianRng
    __del__ = lambda self : None;
BoxMullerKnuthGaussianRng_swigregister = _QuantLib.BoxMullerKnuthGaussianRng_swigregister
BoxMullerKnuthGaussianRng_swigregister(BoxMullerKnuthGaussianRng)

class BoxMullerMersenneTwisterGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BoxMullerMersenneTwisterGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.BoxMullerMersenneTwisterGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_BoxMullerMersenneTwisterGaussianRng
    __del__ = lambda self : None;
BoxMullerMersenneTwisterGaussianRng_swigregister = _QuantLib.BoxMullerMersenneTwisterGaussianRng_swigregister
BoxMullerMersenneTwisterGaussianRng_swigregister(BoxMullerMersenneTwisterGaussianRng)

class MoroInvCumulativeLecuyerGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MoroInvCumulativeLecuyerGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.MoroInvCumulativeLecuyerGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_MoroInvCumulativeLecuyerGaussianRng
    __del__ = lambda self : None;
MoroInvCumulativeLecuyerGaussianRng_swigregister = _QuantLib.MoroInvCumulativeLecuyerGaussianRng_swigregister
MoroInvCumulativeLecuyerGaussianRng_swigregister(MoroInvCumulativeLecuyerGaussianRng)

class MoroInvCumulativeKnuthGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MoroInvCumulativeKnuthGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.MoroInvCumulativeKnuthGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_MoroInvCumulativeKnuthGaussianRng
    __del__ = lambda self : None;
MoroInvCumulativeKnuthGaussianRng_swigregister = _QuantLib.MoroInvCumulativeKnuthGaussianRng_swigregister
MoroInvCumulativeKnuthGaussianRng_swigregister(MoroInvCumulativeKnuthGaussianRng)

class MoroInvCumulativeMersenneTwisterGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MoroInvCumulativeMersenneTwisterGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.MoroInvCumulativeMersenneTwisterGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_MoroInvCumulativeMersenneTwisterGaussianRng
    __del__ = lambda self : None;
MoroInvCumulativeMersenneTwisterGaussianRng_swigregister = _QuantLib.MoroInvCumulativeMersenneTwisterGaussianRng_swigregister
MoroInvCumulativeMersenneTwisterGaussianRng_swigregister(MoroInvCumulativeMersenneTwisterGaussianRng)

class InvCumulativeLecuyerGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_InvCumulativeLecuyerGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.InvCumulativeLecuyerGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_InvCumulativeLecuyerGaussianRng
    __del__ = lambda self : None;
InvCumulativeLecuyerGaussianRng_swigregister = _QuantLib.InvCumulativeLecuyerGaussianRng_swigregister
InvCumulativeLecuyerGaussianRng_swigregister(InvCumulativeLecuyerGaussianRng)

class InvCumulativeKnuthGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_InvCumulativeKnuthGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.InvCumulativeKnuthGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_InvCumulativeKnuthGaussianRng
    __del__ = lambda self : None;
InvCumulativeKnuthGaussianRng_swigregister = _QuantLib.InvCumulativeKnuthGaussianRng_swigregister
InvCumulativeKnuthGaussianRng_swigregister(InvCumulativeKnuthGaussianRng)

class InvCumulativeMersenneTwisterGaussianRng(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_InvCumulativeMersenneTwisterGaussianRng(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.InvCumulativeMersenneTwisterGaussianRng_next(*args)
    __swig_destroy__ = _QuantLib.delete_InvCumulativeMersenneTwisterGaussianRng
    __del__ = lambda self : None;
InvCumulativeMersenneTwisterGaussianRng_swigregister = _QuantLib.InvCumulativeMersenneTwisterGaussianRng_swigregister
InvCumulativeMersenneTwisterGaussianRng_swigregister(InvCumulativeMersenneTwisterGaussianRng)

class GaussianRandomGenerator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GaussianRandomGenerator(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.GaussianRandomGenerator_next(*args)
    __swig_destroy__ = _QuantLib.delete_GaussianRandomGenerator
    __del__ = lambda self : None;
GaussianRandomGenerator_swigregister = _QuantLib.GaussianRandomGenerator_swigregister
GaussianRandomGenerator_swigregister(GaussianRandomGenerator)

class HaltonRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_HaltonRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.HaltonRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.HaltonRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_HaltonRsg
    __del__ = lambda self : None;
HaltonRsg_swigregister = _QuantLib.HaltonRsg_swigregister
HaltonRsg_swigregister(HaltonRsg)

class SobolRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SobolRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.SobolRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.SobolRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_SobolRsg
    __del__ = lambda self : None;
SobolRsg_swigregister = _QuantLib.SobolRsg_swigregister
SobolRsg_swigregister(SobolRsg)

class LecuyerUniformRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_LecuyerUniformRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.LecuyerUniformRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.LecuyerUniformRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_LecuyerUniformRsg
    __del__ = lambda self : None;
LecuyerUniformRsg_swigregister = _QuantLib.LecuyerUniformRsg_swigregister
LecuyerUniformRsg_swigregister(LecuyerUniformRsg)

class KnuthUniformRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_KnuthUniformRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.KnuthUniformRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.KnuthUniformRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_KnuthUniformRsg
    __del__ = lambda self : None;
KnuthUniformRsg_swigregister = _QuantLib.KnuthUniformRsg_swigregister
KnuthUniformRsg_swigregister(KnuthUniformRsg)

class MersenneTwisterUniformRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MersenneTwisterUniformRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.MersenneTwisterUniformRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.MersenneTwisterUniformRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_MersenneTwisterUniformRsg
    __del__ = lambda self : None;
MersenneTwisterUniformRsg_swigregister = _QuantLib.MersenneTwisterUniformRsg_swigregister
MersenneTwisterUniformRsg_swigregister(MersenneTwisterUniformRsg)

class UniformRandomSequenceGenerator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_UniformRandomSequenceGenerator(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.UniformRandomSequenceGenerator_nextSequence(*args)
    def dimension(*args): return _QuantLib.UniformRandomSequenceGenerator_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_UniformRandomSequenceGenerator
    __del__ = lambda self : None;
UniformRandomSequenceGenerator_swigregister = _QuantLib.UniformRandomSequenceGenerator_swigregister
UniformRandomSequenceGenerator_swigregister(UniformRandomSequenceGenerator)

class UniformLowDiscrepancySequenceGenerator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_UniformLowDiscrepancySequenceGenerator(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.UniformLowDiscrepancySequenceGenerator_nextSequence(*args)
    def dimension(*args): return _QuantLib.UniformLowDiscrepancySequenceGenerator_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_UniformLowDiscrepancySequenceGenerator
    __del__ = lambda self : None;
UniformLowDiscrepancySequenceGenerator_swigregister = _QuantLib.UniformLowDiscrepancySequenceGenerator_swigregister
UniformLowDiscrepancySequenceGenerator_swigregister(UniformLowDiscrepancySequenceGenerator)

class MoroInvCumulativeLecuyerGaussianRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MoroInvCumulativeLecuyerGaussianRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.MoroInvCumulativeLecuyerGaussianRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.MoroInvCumulativeLecuyerGaussianRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_MoroInvCumulativeLecuyerGaussianRsg
    __del__ = lambda self : None;
MoroInvCumulativeLecuyerGaussianRsg_swigregister = _QuantLib.MoroInvCumulativeLecuyerGaussianRsg_swigregister
MoroInvCumulativeLecuyerGaussianRsg_swigregister(MoroInvCumulativeLecuyerGaussianRsg)

class MoroInvCumulativeKnuthGaussianRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MoroInvCumulativeKnuthGaussianRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.MoroInvCumulativeKnuthGaussianRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.MoroInvCumulativeKnuthGaussianRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_MoroInvCumulativeKnuthGaussianRsg
    __del__ = lambda self : None;
MoroInvCumulativeKnuthGaussianRsg_swigregister = _QuantLib.MoroInvCumulativeKnuthGaussianRsg_swigregister
MoroInvCumulativeKnuthGaussianRsg_swigregister(MoroInvCumulativeKnuthGaussianRsg)

class MoroInvCumulativeMersenneTwisterGaussianRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MoroInvCumulativeMersenneTwisterGaussianRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.MoroInvCumulativeMersenneTwisterGaussianRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.MoroInvCumulativeMersenneTwisterGaussianRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_MoroInvCumulativeMersenneTwisterGaussianRsg
    __del__ = lambda self : None;
MoroInvCumulativeMersenneTwisterGaussianRsg_swigregister = _QuantLib.MoroInvCumulativeMersenneTwisterGaussianRsg_swigregister
MoroInvCumulativeMersenneTwisterGaussianRsg_swigregister(MoroInvCumulativeMersenneTwisterGaussianRsg)

class MoroInvCumulativeHaltonGaussianRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MoroInvCumulativeHaltonGaussianRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.MoroInvCumulativeHaltonGaussianRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.MoroInvCumulativeHaltonGaussianRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_MoroInvCumulativeHaltonGaussianRsg
    __del__ = lambda self : None;
MoroInvCumulativeHaltonGaussianRsg_swigregister = _QuantLib.MoroInvCumulativeHaltonGaussianRsg_swigregister
MoroInvCumulativeHaltonGaussianRsg_swigregister(MoroInvCumulativeHaltonGaussianRsg)

class InvCumulativeLecuyerGaussianRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_InvCumulativeLecuyerGaussianRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.InvCumulativeLecuyerGaussianRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.InvCumulativeLecuyerGaussianRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_InvCumulativeLecuyerGaussianRsg
    __del__ = lambda self : None;
InvCumulativeLecuyerGaussianRsg_swigregister = _QuantLib.InvCumulativeLecuyerGaussianRsg_swigregister
InvCumulativeLecuyerGaussianRsg_swigregister(InvCumulativeLecuyerGaussianRsg)

class InvCumulativeKnuthGaussianRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_InvCumulativeKnuthGaussianRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.InvCumulativeKnuthGaussianRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.InvCumulativeKnuthGaussianRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_InvCumulativeKnuthGaussianRsg
    __del__ = lambda self : None;
InvCumulativeKnuthGaussianRsg_swigregister = _QuantLib.InvCumulativeKnuthGaussianRsg_swigregister
InvCumulativeKnuthGaussianRsg_swigregister(InvCumulativeKnuthGaussianRsg)

class InvCumulativeMersenneTwisterGaussianRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_InvCumulativeMersenneTwisterGaussianRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.InvCumulativeMersenneTwisterGaussianRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.InvCumulativeMersenneTwisterGaussianRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_InvCumulativeMersenneTwisterGaussianRsg
    __del__ = lambda self : None;
InvCumulativeMersenneTwisterGaussianRsg_swigregister = _QuantLib.InvCumulativeMersenneTwisterGaussianRsg_swigregister
InvCumulativeMersenneTwisterGaussianRsg_swigregister(InvCumulativeMersenneTwisterGaussianRsg)

class InvCumulativeHaltonGaussianRsg(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_InvCumulativeHaltonGaussianRsg(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.InvCumulativeHaltonGaussianRsg_nextSequence(*args)
    def dimension(*args): return _QuantLib.InvCumulativeHaltonGaussianRsg_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_InvCumulativeHaltonGaussianRsg
    __del__ = lambda self : None;
InvCumulativeHaltonGaussianRsg_swigregister = _QuantLib.InvCumulativeHaltonGaussianRsg_swigregister
InvCumulativeHaltonGaussianRsg_swigregister(InvCumulativeHaltonGaussianRsg)

class GaussianRandomSequenceGenerator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GaussianRandomSequenceGenerator(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.GaussianRandomSequenceGenerator_nextSequence(*args)
    def dimension(*args): return _QuantLib.GaussianRandomSequenceGenerator_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_GaussianRandomSequenceGenerator
    __del__ = lambda self : None;
GaussianRandomSequenceGenerator_swigregister = _QuantLib.GaussianRandomSequenceGenerator_swigregister
GaussianRandomSequenceGenerator_swigregister(GaussianRandomSequenceGenerator)

class GaussianLowDiscrepancySequenceGenerator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GaussianLowDiscrepancySequenceGenerator(*args)
        try: self.this.append(this)
        except: self.this = this
    def nextSequence(*args): return _QuantLib.GaussianLowDiscrepancySequenceGenerator_nextSequence(*args)
    def dimension(*args): return _QuantLib.GaussianLowDiscrepancySequenceGenerator_dimension(*args)
    __swig_destroy__ = _QuantLib.delete_GaussianLowDiscrepancySequenceGenerator
    __del__ = lambda self : None;
GaussianLowDiscrepancySequenceGenerator_swigregister = _QuantLib.GaussianLowDiscrepancySequenceGenerator_swigregister
GaussianLowDiscrepancySequenceGenerator_swigregister(GaussianLowDiscrepancySequenceGenerator)

getCovariance = _QuantLib.getCovariance
class Path(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def __len__(*args): return _QuantLib.Path___len__(*args)
    def value(*args): return _QuantLib.Path_value(*args)
    def time(*args): return _QuantLib.Path_time(*args)
    def __getitem__(*args): return _QuantLib.Path___getitem__(*args)
    __swig_destroy__ = _QuantLib.delete_Path
    __del__ = lambda self : None;
Path_swigregister = _QuantLib.Path_swigregister
Path_swigregister(Path)

class SamplePath(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def value(*args): return _QuantLib.SamplePath_value(*args)
    def weight(*args): return _QuantLib.SamplePath_weight(*args)
    __swig_destroy__ = _QuantLib.delete_SamplePath
    __del__ = lambda self : None;
SamplePath_swigregister = _QuantLib.SamplePath_swigregister
SamplePath_swigregister(SamplePath)

class GaussianPathGenerator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GaussianPathGenerator(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.GaussianPathGenerator_next(*args)
    __swig_destroy__ = _QuantLib.delete_GaussianPathGenerator
    __del__ = lambda self : None;
GaussianPathGenerator_swigregister = _QuantLib.GaussianPathGenerator_swigregister
GaussianPathGenerator_swigregister(GaussianPathGenerator)

class MultiPath(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def __len__(*args): return _QuantLib.MultiPath___len__(*args)
    def assetNumber(*args): return _QuantLib.MultiPath_assetNumber(*args)
    def __getitem__(*args): return _QuantLib.MultiPath___getitem__(*args)
    __swig_destroy__ = _QuantLib.delete_MultiPath
    __del__ = lambda self : None;
MultiPath_swigregister = _QuantLib.MultiPath_swigregister
MultiPath_swigregister(MultiPath)

class SampleMultiPath(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    def value(*args): return _QuantLib.SampleMultiPath_value(*args)
    def weight(*args): return _QuantLib.SampleMultiPath_weight(*args)
    __swig_destroy__ = _QuantLib.delete_SampleMultiPath
    __del__ = lambda self : None;
SampleMultiPath_swigregister = _QuantLib.SampleMultiPath_swigregister
SampleMultiPath_swigregister(SampleMultiPath)

class GaussianMultiPathGenerator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GaussianMultiPathGenerator(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(*args): return _QuantLib.GaussianMultiPathGenerator_next(*args)
    __swig_destroy__ = _QuantLib.delete_GaussianMultiPathGenerator
    __del__ = lambda self : None;
GaussianMultiPathGenerator_swigregister = _QuantLib.GaussianMultiPathGenerator_swigregister
GaussianMultiPathGenerator_swigregister(GaussianMultiPathGenerator)

class BoundaryCondition(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.BoundaryCondition___deref__(*args)
    def __nonzero__(*args): return _QuantLib.BoundaryCondition___nonzero__(*args)
    NoSide = _QuantLib.BoundaryCondition_NoSide
    Upper = _QuantLib.BoundaryCondition_Upper
    Lower = _QuantLib.BoundaryCondition_Lower
    def __init__(self, *args): 
        this = _QuantLib.new_BoundaryCondition(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BoundaryCondition
    __del__ = lambda self : None;
BoundaryCondition_swigregister = _QuantLib.BoundaryCondition_swigregister
BoundaryCondition_swigregister(BoundaryCondition)

class NeumannBC(BoundaryCondition):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NeumannBC(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NeumannBC
    __del__ = lambda self : None;
NeumannBC_swigregister = _QuantLib.NeumannBC_swigregister
NeumannBC_swigregister(NeumannBC)

class DirichletBC(BoundaryCondition):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DirichletBC(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DirichletBC
    __del__ = lambda self : None;
DirichletBC_swigregister = _QuantLib.DirichletBC_swigregister
DirichletBC_swigregister(DirichletBC)

class TridiagonalOperator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TridiagonalOperator(*args)
        try: self.this.append(this)
        except: self.this = this
    def solveFor(*args): return _QuantLib.TridiagonalOperator_solveFor(*args)
    def applyTo(*args): return _QuantLib.TridiagonalOperator_applyTo(*args)
    def size(*args): return _QuantLib.TridiagonalOperator_size(*args)
    def setFirstRow(*args): return _QuantLib.TridiagonalOperator_setFirstRow(*args)
    def setMidRow(*args): return _QuantLib.TridiagonalOperator_setMidRow(*args)
    def setMidRows(*args): return _QuantLib.TridiagonalOperator_setMidRows(*args)
    def setLastRow(*args): return _QuantLib.TridiagonalOperator_setLastRow(*args)
    identity = staticmethod(_QuantLib.TridiagonalOperator_identity)
    def __add__(*args): return _QuantLib.TridiagonalOperator___add__(*args)
    def __sub__(*args): return _QuantLib.TridiagonalOperator___sub__(*args)
    def __mul__(*args): return _QuantLib.TridiagonalOperator___mul__(*args)
    def __div__(*args): return _QuantLib.TridiagonalOperator___div__(*args)
    def __iadd__(*args): return _QuantLib.TridiagonalOperator___iadd__(*args)
    def __isub__(*args): return _QuantLib.TridiagonalOperator___isub__(*args)
    def __imul__(*args): return _QuantLib.TridiagonalOperator___imul__(*args)
    def __rmul__(*args): return _QuantLib.TridiagonalOperator___rmul__(*args)
    def __idiv__(*args): return _QuantLib.TridiagonalOperator___idiv__(*args)
    __swig_destroy__ = _QuantLib.delete_TridiagonalOperator
    __del__ = lambda self : None;
TridiagonalOperator_swigregister = _QuantLib.TridiagonalOperator_swigregister
TridiagonalOperator_swigregister(TridiagonalOperator)
TridiagonalOperator_identity = _QuantLib.TridiagonalOperator_identity

class DPlus(TridiagonalOperator):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DPlus(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DPlus
    __del__ = lambda self : None;
DPlus_swigregister = _QuantLib.DPlus_swigregister
DPlus_swigregister(DPlus)

class DMinus(TridiagonalOperator):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DMinus(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DMinus
    __del__ = lambda self : None;
DMinus_swigregister = _QuantLib.DMinus_swigregister
DMinus_swigregister(DMinus)

class DZero(TridiagonalOperator):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DZero(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DZero
    __del__ = lambda self : None;
DZero_swigregister = _QuantLib.DZero_swigregister
DZero_swigregister(DZero)

class DPlusDMinus(TridiagonalOperator):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DPlusDMinus(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DPlusDMinus
    __del__ = lambda self : None;
DPlusDMinus_swigregister = _QuantLib.DPlusDMinus_swigregister
DPlusDMinus_swigregister(DPlusDMinus)

class Brent(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def setMaxEvaluations(*args): return _QuantLib.Brent_setMaxEvaluations(*args)
    def setLowerBound(*args): return _QuantLib.Brent_setLowerBound(*args)
    def setUpperBound(*args): return _QuantLib.Brent_setUpperBound(*args)
    def solve(*args): return _QuantLib.Brent_solve(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Brent(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Brent
    __del__ = lambda self : None;
Brent_swigregister = _QuantLib.Brent_swigregister
Brent_swigregister(Brent)

class Bisection(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def setMaxEvaluations(*args): return _QuantLib.Bisection_setMaxEvaluations(*args)
    def setLowerBound(*args): return _QuantLib.Bisection_setLowerBound(*args)
    def setUpperBound(*args): return _QuantLib.Bisection_setUpperBound(*args)
    def solve(*args): return _QuantLib.Bisection_solve(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Bisection(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Bisection
    __del__ = lambda self : None;
Bisection_swigregister = _QuantLib.Bisection_swigregister
Bisection_swigregister(Bisection)

class FalsePosition(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def setMaxEvaluations(*args): return _QuantLib.FalsePosition_setMaxEvaluations(*args)
    def setLowerBound(*args): return _QuantLib.FalsePosition_setLowerBound(*args)
    def setUpperBound(*args): return _QuantLib.FalsePosition_setUpperBound(*args)
    def solve(*args): return _QuantLib.FalsePosition_solve(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_FalsePosition(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FalsePosition
    __del__ = lambda self : None;
FalsePosition_swigregister = _QuantLib.FalsePosition_swigregister
FalsePosition_swigregister(FalsePosition)

class Ridder(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def setMaxEvaluations(*args): return _QuantLib.Ridder_setMaxEvaluations(*args)
    def setLowerBound(*args): return _QuantLib.Ridder_setLowerBound(*args)
    def setUpperBound(*args): return _QuantLib.Ridder_setUpperBound(*args)
    def solve(*args): return _QuantLib.Ridder_solve(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Ridder(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Ridder
    __del__ = lambda self : None;
Ridder_swigregister = _QuantLib.Ridder_swigregister
Ridder_swigregister(Ridder)

class Secant(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def setMaxEvaluations(*args): return _QuantLib.Secant_setMaxEvaluations(*args)
    def setLowerBound(*args): return _QuantLib.Secant_setLowerBound(*args)
    def setUpperBound(*args): return _QuantLib.Secant_setUpperBound(*args)
    def solve(*args): return _QuantLib.Secant_solve(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Secant(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Secant
    __del__ = lambda self : None;
Secant_swigregister = _QuantLib.Secant_swigregister
Secant_swigregister(Secant)

class Newton(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def setMaxEvaluations(*args): return _QuantLib.Newton_setMaxEvaluations(*args)
    def setLowerBound(*args): return _QuantLib.Newton_setLowerBound(*args)
    def setUpperBound(*args): return _QuantLib.Newton_setUpperBound(*args)
    def solve(*args): return _QuantLib.Newton_solve(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Newton(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Newton
    __del__ = lambda self : None;
Newton_swigregister = _QuantLib.Newton_swigregister
Newton_swigregister(Newton)

class NewtonSafe(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def setMaxEvaluations(*args): return _QuantLib.NewtonSafe_setMaxEvaluations(*args)
    def setLowerBound(*args): return _QuantLib.NewtonSafe_setLowerBound(*args)
    def setUpperBound(*args): return _QuantLib.NewtonSafe_setUpperBound(*args)
    def solve(*args): return _QuantLib.NewtonSafe_solve(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_NewtonSafe(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NewtonSafe
    __del__ = lambda self : None;
NewtonSafe_swigregister = _QuantLib.NewtonSafe_swigregister
NewtonSafe_swigregister(NewtonSafe)

class Constraint(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _QuantLib.delete_Constraint
    __del__ = lambda self : None;
Constraint_swigregister = _QuantLib.Constraint_swigregister
Constraint_swigregister(Constraint)

class BoundaryConstraint(Constraint):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BoundaryConstraint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BoundaryConstraint
    __del__ = lambda self : None;
BoundaryConstraint_swigregister = _QuantLib.BoundaryConstraint_swigregister
BoundaryConstraint_swigregister(BoundaryConstraint)

class NoConstraint(Constraint):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_NoConstraint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_NoConstraint
    __del__ = lambda self : None;
NoConstraint_swigregister = _QuantLib.NoConstraint_swigregister
NoConstraint_swigregister(NoConstraint)

class PositiveConstraint(Constraint):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_PositiveConstraint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_PositiveConstraint
    __del__ = lambda self : None;
PositiveConstraint_swigregister = _QuantLib.PositiveConstraint_swigregister
PositiveConstraint_swigregister(PositiveConstraint)

class EndCriteria(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    NoCriteria = _QuantLib.EndCriteria_NoCriteria
    MaxIterations = _QuantLib.EndCriteria_MaxIterations
    StationaryPoint = _QuantLib.EndCriteria_StationaryPoint
    StationaryFunctionValue = _QuantLib.EndCriteria_StationaryFunctionValue
    StationaryFunctionAccuracy = _QuantLib.EndCriteria_StationaryFunctionAccuracy
    ZeroGradientNorm = _QuantLib.EndCriteria_ZeroGradientNorm
    Unknown = _QuantLib.EndCriteria_Unknown
    def __init__(self, *args): 
        this = _QuantLib.new_EndCriteria(*args)
        try: self.this.append(this)
        except: self.this = this
    def __call__(*args): return _QuantLib.EndCriteria___call__(*args)
    __swig_destroy__ = _QuantLib.delete_EndCriteria
    __del__ = lambda self : None;
EndCriteria_swigregister = _QuantLib.EndCriteria_swigregister
EndCriteria_swigregister(EndCriteria)

class OptimizationMethod(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    __swig_destroy__ = _QuantLib.delete_OptimizationMethod
    __del__ = lambda self : None;
OptimizationMethod_swigregister = _QuantLib.OptimizationMethod_swigregister
OptimizationMethod_swigregister(OptimizationMethod)

class ConjugateGradient(OptimizationMethod):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ConjugateGradient(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ConjugateGradient
    __del__ = lambda self : None;
ConjugateGradient_swigregister = _QuantLib.ConjugateGradient_swigregister
ConjugateGradient_swigregister(ConjugateGradient)

class Simplex(OptimizationMethod):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Simplex(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Simplex
    __del__ = lambda self : None;
Simplex_swigregister = _QuantLib.Simplex_swigregister
Simplex_swigregister(Simplex)

class SteepestDescent(OptimizationMethod):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SteepestDescent(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SteepestDescent
    __del__ = lambda self : None;
SteepestDescent_swigregister = _QuantLib.SteepestDescent_swigregister
SteepestDescent_swigregister(SteepestDescent)

class Optimizer(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def solve(*args): return _QuantLib.Optimizer_solve(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Optimizer(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Optimizer
    __del__ = lambda self : None;
Optimizer_swigregister = _QuantLib.Optimizer_swigregister
Optimizer_swigregister(Optimizer)

class RateHelper(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.RateHelper___deref__(*args)
    def __nonzero__(*args): return _QuantLib.RateHelper___nonzero__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_RateHelper(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_RateHelper
    __del__ = lambda self : None;
RateHelper_swigregister = _QuantLib.RateHelper_swigregister
RateHelper_swigregister(RateHelper)

class DepositRateHelper(RateHelper):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DepositRateHelper(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DepositRateHelper
    __del__ = lambda self : None;
DepositRateHelper_swigregister = _QuantLib.DepositRateHelper_swigregister
DepositRateHelper_swigregister(DepositRateHelper)

class FraRateHelper(RateHelper):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FraRateHelper(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FraRateHelper
    __del__ = lambda self : None;
FraRateHelper_swigregister = _QuantLib.FraRateHelper_swigregister
FraRateHelper_swigregister(FraRateHelper)

class FuturesRateHelper(RateHelper):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FuturesRateHelper(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FuturesRateHelper
    __del__ = lambda self : None;
FuturesRateHelper_swigregister = _QuantLib.FuturesRateHelper_swigregister
FuturesRateHelper_swigregister(FuturesRateHelper)

class SwapRateHelper(RateHelper):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SwapRateHelper(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_SwapRateHelper
    __del__ = lambda self : None;
SwapRateHelper_swigregister = _QuantLib.SwapRateHelper_swigregister
SwapRateHelper_swigregister(SwapRateHelper)

class FixedRateBondHelper(RateHelper):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_FixedRateBondHelper(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_FixedRateBondHelper
    __del__ = lambda self : None;
FixedRateBondHelper_swigregister = _QuantLib.FixedRateBondHelper_swigregister
FixedRateBondHelper_swigregister(FixedRateBondHelper)

class RateHelperVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.RateHelperVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.RateHelperVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.RateHelperVector___len__(*args)
    def pop(*args): return _QuantLib.RateHelperVector_pop(*args)
    def __getslice__(*args): return _QuantLib.RateHelperVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.RateHelperVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.RateHelperVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.RateHelperVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.RateHelperVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.RateHelperVector___setitem__(*args)
    def append(*args): return _QuantLib.RateHelperVector_append(*args)
    def empty(*args): return _QuantLib.RateHelperVector_empty(*args)
    def size(*args): return _QuantLib.RateHelperVector_size(*args)
    def clear(*args): return _QuantLib.RateHelperVector_clear(*args)
    def swap(*args): return _QuantLib.RateHelperVector_swap(*args)
    def get_allocator(*args): return _QuantLib.RateHelperVector_get_allocator(*args)
    def begin(*args): return _QuantLib.RateHelperVector_begin(*args)
    def end(*args): return _QuantLib.RateHelperVector_end(*args)
    def rbegin(*args): return _QuantLib.RateHelperVector_rbegin(*args)
    def rend(*args): return _QuantLib.RateHelperVector_rend(*args)
    def pop_back(*args): return _QuantLib.RateHelperVector_pop_back(*args)
    def erase(*args): return _QuantLib.RateHelperVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_RateHelperVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.RateHelperVector_push_back(*args)
    def front(*args): return _QuantLib.RateHelperVector_front(*args)
    def back(*args): return _QuantLib.RateHelperVector_back(*args)
    def assign(*args): return _QuantLib.RateHelperVector_assign(*args)
    def resize(*args): return _QuantLib.RateHelperVector_resize(*args)
    def insert(*args): return _QuantLib.RateHelperVector_insert(*args)
    def reserve(*args): return _QuantLib.RateHelperVector_reserve(*args)
    def capacity(*args): return _QuantLib.RateHelperVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_RateHelperVector
    __del__ = lambda self : None;
RateHelperVector_swigregister = _QuantLib.RateHelperVector_swigregister
RateHelperVector_swigregister(RateHelperVector)

class Discount(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Discount(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Discount
    __del__ = lambda self : None;
Discount_swigregister = _QuantLib.Discount_swigregister
Discount_swigregister(Discount)

class ZeroYield(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ZeroYield(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ZeroYield
    __del__ = lambda self : None;
ZeroYield_swigregister = _QuantLib.ZeroYield_swigregister
ZeroYield_swigregister(ZeroYield)

class ForwardRate(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ForwardRate(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ForwardRate
    __del__ = lambda self : None;
ForwardRate_swigregister = _QuantLib.ForwardRate_swigregister
ForwardRate_swigregister(ForwardRate)

class PiecewiseFlatForward(YieldTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_PiecewiseFlatForward(*args)
        try: self.this.append(this)
        except: self.this = this
    def dates(*args): return _QuantLib.PiecewiseFlatForward_dates(*args)
    def times(*args): return _QuantLib.PiecewiseFlatForward_times(*args)
    def nodes(*args): return _QuantLib.PiecewiseFlatForward_nodes(*args)
    __swig_destroy__ = _QuantLib.delete_PiecewiseFlatForward
    __del__ = lambda self : None;
PiecewiseFlatForward_swigregister = _QuantLib.PiecewiseFlatForward_swigregister
PiecewiseFlatForward_swigregister(PiecewiseFlatForward)

class SampledCurve(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SampledCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def grid(*args): return _QuantLib.SampledCurve_grid(*args)
    def values(*args): return _QuantLib.SampledCurve_values(*args)
    def gridValue(*args): return _QuantLib.SampledCurve_gridValue(*args)
    def value(*args): return _QuantLib.SampledCurve_value(*args)
    def size(*args): return _QuantLib.SampledCurve_size(*args)
    def empty(*args): return _QuantLib.SampledCurve_empty(*args)
    def setGrid(*args): return _QuantLib.SampledCurve_setGrid(*args)
    def setValues(*args): return _QuantLib.SampledCurve_setValues(*args)
    def swap(*args): return _QuantLib.SampledCurve_swap(*args)
    def setLogGrid(*args): return _QuantLib.SampledCurve_setLogGrid(*args)
    def regridLogGrid(*args): return _QuantLib.SampledCurve_regridLogGrid(*args)
    def shiftGrid(*args): return _QuantLib.SampledCurve_shiftGrid(*args)
    def scaleGrid(*args): return _QuantLib.SampledCurve_scaleGrid(*args)
    def regrid(*args): return _QuantLib.SampledCurve_regrid(*args)
    __swig_destroy__ = _QuantLib.delete_SampledCurve
    __del__ = lambda self : None;
SampledCurve_swigregister = _QuantLib.SampledCurve_swigregister
SampledCurve_swigregister(SampledCurve)

class Settings(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    def __init__(self): raise AttributeError, "No constructor defined"
    __repr__ = _swig_repr
    instance = staticmethod(_QuantLib.Settings_instance)
    def getEvaluationDate(*args): return _QuantLib.Settings_getEvaluationDate(*args)
    def setEvaluationDate(*args): return _QuantLib.Settings_setEvaluationDate(*args)
    evaluationDate = property(getEvaluationDate,setEvaluationDate,None)

    __swig_destroy__ = _QuantLib.delete_Settings
    __del__ = lambda self : None;
Settings_swigregister = _QuantLib.Settings_swigregister
Settings_swigregister(Settings)
Settings_instance = _QuantLib.Settings_instance

class CalibrationHelper(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.CalibrationHelper___deref__(*args)
    def __nonzero__(*args): return _QuantLib.CalibrationHelper___nonzero__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_CalibrationHelper(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CalibrationHelper
    __del__ = lambda self : None;
    def setPricingEngine(*args): return _QuantLib.CalibrationHelper_setPricingEngine(*args)
    def marketValue(*args): return _QuantLib.CalibrationHelper_marketValue(*args)
    def modelValue(*args): return _QuantLib.CalibrationHelper_modelValue(*args)
    def impliedVolatility(*args): return _QuantLib.CalibrationHelper_impliedVolatility(*args)
    def blackPrice(*args): return _QuantLib.CalibrationHelper_blackPrice(*args)
CalibrationHelper_swigregister = _QuantLib.CalibrationHelper_swigregister
CalibrationHelper_swigregister(CalibrationHelper)

class SwaptionHelper(CalibrationHelper):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SwaptionHelper(*args)
        try: self.this.append(this)
        except: self.this = this
    def times(*args): return _QuantLib.SwaptionHelper_times(*args)
    __swig_destroy__ = _QuantLib.delete_SwaptionHelper
    __del__ = lambda self : None;
SwaptionHelper_swigregister = _QuantLib.SwaptionHelper_swigregister
SwaptionHelper_swigregister(SwaptionHelper)

class CapHelper(CalibrationHelper):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CapHelper(*args)
        try: self.this.append(this)
        except: self.this = this
    def times(*args): return _QuantLib.CapHelper_times(*args)
    __swig_destroy__ = _QuantLib.delete_CapHelper
    __del__ = lambda self : None;
CapHelper_swigregister = _QuantLib.CapHelper_swigregister
CapHelper_swigregister(CapHelper)

class CalibrationHelperVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.CalibrationHelperVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.CalibrationHelperVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.CalibrationHelperVector___len__(*args)
    def pop(*args): return _QuantLib.CalibrationHelperVector_pop(*args)
    def __getslice__(*args): return _QuantLib.CalibrationHelperVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.CalibrationHelperVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.CalibrationHelperVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.CalibrationHelperVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.CalibrationHelperVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.CalibrationHelperVector___setitem__(*args)
    def append(*args): return _QuantLib.CalibrationHelperVector_append(*args)
    def empty(*args): return _QuantLib.CalibrationHelperVector_empty(*args)
    def size(*args): return _QuantLib.CalibrationHelperVector_size(*args)
    def clear(*args): return _QuantLib.CalibrationHelperVector_clear(*args)
    def swap(*args): return _QuantLib.CalibrationHelperVector_swap(*args)
    def get_allocator(*args): return _QuantLib.CalibrationHelperVector_get_allocator(*args)
    def begin(*args): return _QuantLib.CalibrationHelperVector_begin(*args)
    def end(*args): return _QuantLib.CalibrationHelperVector_end(*args)
    def rbegin(*args): return _QuantLib.CalibrationHelperVector_rbegin(*args)
    def rend(*args): return _QuantLib.CalibrationHelperVector_rend(*args)
    def pop_back(*args): return _QuantLib.CalibrationHelperVector_pop_back(*args)
    def erase(*args): return _QuantLib.CalibrationHelperVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_CalibrationHelperVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.CalibrationHelperVector_push_back(*args)
    def front(*args): return _QuantLib.CalibrationHelperVector_front(*args)
    def back(*args): return _QuantLib.CalibrationHelperVector_back(*args)
    def assign(*args): return _QuantLib.CalibrationHelperVector_assign(*args)
    def resize(*args): return _QuantLib.CalibrationHelperVector_resize(*args)
    def insert(*args): return _QuantLib.CalibrationHelperVector_insert(*args)
    def reserve(*args): return _QuantLib.CalibrationHelperVector_reserve(*args)
    def capacity(*args): return _QuantLib.CalibrationHelperVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_CalibrationHelperVector
    __del__ = lambda self : None;
CalibrationHelperVector_swigregister = _QuantLib.CalibrationHelperVector_swigregister
CalibrationHelperVector_swigregister(CalibrationHelperVector)

class ShortRateModel(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.ShortRateModel___deref__(*args)
    def __nonzero__(*args): return _QuantLib.ShortRateModel___nonzero__(*args)
    def asObservable(*args): return _QuantLib.ShortRateModel_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_ShortRateModel(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_ShortRateModel
    __del__ = lambda self : None;
    def params(*args): return _QuantLib.ShortRateModel_params(*args)
    def calibrate(*args): return _QuantLib.ShortRateModel_calibrate(*args)
ShortRateModel_swigregister = _QuantLib.ShortRateModel_swigregister
ShortRateModel_swigregister(ShortRateModel)

class ShortRateModelHandle(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ShortRateModelHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def __deref__(*args): return _QuantLib.ShortRateModelHandle___deref__(*args)
    def __nonzero__(*args): return _QuantLib.ShortRateModelHandle___nonzero__(*args)
    def asObservable(*args): return _QuantLib.ShortRateModelHandle_asObservable(*args)
    __swig_destroy__ = _QuantLib.delete_ShortRateModelHandle
    __del__ = lambda self : None;
    def params(*args): return _QuantLib.ShortRateModelHandle_params(*args)
    def calibrate(*args): return _QuantLib.ShortRateModelHandle_calibrate(*args)
ShortRateModelHandle_swigregister = _QuantLib.ShortRateModelHandle_swigregister
ShortRateModelHandle_swigregister(ShortRateModelHandle)

class RelinkableShortRateModelHandle(ShortRateModelHandle):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RelinkableShortRateModelHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def linkTo(*args): return _QuantLib.RelinkableShortRateModelHandle_linkTo(*args)
    __swig_destroy__ = _QuantLib.delete_RelinkableShortRateModelHandle
    __del__ = lambda self : None;
RelinkableShortRateModelHandle_swigregister = _QuantLib.RelinkableShortRateModelHandle_swigregister
RelinkableShortRateModelHandle_swigregister(RelinkableShortRateModelHandle)

class Vasicek(ShortRateModel):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Vasicek(*args)
        try: self.this.append(this)
        except: self.this = this
    def discount(*args): return _QuantLib.Vasicek_discount(*args)
    __swig_destroy__ = _QuantLib.delete_Vasicek
    __del__ = lambda self : None;
Vasicek_swigregister = _QuantLib.Vasicek_swigregister
Vasicek_swigregister(Vasicek)

class HullWhite(ShortRateModel):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_HullWhite(*args)
        try: self.this.append(this)
        except: self.this = this
    def discount(*args): return _QuantLib.HullWhite_discount(*args)
    __swig_destroy__ = _QuantLib.delete_HullWhite
    __del__ = lambda self : None;
HullWhite_swigregister = _QuantLib.HullWhite_swigregister
HullWhite_swigregister(HullWhite)

class BlackKarasinski(ShortRateModel):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BlackKarasinski(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BlackKarasinski
    __del__ = lambda self : None;
BlackKarasinski_swigregister = _QuantLib.BlackKarasinski_swigregister
BlackKarasinski_swigregister(BlackKarasinski)

class G2(ShortRateModel):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_G2(*args)
        try: self.this.append(this)
        except: self.this = this
    def discount(*args): return _QuantLib.G2_discount(*args)
    __swig_destroy__ = _QuantLib.delete_G2
    __del__ = lambda self : None;
G2_swigregister = _QuantLib.G2_swigregister
G2_swigregister(G2)

class JamshidianSwaptionEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_JamshidianSwaptionEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_JamshidianSwaptionEngine
    __del__ = lambda self : None;
JamshidianSwaptionEngine_swigregister = _QuantLib.JamshidianSwaptionEngine_swigregister
JamshidianSwaptionEngine_swigregister(JamshidianSwaptionEngine)

class TreeSwaptionEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TreeSwaptionEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_TreeSwaptionEngine
    __del__ = lambda self : None;
TreeSwaptionEngine_swigregister = _QuantLib.TreeSwaptionEngine_swigregister
TreeSwaptionEngine_swigregister(TreeSwaptionEngine)

class AnalyticCapFloorEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_AnalyticCapFloorEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_AnalyticCapFloorEngine
    __del__ = lambda self : None;
AnalyticCapFloorEngine_swigregister = _QuantLib.AnalyticCapFloorEngine_swigregister
AnalyticCapFloorEngine_swigregister(AnalyticCapFloorEngine)

class TreeCapFloorEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TreeCapFloorEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_TreeCapFloorEngine
    __del__ = lambda self : None;
TreeCapFloorEngine_swigregister = _QuantLib.TreeCapFloorEngine_swigregister
TreeCapFloorEngine_swigregister(TreeCapFloorEngine)

class G2SwaptionEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_G2SwaptionEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_G2SwaptionEngine
    __del__ = lambda self : None;
G2SwaptionEngine_swigregister = _QuantLib.G2SwaptionEngine_swigregister
G2SwaptionEngine_swigregister(G2SwaptionEngine)

class Statistics(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def samples(*args): return _QuantLib.Statistics_samples(*args)
    def weightSum(*args): return _QuantLib.Statistics_weightSum(*args)
    def mean(*args): return _QuantLib.Statistics_mean(*args)
    def variance(*args): return _QuantLib.Statistics_variance(*args)
    def standardDeviation(*args): return _QuantLib.Statistics_standardDeviation(*args)
    def errorEstimate(*args): return _QuantLib.Statistics_errorEstimate(*args)
    def skewness(*args): return _QuantLib.Statistics_skewness(*args)
    def kurtosis(*args): return _QuantLib.Statistics_kurtosis(*args)
    def min(*args): return _QuantLib.Statistics_min(*args)
    def max(*args): return _QuantLib.Statistics_max(*args)
    def reset(*args): return _QuantLib.Statistics_reset(*args)
    def add(*args): return _QuantLib.Statistics_add(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Statistics(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Statistics
    __del__ = lambda self : None;
Statistics_swigregister = _QuantLib.Statistics_swigregister
Statistics_swigregister(Statistics)

class RiskStatistics(Statistics):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def semiVariance(*args): return _QuantLib.RiskStatistics_semiVariance(*args)
    def semiDeviation(*args): return _QuantLib.RiskStatistics_semiDeviation(*args)
    def downsideVariance(*args): return _QuantLib.RiskStatistics_downsideVariance(*args)
    def downsideDeviation(*args): return _QuantLib.RiskStatistics_downsideDeviation(*args)
    def regret(*args): return _QuantLib.RiskStatistics_regret(*args)
    def potentialUpside(*args): return _QuantLib.RiskStatistics_potentialUpside(*args)
    def valueAtRisk(*args): return _QuantLib.RiskStatistics_valueAtRisk(*args)
    def expectedShortfall(*args): return _QuantLib.RiskStatistics_expectedShortfall(*args)
    def shortfall(*args): return _QuantLib.RiskStatistics_shortfall(*args)
    def averageShortfall(*args): return _QuantLib.RiskStatistics_averageShortfall(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_RiskStatistics(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_RiskStatistics
    __del__ = lambda self : None;
RiskStatistics_swigregister = _QuantLib.RiskStatistics_swigregister
RiskStatistics_swigregister(RiskStatistics)

class MultipleStatistics(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_MultipleStatistics(*args)
        try: self.this.append(this)
        except: self.this = this
    def size(*args): return _QuantLib.MultipleStatistics_size(*args)
    def samples(*args): return _QuantLib.MultipleStatistics_samples(*args)
    def weightSum(*args): return _QuantLib.MultipleStatistics_weightSum(*args)
    def mean(*args): return _QuantLib.MultipleStatistics_mean(*args)
    def variance(*args): return _QuantLib.MultipleStatistics_variance(*args)
    def standardDeviation(*args): return _QuantLib.MultipleStatistics_standardDeviation(*args)
    def errorEstimate(*args): return _QuantLib.MultipleStatistics_errorEstimate(*args)
    def skewness(*args): return _QuantLib.MultipleStatistics_skewness(*args)
    def kurtosis(*args): return _QuantLib.MultipleStatistics_kurtosis(*args)
    def min(*args): return _QuantLib.MultipleStatistics_min(*args)
    def max(*args): return _QuantLib.MultipleStatistics_max(*args)
    def covariance(*args): return _QuantLib.MultipleStatistics_covariance(*args)
    def correlation(*args): return _QuantLib.MultipleStatistics_correlation(*args)
    def reset(*args): return _QuantLib.MultipleStatistics_reset(*args)
    def add(*args): return _QuantLib.MultipleStatistics_add(*args)
    __swig_destroy__ = _QuantLib.delete_MultipleStatistics
    __del__ = lambda self : None;
MultipleStatistics_swigregister = _QuantLib.MultipleStatistics_swigregister
MultipleStatistics_swigregister(MultipleStatistics)

class SequenceStatistics(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_SequenceStatistics(*args)
        try: self.this.append(this)
        except: self.this = this
    def size(*args): return _QuantLib.SequenceStatistics_size(*args)
    def samples(*args): return _QuantLib.SequenceStatistics_samples(*args)
    def weightSum(*args): return _QuantLib.SequenceStatistics_weightSum(*args)
    def mean(*args): return _QuantLib.SequenceStatistics_mean(*args)
    def variance(*args): return _QuantLib.SequenceStatistics_variance(*args)
    def standardDeviation(*args): return _QuantLib.SequenceStatistics_standardDeviation(*args)
    def errorEstimate(*args): return _QuantLib.SequenceStatistics_errorEstimate(*args)
    def skewness(*args): return _QuantLib.SequenceStatistics_skewness(*args)
    def kurtosis(*args): return _QuantLib.SequenceStatistics_kurtosis(*args)
    def min(*args): return _QuantLib.SequenceStatistics_min(*args)
    def max(*args): return _QuantLib.SequenceStatistics_max(*args)
    def covariance(*args): return _QuantLib.SequenceStatistics_covariance(*args)
    def correlation(*args): return _QuantLib.SequenceStatistics_correlation(*args)
    def reset(*args): return _QuantLib.SequenceStatistics_reset(*args)
    def add(*args): return _QuantLib.SequenceStatistics_add(*args)
    __swig_destroy__ = _QuantLib.delete_SequenceStatistics
    __del__ = lambda self : None;
SequenceStatistics_swigregister = _QuantLib.SequenceStatistics_swigregister
SequenceStatistics_swigregister(SequenceStatistics)

class TimeBasket(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TimeBasket(*args)
        try: self.this.append(this)
        except: self.this = this
    def __len__(*args): return _QuantLib.TimeBasket___len__(*args)
    def rebin(*args): return _QuantLib.TimeBasket_rebin(*args)
    def __getitem__(*args): return _QuantLib.TimeBasket___getitem__(*args)
    def __setitem__(*args): return _QuantLib.TimeBasket___setitem__(*args)
    def items(*args): return _QuantLib.TimeBasket_items(*args)
    def __contains__(*args): return _QuantLib.TimeBasket___contains__(*args)
    def __iter__(*args): return _QuantLib.TimeBasket___iter__(*args)
    __swig_destroy__ = _QuantLib.delete_TimeBasket
    __del__ = lambda self : None;
TimeBasket_swigregister = _QuantLib.TimeBasket_swigregister
TimeBasket_swigregister(TimeBasket)

class Swap(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Swap(*args)
        try: self.this.append(this)
        except: self.this = this
    def startDate(*args): return _QuantLib.Swap_startDate(*args)
    def maturityDate(*args): return _QuantLib.Swap_maturityDate(*args)
    __swig_destroy__ = _QuantLib.delete_Swap
    __del__ = lambda self : None;
Swap_swigregister = _QuantLib.Swap_swigregister
Swap_swigregister(Swap)

class VanillaSwap(Swap):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Receiver = _QuantLib.VanillaSwap_Receiver
    Payer = _QuantLib.VanillaSwap_Payer
    def __init__(self, *args): 
        this = _QuantLib.new_VanillaSwap(*args)
        try: self.this.append(this)
        except: self.this = this
    def fairRate(*args): return _QuantLib.VanillaSwap_fairRate(*args)
    def fairSpread(*args): return _QuantLib.VanillaSwap_fairSpread(*args)
    def fixedLegBPS(*args): return _QuantLib.VanillaSwap_fixedLegBPS(*args)
    def floatingLegBPS(*args): return _QuantLib.VanillaSwap_floatingLegBPS(*args)
    __swig_destroy__ = _QuantLib.delete_VanillaSwap
    __del__ = lambda self : None;
VanillaSwap_swigregister = _QuantLib.VanillaSwap_swigregister
VanillaSwap_swigregister(VanillaSwap)

class DiscountingSwapEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DiscountingSwapEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_DiscountingSwapEngine
    __del__ = lambda self : None;
DiscountingSwapEngine_swigregister = _QuantLib.DiscountingSwapEngine_swigregister
DiscountingSwapEngine_swigregister(DiscountingSwapEngine)

class CapFloorTermVolatilityStructure(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.CapFloorTermVolatilityStructure___deref__(*args)
    def __nonzero__(*args): return _QuantLib.CapFloorTermVolatilityStructure___nonzero__(*args)
    def asObservable(*args): return _QuantLib.CapFloorTermVolatilityStructure_asObservable(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_CapFloorTermVolatilityStructure(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CapFloorTermVolatilityStructure
    __del__ = lambda self : None;
    def volatility(*args): return _QuantLib.CapFloorTermVolatilityStructure_volatility(*args)
    def enableExtrapolation(*args): return _QuantLib.CapFloorTermVolatilityStructure_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.CapFloorTermVolatilityStructure_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.CapFloorTermVolatilityStructure_allowsExtrapolation(*args)
CapFloorTermVolatilityStructure_swigregister = _QuantLib.CapFloorTermVolatilityStructure_swigregister
CapFloorTermVolatilityStructure_swigregister(CapFloorTermVolatilityStructure)

class CapFloorTermVolatilityStructureHandle(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CapFloorTermVolatilityStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def __deref__(*args): return _QuantLib.CapFloorTermVolatilityStructureHandle___deref__(*args)
    def __nonzero__(*args): return _QuantLib.CapFloorTermVolatilityStructureHandle___nonzero__(*args)
    def asObservable(*args): return _QuantLib.CapFloorTermVolatilityStructureHandle_asObservable(*args)
    __swig_destroy__ = _QuantLib.delete_CapFloorTermVolatilityStructureHandle
    __del__ = lambda self : None;
    def volatility(*args): return _QuantLib.CapFloorTermVolatilityStructureHandle_volatility(*args)
    def enableExtrapolation(*args): return _QuantLib.CapFloorTermVolatilityStructureHandle_enableExtrapolation(*args)
    def disableExtrapolation(*args): return _QuantLib.CapFloorTermVolatilityStructureHandle_disableExtrapolation(*args)
    def allowsExtrapolation(*args): return _QuantLib.CapFloorTermVolatilityStructureHandle_allowsExtrapolation(*args)
CapFloorTermVolatilityStructureHandle_swigregister = _QuantLib.CapFloorTermVolatilityStructureHandle_swigregister
CapFloorTermVolatilityStructureHandle_swigregister(CapFloorTermVolatilityStructureHandle)

class RelinkableCapFloorTermVolatilityStructureHandle(CapFloorTermVolatilityStructureHandle):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_RelinkableCapFloorTermVolatilityStructureHandle(*args)
        try: self.this.append(this)
        except: self.this = this
    def linkTo(*args): return _QuantLib.RelinkableCapFloorTermVolatilityStructureHandle_linkTo(*args)
    __swig_destroy__ = _QuantLib.delete_RelinkableCapFloorTermVolatilityStructureHandle
    __del__ = lambda self : None;
RelinkableCapFloorTermVolatilityStructureHandle_swigregister = _QuantLib.RelinkableCapFloorTermVolatilityStructureHandle_swigregister
RelinkableCapFloorTermVolatilityStructureHandle_swigregister(RelinkableCapFloorTermVolatilityStructureHandle)

class CapFloorTermVolCurve(CapFloorTermVolatilityStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_CapFloorTermVolCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_CapFloorTermVolCurve
    __del__ = lambda self : None;
CapFloorTermVolCurve_swigregister = _QuantLib.CapFloorTermVolCurve_swigregister
CapFloorTermVolCurve_swigregister(CapFloorTermVolCurve)

class Settlement(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    Physical = _QuantLib.Settlement_Physical
    Cash = _QuantLib.Settlement_Cash
    def __init__(self, *args): 
        this = _QuantLib.new_Settlement(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Settlement
    __del__ = lambda self : None;
Settlement_swigregister = _QuantLib.Settlement_swigregister
Settlement_swigregister(Settlement)

class Swaption(Instrument):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_Swaption(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Swaption
    __del__ = lambda self : None;
Swaption_swigregister = _QuantLib.Swaption_swigregister
Swaption_swigregister(Swaption)

class BlackSwaptionEngine(PricingEngine):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_BlackSwaptionEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_BlackSwaptionEngine
    __del__ = lambda self : None;
BlackSwaptionEngine_swigregister = _QuantLib.BlackSwaptionEngine_swigregister
BlackSwaptionEngine_swigregister(BlackSwaptionEngine)

class Surface(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __deref__(*args): return _QuantLib.Surface___deref__(*args)
    def __nonzero__(*args): return _QuantLib.Surface___nonzero__(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_Surface(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_Surface
    __del__ = lambda self : None;
    def __call__(*args): return _QuantLib.Surface___call__(*args)
    def domain(*args): return _QuantLib.Surface_domain(*args)
Surface_swigregister = _QuantLib.Surface_swigregister
Surface_swigregister(Surface)

class TestSurface(Surface):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_TestSurface(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _QuantLib.delete_TestSurface
    __del__ = lambda self : None;
TestSurface_swigregister = _QuantLib.TestSurface_swigregister
TestSurface_swigregister(TestSurface)

class ConstantEstimator(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ConstantEstimator(*args)
        try: self.this.append(this)
        except: self.this = this
    def calculate(*args): return _QuantLib.ConstantEstimator_calculate(*args)
    __swig_destroy__ = _QuantLib.delete_ConstantEstimator
    __del__ = lambda self : None;
ConstantEstimator_swigregister = _QuantLib.ConstantEstimator_swigregister
ConstantEstimator_swigregister(ConstantEstimator)

class ParkinsonSigma(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ParkinsonSigma(*args)
        try: self.this.append(this)
        except: self.this = this
    def calculate(*args): return _QuantLib.ParkinsonSigma_calculate(*args)
    __swig_destroy__ = _QuantLib.delete_ParkinsonSigma
    __del__ = lambda self : None;
ParkinsonSigma_swigregister = _QuantLib.ParkinsonSigma_swigregister
ParkinsonSigma_swigregister(ParkinsonSigma)

class GarmanKlassSigma1(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GarmanKlassSigma1(*args)
        try: self.this.append(this)
        except: self.this = this
    def calculate(*args): return _QuantLib.GarmanKlassSigma1_calculate(*args)
    __swig_destroy__ = _QuantLib.delete_GarmanKlassSigma1
    __del__ = lambda self : None;
GarmanKlassSigma1_swigregister = _QuantLib.GarmanKlassSigma1_swigregister
GarmanKlassSigma1_swigregister(GarmanKlassSigma1)

class GarmanKlassSigma3(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GarmanKlassSigma3(*args)
        try: self.this.append(this)
        except: self.this = this
    def calculate(*args): return _QuantLib.GarmanKlassSigma3_calculate(*args)
    __swig_destroy__ = _QuantLib.delete_GarmanKlassSigma3
    __del__ = lambda self : None;
GarmanKlassSigma3_swigregister = _QuantLib.GarmanKlassSigma3_swigregister
GarmanKlassSigma3_swigregister(GarmanKlassSigma3)

class GarmanKlassSigma4(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GarmanKlassSigma4(*args)
        try: self.this.append(this)
        except: self.this = this
    def calculate(*args): return _QuantLib.GarmanKlassSigma4_calculate(*args)
    __swig_destroy__ = _QuantLib.delete_GarmanKlassSigma4
    __del__ = lambda self : None;
GarmanKlassSigma4_swigregister = _QuantLib.GarmanKlassSigma4_swigregister
GarmanKlassSigma4_swigregister(GarmanKlassSigma4)

class GarmanKlassSigma5(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GarmanKlassSigma5(*args)
        try: self.this.append(this)
        except: self.this = this
    def calculate(*args): return _QuantLib.GarmanKlassSigma5_calculate(*args)
    __swig_destroy__ = _QuantLib.delete_GarmanKlassSigma5
    __del__ = lambda self : None;
GarmanKlassSigma5_swigregister = _QuantLib.GarmanKlassSigma5_swigregister
GarmanKlassSigma5_swigregister(GarmanKlassSigma5)

class GarmanKlassSigma6(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_GarmanKlassSigma6(*args)
        try: self.this.append(this)
        except: self.this = this
    def calculate(*args): return _QuantLib.GarmanKlassSigma6_calculate(*args)
    __swig_destroy__ = _QuantLib.delete_GarmanKlassSigma6
    __del__ = lambda self : None;
GarmanKlassSigma6_swigregister = _QuantLib.GarmanKlassSigma6_swigregister
GarmanKlassSigma6_swigregister(GarmanKlassSigma6)

class ZeroCurve(YieldTermStructure):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_ZeroCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def dates(*args): return _QuantLib.ZeroCurve_dates(*args)
    def zeroRates(*args): return _QuantLib.ZeroCurve_zeroRates(*args)
    def nodes(*args): return _QuantLib.ZeroCurve_nodes(*args)
    __swig_destroy__ = _QuantLib.delete_ZeroCurve
    __del__ = lambda self : None;
ZeroCurve_swigregister = _QuantLib.ZeroCurve_swigregister
ZeroCurve_swigregister(ZeroCurve)

class DiscreteGeometricASO(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_DiscreteGeometricASO(*args)
        try: self.this.append(this)
        except: self.this = this
    def value(*args): return _QuantLib.DiscreteGeometricASO_value(*args)
    __swig_destroy__ = _QuantLib.delete_DiscreteGeometricASO
    __del__ = lambda self : None;
DiscreteGeometricASO_swigregister = _QuantLib.DiscreteGeometricASO_swigregister
DiscreteGeometricASO_swigregister(DiscreteGeometricASO)

class YieldTermStructureVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.YieldTermStructureVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.YieldTermStructureVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.YieldTermStructureVector___len__(*args)
    def pop(*args): return _QuantLib.YieldTermStructureVector_pop(*args)
    def __getslice__(*args): return _QuantLib.YieldTermStructureVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.YieldTermStructureVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.YieldTermStructureVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.YieldTermStructureVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.YieldTermStructureVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.YieldTermStructureVector___setitem__(*args)
    def append(*args): return _QuantLib.YieldTermStructureVector_append(*args)
    def empty(*args): return _QuantLib.YieldTermStructureVector_empty(*args)
    def size(*args): return _QuantLib.YieldTermStructureVector_size(*args)
    def clear(*args): return _QuantLib.YieldTermStructureVector_clear(*args)
    def swap(*args): return _QuantLib.YieldTermStructureVector_swap(*args)
    def get_allocator(*args): return _QuantLib.YieldTermStructureVector_get_allocator(*args)
    def begin(*args): return _QuantLib.YieldTermStructureVector_begin(*args)
    def end(*args): return _QuantLib.YieldTermStructureVector_end(*args)
    def rbegin(*args): return _QuantLib.YieldTermStructureVector_rbegin(*args)
    def rend(*args): return _QuantLib.YieldTermStructureVector_rend(*args)
    def pop_back(*args): return _QuantLib.YieldTermStructureVector_pop_back(*args)
    def erase(*args): return _QuantLib.YieldTermStructureVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_YieldTermStructureVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.YieldTermStructureVector_push_back(*args)
    def front(*args): return _QuantLib.YieldTermStructureVector_front(*args)
    def back(*args): return _QuantLib.YieldTermStructureVector_back(*args)
    def assign(*args): return _QuantLib.YieldTermStructureVector_assign(*args)
    def resize(*args): return _QuantLib.YieldTermStructureVector_resize(*args)
    def insert(*args): return _QuantLib.YieldTermStructureVector_insert(*args)
    def reserve(*args): return _QuantLib.YieldTermStructureVector_reserve(*args)
    def capacity(*args): return _QuantLib.YieldTermStructureVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_YieldTermStructureVector
    __del__ = lambda self : None;
YieldTermStructureVector_swigregister = _QuantLib.YieldTermStructureVector_swigregister
YieldTermStructureVector_swigregister(YieldTermStructureVector)

class BlackVolTermStructureVector(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def iterator(*args): return _QuantLib.BlackVolTermStructureVector_iterator(*args)
    def __iter__(self): return self.iterator()
    def __nonzero__(*args): return _QuantLib.BlackVolTermStructureVector___nonzero__(*args)
    def __len__(*args): return _QuantLib.BlackVolTermStructureVector___len__(*args)
    def pop(*args): return _QuantLib.BlackVolTermStructureVector_pop(*args)
    def __getslice__(*args): return _QuantLib.BlackVolTermStructureVector___getslice__(*args)
    def __setslice__(*args): return _QuantLib.BlackVolTermStructureVector___setslice__(*args)
    def __delslice__(*args): return _QuantLib.BlackVolTermStructureVector___delslice__(*args)
    def __delitem__(*args): return _QuantLib.BlackVolTermStructureVector___delitem__(*args)
    def __getitem__(*args): return _QuantLib.BlackVolTermStructureVector___getitem__(*args)
    def __setitem__(*args): return _QuantLib.BlackVolTermStructureVector___setitem__(*args)
    def append(*args): return _QuantLib.BlackVolTermStructureVector_append(*args)
    def empty(*args): return _QuantLib.BlackVolTermStructureVector_empty(*args)
    def size(*args): return _QuantLib.BlackVolTermStructureVector_size(*args)
    def clear(*args): return _QuantLib.BlackVolTermStructureVector_clear(*args)
    def swap(*args): return _QuantLib.BlackVolTermStructureVector_swap(*args)
    def get_allocator(*args): return _QuantLib.BlackVolTermStructureVector_get_allocator(*args)
    def begin(*args): return _QuantLib.BlackVolTermStructureVector_begin(*args)
    def end(*args): return _QuantLib.BlackVolTermStructureVector_end(*args)
    def rbegin(*args): return _QuantLib.BlackVolTermStructureVector_rbegin(*args)
    def rend(*args): return _QuantLib.BlackVolTermStructureVector_rend(*args)
    def pop_back(*args): return _QuantLib.BlackVolTermStructureVector_pop_back(*args)
    def erase(*args): return _QuantLib.BlackVolTermStructureVector_erase(*args)
    def __init__(self, *args): 
        this = _QuantLib.new_BlackVolTermStructureVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(*args): return _QuantLib.BlackVolTermStructureVector_push_back(*args)
    def front(*args): return _QuantLib.BlackVolTermStructureVector_front(*args)
    def back(*args): return _QuantLib.BlackVolTermStructureVector_back(*args)
    def assign(*args): return _QuantLib.BlackVolTermStructureVector_assign(*args)
    def resize(*args): return _QuantLib.BlackVolTermStructureVector_resize(*args)
    def insert(*args): return _QuantLib.BlackVolTermStructureVector_insert(*args)
    def reserve(*args): return _QuantLib.BlackVolTermStructureVector_reserve(*args)
    def capacity(*args): return _QuantLib.BlackVolTermStructureVector_capacity(*args)
    __swig_destroy__ = _QuantLib.delete_BlackVolTermStructureVector
    __del__ = lambda self : None;
BlackVolTermStructureVector_swigregister = _QuantLib.BlackVolTermStructureVector_swigregister
BlackVolTermStructureVector_swigregister(BlackVolTermStructureVector)

class McDiscreteArithmeticASO(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_McDiscreteArithmeticASO(*args)
        try: self.this.append(this)
        except: self.this = this
    def value(*args): return _QuantLib.McDiscreteArithmeticASO_value(*args)
    def valueWithSamples(*args): return _QuantLib.McDiscreteArithmeticASO_valueWithSamples(*args)
    def errorEstimate(*args): return _QuantLib.McDiscreteArithmeticASO_errorEstimate(*args)
    __swig_destroy__ = _QuantLib.delete_McDiscreteArithmeticASO
    __del__ = lambda self : None;
McDiscreteArithmeticASO_swigregister = _QuantLib.McDiscreteArithmeticASO_swigregister
McDiscreteArithmeticASO_swigregister(McDiscreteArithmeticASO)

class McHimalaya(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_McHimalaya(*args)
        try: self.this.append(this)
        except: self.this = this
    def value(*args): return _QuantLib.McHimalaya_value(*args)
    def valueWithSamples(*args): return _QuantLib.McHimalaya_valueWithSamples(*args)
    def errorEstimate(*args): return _QuantLib.McHimalaya_errorEstimate(*args)
    __swig_destroy__ = _QuantLib.delete_McHimalaya
    __del__ = lambda self : None;
McHimalaya_swigregister = _QuantLib.McHimalaya_swigregister
McHimalaya_swigregister(McHimalaya)

class McEverest(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_McEverest(*args)
        try: self.this.append(this)
        except: self.this = this
    def value(*args): return _QuantLib.McEverest_value(*args)
    def valueWithSamples(*args): return _QuantLib.McEverest_valueWithSamples(*args)
    def errorEstimate(*args): return _QuantLib.McEverest_errorEstimate(*args)
    __swig_destroy__ = _QuantLib.delete_McEverest
    __del__ = lambda self : None;
McEverest_swigregister = _QuantLib.McEverest_swigregister
McEverest_swigregister(McEverest)

class McPagoda(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _QuantLib.new_McPagoda(*args)
        try: self.this.append(this)
        except: self.this = this
    def value(*args): return _QuantLib.McPagoda_value(*args)
    def valueWithSamples(*args): return _QuantLib.McPagoda_valueWithSamples(*args)
    def errorEstimate(*args): return _QuantLib.McPagoda_errorEstimate(*args)
    __swig_destroy__ = _QuantLib.delete_McPagoda
    __del__ = lambda self : None;
McPagoda_swigregister = _QuantLib.McPagoda_swigregister
McPagoda_swigregister(McPagoda)



