diff options
Diffstat (limited to 'python')
| -rw-r--r-- | python/Makefile | 2 | ||||
| -rw-r--r-- | python/TAGS | 9382 |
2 files changed, 8168 insertions, 1216 deletions
diff --git a/python/Makefile b/python/Makefile index 2ad76fa8..a0658eaa 100644 --- a/python/Makefile +++ b/python/Makefile @@ -7,7 +7,7 @@ tests: python -m unittest discover -v tags: - ctags -e --exclude='*.js' -R . + ctags -e --python-kinds=-iv --exclude='*.js' -R . GHquad.so: GHquad.o $(CC) $(LDFLAGS) -o $@ $< $(LDLIBS) diff --git a/python/TAGS b/python/TAGS index 117c0263..233d9f3e 100644 --- a/python/TAGS +++ b/python/TAGS @@ -1,10 +1,5 @@ -daemon.py,532 -import sys, os, time, atexit, signalsys3,55 -import sys, os, time, atexit, signalos3,55 -import sys, os, time, atexit, signaltime3,55 -import sys, os, time, atexit, signalatexit3,55 -import sys, os, time, atexit, signalsignal3,55 +daemon.py,296 class Daemon:Daemon5,93 def __init__(self, pidfile): self.pidfile = pidfile__init__10,205 def daemonize(self):daemonize12,259 @@ -14,13 +9,7 @@ class Daemon:Daemon5,93 def restart(self):restart112,2386 def run(self):run117,2464 -insert_composite_quotes.py,676 -from sqlalchemy import Table, create_engine, MetaDataTable1,0 -from sqlalchemy import Table, create_engine, MetaDatacreate_engine1,0 -from sqlalchemy import Table, create_engine, MetaDataMetaData1,0 -import osos2,54 -import csvcsv3,64 -import datetimedatetime4,75 +insert_composite_quotes.py,405 engine = create_engine('postgresql://serenitas_user@debian/serenitasdb')engine7,154 metadata = MetaData(bind = engine)metadata8,227 quotes = Table('tranche_quotes', metadata, autoload = True)quotes9,262 @@ -31,10 +20,7 @@ tenordict = {'3Y': '3yr', '5Y': '5yr', '7Y':'7yr', '10Y':'10yr'}tenordict20,46 GHquad.h,0 -test_igoption.py,538 -from analytics import Index, SwaptionIndex1,0 -from analytics import Index, SwaptionSwaption1,0 -import datetimedatetime2,38 +test_igoption.py,409 index = Index.from_name("ig", 27, "5yr",index3,54 trade_date = datetime.date(2016, 11, 18))trade_date4,95 exercise_date = datetime.date(2017, 3, 15)exercise_date6,181 @@ -42,16 +28,7 @@ strike = 80strike7,224 payer = Swaption(index, exercise_date, strike, strike_is_price = False)payer8,236 receiver = Swaption(index, exercise_date, strike, "receiver", strike_is_price = False)receiver13,377 -markit_red.py,730 -import csvcsv1,0 -from lxml import etreeetree2,11 -import requests, io, zipfile, shutilrequests3,34 -import requests, io, zipfile, shutilio3,34 -import requests, io, zipfile, shutilzipfile3,34 -import requests, io, zipfile, shutilshutil3,34 -import commoncommon4,71 -import osos5,85 -from db import with_connectionwith_connection6,95 +markit_red.py,386 def request_payload(payload):request_payload8,127 def download_report(report):download_report18,501 def update_redcodes(conn, fname):update_redcodes34,1026 @@ -59,167 +36,107 @@ def update_redindices(fname):update_redindices54,2017 report_list = ['REDEntity', 'REDObligation', 'REDEntityDelta', 'REDObligationDelta',report_list75,3120 fname = download_report("REDIndexCodes")fname78,3331 -externalmarksbackfill.py,577 -import pandas as pdpd1,0 -import osos2,20 -import rere3,30 -import psycopg2psycopg24,40 -import datetimedatetime5,56 -from db import dbconndbconn6,72 -from pickle import dumpsdumps7,94 -from sqlalchemy import create_enginecreate_engine8,119 -from itertools import chainchain9,156 -from glob import glob, iglobglob10,184 -from glob import glob, iglobiglob10,184 -from pandas.tseries.offsets import MonthEndMonthEnd11,213 -def runAllFill():runAllFill13,258 -def runSingleFill(f):runSingleFill18,384 -def get_globs():get_globs52,1836 -settings = {settings64,2368 +option_trades_et.py,1281 +serenitasdb = dbengine('serenitasdb')serenitasdb16,379 +def get_dfs(index="IG"):get_dfs18,418 +def calendar_spread():calendar_spread24,632 +def put_spread(index = "IG"):put_spread35,1013 +def swaption_analysis():swaption_analysis44,1364 +def beta_calc():beta_calc49,1546 +def build_swaption(index, series, expiry, strike, ref, trade_date, t_range= None, spread_range = None):build_swaption62,1961 + def aux(row, index, swap):aux77,2699 +def calc_delta_pnl(index, series, ref, trade_date, notional, t_range, spread_range):calc_delta_pnl96,3419 +def find_mapped_pv(bought, sold, date):find_mapped_pv121,4358 +def result_fill(df, date):result_fill155,5782 +def plot_color_map(df, val_date):plot_color_map167,6182 +def build_vol_surface_functions(date = datetime.date(2017, 2, 23), index = 'IG', series = '27'):build_vol_surface_functions187,7018 +def vol_from_surface(row, f, g):vol_from_surface212,8513 +def calc_and_plot(bought, sold, traded_price, week, lowerbound, upperbound, deltaPNL=None):calc_and_plot218,8692 +def full_analysis():full_analysis233,9176 +def manual_index_update(index, date): #index as Index Objectmanual_index_update270,10265 +def shiftedColorMap(cmap, start=0, midpoint=0.5, stop=1.0, name='shiftedcmap'):shiftedColorMap284,10767 -yieldcurve.py,2425 -from common import rootroot1,0 -import osos2,24 -import datetimedatetime3,34 -from quantlib.settings import SettingsSettings4,50 -from quantlib.time.api import (WeekendsOnly, Date, Period, Days, Schedule, Annual,WeekendsOnly5,89 -from quantlib.time.api import (WeekendsOnly, Date, Period, Days, Schedule, Annual,Date5,89 -from quantlib.time.api import (WeekendsOnly, Date, Period, Days, Schedule, Annual,Period5,89 -from quantlib.time.api import (WeekendsOnly, Date, Period, Days, Schedule, Annual,Days5,89 -from quantlib.time.api import (WeekendsOnly, Date, Period, Days, Schedule, Annual,Schedule5,89 -from quantlib.time.api import (WeekendsOnly, Date, Period, Days, Schedule, Annual,Annual5,89 -from quantlib.currency.api import USDCurrency, EURCurrencyUSDCurrency9,376 -from quantlib.currency.api import USDCurrency, EURCurrencyEURCurrency9,376 -from quantlib.indexes.ibor_index import IborIndexIborIndex10,435 -from quantlib.time.date import pydate_from_qldatepydate_from_qldate13,624 -import numpy as npnp15,675 -import pandas as pdpd16,694 -import matplotlib.pyplot as pltmatplotlib17,714 -import matplotlib.pyplot as pltplt17,714 -from quantlib.quotes import SimpleQuoteSimpleQuote18,746 -from db import dbconndbconn19,786 -from pyisda.curve import YieldCurveYieldCurve20,808 -def getMarkitIRData(effective_date = datetime.date.today(),getMarkitIRData22,845 -def get_futures_data(date = datetime.date.today()):get_futures_data36,1495 -def rate_helpers(currency="USD", MarkitData=None):rate_helpers43,1796 -def get_dates(date, currency="USD"):get_dates83,3714 -def roll_yc(yc, forward_date):roll_yc99,4512 -def YC(helpers = None, currency="USD", MarkitData=None):YC105,4803 -def ql_to_jp(ql_yc):ql_to_jp111,5118 - ts = YC()ts124,5687 - cal = calendar_from_name('USA')cal125,5701 - p1 = Period('1Mo')p1126,5737 - p2 = Period('2Mo')p2127,5760 - p3 = Period('3Mo')p3128,5783 - p6 = Period('6Mo')p6129,5806 - p12 = Period('12Mo')p12130,5829 - sched = Schedule(ts.reference_date, ts.reference_date+Period('5Yr'), Period('3Mo'), cal)sched131,5854 - days = [pydate_from_qldate(d) for d in sched]days132,5947 - f3 = [ts.forward_rate(d, d+p3, Actual360(), 0).rate for d in sched]f3133,5997 - f6 = [ts.forward_rate(d, d+p6, Actual360(), 0).rate for d in sched]f6134,6069 - f2 = [ts.forward_rate(d, d+p2, Actual360(), 0).rate for d in sched]f2135,6141 +externalmarksbackfill.py,273 +def runAllFill():runAllFill15,301 +def runSingleFill(f):runSingleFill21,458 +def get_CUSIPs():get_CUSIPs50,1582 +def get_BVAL():get_BVAL56,1779 +def pop_BVAL_to_database(df):pop_BVAL_to_database73,2534 +def get_globs():get_globs86,3010 +settings = {settings98,3550 -db.py,845 -import datetimedatetime1,0 -import psycopg2psycopg22,16 -from psycopg2.extras import DictCursorDictCursor3,32 -from psycopg2 import IntegrityErrorIntegrityError4,71 -from psycopg2.extensions import register_adapterregister_adapter5,107 -from sqlalchemy import create_enginecreate_engine6,156 -import numpy as npnp7,193 -class InfDateAdapter:InfDateAdapter9,213 - def __init__(self, wrapped):__init__10,235 - def getquoted(self):getquoted12,299 -def dbconn(dbname):dbconn22,637 -def nan_to_null(f, _NULL=psycopg2.extensions.AsIs('NULL'),nan_to_null34,975 -def dbengine(dbname):dbengine40,1152 -def with_connection(dbname):with_connection45,1330 - def decorator(f):decorator46,1359 - def with_connection_(*args, **kwargs):with_connection_48,1411 -def query_db(conn, sqlstr, params=None, one=True):query_db60,1765 +yieldcurve.py,1193 +def getMarkitIRData(effective_date = datetime.date.today(),getMarkitIRData21,817 +def get_futures_data(date = datetime.date.today()):get_futures_data36,1524 +def rate_helpers(currency="USD", MarkitData=None):rate_helpers43,1825 +def get_dates(date, currency="USD"):get_dates85,3848 +def roll_yc(yc, forward_date):roll_yc101,4646 +def YC(helpers = None, currency="USD", MarkitData=None):YC107,4937 +def jpYC(effective_date, currency="USD", MarkitData=None):jpYC114,5253 +def ql_to_jp(ql_yc):ql_to_jp133,6041 + ts = YC()ts147,6646 + cal = calendar_from_name('USA')cal148,6660 + p1 = Period('1Mo')p1149,6696 + p2 = Period('2Mo')p2150,6719 + p3 = Period('3Mo')p3151,6742 + p6 = Period('6Mo')p6152,6765 + p12 = Period('12Mo')p12153,6788 + sched = Schedule(ts.reference_date, ts.reference_date+Period('5Yr'), Period('3Mo'), cal)sched154,6813 + days = [pydate_from_qldate(d) for d in sched]days155,6906 + f3 = [ts.forward_rate(d, d+p3, Actual360(), 0).rate for d in sched]f3156,6956 + f6 = [ts.forward_rate(d, d+p6, Actual360(), 0).rate for d in sched]f6157,7028 + f2 = [ts.forward_rate(d, d+p2, Actual360(), 0).rate for d in sched]f2158,7100 -mark_backtest.py,1699 -import pandas as pdpd1,0 -from db import dbenginedbengine2,20 -import matplotlibmatplotlib3,44 -import numpy as npnp4,62 -import matplotlib.pyplot as pltmatplotlib5,81 -import matplotlib.pyplot as pltplt5,81 -import statsmodels.api as smstatsmodels6,113 -import statsmodels.api as smsm6,113 -from statsmodels.formula.api import glsgls7,142 -df = pd.read_sql_table('external_marks_mapped',dbengine('dawndb'),df9,183 - parse_dates=['date'])parse_dates10,250 -df = df[df.source.notnull()]df11,295 -df_wide = (pd.pivot_table(df, 'mark', ['identifier', 'date'], 'source').df_wide12,324 - "from bonds where buysell = 'f'"df_trades16,546 - parse_dates=['trade_date'])parse_dates18,660 -df_trades = df_trades.sort_values('trade_date')df_trades19,718 -df = pd.merge_asof(df_trades, df_wide, left_on='trade_date', right_on='date', by='identifier')df20,766 -r2 = {}r236,1534 -stderr = {}stderr37,1542 -parameters = {}parameters38,1554 - regmodel = gls(formula= "df6['price'] ~df6[col]", data = df6).fit()regmodel41,1621 -r2 = pd.Series(r2, name= 'R2')r246,1795 -r2 = pd.DataFrame(r2)r249,1866 -stderr = pd.DataFrame(stderr)stderr50,1888 -parameters = pd.DataFrame(parameters)parameters51,1918 -df7 = df6df753,1957 -filter = 2filter57,2043 -begindate = '2015-01-01'begindate58,2054 -enddate = '2017-01-01'enddate59,2079 -df8 = df7[(df7['trade_date']>begindate) & (df7['trade_date']<enddate)]df860,2102 -difference= pd.DataFrame(df8[df8<filter].mean(), columns=['Average'])difference61,2173 -writer = pd.ExcelWriter('/home/serenitas/edwin/Subprime_ModelandBacktest_outputonly.xlsx')writer65,2315 +db.py,499 +class InfDateAdapter:InfDateAdapter11,278 + def __init__(self, wrapped):__init__12,300 + def getquoted(self):getquoted14,364 +def nan_to_null(f, _NULL=AsIs('NULL'),nan_to_null22,653 +def dbconn(dbname):dbconn32,945 +def dbengine(dbname):dbengine43,1282 +def with_connection(dbname):with_connection53,1704 + def decorator(f):decorator54,1733 + def with_connection_(*args, **kwargs):with_connection_56,1785 +def query_db(conn, sqlstr, params=None, one=True):query_db68,2139 -tests/test_swaption.py,1451 -import unittestunittest1,0 -import datetimedatetime2,16 -import syssys4,33 -from analytics.index import gg6,66 -from analytics import Index, SwaptionIndex7,96 -from analytics import Index, SwaptionSwaption7,96 -class TestPutCallParity(unittest.TestCase):TestPutCallParity9,135 - index = Index.from_name("ig", 27, "5yr",index10,179 - trade_date = datetime.date(2016, 10, 25))trade_date11,224 - exercise_date = datetime.date(2017, 3, 15)exercise_date13,316 - strike = 82.5strike14,363 - def test_parity(self):test_parity16,382 - def test_parity_pvblack(self):test_parity_pvblack26,912 - def test_calibration(self):test_calibration36,1462 - def test_hy(self):test_hy44,1742 -class TestBreakeven(unittest.TestCase):TestBreakeven54,2159 - exercise_date = datetime.date(2017, 3, 15)exercise_date56,2200 - hyindex = Index.from_name("hy", 27, "5yr",hyindex57,2247 - trade_date=datetime.date(2016, 11, 16))trade_date58,2294 - hystrike = 102.5hystrike60,2391 - igindex = Index.from_name("ig", 27, "5yr",igindex62,2413 - trade_date=datetime.date(2016, 11, 18))trade_date63,2460 - igstrike = 80igstrike65,2556 - def test_hypayer(self):test_hypayer67,2575 - def test_hyreceiver(self):test_hyreceiver74,2844 - def test_igpayer(self):test_igpayer81,3142 - def test_igreceiver(self):test_igreceiver88,3408 +tests/test_scenarios.py,514 +class TestSenarios(unittest.TestCase):TestSenarios10,287 + option_delta = Index.from_tradeid(874)option_delta11,326 + option1 = BlackSwaption.from_tradeid(7, option_delta)option112,369 + option2 = BlackSwaption.from_tradeid(8, option_delta)option213,427 + portf = Portfolio([option1, option2, option_delta])portf14,485 + date_range = pd.bdate_range(option_delta.trade_date, pd.Timestamp('2017-05-17') - BDay(), freq = '5B')date_range15,541 + def test_portfolio(self):test_portfolio17,649 -tests/test_yieldcurve.py,346 -import unittestunittest1,0 -from quantlib.settings import SettingsSettings5,133 -import syssys6,172 -from yieldcurve import YCYC8,205 +tests/test_swaption.py,1230 +class TestPutCallParity(unittest.TestCase):TestPutCallParity9,150 + index = Index.from_name("ig", 27, "5yr",index10,194 + trade_date = datetime.date(2016, 10, 25))trade_date11,239 + exercise_date = datetime.date(2017, 3, 15)exercise_date13,331 + strike = 82.5strike14,378 + def test_parity(self):test_parity16,397 + def test_parity_black(self):test_parity_black26,927 + def test_calibration(self):test_calibration36,1473 + def test_hy(self):test_hy44,1747 +class TestBreakeven(unittest.TestCase):TestBreakeven54,2140 + exercise_date = datetime.date(2017, 3, 15)exercise_date56,2181 + hyindex = Index.from_name("hy", 27, "5yr",hyindex57,2228 + trade_date=datetime.date(2016, 11, 16))trade_date58,2275 + hystrike = 102.5hystrike60,2372 + igindex = Index.from_name("ig", 27, "5yr",igindex62,2394 + trade_date=datetime.date(2016, 11, 18))trade_date63,2441 + igstrike = 80igstrike65,2537 + def test_hypayer(self):test_hypayer67,2556 + def test_hyreceiver(self):test_hyreceiver73,2786 + def test_igpayer(self):test_igpayer80,3070 + def test_igreceiver(self):test_igreceiver86,3288 + +tests/test_yieldcurve.py,207 class TestYieldCurve(unittest.TestCase):TestYieldCurve10,232 def assertListAlmostEqual(self, list1, list2, places = 7):assertListAlmostEqual12,274 def test_bloomberg(self):test_bloomberg17,475 -tests/test_cds.py,723 -import unittestunittest1,0 -from pyisda.cdsone import upfront_chargeupfront_charge2,16 -import datetimedatetime3,57 -from quantlib.settings import SettingsSettings4,73 -from quantlib.time.api import DateDate5,112 -import syssys7,148 -from analytics import IndexIndex9,181 -from yieldcurve import YC, ql_to_jpYC10,209 -from yieldcurve import YC, ql_to_jpql_to_jp10,209 +tests/test_cds.py,345 class TestUpfront(unittest.TestCase):TestUpfront12,246 index = Index.from_name("ig", 26, "5yr",index13,284 trade_date = datetime.date(2016, 9, 21))trade_date14,329 @@ -227,205 +144,7529 @@ class TestUpfront(unittest.TestCase):TestUpfront12,246 def test_cdsone(self):test_cdsone21,537 def test_annuity(self):test_annuity43,1672 -tests/test_index.py,1265 -import unittestunittest1,0 -import datetimedatetime2,16 -import numpy as npnp3,32 -from pyisda.cdsone import upfront_chargeupfront_charge5,52 -from pyisda.flat_hazard import pv_vecpv_vec6,93 -from analytics import Index, ForwardIndexIndex8,132 -from analytics import Index, ForwardIndexForwardIndex8,132 -from analytics.index import gg9,174 -class TestStrike(unittest.TestCase):TestStrike11,205 - index = Index.from_name("ig", 26, "5yr",index12,242 - trade_date = datetime.date(2016, 7, 1))trade_date13,287 - exercise_date = datetime.date(2016, 8, 19)exercise_date16,403 - def test_pv(self):test_pv18,451 - def test_strike(self):test_strike23,668 - def test_strike_vec(self):test_strike_vec32,1113 - def test_price_setting(self):test_price_setting43,1654 -class TestForwardIndex(unittest.TestCase):TestForwardIndex47,1787 - index = Index.from_name("ig", 26, "5yr",index48,1830 - trade_date = datetime.date(2016, 7, 1))trade_date49,1875 - exercise_date = datetime.date(2016, 8, 19)exercise_date52,1991 - fi = ForwardIndex(index, exercise_date)fi53,2038 - def test_forward_pv(self):test_forward_pv55,2083 - def test_forward_pv(self):test_forward_pv61,2383 +tests/test_dates.py,392 +class TestStartDate(unittest.TestCase):TestStartDate9,117 + def test_previous_twentieth(self):test_previous_twentieth11,158 + def test_previous_twentieth_timestamp(self):test_previous_twentieth_timestamp21,706 +class TestEndDate(unittest.TestCase):TestEndDate31,1260 + def test_enddate(self):test_enddate32,1298 + def test_enddate_pre2015(self):test_enddate_pre201542,1811 + +tests/test_index.py,1161 +class TestPickle(unittest.TestCase):TestPickle12,219 + index = Index.from_name("ig", 26, "5yr",index13,256 + trade_date = datetime.date(2016, 7, 1))trade_date14,301 + def test_pickle(self):test_pickle18,418 +class TestStrike(unittest.TestCase):TestStrike22,550 + index = Index.from_name("ig", 26, "5yr",index23,587 + trade_date = datetime.date(2016, 7, 1))trade_date24,632 + exercise_date = datetime.date(2016, 8, 19)exercise_date27,748 + def test_pv(self):test_pv29,796 + def test_strike(self):test_strike34,1013 + def test_strike_vec(self):test_strike_vec43,1458 + def test_price_setting(self):test_price_setting54,1999 +class TestForwardIndex(unittest.TestCase):TestForwardIndex58,2132 + index = Index.from_name("ig", 26, "5yr",index59,2175 + trade_date = datetime.date(2016, 7, 1))trade_date60,2220 + exercise_date = datetime.date(2016, 8, 19)exercise_date63,2336 + fi = ForwardIndex(index, exercise_date)fi64,2383 + def test_forward_pv(self):test_forward_pv66,2428 + def test_forward_pv(self):test_forward_pv72,2728 -database_consistency.py,361 -import pandas as pdpd1,0 -import datetimedatetime2,20 -from sqlalchemy import create_enginecreate_engine3,36 +database_consistency.py,248 engine = create_engine('postgresql://et_user@debian/ET')engine6,99 data12 = pd.merge(data1, data2, left_index=True, right_index=True)data1221,1249 data13 = pd.merge(data1bis, data3, left_index=True, right_index=True)data1322,1320 -ecb_yieldcurve.py,384 -import requestsrequests2,16 -import ioio3,32 -from zipfile import ZipFileZipFile4,42 -import osos5,70 -import commoncommon6,80 -import datetimedatetime7,94 +pyisda/tests/test_pickle.py,327 +class TestPickle(unittest.TestCase):TestPickle9,201 + trade_date = datetime.date(2016, 10, 6)trade_date10,238 + yc = build_yc(trade_date, ql_curve = True)yc11,282 + def assertListAlmostEqual(self, l1, l2):assertListAlmostEqual13,330 + def test_yc(self):test_yc19,514 + def test_legs(self):test_legs25,794 + +pyisda/pyisda/credit_index.pxd,92 +cdef class CurveList:CurveList6,148 +cdef class CreditIndex(CurveList):CreditIndex14,351 + +pyisda/pyisda/flat_hazard.cpp,119795 +#define PY_SSIZE_T_CLEANPY_SSIZE_T_CLEAN24,602 +#define CYTHON_ABI CYTHON_ABI31,931 + #define offsetof(offsetof34,996 + #define __stdcall__stdcall38,1136 + #define __cdecl__cdecl41,1185 + #define __fastcall__fastcall44,1235 + #define DL_IMPORT(DL_IMPORT48,1292 + #define DL_EXPORT(DL_EXPORT51,1342 + #define HAVE_LONG_LONGHAVE_LONG_LONG55,1491 + #define PY_LONG_LONG PY_LONG_LONG59,1555 + #define Py_HUGE_VAL Py_HUGE_VAL62,1615 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY65,1673 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON66,1710 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON67,1749 + #undef CYTHON_USE_TYPE_SLOTSCYTHON_USE_TYPE_SLOTS68,1789 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS69,1820 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS70,1854 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS71,1886 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS72,1921 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS73,1958 + #undef CYTHON_USE_UNICODE_INTERNALSCYTHON_USE_UNICODE_INTERNALS74,1998 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS75,2036 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER76,2077 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER77,2112 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS78,2150 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS79,2187 + #undef CYTHON_AVOID_BORROWED_REFSCYTHON_AVOID_BORROWED_REFS80,2227 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS81,2263 + #undef CYTHON_ASSUME_SAFE_MACROSCYTHON_ASSUME_SAFE_MACROS82,2302 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS83,2337 + #undef CYTHON_UNPACK_METHODSCYTHON_UNPACK_METHODS84,2375 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS85,2406 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE86,2440 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE87,2474 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL88,2511 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL89,2539 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY91,2600 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON92,2637 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON93,2676 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS95,2748 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS97,2793 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS98,2825 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS99,2860 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS100,2897 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS102,2976 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER104,3028 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER105,3063 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS106,3101 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS107,3138 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS109,3215 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS112,3301 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS115,3382 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE117,3427 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE118,3461 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL119,3498 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL120,3526 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY122,3563 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON123,3600 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON124,3639 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS126,3711 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS129,3783 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS130,3817 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS132,3895 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS135,3975 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS136,4014 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS138,4102 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS141,4191 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS144,4281 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER147,4367 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER148,4404 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER150,4488 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS153,4574 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS156,4660 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS159,4741 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE162,4821 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL165,4898 +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCCALL169,4981 + #undef SHIFTSHIFT173,5129 + #undef BASEBASE174,5144 + #undef MASKMASK175,5158 + #define Py_OptimizeFlag Py_OptimizeFlag178,5268 +#define __PYX_BUILD_PY_SSIZE_T __PYX_BUILD_PY_SSIZE_T180,5303 +#define CYTHON_FORMAT_SSIZE_T CYTHON_FORMAT_SSIZE_T181,5338 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME183,5397 + #define __Pyx_PyCode_New(__Pyx_PyCode_New184,5447 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType186,5621 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME188,5673 + #define __Pyx_PyCode_New(__Pyx_PyCode_New189,5720 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType191,5895 + #define Py_TPFLAGS_CHECKTYPES Py_TPFLAGS_CHECKTYPES194,5977 + #define Py_TPFLAGS_HAVE_INDEX Py_TPFLAGS_HAVE_INDEX197,6048 + #define Py_TPFLAGS_HAVE_NEWBUFFER Py_TPFLAGS_HAVE_NEWBUFFER200,6123 + #define Py_TPFLAGS_HAVE_FINALIZE Py_TPFLAGS_HAVE_FINALIZE203,6201 + #define METH_FASTCALL METH_FASTCALL206,6267 + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args,__Pyx_PyCFunctionFast207,6296 + #define __Pyx_PyCFunctionFast __Pyx_PyCFunctionFast210,6465 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check213,6545 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check216,6723 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED219,6833 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY220,6867 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH222,7030 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR223,7096 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE224,7164 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND225,7238 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA226,7298 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ227,7358 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE228,7424 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE229,7499 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED231,7636 + #define PyUnicode_1BYTE_KIND PyUnicode_1BYTE_KIND232,7670 + #define PyUnicode_2BYTE_KIND PyUnicode_2BYTE_KIND233,7704 + #define PyUnicode_4BYTE_KIND PyUnicode_4BYTE_KIND234,7738 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY235,7772 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH236,7818 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR237,7882 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE238,7964 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND239,8056 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA240,8119 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ241,8194 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE242,8280 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE243,8366 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat246,8473 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe247,8536 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat249,8605 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe250,8672 + #define PyUnicode_Contains(PyUnicode_Contains254,8900 + #define PyByteArray_Check(PyByteArray_Check257,9029 + #define PyObject_Format(PyObject_Format260,9171 + #define PyObject_Malloc(PyObject_Malloc263,9322 + #define PyObject_Free(PyObject_Free264,9369 + #define PyObject_Realloc(PyObject_Realloc265,9414 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars268,9500 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber269,9563 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars271,9659 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber272,9727 +#define __Pyx_PyString_FormatSafe(__Pyx_PyString_FormatSafe274,9817 +#define __Pyx_PyUnicode_FormatSafe(__Pyx_PyUnicode_FormatSafe275,9945 + #define __Pyx_PyString_Format(__Pyx_PyString_Format277,10094 + #define __Pyx_PyString_Format(__Pyx_PyString_Format279,10162 + #define PyObject_ASCII(PyObject_ASCII282,10283 + #define PyBaseString_Type PyBaseString_Type285,10372 + #define PyStringObject PyStringObject286,10426 + #define PyString_Type PyString_Type287,10481 + #define PyString_Check PyString_Check288,10535 + #define PyString_CheckExact PyString_CheckExact289,10590 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check292,10683 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact293,10744 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check295,10821 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact296,10907 + #define PySet_CheckExact(PySet_CheckExact299,11040 +#define __Pyx_TypeCheck(__Pyx_TypeCheck301,11116 +#define __Pyx_PyException_Check(__Pyx_PyException_Check302,11197 + #define PyIntObject PyIntObject304,11298 + #define PyInt_Type PyInt_Type305,11350 + #define PyInt_Check(PyInt_Check306,11401 + #define PyInt_CheckExact(PyInt_CheckExact307,11457 + #define PyInt_FromString PyInt_FromString308,11518 + #define PyInt_FromUnicode PyInt_FromUnicode309,11575 + #define PyInt_FromLong PyInt_FromLong310,11633 + #define PyInt_FromSize_t PyInt_FromSize_t311,11688 + #define PyInt_FromSsize_t PyInt_FromSsize_t312,11745 + #define PyInt_AsLong PyInt_AsLong313,11803 + #define PyInt_AS_LONG PyInt_AS_LONG314,11856 + #define PyInt_AsSsize_t PyInt_AsSsize_t315,11910 + #define PyInt_AsUnsignedLongMask PyInt_AsUnsignedLongMask316,11966 + #define PyInt_AsUnsignedLongLongMask PyInt_AsUnsignedLongLongMask317,12031 + #define PyNumber_Int PyNumber_Int318,12100 + #define PyBoolObject PyBoolObject321,12186 + #define PyUnicode_InternFromString(PyUnicode_InternFromString325,12336 + typedef long Py_hash_t;Py_hash_t329,12450 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t330,12476 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t331,12524 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t333,12576 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t334,12627 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New337,12709 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New339,12828 + #define __Pyx_PyAsyncMethodsStruct __Pyx_PyAsyncMethodsStruct343,12977 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync344,13031 + unaryfunc am_await;am_await347,13126 + unaryfunc am_aiter;am_aiter348,13154 + unaryfunc am_anext;am_anext349,13182 + } __Pyx_PyAsyncMethodsStruct;__Pyx_PyAsyncMethodsStruct350,13210 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync351,13244 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync354,13357 + #define CYTHON_RESTRICT CYTHON_RESTRICT358,13453 + #define CYTHON_RESTRICT CYTHON_RESTRICT360,13540 + #define CYTHON_RESTRICT CYTHON_RESTRICT362,13645 + #define CYTHON_RESTRICTCYTHON_RESTRICT364,13690 +# define CYTHON_UNUSED CYTHON_UNUSED370,13870 +# define CYTHON_UNUSEDCYTHON_UNUSED372,13935 +# define CYTHON_UNUSED CYTHON_UNUSED375,14047 +# define CYTHON_UNUSEDCYTHON_UNUSED377,14108 + template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }CYTHON_MAYBE_UNUSED_VAR382,14207 +# define CYTHON_MAYBE_UNUSED_VAR(CYTHON_MAYBE_UNUSED_VAR384,14283 +# define CYTHON_NCP_UNUSEDCYTHON_NCP_UNUSED389,14407 +# define CYTHON_NCP_UNUSED CYTHON_NCP_UNUSED391,14442 +#define __Pyx_void_to_None(__Pyx_void_to_None394,14499 + #define CYTHON_INLINE CYTHON_INLINE401,14757 + #define CYTHON_INLINE CYTHON_INLINE403,14831 +void __Pyx_call_destructor(T& x) {__Pyx_call_destructor407,14901 +class __Pyx_FakeReference {__Pyx_FakeReference411,14971 + __Pyx_FakeReference() : ptr(NULL) { }__Pyx_FakeReference413,15009 + __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }__Pyx_FakeReference414,15051 + T *operator->() { return ptr; }operator ->415,15121 + T *operator&() { return ptr; }operator &416,15157 + operator T&() { return *ptr; }operator T&417,15192 + template<typename U> bool operator ==(U other) { return *ptr == other; }operator ==418,15227 + template<typename U> bool operator !=(U other) { return *ptr != other; }operator !=419,15304 + T *ptr;ptr421,15392 + #define _USE_MATH_DEFINES_USE_MATH_DEFINES425,15450 +#define __PYX_NAN(__PYX_NAN429,15514 +static CYTHON_INLINE float __PYX_NAN() {__PYX_NAN431,15554 +#define __Pyx_truncl __Pyx_truncl438,15723 +#define __Pyx_truncl __Pyx_truncl440,15756 +#define __PYX_ERR(__PYX_ERR444,15793 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide450,15976 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide451,16046 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide453,16129 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide454,16195 + #define __PYX_EXTERN_C __PYX_EXTERN_C459,16320 + #define __PYX_EXTERN_C __PYX_EXTERN_C461,16366 +#define __PYX_HAVE__pyisda__flat_hazard__PYX_HAVE__pyisda__flat_hazard465,16417 +#define __PYX_HAVE_API__pyisda__flat_hazard__PYX_HAVE_API__pyisda__flat_hazard466,16457 +#define CYTHON_WITHOUT_ASSERTIONSCYTHON_WITHOUT_ASSERTIONS507,17423 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;p510,17465 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;s510,17465 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;n510,17465 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;encoding510,17465 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_unicode511,17552 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_str511,17552 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;intern511,17552 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;__Pyx_StringTabEntry511,17552 +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII __PYX_DEFAULT_STRING_ENCODING_IS_ASCII513,17654 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT514,17703 +#define __PYX_DEFAULT_STRING_ENCODING __PYX_DEFAULT_STRING_ENCODING515,17754 +#define __Pyx_PyObject_FromString __Pyx_PyObject_FromString516,17795 +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyObject_FromStringAndSize517,17854 +#define __Pyx_uchar_cast(__Pyx_uchar_cast518,17927 +#define __Pyx_long_cast(__Pyx_long_cast519,17974 +#define __Pyx_fits_Py_ssize_t(__Pyx_fits_Py_ssize_t520,18011 + #define __Pyx_sst_abs(__Pyx_sst_abs532,18617 + #define __Pyx_sst_abs(__Pyx_sst_abs534,18700 + #define __Pyx_sst_abs(__Pyx_sst_abs536,18779 + #define __Pyx_sst_abs(__Pyx_sst_abs538,18869 + #define __Pyx_sst_abs(__Pyx_sst_abs540,18980 + #define __Pyx_sst_abs(__Pyx_sst_abs542,19051 + #define __Pyx_sst_abs(__Pyx_sst_abs544,19113 +#define __Pyx_PyByteArray_FromString(__Pyx_PyByteArray_FromString548,19335 +#define __Pyx_PyByteArray_FromStringAndSize(__Pyx_PyByteArray_FromStringAndSize549,19445 +#define __Pyx_PyBytes_FromString __Pyx_PyBytes_FromString550,19544 +#define __Pyx_PyBytes_FromStringAndSize __Pyx_PyBytes_FromStringAndSize551,19603 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString554,19766 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize555,19833 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString557,19913 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize558,19982 +#define __Pyx_PyObject_AsSString(__Pyx_PyObject_AsSString560,20065 +#define __Pyx_PyObject_AsUString(__Pyx_PyObject_AsUString561,20148 +#define __Pyx_PyObject_FromCString(__Pyx_PyObject_FromCString562,20233 +#define __Pyx_PyBytes_FromCString(__Pyx_PyBytes_FromCString563,20314 +#define __Pyx_PyByteArray_FromCString(__Pyx_PyByteArray_FromCString564,20394 +#define __Pyx_PyStr_FromCString(__Pyx_PyStr_FromCString565,20482 +#define __Pyx_PyUnicode_FromCString(__Pyx_PyUnicode_FromCString566,20560 +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)__Pyx_Py_UNICODE_strlen568,20667 +#define __Pyx_Py_UNICODE_strlen __Pyx_Py_UNICODE_strlen575,20842 +#define __Pyx_PyUnicode_FromUnicode(__Pyx_PyUnicode_FromUnicode577,20899 +#define __Pyx_PyUnicode_FromUnicodeAndLength __Pyx_PyUnicode_FromUnicodeAndLength578,20997 +#define __Pyx_PyUnicode_AsUnicode __Pyx_PyUnicode_AsUnicode579,21064 +#define __Pyx_NewRef(__Pyx_NewRef580,21129 +#define __Pyx_Owned_Py_None(__Pyx_Owned_Py_None581,21177 +#define __Pyx_PyBool_FromLong(__Pyx_PyBool_FromLong582,21230 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble588,21609 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble590,21718 +#define __pyx_PyFloat_AsFloat(__pyx_PyFloat_AsFloat592,21779 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int594,21874 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int596,21970 +#define __Pyx_PyNumber_Float(__Pyx_PyNumber_Float598,22065 +static int __Pyx_sys_getdefaultencoding_not_ascii;__Pyx_sys_getdefaultencoding_not_ascii600,22226 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params601,22277 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize646,24006 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize648,24107 +static char* __PYX_DEFAULT_STRING_ENCODING;__PYX_DEFAULT_STRING_ENCODING650,24274 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params651,24318 + #define likely(likely677,25212 + #define unlikely(unlikely678,25261 + #define likely(likely680,25346 + #define unlikely(unlikely681,25372 +static PyObject *__pyx_m;__pyx_m684,25421 +static PyObject *__pyx_d;__pyx_d685,25447 +static PyObject *__pyx_b;__pyx_b686,25473 +static PyObject *__pyx_empty_tuple;__pyx_empty_tuple687,25499 +static PyObject *__pyx_empty_bytes;__pyx_empty_bytes688,25535 +static PyObject *__pyx_empty_unicode;__pyx_empty_unicode689,25571 +static int __pyx_lineno;__pyx_lineno690,25609 +static int __pyx_clineno = 0;__pyx_clineno691,25634 +static const char * __pyx_cfilenm= __FILE__;__pyx_cfilenm692,25664 +static const char *__pyx_filename;__pyx_filename693,25709 + #define CYTHON_CCOMPLEX CYTHON_CCOMPLEX698,25821 + #define CYTHON_CCOMPLEX CYTHON_CCOMPLEX700,25879 + #define CYTHON_CCOMPLEX CYTHON_CCOMPLEX702,25917 + #undef _Complex_I_Complex_I713,26162 + #define _Complex_I _Complex_I714,26182 +static const char *__pyx_f[] = {__pyx_f718,26218 +#define IS_UNSIGNED(IS_UNSIGNED730,26456 +#define __PYX_BUF_FLAGS_PACKED_STRUCT __PYX_BUF_FLAGS_PACKED_STRUCT732,26527 + const char* name;name734,26591 + struct __Pyx_StructField_* fields;fields735,26611 + size_t size;size736,26648 + size_t arraysize[8];arraysize737,26663 + int ndim;ndim738,26686 + char typegroup;typegroup739,26698 + char is_unsigned;is_unsigned740,26716 + int flags;flags741,26736 +} __Pyx_TypeInfo;__Pyx_TypeInfo742,26749 +typedef struct __Pyx_StructField_ {__Pyx_StructField_743,26767 + __Pyx_TypeInfo* type;type744,26803 + const char* name;name745,26827 + size_t offset;offset746,26847 +} __Pyx_StructField;__Pyx_StructField747,26864 + __Pyx_StructField* field;field749,26902 + size_t parent_offset;parent_offset750,26930 +} __Pyx_BufFmt_StackElem;__Pyx_BufFmt_StackElem751,26954 + __Pyx_StructField root;root753,26997 + __Pyx_BufFmt_StackElem* head;head754,27023 + size_t fmt_offset;fmt_offset755,27055 + size_t new_count, enc_count;new_count756,27076 + size_t new_count, enc_count;enc_count756,27076 + size_t struct_alignment;struct_alignment757,27107 + int is_complex;is_complex758,27134 + char enc_type;enc_type759,27152 + char new_packmode;new_packmode760,27169 + char enc_packmode;enc_packmode761,27190 + char is_valid_array;is_valid_array762,27211 +} __Pyx_BufFmt_Context;__Pyx_BufFmt_Context763,27234 + struct __pyx_memoryview_obj *memview;memview768,27336 + char *data;data769,27376 + Py_ssize_t shape[8];shape770,27390 + Py_ssize_t strides[8];strides771,27413 + Py_ssize_t suboffsets[8];suboffsets772,27438 +} __Pyx_memviewslice;__Pyx_memviewslice773,27466 + #define CYTHON_ATOMICS CYTHON_ATOMICS778,27554 +#define __pyx_atomic_int_type __pyx_atomic_int_type780,27590 + #define __pyx_atomic_incr_aligned(__pyx_atomic_incr_aligned784,27799 + #define __pyx_atomic_decr_aligned(__pyx_atomic_decr_aligned785,27881 + #undef __pyx_atomic_int_type__pyx_atomic_int_type791,28114 + #define __pyx_atomic_int_type __pyx_atomic_int_type792,28147 + #define __pyx_atomic_incr_aligned(__pyx_atomic_incr_aligned793,28186 + #define __pyx_atomic_decr_aligned(__pyx_atomic_decr_aligned794,28265 + #define __pyx_atomic_incr_aligned(__pyx_atomic_incr_aligned799,28508 + #define __pyx_atomic_decr_aligned(__pyx_atomic_decr_aligned800,28588 + #undef CYTHON_ATOMICSCYTHON_ATOMICS805,28755 + #define CYTHON_ATOMICS CYTHON_ATOMICS806,28781 +typedef volatile __pyx_atomic_int_type __pyx_atomic_int;__pyx_atomic_int811,28896 + #define __pyx_add_acquisition_count(__pyx_add_acquisition_count813,28972 + #define __pyx_sub_acquisition_count(__pyx_sub_acquisition_count815,29116 + #define __pyx_add_acquisition_count(__pyx_add_acquisition_count818,29265 + #define __pyx_sub_acquisition_count(__pyx_sub_acquisition_count820,29417 +typedef long __pyx_t_6pyisda_4date_TDate;__pyx_t_6pyisda_4date_TDate832,29718 +typedef npy_int8 __pyx_t_5numpy_int8_t;__pyx_t_5numpy_int8_t841,30053 +typedef npy_int16 __pyx_t_5numpy_int16_t;__pyx_t_5numpy_int16_t850,30364 +typedef npy_int32 __pyx_t_5numpy_int32_t;__pyx_t_5numpy_int32_t859,30709 +typedef npy_int64 __pyx_t_5numpy_int64_t;__pyx_t_5numpy_int64_t868,31057 +typedef npy_uint8 __pyx_t_5numpy_uint8_t;__pyx_t_5numpy_uint8_t877,31375 +typedef npy_uint16 __pyx_t_5numpy_uint16_t;__pyx_t_5numpy_uint16_t886,31692 +typedef npy_uint32 __pyx_t_5numpy_uint32_t;__pyx_t_5numpy_uint32_t895,32044 +typedef npy_uint64 __pyx_t_5numpy_uint64_t;__pyx_t_5numpy_uint64_t904,32399 +typedef npy_float32 __pyx_t_5numpy_float32_t;__pyx_t_5numpy_float32_t913,32725 +typedef npy_float64 __pyx_t_5numpy_float64_t;__pyx_t_5numpy_float64_t922,33054 +typedef npy_long __pyx_t_5numpy_int_t;__pyx_t_5numpy_int_t931,33439 +typedef npy_longlong __pyx_t_5numpy_long_t;__pyx_t_5numpy_long_t940,33771 +typedef npy_longlong __pyx_t_5numpy_longlong_t;__pyx_t_5numpy_longlong_t949,34086 +typedef npy_ulong __pyx_t_5numpy_uint_t;__pyx_t_5numpy_uint_t958,34412 +typedef npy_ulonglong __pyx_t_5numpy_ulong_t;__pyx_t_5numpy_ulong_t967,34697 +typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t;__pyx_t_5numpy_ulonglong_t976,35017 +typedef npy_intp __pyx_t_5numpy_intp_t;__pyx_t_5numpy_intp_t985,35311 +typedef npy_uintp __pyx_t_5numpy_uintp_t;__pyx_t_5numpy_uintp_t994,35591 +typedef npy_double __pyx_t_5numpy_float_t;__pyx_t_5numpy_float_t1003,35911 +typedef npy_double __pyx_t_5numpy_double_t;__pyx_t_5numpy_double_t1012,36201 +typedef npy_longdouble __pyx_t_5numpy_longdouble_t;__pyx_t_5numpy_longdouble_t1021,36525 +typedef int __pyx_t_6pyisda_4legs_TBoolean;__pyx_t_6pyisda_4legs_TBoolean1030,36722 + typedef ::std::complex< float > __pyx_t_float_complex;__pyx_t_float_complex1034,36832 + typedef float _Complex __pyx_t_float_complex;__pyx_t_float_complex1036,36899 + typedef struct { float real, imag; } __pyx_t_float_complex;real1039,36964 + typedef struct { float real, imag; } __pyx_t_float_complex;imag1039,36964 + typedef struct { float real, imag; } __pyx_t_float_complex;__pyx_t_float_complex1039,36964 + typedef ::std::complex< double > __pyx_t_double_complex;__pyx_t_double_complex1046,37193 + typedef double _Complex __pyx_t_double_complex;__pyx_t_double_complex1048,37262 + typedef struct { double real, imag; } __pyx_t_double_complex;real1051,37329 + typedef struct { double real, imag; } __pyx_t_double_complex;imag1051,37329 + typedef struct { double real, imag; } __pyx_t_double_complex;__pyx_t_double_complex1051,37329 +enum __pyx_t_6pyisda_4date_DCC {__pyx_t_6pyisda_4date_DCC1074,38057 + __pyx_e_6pyisda_4date_ACT_365 = 1L,__pyx_e_6pyisda_4date_ACT_3651075,38090 + __pyx_e_6pyisda_4date_ACT_365F = 2L,__pyx_e_6pyisda_4date_ACT_365F1076,38128 + __pyx_e_6pyisda_4date_ACT_360 = 3L__pyx_e_6pyisda_4date_ACT_3601077,38167 +typedef npy_cfloat __pyx_t_5numpy_cfloat_t;__pyx_t_5numpy_cfloat_t1087,38496 +typedef npy_cdouble __pyx_t_5numpy_cdouble_t;__pyx_t_5numpy_cdouble_t1096,38793 +typedef npy_clongdouble __pyx_t_5numpy_clongdouble_t;__pyx_t_5numpy_clongdouble_t1105,39126 +typedef npy_cdouble __pyx_t_5numpy_complex_t;__pyx_t_5numpy_complex_t1114,39444 +enum __pyx_t_6pyisda_5curve_Basis {__pyx_t_6pyisda_5curve_Basis1123,39766 + __pyx_e_6pyisda_5curve_CONTINUOUS = 0x1388,__pyx_e_6pyisda_5curve_CONTINUOUS1124,39802 + __pyx_e_6pyisda_5curve_DISCOUNT_RATE = 0x200,__pyx_e_6pyisda_5curve_DISCOUNT_RATE1125,39848 + __pyx_e_6pyisda_5curve_SIMPLE_BASIS = 0,__pyx_e_6pyisda_5curve_SIMPLE_BASIS1126,39896 + __pyx_e_6pyisda_5curve_ANNUAL_BASIS = 1,__pyx_e_6pyisda_5curve_ANNUAL_BASIS1127,39939 + __pyx_e_6pyisda_5curve_DISCOUNT_FACTOR = -2L__pyx_e_6pyisda_5curve_DISCOUNT_FACTOR1128,39982 +struct __pyx_obj_6pyisda_5curve_Curve {__pyx_obj_6pyisda_5curve_Curve1138,40182 + std::shared_ptr<TCurve> _thisptr;_thisptr1140,40238 +struct __pyx_obj_6pyisda_5curve_YieldCurve {__pyx_obj_6pyisda_5curve_YieldCurve1151,40462 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base1152,40507 + TDate *_dates;_dates1153,40559 + size_t _ninstr;_ninstr1154,40576 +struct __pyx_obj_6pyisda_5curve_SpreadCurve {__pyx_obj_6pyisda_5curve_SpreadCurve1165,40732 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base1166,40778 +struct __pyx_obj_6pyisda_4legs_ContingentLeg {__pyx_obj_6pyisda_4legs_ContingentLeg1177,40997 + TContingentLeg *_thisptr;_thisptr1179,41060 +struct __pyx_obj_6pyisda_4legs_FeeLeg {__pyx_obj_6pyisda_4legs_FeeLeg1189,41204 + TFeeLeg *_thisptr;_thisptr1191,41260 +struct __pyx_array_obj {__pyx_array_obj1202,41411 + struct __pyx_vtabstruct_array *__pyx_vtab;__pyx_vtab1204,41452 + char *data;data1205,41497 + Py_ssize_t len;len1206,41511 + char *format;format1207,41529 + int ndim;ndim1208,41545 + Py_ssize_t *_shape;_shape1209,41557 + Py_ssize_t *_strides;_strides1210,41579 + Py_ssize_t itemsize;itemsize1211,41603 + PyObject *mode;mode1212,41626 + PyObject *_format;_format1213,41644 + void (*callback_free_data)(void *);callback_free_data1214,41665 + int free_data;free_data1215,41703 + int dtype_is_object;dtype_is_object1216,41720 +struct __pyx_MemviewEnum_obj {__pyx_MemviewEnum_obj1227,41926 + PyObject *name;name1229,41973 +struct __pyx_memoryview_obj {__pyx_memoryview_obj1240,42149 + struct __pyx_vtabstruct_memoryview *__pyx_vtab;__pyx_vtab1242,42195 + PyObject *obj;obj1243,42245 + PyObject *_size;_size1244,42262 + PyObject *_array_interface;_array_interface1245,42281 + PyThread_type_lock lock;lock1246,42311 + __pyx_atomic_int acquisition_count[2];acquisition_count1247,42338 + __pyx_atomic_int *acquisition_count_aligned_p;acquisition_count_aligned_p1248,42379 + Py_buffer view;view1249,42428 + int flags;flags1250,42446 + int dtype_is_object;dtype_is_object1251,42459 + __Pyx_TypeInfo *typeinfo;typeinfo1252,42482 +struct __pyx_memoryviewslice_obj {__pyx_memoryviewslice_obj1263,42724 + struct __pyx_memoryview_obj __pyx_base;__pyx_base1264,42759 + __Pyx_memviewslice from_slice;from_slice1265,42801 + PyObject *from_object;from_object1266,42834 + PyObject *(*to_object_func)(char *);to_object_func1267,42859 + int (*to_dtype_func)(char *, PyObject *);to_dtype_func1268,42898 +struct __pyx_vtabstruct_array {__pyx_vtabstruct_array1281,43074 + PyObject *(*get_memview)(struct __pyx_array_obj *);get_memview1282,43106 +static struct __pyx_vtabstruct_array *__pyx_vtabptr_array;__pyx_vtabptr_array1284,43163 +struct __pyx_vtabstruct_memoryview {__pyx_vtabstruct_memoryview1295,43378 + char *(*get_item_pointer)(struct __pyx_memoryview_obj *, PyObject *);get_item_pointer1296,43415 + PyObject *(*is_slice)(struct __pyx_memoryview_obj *, PyObject *);is_slice1297,43487 + PyObject *(*setitem_slice_assignment)(struct __pyx_memoryview_obj *, PyObject *, PyObject *);setitem_slice_assignment1298,43555 + PyObject *(*setitem_slice_assign_scalar)(struct __pyx_memoryview_obj *, struct __pyx_memoryview_obj *, PyObject *);setitem_slice_assign_scalar1299,43651 + PyObject *(*setitem_indexed)(struct __pyx_memoryview_obj *, PyObject *, PyObject *);setitem_indexed1300,43769 + PyObject *(*convert_item_to_object)(struct __pyx_memoryview_obj *, char *);convert_item_to_object1301,43856 + PyObject *(*assign_item_from_object)(struct __pyx_memoryview_obj *, char *, PyObject *);assign_item_from_object1302,43934 +static struct __pyx_vtabstruct_memoryview *__pyx_vtabptr_memoryview;__pyx_vtabptr_memoryview1304,44028 +struct __pyx_vtabstruct__memoryviewslice {__pyx_vtabstruct__memoryviewslice1315,44309 + struct __pyx_vtabstruct_memoryview __pyx_base;__pyx_base1316,44352 +static struct __pyx_vtabstruct__memoryviewslice *__pyx_vtabptr__memoryviewslice;__pyx_vtabptr__memoryviewslice1318,44404 + #define CYTHON_REFNANNY CYTHON_REFNANNY1323,44573 + void (*INCREF)(void*, PyObject*, int);INCREF1327,44647 + void (*DECREF)(void*, PyObject*, int);DECREF1328,44690 + void (*GOTREF)(void*, PyObject*, int);GOTREF1329,44733 + void (*GIVEREF)(void*, PyObject*, int);GIVEREF1330,44776 + void* (*SetupContext)(const char*, int, const char*);SetupContext1331,44820 + void (*FinishContext)(void**);FinishContext1332,44878 + } __Pyx_RefNannyAPIStruct;__Pyx_RefNannyAPIStruct1333,44913 + static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;__Pyx_RefNanny1334,44942 + #define __Pyx_RefNannyDeclarations __Pyx_RefNannyDeclarations1336,45079 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext1338,45164 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext1347,45600 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext1350,45748 + #define __Pyx_INCREF(__Pyx_INCREF1352,45846 + #define __Pyx_DECREF(__Pyx_DECREF1353,45939 + #define __Pyx_GOTREF(__Pyx_GOTREF1354,46032 + #define __Pyx_GIVEREF(__Pyx_GIVEREF1355,46125 + #define __Pyx_XINCREF(__Pyx_XINCREF1356,46219 + #define __Pyx_XDECREF(__Pyx_XDECREF1357,46298 + #define __Pyx_XGOTREF(__Pyx_XGOTREF1358,46377 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF1359,46456 + #define __Pyx_RefNannyDeclarations__Pyx_RefNannyDeclarations1361,46541 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext1362,46578 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext1363,46634 + #define __Pyx_INCREF(__Pyx_INCREF1364,46674 + #define __Pyx_DECREF(__Pyx_DECREF1365,46713 + #define __Pyx_GOTREF(__Pyx_GOTREF1366,46752 + #define __Pyx_GIVEREF(__Pyx_GIVEREF1367,46778 + #define __Pyx_XINCREF(__Pyx_XINCREF1368,46805 + #define __Pyx_XDECREF(__Pyx_XDECREF1369,46846 + #define __Pyx_XGOTREF(__Pyx_XGOTREF1370,46887 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF1371,46914 +#define __Pyx_XDECREF_SET(__Pyx_XDECREF_SET1373,46949 +#define __Pyx_DECREF_SET(__Pyx_DECREF_SET1377,47080 +#define __Pyx_CLEAR(__Pyx_CLEAR1381,47209 +#define __Pyx_XCLEAR(__Pyx_XCLEAR1382,47313 +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {__Pyx_PyObject_GetAttrStr1386,47493 +#define __Pyx_PyObject_GetAttrStr(__Pyx_PyObject_GetAttrStr1397,47890 +#define __Pyx_PyCFunction_FastCall(__Pyx_PyCFunction_FastCall1429,49075 +#define __Pyx_PyFunction_FastCall(__Pyx_PyFunction_FastCall1434,49210 +#define __Pyx_PyFunction_FastCallDict(__Pyx_PyFunction_FastCallDict1439,49482 +#define __Pyx_PyObject_Call(__Pyx_PyObject_Call1447,49774 +#define __Pyx_BufPtrStrided1d(__Pyx_BufPtrStrided1d1467,50672 +#define __Pyx_PyThreadState_declare __Pyx_PyThreadState_declare1470,50808 +#define __Pyx_PyThreadState_assign __Pyx_PyThreadState_assign1471,50874 +#define __Pyx_PyThreadState_declare__Pyx_PyThreadState_declare1473,50952 +#define __Pyx_PyThreadState_assign__Pyx_PyThreadState_assign1474,50988 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState1479,51090 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState1480,51204 +#define __Pyx_ErrRestore(__Pyx_ErrRestore1481,51316 +#define __Pyx_ErrFetch(__Pyx_ErrFetch1482,51414 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState1486,51759 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState1487,51842 +#define __Pyx_ErrRestore(__Pyx_ErrRestore1488,51921 +#define __Pyx_ErrFetch(__Pyx_ErrFetch1489,51995 +#define __Pyx_BUF_MAX_NDIMS __Pyx_BUF_MAX_NDIMS1496,52219 +#define __Pyx_MEMVIEW_DIRECT __Pyx_MEMVIEW_DIRECT1497,52265 +#define __Pyx_MEMVIEW_PTR __Pyx_MEMVIEW_PTR1498,52298 +#define __Pyx_MEMVIEW_FULL __Pyx_MEMVIEW_FULL1499,52331 +#define __Pyx_MEMVIEW_CONTIG __Pyx_MEMVIEW_CONTIG1500,52364 +#define __Pyx_MEMVIEW_STRIDED __Pyx_MEMVIEW_STRIDED1501,52397 +#define __Pyx_MEMVIEW_FOLLOW __Pyx_MEMVIEW_FOLLOW1502,52431 +#define __Pyx_IS_C_CONTIG __Pyx_IS_C_CONTIG1503,52465 +#define __Pyx_IS_F_CONTIG __Pyx_IS_F_CONTIG1504,52493 +#define __pyx_get_slice_count_pointer(__pyx_get_slice_count_pointer1514,52990 +#define __pyx_get_slice_count(__pyx_get_slice_count1515,53076 +#define __PYX_INC_MEMVIEW(__PYX_INC_MEMVIEW1516,53157 +#define __PYX_XDEC_MEMVIEW(__PYX_XDEC_MEMVIEW1517,53245 +static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {__Pyx_PyDict_GetItem1523,53570 + #define __Pyx_PyDict_GetItem(__Pyx_PyDict_GetItem1539,54016 +#define __Pyx_ExceptionSave(__Pyx_ExceptionSave1553,54482 +#define __Pyx_ExceptionReset(__Pyx_ExceptionReset1555,54701 +#define __Pyx_ExceptionSave(__Pyx_ExceptionSave1558,54926 +#define __Pyx_ExceptionReset(__Pyx_ExceptionReset1559,55007 +#define __Pyx_PyErr_ExceptionMatches(__Pyx_PyErr_ExceptionMatches1564,55159 +#define __Pyx_PyErr_ExceptionMatches(__Pyx_PyErr_ExceptionMatches1567,55362 +#define __Pyx_GetException(__Pyx_GetException1572,55495 +#define __Pyx_PyString_Equals __Pyx_PyString_Equals1589,56115 +#define __Pyx_PyString_Equals __Pyx_PyString_Equals1591,56174 +#define UNARY_NEG_WOULD_OVERFLOW(UNARY_NEG_WOULD_OVERFLOW1598,56359 +#define __Pyx_ExceptionSwap(__Pyx_ExceptionSwap1614,57101 +#define __Pyx_GetItemInt(__Pyx_GetItemInt1624,57553 +#define __Pyx_GetItemInt_List(__Pyx_GetItemInt_List1629,57937 +#define __Pyx_GetItemInt_Tuple(__Pyx_GetItemInt_Tuple1635,58430 +static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) {__Pyx_ListComp_Append1648,59410 +#define __Pyx_ListComp_Append(__Pyx_ListComp_Append1660,59765 +#define __Pyx_PyInt_AddObjC(__Pyx_PyInt_AddObjC1667,59980 +static CYTHON_INLINE int __Pyx_PyList_Extend(PyObject* L, PyObject* v) {__Pyx_PyList_Extend1672,60138 +static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {__Pyx_PyList_Append1686,60546 +#define __Pyx_PyList_Append(__Pyx_PyList_Append1698,60935 + #define __PYX_FORCE_INIT_THREADS __PYX_FORCE_INIT_THREADS1706,61152 + PyCodeObject* code_object;code_object1722,61632 + int code_line;code_line1723,61663 +} __Pyx_CodeObjectCacheEntry;__Pyx_CodeObjectCacheEntry1724,61682 +struct __Pyx_CodeObjectCache {__Pyx_CodeObjectCache1725,61712 + int count;count1726,61743 + int max_count;max_count1727,61758 + __Pyx_CodeObjectCacheEntry* entries;entries1728,61777 +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};__pyx_code_cache1730,61821 + #define __Pyx_GetBuffer __Pyx_GetBuffer1743,62448 + #define __Pyx_ReleaseBuffer __Pyx_ReleaseBuffer1744,62495 + Py_ssize_t shape, strides, suboffsets;shape1750,62602 + Py_ssize_t shape, strides, suboffsets;strides1750,62602 + Py_ssize_t shape, strides, suboffsets;suboffsets1750,62602 +} __Pyx_Buf_DimInfo;__Pyx_Buf_DimInfo1751,62643 + size_t refcount;refcount1753,62681 + Py_buffer pybuffer;pybuffer1754,62700 +} __Pyx_Buffer;__Pyx_Buffer1755,62722 + __Pyx_Buffer *rcbuffer;rcbuffer1757,62755 + char *data;data1758,62781 + __Pyx_Buf_DimInfo diminfo[8];diminfo1759,62795 +} __Pyx_LocalBuf_ND;__Pyx_LocalBuf_ND1760,62827 +static Py_ssize_t __Pyx_zeros[] = {0, 0, 0, 0, 0, 0, 0, 0};__Pyx_zeros1763,62866 +static Py_ssize_t __Pyx_minusones[] = {-1, -1, -1, -1, -1, -1, -1, -1};__Pyx_minusones1764,62926 + #define __Pyx_CREAL(__Pyx_CREAL1805,64454 + #define __Pyx_CIMAG(__Pyx_CIMAG1806,64494 + #define __Pyx_CREAL(__Pyx_CREAL1808,64542 + #define __Pyx_CIMAG(__Pyx_CIMAG1809,64583 + #define __Pyx_CREAL(__Pyx_CREAL1812,64639 + #define __Pyx_CIMAG(__Pyx_CIMAG1813,64677 + #define __Pyx_SET_CREAL(__Pyx_SET_CREAL1817,64926 + #define __Pyx_SET_CIMAG(__Pyx_SET_CIMAG1818,64973 + #define __Pyx_SET_CREAL(__Pyx_SET_CREAL1820,65026 + #define __Pyx_SET_CIMAG(__Pyx_SET_CIMAG1821,65080 + #define __Pyx_c_eq_float(__Pyx_c_eq_float1826,65185 + #define __Pyx_c_sum_float(__Pyx_c_sum_float1827,65233 + #define __Pyx_c_diff_float(__Pyx_c_diff_float1828,65280 + #define __Pyx_c_prod_float(__Pyx_c_prod_float1829,65327 + #define __Pyx_c_quot_float(__Pyx_c_quot_float1830,65374 + #define __Pyx_c_neg_float(__Pyx_c_neg_float1831,65421 + #define __Pyx_c_is_zero_float(__Pyx_c_is_zero_float1833,65486 + #define __Pyx_c_conj_float(__Pyx_c_conj_float1834,65539 + #define __Pyx_c_abs_float(__Pyx_c_abs_float1836,65603 + #define __Pyx_c_pow_float(__Pyx_c_pow_float1837,65660 + #define __Pyx_c_is_zero_float(__Pyx_c_is_zero_float1840,65739 + #define __Pyx_c_conj_float(__Pyx_c_conj_float1841,65785 + #define __Pyx_c_abs_float(__Pyx_c_abs_float1843,65843 + #define __Pyx_c_pow_float(__Pyx_c_pow_float1844,65895 + #define __Pyx_c_eq_double(__Pyx_c_eq_double1864,67038 + #define __Pyx_c_sum_double(__Pyx_c_sum_double1865,67087 + #define __Pyx_c_diff_double(__Pyx_c_diff_double1866,67135 + #define __Pyx_c_prod_double(__Pyx_c_prod_double1867,67183 + #define __Pyx_c_quot_double(__Pyx_c_quot_double1868,67231 + #define __Pyx_c_neg_double(__Pyx_c_neg_double1869,67279 + #define __Pyx_c_is_zero_double(__Pyx_c_is_zero_double1871,67345 + #define __Pyx_c_conj_double(__Pyx_c_conj_double1872,67400 + #define __Pyx_c_abs_double(__Pyx_c_abs_double1874,67465 + #define __Pyx_c_pow_double(__Pyx_c_pow_double1875,67523 + #define __Pyx_c_is_zero_double(__Pyx_c_is_zero_double1878,67603 + #define __Pyx_c_conj_double(__Pyx_c_conj_double1879,67650 + #define __Pyx_c_abs_double(__Pyx_c_abs_double1881,67708 + #define __Pyx_c_pow_double(__Pyx_c_pow_double1882,67760 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString1937,70045 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString1939,70117 +static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0;__pyx_ptype_7cpython_4type_type1971,72218 +static PyTypeObject *__pyx_ptype_7cpython_4bool_bool = 0;__pyx_ptype_7cpython_4bool_bool2004,73038 +static PyTypeObject *__pyx_ptype_7cpython_7complex_complex = 0;__pyx_ptype_7cpython_7complex_complex2013,73287 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_date = 0;__pyx_ptype_7cpython_8datetime_date2052,74282 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_time = 0;__pyx_ptype_7cpython_8datetime_time2053,74344 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_datetime = 0;__pyx_ptype_7cpython_8datetime_datetime2054,74406 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_timedelta = 0;__pyx_ptype_7cpython_8datetime_timedelta2055,74472 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_tzinfo = 0;__pyx_ptype_7cpython_8datetime_tzinfo2056,74539 +static long (*__pyx_f_6pyisda_4date_dcc)(PyObject *); /*proto*/__pyx_f_6pyisda_4date_dcc2059,74649 +static __pyx_t_6pyisda_4date_TDate (*__pyx_f_6pyisda_4date_pydate_to_TDate)(PyDateTime_Date *); /*proto*/__pyx_f_6pyisda_4date_pydate_to_TDate2060,74713 +static PyTypeObject *__pyx_ptype_5numpy_dtype = 0;__pyx_ptype_5numpy_dtype2067,74945 +static PyTypeObject *__pyx_ptype_5numpy_flatiter = 0;__pyx_ptype_5numpy_flatiter2068,74996 +static PyTypeObject *__pyx_ptype_5numpy_broadcast = 0;__pyx_ptype_5numpy_broadcast2069,75050 +static PyTypeObject *__pyx_ptype_5numpy_ndarray = 0;__pyx_ptype_5numpy_ndarray2070,75105 +static PyTypeObject *__pyx_ptype_5numpy_ufunc = 0;__pyx_ptype_5numpy_ufunc2071,75158 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_Curve = 0;__pyx_ptype_6pyisda_5curve_Curve2080,75526 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_YieldCurve = 0;__pyx_ptype_6pyisda_5curve_YieldCurve2081,75585 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_SpreadCurve = 0;__pyx_ptype_6pyisda_5curve_SpreadCurve2082,75649 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_ContingentLeg = 0;__pyx_ptype_6pyisda_4legs_ContingentLeg2087,75808 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_FeeLeg = 0;__pyx_ptype_6pyisda_4legs_FeeLeg2088,75874 +static PyTypeObject *__pyx_array_type = 0;__pyx_array_type2095,76073 +static PyTypeObject *__pyx_MemviewEnum_type = 0;__pyx_MemviewEnum_type2096,76116 +static PyTypeObject *__pyx_memoryview_type = 0;__pyx_memoryview_type2097,76165 +static PyTypeObject *__pyx_memoryviewslice_type = 0;__pyx_memoryviewslice_type2098,76213 +static PyObject *generic = 0;generic2099,76266 +static PyObject *strided = 0;strided2100,76296 +static PyObject *indirect = 0;indirect2101,76326 +static PyObject *contiguous = 0;contiguous2102,76357 +static PyObject *indirect_contiguous = 0;indirect_contiguous2103,76390 +static int __pyx_memoryview_thread_locks_used;__pyx_memoryview_thread_locks_used2104,76432 +static PyThread_type_lock __pyx_memoryview_thread_locks[8];__pyx_memoryview_thread_locks2105,76479 +static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_5numpy_float_t = { "float_t", NULL, sizeof(__pyx_t_5numpy_float_t), { 0 }, 0, 'R', 0, 0 };__Pyx_TypeInfo_nn___pyx_t_5numpy_float_t2138,79687 +static __Pyx_TypeInfo __Pyx_TypeInfo_double = { "double", NULL, sizeof(double), { 0 }, 0, 'R', 0, 0 };__Pyx_TypeInfo_double2139,79826 +#define __Pyx_MODULE_NAME __Pyx_MODULE_NAME2140,79929 +int __pyx_module_is_main_pyisda__flat_hazard = 0;__pyx_module_is_main_pyisda__flat_hazard2141,79976 +static PyObject *__pyx_builtin_range;__pyx_builtin_range2144,80072 +static PyObject *__pyx_builtin_ValueError;__pyx_builtin_ValueError2145,80110 +static PyObject *__pyx_builtin_RuntimeError;__pyx_builtin_RuntimeError2146,80153 +static PyObject *__pyx_builtin_ImportError;__pyx_builtin_ImportError2147,80198 +static PyObject *__pyx_builtin_MemoryError;__pyx_builtin_MemoryError2148,80242 +static PyObject *__pyx_builtin_enumerate;__pyx_builtin_enumerate2149,80286 +static PyObject *__pyx_builtin_Ellipsis;__pyx_builtin_Ellipsis2150,80328 +static PyObject *__pyx_builtin_TypeError;__pyx_builtin_TypeError2151,80369 +static PyObject *__pyx_builtin_id;__pyx_builtin_id2152,80411 +static PyObject *__pyx_builtin_IndexError;__pyx_builtin_IndexError2153,80446 +static const char __pyx_k_O[] = "O";__pyx_k_O2154,80489 +static const char __pyx_k_c[] = "c";__pyx_k_c2155,80526 +static const char __pyx_k_h[] = "h";__pyx_k_h2156,80563 +static const char __pyx_k_i[] = "i";__pyx_k_i2157,80600 +static const char __pyx_k_hi[] = "hi";__pyx_k_hi2158,80637 +static const char __pyx_k_id[] = "id";__pyx_k_id2159,80676 +static const char __pyx_k_lo[] = "lo";__pyx_k_lo2160,80715 +static const char __pyx_k_np[] = "np";__pyx_k_np2161,80754 +static const char __pyx_k_pv[] = "pv";__pyx_k_pv2162,80793 +static const char __pyx_k_sc[] = "sc";__pyx_k_sc2163,80832 +static const char __pyx_k_yc[] = "yc";__pyx_k_yc2164,80871 +static const char __pyx_k_eta[] = "eta";__pyx_k_eta2165,80910 +static const char __pyx_k_obj[] = "obj";__pyx_k_obj2166,80951 +static const char __pyx_k_base[] = "base";__pyx_k_base2167,80992 +static const char __pyx_k_main[] = "__main__";__pyx_k_main2168,81035 +static const char __pyx_k_mode[] = "mode";__pyx_k_mode2169,81082 +static const char __pyx_k_name[] = "name";__pyx_k_name2170,81125 +static const char __pyx_k_ndim[] = "ndim";__pyx_k_ndim2171,81168 +static const char __pyx_k_pack[] = "pack";__pyx_k_pack2172,81211 +static const char __pyx_k_size[] = "size";__pyx_k_size2173,81254 +static const char __pyx_k_step[] = "step";__pyx_k_step2174,81297 +static const char __pyx_k_stop[] = "stop";__pyx_k_stop2175,81340 +static const char __pyx_k_test[] = "__test__";__pyx_k_test2176,81383 +static const char __pyx_k_ASCII[] = "ASCII";__pyx_k_ASCII2177,81430 +static const char __pyx_k_class[] = "__class__";__pyx_k_class2178,81475 +static const char __pyx_k_error[] = "error";__pyx_k_error2179,81524 +static const char __pyx_k_flags[] = "flags";__pyx_k_flags2180,81569 +static const char __pyx_k_guess[] = "guess";__pyx_k_guess2181,81614 +static const char __pyx_k_numpy[] = "numpy";__pyx_k_numpy2182,81659 +static const char __pyx_k_range[] = "range";__pyx_k_range2183,81704 +static const char __pyx_k_shape[] = "shape";__pyx_k_shape2184,81749 +static const char __pyx_k_start[] = "start";__pyx_k_start2185,81794 +static const char __pyx_k_encode[] = "encode";__pyx_k_encode2186,81839 +static const char __pyx_k_format[] = "format";__pyx_k_format2187,81886 +static const char __pyx_k_import[] = "__import__";__pyx_k_import2188,81933 +static const char __pyx_k_name_2[] = "__name__";__pyx_k_name_22189,81984 +static const char __pyx_k_params[] = "params";__pyx_k_params2190,82033 +static const char __pyx_k_pv_vec[] = "pv_vec";__pyx_k_pv_vec2191,82080 +static const char __pyx_k_struct[] = "struct";__pyx_k_struct2192,82127 +static const char __pyx_k_unpack[] = "unpack";__pyx_k_unpack2193,82174 +static const char __pyx_k_fee_leg[] = "fee_leg";__pyx_k_fee_leg2194,82221 +static const char __pyx_k_fortran[] = "fortran";__pyx_k_fortran2195,82270 +static const char __pyx_k_memview[] = "memview";__pyx_k_memview2196,82319 +static const char __pyx_k_spreads[] = "spreads";__pyx_k_spreads2197,82368 +static const char __pyx_k_Ellipsis[] = "Ellipsis";__pyx_k_Ellipsis2198,82417 +static const char __pyx_k_end_date[] = "end_date";__pyx_k_end_date2199,82468 +static const char __pyx_k_itemsize[] = "itemsize";__pyx_k_itemsize2200,82519 +static const char __pyx_k_nspreads[] = "nspreads";__pyx_k_nspreads2201,82570 +static const char __pyx_k_TypeError[] = "TypeError";__pyx_k_TypeError2202,82621 +static const char __pyx_k_enumerate[] = "enumerate";__pyx_k_enumerate2203,82674 +static const char __pyx_k_stub_type[] = "stub_type";__pyx_k_stub_type2204,82727 +static const char __pyx_k_IndexError[] = "IndexError";__pyx_k_IndexError2205,82780 +static const char __pyx_k_ValueError[] = "ValueError";__pyx_k_ValueError2206,82835 +static const char __pyx_k_empty_like[] = "empty_like";__pyx_k_empty_like2207,82890 +static const char __pyx_k_end_date_c[] = "end_date_c";__pyx_k_end_date_c2208,82945 +static const char __pyx_k_fixed_rate[] = "fixed_rate";__pyx_k_fixed_rate2209,83000 +static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__";__pyx_k_pyx_vtable2210,83055 +static const char __pyx_k_start_date[] = "start_date";__pyx_k_start_date2211,83114 +static const char __pyx_k_strike_vec[] = "strike_vec";__pyx_k_strike_vec2212,83169 +static const char __pyx_k_trade_date[] = "trade_date";__pyx_k_trade_date2213,83224 +static const char __pyx_k_value_date[] = "value_date";__pyx_k_value_date2214,83279 +static const char __pyx_k_ImportError[] = "ImportError";__pyx_k_ImportError2215,83334 +static const char __pyx_k_MemoryError[] = "MemoryError";__pyx_k_MemoryError2216,83391 +static const char __pyx_k_default_leg[] = "default_leg";__pyx_k_default_leg2217,83448 +static const char __pyx_k_RuntimeError[] = "RuntimeError";__pyx_k_RuntimeError2218,83505 +static const char __pyx_k_start_date_c[] = "start_date_c";__pyx_k_start_date_c2219,83564 +static const char __pyx_k_trade_date_c[] = "trade_date_c";__pyx_k_trade_date_c2220,83623 +static const char __pyx_k_value_date_c[] = "value_date_c";__pyx_k_value_date_c2221,83682 +static const char __pyx_k_zero_upfront[] = "zero_upfront";__pyx_k_zero_upfront2222,83741 +static const char __pyx_k_coupon_leg_pv[] = "coupon_leg_pv";__pyx_k_coupon_leg_pv2223,83800 +static const char __pyx_k_pyx_getbuffer[] = "__pyx_getbuffer";__pyx_k_pyx_getbuffer2224,83861 +static const char __pyx_k_recovery_rate[] = "recovery_rate";__pyx_k_recovery_rate2225,83924 +static const char __pyx_k_default_leg_pv[] = "default_leg_pv";__pyx_k_default_leg_pv2226,83985 +static const char __pyx_k_step_in_date_c[] = "step_in_date_c";__pyx_k_step_in_date_c2227,84048 +static const char __pyx_k_allocate_buffer[] = "allocate_buffer";__pyx_k_allocate_buffer2228,84111 +static const char __pyx_k_dtype_is_object[] = "dtype_is_object";__pyx_k_dtype_is_object2229,84176 +static const char __pyx_k_pyisda_flat_hazard[] = "pyisda.flat_hazard";__pyx_k_pyisda_flat_hazard2230,84241 +static const char __pyx_k_strided_and_direct[] = "<strided and direct>";__pyx_k_strided_and_direct2231,84312 +static const char __pyx_k_Something_went_wrong[] = "Something went wrong";__pyx_k_Something_went_wrong2232,84385 +static const char __pyx_k_strided_and_indirect[] = "<strided and indirect>";__pyx_k_strided_and_indirect2233,84460 +static const char __pyx_k_contiguous_and_direct[] = "<contiguous and direct>";__pyx_k_contiguous_and_direct2234,84537 +static const char __pyx_k_MemoryView_of_r_object[] = "<MemoryView of %r object>";__pyx_k_MemoryView_of_r_object2235,84616 +static const char __pyx_k_MemoryView_of_r_at_0x_x[] = "<MemoryView of %r at 0x%x>";__pyx_k_MemoryView_of_r_at_0x_x2236,84698 +static const char __pyx_k_contiguous_and_indirect[] = "<contiguous and indirect>";__pyx_k_contiguous_and_indirect2237,84782 +static const char __pyx_k_Cannot_index_with_type_s[] = "Cannot index with type '%s'";__pyx_k_Cannot_index_with_type_s2238,84865 +static const char __pyx_k_Invalid_shape_in_axis_d_d[] = "Invalid shape in axis %d: %d.";__pyx_k_Invalid_shape_in_axis_d_d2239,84951 +static const char __pyx_k_itemsize_0_for_cython_array[] = "itemsize <= 0 for cython.array";__pyx_k_itemsize_0_for_cython_array2240,85040 +static const char __pyx_k_ndarray_is_not_C_contiguous[] = "ndarray is not C contiguous";__pyx_k_ndarray_is_not_C_contiguous2241,85132 +static const char __pyx_k_unable_to_allocate_array_data[] = "unable to allocate array data.";__pyx_k_unable_to_allocate_array_data2242,85221 +static const char __pyx_k_strided_and_direct_or_indirect[] = "<strided and direct or indirect>";__pyx_k_strided_and_direct_or_indirect2243,85315 +static const char __pyx_k_home_guillaume_projects_code_py[] = "/home/guillaume/projects/code/python/pyisda/pyisda/flat_hazard.pyx";__pyx_k_home_guillaume_projects_code_py2244,85412 +static const char __pyx_k_numpy_core_multiarray_failed_to[] = "numpy.core.multiarray failed to import";__pyx_k_numpy_core_multiarray_failed_to2245,85544 +static const char __pyx_k_unknown_dtype_code_in_numpy_pxd[] = "unknown dtype code in numpy.pxd (%d)";__pyx_k_unknown_dtype_code_in_numpy_pxd2246,85648 +static const char __pyx_k_Buffer_view_does_not_expose_stri[] = "Buffer view does not expose strides";__pyx_k_Buffer_view_does_not_expose_stri2247,85750 +static const char __pyx_k_Can_only_create_a_buffer_that_is[] = "Can only create a buffer that is contiguous in memory.";__pyx_k_Can_only_create_a_buffer_that_is2248,85852 +static const char __pyx_k_Empty_shape_tuple_for_cython_arr[] = "Empty shape tuple for cython.array";__pyx_k_Empty_shape_tuple_for_cython_arr2249,85973 +static const char __pyx_k_Format_string_allocated_too_shor[] = "Format string allocated too short, see comment in numpy.pxd";__pyx_k_Format_string_allocated_too_shor2250,86074 +static const char __pyx_k_Indirect_dimensions_not_supporte[] = "Indirect dimensions not supported";__pyx_k_Indirect_dimensions_not_supporte2251,86200 +static const char __pyx_k_Invalid_mode_expected_c_or_fortr[] = "Invalid mode, expected 'c' or 'fortran', got %s";__pyx_k_Invalid_mode_expected_c_or_fortr2252,86300 +static const char __pyx_k_Non_native_byte_order_not_suppor[] = "Non-native byte order not supported";__pyx_k_Non_native_byte_order_not_suppor2253,86414 +static const char __pyx_k_Out_of_bounds_on_buffer_access_a[] = "Out of bounds on buffer access (axis %d)";__pyx_k_Out_of_bounds_on_buffer_access_a2254,86516 +static const char __pyx_k_Unable_to_convert_item_to_object[] = "Unable to convert item to object";__pyx_k_Unable_to_convert_item_to_object2255,86623 +static const char __pyx_k_got_differing_extents_in_dimensi[] = "got differing extents in dimension %d (got %d and %d)";__pyx_k_got_differing_extents_in_dimensi2256,86722 +static const char __pyx_k_ndarray_is_not_Fortran_contiguou[] = "ndarray is not Fortran contiguous";__pyx_k_ndarray_is_not_Fortran_contiguou2257,86842 +static const char __pyx_k_numpy_core_umath_failed_to_impor[] = "numpy.core.umath failed to import";__pyx_k_numpy_core_umath_failed_to_impor2258,86942 +static const char __pyx_k_unable_to_allocate_shape_and_str[] = "unable to allocate shape and strides.";__pyx_k_unable_to_allocate_shape_and_str2259,87042 +static const char __pyx_k_Format_string_allocated_too_shor_2[] = "Format string allocated too short.";__pyx_k_Format_string_allocated_too_shor_22260,87146 +static PyObject *__pyx_n_s_ASCII;__pyx_n_s_ASCII2261,87249 +static PyObject *__pyx_kp_s_Buffer_view_does_not_expose_stri;__pyx_kp_s_Buffer_view_does_not_expose_stri2262,87283 +static PyObject *__pyx_kp_s_Can_only_create_a_buffer_that_is;__pyx_kp_s_Can_only_create_a_buffer_that_is2263,87345 +static PyObject *__pyx_kp_s_Cannot_index_with_type_s;__pyx_kp_s_Cannot_index_with_type_s2264,87407 +static PyObject *__pyx_n_s_Ellipsis;__pyx_n_s_Ellipsis2265,87461 +static PyObject *__pyx_kp_s_Empty_shape_tuple_for_cython_arr;__pyx_kp_s_Empty_shape_tuple_for_cython_arr2266,87498 +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor;__pyx_kp_u_Format_string_allocated_too_shor2267,87560 +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor_2;__pyx_kp_u_Format_string_allocated_too_shor_22268,87622 +static PyObject *__pyx_n_s_ImportError;__pyx_n_s_ImportError2269,87686 +static PyObject *__pyx_n_s_IndexError;__pyx_n_s_IndexError2270,87726 +static PyObject *__pyx_kp_s_Indirect_dimensions_not_supporte;__pyx_kp_s_Indirect_dimensions_not_supporte2271,87765 +static PyObject *__pyx_kp_s_Invalid_mode_expected_c_or_fortr;__pyx_kp_s_Invalid_mode_expected_c_or_fortr2272,87827 +static PyObject *__pyx_kp_s_Invalid_shape_in_axis_d_d;__pyx_kp_s_Invalid_shape_in_axis_d_d2273,87889 +static PyObject *__pyx_n_s_MemoryError;__pyx_n_s_MemoryError2274,87944 +static PyObject *__pyx_kp_s_MemoryView_of_r_at_0x_x;__pyx_kp_s_MemoryView_of_r_at_0x_x2275,87984 +static PyObject *__pyx_kp_s_MemoryView_of_r_object;__pyx_kp_s_MemoryView_of_r_object2276,88037 +static PyObject *__pyx_kp_u_Non_native_byte_order_not_suppor;__pyx_kp_u_Non_native_byte_order_not_suppor2277,88089 +static PyObject *__pyx_n_b_O;__pyx_n_b_O2278,88151 +static PyObject *__pyx_kp_s_Out_of_bounds_on_buffer_access_a;__pyx_kp_s_Out_of_bounds_on_buffer_access_a2279,88181 +static PyObject *__pyx_n_s_RuntimeError;__pyx_n_s_RuntimeError2280,88243 +static PyObject *__pyx_kp_s_Something_went_wrong;__pyx_kp_s_Something_went_wrong2281,88284 +static PyObject *__pyx_n_s_TypeError;__pyx_n_s_TypeError2282,88334 +static PyObject *__pyx_kp_s_Unable_to_convert_item_to_object;__pyx_kp_s_Unable_to_convert_item_to_object2283,88372 +static PyObject *__pyx_n_s_ValueError;__pyx_n_s_ValueError2284,88434 +static PyObject *__pyx_n_s_allocate_buffer;__pyx_n_s_allocate_buffer2285,88473 +static PyObject *__pyx_n_s_base;__pyx_n_s_base2286,88517 +static PyObject *__pyx_n_s_c;__pyx_n_s_c2287,88550 +static PyObject *__pyx_n_u_c;__pyx_n_u_c2288,88580 +static PyObject *__pyx_n_s_class;__pyx_n_s_class2289,88610 +static PyObject *__pyx_kp_s_contiguous_and_direct;__pyx_kp_s_contiguous_and_direct2290,88644 +static PyObject *__pyx_kp_s_contiguous_and_indirect;__pyx_kp_s_contiguous_and_indirect2291,88695 +static PyObject *__pyx_n_s_coupon_leg_pv;__pyx_n_s_coupon_leg_pv2292,88748 +static PyObject *__pyx_n_s_default_leg;__pyx_n_s_default_leg2293,88790 +static PyObject *__pyx_n_s_default_leg_pv;__pyx_n_s_default_leg_pv2294,88830 +static PyObject *__pyx_n_s_dtype_is_object;__pyx_n_s_dtype_is_object2295,88873 +static PyObject *__pyx_n_s_empty_like;__pyx_n_s_empty_like2296,88917 +static PyObject *__pyx_n_s_encode;__pyx_n_s_encode2297,88956 +static PyObject *__pyx_n_s_end_date;__pyx_n_s_end_date2298,88991 +static PyObject *__pyx_n_s_end_date_c;__pyx_n_s_end_date_c2299,89028 +static PyObject *__pyx_n_s_enumerate;__pyx_n_s_enumerate2300,89067 +static PyObject *__pyx_n_s_error;__pyx_n_s_error2301,89105 +static PyObject *__pyx_n_s_eta;__pyx_n_s_eta2302,89139 +static PyObject *__pyx_n_s_fee_leg;__pyx_n_s_fee_leg2303,89171 +static PyObject *__pyx_n_s_fixed_rate;__pyx_n_s_fixed_rate2304,89207 +static PyObject *__pyx_n_s_flags;__pyx_n_s_flags2305,89246 +static PyObject *__pyx_n_s_format;__pyx_n_s_format2306,89280 +static PyObject *__pyx_n_s_fortran;__pyx_n_s_fortran2307,89315 +static PyObject *__pyx_n_u_fortran;__pyx_n_u_fortran2308,89351 +static PyObject *__pyx_kp_s_got_differing_extents_in_dimensi;__pyx_kp_s_got_differing_extents_in_dimensi2309,89387 +static PyObject *__pyx_n_s_guess;__pyx_n_s_guess2310,89449 +static PyObject *__pyx_n_s_h;__pyx_n_s_h2311,89483 +static PyObject *__pyx_n_s_hi;__pyx_n_s_hi2312,89513 +static PyObject *__pyx_kp_s_home_guillaume_projects_code_py;__pyx_kp_s_home_guillaume_projects_code_py2313,89544 +static PyObject *__pyx_n_s_i;__pyx_n_s_i2314,89605 +static PyObject *__pyx_n_s_id;__pyx_n_s_id2315,89635 +static PyObject *__pyx_n_s_import;__pyx_n_s_import2316,89666 +static PyObject *__pyx_n_s_itemsize;__pyx_n_s_itemsize2317,89701 +static PyObject *__pyx_kp_s_itemsize_0_for_cython_array;__pyx_kp_s_itemsize_0_for_cython_array2318,89738 +static PyObject *__pyx_n_s_lo;__pyx_n_s_lo2319,89795 +static PyObject *__pyx_n_s_main;__pyx_n_s_main2320,89826 +static PyObject *__pyx_n_s_memview;__pyx_n_s_memview2321,89859 +static PyObject *__pyx_n_s_mode;__pyx_n_s_mode2322,89895 +static PyObject *__pyx_n_s_name;__pyx_n_s_name2323,89928 +static PyObject *__pyx_n_s_name_2;__pyx_n_s_name_22324,89961 +static PyObject *__pyx_kp_u_ndarray_is_not_C_contiguous;__pyx_kp_u_ndarray_is_not_C_contiguous2325,89996 +static PyObject *__pyx_kp_u_ndarray_is_not_Fortran_contiguou;__pyx_kp_u_ndarray_is_not_Fortran_contiguou2326,90053 +static PyObject *__pyx_n_s_ndim;__pyx_n_s_ndim2327,90115 +static PyObject *__pyx_n_s_np;__pyx_n_s_np2328,90148 +static PyObject *__pyx_n_s_nspreads;__pyx_n_s_nspreads2329,90179 +static PyObject *__pyx_n_s_numpy;__pyx_n_s_numpy2330,90216 +static PyObject *__pyx_kp_s_numpy_core_multiarray_failed_to;__pyx_kp_s_numpy_core_multiarray_failed_to2331,90250 +static PyObject *__pyx_kp_s_numpy_core_umath_failed_to_impor;__pyx_kp_s_numpy_core_umath_failed_to_impor2332,90311 +static PyObject *__pyx_n_s_obj;__pyx_n_s_obj2333,90373 +static PyObject *__pyx_n_s_pack;__pyx_n_s_pack2334,90405 +static PyObject *__pyx_n_s_params;__pyx_n_s_params2335,90438 +static PyObject *__pyx_n_s_pv;__pyx_n_s_pv2336,90473 +static PyObject *__pyx_n_s_pv_vec;__pyx_n_s_pv_vec2337,90504 +static PyObject *__pyx_n_s_pyisda_flat_hazard;__pyx_n_s_pyisda_flat_hazard2338,90539 +static PyObject *__pyx_n_s_pyx_getbuffer;__pyx_n_s_pyx_getbuffer2339,90586 +static PyObject *__pyx_n_s_pyx_vtable;__pyx_n_s_pyx_vtable2340,90628 +static PyObject *__pyx_n_s_range;__pyx_n_s_range2341,90667 +static PyObject *__pyx_n_s_recovery_rate;__pyx_n_s_recovery_rate2342,90701 +static PyObject *__pyx_n_s_sc;__pyx_n_s_sc2343,90743 +static PyObject *__pyx_n_s_shape;__pyx_n_s_shape2344,90774 +static PyObject *__pyx_n_s_size;__pyx_n_s_size2345,90808 +static PyObject *__pyx_n_s_spreads;__pyx_n_s_spreads2346,90841 +static PyObject *__pyx_n_s_start;__pyx_n_s_start2347,90877 +static PyObject *__pyx_n_s_start_date;__pyx_n_s_start_date2348,90911 +static PyObject *__pyx_n_s_start_date_c;__pyx_n_s_start_date_c2349,90950 +static PyObject *__pyx_n_s_step;__pyx_n_s_step2350,90991 +static PyObject *__pyx_n_s_step_in_date_c;__pyx_n_s_step_in_date_c2351,91024 +static PyObject *__pyx_n_s_stop;__pyx_n_s_stop2352,91067 +static PyObject *__pyx_kp_s_strided_and_direct;__pyx_kp_s_strided_and_direct2353,91100 +static PyObject *__pyx_kp_s_strided_and_direct_or_indirect;__pyx_kp_s_strided_and_direct_or_indirect2354,91148 +static PyObject *__pyx_kp_s_strided_and_indirect;__pyx_kp_s_strided_and_indirect2355,91208 +static PyObject *__pyx_n_s_strike_vec;__pyx_n_s_strike_vec2356,91258 +static PyObject *__pyx_n_s_struct;__pyx_n_s_struct2357,91297 +static PyObject *__pyx_n_s_stub_type;__pyx_n_s_stub_type2358,91332 +static PyObject *__pyx_n_s_test;__pyx_n_s_test2359,91370 +static PyObject *__pyx_n_s_trade_date;__pyx_n_s_trade_date2360,91403 +static PyObject *__pyx_n_s_trade_date_c;__pyx_n_s_trade_date_c2361,91442 +static PyObject *__pyx_kp_s_unable_to_allocate_array_data;__pyx_kp_s_unable_to_allocate_array_data2362,91483 +static PyObject *__pyx_kp_s_unable_to_allocate_shape_and_str;__pyx_kp_s_unable_to_allocate_shape_and_str2363,91542 +static PyObject *__pyx_kp_u_unknown_dtype_code_in_numpy_pxd;__pyx_kp_u_unknown_dtype_code_in_numpy_pxd2364,91604 +static PyObject *__pyx_n_s_unpack;__pyx_n_s_unpack2365,91665 +static PyObject *__pyx_n_s_value_date;__pyx_n_s_value_date2366,91700 +static PyObject *__pyx_n_s_value_date_c;__pyx_n_s_value_date_c2367,91739 +static PyObject *__pyx_n_s_yc;__pyx_n_s_yc2368,91780 +static PyObject *__pyx_n_s_zero_upfront;__pyx_n_s_zero_upfront2369,91811 +static PyObject *__pyx_int_0;__pyx_int_02410,98074 +static PyObject *__pyx_int_1;__pyx_int_12411,98104 +static PyObject *__pyx_int_neg_1;__pyx_int_neg_12412,98134 +static PyObject *__pyx_tuple_;__pyx_tuple_2413,98168 +static PyObject *__pyx_tuple__2;__pyx_tuple__22414,98199 +static PyObject *__pyx_tuple__3;__pyx_tuple__32415,98232 +static PyObject *__pyx_tuple__4;__pyx_tuple__42416,98265 +static PyObject *__pyx_tuple__5;__pyx_tuple__52417,98298 +static PyObject *__pyx_tuple__6;__pyx_tuple__62418,98331 +static PyObject *__pyx_tuple__7;__pyx_tuple__72419,98364 +static PyObject *__pyx_tuple__8;__pyx_tuple__82420,98397 +static PyObject *__pyx_tuple__9;__pyx_tuple__92421,98430 +static PyObject *__pyx_slice__21;__pyx_slice__212422,98463 +static PyObject *__pyx_slice__22;__pyx_slice__222423,98497 +static PyObject *__pyx_slice__23;__pyx_slice__232424,98531 +static PyObject *__pyx_tuple__10;__pyx_tuple__102425,98565 +static PyObject *__pyx_tuple__11;__pyx_tuple__112426,98599 +static PyObject *__pyx_tuple__12;__pyx_tuple__122427,98633 +static PyObject *__pyx_tuple__13;__pyx_tuple__132428,98667 +static PyObject *__pyx_tuple__14;__pyx_tuple__142429,98701 +static PyObject *__pyx_tuple__15;__pyx_tuple__152430,98735 +static PyObject *__pyx_tuple__16;__pyx_tuple__162431,98769 +static PyObject *__pyx_tuple__17;__pyx_tuple__172432,98803 +static PyObject *__pyx_tuple__18;__pyx_tuple__182433,98837 +static PyObject *__pyx_tuple__19;__pyx_tuple__192434,98871 +static PyObject *__pyx_tuple__20;__pyx_tuple__202435,98905 +static PyObject *__pyx_tuple__24;__pyx_tuple__242436,98939 +static PyObject *__pyx_tuple__25;__pyx_tuple__252437,98973 +static PyObject *__pyx_tuple__27;__pyx_tuple__272438,99007 +static PyObject *__pyx_tuple__29;__pyx_tuple__292439,99041 +static PyObject *__pyx_tuple__30;__pyx_tuple__302440,99075 +static PyObject *__pyx_tuple__31;__pyx_tuple__312441,99109 +static PyObject *__pyx_tuple__32;__pyx_tuple__322442,99143 +static PyObject *__pyx_tuple__33;__pyx_tuple__332443,99177 +static PyObject *__pyx_codeobj__26;__pyx_codeobj__262444,99211 +static PyObject *__pyx_codeobj__28;__pyx_codeobj__282445,99247 +static char __pyx_doc_6pyisda_11flat_hazard_strike_vec[] = "strike_vec(__Pyx_memviewslice spreads, YieldCurve yc, trade_date, value_date, start_date, end_date, double recovery_rate)\nComputes coupon and default leg for a vector of spreads";__pyx_doc_6pyisda_11flat_hazard_strike_vec2457,99749 +static PyMethodDef __pyx_mdef_6pyisda_11flat_hazard_1strike_vec = {"strike_vec", (PyCFunction)__pyx_pw_6pyisda_11flat_hazard_1strike_vec, METH_VARARGS|METH_KEYWORDS, __pyx_doc_6pyisda_11flat_hazard_strike_vec};__pyx_mdef_6pyisda_11flat_hazard_1strike_vec2458,99990 +static PyObject *__pyx_pw_6pyisda_11flat_hazard_1strike_vec(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_11flat_hazard_1strike_vec2459,100201 +static PyObject *__pyx_pf_6pyisda_11flat_hazard_strike_vec(CYTHON_UNUSED PyObject *__pyx_self, __Pyx_memviewslice __pyx_v_spreads, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, PyObject *__pyx_v_trade_date, PyObject *__pyx_v_value_date, PyObject *__pyx_v_start_date, PyObject *__pyx_v_end_date, double __pyx_v_recovery_rate) {__pyx_pf_6pyisda_11flat_hazard_strike_vec2565,105388 +static char __pyx_doc_6pyisda_11flat_hazard_2pv_vec[] = "pv_vec(__Pyx_memviewslice spreads, YieldCurve yc, trade_date, value_date, start_date, end_date, double recovery_rate, double fixed_rate)\nComputes vector of cds clean pvs for a vector of spreads";__pyx_doc_6pyisda_11flat_hazard_2pv_vec3066,129592 +static PyMethodDef __pyx_mdef_6pyisda_11flat_hazard_3pv_vec = {"pv_vec", (PyCFunction)__pyx_pw_6pyisda_11flat_hazard_3pv_vec, METH_VARARGS|METH_KEYWORDS, __pyx_doc_6pyisda_11flat_hazard_2pv_vec};__pyx_mdef_6pyisda_11flat_hazard_3pv_vec3067,129846 +static PyObject *__pyx_pw_6pyisda_11flat_hazard_3pv_vec(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_11flat_hazard_3pv_vec3068,130042 +static PyObject *__pyx_pf_6pyisda_11flat_hazard_2pv_vec(CYTHON_UNUSED PyObject *__pyx_self, __Pyx_memviewslice __pyx_v_spreads, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, PyObject *__pyx_v_trade_date, PyObject *__pyx_v_value_date, PyObject *__pyx_v_start_date, PyObject *__pyx_v_end_date, double __pyx_v_recovery_rate, double __pyx_v_fixed_rate) {__pyx_pf_6pyisda_11flat_hazard_2pv_vec3183,135779 +static CYTHON_INLINE void __pyx_f_7cpython_8datetime_import_datetime(void) {__pyx_f_7cpython_8datetime_import_datetime3766,161246 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_date_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day) {__pyx_f_7cpython_8datetime_date_new3799,162319 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_new(int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_time_new3846,164183 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day, int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_datetime_new3893,166317 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_timedelta_new(int __pyx_v_days, int __pyx_v_seconds, int __pyx_v_useconds) {__pyx_f_7cpython_8datetime_timedelta_new3940,168620 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_tzinfo3987,170422 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_tzinfo4061,172517 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_year4135,174610 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_month4172,175456 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_day4209,176303 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_year4246,177148 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_month4283,178030 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_day4320,178913 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_hour4357,179775 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_minute4394,180645 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_second4431,181533 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_microsecond4468,182441 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_hour4505,183378 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_minute4542,184284 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_second4579,185208 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_microsecond4616,186152 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_days(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_days4653,187116 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_seconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_seconds4690,188037 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_microseconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_microseconds4726,189001 +static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_pw_5numpy_7ndarray_1__getbuffer__4762,190404 +static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_pf_5numpy_7ndarray___getbuffer__4773,190861 +static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info) {__pyx_pw_5numpy_7ndarray_3__releasebuffer__5634,227659 +static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info) {__pyx_pf_5numpy_7ndarray_2__releasebuffer__5643,228046 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) {__pyx_f_5numpy_PyArray_MultiIterNew15724,231410 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyObject *__pyx_v_b) {__pyx_f_5numpy_PyArray_MultiIterNew25771,233008 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c) {__pyx_f_5numpy_PyArray_MultiIterNew35818,234711 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d) {__pyx_f_5numpy_PyArray_MultiIterNew45865,236521 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d, PyObject *__pyx_v_e) {__pyx_f_5numpy_PyArray_MultiIterNew55912,238437 +static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *__pyx_v_descr, char *__pyx_v_f, char *__pyx_v_end, int *__pyx_v_offset) {__pyx_f_5numpy__util_dtypestring5959,240566 +static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObject *__pyx_v_base) {__pyx_f_5numpy_set_array_base6714,277310 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) {__pyx_f_5numpy_get_array_base6810,280550 +static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {__pyx_f_5numpy_import_array6884,282772 +static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {__pyx_f_5numpy_import_umath7015,287363 +static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {__pyx_f_5numpy_import_ufunc7146,291882 +static int __pyx_array___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_array___cinit__7276,296446 +static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array___cinit__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_shape, Py_ssize_t __pyx_v_itemsize, PyObject *__pyx_v_format, PyObject *__pyx_v_mode, int __pyx_v_allocate_buffer) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array___cinit__7390,301339 +static CYTHON_UNUSED int __pyx_array_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_array_getbuffer8002,323145 +static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_2__getbuffer__(struct __pyx_array_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_2__getbuffer__8013,323619 +static void __pyx_array___dealloc__(PyObject *__pyx_v_self) {__pyx_array___dealloc__8304,333370 +static void __pyx_array___pyx_pf_15View_dot_MemoryView_5array_4__dealloc__(struct __pyx_array_obj *__pyx_v_self) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_4__dealloc__8313,333691 +static PyObject *__pyx_pw_15View_dot_MemoryView_5array_7memview_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_5array_7memview_1__get__8435,337894 +static PyObject *__pyx_pf_15View_dot_MemoryView_5array_7memview___get__(struct __pyx_array_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_5array_7memview___get__8446,338293 +static PyObject *__pyx_array_get_memview(struct __pyx_array_obj *__pyx_v_self) {__pyx_array_get_memview8493,339683 +static PyObject *__pyx_array___getattr__(PyObject *__pyx_v_self, PyObject *__pyx_v_attr) {__pyx_array___getattr__8572,342468 +static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_6__getattr__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_attr) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_6__getattr__8583,342899 +static PyObject *__pyx_array___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item) {__pyx_array___getitem__8637,344617 +static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_8__getitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_8__getitem__8648,345048 +static int __pyx_array___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value) {__pyx_array___setitem__8702,346818 +static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_10__setitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_10__setitem__8713,347288 +static struct __pyx_array_obj *__pyx_array_new(PyObject *__pyx_v_shape, Py_ssize_t __pyx_v_itemsize, char *__pyx_v_format, char *__pyx_v_mode, char *__pyx_v_buf) {__pyx_array_new8759,348785 +static int __pyx_MemviewEnum___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_MemviewEnum___init__8933,355303 +static int __pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum___init__(struct __pyx_MemviewEnum_obj *__pyx_v_self, PyObject *__pyx_v_name) {__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum___init__8980,357151 +static PyObject *__pyx_MemviewEnum___repr__(PyObject *__pyx_v_self) {__pyx_MemviewEnum___repr__9022,358333 +static PyObject *__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum_2__repr__(struct __pyx_MemviewEnum_obj *__pyx_v_self) {__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum_2__repr__9033,358720 +static void *__pyx_align_pointer(void *__pyx_v_memory, size_t __pyx_v_alignment) {__pyx_align_pointer9073,359841 +static int __pyx_memoryview___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_memoryview___cinit__9158,362161 +static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview___cinit__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj, int __pyx_v_flags, int __pyx_v_dtype_is_object) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview___cinit__9229,365265 +static void __pyx_memoryview___dealloc__(PyObject *__pyx_v_self) {__pyx_memoryview___dealloc__9525,376135 +static void __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_2__dealloc__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_2__dealloc__9534,376477 +static char *__pyx_memoryview_get_item_pointer(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index) {__pyx_memoryview_get_item_pointer9713,383953 +static PyObject *__pyx_memoryview___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index) {__pyx_memoryview___getitem__9850,389044 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_4__getitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_4__getitem__9861,389498 +static int __pyx_memoryview___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) {__pyx_memoryview___setitem__10040,395488 +static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_6__setitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_6__setitem__10051,395980 +static PyObject *__pyx_memoryview_is_slice(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj) {__pyx_memoryview_is_slice10235,403042 +static PyObject *__pyx_memoryview_setitem_slice_assignment(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_dst, PyObject *__pyx_v_src) {__pyx_memoryview_setitem_slice_assignment10446,410484 +static PyObject *__pyx_memoryview_setitem_slice_assign_scalar(struct __pyx_memoryview_obj *__pyx_v_self, struct __pyx_memoryview_obj *__pyx_v_dst, PyObject *__pyx_v_value) {__pyx_memoryview_setitem_slice_assign_scalar10529,414514 +static PyObject *__pyx_memoryview_setitem_indexed(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) {__pyx_memoryview_setitem_indexed10815,424363 +static PyObject *__pyx_memoryview_convert_item_to_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp) {__pyx_memoryview_convert_item_to_object10873,426617 +static PyObject *__pyx_memoryview_assign_item_from_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value) {__pyx_memoryview_assign_item_from_object11147,436925 +static CYTHON_UNUSED int __pyx_memoryview_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_memoryview_getbuffer11385,445933 +static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_8__getbuffer__(struct __pyx_memoryview_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_8__getbuffer__11396,446428 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_1T_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_1T_1__get__11669,454059 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_1T___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_1T___get__11680,454463 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4base_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_4base_1__get__11752,456925 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4base___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_4base___get__11763,457335 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_5shape_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_5shape_1__get__11805,458394 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_5shape___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_5shape___get__11816,458806 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_7strides_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_7strides_1__get__11883,461092 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_7strides___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_7strides___get__11894,461508 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_10suboffsets_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_10suboffsets_1__get__11994,464952 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_10suboffsets___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_10suboffsets___get__12005,465376 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4ndim_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_4ndim_1__get__12109,468926 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4ndim___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_4ndim___get__12120,469336 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_8itemsize_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_8itemsize_1__get__12169,470696 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_8itemsize___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_8itemsize___get__12180,471114 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_6nbytes_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_6nbytes_1__get__12229,472507 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_6nbytes___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_6nbytes___get__12240,472921 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4size_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_4size_1__get__12299,474847 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4size___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_4size___get__12310,475257 +static Py_ssize_t __pyx_memoryview___len__(PyObject *__pyx_v_self) {__pyx_memoryview___len__12437,478902 +static Py_ssize_t __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_10__len__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_10__len__12448,479289 +static PyObject *__pyx_memoryview___repr__(PyObject *__pyx_v_self) {__pyx_memoryview___repr__12517,481037 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_12__repr__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_12__repr__12528,481429 +static PyObject *__pyx_memoryview___str__(PyObject *__pyx_v_self) {__pyx_memoryview___str__12622,485046 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_14__str__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_14__str__12633,485435 +static PyObject *__pyx_memoryview_is_c_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_is_c_contig12698,487847 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_16is_c_contig(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_16is_c_contig12709,488280 +static PyObject *__pyx_memoryview_is_f_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_is_f_contig12769,490380 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_18is_f_contig(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_18is_f_contig12780,490813 +static PyObject *__pyx_memoryview_copy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_copy12840,492975 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_20copy(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_20copy12851,493387 +static PyObject *__pyx_memoryview_copy_fortran(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_copy_fortran12931,496392 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_22copy_fortran(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_22copy_fortran12942,496828 +static PyObject *__pyx_memoryview_new(PyObject *__pyx_v_o, int __pyx_v_flags, int __pyx_v_dtype_is_object, __Pyx_TypeInfo *__pyx_v_typeinfo) {__pyx_memoryview_new13021,499750 +static CYTHON_INLINE int __pyx_memoryview_check(PyObject *__pyx_v_o) {__pyx_memoryview_check13109,503022 +static PyObject *_unellipsify(PyObject *__pyx_v_index, int __pyx_v_ndim) {_unellipsify13148,504086 +static PyObject *assert_direct_dimensions(Py_ssize_t *__pyx_v_suboffsets, int __pyx_v_ndim) {assert_direct_dimensions13607,519964 +static struct __pyx_memoryview_obj *__pyx_memview_slice(struct __pyx_memoryview_obj *__pyx_v_memview, PyObject *__pyx_v_indices) {__pyx_memview_slice13692,522820 +static int __pyx_memoryview_slice_memviewslice(__Pyx_memviewslice *__pyx_v_dst, Py_ssize_t __pyx_v_shape, Py_ssize_t __pyx_v_stride, Py_ssize_t __pyx_v_suboffset, int __pyx_v_dim, int __pyx_v_new_ndim, int *__pyx_v_suboffset_dim, Py_ssize_t __pyx_v_start, Py_ssize_t __pyx_v_stop, Py_ssize_t __pyx_v_step, int __pyx_v_have_start, int __pyx_v_have_stop, int __pyx_v_have_step, int __pyx_v_is_slice) {__pyx_memoryview_slice_memviewslice14269,544579 +static char *__pyx_pybuffer_index(Py_buffer *__pyx_v_view, char *__pyx_v_bufp, Py_ssize_t __pyx_v_index, Py_ssize_t __pyx_v_dim) {__pyx_pybuffer_index15050,566061 +static int __pyx_memslice_transpose(__Pyx_memviewslice *__pyx_v_memslice) {__pyx_memslice_transpose15366,576350 +static void __pyx_memoryviewslice___dealloc__(PyObject *__pyx_v_self) {__pyx_memoryviewslice___dealloc__15537,581621 +static void __pyx_memoryviewslice___pyx_pf_15View_dot_MemoryView_16_memoryviewslice___dealloc__(struct __pyx_memoryviewslice_obj *__pyx_v_self) {__pyx_memoryviewslice___pyx_pf_15View_dot_MemoryView_16_memoryviewslice___dealloc__15546,581983 +static PyObject *__pyx_memoryviewslice_convert_item_to_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp) {__pyx_memoryviewslice_convert_item_to_object15579,582998 +static PyObject *__pyx_memoryviewslice_assign_item_from_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value) {__pyx_memoryviewslice_assign_item_from_object15662,585826 +static PyObject *__pyx_pw_15View_dot_MemoryView_16_memoryviewslice_4base_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_16_memoryviewslice_4base_1__get__15744,588664 +static PyObject *__pyx_pf_15View_dot_MemoryView_16_memoryviewslice_4base___get__(struct __pyx_memoryviewslice_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_16_memoryviewslice_4base___get__15755,589091 +static PyObject *__pyx_memoryview_fromslice(__Pyx_memviewslice __pyx_v_memviewslice, int __pyx_v_ndim, PyObject *(*__pyx_v_to_object_func)(char *), int (*__pyx_v_to_dtype_func)(char *, PyObject *), int __pyx_v_dtype_is_object) {__pyx_memoryview_fromslice15795,590223 +static __Pyx_memviewslice *__pyx_memoryview_get_slice_from_memoryview(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_mslice) {__pyx_memoryview_get_slice_from_memoryview16147,602266 +static void __pyx_memoryview_slice_copy(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_dst) {__pyx_memoryview_slice_copy16247,605595 +static PyObject *__pyx_memoryview_copy_object(struct __pyx_memoryview_obj *__pyx_v_memview) {__pyx_memoryview_copy_object16371,609467 +static PyObject *__pyx_memoryview_copy_object_from_slice(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_memviewslice) {__pyx_memoryview_copy_object_from_slice16428,611432 +static Py_ssize_t abs_py_ssize_t(Py_ssize_t __pyx_v_arg) {abs_py_ssize_t16551,615763 +static char __pyx_get_best_slice_order(__Pyx_memviewslice *__pyx_v_mslice, int __pyx_v_ndim) {__pyx_get_best_slice_order16617,617241 +static void _copy_strided_to_strided(char *__pyx_v_src_data, Py_ssize_t *__pyx_v_src_strides, char *__pyx_v_dst_data, Py_ssize_t *__pyx_v_dst_strides, Py_ssize_t *__pyx_v_src_shape, Py_ssize_t *__pyx_v_dst_shape, int __pyx_v_ndim, size_t __pyx_v_itemsize) {_copy_strided_to_strided16805,622168 +static void copy_strided_to_strided(__Pyx_memviewslice *__pyx_v_src, __Pyx_memviewslice *__pyx_v_dst, int __pyx_v_ndim, size_t __pyx_v_itemsize) {copy_strided_to_strided17039,630445 +static Py_ssize_t __pyx_memoryview_slice_get_size(__Pyx_memviewslice *__pyx_v_src, int __pyx_v_ndim) {__pyx_memoryview_slice_get_size17069,631734 +static Py_ssize_t __pyx_fill_contig_strides_array(Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, Py_ssize_t __pyx_v_stride, int __pyx_v_ndim, char __pyx_v_order) {__pyx_fill_contig_strides_array17139,633654 +static void *__pyx_memoryview_copy_data_to_temp(__Pyx_memviewslice *__pyx_v_src, __Pyx_memviewslice *__pyx_v_tmpslice, char __pyx_v_order, int __pyx_v_ndim) {__pyx_memoryview_copy_data_to_temp17259,637091 +static int __pyx_memoryview_err_extents(int __pyx_v_i, Py_ssize_t __pyx_v_extent1, Py_ssize_t __pyx_v_extent2) {__pyx_memoryview_err_extents17508,644258 +static int __pyx_memoryview_err_dim(PyObject *__pyx_v_error, char *__pyx_v_msg, int __pyx_v_dim) {__pyx_memoryview_err_dim17598,647864 +static int __pyx_memoryview_err(PyObject *__pyx_v_error, char *__pyx_v_msg) {__pyx_memoryview_err17711,652214 +static int __pyx_memoryview_copy_contents(__Pyx_memviewslice __pyx_v_src, __Pyx_memviewslice __pyx_v_dst, int __pyx_v_src_ndim, int __pyx_v_dst_ndim, int __pyx_v_dtype_is_object) {__pyx_memoryview_copy_contents17850,657163 +static void __pyx_memoryview_broadcast_leading(__Pyx_memviewslice *__pyx_v_mslice, int __pyx_v_ndim, int __pyx_v_ndim_other) {__pyx_memoryview_broadcast_leading18424,675325 +static void __pyx_memoryview_refcount_copying(__Pyx_memviewslice *__pyx_v_dst, int __pyx_v_dtype_is_object, int __pyx_v_ndim, int __pyx_v_inc) {__pyx_memoryview_refcount_copying18535,679015 +static void __pyx_memoryview_refcount_objects_in_slice_with_gil(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, int __pyx_v_inc) {__pyx_memoryview_refcount_objects_in_slice_with_gil18585,680734 +static void __pyx_memoryview_refcount_objects_in_slice(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, int __pyx_v_inc) {__pyx_memoryview_refcount_objects_in_slice18624,682347 +static void __pyx_memoryview_slice_assign_scalar(__Pyx_memviewslice *__pyx_v_dst, int __pyx_v_ndim, size_t __pyx_v_itemsize, void *__pyx_v_item, int __pyx_v_dtype_is_object) {__pyx_memoryview_slice_assign_scalar18754,686296 +static void __pyx_memoryview__slice_assign_scalar(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, size_t __pyx_v_itemsize, void *__pyx_v_item) {__pyx_memoryview__slice_assign_scalar18802,688406 +static struct __pyx_vtabstruct_array __pyx_vtable_array;__pyx_vtable_array18921,692135 +static PyObject *__pyx_tp_new_array(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_array18923,692193 +static void __pyx_tp_dealloc_array(PyObject *o) {__pyx_tp_dealloc_array18943,692835 +static PyObject *__pyx_sq_item_array(PyObject *o, Py_ssize_t i) {__pyx_sq_item_array18962,693408 +static int __pyx_mp_ass_subscript_array(PyObject *o, PyObject *i, PyObject *v) {__pyx_mp_ass_subscript_array18970,693628 +static PyObject *__pyx_tp_getattro_array(PyObject *o, PyObject *n) {__pyx_tp_getattro_array18981,693918 +static PyObject *__pyx_getprop___pyx_array_memview(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_array_memview18990,694171 +static PyMethodDef __pyx_methods_array[] = {__pyx_methods_array18994,694332 +static struct PyGetSetDef __pyx_getsets_array[] = {__pyx_getsets_array18999,694477 +static PySequenceMethods __pyx_tp_as_sequence_array = {__pyx_tp_as_sequence_array19004,694626 +static PyMappingMethods __pyx_tp_as_mapping_array = {__pyx_tp_as_mapping_array19017,694914 +static PyBufferProcs __pyx_tp_as_buffer_array = {__pyx_tp_as_buffer_array19023,695088 +static PyTypeObject __pyx_type___pyx_array = {__pyx_type___pyx_array19040,695457 +static PyObject *__pyx_tp_new_Enum(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {__pyx_tp_new_Enum19098,696937 +static void __pyx_tp_dealloc_Enum(PyObject *o) {__pyx_tp_dealloc_Enum19112,697402 +static int __pyx_tp_traverse_Enum(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_Enum19124,697769 +static int __pyx_tp_clear_Enum(PyObject *o) {__pyx_tp_clear_Enum19133,697999 +static PyMethodDef __pyx_methods_Enum[] = {__pyx_methods_Enum19142,698238 +static PyTypeObject __pyx_type___pyx_MemviewEnum = {__pyx_type___pyx_MemviewEnum19146,698301 +static struct __pyx_vtabstruct_memoryview __pyx_vtable_memoryview;__pyx_vtable_memoryview19203,699781 +static PyObject *__pyx_tp_new_memoryview(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_memoryview19205,699849 +static void __pyx_tp_dealloc_memoryview(PyObject *o) {__pyx_tp_dealloc_memoryview19227,700562 +static int __pyx_tp_traverse_memoryview(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_memoryview19249,701181 +static int __pyx_tp_clear_memoryview(PyObject *o) {__pyx_tp_clear_memoryview19267,701639 +static PyObject *__pyx_sq_item_memoryview(PyObject *o, Py_ssize_t i) {__pyx_sq_item_memoryview19282,702110 +static int __pyx_mp_ass_subscript_memoryview(PyObject *o, PyObject *i, PyObject *v) {__pyx_mp_ass_subscript_memoryview19290,702335 +static PyObject *__pyx_getprop___pyx_memoryview_T(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_T19301,702635 +static PyObject *__pyx_getprop___pyx_memoryview_base(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_base19305,702795 +static PyObject *__pyx_getprop___pyx_memoryview_shape(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_shape19309,702961 +static PyObject *__pyx_getprop___pyx_memoryview_strides(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_strides19313,703129 +static PyObject *__pyx_getprop___pyx_memoryview_suboffsets(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_suboffsets19317,703301 +static PyObject *__pyx_getprop___pyx_memoryview_ndim(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_ndim19321,703480 +static PyObject *__pyx_getprop___pyx_memoryview_itemsize(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_itemsize19325,703646 +static PyObject *__pyx_getprop___pyx_memoryview_nbytes(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_nbytes19329,703820 +static PyObject *__pyx_getprop___pyx_memoryview_size(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_size19333,703990 +static PyMethodDef __pyx_methods_memoryview[] = {__pyx_methods_memoryview19337,704156 +static struct PyGetSetDef __pyx_getsets_memoryview[] = {__pyx_getsets_memoryview19345,704525 +static PySequenceMethods __pyx_tp_as_sequence_memoryview = {__pyx_tp_as_sequence_memoryview19358,705296 +static PyMappingMethods __pyx_tp_as_mapping_memoryview = {__pyx_tp_as_mapping_memoryview19371,705617 +static PyBufferProcs __pyx_tp_as_buffer_memoryview = {__pyx_tp_as_buffer_memoryview19377,705829 +static PyTypeObject __pyx_type___pyx_memoryview = {__pyx_type___pyx_memoryview19394,706208 +static struct __pyx_vtabstruct__memoryviewslice __pyx_vtable__memoryviewslice;__pyx_vtable__memoryviewslice19451,707832 +static PyObject *__pyx_tp_new__memoryviewslice(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new__memoryviewslice19453,707912 +static void __pyx_tp_dealloc__memoryviewslice(PyObject *o) {__pyx_tp_dealloc__memoryviewslice19464,708363 +static int __pyx_tp_traverse__memoryviewslice(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse__memoryviewslice19485,708985 +static int __pyx_tp_clear__memoryviewslice(PyObject *o) {__pyx_tp_clear__memoryviewslice19495,709311 +static PyObject *__pyx_getprop___pyx_memoryviewslice_base(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryviewslice_base19506,709657 +static PyMethodDef __pyx_methods__memoryviewslice[] = {__pyx_methods__memoryviewslice19510,709834 +static struct PyGetSetDef __pyx_getsets__memoryviewslice[] = {__pyx_getsets__memoryviewslice19514,709909 +static PyTypeObject __pyx_type___pyx_memoryviewslice = {__pyx_type___pyx_memoryviewslice19519,710073 +static PyMethodDef __pyx_methods[] = {__pyx_methods19585,711844 +static struct PyModuleDef __pyx_moduledef = {__pyx_moduledef19590,711928 +static __Pyx_StringTabEntry __pyx_string_tab[] = {__pyx_string_tab19607,712303 +static int __Pyx_InitCachedBuiltins(void) {__Pyx_InitCachedBuiltins19719,722860 +static int __Pyx_InitCachedConstants(void) {__Pyx_InitCachedConstants19735,724290 +static int __Pyx_InitGlobals(void) {__Pyx_InitGlobals20089,741658 +PyMODINIT_FUNC initflat_hazard(void)initflat_hazard20101,742189 +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {__Pyx_RefNannyImportAPI20480,762439 +static PyObject *__Pyx_GetBuiltinName(PyObject *name) {__Pyx_GetBuiltinName20496,762867 +static void __Pyx_RaiseArgtupleInvalid(__Pyx_RaiseArgtupleInvalid20510,763267 +static void __Pyx_RaiseDoubleKeywordsError(__Pyx_RaiseDoubleKeywordsError20536,764032 +static int __Pyx_ParseOptionalKeywords(__Pyx_ParseOptionalKeywords20550,764441 +static void __Pyx_RaiseArgumentTypeInvalid(const char* name, PyObject *obj, PyTypeObject *type) {__Pyx_RaiseArgumentTypeInvalid20652,768013 +static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed,__Pyx_ArgTypeTest20657,768278 +static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {__Pyx_TypeTest20679,768975 +static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name) {__Pyx_GetModuleGlobalName20692,769403 +static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) {__Pyx_PyCFunction_FastCall20711,769868 +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,__Pyx_PyFunction_FastCallNoKw20730,770746 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) {__Pyx_PyFunction_FastCallDict20759,771675 +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {__Pyx_PyObject_Call20849,774558 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallMethO20869,775232 +static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx__PyObject_CallOneArg20889,775888 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg20899,776212 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg20921,776956 + static CYTHON_INLINE int __Pyx_IsLittleEndian(void) {__Pyx_IsLittleEndian20932,777275 +static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx,__Pyx_BufFmt_Init20936,777394 +static int __Pyx_BufFmt_ParseNumber(const char** ts) {__Pyx_BufFmt_ParseNumber20963,778178 +static int __Pyx_BufFmt_ExpectNumber(const char **ts) {__Pyx_BufFmt_ExpectNumber20978,778510 +static void __Pyx_BufFmt_RaiseUnexpectedChar(char ch) {__Pyx_BufFmt_RaiseUnexpectedChar20985,778791 +static const char* __Pyx_BufFmt_DescribeTypeChar(char ch, int is_complex) {__Pyx_BufFmt_DescribeTypeChar20989,778946 +static size_t __Pyx_BufFmt_TypeCharToStandardSize(char ch, int is_complex) {__Pyx_BufFmt_TypeCharToStandardSize21013,779885 +static size_t __Pyx_BufFmt_TypeCharToNativeSize(char ch, int is_complex) {__Pyx_BufFmt_TypeCharToNativeSize21031,780547 +typedef struct { char c; short x; } __Pyx_st_short;c21050,781244 +typedef struct { char c; short x; } __Pyx_st_short;x21050,781244 +typedef struct { char c; short x; } __Pyx_st_short;__Pyx_st_short21050,781244 +typedef struct { char c; int x; } __Pyx_st_int;c21051,781296 +typedef struct { char c; int x; } __Pyx_st_int;x21051,781296 +typedef struct { char c; int x; } __Pyx_st_int;__Pyx_st_int21051,781296 +typedef struct { char c; long x; } __Pyx_st_long;c21052,781344 +typedef struct { char c; long x; } __Pyx_st_long;x21052,781344 +typedef struct { char c; long x; } __Pyx_st_long;__Pyx_st_long21052,781344 +typedef struct { char c; float x; } __Pyx_st_float;c21053,781394 +typedef struct { char c; float x; } __Pyx_st_float;x21053,781394 +typedef struct { char c; float x; } __Pyx_st_float;__Pyx_st_float21053,781394 +typedef struct { char c; double x; } __Pyx_st_double;c21054,781446 +typedef struct { char c; double x; } __Pyx_st_double;x21054,781446 +typedef struct { char c; double x; } __Pyx_st_double;__Pyx_st_double21054,781446 +typedef struct { char c; long double x; } __Pyx_st_longdouble;c21055,781500 +typedef struct { char c; long double x; } __Pyx_st_longdouble;x21055,781500 +typedef struct { char c; long double x; } __Pyx_st_longdouble;__Pyx_st_longdouble21055,781500 +typedef struct { char c; void *x; } __Pyx_st_void_p;c21056,781563 +typedef struct { char c; void *x; } __Pyx_st_void_p;x21056,781563 +typedef struct { char c; void *x; } __Pyx_st_void_p;__Pyx_st_void_p21056,781563 +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;c21058,781638 +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;x21058,781638 +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;__Pyx_st_longlong21058,781638 +static size_t __Pyx_BufFmt_TypeCharToAlignment(char ch, CYTHON_UNUSED int is_complex) {__Pyx_BufFmt_TypeCharToAlignment21060,781707 +typedef struct { short x; char c; } __Pyx_pad_short;x21082,782741 +typedef struct { short x; char c; } __Pyx_pad_short;c21082,782741 +typedef struct { short x; char c; } __Pyx_pad_short;__Pyx_pad_short21082,782741 +typedef struct { int x; char c; } __Pyx_pad_int;x21083,782794 +typedef struct { int x; char c; } __Pyx_pad_int;c21083,782794 +typedef struct { int x; char c; } __Pyx_pad_int;__Pyx_pad_int21083,782794 +typedef struct { long x; char c; } __Pyx_pad_long;x21084,782843 +typedef struct { long x; char c; } __Pyx_pad_long;c21084,782843 +typedef struct { long x; char c; } __Pyx_pad_long;__Pyx_pad_long21084,782843 +typedef struct { float x; char c; } __Pyx_pad_float;x21085,782894 +typedef struct { float x; char c; } __Pyx_pad_float;c21085,782894 +typedef struct { float x; char c; } __Pyx_pad_float;__Pyx_pad_float21085,782894 +typedef struct { double x; char c; } __Pyx_pad_double;x21086,782947 +typedef struct { double x; char c; } __Pyx_pad_double;c21086,782947 +typedef struct { double x; char c; } __Pyx_pad_double;__Pyx_pad_double21086,782947 +typedef struct { long double x; char c; } __Pyx_pad_longdouble;x21087,783002 +typedef struct { long double x; char c; } __Pyx_pad_longdouble;c21087,783002 +typedef struct { long double x; char c; } __Pyx_pad_longdouble;__Pyx_pad_longdouble21087,783002 +typedef struct { void *x; char c; } __Pyx_pad_void_p;x21088,783066 +typedef struct { void *x; char c; } __Pyx_pad_void_p;c21088,783066 +typedef struct { void *x; char c; } __Pyx_pad_void_p;__Pyx_pad_void_p21088,783066 +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;x21090,783142 +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;c21090,783142 +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;__Pyx_pad_longlong21090,783142 +static size_t __Pyx_BufFmt_TypeCharToPadding(char ch, CYTHON_UNUSED int is_complex) {__Pyx_BufFmt_TypeCharToPadding21092,783212 +static char __Pyx_BufFmt_TypeCharToGroup(char ch, int is_complex) {__Pyx_BufFmt_TypeCharToGroup21110,784062 +static void __Pyx_BufFmt_RaiseExpected(__Pyx_BufFmt_Context* ctx) {__Pyx_BufFmt_RaiseExpected21131,784582 +static int __Pyx_BufFmt_ProcessTypeChunk(__Pyx_BufFmt_Context* ctx) {__Pyx_BufFmt_ProcessTypeChunk21155,785529 +__pyx_buffmt_parse_array(__Pyx_BufFmt_Context* ctx, const char** tsp)__pyx_buffmt_parse_array21258,789322 +static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts) {__Pyx_BufFmt_CheckString21301,790915 +static CYTHON_INLINE void __Pyx_ZeroBuffer(Py_buffer* buf) {__Pyx_ZeroBuffer21434,794931 +static CYTHON_INLINE int __Pyx_GetBufferAndValidate(__Pyx_GetBufferAndValidate21441,795127 +static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info) {__Pyx_SafeReleaseBuffer21475,796308 +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {__Pyx_ErrRestoreInState21483,796569 +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx_ErrFetchInState21495,797029 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb,__Pyx_Raise21507,797411 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {__Pyx_Raise21558,798891 +__Pyx_init_memviewslice(struct __pyx_memoryview_obj *memview,__Pyx_init_memviewslice21670,802564 +static CYTHON_INLINE void __pyx_fatalerror(const char *fmt, ...) {__pyx_fatalerror21722,804165 +__pyx_add_acquisition_count_locked(__pyx_atomic_int *acquisition_count,__pyx_add_acquisition_count_locked21735,804467 +__pyx_sub_acquisition_count_locked(__pyx_atomic_int *acquisition_count,__pyx_sub_acquisition_count_locked21745,804769 +__Pyx_INC_MEMVIEW(__Pyx_memviewslice *memslice, int have_gil, int lineno)__Pyx_INC_MEMVIEW21755,805072 +static CYTHON_INLINE void __Pyx_XDEC_MEMVIEW(__Pyx_memviewslice *memslice,__Pyx_XDEC_MEMVIEW21775,805807 + static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) {__Pyx_RaiseTooManyValuesError21804,806786 + static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {__Pyx_RaiseNeedMoreValuesError21810,807041 + static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) {__Pyx_RaiseNoneNotIterableError21817,807322 +static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx__ExceptionSave21823,807536 +static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {__Pyx__ExceptionReset21831,807823 +static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) {__Pyx_PyErr_ExceptionMatchesInState21847,808336 +static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx__GetException21857,808678 + static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) {__Pyx_PyBytes_Equals21917,810376 + static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) {__Pyx_PyUnicode_Equals21955,811691 + static CYTHON_INLINE Py_ssize_t __Pyx_div_Py_ssize_t(Py_ssize_t a, Py_ssize_t b) {__Pyx_div_Py_ssize_t22039,814404 + static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) {__Pyx_GetAttr22047,814619 + static CYTHON_INLINE PyObject* __Pyx_decode_c_string(__Pyx_decode_c_string22060,814959 +static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx__ExceptionSwap22094,816109 +static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) {__Pyx_ExceptionSwap22107,816547 + static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {__Pyx_Import22118,816873 + static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {__Pyx_GetItemInt_Generic22192,819161 +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,__Pyx_GetItemInt_List_Fast22199,819363 +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,__Pyx_GetItemInt_Tuple_Fast22214,820045 +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list,__Pyx_GetItemInt_Fast22229,820731 +static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED int inplace) {__Pyx_PyInt_AddObjC22274,822493 + static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname) {__Pyx_RaiseUnboundLocalError22389,828133 + static CYTHON_INLINE long __Pyx_div_long(long a, long b) {__Pyx_div_long22394,828339 + static void __Pyx_WriteUnraisable(const char *name, CYTHON_UNUSED int clineno,__Pyx_WriteUnraisable22402,828535 + static int __Pyx_SetVtable(PyObject *dict, void *vtable) {__Pyx_SetVtable22444,829741 + static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {__pyx_bisect_code_objects22462,830164 +static PyCodeObject *__pyx_find_code_object(int code_line) {__pyx_find_code_object22483,830803 +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {__pyx_insert_code_object22497,831363 +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(__Pyx_CreateCodeObjectForTraceback22545,833159 +static void __Pyx_AddTraceback(const char *funcname, int c_line,__Pyx_AddTraceback22597,834768 +static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags) {__Pyx_GetBuffer22623,835698 +static void __Pyx_ReleaseBuffer(Py_buffer *view) {__Pyx_ReleaseBuffer22631,836319 +__pyx_memviewslice_is_contig(const __Pyx_memviewslice mvs,__pyx_memviewslice_is_contig22647,836758 +__pyx_get_array_memory_extents(__Pyx_memviewslice *slice,__pyx_get_array_memory_extents22670,837350 +__pyx_slices_overlap(__Pyx_memviewslice *slice1,__pyx_slices_overlap22694,838053 +__pyx_capsule_create(void *p, CYTHON_UNUSED const char *sig)__pyx_capsule_create22706,838500 +__pyx_typeinfo_cmp(__Pyx_TypeInfo *a, __Pyx_TypeInfo *b)__pyx_typeinfo_cmp22719,838775 +__pyx_check_strides(Py_buffer *buf, int dim, int ndim, int spec)__pyx_check_strides22760,840047 +__pyx_check_suboffsets(Py_buffer *buf, int dim, CYTHON_UNUSED int ndim, int spec)__pyx_check_suboffsets22813,842044 +__pyx_verify_contig(Py_buffer *buf, int ndim, int c_or_f_flag)__pyx_verify_contig22836,842790 +static int __Pyx_ValidateAndInit_memviewslice(__Pyx_ValidateAndInit_memviewslice22867,843754 + static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_ds_double(PyObject *obj) {__Pyx_PyObject_to_MemoryviewSlice_ds_double22941,846460 + static CYTHON_INLINE PyObject *__pyx_memview_get_double(const char *itemp) {__pyx_memview_get_double22964,847348 +static CYTHON_INLINE int __pyx_memview_set_double(const char *itemp, PyObject *obj) {__pyx_memview_set_double22967,847500 + #define __PYX_VERIFY_RETURN_INT(__PYX_VERIFY_RETURN_INT22976,847774 +#define __PYX_VERIFY_RETURN_INT_EXC(__PYX_VERIFY_RETURN_INT_EXC22978,847921 +#define __PYX__VERIFY_RETURN_INT(__PYX__VERIFY_RETURN_INT22980,848062 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_Py_intptr_t(Py_intptr_t value) {__Pyx_PyInt_From_Py_intptr_t22998,848730 + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {__pyx_t_float_complex_from_parts23031,850015 + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {__pyx_t_float_complex_from_parts23035,850173 + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {__pyx_t_float_complex_from_parts23040,850348 + static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_eq_float23051,850598 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_sum_float23054,850758 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_diff_float23060,851000 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_prod_float23066,851243 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_quot_float23073,851532 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_quot_float23093,852476 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex a) {__Pyx_c_neg_float23104,852989 + static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex a) {__Pyx_c_is_zero_float23110,853190 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex a) {__Pyx_c_conj_float23113,853320 + static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex z) {__Pyx_c_abs_float23120,853532 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_pow_float23127,853811 + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {__pyx_t_double_complex_from_parts23186,855945 + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {__pyx_t_double_complex_from_parts23190,856108 + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {__pyx_t_double_complex_from_parts23195,856288 + static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_eq_double23206,856543 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_sum_double23209,856706 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_diff_double23215,856953 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_prod_double23221,857201 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_quot_double23228,857495 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_quot_double23248,858449 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex a) {__Pyx_c_neg_double23259,858969 + static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex a) {__Pyx_c_is_zero_double23265,859174 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex a) {__Pyx_c_conj_double23268,859306 + static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex z) {__Pyx_c_abs_double23275,859522 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_pow_double23282,859802 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {__Pyx_PyInt_From_int23339,861888 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__NPY_TYPES(enum NPY_TYPES value) {__Pyx_PyInt_From_enum__NPY_TYPES23370,863030 +__pyx_memoryview_copy_new_contig(const __Pyx_memviewslice *from_mvs,__pyx_memoryview_copy_new_contig23402,864346 + static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {__Pyx_PyInt_As_long23468,866772 + static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) {__Pyx_PyInt_As_size_t23657,876598 + static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {__Pyx_PyInt_As_int23846,886618 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {__Pyx_PyInt_From_long24035,896345 + static CYTHON_INLINE char __Pyx_PyInt_As_char(PyObject *x) {__Pyx_PyInt_As_char24066,897500 + static int __Pyx_check_binary_version(void) {__Pyx_check_binary_version24255,907334 +#define __PYX_HAVE_RT_ImportModule__PYX_HAVE_RT_ImportModule24272,908032 +static PyObject *__Pyx_ImportModule(const char *name) {__Pyx_ImportModule24273,908067 +#define __PYX_HAVE_RT_ImportType__PYX_HAVE_RT_ImportType24290,908468 +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,__Pyx_ImportType24291,908501 +#define __PYX_HAVE_RT_ImportFunction__PYX_HAVE_RT_ImportFunction24355,910459 +static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) {__Pyx_ImportFunction24356,910496 + static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {__Pyx_InitStrings24408,912038 +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {__Pyx_PyUnicode_FromString24438,912970 +static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {__Pyx_PyObject_AsString24441,913131 +static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {__Pyx_PyObject_AsStringAndSize24445,913277 +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {__Pyx_PyObject_IsTrue24503,915153 +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {__Pyx_PyNumber_IntOrLong24508,915350 +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {__Pyx_PyIndex_AsSsize_t24559,916498 +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {__Pyx_PyInt_FromSize_t24621,918789 + +pyisda/pyisda/logging.pxd,0 + +pyisda/pyisda/date.pxd,190 +cdef long dcc(str day_count) except -1dcc7,206 +cdef TDate pydate_to_TDate(c_datetime.date d)pydate_to_TDate47,1597 +cpdef c_datetime.date TDate_to_pydate(TDate d)TDate_to_pydate49,1644 + +pyisda/pyisda/__init__.py,0 + +pyisda/pyisda/cdsone.pxd,0 + +pyisda/pyisda/date.cpp,38648 +#define PY_SSIZE_T_CLEANPY_SSIZE_T_CLEAN20,375 +#define CYTHON_ABI CYTHON_ABI27,704 + #define offsetof(offsetof30,769 + #define __stdcall__stdcall34,909 + #define __cdecl__cdecl37,958 + #define __fastcall__fastcall40,1008 + #define DL_IMPORT(DL_IMPORT44,1065 + #define DL_EXPORT(DL_EXPORT47,1115 + #define HAVE_LONG_LONGHAVE_LONG_LONG51,1264 + #define PY_LONG_LONG PY_LONG_LONG55,1328 + #define Py_HUGE_VAL Py_HUGE_VAL58,1388 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY61,1446 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON62,1483 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON63,1522 + #undef CYTHON_USE_TYPE_SLOTSCYTHON_USE_TYPE_SLOTS64,1562 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS65,1593 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS66,1627 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS67,1659 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS68,1694 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS69,1731 + #undef CYTHON_USE_UNICODE_INTERNALSCYTHON_USE_UNICODE_INTERNALS70,1771 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS71,1809 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER72,1850 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER73,1885 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS74,1923 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS75,1960 + #undef CYTHON_AVOID_BORROWED_REFSCYTHON_AVOID_BORROWED_REFS76,2000 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS77,2036 + #undef CYTHON_ASSUME_SAFE_MACROSCYTHON_ASSUME_SAFE_MACROS78,2075 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS79,2110 + #undef CYTHON_UNPACK_METHODSCYTHON_UNPACK_METHODS80,2148 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS81,2179 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE82,2213 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE83,2247 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL84,2284 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL85,2312 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY87,2373 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON88,2410 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON89,2449 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS91,2521 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS93,2566 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS94,2598 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS95,2633 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS96,2670 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS98,2749 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER100,2801 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER101,2836 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS102,2874 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS103,2911 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS105,2988 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS108,3074 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS111,3155 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE113,3200 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE114,3234 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL115,3271 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL116,3299 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY118,3336 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON119,3373 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON120,3412 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS122,3484 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS125,3556 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS126,3590 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS128,3668 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS131,3748 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS132,3787 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS134,3875 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS137,3964 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS140,4054 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER143,4140 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER144,4177 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER146,4261 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS149,4347 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS152,4433 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS155,4514 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE158,4594 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL161,4671 +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCCALL165,4754 + #undef SHIFTSHIFT169,4902 + #undef BASEBASE170,4917 + #undef MASKMASK171,4931 + #define Py_OptimizeFlag Py_OptimizeFlag174,5041 +#define __PYX_BUILD_PY_SSIZE_T __PYX_BUILD_PY_SSIZE_T176,5076 +#define CYTHON_FORMAT_SSIZE_T CYTHON_FORMAT_SSIZE_T177,5111 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME179,5170 + #define __Pyx_PyCode_New(__Pyx_PyCode_New180,5220 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType182,5394 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME184,5446 + #define __Pyx_PyCode_New(__Pyx_PyCode_New185,5493 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType187,5668 + #define Py_TPFLAGS_CHECKTYPES Py_TPFLAGS_CHECKTYPES190,5750 + #define Py_TPFLAGS_HAVE_INDEX Py_TPFLAGS_HAVE_INDEX193,5821 + #define Py_TPFLAGS_HAVE_NEWBUFFER Py_TPFLAGS_HAVE_NEWBUFFER196,5896 + #define Py_TPFLAGS_HAVE_FINALIZE Py_TPFLAGS_HAVE_FINALIZE199,5974 + #define METH_FASTCALL METH_FASTCALL202,6040 + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args,__Pyx_PyCFunctionFast203,6069 + #define __Pyx_PyCFunctionFast __Pyx_PyCFunctionFast206,6238 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check209,6318 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check212,6496 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED215,6606 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY216,6640 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH218,6803 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR219,6869 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE220,6937 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND221,7011 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA222,7071 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ223,7131 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE224,7197 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE225,7272 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED227,7409 + #define PyUnicode_1BYTE_KIND PyUnicode_1BYTE_KIND228,7443 + #define PyUnicode_2BYTE_KIND PyUnicode_2BYTE_KIND229,7477 + #define PyUnicode_4BYTE_KIND PyUnicode_4BYTE_KIND230,7511 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY231,7545 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH232,7591 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR233,7655 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE234,7737 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND235,7829 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA236,7892 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ237,7967 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE238,8053 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE239,8139 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat242,8246 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe243,8309 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat245,8378 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe246,8445 + #define PyUnicode_Contains(PyUnicode_Contains250,8673 + #define PyByteArray_Check(PyByteArray_Check253,8802 + #define PyObject_Format(PyObject_Format256,8944 + #define PyObject_Malloc(PyObject_Malloc259,9095 + #define PyObject_Free(PyObject_Free260,9142 + #define PyObject_Realloc(PyObject_Realloc261,9187 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars264,9273 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber265,9336 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars267,9432 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber268,9500 +#define __Pyx_PyString_FormatSafe(__Pyx_PyString_FormatSafe270,9590 +#define __Pyx_PyUnicode_FormatSafe(__Pyx_PyUnicode_FormatSafe271,9718 + #define __Pyx_PyString_Format(__Pyx_PyString_Format273,9867 + #define __Pyx_PyString_Format(__Pyx_PyString_Format275,9935 + #define PyObject_ASCII(PyObject_ASCII278,10056 + #define PyBaseString_Type PyBaseString_Type281,10145 + #define PyStringObject PyStringObject282,10199 + #define PyString_Type PyString_Type283,10254 + #define PyString_Check PyString_Check284,10308 + #define PyString_CheckExact PyString_CheckExact285,10363 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check288,10456 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact289,10517 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check291,10594 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact292,10680 + #define PySet_CheckExact(PySet_CheckExact295,10813 +#define __Pyx_TypeCheck(__Pyx_TypeCheck297,10889 +#define __Pyx_PyException_Check(__Pyx_PyException_Check298,10970 + #define PyIntObject PyIntObject300,11071 + #define PyInt_Type PyInt_Type301,11123 + #define PyInt_Check(PyInt_Check302,11174 + #define PyInt_CheckExact(PyInt_CheckExact303,11230 + #define PyInt_FromString PyInt_FromString304,11291 + #define PyInt_FromUnicode PyInt_FromUnicode305,11348 + #define PyInt_FromLong PyInt_FromLong306,11406 + #define PyInt_FromSize_t PyInt_FromSize_t307,11461 + #define PyInt_FromSsize_t PyInt_FromSsize_t308,11518 + #define PyInt_AsLong PyInt_AsLong309,11576 + #define PyInt_AS_LONG PyInt_AS_LONG310,11629 + #define PyInt_AsSsize_t PyInt_AsSsize_t311,11683 + #define PyInt_AsUnsignedLongMask PyInt_AsUnsignedLongMask312,11739 + #define PyInt_AsUnsignedLongLongMask PyInt_AsUnsignedLongLongMask313,11804 + #define PyNumber_Int PyNumber_Int314,11873 + #define PyBoolObject PyBoolObject317,11959 + #define PyUnicode_InternFromString(PyUnicode_InternFromString321,12109 + typedef long Py_hash_t;Py_hash_t325,12223 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t326,12249 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t327,12297 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t329,12349 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t330,12400 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New333,12482 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New335,12601 + #define __Pyx_PyAsyncMethodsStruct __Pyx_PyAsyncMethodsStruct339,12750 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync340,12804 + unaryfunc am_await;am_await343,12899 + unaryfunc am_aiter;am_aiter344,12927 + unaryfunc am_anext;am_anext345,12955 + } __Pyx_PyAsyncMethodsStruct;__Pyx_PyAsyncMethodsStruct346,12983 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync347,13017 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync350,13130 + #define CYTHON_RESTRICT CYTHON_RESTRICT354,13226 + #define CYTHON_RESTRICT CYTHON_RESTRICT356,13313 + #define CYTHON_RESTRICT CYTHON_RESTRICT358,13418 + #define CYTHON_RESTRICTCYTHON_RESTRICT360,13463 +# define CYTHON_UNUSED CYTHON_UNUSED366,13643 +# define CYTHON_UNUSEDCYTHON_UNUSED368,13708 +# define CYTHON_UNUSED CYTHON_UNUSED371,13820 +# define CYTHON_UNUSEDCYTHON_UNUSED373,13881 + template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }CYTHON_MAYBE_UNUSED_VAR378,13980 +# define CYTHON_MAYBE_UNUSED_VAR(CYTHON_MAYBE_UNUSED_VAR380,14056 +# define CYTHON_NCP_UNUSEDCYTHON_NCP_UNUSED385,14180 +# define CYTHON_NCP_UNUSED CYTHON_NCP_UNUSED387,14215 +#define __Pyx_void_to_None(__Pyx_void_to_None390,14272 + #define CYTHON_INLINE CYTHON_INLINE397,14530 + #define CYTHON_INLINE CYTHON_INLINE399,14604 +void __Pyx_call_destructor(T& x) {__Pyx_call_destructor403,14674 +class __Pyx_FakeReference {__Pyx_FakeReference407,14744 + __Pyx_FakeReference() : ptr(NULL) { }__Pyx_FakeReference409,14782 + __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }__Pyx_FakeReference410,14824 + T *operator->() { return ptr; }operator ->411,14894 + T *operator&() { return ptr; }operator &412,14930 + operator T&() { return *ptr; }operator T&413,14965 + template<typename U> bool operator ==(U other) { return *ptr == other; }operator ==414,15000 + template<typename U> bool operator !=(U other) { return *ptr != other; }operator !=415,15077 + T *ptr;ptr417,15165 + #define _USE_MATH_DEFINES_USE_MATH_DEFINES421,15223 +#define __PYX_NAN(__PYX_NAN425,15287 +static CYTHON_INLINE float __PYX_NAN() {__PYX_NAN427,15327 +#define __Pyx_truncl __Pyx_truncl434,15496 +#define __Pyx_truncl __Pyx_truncl436,15529 +#define __PYX_ERR(__PYX_ERR440,15566 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide446,15749 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide447,15819 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide449,15902 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide450,15968 + #define __PYX_EXTERN_C __PYX_EXTERN_C455,16093 + #define __PYX_EXTERN_C __PYX_EXTERN_C457,16139 +#define __PYX_HAVE__pyisda__date__PYX_HAVE__pyisda__date461,16190 +#define __PYX_HAVE_API__pyisda__date__PYX_HAVE_API__pyisda__date462,16223 +#define CYTHON_WITHOUT_ASSERTIONSCYTHON_WITHOUT_ASSERTIONS480,16635 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;p483,16677 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;s483,16677 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;n483,16677 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;encoding483,16677 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_unicode484,16764 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_str484,16764 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;intern484,16764 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;__Pyx_StringTabEntry484,16764 +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII __PYX_DEFAULT_STRING_ENCODING_IS_ASCII486,16866 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT487,16915 +#define __PYX_DEFAULT_STRING_ENCODING __PYX_DEFAULT_STRING_ENCODING488,16966 +#define __Pyx_PyObject_FromString __Pyx_PyObject_FromString489,17007 +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyObject_FromStringAndSize490,17066 +#define __Pyx_uchar_cast(__Pyx_uchar_cast491,17139 +#define __Pyx_long_cast(__Pyx_long_cast492,17186 +#define __Pyx_fits_Py_ssize_t(__Pyx_fits_Py_ssize_t493,17223 + #define __Pyx_sst_abs(__Pyx_sst_abs505,17829 + #define __Pyx_sst_abs(__Pyx_sst_abs507,17912 + #define __Pyx_sst_abs(__Pyx_sst_abs509,17991 + #define __Pyx_sst_abs(__Pyx_sst_abs511,18081 + #define __Pyx_sst_abs(__Pyx_sst_abs513,18192 + #define __Pyx_sst_abs(__Pyx_sst_abs515,18263 + #define __Pyx_sst_abs(__Pyx_sst_abs517,18325 +#define __Pyx_PyByteArray_FromString(__Pyx_PyByteArray_FromString521,18547 +#define __Pyx_PyByteArray_FromStringAndSize(__Pyx_PyByteArray_FromStringAndSize522,18657 +#define __Pyx_PyBytes_FromString __Pyx_PyBytes_FromString523,18756 +#define __Pyx_PyBytes_FromStringAndSize __Pyx_PyBytes_FromStringAndSize524,18815 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString527,18978 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize528,19045 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString530,19125 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize531,19194 +#define __Pyx_PyObject_AsSString(__Pyx_PyObject_AsSString533,19277 +#define __Pyx_PyObject_AsUString(__Pyx_PyObject_AsUString534,19360 +#define __Pyx_PyObject_FromCString(__Pyx_PyObject_FromCString535,19445 +#define __Pyx_PyBytes_FromCString(__Pyx_PyBytes_FromCString536,19526 +#define __Pyx_PyByteArray_FromCString(__Pyx_PyByteArray_FromCString537,19606 +#define __Pyx_PyStr_FromCString(__Pyx_PyStr_FromCString538,19694 +#define __Pyx_PyUnicode_FromCString(__Pyx_PyUnicode_FromCString539,19772 +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)__Pyx_Py_UNICODE_strlen541,19879 +#define __Pyx_Py_UNICODE_strlen __Pyx_Py_UNICODE_strlen548,20054 +#define __Pyx_PyUnicode_FromUnicode(__Pyx_PyUnicode_FromUnicode550,20111 +#define __Pyx_PyUnicode_FromUnicodeAndLength __Pyx_PyUnicode_FromUnicodeAndLength551,20209 +#define __Pyx_PyUnicode_AsUnicode __Pyx_PyUnicode_AsUnicode552,20276 +#define __Pyx_NewRef(__Pyx_NewRef553,20341 +#define __Pyx_Owned_Py_None(__Pyx_Owned_Py_None554,20389 +#define __Pyx_PyBool_FromLong(__Pyx_PyBool_FromLong555,20442 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble561,20821 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble563,20930 +#define __pyx_PyFloat_AsFloat(__pyx_PyFloat_AsFloat565,20991 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int567,21086 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int569,21182 +#define __Pyx_PyNumber_Float(__Pyx_PyNumber_Float571,21277 +static int __Pyx_sys_getdefaultencoding_not_ascii;__Pyx_sys_getdefaultencoding_not_ascii573,21438 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params574,21489 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize619,23218 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize621,23319 +static char* __PYX_DEFAULT_STRING_ENCODING;__PYX_DEFAULT_STRING_ENCODING623,23486 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params624,23530 + #define likely(likely650,24424 + #define unlikely(unlikely651,24473 + #define likely(likely653,24558 + #define unlikely(unlikely654,24584 +static PyObject *__pyx_m;__pyx_m657,24633 +static PyObject *__pyx_d;__pyx_d658,24659 +static PyObject *__pyx_b;__pyx_b659,24685 +static PyObject *__pyx_empty_tuple;__pyx_empty_tuple660,24711 +static PyObject *__pyx_empty_bytes;__pyx_empty_bytes661,24747 +static PyObject *__pyx_empty_unicode;__pyx_empty_unicode662,24783 +static int __pyx_lineno;__pyx_lineno663,24821 +static int __pyx_clineno = 0;__pyx_clineno664,24846 +static const char * __pyx_cfilenm= __FILE__;__pyx_cfilenm665,24876 +static const char *__pyx_filename;__pyx_filename666,24921 +static const char *__pyx_f[] = {__pyx_f669,24958 +typedef long __pyx_t_6pyisda_4date_TDate;__pyx_t_6pyisda_4date_TDate684,25226 +enum __pyx_t_6pyisda_4date_DCC {__pyx_t_6pyisda_4date_DCC695,25504 + __pyx_e_6pyisda_4date_ACT_365 = 1L,__pyx_e_6pyisda_4date_ACT_365696,25537 + __pyx_e_6pyisda_4date_ACT_365F = 2L,__pyx_e_6pyisda_4date_ACT_365F697,25575 + __pyx_e_6pyisda_4date_ACT_360 = 3L__pyx_e_6pyisda_4date_ACT_360698,25614 + #define CYTHON_REFNANNY CYTHON_REFNANNY704,25742 + void (*INCREF)(void*, PyObject*, int);INCREF708,25816 + void (*DECREF)(void*, PyObject*, int);DECREF709,25859 + void (*GOTREF)(void*, PyObject*, int);GOTREF710,25902 + void (*GIVEREF)(void*, PyObject*, int);GIVEREF711,25945 + void* (*SetupContext)(const char*, int, const char*);SetupContext712,25989 + void (*FinishContext)(void**);FinishContext713,26047 + } __Pyx_RefNannyAPIStruct;__Pyx_RefNannyAPIStruct714,26082 + static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;__Pyx_RefNanny715,26111 + #define __Pyx_RefNannyDeclarations __Pyx_RefNannyDeclarations717,26248 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext719,26333 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext728,26769 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext731,26917 + #define __Pyx_INCREF(__Pyx_INCREF733,27015 + #define __Pyx_DECREF(__Pyx_DECREF734,27108 + #define __Pyx_GOTREF(__Pyx_GOTREF735,27201 + #define __Pyx_GIVEREF(__Pyx_GIVEREF736,27294 + #define __Pyx_XINCREF(__Pyx_XINCREF737,27388 + #define __Pyx_XDECREF(__Pyx_XDECREF738,27467 + #define __Pyx_XGOTREF(__Pyx_XGOTREF739,27546 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF740,27625 + #define __Pyx_RefNannyDeclarations__Pyx_RefNannyDeclarations742,27710 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext743,27747 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext744,27803 + #define __Pyx_INCREF(__Pyx_INCREF745,27843 + #define __Pyx_DECREF(__Pyx_DECREF746,27882 + #define __Pyx_GOTREF(__Pyx_GOTREF747,27921 + #define __Pyx_GIVEREF(__Pyx_GIVEREF748,27947 + #define __Pyx_XINCREF(__Pyx_XINCREF749,27974 + #define __Pyx_XDECREF(__Pyx_XDECREF750,28015 + #define __Pyx_XGOTREF(__Pyx_XGOTREF751,28056 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF752,28083 +#define __Pyx_XDECREF_SET(__Pyx_XDECREF_SET754,28118 +#define __Pyx_DECREF_SET(__Pyx_DECREF_SET758,28249 +#define __Pyx_CLEAR(__Pyx_CLEAR762,28378 +#define __Pyx_XCLEAR(__Pyx_XCLEAR763,28482 +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {__Pyx_PyObject_GetAttrStr767,28662 +#define __Pyx_PyObject_GetAttrStr(__Pyx_PyObject_GetAttrStr778,29059 +#define __Pyx_PyThreadState_declare __Pyx_PyThreadState_declare786,29269 +#define __Pyx_PyThreadState_assign __Pyx_PyThreadState_assign787,29335 +#define __Pyx_PyThreadState_declare__Pyx_PyThreadState_declare789,29413 +#define __Pyx_PyThreadState_assign__Pyx_PyThreadState_assign790,29449 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState795,29551 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState796,29665 +#define __Pyx_ErrRestore(__Pyx_ErrRestore797,29777 +#define __Pyx_ErrFetch(__Pyx_ErrFetch798,29875 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState802,30220 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState803,30303 +#define __Pyx_ErrRestore(__Pyx_ErrRestore804,30382 +#define __Pyx_ErrFetch(__Pyx_ErrFetch805,30456 +#define __Pyx_PyObject_Call(__Pyx_PyObject_Call820,31032 +#define __Pyx_PyInt_EqObjC(__Pyx_PyInt_EqObjC827,31264 +#define __Pyx_PyCFunction_FastCall(__Pyx_PyCFunction_FastCall835,31545 +#define __Pyx_PyFunction_FastCall(__Pyx_PyFunction_FastCall840,31680 +#define __Pyx_PyFunction_FastCallDict(__Pyx_PyFunction_FastCallDict845,31952 + PyCodeObject* code_object;code_object874,32959 + int code_line;code_line875,32990 +} __Pyx_CodeObjectCacheEntry;__Pyx_CodeObjectCacheEntry876,33009 +struct __Pyx_CodeObjectCache {__Pyx_CodeObjectCache877,33039 + int count;count878,33070 + int max_count;max_count879,33085 + __Pyx_CodeObjectCacheEntry* entries;entries880,33104 +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};__pyx_code_cache882,33148 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString912,34247 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString914,34319 +static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0;__pyx_ptype_7cpython_4type_type933,34842 +static PyTypeObject *__pyx_ptype_7cpython_4bool_bool = 0;__pyx_ptype_7cpython_4bool_bool966,35662 +static PyTypeObject *__pyx_ptype_7cpython_7complex_complex = 0;__pyx_ptype_7cpython_7complex_complex975,35911 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_date = 0;__pyx_ptype_7cpython_8datetime_date1014,36906 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_time = 0;__pyx_ptype_7cpython_8datetime_time1015,36968 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_datetime = 0;__pyx_ptype_7cpython_8datetime_datetime1016,37030 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_timedelta = 0;__pyx_ptype_7cpython_8datetime_timedelta1017,37096 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_tzinfo = 0;__pyx_ptype_7cpython_8datetime_tzinfo1018,37163 +#define __Pyx_MODULE_NAME __Pyx_MODULE_NAME1024,37579 +int __pyx_module_is_main_pyisda__date = 0;__pyx_module_is_main_pyisda__date1025,37619 +static PyObject *__pyx_builtin_ValueError;__pyx_builtin_ValueError1028,37701 +static const char __pyx_k_s[] = "s";__pyx_k_s1029,37744 +static const char __pyx_k_day[] = "day";__pyx_k_day1030,37781 +static const char __pyx_k_main[] = "__main__";__pyx_k_main1031,37822 +static const char __pyx_k_test[] = "__test__";__pyx_k_test1032,37869 +static const char __pyx_k_year[] = "year";__pyx_k_year1033,37916 +static const char __pyx_k_month[] = "month";__pyx_k_month1034,37959 +static const char __pyx_k_utf_8[] = "utf-8";__pyx_k_utf_81035,38004 +static const char __pyx_k_encode[] = "encode";__pyx_k_encode1036,38049 +static const char __pyx_k_format[] = "format";__pyx_k_format1037,38096 +static const char __pyx_k_import[] = "__import__";__pyx_k_import1038,38143 +static const char __pyx_k_c_string[] = "c_string";__pyx_k_c_string1039,38194 +static const char __pyx_k_datetime[] = "datetime";__pyx_k_datetime1040,38245 +static const char __pyx_k_day_count[] = "day_count";__pyx_k_day_count1041,38296 +static const char __pyx_k_ValueError[] = "ValueError";__pyx_k_ValueError1042,38349 +static const char __pyx_k_pyisda_date[] = "pyisda.date";__pyx_k_pyisda_date1043,38404 +static const char __pyx_k_dcc_tostring[] = "dcc_tostring";__pyx_k_dcc_tostring1044,38461 +static const char __pyx_k_0_is_not_a_valid_day_count[] = "{0} is not a valid day count";__pyx_k_0_is_not_a_valid_day_count1045,38520 +static const char __pyx_k_home_guillaume_projects_code_py[] = "/home/guillaume/projects/code/python/pyisda/pyisda/date.pyx";__pyx_k_home_guillaume_projects_code_py1046,38609 +static PyObject *__pyx_kp_s_0_is_not_a_valid_day_count;__pyx_kp_s_0_is_not_a_valid_day_count1047,38734 +static PyObject *__pyx_n_s_ValueError;__pyx_n_s_ValueError1048,38790 +static PyObject *__pyx_n_s_c_string;__pyx_n_s_c_string1049,38829 +static PyObject *__pyx_n_s_datetime;__pyx_n_s_datetime1050,38866 +static PyObject *__pyx_n_s_day;__pyx_n_s_day1051,38903 +static PyObject *__pyx_n_s_day_count;__pyx_n_s_day_count1052,38935 +static PyObject *__pyx_n_s_dcc_tostring;__pyx_n_s_dcc_tostring1053,38973 +static PyObject *__pyx_n_s_encode;__pyx_n_s_encode1054,39014 +static PyObject *__pyx_n_s_format;__pyx_n_s_format1055,39049 +static PyObject *__pyx_kp_s_home_guillaume_projects_code_py;__pyx_kp_s_home_guillaume_projects_code_py1056,39084 +static PyObject *__pyx_n_s_import;__pyx_n_s_import1057,39145 +static PyObject *__pyx_n_s_main;__pyx_n_s_main1058,39180 +static PyObject *__pyx_n_s_month;__pyx_n_s_month1059,39213 +static PyObject *__pyx_n_s_pyisda_date;__pyx_n_s_pyisda_date1060,39247 +static PyObject *__pyx_n_s_s;__pyx_n_s_s1061,39287 +static PyObject *__pyx_n_s_test;__pyx_n_s_test1062,39317 +static PyObject *__pyx_kp_s_utf_8;__pyx_kp_s_utf_81063,39350 +static PyObject *__pyx_n_s_year;__pyx_n_s_year1064,39385 +static PyObject *__pyx_int_0;__pyx_int_01067,39689 +static PyObject *__pyx_tuple_;__pyx_tuple_1068,39719 +static PyObject *__pyx_tuple__2;__pyx_tuple__21069,39750 +static PyObject *__pyx_codeobj__3;__pyx_codeobj__31070,39783 +static __pyx_t_6pyisda_4date_TDate __pyx_f_6pyisda_4date_pydate_to_TDate(PyDateTime_Date *__pyx_v_d) {__pyx_f_6pyisda_4date_pydate_to_TDate1080,40033 +static PyDateTime_Date *__pyx_f_6pyisda_4date_TDate_to_pydate(__pyx_t_6pyisda_4date_TDate __pyx_v_d, CYTHON_UNUSED int __pyx_skip_dispatch) {__pyx_f_6pyisda_4date_TDate_to_pydate1138,42557 +static char __pyx_doc_6pyisda_4date_TDate_to_pydate[] = "TDate_to_pydate(TDate d) -> date";__pyx_doc_6pyisda_4date_TDate_to_pydate1203,45002 +static PyObject *__pyx_pw_6pyisda_4date_1TDate_to_pydate(PyObject *__pyx_self, PyObject *__pyx_arg_d) {__pyx_pw_6pyisda_4date_1TDate_to_pydate1204,45094 +static PyObject *__pyx_pf_6pyisda_4date_TDate_to_pydate(CYTHON_UNUSED PyObject *__pyx_self, __pyx_t_6pyisda_4date_TDate __pyx_v_d) {__pyx_pf_6pyisda_4date_TDate_to_pydate1225,45957 +static long __pyx_f_6pyisda_4date_dcc(PyObject *__pyx_v_day_count) {__pyx_f_6pyisda_4date_dcc1256,47003 +static char __pyx_doc_6pyisda_4date_2dcc_tostring[] = "dcc_tostring(long day_count)";__pyx_doc_6pyisda_4date_2dcc_tostring1439,53982 +static PyMethodDef __pyx_mdef_6pyisda_4date_3dcc_tostring = {"dcc_tostring", (PyCFunction)__pyx_pw_6pyisda_4date_3dcc_tostring, METH_O, __pyx_doc_6pyisda_4date_2dcc_tostring};__pyx_mdef_6pyisda_4date_3dcc_tostring1440,54068 +static PyObject *__pyx_pw_6pyisda_4date_3dcc_tostring(PyObject *__pyx_self, PyObject *__pyx_arg_day_count) {__pyx_pw_6pyisda_4date_3dcc_tostring1441,54244 +static PyObject *__pyx_pf_6pyisda_4date_2dcc_tostring(CYTHON_UNUSED PyObject *__pyx_self, long __pyx_v_day_count) {__pyx_pf_6pyisda_4date_2dcc_tostring1462,55106 +static CYTHON_INLINE void __pyx_f_7cpython_8datetime_import_datetime(void) {__pyx_f_7cpython_8datetime_import_datetime1564,58222 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_date_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day) {__pyx_f_7cpython_8datetime_date_new1597,59295 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_new(int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_time_new1644,61159 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day, int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_datetime_new1691,63293 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_timedelta_new(int __pyx_v_days, int __pyx_v_seconds, int __pyx_v_useconds) {__pyx_f_7cpython_8datetime_timedelta_new1738,65596 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_tzinfo1785,67398 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_tzinfo1859,69493 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_year1933,71586 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_month1970,72432 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_day2007,73279 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_year2044,74124 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_month2081,75006 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_day2118,75889 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_hour2155,76751 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_minute2192,77621 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_second2229,78509 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_microsecond2266,79417 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_hour2303,80354 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_minute2340,81260 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_second2377,82184 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_microsecond2414,83128 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_days(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_days2451,84092 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_seconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_seconds2488,85013 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_microseconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_microseconds2524,85977 +static PyMethodDef __pyx_methods[] = {__pyx_methods2550,86745 +static struct PyModuleDef __pyx_moduledef = {__pyx_moduledef2556,86955 +static __Pyx_StringTabEntry __pyx_string_tab[] = {__pyx_string_tab2573,87323 +static int __Pyx_InitCachedBuiltins(void) {__Pyx_InitCachedBuiltins2594,88907 +static int __Pyx_InitCachedConstants(void) {__Pyx_InitCachedConstants2601,89135 +static int __Pyx_InitGlobals(void) {__Pyx_InitGlobals2634,90668 +PyMODINIT_FUNC initdate(void)initdate2644,90993 +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {__Pyx_RefNannyImportAPI2824,99576 +static PyObject *__Pyx_GetBuiltinName(PyObject *name) {__Pyx_GetBuiltinName2840,100004 +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {__Pyx_ErrRestoreInState2855,100430 +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx_ErrFetchInState2867,100890 +static void __Pyx_WriteUnraisable(const char *name, CYTHON_UNUSED int clineno,__Pyx_WriteUnraisable2878,101251 +static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {__Pyx_TypeTest2920,102449 +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {__Pyx_PyObject_Call2934,102902 +static PyObject* __Pyx_PyInt_EqObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED int inplace) {__Pyx_PyInt_EqObjC2954,103565 +static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) {__Pyx_PyCFunction_FastCall3039,106990 +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,__Pyx_PyFunction_FastCallNoKw3058,107866 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) {__Pyx_PyFunction_FastCallDict3087,108795 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallMethO3177,111681 +static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx__PyObject_CallOneArg3197,112335 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg3207,112659 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg3229,113403 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb,__Pyx_Raise3241,113746 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {__Pyx_Raise3292,115226 + static CYTHON_INLINE PyObject* __Pyx_decode_c_string(__Pyx_decode_c_string3403,118879 + static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {__Pyx_Import3436,119977 + static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {__pyx_bisect_code_objects3510,122264 +static PyCodeObject *__pyx_find_code_object(int code_line) {__pyx_find_code_object3531,122897 +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {__pyx_insert_code_object3545,123457 +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(__Pyx_CreateCodeObjectForTraceback3593,125247 +static void __Pyx_AddTraceback(const char *funcname, int c_line,__Pyx_AddTraceback3645,126856 + #define __PYX_VERIFY_RETURN_INT(__PYX_VERIFY_RETURN_INT3671,127784 +#define __PYX_VERIFY_RETURN_INT_EXC(__PYX_VERIFY_RETURN_INT_EXC3673,127925 +#define __PYX__VERIFY_RETURN_INT(__PYX__VERIFY_RETURN_INT3675,128066 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {__Pyx_PyInt_From_int3693,128734 + static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {__Pyx_PyInt_As_long3724,129872 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {__Pyx_PyInt_From_long3913,139690 + static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {__Pyx_PyInt_As_int3944,140839 + static int __Pyx_check_binary_version(void) {__Pyx_check_binary_version4133,150570 + static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig) {__Pyx_ExportFunction4149,151219 +#define __PYX_HAVE_RT_ImportModule__PYX_HAVE_RT_ImportModule4187,152150 +static PyObject *__Pyx_ImportModule(const char *name) {__Pyx_ImportModule4188,152185 +#define __PYX_HAVE_RT_ImportType__PYX_HAVE_RT_ImportType4205,152580 +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,__Pyx_ImportType4206,152613 + static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {__Pyx_InitStrings4269,154521 +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {__Pyx_PyUnicode_FromString4299,155447 +static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {__Pyx_PyObject_AsString4302,155608 +static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {__Pyx_PyObject_AsStringAndSize4306,155754 +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {__Pyx_PyObject_IsTrue4364,157630 +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {__Pyx_PyNumber_IntOrLong4369,157827 +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {__Pyx_PyIndex_AsSsize_t4420,158975 +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {__Pyx_PyInt_FromSize_t4482,161266 + +pyisda/pyisda/logging.pyx,244 +def enable_logging():enable_logging3,53 +def disable_logging():disable_logging11,239 +def set_logging_file(str file_name, TBoolean append = True):set_logging_file15,312 +def log_message(str msg):log_message22,554 +def flush():flush27,679 + +pyisda/pyisda/cdsone.cpp,46617 +#define PY_SSIZE_T_CLEANPY_SSIZE_T_CLEAN20,377 +#define CYTHON_ABI CYTHON_ABI27,706 + #define offsetof(offsetof30,771 + #define __stdcall__stdcall34,911 + #define __cdecl__cdecl37,960 + #define __fastcall__fastcall40,1010 + #define DL_IMPORT(DL_IMPORT44,1067 + #define DL_EXPORT(DL_EXPORT47,1117 + #define HAVE_LONG_LONGHAVE_LONG_LONG51,1266 + #define PY_LONG_LONG PY_LONG_LONG55,1330 + #define Py_HUGE_VAL Py_HUGE_VAL58,1390 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY61,1448 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON62,1485 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON63,1524 + #undef CYTHON_USE_TYPE_SLOTSCYTHON_USE_TYPE_SLOTS64,1564 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS65,1595 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS66,1629 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS67,1661 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS68,1696 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS69,1733 + #undef CYTHON_USE_UNICODE_INTERNALSCYTHON_USE_UNICODE_INTERNALS70,1773 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS71,1811 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER72,1852 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER73,1887 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS74,1925 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS75,1962 + #undef CYTHON_AVOID_BORROWED_REFSCYTHON_AVOID_BORROWED_REFS76,2002 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS77,2038 + #undef CYTHON_ASSUME_SAFE_MACROSCYTHON_ASSUME_SAFE_MACROS78,2077 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS79,2112 + #undef CYTHON_UNPACK_METHODSCYTHON_UNPACK_METHODS80,2150 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS81,2181 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE82,2215 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE83,2249 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL84,2286 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL85,2314 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY87,2375 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON88,2412 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON89,2451 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS91,2523 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS93,2568 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS94,2600 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS95,2635 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS96,2672 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS98,2751 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER100,2803 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER101,2838 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS102,2876 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS103,2913 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS105,2990 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS108,3076 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS111,3157 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE113,3202 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE114,3236 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL115,3273 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL116,3301 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY118,3338 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON119,3375 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON120,3414 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS122,3486 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS125,3558 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS126,3592 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS128,3670 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS131,3750 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS132,3789 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS134,3877 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS137,3966 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS140,4056 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER143,4142 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER144,4179 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER146,4263 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS149,4349 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS152,4435 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS155,4516 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE158,4596 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL161,4673 +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCCALL165,4756 + #undef SHIFTSHIFT169,4904 + #undef BASEBASE170,4919 + #undef MASKMASK171,4933 + #define Py_OptimizeFlag Py_OptimizeFlag174,5043 +#define __PYX_BUILD_PY_SSIZE_T __PYX_BUILD_PY_SSIZE_T176,5078 +#define CYTHON_FORMAT_SSIZE_T CYTHON_FORMAT_SSIZE_T177,5113 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME179,5172 + #define __Pyx_PyCode_New(__Pyx_PyCode_New180,5222 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType182,5396 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME184,5448 + #define __Pyx_PyCode_New(__Pyx_PyCode_New185,5495 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType187,5670 + #define Py_TPFLAGS_CHECKTYPES Py_TPFLAGS_CHECKTYPES190,5752 + #define Py_TPFLAGS_HAVE_INDEX Py_TPFLAGS_HAVE_INDEX193,5823 + #define Py_TPFLAGS_HAVE_NEWBUFFER Py_TPFLAGS_HAVE_NEWBUFFER196,5898 + #define Py_TPFLAGS_HAVE_FINALIZE Py_TPFLAGS_HAVE_FINALIZE199,5976 + #define METH_FASTCALL METH_FASTCALL202,6042 + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args,__Pyx_PyCFunctionFast203,6071 + #define __Pyx_PyCFunctionFast __Pyx_PyCFunctionFast206,6240 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check209,6320 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check212,6498 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED215,6608 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY216,6642 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH218,6805 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR219,6871 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE220,6939 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND221,7013 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA222,7073 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ223,7133 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE224,7199 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE225,7274 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED227,7411 + #define PyUnicode_1BYTE_KIND PyUnicode_1BYTE_KIND228,7445 + #define PyUnicode_2BYTE_KIND PyUnicode_2BYTE_KIND229,7479 + #define PyUnicode_4BYTE_KIND PyUnicode_4BYTE_KIND230,7513 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY231,7547 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH232,7593 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR233,7657 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE234,7739 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND235,7831 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA236,7894 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ237,7969 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE238,8055 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE239,8141 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat242,8248 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe243,8311 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat245,8380 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe246,8447 + #define PyUnicode_Contains(PyUnicode_Contains250,8675 + #define PyByteArray_Check(PyByteArray_Check253,8804 + #define PyObject_Format(PyObject_Format256,8946 + #define PyObject_Malloc(PyObject_Malloc259,9097 + #define PyObject_Free(PyObject_Free260,9144 + #define PyObject_Realloc(PyObject_Realloc261,9189 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars264,9275 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber265,9338 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars267,9434 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber268,9502 +#define __Pyx_PyString_FormatSafe(__Pyx_PyString_FormatSafe270,9592 +#define __Pyx_PyUnicode_FormatSafe(__Pyx_PyUnicode_FormatSafe271,9720 + #define __Pyx_PyString_Format(__Pyx_PyString_Format273,9869 + #define __Pyx_PyString_Format(__Pyx_PyString_Format275,9937 + #define PyObject_ASCII(PyObject_ASCII278,10058 + #define PyBaseString_Type PyBaseString_Type281,10147 + #define PyStringObject PyStringObject282,10201 + #define PyString_Type PyString_Type283,10256 + #define PyString_Check PyString_Check284,10310 + #define PyString_CheckExact PyString_CheckExact285,10365 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check288,10458 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact289,10519 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check291,10596 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact292,10682 + #define PySet_CheckExact(PySet_CheckExact295,10815 +#define __Pyx_TypeCheck(__Pyx_TypeCheck297,10891 +#define __Pyx_PyException_Check(__Pyx_PyException_Check298,10972 + #define PyIntObject PyIntObject300,11073 + #define PyInt_Type PyInt_Type301,11125 + #define PyInt_Check(PyInt_Check302,11176 + #define PyInt_CheckExact(PyInt_CheckExact303,11232 + #define PyInt_FromString PyInt_FromString304,11293 + #define PyInt_FromUnicode PyInt_FromUnicode305,11350 + #define PyInt_FromLong PyInt_FromLong306,11408 + #define PyInt_FromSize_t PyInt_FromSize_t307,11463 + #define PyInt_FromSsize_t PyInt_FromSsize_t308,11520 + #define PyInt_AsLong PyInt_AsLong309,11578 + #define PyInt_AS_LONG PyInt_AS_LONG310,11631 + #define PyInt_AsSsize_t PyInt_AsSsize_t311,11685 + #define PyInt_AsUnsignedLongMask PyInt_AsUnsignedLongMask312,11741 + #define PyInt_AsUnsignedLongLongMask PyInt_AsUnsignedLongLongMask313,11806 + #define PyNumber_Int PyNumber_Int314,11875 + #define PyBoolObject PyBoolObject317,11961 + #define PyUnicode_InternFromString(PyUnicode_InternFromString321,12111 + typedef long Py_hash_t;Py_hash_t325,12225 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t326,12251 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t327,12299 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t329,12351 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t330,12402 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New333,12484 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New335,12603 + #define __Pyx_PyAsyncMethodsStruct __Pyx_PyAsyncMethodsStruct339,12752 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync340,12806 + unaryfunc am_await;am_await343,12901 + unaryfunc am_aiter;am_aiter344,12929 + unaryfunc am_anext;am_anext345,12957 + } __Pyx_PyAsyncMethodsStruct;__Pyx_PyAsyncMethodsStruct346,12985 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync347,13019 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync350,13132 + #define CYTHON_RESTRICT CYTHON_RESTRICT354,13228 + #define CYTHON_RESTRICT CYTHON_RESTRICT356,13315 + #define CYTHON_RESTRICT CYTHON_RESTRICT358,13420 + #define CYTHON_RESTRICTCYTHON_RESTRICT360,13465 +# define CYTHON_UNUSED CYTHON_UNUSED366,13645 +# define CYTHON_UNUSEDCYTHON_UNUSED368,13710 +# define CYTHON_UNUSED CYTHON_UNUSED371,13822 +# define CYTHON_UNUSEDCYTHON_UNUSED373,13883 + template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }CYTHON_MAYBE_UNUSED_VAR378,13982 +# define CYTHON_MAYBE_UNUSED_VAR(CYTHON_MAYBE_UNUSED_VAR380,14058 +# define CYTHON_NCP_UNUSEDCYTHON_NCP_UNUSED385,14182 +# define CYTHON_NCP_UNUSED CYTHON_NCP_UNUSED387,14217 +#define __Pyx_void_to_None(__Pyx_void_to_None390,14274 + #define CYTHON_INLINE CYTHON_INLINE397,14532 + #define CYTHON_INLINE CYTHON_INLINE399,14606 +void __Pyx_call_destructor(T& x) {__Pyx_call_destructor403,14676 +class __Pyx_FakeReference {__Pyx_FakeReference407,14746 + __Pyx_FakeReference() : ptr(NULL) { }__Pyx_FakeReference409,14784 + __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }__Pyx_FakeReference410,14826 + T *operator->() { return ptr; }operator ->411,14896 + T *operator&() { return ptr; }operator &412,14932 + operator T&() { return *ptr; }operator T&413,14967 + template<typename U> bool operator ==(U other) { return *ptr == other; }operator ==414,15002 + template<typename U> bool operator !=(U other) { return *ptr != other; }operator !=415,15079 + T *ptr;ptr417,15167 + #define _USE_MATH_DEFINES_USE_MATH_DEFINES421,15225 +#define __PYX_NAN(__PYX_NAN425,15289 +static CYTHON_INLINE float __PYX_NAN() {__PYX_NAN427,15329 +#define __Pyx_truncl __Pyx_truncl434,15498 +#define __Pyx_truncl __Pyx_truncl436,15531 +#define __PYX_ERR(__PYX_ERR440,15568 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide446,15751 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide447,15821 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide449,15904 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide450,15970 + #define __PYX_EXTERN_C __PYX_EXTERN_C455,16095 + #define __PYX_EXTERN_C __PYX_EXTERN_C457,16141 +#define __PYX_HAVE__pyisda__cdsone__PYX_HAVE__pyisda__cdsone461,16192 +#define __PYX_HAVE_API__pyisda__cdsone__PYX_HAVE_API__pyisda__cdsone462,16227 +#define CYTHON_WITHOUT_ASSERTIONSCYTHON_WITHOUT_ASSERTIONS497,17033 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;p500,17075 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;s500,17075 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;n500,17075 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;encoding500,17075 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_unicode501,17162 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_str501,17162 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;intern501,17162 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;__Pyx_StringTabEntry501,17162 +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII __PYX_DEFAULT_STRING_ENCODING_IS_ASCII503,17264 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT504,17313 +#define __PYX_DEFAULT_STRING_ENCODING __PYX_DEFAULT_STRING_ENCODING505,17364 +#define __Pyx_PyObject_FromString __Pyx_PyObject_FromString506,17405 +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyObject_FromStringAndSize507,17464 +#define __Pyx_uchar_cast(__Pyx_uchar_cast508,17537 +#define __Pyx_long_cast(__Pyx_long_cast509,17584 +#define __Pyx_fits_Py_ssize_t(__Pyx_fits_Py_ssize_t510,17621 + #define __Pyx_sst_abs(__Pyx_sst_abs522,18227 + #define __Pyx_sst_abs(__Pyx_sst_abs524,18310 + #define __Pyx_sst_abs(__Pyx_sst_abs526,18389 + #define __Pyx_sst_abs(__Pyx_sst_abs528,18479 + #define __Pyx_sst_abs(__Pyx_sst_abs530,18590 + #define __Pyx_sst_abs(__Pyx_sst_abs532,18661 + #define __Pyx_sst_abs(__Pyx_sst_abs534,18723 +#define __Pyx_PyByteArray_FromString(__Pyx_PyByteArray_FromString538,18945 +#define __Pyx_PyByteArray_FromStringAndSize(__Pyx_PyByteArray_FromStringAndSize539,19055 +#define __Pyx_PyBytes_FromString __Pyx_PyBytes_FromString540,19154 +#define __Pyx_PyBytes_FromStringAndSize __Pyx_PyBytes_FromStringAndSize541,19213 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString544,19376 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize545,19443 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString547,19523 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize548,19592 +#define __Pyx_PyObject_AsSString(__Pyx_PyObject_AsSString550,19675 +#define __Pyx_PyObject_AsUString(__Pyx_PyObject_AsUString551,19758 +#define __Pyx_PyObject_FromCString(__Pyx_PyObject_FromCString552,19843 +#define __Pyx_PyBytes_FromCString(__Pyx_PyBytes_FromCString553,19924 +#define __Pyx_PyByteArray_FromCString(__Pyx_PyByteArray_FromCString554,20004 +#define __Pyx_PyStr_FromCString(__Pyx_PyStr_FromCString555,20092 +#define __Pyx_PyUnicode_FromCString(__Pyx_PyUnicode_FromCString556,20170 +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)__Pyx_Py_UNICODE_strlen558,20277 +#define __Pyx_Py_UNICODE_strlen __Pyx_Py_UNICODE_strlen565,20452 +#define __Pyx_PyUnicode_FromUnicode(__Pyx_PyUnicode_FromUnicode567,20509 +#define __Pyx_PyUnicode_FromUnicodeAndLength __Pyx_PyUnicode_FromUnicodeAndLength568,20607 +#define __Pyx_PyUnicode_AsUnicode __Pyx_PyUnicode_AsUnicode569,20674 +#define __Pyx_NewRef(__Pyx_NewRef570,20739 +#define __Pyx_Owned_Py_None(__Pyx_Owned_Py_None571,20787 +#define __Pyx_PyBool_FromLong(__Pyx_PyBool_FromLong572,20840 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble578,21219 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble580,21328 +#define __pyx_PyFloat_AsFloat(__pyx_PyFloat_AsFloat582,21389 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int584,21484 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int586,21580 +#define __Pyx_PyNumber_Float(__Pyx_PyNumber_Float588,21675 +static int __Pyx_sys_getdefaultencoding_not_ascii;__Pyx_sys_getdefaultencoding_not_ascii590,21836 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params591,21887 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize636,23616 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize638,23717 +static char* __PYX_DEFAULT_STRING_ENCODING;__PYX_DEFAULT_STRING_ENCODING640,23884 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params641,23928 + #define likely(likely667,24822 + #define unlikely(unlikely668,24871 + #define likely(likely670,24956 + #define unlikely(unlikely671,24982 +static PyObject *__pyx_m;__pyx_m674,25031 +static PyObject *__pyx_d;__pyx_d675,25057 +static PyObject *__pyx_b;__pyx_b676,25083 +static PyObject *__pyx_empty_tuple;__pyx_empty_tuple677,25109 +static PyObject *__pyx_empty_bytes;__pyx_empty_bytes678,25145 +static PyObject *__pyx_empty_unicode;__pyx_empty_unicode679,25181 +static int __pyx_lineno;__pyx_lineno680,25219 +static int __pyx_clineno = 0;__pyx_clineno681,25244 +static const char * __pyx_cfilenm= __FILE__;__pyx_cfilenm682,25274 +static const char *__pyx_filename;__pyx_filename683,25319 +static const char *__pyx_f[] = {__pyx_f686,25356 +typedef long __pyx_t_6pyisda_4date_TDate;__pyx_t_6pyisda_4date_TDate703,25662 +typedef int __pyx_t_6pyisda_4legs_TBoolean;__pyx_t_6pyisda_4legs_TBoolean712,25849 +enum __pyx_t_6pyisda_4date_DCC {__pyx_t_6pyisda_4date_DCC728,26335 + __pyx_e_6pyisda_4date_ACT_365 = 1L,__pyx_e_6pyisda_4date_ACT_365729,26368 + __pyx_e_6pyisda_4date_ACT_365F = 2L,__pyx_e_6pyisda_4date_ACT_365F730,26406 + __pyx_e_6pyisda_4date_ACT_360 = 3L__pyx_e_6pyisda_4date_ACT_360731,26445 +enum __pyx_t_6pyisda_5curve_Basis {__pyx_t_6pyisda_5curve_Basis741,26761 + __pyx_e_6pyisda_5curve_CONTINUOUS = 0x1388,__pyx_e_6pyisda_5curve_CONTINUOUS742,26797 + __pyx_e_6pyisda_5curve_DISCOUNT_RATE = 0x200,__pyx_e_6pyisda_5curve_DISCOUNT_RATE743,26843 + __pyx_e_6pyisda_5curve_SIMPLE_BASIS = 0,__pyx_e_6pyisda_5curve_SIMPLE_BASIS744,26891 + __pyx_e_6pyisda_5curve_ANNUAL_BASIS = 1,__pyx_e_6pyisda_5curve_ANNUAL_BASIS745,26934 + __pyx_e_6pyisda_5curve_DISCOUNT_FACTOR = -2L__pyx_e_6pyisda_5curve_DISCOUNT_FACTOR746,26977 +struct __pyx_obj_6pyisda_4legs_ContingentLeg {__pyx_obj_6pyisda_4legs_ContingentLeg756,27190 + TContingentLeg *_thisptr;_thisptr758,27253 +struct __pyx_obj_6pyisda_4legs_FeeLeg {__pyx_obj_6pyisda_4legs_FeeLeg768,27397 + TFeeLeg *_thisptr;_thisptr770,27453 +struct __pyx_obj_6pyisda_5curve_Curve {__pyx_obj_6pyisda_5curve_Curve781,27628 + std::shared_ptr<TCurve> _thisptr;_thisptr783,27684 +struct __pyx_obj_6pyisda_5curve_YieldCurve {__pyx_obj_6pyisda_5curve_YieldCurve794,27908 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base795,27953 + TDate *_dates;_dates796,28005 + size_t _ninstr;_ninstr797,28022 +struct __pyx_obj_6pyisda_5curve_SpreadCurve {__pyx_obj_6pyisda_5curve_SpreadCurve808,28178 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base809,28224 + #define CYTHON_REFNANNY CYTHON_REFNANNY816,28368 + void (*INCREF)(void*, PyObject*, int);INCREF820,28442 + void (*DECREF)(void*, PyObject*, int);DECREF821,28485 + void (*GOTREF)(void*, PyObject*, int);GOTREF822,28528 + void (*GIVEREF)(void*, PyObject*, int);GIVEREF823,28571 + void* (*SetupContext)(const char*, int, const char*);SetupContext824,28615 + void (*FinishContext)(void**);FinishContext825,28673 + } __Pyx_RefNannyAPIStruct;__Pyx_RefNannyAPIStruct826,28708 + static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;__Pyx_RefNanny827,28737 + #define __Pyx_RefNannyDeclarations __Pyx_RefNannyDeclarations829,28874 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext831,28959 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext840,29395 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext843,29543 + #define __Pyx_INCREF(__Pyx_INCREF845,29641 + #define __Pyx_DECREF(__Pyx_DECREF846,29734 + #define __Pyx_GOTREF(__Pyx_GOTREF847,29827 + #define __Pyx_GIVEREF(__Pyx_GIVEREF848,29920 + #define __Pyx_XINCREF(__Pyx_XINCREF849,30014 + #define __Pyx_XDECREF(__Pyx_XDECREF850,30093 + #define __Pyx_XGOTREF(__Pyx_XGOTREF851,30172 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF852,30251 + #define __Pyx_RefNannyDeclarations__Pyx_RefNannyDeclarations854,30336 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext855,30373 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext856,30429 + #define __Pyx_INCREF(__Pyx_INCREF857,30469 + #define __Pyx_DECREF(__Pyx_DECREF858,30508 + #define __Pyx_GOTREF(__Pyx_GOTREF859,30547 + #define __Pyx_GIVEREF(__Pyx_GIVEREF860,30573 + #define __Pyx_XINCREF(__Pyx_XINCREF861,30600 + #define __Pyx_XDECREF(__Pyx_XDECREF862,30641 + #define __Pyx_XGOTREF(__Pyx_XGOTREF863,30682 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF864,30709 +#define __Pyx_XDECREF_SET(__Pyx_XDECREF_SET866,30744 +#define __Pyx_DECREF_SET(__Pyx_DECREF_SET870,30875 +#define __Pyx_CLEAR(__Pyx_CLEAR874,31004 +#define __Pyx_XCLEAR(__Pyx_XCLEAR875,31108 +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {__Pyx_PyObject_GetAttrStr879,31288 +#define __Pyx_PyObject_GetAttrStr(__Pyx_PyObject_GetAttrStr890,31685 +#define __Pyx_PyObject_Call(__Pyx_PyObject_Call919,32751 +#define __Pyx_PyThreadState_declare __Pyx_PyThreadState_declare924,32889 +#define __Pyx_PyThreadState_assign __Pyx_PyThreadState_assign925,32955 +#define __Pyx_PyThreadState_declare__Pyx_PyThreadState_declare927,33033 +#define __Pyx_PyThreadState_assign__Pyx_PyThreadState_assign928,33069 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState933,33171 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState934,33285 +#define __Pyx_ErrRestore(__Pyx_ErrRestore935,33397 +#define __Pyx_ErrFetch(__Pyx_ErrFetch936,33495 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState940,33840 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState941,33923 +#define __Pyx_ErrRestore(__Pyx_ErrRestore942,34002 +#define __Pyx_ErrFetch(__Pyx_ErrFetch943,34076 + PyCodeObject* code_object;code_object951,34316 + int code_line;code_line952,34347 +} __Pyx_CodeObjectCacheEntry;__Pyx_CodeObjectCacheEntry953,34366 +struct __Pyx_CodeObjectCache {__Pyx_CodeObjectCache954,34396 + int count;count955,34427 + int max_count;max_count956,34442 + __Pyx_CodeObjectCacheEntry* entries;entries957,34461 +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};__pyx_code_cache959,34505 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString989,35529 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString991,35601 +static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0;__pyx_ptype_7cpython_4type_type1013,36260 +static PyTypeObject *__pyx_ptype_7cpython_4bool_bool = 0;__pyx_ptype_7cpython_4bool_bool1046,37080 +static PyTypeObject *__pyx_ptype_7cpython_7complex_complex = 0;__pyx_ptype_7cpython_7complex_complex1055,37329 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_date = 0;__pyx_ptype_7cpython_8datetime_date1094,38324 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_time = 0;__pyx_ptype_7cpython_8datetime_time1095,38386 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_datetime = 0;__pyx_ptype_7cpython_8datetime_datetime1096,38448 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_timedelta = 0;__pyx_ptype_7cpython_8datetime_timedelta1097,38514 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_tzinfo = 0;__pyx_ptype_7cpython_8datetime_tzinfo1098,38581 +static long (*__pyx_f_6pyisda_4date_dcc)(PyObject *); /*proto*/__pyx_f_6pyisda_4date_dcc1101,38691 +static __pyx_t_6pyisda_4date_TDate (*__pyx_f_6pyisda_4date_pydate_to_TDate)(PyDateTime_Date *); /*proto*/__pyx_f_6pyisda_4date_pydate_to_TDate1102,38755 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_ContingentLeg = 0;__pyx_ptype_6pyisda_4legs_ContingentLeg1105,38907 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_FeeLeg = 0;__pyx_ptype_6pyisda_4legs_FeeLeg1106,38973 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_Curve = 0;__pyx_ptype_6pyisda_5curve_Curve1113,39168 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_YieldCurve = 0;__pyx_ptype_6pyisda_5curve_YieldCurve1114,39227 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_SpreadCurve = 0;__pyx_ptype_6pyisda_5curve_SpreadCurve1115,39291 +static int __pyx_v_6pyisda_6cdsone_SUCCESS;__pyx_v_6pyisda_6cdsone_SUCCESS1118,39404 +#define __Pyx_MODULE_NAME __Pyx_MODULE_NAME1119,39448 +int __pyx_module_is_main_pyisda__cdsone = 0;__pyx_module_is_main_pyisda__cdsone1120,39490 +static PyObject *__pyx_builtin_ValueError;__pyx_builtin_ValueError1123,39576 +static const char __pyx_k_yc[] = "yc";__pyx_k_yc1124,39619 +static const char __pyx_k_ivl[] = "ivl";__pyx_k_ivl1125,39658 +static const char __pyx_k_date[] = "date";__pyx_k_date1126,39699 +static const char __pyx_k_main[] = "__main__";__pyx_k_main1127,39742 +static const char __pyx_k_stub[] = "stub";__pyx_k_stub1128,39789 +static const char __pyx_k_test[] = "__test__";__pyx_k_test1129,39832 +static const char __pyx_k_today[] = "today";__pyx_k_today1130,39879 +static const char __pyx_k_result[] = "result";__pyx_k_result1131,39924 +static const char __pyx_k_spread[] = "spread";__pyx_k_spread1132,39971 +static const char __pyx_k_ACT_360[] = "ACT/360";__pyx_k_ACT_3601133,40018 +static const char __pyx_k_routine[] = "routine";__pyx_k_routine1134,40067 +static const char __pyx_k_upfront[] = "upfront";__pyx_k_upfront1135,40116 +static const char __pyx_k_end_date[] = "end_date";__pyx_k_end_date1136,40165 +static const char __pyx_k_ValueError[] = "ValueError";__pyx_k_ValueError1137,40216 +static const char __pyx_k_end_date_c[] = "end_date_c";__pyx_k_end_date_c1138,40271 +static const char __pyx_k_start_date[] = "start_date";__pyx_k_start_date1139,40326 +static const char __pyx_k_value_date[] = "value_date";__pyx_k_value_date1140,40381 +static const char __pyx_k_coupon_rate[] = "coupon_rate";__pyx_k_coupon_rate1141,40436 +static const char __pyx_k_stepin_date[] = "stepin_date";__pyx_k_stepin_date1142,40493 +static const char __pyx_k_start_date_c[] = "start_date_c";__pyx_k_start_date_c1143,40550 +static const char __pyx_k_value_date_c[] = "value_date_c";__pyx_k_value_date_c1144,40609 +static const char __pyx_k_pyisda_cdsone[] = "pyisda.cdsone";__pyx_k_pyisda_cdsone1145,40668 +static const char __pyx_k_recovery_rate[] = "recovery_rate";__pyx_k_recovery_rate1146,40729 +static const char __pyx_k_stepin_date_c[] = "stepin_date_c";__pyx_k_stepin_date_c1147,40790 +static const char __pyx_k_upfront_charge[] = "upfront_charge";__pyx_k_upfront_charge1148,40851 +static const char __pyx_k_can_t_convert_stub[] = "can't convert stub";__pyx_k_can_t_convert_stub1149,40914 +static const char __pyx_k_computation_failed[] = "computation failed";__pyx_k_computation_failed1150,40985 +static const char __pyx_k_spread_from_upfront[] = "spread_from_upfront";__pyx_k_spread_from_upfront1151,41056 +static const char __pyx_k_benchmark_start_date[] = "benchmark_start_date";__pyx_k_benchmark_start_date1152,41129 +static const char __pyx_k_pay_accrued_at_start[] = "pay_accrued_at_start";__pyx_k_pay_accrued_at_start1153,41204 +static const char __pyx_k_benchmark_start_date_c[] = "benchmark_start_date_c";__pyx_k_benchmark_start_date_c1154,41279 +static const char __pyx_k_pay_accrued_on_default[] = "pay_accrued_on_default";__pyx_k_pay_accrued_on_default1155,41358 +static const char __pyx_k_can_t_convert_to_date_interval[] = "can't convert to date interval";__pyx_k_can_t_convert_to_date_interval1156,41437 +static const char __pyx_k_home_guillaume_projects_code_py[] = "/home/guillaume/projects/code/python/pyisda/pyisda/cdsone.pyx";__pyx_k_home_guillaume_projects_code_py1157,41532 +static PyObject *__pyx_kp_s_ACT_360;__pyx_kp_s_ACT_3601158,41659 +static PyObject *__pyx_n_s_ValueError;__pyx_n_s_ValueError1159,41696 +static PyObject *__pyx_n_s_benchmark_start_date;__pyx_n_s_benchmark_start_date1160,41735 +static PyObject *__pyx_n_s_benchmark_start_date_c;__pyx_n_s_benchmark_start_date_c1161,41784 +static PyObject *__pyx_kp_s_can_t_convert_stub;__pyx_kp_s_can_t_convert_stub1162,41835 +static PyObject *__pyx_kp_s_can_t_convert_to_date_interval;__pyx_kp_s_can_t_convert_to_date_interval1163,41883 +static PyObject *__pyx_kp_s_computation_failed;__pyx_kp_s_computation_failed1164,41943 +static PyObject *__pyx_n_s_coupon_rate;__pyx_n_s_coupon_rate1165,41991 +static PyObject *__pyx_n_s_date;__pyx_n_s_date1166,42031 +static PyObject *__pyx_n_s_end_date;__pyx_n_s_end_date1167,42064 +static PyObject *__pyx_n_s_end_date_c;__pyx_n_s_end_date_c1168,42101 +static PyObject *__pyx_kp_s_home_guillaume_projects_code_py;__pyx_kp_s_home_guillaume_projects_code_py1169,42140 +static PyObject *__pyx_n_s_ivl;__pyx_n_s_ivl1170,42201 +static PyObject *__pyx_n_s_main;__pyx_n_s_main1171,42233 +static PyObject *__pyx_n_s_pay_accrued_at_start;__pyx_n_s_pay_accrued_at_start1172,42266 +static PyObject *__pyx_n_s_pay_accrued_on_default;__pyx_n_s_pay_accrued_on_default1173,42315 +static PyObject *__pyx_n_s_pyisda_cdsone;__pyx_n_s_pyisda_cdsone1174,42366 +static PyObject *__pyx_n_s_recovery_rate;__pyx_n_s_recovery_rate1175,42408 +static PyObject *__pyx_n_s_result;__pyx_n_s_result1176,42450 +static PyObject *__pyx_n_s_routine;__pyx_n_s_routine1177,42485 +static PyObject *__pyx_n_s_spread;__pyx_n_s_spread1178,42521 +static PyObject *__pyx_n_s_spread_from_upfront;__pyx_n_s_spread_from_upfront1179,42556 +static PyObject *__pyx_n_s_start_date;__pyx_n_s_start_date1180,42604 +static PyObject *__pyx_n_s_start_date_c;__pyx_n_s_start_date_c1181,42643 +static PyObject *__pyx_n_s_stepin_date;__pyx_n_s_stepin_date1182,42684 +static PyObject *__pyx_n_s_stepin_date_c;__pyx_n_s_stepin_date_c1183,42724 +static PyObject *__pyx_n_s_stub;__pyx_n_s_stub1184,42766 +static PyObject *__pyx_n_s_test;__pyx_n_s_test1185,42799 +static PyObject *__pyx_n_s_today;__pyx_n_s_today1186,42832 +static PyObject *__pyx_n_s_upfront;__pyx_n_s_upfront1187,42866 +static PyObject *__pyx_n_s_upfront_charge;__pyx_n_s_upfront_charge1188,42902 +static PyObject *__pyx_n_s_value_date;__pyx_n_s_value_date1189,42945 +static PyObject *__pyx_n_s_value_date_c;__pyx_n_s_value_date_c1190,42984 +static PyObject *__pyx_n_s_yc;__pyx_n_s_yc1191,43025 +static PyObject *__pyx_tuple_;__pyx_tuple_1194,44075 +static PyObject *__pyx_tuple__2;__pyx_tuple__21195,44106 +static PyObject *__pyx_tuple__3;__pyx_tuple__31196,44139 +static PyObject *__pyx_tuple__4;__pyx_tuple__41197,44172 +static PyObject *__pyx_tuple__5;__pyx_tuple__51198,44205 +static PyObject *__pyx_tuple__6;__pyx_tuple__61199,44238 +static PyObject *__pyx_tuple__7;__pyx_tuple__71200,44271 +static PyObject *__pyx_tuple__9;__pyx_tuple__91201,44304 +static PyObject *__pyx_codeobj__8;__pyx_codeobj__81202,44337 +static PyObject *__pyx_codeobj__10;__pyx_codeobj__101203,44372 +static char __pyx_doc_6pyisda_6cdsone_upfront_charge[] = "upfront_charge(date, value_date, benchmark_start_date, stepin_date, start_date, end_date, double coupon_rate, YieldCurve yc, double spread, double recovery_rate, TBoolean pay_accrued_at_start=True, TBoolean pay_accrued_on_default=True)\n\n Computes the fair upfront payment for a cds based on the fair spread.\n\n Parameters\n ----------\n date : :class:`datetime.date`\n today's date\n value_date : :class:`datetime.date`\n the date when cash is assumed to change hands.\n benchmark_start_date : :class:`datetime.date`\n should be same as `start_date`, not sure why there are two parameters.\n stepin_date : :class:`datetime.date`\n effective start of protection, typically `date` + 1\n start_date : :class:`datetime.date`\n beginning of cds, typically most recent IMM date before `date`\n end_date : :class:`datetime.date`\n last date of the cds\n coupon_rate : double\n cds fixed coupon.\n yc : :class:`~pyisda.cuve.YieldCurve`\n Yield curve\n spread : double\n cds running spread\n recovery_rate : double\n assumed recovery rate\n pay_accrued_at_start : bool, optional\n do we pay accrued from `start_date` to `date` (True means clean)\n pay_accrued_on_default : bool, optional\n in case of default do we pay current accrued on default or at maturity.\n ";__pyx_doc_6pyisda_6cdsone_upfront_charge1215,44828 +static PyMethodDef __pyx_mdef_6pyisda_6cdsone_1upfront_charge = {"upfront_charge", (PyCFunction)__pyx_pw_6pyisda_6cdsone_1upfront_charge, METH_VARARGS|METH_KEYWORDS, __pyx_doc_6pyisda_6cdsone_upfront_charge};__pyx_mdef_6pyisda_6cdsone_1upfront_charge1216,46279 +static PyObject *__pyx_pw_6pyisda_6cdsone_1upfront_charge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_6cdsone_1upfront_charge1217,46488 +static PyObject *__pyx_pf_6pyisda_6cdsone_upfront_charge(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_date, PyObject *__pyx_v_value_date, PyObject *__pyx_v_benchmark_start_date, PyObject *__pyx_v_stepin_date, PyObject *__pyx_v_start_date, PyObject *__pyx_v_end_date, double __pyx_v_coupon_rate, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, double __pyx_v_spread, double __pyx_v_recovery_rate, TBoolean __pyx_v_pay_accrued_at_start, TBoolean __pyx_v_pay_accrued_on_default) {__pyx_pf_6pyisda_6cdsone_upfront_charge1402,55604 +static char __pyx_doc_6pyisda_6cdsone_2spread_from_upfront[] = "spread_from_upfront(date, value_date, benchmark_start_date, stepin_date, start_date, end_date, double coupon_rate, YieldCurve yc, double upfront, double recovery_rate, TBoolean pay_accrued_at_start=True, TBoolean pay_accrued_on_default=True)\nComputes the equivalent fair spread for a cds with upfront+running.\n\n Parameters\n ----------\n date : :class:`datetime.date`\n today's date\n value_date : :class:`datetime.date`\n the date when cash is assumed to change hands.\n benchmark_start_date : :class:`datetime.date`\n should be same as `start_date`, not sure why there are two parameters.\n stepin_date : :class:`datetime.date`\n effective start of protection, typically `date` + 1\n start_date : :class:`datetime.date`\n beginning of cds, typically most recent IMM date before `date`\n end_date : :class:`datetime.date`\n last date of the cds\n coupon_rate : double\n cds fixed coupon.\n yc : :class:`~pyisda.cuve.YieldCurve`\n Yield curve\n upfront : double\n cds upfront\n recovery_rate : double\n assumed recovery rate\n pay_accrued_at_start : bool, optional\n do we pay accrued from `start_date` to `date`\n pay_accrued_on_default : bool, optional\n in case of default do we pay current accrued on default or at maturity.\n\n ";__pyx_doc_6pyisda_6cdsone_2spread_from_upfront1647,67958 +static PyMethodDef __pyx_mdef_6pyisda_6cdsone_3spread_from_upfront = {"spread_from_upfront", (PyCFunction)__pyx_pw_6pyisda_6cdsone_3spread_from_upfront, METH_VARARGS|METH_KEYWORDS, __pyx_doc_6pyisda_6cdsone_2spread_from_upfront};__pyx_mdef_6pyisda_6cdsone_3spread_from_upfront1648,69390 +static PyObject *__pyx_pw_6pyisda_6cdsone_3spread_from_upfront(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_6cdsone_3spread_from_upfront1649,69620 +static PyObject *__pyx_pf_6pyisda_6cdsone_2spread_from_upfront(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_date, PyObject *__pyx_v_value_date, PyObject *__pyx_v_benchmark_start_date, PyObject *__pyx_v_stepin_date, PyObject *__pyx_v_start_date, PyObject *__pyx_v_end_date, double __pyx_v_coupon_rate, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, double __pyx_v_upfront, double __pyx_v_recovery_rate, TBoolean __pyx_v_pay_accrued_at_start, TBoolean __pyx_v_pay_accrued_on_default) {__pyx_pf_6pyisda_6cdsone_2spread_from_upfront1834,78971 +static CYTHON_INLINE void __pyx_f_7cpython_8datetime_import_datetime(void) {__pyx_f_7cpython_8datetime_import_datetime2075,90965 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_date_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day) {__pyx_f_7cpython_8datetime_date_new2108,92038 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_new(int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_time_new2155,93902 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day, int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_datetime_new2202,96036 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_timedelta_new(int __pyx_v_days, int __pyx_v_seconds, int __pyx_v_useconds) {__pyx_f_7cpython_8datetime_timedelta_new2249,98339 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_tzinfo2296,100141 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_tzinfo2370,102236 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_year2444,104329 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_month2481,105175 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_day2518,106022 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_year2555,106867 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_month2592,107749 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_day2629,108632 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_hour2666,109494 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_minute2703,110364 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_second2740,111252 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_microsecond2777,112160 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_hour2814,113097 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_minute2851,114003 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_second2888,114927 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_microsecond2925,115871 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_days(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_days2962,116835 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_seconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_seconds2999,117756 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_microseconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_microseconds3035,118720 +static PyMethodDef __pyx_methods[] = {__pyx_methods3061,119488 +static struct PyModuleDef __pyx_moduledef = {__pyx_moduledef3066,119572 +static __Pyx_StringTabEntry __pyx_string_tab[] = {__pyx_string_tab3083,119942 +static int __Pyx_InitCachedBuiltins(void) {__Pyx_InitCachedBuiltins3120,123181 +static int __Pyx_InitCachedConstants(void) {__Pyx_InitCachedConstants3127,123409 +static int __Pyx_InitGlobals(void) {__Pyx_InitGlobals3225,129301 +PyMODINIT_FUNC initcdsone(void)initcdsone3234,129533 +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {__Pyx_RefNannyImportAPI3424,139504 +static PyObject *__Pyx_GetBuiltinName(PyObject *name) {__Pyx_GetBuiltinName3440,139932 +static void __Pyx_RaiseArgtupleInvalid(__Pyx_RaiseArgtupleInvalid3454,140332 +static void __Pyx_RaiseDoubleKeywordsError(__Pyx_RaiseDoubleKeywordsError3480,141097 +static int __Pyx_ParseOptionalKeywords(__Pyx_ParseOptionalKeywords3494,141506 +static void __Pyx_RaiseArgumentTypeInvalid(const char* name, PyObject *obj, PyTypeObject *type) {__Pyx_RaiseArgumentTypeInvalid3596,145078 +static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed,__Pyx_ArgTypeTest3601,145343 +static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {__Pyx_TypeTest3623,146040 +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {__Pyx_PyObject_Call3637,146493 +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {__Pyx_ErrRestoreInState3657,147162 +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx_ErrFetchInState3669,147622 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb,__Pyx_Raise3681,147998 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {__Pyx_Raise3732,149478 + static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {__pyx_bisect_code_objects3843,153131 +static PyCodeObject *__pyx_find_code_object(int code_line) {__pyx_find_code_object3864,153762 +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {__pyx_insert_code_object3878,154322 +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(__Pyx_CreateCodeObjectForTraceback3926,156110 +static void __Pyx_AddTraceback(const char *funcname, int c_line,__Pyx_AddTraceback3978,157719 + #define __PYX_VERIFY_RETURN_INT(__PYX_VERIFY_RETURN_INT4004,158647 +#define __PYX_VERIFY_RETURN_INT_EXC(__PYX_VERIFY_RETURN_INT_EXC4006,158786 +#define __PYX__VERIFY_RETURN_INT(__PYX__VERIFY_RETURN_INT4008,158927 + static CYTHON_INLINE TBoolean __Pyx_PyInt_As_TBoolean(PyObject *x) {__Pyx_PyInt_As_TBoolean4026,159597 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {__Pyx_PyInt_From_long4215,169801 + static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {__Pyx_PyInt_As_long4246,170948 + static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {__Pyx_PyInt_As_int4435,180766 + static int __Pyx_check_binary_version(void) {__Pyx_check_binary_version4624,190495 +#define __PYX_HAVE_RT_ImportModule__PYX_HAVE_RT_ImportModule4641,191177 +static PyObject *__Pyx_ImportModule(const char *name) {__Pyx_ImportModule4642,191212 +#define __PYX_HAVE_RT_ImportType__PYX_HAVE_RT_ImportType4659,191605 +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,__Pyx_ImportType4660,191638 +#define __PYX_HAVE_RT_ImportFunction__PYX_HAVE_RT_ImportFunction4724,193588 +static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) {__Pyx_ImportFunction4725,193625 + static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {__Pyx_InitStrings4777,195167 +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {__Pyx_PyUnicode_FromString4807,196091 +static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {__Pyx_PyObject_AsString4810,196252 +static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {__Pyx_PyObject_AsStringAndSize4814,196398 +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {__Pyx_PyObject_IsTrue4872,198274 +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {__Pyx_PyNumber_IntOrLong4877,198471 +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {__Pyx_PyIndex_AsSsize_t4928,199619 +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {__Pyx_PyInt_FromSize_t4990,201910 + +pyisda/pyisda/version.cpp,27866 +#define PY_SSIZE_T_CLEANPY_SSIZE_T_CLEAN20,378 +#define CYTHON_ABI CYTHON_ABI27,707 + #define offsetof(offsetof30,772 + #define __stdcall__stdcall34,912 + #define __cdecl__cdecl37,961 + #define __fastcall__fastcall40,1011 + #define DL_IMPORT(DL_IMPORT44,1068 + #define DL_EXPORT(DL_EXPORT47,1118 + #define HAVE_LONG_LONGHAVE_LONG_LONG51,1267 + #define PY_LONG_LONG PY_LONG_LONG55,1331 + #define Py_HUGE_VAL Py_HUGE_VAL58,1391 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY61,1449 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON62,1486 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON63,1525 + #undef CYTHON_USE_TYPE_SLOTSCYTHON_USE_TYPE_SLOTS64,1565 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS65,1596 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS66,1630 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS67,1662 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS68,1697 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS69,1734 + #undef CYTHON_USE_UNICODE_INTERNALSCYTHON_USE_UNICODE_INTERNALS70,1774 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS71,1812 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER72,1853 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER73,1888 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS74,1926 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS75,1963 + #undef CYTHON_AVOID_BORROWED_REFSCYTHON_AVOID_BORROWED_REFS76,2003 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS77,2039 + #undef CYTHON_ASSUME_SAFE_MACROSCYTHON_ASSUME_SAFE_MACROS78,2078 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS79,2113 + #undef CYTHON_UNPACK_METHODSCYTHON_UNPACK_METHODS80,2151 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS81,2182 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE82,2216 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE83,2250 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL84,2287 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL85,2315 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY87,2376 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON88,2413 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON89,2452 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS91,2524 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS93,2569 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS94,2601 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS95,2636 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS96,2673 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS98,2752 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER100,2804 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER101,2839 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS102,2877 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS103,2914 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS105,2991 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS108,3077 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS111,3158 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE113,3203 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE114,3237 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL115,3274 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL116,3302 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY118,3339 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON119,3376 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON120,3415 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS122,3487 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS125,3559 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS126,3593 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS128,3671 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS131,3751 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS132,3790 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS134,3878 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS137,3967 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS140,4057 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER143,4143 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER144,4180 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER146,4264 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS149,4350 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS152,4436 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS155,4517 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE158,4597 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL161,4674 +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCCALL165,4757 + #undef SHIFTSHIFT169,4905 + #undef BASEBASE170,4920 + #undef MASKMASK171,4934 + #define Py_OptimizeFlag Py_OptimizeFlag174,5044 +#define __PYX_BUILD_PY_SSIZE_T __PYX_BUILD_PY_SSIZE_T176,5079 +#define CYTHON_FORMAT_SSIZE_T CYTHON_FORMAT_SSIZE_T177,5114 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME179,5173 + #define __Pyx_PyCode_New(__Pyx_PyCode_New180,5223 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType182,5397 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME184,5449 + #define __Pyx_PyCode_New(__Pyx_PyCode_New185,5496 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType187,5671 + #define Py_TPFLAGS_CHECKTYPES Py_TPFLAGS_CHECKTYPES190,5753 + #define Py_TPFLAGS_HAVE_INDEX Py_TPFLAGS_HAVE_INDEX193,5824 + #define Py_TPFLAGS_HAVE_NEWBUFFER Py_TPFLAGS_HAVE_NEWBUFFER196,5899 + #define Py_TPFLAGS_HAVE_FINALIZE Py_TPFLAGS_HAVE_FINALIZE199,5977 + #define METH_FASTCALL METH_FASTCALL202,6043 + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args,__Pyx_PyCFunctionFast203,6072 + #define __Pyx_PyCFunctionFast __Pyx_PyCFunctionFast206,6241 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check209,6321 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check212,6499 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED215,6609 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY216,6643 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH218,6806 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR219,6872 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE220,6940 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND221,7014 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA222,7074 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ223,7134 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE224,7200 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE225,7275 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED227,7412 + #define PyUnicode_1BYTE_KIND PyUnicode_1BYTE_KIND228,7446 + #define PyUnicode_2BYTE_KIND PyUnicode_2BYTE_KIND229,7480 + #define PyUnicode_4BYTE_KIND PyUnicode_4BYTE_KIND230,7514 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY231,7548 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH232,7594 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR233,7658 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE234,7740 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND235,7832 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA236,7895 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ237,7970 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE238,8056 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE239,8142 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat242,8249 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe243,8312 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat245,8381 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe246,8448 + #define PyUnicode_Contains(PyUnicode_Contains250,8676 + #define PyByteArray_Check(PyByteArray_Check253,8805 + #define PyObject_Format(PyObject_Format256,8947 + #define PyObject_Malloc(PyObject_Malloc259,9098 + #define PyObject_Free(PyObject_Free260,9145 + #define PyObject_Realloc(PyObject_Realloc261,9190 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars264,9276 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber265,9339 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars267,9435 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber268,9503 +#define __Pyx_PyString_FormatSafe(__Pyx_PyString_FormatSafe270,9593 +#define __Pyx_PyUnicode_FormatSafe(__Pyx_PyUnicode_FormatSafe271,9721 + #define __Pyx_PyString_Format(__Pyx_PyString_Format273,9870 + #define __Pyx_PyString_Format(__Pyx_PyString_Format275,9938 + #define PyObject_ASCII(PyObject_ASCII278,10059 + #define PyBaseString_Type PyBaseString_Type281,10148 + #define PyStringObject PyStringObject282,10202 + #define PyString_Type PyString_Type283,10257 + #define PyString_Check PyString_Check284,10311 + #define PyString_CheckExact PyString_CheckExact285,10366 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check288,10459 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact289,10520 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check291,10597 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact292,10683 + #define PySet_CheckExact(PySet_CheckExact295,10816 +#define __Pyx_TypeCheck(__Pyx_TypeCheck297,10892 +#define __Pyx_PyException_Check(__Pyx_PyException_Check298,10973 + #define PyIntObject PyIntObject300,11074 + #define PyInt_Type PyInt_Type301,11126 + #define PyInt_Check(PyInt_Check302,11177 + #define PyInt_CheckExact(PyInt_CheckExact303,11233 + #define PyInt_FromString PyInt_FromString304,11294 + #define PyInt_FromUnicode PyInt_FromUnicode305,11351 + #define PyInt_FromLong PyInt_FromLong306,11409 + #define PyInt_FromSize_t PyInt_FromSize_t307,11464 + #define PyInt_FromSsize_t PyInt_FromSsize_t308,11521 + #define PyInt_AsLong PyInt_AsLong309,11579 + #define PyInt_AS_LONG PyInt_AS_LONG310,11632 + #define PyInt_AsSsize_t PyInt_AsSsize_t311,11686 + #define PyInt_AsUnsignedLongMask PyInt_AsUnsignedLongMask312,11742 + #define PyInt_AsUnsignedLongLongMask PyInt_AsUnsignedLongLongMask313,11807 + #define PyNumber_Int PyNumber_Int314,11876 + #define PyBoolObject PyBoolObject317,11962 + #define PyUnicode_InternFromString(PyUnicode_InternFromString321,12112 + typedef long Py_hash_t;Py_hash_t325,12226 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t326,12252 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t327,12300 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t329,12352 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t330,12403 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New333,12485 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New335,12604 + #define __Pyx_PyAsyncMethodsStruct __Pyx_PyAsyncMethodsStruct339,12753 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync340,12807 + unaryfunc am_await;am_await343,12902 + unaryfunc am_aiter;am_aiter344,12930 + unaryfunc am_anext;am_anext345,12958 + } __Pyx_PyAsyncMethodsStruct;__Pyx_PyAsyncMethodsStruct346,12986 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync347,13020 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync350,13133 + #define CYTHON_RESTRICT CYTHON_RESTRICT354,13229 + #define CYTHON_RESTRICT CYTHON_RESTRICT356,13316 + #define CYTHON_RESTRICT CYTHON_RESTRICT358,13421 + #define CYTHON_RESTRICTCYTHON_RESTRICT360,13466 +# define CYTHON_UNUSED CYTHON_UNUSED366,13646 +# define CYTHON_UNUSEDCYTHON_UNUSED368,13711 +# define CYTHON_UNUSED CYTHON_UNUSED371,13823 +# define CYTHON_UNUSEDCYTHON_UNUSED373,13884 + template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }CYTHON_MAYBE_UNUSED_VAR378,13983 +# define CYTHON_MAYBE_UNUSED_VAR(CYTHON_MAYBE_UNUSED_VAR380,14059 +# define CYTHON_NCP_UNUSEDCYTHON_NCP_UNUSED385,14183 +# define CYTHON_NCP_UNUSED CYTHON_NCP_UNUSED387,14218 +#define __Pyx_void_to_None(__Pyx_void_to_None390,14275 + #define CYTHON_INLINE CYTHON_INLINE397,14533 + #define CYTHON_INLINE CYTHON_INLINE399,14607 +void __Pyx_call_destructor(T& x) {__Pyx_call_destructor403,14677 +class __Pyx_FakeReference {__Pyx_FakeReference407,14747 + __Pyx_FakeReference() : ptr(NULL) { }__Pyx_FakeReference409,14785 + __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }__Pyx_FakeReference410,14827 + T *operator->() { return ptr; }operator ->411,14897 + T *operator&() { return ptr; }operator &412,14933 + operator T&() { return *ptr; }operator T&413,14968 + template<typename U> bool operator ==(U other) { return *ptr == other; }operator ==414,15003 + template<typename U> bool operator !=(U other) { return *ptr != other; }operator !=415,15080 + T *ptr;ptr417,15168 + #define _USE_MATH_DEFINES_USE_MATH_DEFINES421,15226 +#define __PYX_NAN(__PYX_NAN425,15290 +static CYTHON_INLINE float __PYX_NAN() {__PYX_NAN427,15330 +#define __Pyx_truncl __Pyx_truncl434,15499 +#define __Pyx_truncl __Pyx_truncl436,15532 +#define __PYX_ERR(__PYX_ERR440,15569 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide446,15752 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide447,15822 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide449,15905 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide450,15971 + #define __PYX_EXTERN_C __PYX_EXTERN_C455,16096 + #define __PYX_EXTERN_C __PYX_EXTERN_C457,16142 +#define __PYX_HAVE__pyisda__version__PYX_HAVE__pyisda__version461,16193 +#define __PYX_HAVE_API__pyisda__version__PYX_HAVE_API__pyisda__version462,16229 +#define CYTHON_WITHOUT_ASSERTIONSCYTHON_WITHOUT_ASSERTIONS469,16381 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;p472,16423 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;s472,16423 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;n472,16423 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;encoding472,16423 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_unicode473,16510 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_str473,16510 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;intern473,16510 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;__Pyx_StringTabEntry473,16510 +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII __PYX_DEFAULT_STRING_ENCODING_IS_ASCII475,16612 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT476,16661 +#define __PYX_DEFAULT_STRING_ENCODING __PYX_DEFAULT_STRING_ENCODING477,16712 +#define __Pyx_PyObject_FromString __Pyx_PyObject_FromString478,16753 +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyObject_FromStringAndSize479,16812 +#define __Pyx_uchar_cast(__Pyx_uchar_cast480,16885 +#define __Pyx_long_cast(__Pyx_long_cast481,16932 +#define __Pyx_fits_Py_ssize_t(__Pyx_fits_Py_ssize_t482,16969 + #define __Pyx_sst_abs(__Pyx_sst_abs494,17575 + #define __Pyx_sst_abs(__Pyx_sst_abs496,17658 + #define __Pyx_sst_abs(__Pyx_sst_abs498,17737 + #define __Pyx_sst_abs(__Pyx_sst_abs500,17827 + #define __Pyx_sst_abs(__Pyx_sst_abs502,17938 + #define __Pyx_sst_abs(__Pyx_sst_abs504,18009 + #define __Pyx_sst_abs(__Pyx_sst_abs506,18071 +#define __Pyx_PyByteArray_FromString(__Pyx_PyByteArray_FromString510,18293 +#define __Pyx_PyByteArray_FromStringAndSize(__Pyx_PyByteArray_FromStringAndSize511,18403 +#define __Pyx_PyBytes_FromString __Pyx_PyBytes_FromString512,18502 +#define __Pyx_PyBytes_FromStringAndSize __Pyx_PyBytes_FromStringAndSize513,18561 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString516,18724 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize517,18791 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString519,18871 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize520,18940 +#define __Pyx_PyObject_AsSString(__Pyx_PyObject_AsSString522,19023 +#define __Pyx_PyObject_AsUString(__Pyx_PyObject_AsUString523,19106 +#define __Pyx_PyObject_FromCString(__Pyx_PyObject_FromCString524,19191 +#define __Pyx_PyBytes_FromCString(__Pyx_PyBytes_FromCString525,19272 +#define __Pyx_PyByteArray_FromCString(__Pyx_PyByteArray_FromCString526,19352 +#define __Pyx_PyStr_FromCString(__Pyx_PyStr_FromCString527,19440 +#define __Pyx_PyUnicode_FromCString(__Pyx_PyUnicode_FromCString528,19518 +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)__Pyx_Py_UNICODE_strlen530,19625 +#define __Pyx_Py_UNICODE_strlen __Pyx_Py_UNICODE_strlen537,19800 +#define __Pyx_PyUnicode_FromUnicode(__Pyx_PyUnicode_FromUnicode539,19857 +#define __Pyx_PyUnicode_FromUnicodeAndLength __Pyx_PyUnicode_FromUnicodeAndLength540,19955 +#define __Pyx_PyUnicode_AsUnicode __Pyx_PyUnicode_AsUnicode541,20022 +#define __Pyx_NewRef(__Pyx_NewRef542,20087 +#define __Pyx_Owned_Py_None(__Pyx_Owned_Py_None543,20135 +#define __Pyx_PyBool_FromLong(__Pyx_PyBool_FromLong544,20188 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble550,20567 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble552,20676 +#define __pyx_PyFloat_AsFloat(__pyx_PyFloat_AsFloat554,20737 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int556,20832 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int558,20928 +#define __Pyx_PyNumber_Float(__Pyx_PyNumber_Float560,21023 +static int __Pyx_sys_getdefaultencoding_not_ascii;__Pyx_sys_getdefaultencoding_not_ascii562,21184 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params563,21235 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize608,22964 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize610,23065 +static char* __PYX_DEFAULT_STRING_ENCODING;__PYX_DEFAULT_STRING_ENCODING612,23232 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params613,23276 + #define likely(likely639,24170 + #define unlikely(unlikely640,24219 + #define likely(likely642,24304 + #define unlikely(unlikely643,24330 +static PyObject *__pyx_m;__pyx_m646,24379 +static PyObject *__pyx_d;__pyx_d647,24405 +static PyObject *__pyx_b;__pyx_b648,24431 +static PyObject *__pyx_empty_tuple;__pyx_empty_tuple649,24457 +static PyObject *__pyx_empty_bytes;__pyx_empty_bytes650,24493 +static PyObject *__pyx_empty_unicode;__pyx_empty_unicode651,24529 +static int __pyx_lineno;__pyx_lineno652,24567 +static int __pyx_clineno = 0;__pyx_clineno653,24592 +static const char * __pyx_cfilenm= __FILE__;__pyx_cfilenm654,24622 +static const char *__pyx_filename;__pyx_filename655,24667 +static const char *__pyx_f[] = {__pyx_f658,24704 + #define CYTHON_REFNANNY CYTHON_REFNANNY667,24883 + void (*INCREF)(void*, PyObject*, int);INCREF671,24957 + void (*DECREF)(void*, PyObject*, int);DECREF672,25000 + void (*GOTREF)(void*, PyObject*, int);GOTREF673,25043 + void (*GIVEREF)(void*, PyObject*, int);GIVEREF674,25086 + void* (*SetupContext)(const char*, int, const char*);SetupContext675,25130 + void (*FinishContext)(void**);FinishContext676,25188 + } __Pyx_RefNannyAPIStruct;__Pyx_RefNannyAPIStruct677,25223 + static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;__Pyx_RefNanny678,25252 + #define __Pyx_RefNannyDeclarations __Pyx_RefNannyDeclarations680,25389 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext682,25474 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext691,25910 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext694,26058 + #define __Pyx_INCREF(__Pyx_INCREF696,26156 + #define __Pyx_DECREF(__Pyx_DECREF697,26249 + #define __Pyx_GOTREF(__Pyx_GOTREF698,26342 + #define __Pyx_GIVEREF(__Pyx_GIVEREF699,26435 + #define __Pyx_XINCREF(__Pyx_XINCREF700,26529 + #define __Pyx_XDECREF(__Pyx_XDECREF701,26608 + #define __Pyx_XGOTREF(__Pyx_XGOTREF702,26687 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF703,26766 + #define __Pyx_RefNannyDeclarations__Pyx_RefNannyDeclarations705,26851 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext706,26888 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext707,26944 + #define __Pyx_INCREF(__Pyx_INCREF708,26984 + #define __Pyx_DECREF(__Pyx_DECREF709,27023 + #define __Pyx_GOTREF(__Pyx_GOTREF710,27062 + #define __Pyx_GIVEREF(__Pyx_GIVEREF711,27088 + #define __Pyx_XINCREF(__Pyx_XINCREF712,27115 + #define __Pyx_XDECREF(__Pyx_XDECREF713,27156 + #define __Pyx_XGOTREF(__Pyx_XGOTREF714,27197 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF715,27224 +#define __Pyx_XDECREF_SET(__Pyx_XDECREF_SET717,27259 +#define __Pyx_DECREF_SET(__Pyx_DECREF_SET721,27390 +#define __Pyx_CLEAR(__Pyx_CLEAR725,27519 +#define __Pyx_XCLEAR(__Pyx_XCLEAR726,27623 +static CYTHON_INLINE PyObject* __Pyx_decode_bytes(__Pyx_decode_bytes735,28075 + PyCodeObject* code_object;code_object746,28523 + int code_line;code_line747,28554 +} __Pyx_CodeObjectCacheEntry;__Pyx_CodeObjectCacheEntry748,28573 +struct __Pyx_CodeObjectCache {__Pyx_CodeObjectCache749,28603 + int count;count750,28634 + int max_count;max_count751,28649 + __Pyx_CodeObjectCacheEntry* entries;entries752,28668 +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};__pyx_code_cache754,28712 +static PyObject* __pyx_print = 0;__pyx_print766,29303 +static PyObject* __pyx_print_kwargs = 0;__pyx_print_kwargs767,29337 +#define __Pyx_MODULE_NAME __Pyx_MODULE_NAME790,29924 +int __pyx_module_is_main_pyisda__version = 0;__pyx_module_is_main_pyisda__version791,29967 +static const char __pyx_k_end[] = "end";__pyx_k_end794,30055 +static const char __pyx_k_file[] = "file";__pyx_k_file795,30096 +static const char __pyx_k_main[] = "__main__";__pyx_k_main796,30139 +static const char __pyx_k_test[] = "__test__";__pyx_k_test797,30186 +static const char __pyx_k_print[] = "print";__pyx_k_print798,30233 +static const char __pyx_k_version[] = "version";__pyx_k_version799,30278 +static const char __pyx_k_c_version[] = "c_version";__pyx_k_c_version800,30327 +static const char __pyx_k_pyisda_version[] = "pyisda.version";__pyx_k_pyisda_version801,30380 +static const char __pyx_k_version_string[] = "version_string";__pyx_k_version_string802,30443 +static const char __pyx_k_can_t_get_version[] = "can't get version";__pyx_k_can_t_get_version803,30506 +static const char __pyx_k_home_guillaume_projects_code_py[] = "/home/guillaume/projects/code/python/pyisda/pyisda/version.pyx";__pyx_k_home_guillaume_projects_code_py804,30575 +static PyObject *__pyx_n_s_c_version;__pyx_n_s_c_version805,30703 +static PyObject *__pyx_kp_s_can_t_get_version;__pyx_kp_s_can_t_get_version806,30741 +static PyObject *__pyx_n_s_end;__pyx_n_s_end807,30788 +static PyObject *__pyx_n_s_file;__pyx_n_s_file808,30820 +static PyObject *__pyx_kp_s_home_guillaume_projects_code_py;__pyx_kp_s_home_guillaume_projects_code_py809,30853 +static PyObject *__pyx_n_s_main;__pyx_n_s_main810,30914 +static PyObject *__pyx_n_s_print;__pyx_n_s_print811,30947 +static PyObject *__pyx_n_s_pyisda_version;__pyx_n_s_pyisda_version812,30981 +static PyObject *__pyx_n_s_test;__pyx_n_s_test813,31024 +static PyObject *__pyx_n_s_version;__pyx_n_s_version814,31057 +static PyObject *__pyx_n_s_version_string;__pyx_n_s_version_string815,31093 +static PyObject *__pyx_tuple_;__pyx_tuple_817,31236 +static PyObject *__pyx_codeobj__2;__pyx_codeobj__2818,31267 +static char __pyx_doc_6pyisda_7version_version[] = "version()";__pyx_doc_6pyisda_7version_version830,31640 +static PyMethodDef __pyx_mdef_6pyisda_7version_1version = {"version", (PyCFunction)__pyx_pw_6pyisda_7version_1version, METH_NOARGS, __pyx_doc_6pyisda_7version_version};__pyx_mdef_6pyisda_7version_1version831,31704 +static PyObject *__pyx_pw_6pyisda_7version_1version(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_7version_1version832,31873 +static PyObject *__pyx_pf_6pyisda_7version_version(CYTHON_UNUSED PyObject *__pyx_self) {__pyx_pf_6pyisda_7version_version843,32230 +static PyMethodDef __pyx_methods[] = {__pyx_methods923,34922 +static struct PyModuleDef __pyx_moduledef = {__pyx_moduledef928,35006 +static __Pyx_StringTabEntry __pyx_string_tab[] = {__pyx_string_tab945,35377 +static int __Pyx_InitCachedBuiltins(void) {__Pyx_InitCachedBuiltins959,36420 +static int __Pyx_InitCachedConstants(void) {__Pyx_InitCachedConstants963,36479 +static int __Pyx_InitGlobals(void) {__Pyx_InitGlobals985,37456 +PyMODINIT_FUNC initversion(void)initversion994,37689 +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {__Pyx_RefNannyImportAPI1131,43075 +static CYTHON_INLINE PyObject* __Pyx_decode_c_bytes(__Pyx_decode_c_bytes1147,43503 +static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {__pyx_bisect_code_objects1174,44361 +static PyCodeObject *__pyx_find_code_object(int code_line) {__pyx_find_code_object1195,44990 +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {__pyx_insert_code_object1209,45550 +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(__Pyx_CreateCodeObjectForTraceback1257,47336 +static void __Pyx_AddTraceback(const char *funcname, int c_line,__Pyx_AddTraceback1309,48945 +static PyObject *__Pyx_GetStdout(void) {__Pyx_GetStdout1336,49916 +static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) {__Pyx_Print1343,50110 +static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) {__Pyx_Print1385,51284 +static int __Pyx_PrintOne(PyObject* f, PyObject *o) {__Pyx_PrintOne1442,53100 +static int __Pyx_PrintOne(PyObject* stream, PyObject *o) {__Pyx_PrintOne1466,53702 +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {__Pyx_PyInt_From_long1478,53981 +#define __PYX_VERIFY_RETURN_INT(__PYX_VERIFY_RETURN_INT1509,55132 +#define __PYX_VERIFY_RETURN_INT_EXC(__PYX_VERIFY_RETURN_INT_EXC1511,55269 +#define __PYX__VERIFY_RETURN_INT(__PYX__VERIFY_RETURN_INT1513,55410 +static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {__Pyx_PyInt_As_long1531,56080 +static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {__Pyx_PyInt_As_int1720,65896 +static int __Pyx_check_binary_version(void) {__Pyx_check_binary_version1909,75623 +static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {__Pyx_InitStrings1925,76265 +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {__Pyx_PyUnicode_FromString1955,77187 +static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {__Pyx_PyObject_AsString1958,77348 +static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {__Pyx_PyObject_AsStringAndSize1962,77494 +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {__Pyx_PyObject_IsTrue2020,79370 +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {__Pyx_PyNumber_IntOrLong2025,79567 +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {__Pyx_PyIndex_AsSsize_t2076,80715 +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {__Pyx_PyInt_FromSize_t2138,83006 + +pyisda/pyisda/legs.cpp,50279 +#define PY_SSIZE_T_CLEANPY_SSIZE_T_CLEAN20,375 +#define CYTHON_ABI CYTHON_ABI27,704 + #define offsetof(offsetof30,769 + #define __stdcall__stdcall34,909 + #define __cdecl__cdecl37,958 + #define __fastcall__fastcall40,1008 + #define DL_IMPORT(DL_IMPORT44,1065 + #define DL_EXPORT(DL_EXPORT47,1115 + #define HAVE_LONG_LONGHAVE_LONG_LONG51,1264 + #define PY_LONG_LONG PY_LONG_LONG55,1328 + #define Py_HUGE_VAL Py_HUGE_VAL58,1388 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY61,1446 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON62,1483 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON63,1522 + #undef CYTHON_USE_TYPE_SLOTSCYTHON_USE_TYPE_SLOTS64,1562 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS65,1593 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS66,1627 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS67,1659 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS68,1694 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS69,1731 + #undef CYTHON_USE_UNICODE_INTERNALSCYTHON_USE_UNICODE_INTERNALS70,1771 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS71,1809 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER72,1850 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER73,1885 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS74,1923 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS75,1960 + #undef CYTHON_AVOID_BORROWED_REFSCYTHON_AVOID_BORROWED_REFS76,2000 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS77,2036 + #undef CYTHON_ASSUME_SAFE_MACROSCYTHON_ASSUME_SAFE_MACROS78,2075 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS79,2110 + #undef CYTHON_UNPACK_METHODSCYTHON_UNPACK_METHODS80,2148 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS81,2179 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE82,2213 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE83,2247 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL84,2284 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL85,2312 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY87,2373 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON88,2410 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON89,2449 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS91,2521 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS93,2566 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS94,2598 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS95,2633 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS96,2670 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS98,2749 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER100,2801 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER101,2836 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS102,2874 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS103,2911 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS105,2988 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS108,3074 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS111,3155 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE113,3200 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE114,3234 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL115,3271 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL116,3299 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY118,3336 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON119,3373 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON120,3412 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS122,3484 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS125,3556 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS126,3590 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS128,3668 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS131,3748 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS132,3787 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS134,3875 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS137,3964 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS140,4054 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER143,4140 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER144,4177 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER146,4261 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS149,4347 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS152,4433 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS155,4514 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE158,4594 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL161,4671 +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCCALL165,4754 + #undef SHIFTSHIFT169,4902 + #undef BASEBASE170,4917 + #undef MASKMASK171,4931 + #define Py_OptimizeFlag Py_OptimizeFlag174,5041 +#define __PYX_BUILD_PY_SSIZE_T __PYX_BUILD_PY_SSIZE_T176,5076 +#define CYTHON_FORMAT_SSIZE_T CYTHON_FORMAT_SSIZE_T177,5111 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME179,5170 + #define __Pyx_PyCode_New(__Pyx_PyCode_New180,5220 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType182,5394 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME184,5446 + #define __Pyx_PyCode_New(__Pyx_PyCode_New185,5493 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType187,5668 + #define Py_TPFLAGS_CHECKTYPES Py_TPFLAGS_CHECKTYPES190,5750 + #define Py_TPFLAGS_HAVE_INDEX Py_TPFLAGS_HAVE_INDEX193,5821 + #define Py_TPFLAGS_HAVE_NEWBUFFER Py_TPFLAGS_HAVE_NEWBUFFER196,5896 + #define Py_TPFLAGS_HAVE_FINALIZE Py_TPFLAGS_HAVE_FINALIZE199,5974 + #define METH_FASTCALL METH_FASTCALL202,6040 + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args,__Pyx_PyCFunctionFast203,6069 + #define __Pyx_PyCFunctionFast __Pyx_PyCFunctionFast206,6238 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check209,6318 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check212,6496 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED215,6606 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY216,6640 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH218,6803 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR219,6869 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE220,6937 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND221,7011 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA222,7071 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ223,7131 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE224,7197 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE225,7272 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED227,7409 + #define PyUnicode_1BYTE_KIND PyUnicode_1BYTE_KIND228,7443 + #define PyUnicode_2BYTE_KIND PyUnicode_2BYTE_KIND229,7477 + #define PyUnicode_4BYTE_KIND PyUnicode_4BYTE_KIND230,7511 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY231,7545 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH232,7591 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR233,7655 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE234,7737 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND235,7829 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA236,7892 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ237,7967 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE238,8053 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE239,8139 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat242,8246 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe243,8309 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat245,8378 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe246,8445 + #define PyUnicode_Contains(PyUnicode_Contains250,8673 + #define PyByteArray_Check(PyByteArray_Check253,8802 + #define PyObject_Format(PyObject_Format256,8944 + #define PyObject_Malloc(PyObject_Malloc259,9095 + #define PyObject_Free(PyObject_Free260,9142 + #define PyObject_Realloc(PyObject_Realloc261,9187 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars264,9273 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber265,9336 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars267,9432 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber268,9500 +#define __Pyx_PyString_FormatSafe(__Pyx_PyString_FormatSafe270,9590 +#define __Pyx_PyUnicode_FormatSafe(__Pyx_PyUnicode_FormatSafe271,9718 + #define __Pyx_PyString_Format(__Pyx_PyString_Format273,9867 + #define __Pyx_PyString_Format(__Pyx_PyString_Format275,9935 + #define PyObject_ASCII(PyObject_ASCII278,10056 + #define PyBaseString_Type PyBaseString_Type281,10145 + #define PyStringObject PyStringObject282,10199 + #define PyString_Type PyString_Type283,10254 + #define PyString_Check PyString_Check284,10308 + #define PyString_CheckExact PyString_CheckExact285,10363 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check288,10456 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact289,10517 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check291,10594 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact292,10680 + #define PySet_CheckExact(PySet_CheckExact295,10813 +#define __Pyx_TypeCheck(__Pyx_TypeCheck297,10889 +#define __Pyx_PyException_Check(__Pyx_PyException_Check298,10970 + #define PyIntObject PyIntObject300,11071 + #define PyInt_Type PyInt_Type301,11123 + #define PyInt_Check(PyInt_Check302,11174 + #define PyInt_CheckExact(PyInt_CheckExact303,11230 + #define PyInt_FromString PyInt_FromString304,11291 + #define PyInt_FromUnicode PyInt_FromUnicode305,11348 + #define PyInt_FromLong PyInt_FromLong306,11406 + #define PyInt_FromSize_t PyInt_FromSize_t307,11461 + #define PyInt_FromSsize_t PyInt_FromSsize_t308,11518 + #define PyInt_AsLong PyInt_AsLong309,11576 + #define PyInt_AS_LONG PyInt_AS_LONG310,11629 + #define PyInt_AsSsize_t PyInt_AsSsize_t311,11683 + #define PyInt_AsUnsignedLongMask PyInt_AsUnsignedLongMask312,11739 + #define PyInt_AsUnsignedLongLongMask PyInt_AsUnsignedLongLongMask313,11804 + #define PyNumber_Int PyNumber_Int314,11873 + #define PyBoolObject PyBoolObject317,11959 + #define PyUnicode_InternFromString(PyUnicode_InternFromString321,12109 + typedef long Py_hash_t;Py_hash_t325,12223 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t326,12249 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t327,12297 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t329,12349 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t330,12400 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New333,12482 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New335,12601 + #define __Pyx_PyAsyncMethodsStruct __Pyx_PyAsyncMethodsStruct339,12750 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync340,12804 + unaryfunc am_await;am_await343,12899 + unaryfunc am_aiter;am_aiter344,12927 + unaryfunc am_anext;am_anext345,12955 + } __Pyx_PyAsyncMethodsStruct;__Pyx_PyAsyncMethodsStruct346,12983 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync347,13017 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync350,13130 + #define CYTHON_RESTRICT CYTHON_RESTRICT354,13226 + #define CYTHON_RESTRICT CYTHON_RESTRICT356,13313 + #define CYTHON_RESTRICT CYTHON_RESTRICT358,13418 + #define CYTHON_RESTRICTCYTHON_RESTRICT360,13463 +# define CYTHON_UNUSED CYTHON_UNUSED366,13643 +# define CYTHON_UNUSEDCYTHON_UNUSED368,13708 +# define CYTHON_UNUSED CYTHON_UNUSED371,13820 +# define CYTHON_UNUSEDCYTHON_UNUSED373,13881 + template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }CYTHON_MAYBE_UNUSED_VAR378,13980 +# define CYTHON_MAYBE_UNUSED_VAR(CYTHON_MAYBE_UNUSED_VAR380,14056 +# define CYTHON_NCP_UNUSEDCYTHON_NCP_UNUSED385,14180 +# define CYTHON_NCP_UNUSED CYTHON_NCP_UNUSED387,14215 +#define __Pyx_void_to_None(__Pyx_void_to_None390,14272 + #define CYTHON_INLINE CYTHON_INLINE397,14530 + #define CYTHON_INLINE CYTHON_INLINE399,14604 +void __Pyx_call_destructor(T& x) {__Pyx_call_destructor403,14674 +class __Pyx_FakeReference {__Pyx_FakeReference407,14744 + __Pyx_FakeReference() : ptr(NULL) { }__Pyx_FakeReference409,14782 + __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }__Pyx_FakeReference410,14824 + T *operator->() { return ptr; }operator ->411,14894 + T *operator&() { return ptr; }operator &412,14930 + operator T&() { return *ptr; }operator T&413,14965 + template<typename U> bool operator ==(U other) { return *ptr == other; }operator ==414,15000 + template<typename U> bool operator !=(U other) { return *ptr != other; }operator !=415,15077 + T *ptr;ptr417,15165 + #define _USE_MATH_DEFINES_USE_MATH_DEFINES421,15223 +#define __PYX_NAN(__PYX_NAN425,15287 +static CYTHON_INLINE float __PYX_NAN() {__PYX_NAN427,15327 +#define __Pyx_truncl __Pyx_truncl434,15496 +#define __Pyx_truncl __Pyx_truncl436,15529 +#define __PYX_ERR(__PYX_ERR440,15566 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide446,15749 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide447,15819 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide449,15902 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide450,15968 + #define __PYX_EXTERN_C __PYX_EXTERN_C455,16093 + #define __PYX_EXTERN_C __PYX_EXTERN_C457,16139 +#define __PYX_HAVE__pyisda__legs__PYX_HAVE__pyisda__legs461,16190 +#define __PYX_HAVE_API__pyisda__legs__PYX_HAVE_API__pyisda__legs462,16223 +#define CYTHON_WITHOUT_ASSERTIONSCYTHON_WITHOUT_ASSERTIONS498,17047 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;p501,17089 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;s501,17089 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;n501,17089 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;encoding501,17089 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_unicode502,17176 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_str502,17176 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;intern502,17176 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;__Pyx_StringTabEntry502,17176 +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII __PYX_DEFAULT_STRING_ENCODING_IS_ASCII504,17278 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT505,17327 +#define __PYX_DEFAULT_STRING_ENCODING __PYX_DEFAULT_STRING_ENCODING506,17378 +#define __Pyx_PyObject_FromString __Pyx_PyObject_FromString507,17419 +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyObject_FromStringAndSize508,17478 +#define __Pyx_uchar_cast(__Pyx_uchar_cast509,17551 +#define __Pyx_long_cast(__Pyx_long_cast510,17598 +#define __Pyx_fits_Py_ssize_t(__Pyx_fits_Py_ssize_t511,17635 + #define __Pyx_sst_abs(__Pyx_sst_abs523,18241 + #define __Pyx_sst_abs(__Pyx_sst_abs525,18324 + #define __Pyx_sst_abs(__Pyx_sst_abs527,18403 + #define __Pyx_sst_abs(__Pyx_sst_abs529,18493 + #define __Pyx_sst_abs(__Pyx_sst_abs531,18604 + #define __Pyx_sst_abs(__Pyx_sst_abs533,18675 + #define __Pyx_sst_abs(__Pyx_sst_abs535,18737 +#define __Pyx_PyByteArray_FromString(__Pyx_PyByteArray_FromString539,18959 +#define __Pyx_PyByteArray_FromStringAndSize(__Pyx_PyByteArray_FromStringAndSize540,19069 +#define __Pyx_PyBytes_FromString __Pyx_PyBytes_FromString541,19168 +#define __Pyx_PyBytes_FromStringAndSize __Pyx_PyBytes_FromStringAndSize542,19227 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString545,19390 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize546,19457 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString548,19537 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize549,19606 +#define __Pyx_PyObject_AsSString(__Pyx_PyObject_AsSString551,19689 +#define __Pyx_PyObject_AsUString(__Pyx_PyObject_AsUString552,19772 +#define __Pyx_PyObject_FromCString(__Pyx_PyObject_FromCString553,19857 +#define __Pyx_PyBytes_FromCString(__Pyx_PyBytes_FromCString554,19938 +#define __Pyx_PyByteArray_FromCString(__Pyx_PyByteArray_FromCString555,20018 +#define __Pyx_PyStr_FromCString(__Pyx_PyStr_FromCString556,20106 +#define __Pyx_PyUnicode_FromCString(__Pyx_PyUnicode_FromCString557,20184 +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)__Pyx_Py_UNICODE_strlen559,20291 +#define __Pyx_Py_UNICODE_strlen __Pyx_Py_UNICODE_strlen566,20466 +#define __Pyx_PyUnicode_FromUnicode(__Pyx_PyUnicode_FromUnicode568,20523 +#define __Pyx_PyUnicode_FromUnicodeAndLength __Pyx_PyUnicode_FromUnicodeAndLength569,20621 +#define __Pyx_PyUnicode_AsUnicode __Pyx_PyUnicode_AsUnicode570,20688 +#define __Pyx_NewRef(__Pyx_NewRef571,20753 +#define __Pyx_Owned_Py_None(__Pyx_Owned_Py_None572,20801 +#define __Pyx_PyBool_FromLong(__Pyx_PyBool_FromLong573,20854 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble579,21233 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble581,21342 +#define __pyx_PyFloat_AsFloat(__pyx_PyFloat_AsFloat583,21403 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int585,21498 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int587,21594 +#define __Pyx_PyNumber_Float(__Pyx_PyNumber_Float589,21689 +static int __Pyx_sys_getdefaultencoding_not_ascii;__Pyx_sys_getdefaultencoding_not_ascii591,21850 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params592,21901 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize637,23630 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize639,23731 +static char* __PYX_DEFAULT_STRING_ENCODING;__PYX_DEFAULT_STRING_ENCODING641,23898 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params642,23942 + #define likely(likely668,24836 + #define unlikely(unlikely669,24885 + #define likely(likely671,24970 + #define unlikely(unlikely672,24996 +static PyObject *__pyx_m;__pyx_m675,25045 +static PyObject *__pyx_d;__pyx_d676,25071 +static PyObject *__pyx_b;__pyx_b677,25097 +static PyObject *__pyx_empty_tuple;__pyx_empty_tuple678,25123 +static PyObject *__pyx_empty_bytes;__pyx_empty_bytes679,25159 +static PyObject *__pyx_empty_unicode;__pyx_empty_unicode680,25195 +static int __pyx_lineno;__pyx_lineno681,25233 +static int __pyx_clineno = 0;__pyx_clineno682,25258 +static const char * __pyx_cfilenm= __FILE__;__pyx_cfilenm683,25288 +static const char *__pyx_filename;__pyx_filename684,25333 +static const char *__pyx_f[] = {__pyx_f687,25370 +typedef long __pyx_t_6pyisda_4date_TDate;__pyx_t_6pyisda_4date_TDate703,25653 +typedef int __pyx_t_6pyisda_4legs_TBoolean;__pyx_t_6pyisda_4legs_TBoolean712,25847 +enum __pyx_t_6pyisda_4date_DCC {__pyx_t_6pyisda_4date_DCC728,26333 + __pyx_e_6pyisda_4date_ACT_365 = 1L,__pyx_e_6pyisda_4date_ACT_365729,26366 + __pyx_e_6pyisda_4date_ACT_365F = 2L,__pyx_e_6pyisda_4date_ACT_365F730,26404 + __pyx_e_6pyisda_4date_ACT_360 = 3L__pyx_e_6pyisda_4date_ACT_360731,26443 +enum __pyx_t_6pyisda_5curve_Basis {__pyx_t_6pyisda_5curve_Basis741,26759 + __pyx_e_6pyisda_5curve_CONTINUOUS = 0x1388,__pyx_e_6pyisda_5curve_CONTINUOUS742,26795 + __pyx_e_6pyisda_5curve_DISCOUNT_RATE = 0x200,__pyx_e_6pyisda_5curve_DISCOUNT_RATE743,26841 + __pyx_e_6pyisda_5curve_SIMPLE_BASIS = 0,__pyx_e_6pyisda_5curve_SIMPLE_BASIS744,26889 + __pyx_e_6pyisda_5curve_ANNUAL_BASIS = 1,__pyx_e_6pyisda_5curve_ANNUAL_BASIS745,26932 + __pyx_e_6pyisda_5curve_DISCOUNT_FACTOR = -2L__pyx_e_6pyisda_5curve_DISCOUNT_FACTOR746,26975 +struct __pyx_obj_6pyisda_5curve_Curve {__pyx_obj_6pyisda_5curve_Curve756,27175 + std::shared_ptr<TCurve> _thisptr;_thisptr758,27231 +struct __pyx_obj_6pyisda_5curve_YieldCurve {__pyx_obj_6pyisda_5curve_YieldCurve769,27455 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base770,27500 + TDate *_dates;_dates771,27552 + size_t _ninstr;_ninstr772,27569 +struct __pyx_obj_6pyisda_5curve_SpreadCurve {__pyx_obj_6pyisda_5curve_SpreadCurve783,27725 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base784,27771 +struct __pyx_obj_6pyisda_4legs_ContingentLeg {__pyx_obj_6pyisda_4legs_ContingentLeg795,27997 + TContingentLeg *_thisptr;_thisptr797,28060 +struct __pyx_obj_6pyisda_4legs_FeeLeg {__pyx_obj_6pyisda_4legs_FeeLeg807,28211 + TFeeLeg *_thisptr;_thisptr809,28267 + #define CYTHON_REFNANNY CYTHON_REFNANNY816,28380 + void (*INCREF)(void*, PyObject*, int);INCREF820,28454 + void (*DECREF)(void*, PyObject*, int);DECREF821,28497 + void (*GOTREF)(void*, PyObject*, int);GOTREF822,28540 + void (*GIVEREF)(void*, PyObject*, int);GIVEREF823,28583 + void* (*SetupContext)(const char*, int, const char*);SetupContext824,28627 + void (*FinishContext)(void**);FinishContext825,28685 + } __Pyx_RefNannyAPIStruct;__Pyx_RefNannyAPIStruct826,28720 + static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;__Pyx_RefNanny827,28749 + #define __Pyx_RefNannyDeclarations __Pyx_RefNannyDeclarations829,28886 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext831,28971 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext840,29407 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext843,29555 + #define __Pyx_INCREF(__Pyx_INCREF845,29653 + #define __Pyx_DECREF(__Pyx_DECREF846,29746 + #define __Pyx_GOTREF(__Pyx_GOTREF847,29839 + #define __Pyx_GIVEREF(__Pyx_GIVEREF848,29932 + #define __Pyx_XINCREF(__Pyx_XINCREF849,30026 + #define __Pyx_XDECREF(__Pyx_XDECREF850,30105 + #define __Pyx_XGOTREF(__Pyx_XGOTREF851,30184 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF852,30263 + #define __Pyx_RefNannyDeclarations__Pyx_RefNannyDeclarations854,30348 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext855,30385 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext856,30441 + #define __Pyx_INCREF(__Pyx_INCREF857,30481 + #define __Pyx_DECREF(__Pyx_DECREF858,30520 + #define __Pyx_GOTREF(__Pyx_GOTREF859,30559 + #define __Pyx_GIVEREF(__Pyx_GIVEREF860,30585 + #define __Pyx_XINCREF(__Pyx_XINCREF861,30612 + #define __Pyx_XDECREF(__Pyx_XDECREF862,30653 + #define __Pyx_XGOTREF(__Pyx_XGOTREF863,30694 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF864,30721 +#define __Pyx_XDECREF_SET(__Pyx_XDECREF_SET866,30756 +#define __Pyx_DECREF_SET(__Pyx_DECREF_SET870,30887 +#define __Pyx_CLEAR(__Pyx_CLEAR874,31016 +#define __Pyx_XCLEAR(__Pyx_XCLEAR875,31120 +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {__Pyx_PyObject_GetAttrStr879,31300 +#define __Pyx_PyObject_GetAttrStr(__Pyx_PyObject_GetAttrStr890,31697 +#define __Pyx_PyThreadState_declare __Pyx_PyThreadState_declare913,32506 +#define __Pyx_PyThreadState_assign __Pyx_PyThreadState_assign914,32572 +#define __Pyx_PyThreadState_declare__Pyx_PyThreadState_declare916,32650 +#define __Pyx_PyThreadState_assign__Pyx_PyThreadState_assign917,32686 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState922,32788 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState923,32902 +#define __Pyx_ErrRestore(__Pyx_ErrRestore924,33014 +#define __Pyx_ErrFetch(__Pyx_ErrFetch925,33112 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState929,33457 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState930,33540 +#define __Pyx_ErrRestore(__Pyx_ErrRestore931,33619 +#define __Pyx_ErrFetch(__Pyx_ErrFetch932,33693 +#define __Pyx_PyObject_Call(__Pyx_PyObject_Call946,34203 +#define __Pyx_PyCFunction_FastCall(__Pyx_PyCFunction_FastCall956,34562 +#define __Pyx_PyFunction_FastCall(__Pyx_PyFunction_FastCall961,34697 +#define __Pyx_PyFunction_FastCallDict(__Pyx_PyFunction_FastCallDict966,34969 +static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {__Pyx_PyList_Append980,35464 +#define __Pyx_PyList_Append(__Pyx_PyList_Append992,35853 + PyCodeObject* code_object;code_object1003,36150 + int code_line;code_line1004,36181 +} __Pyx_CodeObjectCacheEntry;__Pyx_CodeObjectCacheEntry1005,36200 +struct __Pyx_CodeObjectCache {__Pyx_CodeObjectCache1006,36230 + int count;count1007,36261 + int max_count;max_count1008,36276 + __Pyx_CodeObjectCacheEntry* entries;entries1009,36295 +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};__pyx_code_cache1011,36339 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString1044,37445 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString1046,37517 +static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0;__pyx_ptype_7cpython_4type_type1068,38176 +static PyTypeObject *__pyx_ptype_7cpython_4bool_bool = 0;__pyx_ptype_7cpython_4bool_bool1101,38996 +static PyTypeObject *__pyx_ptype_7cpython_7complex_complex = 0;__pyx_ptype_7cpython_7complex_complex1110,39245 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_date = 0;__pyx_ptype_7cpython_8datetime_date1149,40240 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_time = 0;__pyx_ptype_7cpython_8datetime_time1150,40302 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_datetime = 0;__pyx_ptype_7cpython_8datetime_datetime1151,40364 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_timedelta = 0;__pyx_ptype_7cpython_8datetime_timedelta1152,40430 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_tzinfo = 0;__pyx_ptype_7cpython_8datetime_tzinfo1153,40497 +static long (*__pyx_f_6pyisda_4date_dcc)(PyObject *); /*proto*/__pyx_f_6pyisda_4date_dcc1156,40607 +static __pyx_t_6pyisda_4date_TDate (*__pyx_f_6pyisda_4date_pydate_to_TDate)(PyDateTime_Date *); /*proto*/__pyx_f_6pyisda_4date_pydate_to_TDate1157,40671 +static PyDateTime_Date *(*__pyx_f_6pyisda_4date_TDate_to_pydate)(__pyx_t_6pyisda_4date_TDate, int __pyx_skip_dispatch); /*proto*/__pyx_f_6pyisda_4date_TDate_to_pydate1158,40777 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_Curve = 0;__pyx_ptype_6pyisda_5curve_Curve1165,41043 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_YieldCurve = 0;__pyx_ptype_6pyisda_5curve_YieldCurve1166,41102 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_SpreadCurve = 0;__pyx_ptype_6pyisda_5curve_SpreadCurve1167,41166 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_ContingentLeg = 0;__pyx_ptype_6pyisda_4legs_ContingentLeg1174,41371 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_FeeLeg = 0;__pyx_ptype_6pyisda_4legs_FeeLeg1175,41437 +#define __Pyx_MODULE_NAME __Pyx_MODULE_NAME1176,41496 +int __pyx_module_is_main_pyisda__legs = 0;__pyx_module_is_main_pyisda__legs1177,41536 +static PyObject *__pyx_builtin_ValueError;__pyx_builtin_ValueError1180,41618 +static PyObject *__pyx_builtin_range;__pyx_builtin_range1181,41661 +static const char __pyx_k_sc[] = "sc";__pyx_k_sc1182,41699 +static const char __pyx_k_yc[] = "yc";__pyx_k_yc1183,41738 +static const char __pyx_k_date[] = "date";__pyx_k_date1184,41777 +static const char __pyx_k_main[] = "__main__";__pyx_k_main1185,41820 +static const char __pyx_k_test[] = "__test__";__pyx_k_test1186,41867 +static const char __pyx_k_class[] = "__class__";__pyx_k_class1187,41914 +static const char __pyx_k_range[] = "range";__pyx_k_range1188,41963 +static const char __pyx_k_today[] = "today";__pyx_k_today1189,42008 +static const char __pyx_k_import[] = "__import__";__pyx_k_import1190,42053 +static const char __pyx_k_ACT_360[] = "ACT/360";__pyx_k_ACT_3601191,42104 +static const char __pyx_k_end_date[] = "end_date";__pyx_k_end_date1192,42153 +static const char __pyx_k_notional[] = "notional";__pyx_k_notional1193,42204 +static const char __pyx_k_pay_dates[] = "pay_dates";__pyx_k_pay_dates1194,42255 +static const char __pyx_k_ValueError[] = "ValueError";__pyx_k_ValueError1195,42308 +static const char __pyx_k_start_date[] = "start_date";__pyx_k_start_date1196,42363 +static const char __pyx_k_value_date[] = "value_date";__pyx_k_value_date1197,42418 +static const char __pyx_k_coupon_rate[] = "coupon_rate";__pyx_k_coupon_rate1198,42473 +static const char __pyx_k_payment_dcc[] = "payment_dcc";__pyx_k_payment_dcc1199,42530 +static const char __pyx_k_dcc_tostring[] = "dcc_tostring";__pyx_k_dcc_tostring1200,42587 +static const char __pyx_k_step_in_date[] = "step_in_date";__pyx_k_step_in_date1201,42646 +static const char __pyx_k_acc_end_dates[] = "acc_end_dates";__pyx_k_acc_end_dates1202,42705 +static const char __pyx_k_protect_start[] = "protect_start";__pyx_k_protect_start1203,42766 +static const char __pyx_k_recovery_rate[] = "recovery_rate";__pyx_k_recovery_rate1204,42827 +static const char __pyx_k_acc_start_dates[] = "acc_start_dates";__pyx_k_acc_start_dates1205,42888 +static const char __pyx_k_can_t_convert_stub[] = "can't convert stub";__pyx_k_can_t_convert_stub1206,42953 +static const char __pyx_k_pay_accrued_at_start[] = "pay_accrued_at_start";__pyx_k_pay_accrued_at_start1207,43024 +static const char __pyx_k_pay_accrued_on_default[] = "pay_accrued_on_default";__pyx_k_pay_accrued_on_default1208,43099 +static PyObject *__pyx_kp_s_ACT_360;__pyx_kp_s_ACT_3601209,43178 +static PyObject *__pyx_n_s_ValueError;__pyx_n_s_ValueError1210,43215 +static PyObject *__pyx_n_s_acc_end_dates;__pyx_n_s_acc_end_dates1211,43254 +static PyObject *__pyx_n_s_acc_start_dates;__pyx_n_s_acc_start_dates1212,43296 +static PyObject *__pyx_kp_s_can_t_convert_stub;__pyx_kp_s_can_t_convert_stub1213,43340 +static PyObject *__pyx_n_s_class;__pyx_n_s_class1214,43388 +static PyObject *__pyx_n_s_coupon_rate;__pyx_n_s_coupon_rate1215,43422 +static PyObject *__pyx_n_s_date;__pyx_n_s_date1216,43462 +static PyObject *__pyx_n_s_dcc_tostring;__pyx_n_s_dcc_tostring1217,43495 +static PyObject *__pyx_n_s_end_date;__pyx_n_s_end_date1218,43536 +static PyObject *__pyx_n_s_import;__pyx_n_s_import1219,43573 +static PyObject *__pyx_n_s_main;__pyx_n_s_main1220,43608 +static PyObject *__pyx_n_s_notional;__pyx_n_s_notional1221,43641 +static PyObject *__pyx_n_s_pay_accrued_at_start;__pyx_n_s_pay_accrued_at_start1222,43678 +static PyObject *__pyx_n_s_pay_accrued_on_default;__pyx_n_s_pay_accrued_on_default1223,43727 +static PyObject *__pyx_n_s_pay_dates;__pyx_n_s_pay_dates1224,43778 +static PyObject *__pyx_n_s_payment_dcc;__pyx_n_s_payment_dcc1225,43816 +static PyObject *__pyx_n_s_protect_start;__pyx_n_s_protect_start1226,43856 +static PyObject *__pyx_n_s_range;__pyx_n_s_range1227,43898 +static PyObject *__pyx_n_s_recovery_rate;__pyx_n_s_recovery_rate1228,43932 +static PyObject *__pyx_n_s_sc;__pyx_n_s_sc1229,43974 +static PyObject *__pyx_n_s_start_date;__pyx_n_s_start_date1230,44005 +static PyObject *__pyx_n_s_step_in_date;__pyx_n_s_step_in_date1231,44044 +static PyObject *__pyx_n_s_test;__pyx_n_s_test1232,44085 +static PyObject *__pyx_n_s_today;__pyx_n_s_today1233,44118 +static PyObject *__pyx_n_s_value_date;__pyx_n_s_value_date1234,44152 +static PyObject *__pyx_n_s_yc;__pyx_n_s_yc1235,44191 +static PyObject *__pyx_tuple_;__pyx_tuple_1251,46915 +static int __pyx_pw_6pyisda_4legs_13ContingentLeg_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_4legs_13ContingentLeg_1__cinit__1263,47298 +static int __pyx_pf_6pyisda_4legs_13ContingentLeg___cinit__(struct __pyx_obj_6pyisda_4legs_ContingentLeg *__pyx_v_self, PyObject *__pyx_v_start_date, PyObject *__pyx_v_end_date, double __pyx_v_notional, int __pyx_v_protect_start) {__pyx_pf_6pyisda_4legs_13ContingentLeg___cinit__1359,51382 +static void __pyx_pw_6pyisda_4legs_13ContingentLeg_3__dealloc__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_4legs_13ContingentLeg_3__dealloc__1450,55061 +static void __pyx_pf_6pyisda_4legs_13ContingentLeg_2__dealloc__(struct __pyx_obj_6pyisda_4legs_ContingentLeg *__pyx_v_self) {__pyx_pf_6pyisda_4legs_13ContingentLeg_2__dealloc__1459,55421 +static char __pyx_doc_6pyisda_4legs_13ContingentLeg_4__reduce__[] = "ContingentLeg.__reduce__(self)";__pyx_doc_6pyisda_4legs_13ContingentLeg_4__reduce__1514,57011 +static PyObject *__pyx_pw_6pyisda_4legs_13ContingentLeg_5__reduce__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_4legs_13ContingentLeg_5__reduce__1515,57113 +static PyObject *__pyx_pf_6pyisda_4legs_13ContingentLeg_4__reduce__(struct __pyx_obj_6pyisda_4legs_ContingentLeg *__pyx_v_self) {__pyx_pf_6pyisda_4legs_13ContingentLeg_4__reduce__1526,57560 +static Py_hash_t __pyx_pw_6pyisda_4legs_13ContingentLeg_7__hash__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_4legs_13ContingentLeg_7__hash__1655,62956 +static Py_hash_t __pyx_pf_6pyisda_4legs_13ContingentLeg_6__hash__(struct __pyx_obj_6pyisda_4legs_ContingentLeg *__pyx_v_self) {__pyx_pf_6pyisda_4legs_13ContingentLeg_6__hash__1666,63361 +static char __pyx_doc_6pyisda_4legs_13ContingentLeg_8pv[] = "ContingentLeg.pv(self, today, step_in_date, value_date, YieldCurve yc, SpreadCurve sc, double recovery_rate)\n\n Present Value of the ContingentLeg cashflows.\n\n Parameters\n ----------\n today : :class:`datetime.date`\n step_in_date : :class:`datetime.date`\n date at which protection starts (usually `today` + 1)\n value_date : :class:`datetime.date`\n date at which cashflows are exchanged (usually `today` + 3 business days)\n yc : :class:`~pyisda.curve.YieldCurve`\n sc : :class:`~pyisda.curve.SpreadCurve`\n recovery_rate : float\n ";__pyx_doc_6pyisda_4legs_13ContingentLeg_8pv1776,67648 +static PyObject *__pyx_pw_6pyisda_4legs_13ContingentLeg_9pv(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_4legs_13ContingentLeg_9pv1777,68341 +static PyObject *__pyx_pf_6pyisda_4legs_13ContingentLeg_8pv(struct __pyx_obj_6pyisda_4legs_ContingentLeg *__pyx_v_self, PyObject *__pyx_v_today, PyObject *__pyx_v_step_in_date, PyObject *__pyx_v_value_date, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, struct __pyx_obj_6pyisda_5curve_SpreadCurve *__pyx_v_sc, double __pyx_v_recovery_rate) {__pyx_pf_6pyisda_4legs_13ContingentLeg_8pv1875,73096 +static int __pyx_pw_6pyisda_4legs_6FeeLeg_1__cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_4legs_6FeeLeg_1__cinit__1998,78656 +static int __pyx_pf_6pyisda_4legs_6FeeLeg___cinit__(struct __pyx_obj_6pyisda_4legs_FeeLeg *__pyx_v_self, PyObject *__pyx_v_start_date, PyObject *__pyx_v_end_date, int __pyx_v_pay_accrued_on_default, double __pyx_v_notional, double __pyx_v_coupon_rate, PyObject *__pyx_v_payment_dcc, int __pyx_v_protect_start) {__pyx_pf_6pyisda_4legs_6FeeLeg___cinit__2127,84873 +static char __pyx_doc_6pyisda_4legs_6FeeLeg_2__reduce__[] = "FeeLeg.__reduce__(self)";__pyx_doc_6pyisda_4legs_6FeeLeg_2__reduce__2263,90713 +static PyObject *__pyx_pw_6pyisda_4legs_6FeeLeg_3__reduce__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_4legs_6FeeLeg_3__reduce__2264,90800 +static PyObject *__pyx_pf_6pyisda_4legs_6FeeLeg_2__reduce__(struct __pyx_obj_6pyisda_4legs_FeeLeg *__pyx_v_self) {__pyx_pf_6pyisda_4legs_6FeeLeg_2__reduce__2275,91224 +static Py_hash_t __pyx_pw_6pyisda_4legs_6FeeLeg_5__hash__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_4legs_6FeeLeg_5__hash__2493,100731 +static Py_hash_t __pyx_pf_6pyisda_4legs_6FeeLeg_4__hash__(struct __pyx_obj_6pyisda_4legs_FeeLeg *__pyx_v_self) {__pyx_pf_6pyisda_4legs_6FeeLeg_4__hash__2504,101113 +static char __pyx_doc_6pyisda_4legs_6FeeLeg_6inspect[] = "FeeLeg.inspect(self)\nconvenience method to study the C struct";__pyx_doc_6pyisda_4legs_6FeeLeg_6inspect2659,107253 +static PyObject *__pyx_pw_6pyisda_4legs_6FeeLeg_7inspect(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_4legs_6FeeLeg_7inspect2660,107376 +static PyObject *__pyx_pf_6pyisda_4legs_6FeeLeg_6inspect(struct __pyx_obj_6pyisda_4legs_FeeLeg *__pyx_v_self) {__pyx_pf_6pyisda_4legs_6FeeLeg_6inspect2671,107791 +static PyObject *__pyx_pw_6pyisda_4legs_6FeeLeg_9cashflows_1__get__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_4legs_6FeeLeg_9cashflows_1__get__2833,114838 +static PyObject *__pyx_pf_6pyisda_4legs_6FeeLeg_9cashflows___get__(struct __pyx_obj_6pyisda_4legs_FeeLeg *__pyx_v_self) {__pyx_pf_6pyisda_4legs_6FeeLeg_9cashflows___get__2844,115242 +static char __pyx_doc_6pyisda_4legs_6FeeLeg_8pv[] = "FeeLeg.pv(self, today, step_in_date, value_date, YieldCurve yc, SpreadCurve sc, bool pay_accrued_at_start)\n\n Present Value of FeeLeg cashflows.\n\n Parameters\n ----------\n today : :class:`datetime.date`\n step_in_date : :class:`datetime.date`\n date at which protection starts (usually `today` + 1)\n value_date : :class:`datetime.date`\n date at which cashflows are exchanged (usually `today` + 3 business days)\n yc : :class:`~pyisda.curve.YieldCurve`\n sc : :class:`~pyisda.curve.SpreadCurve`\n pay_accrued_at_start : bool\n True means clean\n\n ";__pyx_doc_6pyisda_4legs_6FeeLeg_8pv2967,119557 +static PyObject *__pyx_pw_6pyisda_4legs_6FeeLeg_9pv(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_4legs_6FeeLeg_9pv2968,120266 +static PyObject *__pyx_pf_6pyisda_4legs_6FeeLeg_8pv(struct __pyx_obj_6pyisda_4legs_FeeLeg *__pyx_v_self, PyObject *__pyx_v_today, PyObject *__pyx_v_step_in_date, PyObject *__pyx_v_value_date, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, struct __pyx_obj_6pyisda_5curve_SpreadCurve *__pyx_v_sc, int __pyx_v_pay_accrued_at_start) {__pyx_pf_6pyisda_4legs_6FeeLeg_8pv3066,125036 +static char __pyx_doc_6pyisda_4legs_6FeeLeg_10accrued[] = "FeeLeg.accrued(self, today)\nAccrued amount as of today\n\n Parameters\n ----------\n today : :class:`datetime.date`\n\n Return\n ------\n float\n ";__pyx_doc_6pyisda_4legs_6FeeLeg_10accrued3189,130383 +static PyObject *__pyx_pw_6pyisda_4legs_6FeeLeg_11accrued(PyObject *__pyx_v_self, PyObject *__pyx_v_today) {__pyx_pw_6pyisda_4legs_6FeeLeg_11accrued3190,130641 +static PyObject *__pyx_pf_6pyisda_4legs_6FeeLeg_10accrued(struct __pyx_obj_6pyisda_4legs_FeeLeg *__pyx_v_self, PyObject *__pyx_v_today) {__pyx_pf_6pyisda_4legs_6FeeLeg_10accrued3201,131080 +static void __pyx_pw_6pyisda_4legs_6FeeLeg_13__dealloc__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_4legs_6FeeLeg_13__dealloc__3261,133042 +static void __pyx_pf_6pyisda_4legs_6FeeLeg_12__dealloc__(struct __pyx_obj_6pyisda_4legs_FeeLeg *__pyx_v_self) {__pyx_pf_6pyisda_4legs_6FeeLeg_12__dealloc__3270,133381 +static CYTHON_INLINE void __pyx_f_7cpython_8datetime_import_datetime(void) {__pyx_f_7cpython_8datetime_import_datetime3319,134767 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_date_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day) {__pyx_f_7cpython_8datetime_date_new3352,135840 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_new(int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_time_new3399,137704 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day, int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_datetime_new3446,139838 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_timedelta_new(int __pyx_v_days, int __pyx_v_seconds, int __pyx_v_useconds) {__pyx_f_7cpython_8datetime_timedelta_new3493,142141 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_tzinfo3540,143943 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_tzinfo3614,146038 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_year3688,148131 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_month3725,148977 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_day3762,149824 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_year3799,150669 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_month3836,151551 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_day3873,152434 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_hour3910,153296 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_minute3947,154166 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_second3984,155054 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_microsecond4021,155962 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_hour4058,156899 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_minute4095,157805 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_second4132,158729 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_microsecond4169,159673 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_days(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_days4206,160637 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_seconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_seconds4243,161558 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_microseconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_microseconds4279,162522 +static PyObject *__pyx_tp_new_6pyisda_4legs_ContingentLeg(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_6pyisda_4legs_ContingentLeg4305,163290 +static void __pyx_tp_dealloc_6pyisda_4legs_ContingentLeg(PyObject *o) {__pyx_tp_dealloc_6pyisda_4legs_ContingentLeg4320,163766 +static PyMethodDef __pyx_methods_6pyisda_4legs_ContingentLeg[] = {__pyx_methods_6pyisda_4legs_ContingentLeg4337,164286 +static PyTypeObject __pyx_type_6pyisda_4legs_ContingentLeg = {__pyx_type_6pyisda_4legs_ContingentLeg4343,164661 +static PyObject *__pyx_tp_new_6pyisda_4legs_FeeLeg(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_6pyisda_4legs_FeeLeg4401,166462 +static void __pyx_tp_dealloc_6pyisda_4legs_FeeLeg(PyObject *o) {__pyx_tp_dealloc_6pyisda_4legs_FeeLeg4416,166923 +static PyObject *__pyx_getprop_6pyisda_4legs_6FeeLeg_cashflows(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop_6pyisda_4legs_6FeeLeg_cashflows4433,167429 +static PyMethodDef __pyx_methods_6pyisda_4legs_FeeLeg[] = {__pyx_methods_6pyisda_4legs_FeeLeg4437,167597 +static struct PyGetSetDef __pyx_getsets_6pyisda_4legs_FeeLeg[] = {__pyx_getsets_6pyisda_4legs_FeeLeg4445,168178 +static PyTypeObject __pyx_type_6pyisda_4legs_FeeLeg = {__pyx_type_6pyisda_4legs_FeeLeg4450,168374 +static PyMethodDef __pyx_methods[] = {__pyx_methods4508,170451 +static struct PyModuleDef __pyx_moduledef = {__pyx_moduledef4513,170535 +static __Pyx_StringTabEntry __pyx_string_tab[] = {__pyx_string_tab4530,170903 +static int __Pyx_InitCachedBuiltins(void) {__Pyx_InitCachedBuiltins4560,173299 +static int __Pyx_InitCachedConstants(void) {__Pyx_InitCachedConstants4568,173650 +static int __Pyx_InitGlobals(void) {__Pyx_InitGlobals4589,174352 +PyMODINIT_FUNC initlegs(void)initlegs4598,174582 +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {__Pyx_RefNannyImportAPI4785,184629 +static PyObject *__Pyx_GetBuiltinName(PyObject *name) {__Pyx_GetBuiltinName4801,185057 +static void __Pyx_RaiseArgtupleInvalid(__Pyx_RaiseArgtupleInvalid4815,185457 +static void __Pyx_RaiseDoubleKeywordsError(__Pyx_RaiseDoubleKeywordsError4841,186222 +static int __Pyx_ParseOptionalKeywords(__Pyx_ParseOptionalKeywords4855,186631 +static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {__Pyx_TypeTest4957,190203 +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {__Pyx_ErrRestoreInState4971,190658 +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx_ErrFetchInState4983,191118 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb,__Pyx_Raise4995,191494 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {__Pyx_Raise5046,192974 + static void __Pyx_RaiseArgumentTypeInvalid(const char* name, PyObject *obj, PyTypeObject *type) {__Pyx_RaiseArgumentTypeInvalid5157,196623 +static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed,__Pyx_ArgTypeTest5162,196890 +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {__Pyx_PyObject_Call5185,197622 + static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name) {__Pyx_GetModuleGlobalName5204,198264 +static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) {__Pyx_PyCFunction_FastCall5223,198733 +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,__Pyx_PyFunction_FastCallNoKw5242,199613 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) {__Pyx_PyFunction_FastCallDict5271,200542 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallMethO5361,203432 +static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx__PyObject_CallOneArg5381,204090 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg5391,204414 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg5413,205158 + static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {__Pyx_Import5424,205466 + static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) {__Pyx_ImportFrom5498,207750 + static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {__pyx_bisect_code_objects5512,208228 +static PyCodeObject *__pyx_find_code_object(int code_line) {__pyx_find_code_object5533,208863 +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {__pyx_insert_code_object5547,209423 +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(__Pyx_CreateCodeObjectForTraceback5595,211215 +static void __Pyx_AddTraceback(const char *funcname, int c_line,__Pyx_AddTraceback5647,212824 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {__Pyx_PyInt_From_int5673,213744 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {__Pyx_PyInt_From_long5704,214882 + #define __PYX_VERIFY_RETURN_INT(__PYX_VERIFY_RETURN_INT5735,216039 +#define __PYX_VERIFY_RETURN_INT_EXC(__PYX_VERIFY_RETURN_INT_EXC5737,216182 +#define __PYX__VERIFY_RETURN_INT(__PYX__VERIFY_RETURN_INT5739,216323 + static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {__Pyx_PyInt_As_long5757,216993 + static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) {__Pyx_PyInt_As_size_t5946,226815 + static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {__Pyx_PyInt_As_int6135,236831 + static int __Pyx_check_binary_version(void) {__Pyx_check_binary_version6324,246564 +#define __PYX_HAVE_RT_ImportModule__PYX_HAVE_RT_ImportModule6341,247254 +static PyObject *__Pyx_ImportModule(const char *name) {__Pyx_ImportModule6342,247289 +#define __PYX_HAVE_RT_ImportType__PYX_HAVE_RT_ImportType6359,247686 +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,__Pyx_ImportType6360,247719 +#define __PYX_HAVE_RT_ImportFunction__PYX_HAVE_RT_ImportFunction6424,249673 +static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) {__Pyx_ImportFunction6425,249710 + static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {__Pyx_InitStrings6477,251252 +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {__Pyx_PyUnicode_FromString6507,252180 +static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {__Pyx_PyObject_AsString6510,252341 +static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {__Pyx_PyObject_AsStringAndSize6514,252487 +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {__Pyx_PyObject_IsTrue6572,254363 +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {__Pyx_PyNumber_IntOrLong6577,254560 +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {__Pyx_PyIndex_AsSsize_t6628,255708 +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {__Pyx_PyInt_FromSize_t6690,257999 + +pyisda/pyisda/curve.cpp,166363 +#define PY_SSIZE_T_CLEANPY_SSIZE_T_CLEAN23,558 +#define CYTHON_ABI CYTHON_ABI30,887 + #define offsetof(offsetof33,952 + #define __stdcall__stdcall37,1092 + #define __cdecl__cdecl40,1141 + #define __fastcall__fastcall43,1191 + #define DL_IMPORT(DL_IMPORT47,1248 + #define DL_EXPORT(DL_EXPORT50,1298 + #define HAVE_LONG_LONGHAVE_LONG_LONG54,1447 + #define PY_LONG_LONG PY_LONG_LONG58,1511 + #define Py_HUGE_VAL Py_HUGE_VAL61,1571 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY64,1629 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON65,1666 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON66,1705 + #undef CYTHON_USE_TYPE_SLOTSCYTHON_USE_TYPE_SLOTS67,1745 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS68,1776 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS69,1810 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS70,1842 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS71,1877 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS72,1914 + #undef CYTHON_USE_UNICODE_INTERNALSCYTHON_USE_UNICODE_INTERNALS73,1954 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS74,1992 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER75,2033 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER76,2068 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS77,2106 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS78,2143 + #undef CYTHON_AVOID_BORROWED_REFSCYTHON_AVOID_BORROWED_REFS79,2183 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS80,2219 + #undef CYTHON_ASSUME_SAFE_MACROSCYTHON_ASSUME_SAFE_MACROS81,2258 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS82,2293 + #undef CYTHON_UNPACK_METHODSCYTHON_UNPACK_METHODS83,2331 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS84,2362 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE85,2396 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE86,2430 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL87,2467 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL88,2495 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY90,2556 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON91,2593 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON92,2632 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS94,2704 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS96,2749 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS97,2781 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS98,2816 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS99,2853 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS101,2932 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER103,2984 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER104,3019 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS105,3057 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS106,3094 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS108,3171 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS111,3257 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS114,3338 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE116,3383 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE117,3417 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL118,3454 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL119,3482 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY121,3519 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON122,3556 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON123,3595 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS125,3667 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS128,3739 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS129,3773 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS131,3851 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS134,3931 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS135,3970 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS137,4058 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS140,4147 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS143,4237 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER146,4323 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER147,4360 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER149,4444 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS152,4530 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS155,4616 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS158,4697 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE161,4777 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL164,4854 +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCCALL168,4937 + #undef SHIFTSHIFT172,5085 + #undef BASEBASE173,5100 + #undef MASKMASK174,5114 + #define Py_OptimizeFlag Py_OptimizeFlag177,5224 +#define __PYX_BUILD_PY_SSIZE_T __PYX_BUILD_PY_SSIZE_T179,5259 +#define CYTHON_FORMAT_SSIZE_T CYTHON_FORMAT_SSIZE_T180,5294 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME182,5353 + #define __Pyx_PyCode_New(__Pyx_PyCode_New183,5403 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType185,5577 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME187,5629 + #define __Pyx_PyCode_New(__Pyx_PyCode_New188,5676 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType190,5851 + #define Py_TPFLAGS_CHECKTYPES Py_TPFLAGS_CHECKTYPES193,5933 + #define Py_TPFLAGS_HAVE_INDEX Py_TPFLAGS_HAVE_INDEX196,6004 + #define Py_TPFLAGS_HAVE_NEWBUFFER Py_TPFLAGS_HAVE_NEWBUFFER199,6079 + #define Py_TPFLAGS_HAVE_FINALIZE Py_TPFLAGS_HAVE_FINALIZE202,6157 + #define METH_FASTCALL METH_FASTCALL205,6223 + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args,__Pyx_PyCFunctionFast206,6252 + #define __Pyx_PyCFunctionFast __Pyx_PyCFunctionFast209,6421 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check212,6501 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check215,6679 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED218,6789 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY219,6823 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH221,6986 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR222,7052 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE223,7120 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND224,7194 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA225,7254 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ226,7314 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE227,7380 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE228,7455 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED230,7592 + #define PyUnicode_1BYTE_KIND PyUnicode_1BYTE_KIND231,7626 + #define PyUnicode_2BYTE_KIND PyUnicode_2BYTE_KIND232,7660 + #define PyUnicode_4BYTE_KIND PyUnicode_4BYTE_KIND233,7694 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY234,7728 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH235,7774 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR236,7838 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE237,7920 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND238,8012 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA239,8075 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ240,8150 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE241,8236 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE242,8322 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat245,8429 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe246,8492 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat248,8561 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe249,8628 + #define PyUnicode_Contains(PyUnicode_Contains253,8856 + #define PyByteArray_Check(PyByteArray_Check256,8985 + #define PyObject_Format(PyObject_Format259,9127 + #define PyObject_Malloc(PyObject_Malloc262,9278 + #define PyObject_Free(PyObject_Free263,9325 + #define PyObject_Realloc(PyObject_Realloc264,9370 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars267,9456 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber268,9519 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars270,9615 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber271,9683 +#define __Pyx_PyString_FormatSafe(__Pyx_PyString_FormatSafe273,9773 +#define __Pyx_PyUnicode_FormatSafe(__Pyx_PyUnicode_FormatSafe274,9901 + #define __Pyx_PyString_Format(__Pyx_PyString_Format276,10050 + #define __Pyx_PyString_Format(__Pyx_PyString_Format278,10118 + #define PyObject_ASCII(PyObject_ASCII281,10239 + #define PyBaseString_Type PyBaseString_Type284,10328 + #define PyStringObject PyStringObject285,10382 + #define PyString_Type PyString_Type286,10437 + #define PyString_Check PyString_Check287,10491 + #define PyString_CheckExact PyString_CheckExact288,10546 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check291,10639 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact292,10700 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check294,10777 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact295,10863 + #define PySet_CheckExact(PySet_CheckExact298,10996 +#define __Pyx_TypeCheck(__Pyx_TypeCheck300,11072 +#define __Pyx_PyException_Check(__Pyx_PyException_Check301,11153 + #define PyIntObject PyIntObject303,11254 + #define PyInt_Type PyInt_Type304,11306 + #define PyInt_Check(PyInt_Check305,11357 + #define PyInt_CheckExact(PyInt_CheckExact306,11413 + #define PyInt_FromString PyInt_FromString307,11474 + #define PyInt_FromUnicode PyInt_FromUnicode308,11531 + #define PyInt_FromLong PyInt_FromLong309,11589 + #define PyInt_FromSize_t PyInt_FromSize_t310,11644 + #define PyInt_FromSsize_t PyInt_FromSsize_t311,11701 + #define PyInt_AsLong PyInt_AsLong312,11759 + #define PyInt_AS_LONG PyInt_AS_LONG313,11812 + #define PyInt_AsSsize_t PyInt_AsSsize_t314,11866 + #define PyInt_AsUnsignedLongMask PyInt_AsUnsignedLongMask315,11922 + #define PyInt_AsUnsignedLongLongMask PyInt_AsUnsignedLongLongMask316,11987 + #define PyNumber_Int PyNumber_Int317,12056 + #define PyBoolObject PyBoolObject320,12142 + #define PyUnicode_InternFromString(PyUnicode_InternFromString324,12292 + typedef long Py_hash_t;Py_hash_t328,12406 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t329,12432 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t330,12480 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t332,12532 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t333,12583 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New336,12665 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New338,12784 + #define __Pyx_PyAsyncMethodsStruct __Pyx_PyAsyncMethodsStruct342,12933 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync343,12987 + unaryfunc am_await;am_await346,13082 + unaryfunc am_aiter;am_aiter347,13110 + unaryfunc am_anext;am_anext348,13138 + } __Pyx_PyAsyncMethodsStruct;__Pyx_PyAsyncMethodsStruct349,13166 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync350,13200 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync353,13313 + #define CYTHON_RESTRICT CYTHON_RESTRICT357,13409 + #define CYTHON_RESTRICT CYTHON_RESTRICT359,13496 + #define CYTHON_RESTRICT CYTHON_RESTRICT361,13601 + #define CYTHON_RESTRICTCYTHON_RESTRICT363,13646 +# define CYTHON_UNUSED CYTHON_UNUSED369,13826 +# define CYTHON_UNUSEDCYTHON_UNUSED371,13891 +# define CYTHON_UNUSED CYTHON_UNUSED374,14003 +# define CYTHON_UNUSEDCYTHON_UNUSED376,14064 + template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }CYTHON_MAYBE_UNUSED_VAR381,14163 +# define CYTHON_MAYBE_UNUSED_VAR(CYTHON_MAYBE_UNUSED_VAR383,14239 +# define CYTHON_NCP_UNUSEDCYTHON_NCP_UNUSED388,14363 +# define CYTHON_NCP_UNUSED CYTHON_NCP_UNUSED390,14398 +#define __Pyx_void_to_None(__Pyx_void_to_None393,14455 + #define CYTHON_INLINE CYTHON_INLINE400,14713 + #define CYTHON_INLINE CYTHON_INLINE402,14787 +void __Pyx_call_destructor(T& x) {__Pyx_call_destructor406,14857 +class __Pyx_FakeReference {__Pyx_FakeReference410,14927 + __Pyx_FakeReference() : ptr(NULL) { }__Pyx_FakeReference412,14965 + __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }__Pyx_FakeReference413,15007 + T *operator->() { return ptr; }operator ->414,15077 + T *operator&() { return ptr; }operator &415,15113 + operator T&() { return *ptr; }operator T&416,15148 + template<typename U> bool operator ==(U other) { return *ptr == other; }operator ==417,15183 + template<typename U> bool operator !=(U other) { return *ptr != other; }operator !=418,15260 + T *ptr;ptr420,15348 + #define _USE_MATH_DEFINES_USE_MATH_DEFINES424,15406 +#define __PYX_NAN(__PYX_NAN428,15470 +static CYTHON_INLINE float __PYX_NAN() {__PYX_NAN430,15510 +#define __Pyx_truncl __Pyx_truncl437,15679 +#define __Pyx_truncl __Pyx_truncl439,15712 +#define __PYX_ERR(__PYX_ERR443,15749 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide449,15932 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide450,16002 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide452,16085 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide453,16151 + #define __PYX_EXTERN_C __PYX_EXTERN_C458,16276 + #define __PYX_EXTERN_C __PYX_EXTERN_C460,16322 +#define __PYX_HAVE__pyisda__curve__PYX_HAVE__pyisda__curve464,16373 +#define __PYX_HAVE_API__pyisda__curve__PYX_HAVE_API__pyisda__curve465,16407 +#define CYTHON_WITHOUT_ASSERTIONSCYTHON_WITHOUT_ASSERTIONS505,17333 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;p508,17375 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;s508,17375 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;n508,17375 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;encoding508,17375 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_unicode509,17462 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_str509,17462 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;intern509,17462 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;__Pyx_StringTabEntry509,17462 +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII __PYX_DEFAULT_STRING_ENCODING_IS_ASCII511,17564 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT512,17613 +#define __PYX_DEFAULT_STRING_ENCODING __PYX_DEFAULT_STRING_ENCODING513,17664 +#define __Pyx_PyObject_FromString __Pyx_PyObject_FromString514,17705 +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyObject_FromStringAndSize515,17764 +#define __Pyx_uchar_cast(__Pyx_uchar_cast516,17837 +#define __Pyx_long_cast(__Pyx_long_cast517,17884 +#define __Pyx_fits_Py_ssize_t(__Pyx_fits_Py_ssize_t518,17921 + #define __Pyx_sst_abs(__Pyx_sst_abs530,18527 + #define __Pyx_sst_abs(__Pyx_sst_abs532,18610 + #define __Pyx_sst_abs(__Pyx_sst_abs534,18689 + #define __Pyx_sst_abs(__Pyx_sst_abs536,18779 + #define __Pyx_sst_abs(__Pyx_sst_abs538,18890 + #define __Pyx_sst_abs(__Pyx_sst_abs540,18961 + #define __Pyx_sst_abs(__Pyx_sst_abs542,19023 +#define __Pyx_PyByteArray_FromString(__Pyx_PyByteArray_FromString546,19245 +#define __Pyx_PyByteArray_FromStringAndSize(__Pyx_PyByteArray_FromStringAndSize547,19355 +#define __Pyx_PyBytes_FromString __Pyx_PyBytes_FromString548,19454 +#define __Pyx_PyBytes_FromStringAndSize __Pyx_PyBytes_FromStringAndSize549,19513 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString552,19676 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize553,19743 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString555,19823 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize556,19892 +#define __Pyx_PyObject_AsSString(__Pyx_PyObject_AsSString558,19975 +#define __Pyx_PyObject_AsUString(__Pyx_PyObject_AsUString559,20058 +#define __Pyx_PyObject_FromCString(__Pyx_PyObject_FromCString560,20143 +#define __Pyx_PyBytes_FromCString(__Pyx_PyBytes_FromCString561,20224 +#define __Pyx_PyByteArray_FromCString(__Pyx_PyByteArray_FromCString562,20304 +#define __Pyx_PyStr_FromCString(__Pyx_PyStr_FromCString563,20392 +#define __Pyx_PyUnicode_FromCString(__Pyx_PyUnicode_FromCString564,20470 +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)__Pyx_Py_UNICODE_strlen566,20577 +#define __Pyx_Py_UNICODE_strlen __Pyx_Py_UNICODE_strlen573,20752 +#define __Pyx_PyUnicode_FromUnicode(__Pyx_PyUnicode_FromUnicode575,20809 +#define __Pyx_PyUnicode_FromUnicodeAndLength __Pyx_PyUnicode_FromUnicodeAndLength576,20907 +#define __Pyx_PyUnicode_AsUnicode __Pyx_PyUnicode_AsUnicode577,20974 +#define __Pyx_NewRef(__Pyx_NewRef578,21039 +#define __Pyx_Owned_Py_None(__Pyx_Owned_Py_None579,21087 +#define __Pyx_PyBool_FromLong(__Pyx_PyBool_FromLong580,21140 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble586,21519 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble588,21628 +#define __pyx_PyFloat_AsFloat(__pyx_PyFloat_AsFloat590,21689 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int592,21784 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int594,21880 +#define __Pyx_PyNumber_Float(__Pyx_PyNumber_Float596,21975 +static int __Pyx_sys_getdefaultencoding_not_ascii;__Pyx_sys_getdefaultencoding_not_ascii598,22136 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params599,22187 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize644,23916 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize646,24017 +static char* __PYX_DEFAULT_STRING_ENCODING;__PYX_DEFAULT_STRING_ENCODING648,24184 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params649,24228 + #define likely(likely675,25122 + #define unlikely(unlikely676,25171 + #define likely(likely678,25256 + #define unlikely(unlikely679,25282 +static PyObject *__pyx_m;__pyx_m682,25331 +static PyObject *__pyx_d;__pyx_d683,25357 +static PyObject *__pyx_b;__pyx_b684,25383 +static PyObject *__pyx_empty_tuple;__pyx_empty_tuple685,25409 +static PyObject *__pyx_empty_bytes;__pyx_empty_bytes686,25445 +static PyObject *__pyx_empty_unicode;__pyx_empty_unicode687,25481 +static int __pyx_lineno;__pyx_lineno688,25519 +static int __pyx_clineno = 0;__pyx_clineno689,25544 +static const char * __pyx_cfilenm= __FILE__;__pyx_cfilenm690,25574 +static const char *__pyx_filename;__pyx_filename691,25619 + #define CYTHON_CCOMPLEX CYTHON_CCOMPLEX696,25731 + #define CYTHON_CCOMPLEX CYTHON_CCOMPLEX698,25789 + #define CYTHON_CCOMPLEX CYTHON_CCOMPLEX700,25827 + #undef _Complex_I_Complex_I711,26072 + #define _Complex_I _Complex_I712,26092 +static const char *__pyx_f[] = {__pyx_f716,26128 +#define IS_UNSIGNED(IS_UNSIGNED727,26338 +#define __PYX_BUF_FLAGS_PACKED_STRUCT __PYX_BUF_FLAGS_PACKED_STRUCT729,26409 + const char* name;name731,26473 + struct __Pyx_StructField_* fields;fields732,26493 + size_t size;size733,26530 + size_t arraysize[8];arraysize734,26545 + int ndim;ndim735,26568 + char typegroup;typegroup736,26580 + char is_unsigned;is_unsigned737,26598 + int flags;flags738,26618 +} __Pyx_TypeInfo;__Pyx_TypeInfo739,26631 +typedef struct __Pyx_StructField_ {__Pyx_StructField_740,26649 + __Pyx_TypeInfo* type;type741,26685 + const char* name;name742,26709 + size_t offset;offset743,26729 +} __Pyx_StructField;__Pyx_StructField744,26746 + __Pyx_StructField* field;field746,26784 + size_t parent_offset;parent_offset747,26812 +} __Pyx_BufFmt_StackElem;__Pyx_BufFmt_StackElem748,26836 + __Pyx_StructField root;root750,26879 + __Pyx_BufFmt_StackElem* head;head751,26905 + size_t fmt_offset;fmt_offset752,26937 + size_t new_count, enc_count;new_count753,26958 + size_t new_count, enc_count;enc_count753,26958 + size_t struct_alignment;struct_alignment754,26989 + int is_complex;is_complex755,27016 + char enc_type;enc_type756,27034 + char new_packmode;new_packmode757,27051 + char enc_packmode;enc_packmode758,27072 + char is_valid_array;is_valid_array759,27093 +} __Pyx_BufFmt_Context;__Pyx_BufFmt_Context760,27116 + struct __pyx_memoryview_obj *memview;memview765,27218 + char *data;data766,27258 + Py_ssize_t shape[8];shape767,27272 + Py_ssize_t strides[8];strides768,27295 + Py_ssize_t suboffsets[8];suboffsets769,27320 +} __Pyx_memviewslice;__Pyx_memviewslice770,27348 + #define CYTHON_ATOMICS CYTHON_ATOMICS775,27436 +#define __pyx_atomic_int_type __pyx_atomic_int_type777,27472 + #define __pyx_atomic_incr_aligned(__pyx_atomic_incr_aligned781,27681 + #define __pyx_atomic_decr_aligned(__pyx_atomic_decr_aligned782,27763 + #undef __pyx_atomic_int_type__pyx_atomic_int_type788,27996 + #define __pyx_atomic_int_type __pyx_atomic_int_type789,28029 + #define __pyx_atomic_incr_aligned(__pyx_atomic_incr_aligned790,28068 + #define __pyx_atomic_decr_aligned(__pyx_atomic_decr_aligned791,28147 + #define __pyx_atomic_incr_aligned(__pyx_atomic_incr_aligned796,28390 + #define __pyx_atomic_decr_aligned(__pyx_atomic_decr_aligned797,28470 + #undef CYTHON_ATOMICSCYTHON_ATOMICS802,28637 + #define CYTHON_ATOMICS CYTHON_ATOMICS803,28663 +typedef volatile __pyx_atomic_int_type __pyx_atomic_int;__pyx_atomic_int808,28778 + #define __pyx_add_acquisition_count(__pyx_add_acquisition_count810,28854 + #define __pyx_sub_acquisition_count(__pyx_sub_acquisition_count812,28998 + #define __pyx_add_acquisition_count(__pyx_add_acquisition_count815,29147 + #define __pyx_sub_acquisition_count(__pyx_sub_acquisition_count817,29299 +typedef long __pyx_t_6pyisda_4date_TDate;__pyx_t_6pyisda_4date_TDate829,29600 +typedef int __pyx_t_6pyisda_4legs_TBoolean;__pyx_t_6pyisda_4legs_TBoolean838,29787 +typedef npy_int8 __pyx_t_5numpy_int8_t;__pyx_t_5numpy_int8_t847,30124 +typedef npy_int16 __pyx_t_5numpy_int16_t;__pyx_t_5numpy_int16_t856,30435 +typedef npy_int32 __pyx_t_5numpy_int32_t;__pyx_t_5numpy_int32_t865,30780 +typedef npy_int64 __pyx_t_5numpy_int64_t;__pyx_t_5numpy_int64_t874,31128 +typedef npy_uint8 __pyx_t_5numpy_uint8_t;__pyx_t_5numpy_uint8_t883,31446 +typedef npy_uint16 __pyx_t_5numpy_uint16_t;__pyx_t_5numpy_uint16_t892,31763 +typedef npy_uint32 __pyx_t_5numpy_uint32_t;__pyx_t_5numpy_uint32_t901,32115 +typedef npy_uint64 __pyx_t_5numpy_uint64_t;__pyx_t_5numpy_uint64_t910,32470 +typedef npy_float32 __pyx_t_5numpy_float32_t;__pyx_t_5numpy_float32_t919,32796 +typedef npy_float64 __pyx_t_5numpy_float64_t;__pyx_t_5numpy_float64_t928,33125 +typedef npy_long __pyx_t_5numpy_int_t;__pyx_t_5numpy_int_t937,33510 +typedef npy_longlong __pyx_t_5numpy_long_t;__pyx_t_5numpy_long_t946,33842 +typedef npy_longlong __pyx_t_5numpy_longlong_t;__pyx_t_5numpy_longlong_t955,34157 +typedef npy_ulong __pyx_t_5numpy_uint_t;__pyx_t_5numpy_uint_t964,34483 +typedef npy_ulonglong __pyx_t_5numpy_ulong_t;__pyx_t_5numpy_ulong_t973,34768 +typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t;__pyx_t_5numpy_ulonglong_t982,35088 +typedef npy_intp __pyx_t_5numpy_intp_t;__pyx_t_5numpy_intp_t991,35382 +typedef npy_uintp __pyx_t_5numpy_uintp_t;__pyx_t_5numpy_uintp_t1000,35662 +typedef npy_double __pyx_t_5numpy_float_t;__pyx_t_5numpy_float_t1009,35982 +typedef npy_double __pyx_t_5numpy_double_t;__pyx_t_5numpy_double_t1018,36272 +typedef npy_longdouble __pyx_t_5numpy_longdouble_t;__pyx_t_5numpy_longdouble_t1027,36596 + typedef ::std::complex< float > __pyx_t_float_complex;__pyx_t_float_complex1031,36714 + typedef float _Complex __pyx_t_float_complex;__pyx_t_float_complex1033,36781 + typedef struct { float real, imag; } __pyx_t_float_complex;real1036,36846 + typedef struct { float real, imag; } __pyx_t_float_complex;imag1036,36846 + typedef struct { float real, imag; } __pyx_t_float_complex;__pyx_t_float_complex1036,36846 + typedef ::std::complex< double > __pyx_t_double_complex;__pyx_t_double_complex1043,37075 + typedef double _Complex __pyx_t_double_complex;__pyx_t_double_complex1045,37144 + typedef struct { double real, imag; } __pyx_t_double_complex;real1048,37211 + typedef struct { double real, imag; } __pyx_t_double_complex;imag1048,37211 + typedef struct { double real, imag; } __pyx_t_double_complex;__pyx_t_double_complex1048,37211 +enum __pyx_t_6pyisda_4date_DCC {__pyx_t_6pyisda_4date_DCC1073,38034 + __pyx_e_6pyisda_4date_ACT_365 = 1L,__pyx_e_6pyisda_4date_ACT_3651074,38067 + __pyx_e_6pyisda_4date_ACT_365F = 2L,__pyx_e_6pyisda_4date_ACT_365F1075,38105 + __pyx_e_6pyisda_4date_ACT_360 = 3L__pyx_e_6pyisda_4date_ACT_3601076,38144 +typedef npy_cfloat __pyx_t_5numpy_cfloat_t;__pyx_t_5numpy_cfloat_t1086,38473 +typedef npy_cdouble __pyx_t_5numpy_cdouble_t;__pyx_t_5numpy_cdouble_t1095,38770 +typedef npy_clongdouble __pyx_t_5numpy_clongdouble_t;__pyx_t_5numpy_clongdouble_t1104,39103 +typedef npy_cdouble __pyx_t_5numpy_complex_t;__pyx_t_5numpy_complex_t1113,39421 +enum __pyx_t_6pyisda_5curve_Basis {__pyx_t_6pyisda_5curve_Basis1122,39750 + __pyx_e_6pyisda_5curve_CONTINUOUS = 0x1388,__pyx_e_6pyisda_5curve_CONTINUOUS1123,39786 + __pyx_e_6pyisda_5curve_DISCOUNT_RATE = 0x200,__pyx_e_6pyisda_5curve_DISCOUNT_RATE1124,39832 + __pyx_e_6pyisda_5curve_SIMPLE_BASIS = 0,__pyx_e_6pyisda_5curve_SIMPLE_BASIS1125,39880 + __pyx_e_6pyisda_5curve_ANNUAL_BASIS = 1,__pyx_e_6pyisda_5curve_ANNUAL_BASIS1126,39923 + __pyx_e_6pyisda_5curve_DISCOUNT_FACTOR = -2L__pyx_e_6pyisda_5curve_DISCOUNT_FACTOR1127,39966 +enum BadDay {BadDay1137,40186 + FOLLOW = ((long)'F'),FOLLOW1146,40405 + PREVIOUS = ((long)'P'),PREVIOUS1147,40429 + NONE = ((long)'N'),NONE1148,40455 + MODIFIED = ((long)'M')MODIFIED1149,40477 +struct __pyx_obj_6pyisda_4legs_ContingentLeg {__pyx_obj_6pyisda_4legs_ContingentLeg1159,40668 + TContingentLeg *_thisptr;_thisptr1161,40731 +struct __pyx_obj_6pyisda_4legs_FeeLeg {__pyx_obj_6pyisda_4legs_FeeLeg1171,40875 + TFeeLeg *_thisptr;_thisptr1173,40931 +struct __pyx_obj_6pyisda_5curve_Curve {__pyx_obj_6pyisda_5curve_Curve1184,41113 + std::shared_ptr<TCurve> _thisptr;_thisptr1186,41169 +struct __pyx_obj_6pyisda_5curve_YieldCurve {__pyx_obj_6pyisda_5curve_YieldCurve1197,41400 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base1198,41445 + TDate *_dates;_dates1199,41497 + size_t _ninstr;_ninstr1200,41514 +struct __pyx_obj_6pyisda_5curve_SpreadCurve {__pyx_obj_6pyisda_5curve_SpreadCurve1211,41677 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base1212,41723 +struct __pyx_obj_6pyisda_5curve___pyx_scope_struct____iter__ {__pyx_obj_6pyisda_5curve___pyx_scope_struct____iter__1223,41977 + size_t __pyx_v_i;__pyx_v_i1225,42056 + TRatePt *__pyx_v_it;__pyx_v_it1226,42076 + struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self;__pyx_v_self1227,42099 + int __pyx_t_0;__pyx_t_01228,42154 + size_t __pyx_t_1;__pyx_t_11229,42171 +struct __pyx_obj___Pyx_EnumMeta {__pyx_obj___Pyx_EnumMeta1240,42402 + PyHeapTypeObject __pyx_base;__pyx_base1241,42436 +struct __pyx_array_obj {__pyx_array_obj1252,42597 + struct __pyx_vtabstruct_array *__pyx_vtab;__pyx_vtab1254,42638 + char *data;data1255,42683 + Py_ssize_t len;len1256,42697 + char *format;format1257,42715 + int ndim;ndim1258,42731 + Py_ssize_t *_shape;_shape1259,42743 + Py_ssize_t *_strides;_strides1260,42765 + Py_ssize_t itemsize;itemsize1261,42789 + PyObject *mode;mode1262,42812 + PyObject *_format;_format1263,42830 + void (*callback_free_data)(void *);callback_free_data1264,42851 + int free_data;free_data1265,42889 + int dtype_is_object;dtype_is_object1266,42906 +struct __pyx_MemviewEnum_obj {__pyx_MemviewEnum_obj1277,43112 + PyObject *name;name1279,43159 +struct __pyx_memoryview_obj {__pyx_memoryview_obj1290,43335 + struct __pyx_vtabstruct_memoryview *__pyx_vtab;__pyx_vtab1292,43381 + PyObject *obj;obj1293,43431 + PyObject *_size;_size1294,43448 + PyObject *_array_interface;_array_interface1295,43467 + PyThread_type_lock lock;lock1296,43497 + __pyx_atomic_int acquisition_count[2];acquisition_count1297,43524 + __pyx_atomic_int *acquisition_count_aligned_p;acquisition_count_aligned_p1298,43565 + Py_buffer view;view1299,43614 + int flags;flags1300,43632 + int dtype_is_object;dtype_is_object1301,43645 + __Pyx_TypeInfo *typeinfo;typeinfo1302,43668 +struct __pyx_memoryviewslice_obj {__pyx_memoryviewslice_obj1313,43910 + struct __pyx_memoryview_obj __pyx_base;__pyx_base1314,43945 + __Pyx_memviewslice from_slice;from_slice1315,43987 + PyObject *from_object;from_object1316,44020 + PyObject *(*to_object_func)(char *);to_object_func1317,44045 + int (*to_dtype_func)(char *, PyObject *);to_dtype_func1318,44084 +struct __pyx_vtabstruct_array {__pyx_vtabstruct_array1331,44260 + PyObject *(*get_memview)(struct __pyx_array_obj *);get_memview1332,44292 +static struct __pyx_vtabstruct_array *__pyx_vtabptr_array;__pyx_vtabptr_array1334,44349 +struct __pyx_vtabstruct_memoryview {__pyx_vtabstruct_memoryview1345,44564 + char *(*get_item_pointer)(struct __pyx_memoryview_obj *, PyObject *);get_item_pointer1346,44601 + PyObject *(*is_slice)(struct __pyx_memoryview_obj *, PyObject *);is_slice1347,44673 + PyObject *(*setitem_slice_assignment)(struct __pyx_memoryview_obj *, PyObject *, PyObject *);setitem_slice_assignment1348,44741 + PyObject *(*setitem_slice_assign_scalar)(struct __pyx_memoryview_obj *, struct __pyx_memoryview_obj *, PyObject *);setitem_slice_assign_scalar1349,44837 + PyObject *(*setitem_indexed)(struct __pyx_memoryview_obj *, PyObject *, PyObject *);setitem_indexed1350,44955 + PyObject *(*convert_item_to_object)(struct __pyx_memoryview_obj *, char *);convert_item_to_object1351,45042 + PyObject *(*assign_item_from_object)(struct __pyx_memoryview_obj *, char *, PyObject *);assign_item_from_object1352,45120 +static struct __pyx_vtabstruct_memoryview *__pyx_vtabptr_memoryview;__pyx_vtabptr_memoryview1354,45214 +struct __pyx_vtabstruct__memoryviewslice {__pyx_vtabstruct__memoryviewslice1365,45495 + struct __pyx_vtabstruct_memoryview __pyx_base;__pyx_base1366,45538 +static struct __pyx_vtabstruct__memoryviewslice *__pyx_vtabptr__memoryviewslice;__pyx_vtabptr__memoryviewslice1368,45590 + #define CYTHON_REFNANNY CYTHON_REFNANNY1373,45759 + void (*INCREF)(void*, PyObject*, int);INCREF1377,45833 + void (*DECREF)(void*, PyObject*, int);DECREF1378,45876 + void (*GOTREF)(void*, PyObject*, int);GOTREF1379,45919 + void (*GIVEREF)(void*, PyObject*, int);GIVEREF1380,45962 + void* (*SetupContext)(const char*, int, const char*);SetupContext1381,46006 + void (*FinishContext)(void**);FinishContext1382,46064 + } __Pyx_RefNannyAPIStruct;__Pyx_RefNannyAPIStruct1383,46099 + static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;__Pyx_RefNanny1384,46128 + #define __Pyx_RefNannyDeclarations __Pyx_RefNannyDeclarations1386,46265 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext1388,46350 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext1397,46786 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext1400,46934 + #define __Pyx_INCREF(__Pyx_INCREF1402,47032 + #define __Pyx_DECREF(__Pyx_DECREF1403,47125 + #define __Pyx_GOTREF(__Pyx_GOTREF1404,47218 + #define __Pyx_GIVEREF(__Pyx_GIVEREF1405,47311 + #define __Pyx_XINCREF(__Pyx_XINCREF1406,47405 + #define __Pyx_XDECREF(__Pyx_XDECREF1407,47484 + #define __Pyx_XGOTREF(__Pyx_XGOTREF1408,47563 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF1409,47642 + #define __Pyx_RefNannyDeclarations__Pyx_RefNannyDeclarations1411,47727 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext1412,47764 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext1413,47820 + #define __Pyx_INCREF(__Pyx_INCREF1414,47860 + #define __Pyx_DECREF(__Pyx_DECREF1415,47899 + #define __Pyx_GOTREF(__Pyx_GOTREF1416,47938 + #define __Pyx_GIVEREF(__Pyx_GIVEREF1417,47964 + #define __Pyx_XINCREF(__Pyx_XINCREF1418,47991 + #define __Pyx_XDECREF(__Pyx_XDECREF1419,48032 + #define __Pyx_XGOTREF(__Pyx_XGOTREF1420,48073 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF1421,48100 +#define __Pyx_XDECREF_SET(__Pyx_XDECREF_SET1423,48135 +#define __Pyx_DECREF_SET(__Pyx_DECREF_SET1427,48266 +#define __Pyx_CLEAR(__Pyx_CLEAR1431,48395 +#define __Pyx_XCLEAR(__Pyx_XCLEAR1432,48499 +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {__Pyx_PyObject_GetAttrStr1436,48679 +#define __Pyx_PyObject_GetAttrStr(__Pyx_PyObject_GetAttrStr1447,49076 +#define __Pyx_PyCFunction_FastCall(__Pyx_PyCFunction_FastCall1472,49927 +#define __Pyx_PyFunction_FastCall(__Pyx_PyFunction_FastCall1477,50062 +#define __Pyx_PyFunction_FastCallDict(__Pyx_PyFunction_FastCallDict1482,50334 +#define __Pyx_PyObject_Call(__Pyx_PyObject_Call1490,50626 +#define __Pyx_BufPtrStrided1d(__Pyx_BufPtrStrided1d1513,51625 +#define __Pyx_PyThreadState_declare __Pyx_PyThreadState_declare1516,51761 +#define __Pyx_PyThreadState_assign __Pyx_PyThreadState_assign1517,51827 +#define __Pyx_PyThreadState_declare__Pyx_PyThreadState_declare1519,51905 +#define __Pyx_PyThreadState_assign__Pyx_PyThreadState_assign1520,51941 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState1525,52043 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState1526,52157 +#define __Pyx_ErrRestore(__Pyx_ErrRestore1527,52269 +#define __Pyx_ErrFetch(__Pyx_ErrFetch1528,52367 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState1532,52712 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState1533,52795 +#define __Pyx_ErrRestore(__Pyx_ErrRestore1534,52874 +#define __Pyx_ErrFetch(__Pyx_ErrFetch1535,52948 +static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {__Pyx_PyList_Append1555,53725 +#define __Pyx_PyList_Append(__Pyx_PyList_Append1567,54114 +#define __Pyx_GetItemInt(__Pyx_GetItemInt1575,54352 +#define __Pyx_GetItemInt_List(__Pyx_GetItemInt_List1580,54736 +#define __Pyx_GetItemInt_Tuple(__Pyx_GetItemInt_Tuple1586,55229 +#define __Pyx_PyString_Equals __Pyx_PyString_Equals1607,56314 +#define __Pyx_PyString_Equals __Pyx_PyString_Equals1609,56373 +#define __Pyx_BUF_MAX_NDIMS __Pyx_BUF_MAX_NDIMS1616,56542 +#define __Pyx_MEMVIEW_DIRECT __Pyx_MEMVIEW_DIRECT1617,56588 +#define __Pyx_MEMVIEW_PTR __Pyx_MEMVIEW_PTR1618,56621 +#define __Pyx_MEMVIEW_FULL __Pyx_MEMVIEW_FULL1619,56654 +#define __Pyx_MEMVIEW_CONTIG __Pyx_MEMVIEW_CONTIG1620,56687 +#define __Pyx_MEMVIEW_STRIDED __Pyx_MEMVIEW_STRIDED1621,56720 +#define __Pyx_MEMVIEW_FOLLOW __Pyx_MEMVIEW_FOLLOW1622,56754 +#define __Pyx_IS_C_CONTIG __Pyx_IS_C_CONTIG1623,56788 +#define __Pyx_IS_F_CONTIG __Pyx_IS_F_CONTIG1624,56816 +#define __pyx_get_slice_count_pointer(__pyx_get_slice_count_pointer1634,57313 +#define __pyx_get_slice_count(__pyx_get_slice_count1635,57399 +#define __PYX_INC_MEMVIEW(__PYX_INC_MEMVIEW1636,57480 +#define __PYX_XDEC_MEMVIEW(__PYX_XDEC_MEMVIEW1637,57568 +#define __Pyx_PyObject_CallNoArg(__Pyx_PyObject_CallNoArg1645,57955 +#define __Pyx_tp_new(__Pyx_tp_new1655,58339 +static CYTHON_INLINE PyObject* __Pyx_tp_new_kwargs(PyObject* type_obj, PyObject* args, PyObject* kwargs) {__Pyx_tp_new_kwargs1656,58418 +static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) {__Pyx_ListComp_Append1662,58715 +#define __Pyx_ListComp_Append(__Pyx_ListComp_Append1674,59070 +#define __Pyx_PyInt_AddObjC(__Pyx_PyInt_AddObjC1681,59285 +static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {__Pyx_PyDict_GetItem1687,59499 + #define __Pyx_PyDict_GetItem(__Pyx_PyDict_GetItem1703,59945 +#define __Pyx_ExceptionSave(__Pyx_ExceptionSave1711,60176 +#define __Pyx_ExceptionReset(__Pyx_ExceptionReset1713,60395 +#define __Pyx_ExceptionSave(__Pyx_ExceptionSave1716,60620 +#define __Pyx_ExceptionReset(__Pyx_ExceptionReset1717,60701 +#define __Pyx_PyErr_ExceptionMatches(__Pyx_PyErr_ExceptionMatches1722,60853 +#define __Pyx_PyErr_ExceptionMatches(__Pyx_PyErr_ExceptionMatches1725,61056 +#define __Pyx_GetException(__Pyx_GetException1730,61189 +#define __Pyx_PyObject_DelAttrStr(__Pyx_PyObject_DelAttrStr1738,61542 +static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) {__Pyx_PyObject_SetAttrStr1739,61617 +#define __Pyx_PyObject_DelAttrStr(__Pyx_PyObject_DelAttrStr1750,62046 +#define __Pyx_PyObject_SetAttrStr(__Pyx_PyObject_SetAttrStr1751,62109 +#define UNARY_NEG_WOULD_OVERFLOW(UNARY_NEG_WOULD_OVERFLOW1758,62308 +#define __Pyx_ExceptionSwap(__Pyx_ExceptionSwap1774,63050 +static CYTHON_INLINE int __Pyx_PyList_Extend(PyObject* L, PyObject* v) {__Pyx_PyList_Extend1785,63633 + #define __PYX_FORCE_INIT_THREADS __PYX_FORCE_INIT_THREADS1802,64114 +#define __Pyx_CyFunction_USED __Pyx_CyFunction_USED1833,65092 +#define __Pyx_CYFUNCTION_STATICMETHOD __Pyx_CYFUNCTION_STATICMETHOD1835,65150 +#define __Pyx_CYFUNCTION_CLASSMETHOD __Pyx_CYFUNCTION_CLASSMETHOD1836,65194 +#define __Pyx_CYFUNCTION_CCLASS __Pyx_CYFUNCTION_CCLASS1837,65238 +#define __Pyx_CyFunction_GetClosure(__Pyx_CyFunction_GetClosure1838,65282 +#define __Pyx_CyFunction_GetClassObj(__Pyx_CyFunction_GetClassObj1840,65375 +#define __Pyx_CyFunction_Defaults(__Pyx_CyFunction_Defaults1842,65470 +#define __Pyx_CyFunction_SetDefaultsGetter(__Pyx_CyFunction_SetDefaultsGetter1844,65573 + PyCFunctionObject func;func1847,65700 + PyObject *func_weakreflist;func_weakreflist1849,65760 + PyObject *func_dict;func_dict1851,65799 + PyObject *func_name;func_name1852,65824 + PyObject *func_qualname;func_qualname1853,65849 + PyObject *func_doc;func_doc1854,65878 + PyObject *func_globals;func_globals1855,65902 + PyObject *func_code;func_code1856,65930 + PyObject *func_closure;func_closure1857,65955 + PyObject *func_classobj;func_classobj1858,65983 + void *defaults;defaults1859,66012 + int defaults_pyobjects;defaults_pyobjects1860,66032 + int flags;flags1861,66060 + PyObject *defaults_tuple;defaults_tuple1862,66075 + PyObject *defaults_kwdict;defaults_kwdict1863,66105 + PyObject *(*defaults_getter)(PyObject *);defaults_getter1864,66136 + PyObject *func_annotations;func_annotations1865,66182 +} __pyx_CyFunctionObject;__pyx_CyFunctionObject1866,66214 +static PyTypeObject *__pyx_CyFunctionType = 0;__pyx_CyFunctionType1867,66240 +#define __Pyx_CyFunction_NewEx(__Pyx_CyFunction_NewEx1868,66287 + PyCodeObject* code_object;code_object1897,68055 + int code_line;code_line1898,68086 +} __Pyx_CodeObjectCacheEntry;__Pyx_CodeObjectCacheEntry1899,68105 +struct __Pyx_CodeObjectCache {__Pyx_CodeObjectCache1900,68135 + int count;count1901,68166 + int max_count;max_count1902,68181 + __Pyx_CodeObjectCacheEntry* entries;entries1903,68200 +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};__pyx_code_cache1905,68244 + #define __Pyx_GetBuffer __Pyx_GetBuffer1921,68904 + #define __Pyx_ReleaseBuffer __Pyx_ReleaseBuffer1922,68951 + Py_ssize_t shape, strides, suboffsets;shape1928,69058 + Py_ssize_t shape, strides, suboffsets;strides1928,69058 + Py_ssize_t shape, strides, suboffsets;suboffsets1928,69058 +} __Pyx_Buf_DimInfo;__Pyx_Buf_DimInfo1929,69099 + size_t refcount;refcount1931,69137 + Py_buffer pybuffer;pybuffer1932,69156 +} __Pyx_Buffer;__Pyx_Buffer1933,69178 + __Pyx_Buffer *rcbuffer;rcbuffer1935,69211 + char *data;data1936,69237 + __Pyx_Buf_DimInfo diminfo[8];diminfo1937,69251 +} __Pyx_LocalBuf_ND;__Pyx_LocalBuf_ND1938,69283 +static Py_ssize_t __Pyx_zeros[] = {0, 0, 0, 0, 0, 0, 0, 0};__Pyx_zeros1941,69322 +static Py_ssize_t __Pyx_minusones[] = {-1, -1, -1, -1, -1, -1, -1, -1};__Pyx_minusones1942,69382 +static void __Pyx_CppExn2PyErr() {__Pyx_CppExn2PyErr1994,71178 + #define __Pyx_CREAL(__Pyx_CREAL2033,72552 + #define __Pyx_CIMAG(__Pyx_CIMAG2034,72592 + #define __Pyx_CREAL(__Pyx_CREAL2036,72640 + #define __Pyx_CIMAG(__Pyx_CIMAG2037,72681 + #define __Pyx_CREAL(__Pyx_CREAL2040,72737 + #define __Pyx_CIMAG(__Pyx_CIMAG2041,72775 + #define __Pyx_SET_CREAL(__Pyx_SET_CREAL2045,73024 + #define __Pyx_SET_CIMAG(__Pyx_SET_CIMAG2046,73071 + #define __Pyx_SET_CREAL(__Pyx_SET_CREAL2048,73124 + #define __Pyx_SET_CIMAG(__Pyx_SET_CIMAG2049,73178 + #define __Pyx_c_eq_float(__Pyx_c_eq_float2054,73283 + #define __Pyx_c_sum_float(__Pyx_c_sum_float2055,73331 + #define __Pyx_c_diff_float(__Pyx_c_diff_float2056,73378 + #define __Pyx_c_prod_float(__Pyx_c_prod_float2057,73425 + #define __Pyx_c_quot_float(__Pyx_c_quot_float2058,73472 + #define __Pyx_c_neg_float(__Pyx_c_neg_float2059,73519 + #define __Pyx_c_is_zero_float(__Pyx_c_is_zero_float2061,73584 + #define __Pyx_c_conj_float(__Pyx_c_conj_float2062,73637 + #define __Pyx_c_abs_float(__Pyx_c_abs_float2064,73701 + #define __Pyx_c_pow_float(__Pyx_c_pow_float2065,73758 + #define __Pyx_c_is_zero_float(__Pyx_c_is_zero_float2068,73837 + #define __Pyx_c_conj_float(__Pyx_c_conj_float2069,73883 + #define __Pyx_c_abs_float(__Pyx_c_abs_float2071,73941 + #define __Pyx_c_pow_float(__Pyx_c_pow_float2072,73993 + #define __Pyx_c_eq_double(__Pyx_c_eq_double2092,75136 + #define __Pyx_c_sum_double(__Pyx_c_sum_double2093,75185 + #define __Pyx_c_diff_double(__Pyx_c_diff_double2094,75233 + #define __Pyx_c_prod_double(__Pyx_c_prod_double2095,75281 + #define __Pyx_c_quot_double(__Pyx_c_quot_double2096,75329 + #define __Pyx_c_neg_double(__Pyx_c_neg_double2097,75377 + #define __Pyx_c_is_zero_double(__Pyx_c_is_zero_double2099,75443 + #define __Pyx_c_conj_double(__Pyx_c_conj_double2100,75498 + #define __Pyx_c_abs_double(__Pyx_c_abs_double2102,75563 + #define __Pyx_c_pow_double(__Pyx_c_pow_double2103,75621 + #define __Pyx_c_is_zero_double(__Pyx_c_is_zero_double2106,75701 + #define __Pyx_c_conj_double(__Pyx_c_conj_double2107,75748 + #define __Pyx_c_abs_double(__Pyx_c_abs_double2109,75806 + #define __Pyx_c_pow_double(__Pyx_c_pow_double2110,75858 +typedef PyObject *(*__pyx_coroutine_body_t)(PyObject *, PyObject *);__pyx_coroutine_body_t2166,78340 + __pyx_coroutine_body_t body;body2169,78444 + PyObject *closure;closure2170,78477 + PyObject *exc_type;exc_type2171,78500 + PyObject *exc_value;exc_value2172,78524 + PyObject *exc_traceback;exc_traceback2173,78549 + PyObject *gi_weakreflist;gi_weakreflist2174,78578 + PyObject *classobj;classobj2175,78608 + PyObject *yieldfrom;yieldfrom2176,78632 + PyObject *gi_name;gi_name2177,78657 + PyObject *gi_qualname;gi_qualname2178,78680 + PyObject *gi_modulename;gi_modulename2179,78707 + int resume_label;resume_label2180,78736 + char is_running;is_running2181,78758 +} __pyx_CoroutineObject;__pyx_CoroutineObject2182,78779 +#define __Pyx_PyGen_FetchStopIterationValue(__Pyx_PyGen_FetchStopIterationValue2190,79152 +#define __Pyx_Generator_USED__Pyx_Generator_USED2200,79461 +static PyTypeObject *__pyx_GeneratorType = 0;__pyx_GeneratorType2201,79490 +#define __Pyx_Generator_CheckExact(__Pyx_Generator_CheckExact2202,79536 +#define __Pyx_Generator_New(__Pyx_Generator_New2203,79614 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString2217,80166 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString2219,80238 +static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0;__pyx_ptype_7cpython_4type_type2251,82339 +static PyTypeObject *__pyx_ptype_7cpython_4bool_bool = 0;__pyx_ptype_7cpython_4bool_bool2284,83159 +static PyTypeObject *__pyx_ptype_7cpython_7complex_complex = 0;__pyx_ptype_7cpython_7complex_complex2293,83408 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_date = 0;__pyx_ptype_7cpython_8datetime_date2332,84403 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_time = 0;__pyx_ptype_7cpython_8datetime_time2333,84465 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_datetime = 0;__pyx_ptype_7cpython_8datetime_datetime2334,84527 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_timedelta = 0;__pyx_ptype_7cpython_8datetime_timedelta2335,84593 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_tzinfo = 0;__pyx_ptype_7cpython_8datetime_tzinfo2336,84660 +static long (*__pyx_f_6pyisda_4date_dcc)(PyObject *); /*proto*/__pyx_f_6pyisda_4date_dcc2339,84770 +static __pyx_t_6pyisda_4date_TDate (*__pyx_f_6pyisda_4date_pydate_to_TDate)(PyDateTime_Date *); /*proto*/__pyx_f_6pyisda_4date_pydate_to_TDate2340,84834 +static PyDateTime_Date *(*__pyx_f_6pyisda_4date_TDate_to_pydate)(__pyx_t_6pyisda_4date_TDate, int __pyx_skip_dispatch); /*proto*/__pyx_f_6pyisda_4date_TDate_to_pydate2341,84940 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_ContingentLeg = 0;__pyx_ptype_6pyisda_4legs_ContingentLeg2346,85164 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_FeeLeg = 0;__pyx_ptype_6pyisda_4legs_FeeLeg2347,85230 +static PyTypeObject *__pyx_ptype_5numpy_dtype = 0;__pyx_ptype_5numpy_dtype2364,85635 +static PyTypeObject *__pyx_ptype_5numpy_flatiter = 0;__pyx_ptype_5numpy_flatiter2365,85686 +static PyTypeObject *__pyx_ptype_5numpy_broadcast = 0;__pyx_ptype_5numpy_broadcast2366,85740 +static PyTypeObject *__pyx_ptype_5numpy_ndarray = 0;__pyx_ptype_5numpy_ndarray2367,85795 +static PyTypeObject *__pyx_ptype_5numpy_ufunc = 0;__pyx_ptype_5numpy_ufunc2368,85848 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_Curve = 0;__pyx_ptype_6pyisda_5curve_Curve2373,86127 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_YieldCurve = 0;__pyx_ptype_6pyisda_5curve_YieldCurve2374,86186 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_SpreadCurve = 0;__pyx_ptype_6pyisda_5curve_SpreadCurve2375,86250 +static PyTypeObject *__pyx_ptype_6pyisda_5curve___pyx_scope_struct____iter__ = 0;__pyx_ptype_6pyisda_5curve___pyx_scope_struct____iter__2376,86315 +static PyTypeObject *__pyx_ptype___Pyx_EnumMeta = 0;__pyx_ptype___Pyx_EnumMeta2377,86397 +static PyTypeObject *__pyx_array_type = 0;__pyx_array_type2378,86450 +static PyTypeObject *__pyx_MemviewEnum_type = 0;__pyx_MemviewEnum_type2379,86493 +static PyTypeObject *__pyx_memoryview_type = 0;__pyx_memoryview_type2380,86542 +static PyTypeObject *__pyx_memoryviewslice_type = 0;__pyx_memoryviewslice_type2381,86590 +static int __pyx_v_6pyisda_5curve_SUCCESS;__pyx_v_6pyisda_5curve_SUCCESS2382,86643 +static PyObject *__Pyx_OrderedDict = 0;__Pyx_OrderedDict2383,86686 +static PyObject *__Pyx_EnumBase = 0;__Pyx_EnumBase2384,86726 +static PyObject *generic = 0;generic2385,86763 +static PyObject *strided = 0;strided2386,86793 +static PyObject *indirect = 0;indirect2387,86823 +static PyObject *contiguous = 0;contiguous2388,86854 +static PyObject *indirect_contiguous = 0;indirect_contiguous2389,86887 +static int __pyx_memoryview_thread_locks_used;__pyx_memoryview_thread_locks_used2390,86929 +static PyThread_type_lock __pyx_memoryview_thread_locks[8];__pyx_memoryview_thread_locks2391,86976 +static PyObject *__Pyx_globals = 0;__Pyx_globals2392,87036 +static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t = { "float64_t", NULL, sizeof(__pyx_t_5numpy_float64_t), { 0 }, 0, 'R', 0, 0 };__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t2428,90551 +static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t = { "int64_t", NULL, sizeof(__pyx_t_5numpy_int64_t), { 0 }, 0, IS_UNSIGNED(__pyx_t_5numpy_int64_t) ? 'U' : 'I', IS_UNSIGNED(__pyx_t_5numpy_int64_t), 0 };__Pyx_TypeInfo_nn___pyx_t_5numpy_int64_t2429,90696 +static __Pyx_TypeInfo __Pyx_TypeInfo_double = { "double", NULL, sizeof(double), { 0 }, 0, 'R', 0, 0 };__Pyx_TypeInfo_double2430,90913 +static __Pyx_TypeInfo __Pyx_TypeInfo_int = { "bint", NULL, sizeof(int), { 0 }, 0, IS_UNSIGNED(int) ? 'U' : 'I', IS_UNSIGNED(int), 0 };__Pyx_TypeInfo_int2431,91016 +#define __Pyx_MODULE_NAME __Pyx_MODULE_NAME2432,91151 +int __pyx_module_is_main_pyisda__curve = 0;__pyx_module_is_main_pyisda__curve2433,91192 +static PyObject *__pyx_builtin_range;__pyx_builtin_range2436,91276 +static PyObject *__pyx_builtin_ValueError;__pyx_builtin_ValueError2437,91314 +static PyObject *__pyx_builtin_enumerate;__pyx_builtin_enumerate2438,91357 +static PyObject *__pyx_builtin_super;__pyx_builtin_super2439,91399 +static PyObject *__pyx_builtin_RuntimeError;__pyx_builtin_RuntimeError2440,91437 +static PyObject *__pyx_builtin_ImportError;__pyx_builtin_ImportError2441,91482 +static PyObject *__pyx_builtin_MemoryError;__pyx_builtin_MemoryError2442,91526 +static PyObject *__pyx_builtin_Ellipsis;__pyx_builtin_Ellipsis2443,91570 +static PyObject *__pyx_builtin_TypeError;__pyx_builtin_TypeError2444,91611 +static PyObject *__pyx_builtin_id;__pyx_builtin_id2445,91653 +static PyObject *__pyx_builtin_IndexError;__pyx_builtin_IndexError2446,91688 +static const char __pyx_k_M[] = "M";__pyx_k_M2447,91731 +static const char __pyx_k_O[] = "O";__pyx_k_O2448,91768 +static const char __pyx_k_c[] = "c";__pyx_k_c2449,91805 +static const char __pyx_k_v[] = "v";__pyx_k_v2450,91842 +static const char __pyx_k_d1[] = "d1";__pyx_k_d12451,91879 +static const char __pyx_k_d2[] = "d2";__pyx_k_d22452,91918 +static const char __pyx_k_id[] = "id";__pyx_k_id2453,91957 +static const char __pyx_k_np[] = "np";__pyx_k_np2454,91996 +static const char __pyx_k_yc[] = "yc";__pyx_k_yc2455,92035 +static const char __pyx_k_cls[] = "cls";__pyx_k_cls2456,92074 +static const char __pyx_k_dct[] = "dct";__pyx_k_dct2457,92115 +static const char __pyx_k_dfs[] = "dfs";__pyx_k_dfs2458,92156 +static const char __pyx_k_doc[] = "__doc__";__pyx_k_doc2459,92197 +static const char __pyx_k_new[] = "__new__";__pyx_k_new2460,92242 +static const char __pyx_k_obj[] = "obj";__pyx_k_obj2461,92287 +static const char __pyx_k_res[] = "res";__pyx_k_res2462,92328 +static const char __pyx_k_s_s[] = "%s.%s";__pyx_k_s_s2463,92369 +static const char __pyx_k_str[] = "__str__";__pyx_k_str2464,92412 +static const char __pyx_k_M8_D[] = "M8[D]";__pyx_k_M8_D2465,92457 +static const char __pyx_k_NONE[] = "NONE";__pyx_k_NONE2466,92501 +static const char __pyx_k_args[] = "args";__pyx_k_args2467,92544 +static const char __pyx_k_base[] = "base";__pyx_k_base2468,92587 +static const char __pyx_k_data[] = "data";__pyx_k_data2469,92630 +static const char __pyx_k_date[] = "date";__pyx_k_date2470,92673 +static const char __pyx_k_enum[] = "enum";__pyx_k_enum2471,92716 +static const char __pyx_k_init[] = "__init__";__pyx_k_init2472,92759 +static const char __pyx_k_iter[] = "__iter__";__pyx_k_iter2473,92806 +static const char __pyx_k_main[] = "__main__";__pyx_k_main2474,92853 +static const char __pyx_k_mask[] = "mask";__pyx_k_mask2475,92900 +static const char __pyx_k_mode[] = "mode";__pyx_k_mode2476,92943 +static const char __pyx_k_name[] = "name";__pyx_k_name2477,92986 +static const char __pyx_k_ndim[] = "ndim";__pyx_k_ndim2478,93029 +static const char __pyx_k_pack[] = "pack";__pyx_k_pack2479,93072 +static const char __pyx_k_rate[] = "rate";__pyx_k_rate2480,93115 +static const char __pyx_k_repr[] = "__repr__";__pyx_k_repr2481,93158 +static const char __pyx_k_self[] = "self";__pyx_k_self2482,93205 +static const char __pyx_k_send[] = "send";__pyx_k_send2483,93248 +static const char __pyx_k_size[] = "size";__pyx_k_size2484,93291 +static const char __pyx_k_step[] = "step";__pyx_k_step2485,93334 +static const char __pyx_k_stop[] = "stop";__pyx_k_stop2486,93377 +static const char __pyx_k_test[] = "__test__";__pyx_k_test2487,93420 +static const char __pyx_k_view[] = "view";__pyx_k_view2488,93467 +static const char __pyx_k_ASCII[] = "ASCII";__pyx_k_ASCII2489,93510 +static const char __pyx_k_basis[] = "basis";__pyx_k_basis2490,93555 +static const char __pyx_k_class[] = "__class__";__pyx_k_class2491,93600 +static const char __pyx_k_close[] = "close";__pyx_k_close2492,93649 +static const char __pyx_k_dates[] = "dates";__pyx_k_dates2493,93694 +static const char __pyx_k_error[] = "error";__pyx_k_error2494,93739 +static const char __pyx_k_flags[] = "flags";__pyx_k_flags2495,93784 +static const char __pyx_k_numpy[] = "numpy";__pyx_k_numpy2496,93829 +static const char __pyx_k_range[] = "range";__pyx_k_range2497,93874 +static const char __pyx_k_rates[] = "rates";__pyx_k_rates2498,93919 +static const char __pyx_k_s_s_d[] = "<%s.%s: %d>";__pyx_k_s_s_d2499,93964 +static const char __pyx_k_shape[] = "shape";__pyx_k_shape2500,94015 +static const char __pyx_k_start[] = "start";__pyx_k_start2501,94060 +static const char __pyx_k_super[] = "super";__pyx_k_super2502,94105 +static const char __pyx_k_throw[] = "throw";__pyx_k_throw2503,94150 +static const char __pyx_k_today[] = "today";__pyx_k_today2504,94195 +static const char __pyx_k_types[] = "types";__pyx_k_types2505,94240 +static const char __pyx_k_utf_8[] = "utf-8";__pyx_k_utf_82506,94285 +static const char __pyx_k_value[] = "value";__pyx_k_value2507,94330 +static const char __pyx_k_BadDay[] = "BadDay";__pyx_k_BadDay2508,94375 +static const char __pyx_k_FOLLOW[] = "FOLLOW";__pyx_k_FOLLOW2509,94422 +static const char __pyx_k_encode[] = "encode";__pyx_k_encode2510,94469 +static const char __pyx_k_format[] = "format";__pyx_k_format2511,94516 +static const char __pyx_k_import[] = "__import__";__pyx_k_import2512,94563 +static const char __pyx_k_mm_dcc[] = "mm_dcc";__pyx_k_mm_dcc2513,94614 +static const char __pyx_k_module[] = "__module__";__pyx_k_module2514,94661 +static const char __pyx_k_name_2[] = "__name__";__pyx_k_name_22515,94712 +static const char __pyx_k_struct[] = "struct";__pyx_k_struct2516,94761 +static const char __pyx_k_unpack[] = "unpack";__pyx_k_unpack2517,94808 +static const char __pyx_k_values[] = "values";__pyx_k_values2518,94855 +static const char __pyx_k_IntEnum[] = "IntEnum";__pyx_k_IntEnum2519,94902 +static const char __pyx_k_epsilon[] = "epsilon";__pyx_k_epsilon2520,94951 +static const char __pyx_k_fortran[] = "fortran";__pyx_k_fortran2521,95000 +static const char __pyx_k_inplace[] = "inplace";__pyx_k_inplace2522,95049 +static const char __pyx_k_members[] = "__members__";__pyx_k_members2523,95098 +static const char __pyx_k_memview[] = "memview";__pyx_k_memview2524,95151 +static const char __pyx_k_parents[] = "parents";__pyx_k_parents2525,95200 +static const char __pyx_k_periods[] = "periods";__pyx_k_periods2526,95249 +static const char __pyx_k_prepare[] = "__prepare__";__pyx_k_prepare2527,95298 +static const char __pyx_k_Ellipsis[] = "Ellipsis";__pyx_k_Ellipsis2528,95351 +static const char __pyx_k_EnumBase[] = "EnumBase";__pyx_k_EnumBase2529,95402 +static const char __pyx_k_EnumType[] = "EnumType";__pyx_k_EnumType2530,95453 +static const char __pyx_k_MODIFIED[] = "MODIFIED";__pyx_k_MODIFIED2531,95504 +static const char __pyx_k_PREVIOUS[] = "PREVIOUS";__pyx_k_PREVIOUS2532,95555 +static const char __pyx_k_getstate[] = "__getstate__";__pyx_k_getstate2533,95606 +static const char __pyx_k_itemsize[] = "itemsize";__pyx_k_itemsize2534,95661 +static const char __pyx_k_qualname[] = "__qualname__";__pyx_k_qualname2535,95712 +static const char __pyx_k_setstate[] = "__setstate__";__pyx_k_setstate2536,95767 +static const char __pyx_k_TypeError[] = "TypeError";__pyx_k_TypeError2537,95822 +static const char __pyx_k_base_date[] = "base_date";__pyx_k_base_date2538,95875 +static const char __pyx_k_end_dates[] = "end_dates";__pyx_k_end_dates2539,95928 +static const char __pyx_k_enumerate[] = "enumerate";__pyx_k_enumerate2540,95981 +static const char __pyx_k_metaclass[] = "__metaclass__";__pyx_k_metaclass2541,96034 +static const char __pyx_k_IndexError[] = "IndexError";__pyx_k_IndexError2542,96091 +static const char __pyx_k_ValueError[] = "ValueError";__pyx_k_ValueError2543,96146 +static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__";__pyx_k_pyx_vtable2544,96201 +static const char __pyx_k_start_date[] = "start_date";__pyx_k_start_date2545,96260 +static const char __pyx_k_Actual_365F[] = "Actual/365F";__pyx_k_Actual_365F2546,96315 +static const char __pyx_k_ImportError[] = "ImportError";__pyx_k_ImportError2547,96372 +static const char __pyx_k_MemoryError[] = "MemoryError";__pyx_k_MemoryError2548,96429 +static const char __pyx_k_OrderedDict[] = "OrderedDict";__pyx_k_OrderedDict2549,96486 +static const char __pyx_k_collections[] = "collections";__pyx_k_collections2550,96543 +static const char __pyx_k_Curve___iter[] = "Curve.__iter__";__pyx_k_Curve___iter2551,96600 +static const char __pyx_k_Pyx_EnumBase[] = "__Pyx_EnumBase";__pyx_k_Pyx_EnumBase2552,96661 +static const char __pyx_k_RuntimeError[] = "RuntimeError";__pyx_k_RuntimeError2553,96722 +static const char __pyx_k_bad_day_conv[] = "bad_day_conv";__pyx_k_bad_day_conv2554,96781 +static const char __pyx_k_coupon_rates[] = "coupon_rates";__pyx_k_coupon_rates2555,96840 +static const char __pyx_k_dcc_tostring[] = "dcc_tostring";__pyx_k_dcc_tostring2556,96899 +static const char __pyx_k_hazard_rates[] = "hazard_rates";__pyx_k_hazard_rates2557,96958 +static const char __pyx_k_pyisda_curve[] = "pyisda.curve";__pyx_k_pyisda_curve2558,97017 +static const char __pyx_k_step_in_date[] = "step_in_date";__pyx_k_step_in_date2559,97076 +static const char __pyx_k_stringsource[] = "stringsource";__pyx_k_stringsource2560,97135 +static const char __pyx_k_pyx_getbuffer[] = "__pyx_getbuffer";__pyx_k_pyx_getbuffer2561,97194 +static const char __pyx_k_upfront_rates[] = "upfront_rates";__pyx_k_upfront_rates2562,97257 +static const char __pyx_k_curve_is_empty[] = "curve is empty";__pyx_k_curve_is_empty2563,97318 +static const char __pyx_k_day_count_conv[] = "day_count_conv";__pyx_k_day_count_conv2564,97381 +static const char __pyx_k_fixed_swap_dcc[] = "fixed_swap_dcc";__pyx_k_fixed_swap_dcc2565,97444 +static const char __pyx_k_float_swap_dcc[] = "float_swap_dcc";__pyx_k_float_swap_dcc2566,97507 +static const char __pyx_k_multiplicative[] = "multiplicative";__pyx_k_multiplicative2567,97570 +static const char __pyx_k_recovery_rates[] = "recovery_rates";__pyx_k_recovery_rates2568,97633 +static const char __pyx_k_allocate_buffer[] = "allocate_buffer";__pyx_k_allocate_buffer2569,97696 +static const char __pyx_k_discount_factor[] = "discount_factor";__pyx_k_discount_factor2570,97761 +static const char __pyx_k_dtype_is_object[] = "dtype_is_object";__pyx_k_dtype_is_object2571,97826 +static const char __pyx_k_Invalid_interval[] = "Invalid interval";__pyx_k_Invalid_interval2572,97891 +static const char __pyx_k_cash_settle_date[] = "cash_settle_date";__pyx_k_cash_settle_date2573,97958 +static const char __pyx_k_from_flat_hazard[] = "from_flat_hazard";__pyx_k_from_flat_hazard2574,98025 +static const char __pyx_k_fixed_swap_period[] = "fixed_swap_period";__pyx_k_fixed_swap_period2575,98092 +static const char __pyx_k_float_swap_period[] = "float_swap_period";__pyx_k_float_swap_period2576,98161 +static const char __pyx_k_Pyx_EnumBase___new[] = "__Pyx_EnumBase.__new__";__pyx_k_Pyx_EnumBase___new2577,98230 +static const char __pyx_k_Pyx_EnumBase___str[] = "__Pyx_EnumBase.__str__";__pyx_k_Pyx_EnumBase___str2578,98305 +static const char __pyx_k_can_t_convert_stub[] = "can't convert stub";__pyx_k_can_t_convert_stub2579,98380 +static const char __pyx_k_forward_zero_price[] = "__forward_zero_price";__pyx_k_forward_zero_price2580,98451 +static const char __pyx_k_strided_and_direct[] = "<strided and direct>";__pyx_k_strided_and_direct2581,98524 +static const char __pyx_k_Pyx_EnumBase___repr[] = "__Pyx_EnumBase.__repr__";__pyx_k_Pyx_EnumBase___repr2582,98597 +static const char __pyx_k_Unknown_enum_value_s[] = "Unknown enum value: '%s'";__pyx_k_Unknown_enum_value_s2583,98674 +static const char __pyx_k_day_count_convention[] = "day_count_convention";__pyx_k_day_count_convention2584,98753 +static const char __pyx_k_strided_and_indirect[] = "<strided and indirect>";__pyx_k_strided_and_indirect2585,98828 +static const char __pyx_k_survival_probability[] = "survival_probability";__pyx_k_survival_probability2586,98905 +static const char __pyx_k_contiguous_and_direct[] = "<contiguous and direct>";__pyx_k_contiguous_and_direct2587,98980 +static const char __pyx_k_from_discount_factors[] = "from_discount_factors";__pyx_k_from_discount_factors2588,99059 +static const char __pyx_k_MemoryView_of_r_object[] = "<MemoryView of %r object>";__pyx_k_MemoryView_of_r_object2589,99136 +static const char __pyx_k_pay_accrued_on_default[] = "pay_accrued_on_default";__pyx_k_pay_accrued_on_default2590,99218 +static const char __pyx_k_MemoryView_of_r_at_0x_x[] = "<MemoryView of %r at 0x%x>";__pyx_k_MemoryView_of_r_at_0x_x2591,99297 +static const char __pyx_k_contiguous_and_indirect[] = "<contiguous and indirect>";__pyx_k_contiguous_and_indirect2592,99381 +static const char __pyx_k_Cannot_index_with_type_s[] = "Cannot index with type '%s'";__pyx_k_Cannot_index_with_type_s2593,99464 +static const char __pyx_k_can_t_compute_par_spread[] = "can't compute par spread";__pyx_k_can_t_compute_par_spread2594,99550 +static const char __pyx_k_Invalid_shape_in_axis_d_d[] = "Invalid shape in axis %d: %d.";__pyx_k_Invalid_shape_in_axis_d_d2595,99633 +static const char __pyx_k_itemsize_0_for_cython_array[] = "itemsize <= 0 for cython.array";__pyx_k_itemsize_0_for_cython_array2596,99722 +static const char __pyx_k_ndarray_is_not_C_contiguous[] = "ndarray is not C contiguous";__pyx_k_ndarray_is_not_C_contiguous2597,99814 +static const char __pyx_k_unable_to_allocate_array_data[] = "unable to allocate array data.";__pyx_k_unable_to_allocate_array_data2598,99903 +static const char __pyx_k_strided_and_direct_or_indirect[] = "<strided and direct or indirect>";__pyx_k_strided_and_direct_or_indirect2599,99997 +static const char __pyx_k_Can_only_convert_CONTINUOUS_and[] = "Can only convert CONTINUOUS and ANNUAL_BASIS";__pyx_k_Can_only_convert_CONTINUOUS_and2600,100094 +static const char __pyx_k_numpy_core_multiarray_failed_to[] = "numpy.core.multiarray failed to import";__pyx_k_numpy_core_multiarray_failed_to2601,100204 +static const char __pyx_k_unknown_dtype_code_in_numpy_pxd[] = "unknown dtype code in numpy.pxd (%d)";__pyx_k_unknown_dtype_code_in_numpy_pxd2602,100308 +static const char __pyx_k_Buffer_view_does_not_expose_stri[] = "Buffer view does not expose strides";__pyx_k_Buffer_view_does_not_expose_stri2603,100410 +static const char __pyx_k_Can_only_create_a_buffer_that_is[] = "Can only create a buffer that is contiguous in memory.";__pyx_k_Can_only_create_a_buffer_that_is2604,100512 +static const char __pyx_k_Didn_t_init_the_survival_curve_p[] = "Didn't init the survival curve properly";__pyx_k_Didn_t_init_the_survival_curve_p2605,100633 +static const char __pyx_k_Empty_shape_tuple_for_cython_arr[] = "Empty shape tuple for cython.array";__pyx_k_Empty_shape_tuple_for_cython_arr2606,100739 +static const char __pyx_k_Format_string_allocated_too_shor[] = "Format string allocated too short, see comment in numpy.pxd";__pyx_k_Format_string_allocated_too_shor2607,100840 +static const char __pyx_k_Indirect_dimensions_not_supporte[] = "Indirect dimensions not supported";__pyx_k_Indirect_dimensions_not_supporte2608,100966 +static const char __pyx_k_Invalid_mode_expected_c_or_fortr[] = "Invalid mode, expected 'c' or 'fortran', got %s";__pyx_k_Invalid_mode_expected_c_or_fortr2609,101066 +static const char __pyx_k_Non_native_byte_order_not_suppor[] = "Non-native byte order not supported";__pyx_k_Non_native_byte_order_not_suppor2610,101180 +static const char __pyx_k_Out_of_bounds_on_buffer_access_a[] = "Out of bounds on buffer access (axis %d)";__pyx_k_Out_of_bounds_on_buffer_access_a2611,101282 +static const char __pyx_k_Unable_to_convert_item_to_object[] = "Unable to convert item to object";__pyx_k_Unable_to_convert_item_to_object2612,101389 +static const char __pyx_k_cash_settle_date_0_is_anterior_t[] = "cash_settle_date: {0} is anterior to yc's base_date: {1}";__pyx_k_cash_settle_date_0_is_anterior_t2613,101488 +static const char __pyx_k_got_differing_extents_in_dimensi[] = "got differing extents in dimension %d (got %d and %d)";__pyx_k_got_differing_extents_in_dimensi2614,101611 +static const char __pyx_k_mask_size_need_to_be_the_same_as[] = "mask size need to be the same as the number of Items";__pyx_k_mask_size_need_to_be_the_same_as2615,101731 +static const char __pyx_k_ndarray_is_not_Fortran_contiguou[] = "ndarray is not Fortran contiguous";__pyx_k_ndarray_is_not_Fortran_contiguou2616,101850 +static const char __pyx_k_numpy_core_umath_failed_to_impor[] = "numpy.core.umath failed to import";__pyx_k_numpy_core_umath_failed_to_impor2617,101950 +static const char __pyx_k_unable_to_allocate_shape_and_str[] = "unable to allocate shape and strides.";__pyx_k_unable_to_allocate_shape_and_str2618,102050 +static const char __pyx_k_Format_string_allocated_too_shor_2[] = "Format string allocated too short.";__pyx_k_Format_string_allocated_too_shor_22619,102154 +static PyObject *__pyx_n_s_ASCII;__pyx_n_s_ASCII2620,102257 +static PyObject *__pyx_kp_s_Actual_365F;__pyx_kp_s_Actual_365F2621,102291 +static PyObject *__pyx_n_s_BadDay;__pyx_n_s_BadDay2622,102332 +static PyObject *__pyx_kp_s_Buffer_view_does_not_expose_stri;__pyx_kp_s_Buffer_view_does_not_expose_stri2623,102367 +static PyObject *__pyx_kp_s_Can_only_convert_CONTINUOUS_and;__pyx_kp_s_Can_only_convert_CONTINUOUS_and2624,102429 +static PyObject *__pyx_kp_s_Can_only_create_a_buffer_that_is;__pyx_kp_s_Can_only_create_a_buffer_that_is2625,102490 +static PyObject *__pyx_kp_s_Cannot_index_with_type_s;__pyx_kp_s_Cannot_index_with_type_s2626,102552 +static PyObject *__pyx_n_s_Curve___iter;__pyx_n_s_Curve___iter2627,102606 +static PyObject *__pyx_kp_s_Didn_t_init_the_survival_curve_p;__pyx_kp_s_Didn_t_init_the_survival_curve_p2628,102647 +static PyObject *__pyx_n_s_Ellipsis;__pyx_n_s_Ellipsis2629,102709 +static PyObject *__pyx_kp_s_Empty_shape_tuple_for_cython_arr;__pyx_kp_s_Empty_shape_tuple_for_cython_arr2630,102746 +static PyObject *__pyx_n_s_EnumBase;__pyx_n_s_EnumBase2631,102808 +static PyObject *__pyx_n_s_EnumType;__pyx_n_s_EnumType2632,102845 +static PyObject *__pyx_n_s_FOLLOW;__pyx_n_s_FOLLOW2633,102882 +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor;__pyx_kp_u_Format_string_allocated_too_shor2634,102917 +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor_2;__pyx_kp_u_Format_string_allocated_too_shor_22635,102979 +static PyObject *__pyx_n_s_ImportError;__pyx_n_s_ImportError2636,103043 +static PyObject *__pyx_n_s_IndexError;__pyx_n_s_IndexError2637,103083 +static PyObject *__pyx_kp_s_Indirect_dimensions_not_supporte;__pyx_kp_s_Indirect_dimensions_not_supporte2638,103122 +static PyObject *__pyx_n_s_IntEnum;__pyx_n_s_IntEnum2639,103184 +static PyObject *__pyx_kp_s_Invalid_interval;__pyx_kp_s_Invalid_interval2640,103220 +static PyObject *__pyx_kp_s_Invalid_mode_expected_c_or_fortr;__pyx_kp_s_Invalid_mode_expected_c_or_fortr2641,103266 +static PyObject *__pyx_kp_s_Invalid_shape_in_axis_d_d;__pyx_kp_s_Invalid_shape_in_axis_d_d2642,103328 +static PyObject *__pyx_n_s_M;__pyx_n_s_M2643,103383 +static PyObject *__pyx_kp_s_M8_D;__pyx_kp_s_M8_D2644,103413 +static PyObject *__pyx_n_s_MODIFIED;__pyx_n_s_MODIFIED2645,103447 +static PyObject *__pyx_n_s_MemoryError;__pyx_n_s_MemoryError2646,103484 +static PyObject *__pyx_kp_s_MemoryView_of_r_at_0x_x;__pyx_kp_s_MemoryView_of_r_at_0x_x2647,103524 +static PyObject *__pyx_kp_s_MemoryView_of_r_object;__pyx_kp_s_MemoryView_of_r_object2648,103577 +static PyObject *__pyx_n_s_NONE;__pyx_n_s_NONE2649,103629 +static PyObject *__pyx_kp_u_Non_native_byte_order_not_suppor;__pyx_kp_u_Non_native_byte_order_not_suppor2650,103662 +static PyObject *__pyx_n_b_O;__pyx_n_b_O2651,103724 +static PyObject *__pyx_n_s_OrderedDict;__pyx_n_s_OrderedDict2652,103754 +static PyObject *__pyx_kp_s_Out_of_bounds_on_buffer_access_a;__pyx_kp_s_Out_of_bounds_on_buffer_access_a2653,103794 +static PyObject *__pyx_n_s_PREVIOUS;__pyx_n_s_PREVIOUS2654,103856 +static PyObject *__pyx_n_s_Pyx_EnumBase;__pyx_n_s_Pyx_EnumBase2655,103893 +static PyObject *__pyx_n_s_Pyx_EnumBase___new;__pyx_n_s_Pyx_EnumBase___new2656,103934 +static PyObject *__pyx_n_s_Pyx_EnumBase___repr;__pyx_n_s_Pyx_EnumBase___repr2657,103981 +static PyObject *__pyx_n_s_Pyx_EnumBase___str;__pyx_n_s_Pyx_EnumBase___str2658,104029 +static PyObject *__pyx_n_s_RuntimeError;__pyx_n_s_RuntimeError2659,104076 +static PyObject *__pyx_n_s_TypeError;__pyx_n_s_TypeError2660,104117 +static PyObject *__pyx_kp_s_Unable_to_convert_item_to_object;__pyx_kp_s_Unable_to_convert_item_to_object2661,104155 +static PyObject *__pyx_kp_s_Unknown_enum_value_s;__pyx_kp_s_Unknown_enum_value_s2662,104217 +static PyObject *__pyx_n_s_ValueError;__pyx_n_s_ValueError2663,104267 +static PyObject *__pyx_n_s_allocate_buffer;__pyx_n_s_allocate_buffer2664,104306 +static PyObject *__pyx_n_s_args;__pyx_n_s_args2665,104350 +static PyObject *__pyx_n_s_bad_day_conv;__pyx_n_s_bad_day_conv2666,104383 +static PyObject *__pyx_n_s_base;__pyx_n_s_base2667,104424 +static PyObject *__pyx_n_s_base_date;__pyx_n_s_base_date2668,104457 +static PyObject *__pyx_n_s_basis;__pyx_n_s_basis2669,104495 +static PyObject *__pyx_n_s_c;__pyx_n_s_c2670,104529 +static PyObject *__pyx_n_u_c;__pyx_n_u_c2671,104559 +static PyObject *__pyx_kp_s_can_t_compute_par_spread;__pyx_kp_s_can_t_compute_par_spread2672,104589 +static PyObject *__pyx_kp_s_can_t_convert_stub;__pyx_kp_s_can_t_convert_stub2673,104643 +static PyObject *__pyx_n_s_cash_settle_date;__pyx_n_s_cash_settle_date2674,104691 +static PyObject *__pyx_kp_s_cash_settle_date_0_is_anterior_t;__pyx_kp_s_cash_settle_date_0_is_anterior_t2675,104736 +static PyObject *__pyx_n_s_class;__pyx_n_s_class2676,104798 +static PyObject *__pyx_n_s_close;__pyx_n_s_close2677,104832 +static PyObject *__pyx_n_s_cls;__pyx_n_s_cls2678,104866 +static PyObject *__pyx_n_s_collections;__pyx_n_s_collections2679,104898 +static PyObject *__pyx_kp_s_contiguous_and_direct;__pyx_kp_s_contiguous_and_direct2680,104938 +static PyObject *__pyx_kp_s_contiguous_and_indirect;__pyx_kp_s_contiguous_and_indirect2681,104989 +static PyObject *__pyx_n_s_coupon_rates;__pyx_n_s_coupon_rates2682,105042 +static PyObject *__pyx_kp_s_curve_is_empty;__pyx_kp_s_curve_is_empty2683,105083 +static PyObject *__pyx_n_s_d1;__pyx_n_s_d12684,105127 +static PyObject *__pyx_n_s_d2;__pyx_n_s_d22685,105158 +static PyObject *__pyx_n_s_data;__pyx_n_s_data2686,105189 +static PyObject *__pyx_n_s_date;__pyx_n_s_date2687,105222 +static PyObject *__pyx_n_s_dates;__pyx_n_s_dates2688,105255 +static PyObject *__pyx_n_s_day_count_conv;__pyx_n_s_day_count_conv2689,105289 +static PyObject *__pyx_n_s_day_count_convention;__pyx_n_s_day_count_convention2690,105332 +static PyObject *__pyx_n_s_dcc_tostring;__pyx_n_s_dcc_tostring2691,105381 +static PyObject *__pyx_n_s_dct;__pyx_n_s_dct2692,105422 +static PyObject *__pyx_n_s_dfs;__pyx_n_s_dfs2693,105454 +static PyObject *__pyx_n_s_discount_factor;__pyx_n_s_discount_factor2694,105486 +static PyObject *__pyx_n_s_doc;__pyx_n_s_doc2695,105530 +static PyObject *__pyx_n_s_dtype_is_object;__pyx_n_s_dtype_is_object2696,105562 +static PyObject *__pyx_n_s_encode;__pyx_n_s_encode2697,105606 +static PyObject *__pyx_n_s_end_dates;__pyx_n_s_end_dates2698,105641 +static PyObject *__pyx_n_s_enum;__pyx_n_s_enum2699,105679 +static PyObject *__pyx_n_s_enumerate;__pyx_n_s_enumerate2700,105712 +static PyObject *__pyx_n_s_epsilon;__pyx_n_s_epsilon2701,105750 +static PyObject *__pyx_n_s_error;__pyx_n_s_error2702,105786 +static PyObject *__pyx_n_s_fixed_swap_dcc;__pyx_n_s_fixed_swap_dcc2703,105820 +static PyObject *__pyx_n_s_fixed_swap_period;__pyx_n_s_fixed_swap_period2704,105863 +static PyObject *__pyx_n_s_flags;__pyx_n_s_flags2705,105909 +static PyObject *__pyx_n_s_float_swap_dcc;__pyx_n_s_float_swap_dcc2706,105943 +static PyObject *__pyx_n_s_float_swap_period;__pyx_n_s_float_swap_period2707,105986 +static PyObject *__pyx_n_s_format;__pyx_n_s_format2708,106032 +static PyObject *__pyx_n_s_fortran;__pyx_n_s_fortran2709,106067 +static PyObject *__pyx_n_u_fortran;__pyx_n_u_fortran2710,106103 +static PyObject *__pyx_n_s_forward_zero_price;__pyx_n_s_forward_zero_price2711,106139 +static PyObject *__pyx_n_s_from_discount_factors;__pyx_n_s_from_discount_factors2712,106186 +static PyObject *__pyx_n_s_from_flat_hazard;__pyx_n_s_from_flat_hazard2713,106236 +static PyObject *__pyx_n_s_getstate;__pyx_n_s_getstate2714,106281 +static PyObject *__pyx_kp_s_got_differing_extents_in_dimensi;__pyx_kp_s_got_differing_extents_in_dimensi2715,106318 +static PyObject *__pyx_n_s_hazard_rates;__pyx_n_s_hazard_rates2716,106380 +static PyObject *__pyx_n_s_id;__pyx_n_s_id2717,106421 +static PyObject *__pyx_n_s_import;__pyx_n_s_import2718,106452 +static PyObject *__pyx_n_s_init;__pyx_n_s_init2719,106487 +static PyObject *__pyx_n_s_inplace;__pyx_n_s_inplace2720,106520 +static PyObject *__pyx_n_s_itemsize;__pyx_n_s_itemsize2721,106556 +static PyObject *__pyx_kp_s_itemsize_0_for_cython_array;__pyx_kp_s_itemsize_0_for_cython_array2722,106593 +static PyObject *__pyx_n_s_iter;__pyx_n_s_iter2723,106650 +static PyObject *__pyx_n_s_main;__pyx_n_s_main2724,106683 +static PyObject *__pyx_n_s_mask;__pyx_n_s_mask2725,106716 +static PyObject *__pyx_kp_s_mask_size_need_to_be_the_same_as;__pyx_kp_s_mask_size_need_to_be_the_same_as2726,106749 +static PyObject *__pyx_n_s_members;__pyx_n_s_members2727,106811 +static PyObject *__pyx_n_s_memview;__pyx_n_s_memview2728,106847 +static PyObject *__pyx_n_s_metaclass;__pyx_n_s_metaclass2729,106883 +static PyObject *__pyx_n_s_mm_dcc;__pyx_n_s_mm_dcc2730,106921 +static PyObject *__pyx_n_s_mode;__pyx_n_s_mode2731,106956 +static PyObject *__pyx_n_s_module;__pyx_n_s_module2732,106989 +static PyObject *__pyx_n_s_multiplicative;__pyx_n_s_multiplicative2733,107024 +static PyObject *__pyx_n_s_name;__pyx_n_s_name2734,107067 +static PyObject *__pyx_n_s_name_2;__pyx_n_s_name_22735,107100 +static PyObject *__pyx_kp_u_ndarray_is_not_C_contiguous;__pyx_kp_u_ndarray_is_not_C_contiguous2736,107135 +static PyObject *__pyx_kp_u_ndarray_is_not_Fortran_contiguou;__pyx_kp_u_ndarray_is_not_Fortran_contiguou2737,107192 +static PyObject *__pyx_n_s_ndim;__pyx_n_s_ndim2738,107254 +static PyObject *__pyx_n_s_new;__pyx_n_s_new2739,107287 +static PyObject *__pyx_n_s_np;__pyx_n_s_np2740,107319 +static PyObject *__pyx_n_s_numpy;__pyx_n_s_numpy2741,107350 +static PyObject *__pyx_kp_s_numpy_core_multiarray_failed_to;__pyx_kp_s_numpy_core_multiarray_failed_to2742,107384 +static PyObject *__pyx_kp_s_numpy_core_umath_failed_to_impor;__pyx_kp_s_numpy_core_umath_failed_to_impor2743,107445 +static PyObject *__pyx_n_s_obj;__pyx_n_s_obj2744,107507 +static PyObject *__pyx_n_s_pack;__pyx_n_s_pack2745,107539 +static PyObject *__pyx_n_s_parents;__pyx_n_s_parents2746,107572 +static PyObject *__pyx_n_s_pay_accrued_on_default;__pyx_n_s_pay_accrued_on_default2747,107608 +static PyObject *__pyx_n_s_periods;__pyx_n_s_periods2748,107659 +static PyObject *__pyx_n_s_prepare;__pyx_n_s_prepare2749,107695 +static PyObject *__pyx_n_s_pyisda_curve;__pyx_n_s_pyisda_curve2750,107731 +static PyObject *__pyx_n_s_pyx_getbuffer;__pyx_n_s_pyx_getbuffer2751,107772 +static PyObject *__pyx_n_s_pyx_vtable;__pyx_n_s_pyx_vtable2752,107814 +static PyObject *__pyx_n_s_qualname;__pyx_n_s_qualname2753,107853 +static PyObject *__pyx_n_s_range;__pyx_n_s_range2754,107890 +static PyObject *__pyx_n_s_rate;__pyx_n_s_rate2755,107924 +static PyObject *__pyx_n_s_rates;__pyx_n_s_rates2756,107957 +static PyObject *__pyx_n_s_recovery_rates;__pyx_n_s_recovery_rates2757,107991 +static PyObject *__pyx_n_s_repr;__pyx_n_s_repr2758,108034 +static PyObject *__pyx_n_s_res;__pyx_n_s_res2759,108067 +static PyObject *__pyx_kp_s_s_s;__pyx_kp_s_s_s2760,108099 +static PyObject *__pyx_kp_s_s_s_d;__pyx_kp_s_s_s_d2761,108132 +static PyObject *__pyx_n_s_self;__pyx_n_s_self2762,108167 +static PyObject *__pyx_n_s_send;__pyx_n_s_send2763,108200 +static PyObject *__pyx_n_s_setstate;__pyx_n_s_setstate2764,108233 +static PyObject *__pyx_n_s_shape;__pyx_n_s_shape2765,108270 +static PyObject *__pyx_n_s_size;__pyx_n_s_size2766,108304 +static PyObject *__pyx_n_s_start;__pyx_n_s_start2767,108337 +static PyObject *__pyx_n_s_start_date;__pyx_n_s_start_date2768,108371 +static PyObject *__pyx_n_s_step;__pyx_n_s_step2769,108410 +static PyObject *__pyx_n_s_step_in_date;__pyx_n_s_step_in_date2770,108443 +static PyObject *__pyx_n_s_stop;__pyx_n_s_stop2771,108484 +static PyObject *__pyx_n_s_str;__pyx_n_s_str2772,108517 +static PyObject *__pyx_kp_s_strided_and_direct;__pyx_kp_s_strided_and_direct2773,108549 +static PyObject *__pyx_kp_s_strided_and_direct_or_indirect;__pyx_kp_s_strided_and_direct_or_indirect2774,108597 +static PyObject *__pyx_kp_s_strided_and_indirect;__pyx_kp_s_strided_and_indirect2775,108657 +static PyObject *__pyx_kp_s_stringsource;__pyx_kp_s_stringsource2776,108707 +static PyObject *__pyx_n_s_struct;__pyx_n_s_struct2777,108749 +static PyObject *__pyx_n_s_super;__pyx_n_s_super2778,108784 +static PyObject *__pyx_n_s_survival_probability;__pyx_n_s_survival_probability2779,108818 +static PyObject *__pyx_n_s_test;__pyx_n_s_test2780,108867 +static PyObject *__pyx_n_s_throw;__pyx_n_s_throw2781,108900 +static PyObject *__pyx_n_s_today;__pyx_n_s_today2782,108934 +static PyObject *__pyx_n_s_types;__pyx_n_s_types2783,108968 +static PyObject *__pyx_kp_s_unable_to_allocate_array_data;__pyx_kp_s_unable_to_allocate_array_data2784,109002 +static PyObject *__pyx_kp_s_unable_to_allocate_shape_and_str;__pyx_kp_s_unable_to_allocate_shape_and_str2785,109061 +static PyObject *__pyx_kp_u_unknown_dtype_code_in_numpy_pxd;__pyx_kp_u_unknown_dtype_code_in_numpy_pxd2786,109123 +static PyObject *__pyx_n_s_unpack;__pyx_n_s_unpack2787,109184 +static PyObject *__pyx_n_s_upfront_rates;__pyx_n_s_upfront_rates2788,109219 +static PyObject *__pyx_kp_s_utf_8;__pyx_kp_s_utf_82789,109261 +static PyObject *__pyx_n_s_v;__pyx_n_s_v2790,109296 +static PyObject *__pyx_n_s_value;__pyx_n_s_value2791,109326 +static PyObject *__pyx_n_s_values;__pyx_n_s_values2792,109360 +static PyObject *__pyx_n_s_view;__pyx_n_s_view2793,109395 +static PyObject *__pyx_n_s_yc;__pyx_n_s_yc2794,109428 +static PyObject *__pyx_int_0;__pyx_int_02866,120782 +static PyObject *__pyx_int_1;__pyx_int_12867,120812 +static PyObject *__pyx_int_5;__pyx_int_52868,120842 +static PyObject *__pyx_int_neg_1;__pyx_int_neg_12869,120872 +static enum __pyx_t_6pyisda_5curve_Basis __pyx_k__12;__pyx_k__122870,120906 +static __Pyx_memviewslice __pyx_k__13;__pyx_k__132871,120960 +static PyObject *__pyx_tuple_;__pyx_tuple_2872,120999 +static PyObject *__pyx_slice__9;__pyx_slice__92873,121030 +static PyObject *__pyx_tuple__2;__pyx_tuple__22874,121063 +static PyObject *__pyx_tuple__3;__pyx_tuple__32875,121096 +static PyObject *__pyx_tuple__4;__pyx_tuple__42876,121129 +static PyObject *__pyx_tuple__5;__pyx_tuple__52877,121162 +static PyObject *__pyx_tuple__6;__pyx_tuple__62878,121195 +static PyObject *__pyx_tuple__7;__pyx_tuple__72879,121228 +static PyObject *__pyx_tuple__8;__pyx_tuple__82880,121261 +static PyObject *__pyx_slice__35;__pyx_slice__352881,121294 +static PyObject *__pyx_slice__36;__pyx_slice__362882,121328 +static PyObject *__pyx_slice__37;__pyx_slice__372883,121362 +static PyObject *__pyx_tuple__10;__pyx_tuple__102884,121396 +static PyObject *__pyx_tuple__11;__pyx_tuple__112885,121430 +static PyObject *__pyx_tuple__14;__pyx_tuple__142886,121464 +static PyObject *__pyx_tuple__15;__pyx_tuple__152887,121498 +static PyObject *__pyx_tuple__16;__pyx_tuple__162888,121532 +static PyObject *__pyx_tuple__17;__pyx_tuple__172889,121566 +static PyObject *__pyx_tuple__18;__pyx_tuple__182890,121600 +static PyObject *__pyx_tuple__19;__pyx_tuple__192891,121634 +static PyObject *__pyx_tuple__20;__pyx_tuple__202892,121668 +static PyObject *__pyx_tuple__21;__pyx_tuple__212893,121702 +static PyObject *__pyx_tuple__22;__pyx_tuple__222894,121736 +static PyObject *__pyx_tuple__23;__pyx_tuple__232895,121770 +static PyObject *__pyx_tuple__24;__pyx_tuple__242896,121804 +static PyObject *__pyx_tuple__25;__pyx_tuple__252897,121838 +static PyObject *__pyx_tuple__26;__pyx_tuple__262898,121872 +static PyObject *__pyx_tuple__27;__pyx_tuple__272899,121906 +static PyObject *__pyx_tuple__28;__pyx_tuple__282900,121940 +static PyObject *__pyx_tuple__29;__pyx_tuple__292901,121974 +static PyObject *__pyx_tuple__30;__pyx_tuple__302902,122008 +static PyObject *__pyx_tuple__31;__pyx_tuple__312903,122042 +static PyObject *__pyx_tuple__32;__pyx_tuple__322904,122076 +static PyObject *__pyx_tuple__33;__pyx_tuple__332905,122110 +static PyObject *__pyx_tuple__34;__pyx_tuple__342906,122144 +static PyObject *__pyx_tuple__38;__pyx_tuple__382907,122178 +static PyObject *__pyx_tuple__39;__pyx_tuple__392908,122212 +static PyObject *__pyx_tuple__41;__pyx_tuple__412909,122246 +static PyObject *__pyx_tuple__42;__pyx_tuple__422910,122280 +static PyObject *__pyx_tuple__44;__pyx_tuple__442911,122314 +static PyObject *__pyx_tuple__46;__pyx_tuple__462912,122348 +static PyObject *__pyx_tuple__47;__pyx_tuple__472913,122382 +static PyObject *__pyx_tuple__48;__pyx_tuple__482914,122416 +static PyObject *__pyx_tuple__49;__pyx_tuple__492915,122450 +static PyObject *__pyx_tuple__50;__pyx_tuple__502916,122484 +static PyObject *__pyx_codeobj__40;__pyx_codeobj__402917,122518 +static PyObject *__pyx_codeobj__43;__pyx_codeobj__432918,122554 +static PyObject *__pyx_codeobj__45;__pyx_codeobj__452919,122590 +static CYTHON_INLINE std::shared_ptr<TCurve> __pyx_f_6pyisda_5curve_make_shared(TCurve *__pyx_v_ptr) {__pyx_f_6pyisda_5curve_make_shared2929,122838 +static char __pyx_doc_6pyisda_5curve_5Curve___getstate__[] = "Curve.__getstate__(self)";__pyx_doc_6pyisda_5curve_5Curve___getstate__2968,124036 +static PyObject *__pyx_pw_6pyisda_5curve_5Curve_1__getstate__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_5curve_5Curve_1__getstate__2969,124125 +static PyObject *__pyx_pf_6pyisda_5curve_5Curve___getstate__(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_5Curve___getstate__2980,124554 +static char __pyx_doc_6pyisda_5curve_5Curve_2__setstate__[] = "Curve.__setstate__(self, state)";__pyx_doc_6pyisda_5curve_5Curve_2__setstate__3127,129802 +static PyObject *__pyx_pw_6pyisda_5curve_5Curve_3__setstate__(PyObject *__pyx_v_self, PyObject *__pyx_v_state) {__pyx_pw_6pyisda_5curve_5Curve_3__setstate__3128,129899 +static PyObject *__pyx_pf_6pyisda_5curve_5Curve_2__setstate__(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self, PyObject *__pyx_v_state) {__pyx_pf_6pyisda_5curve_5Curve_2__setstate__3139,130351 +static Py_hash_t __pyx_pw_6pyisda_5curve_5Curve_5__hash__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_5curve_5Curve_5__hash__3357,138948 +static Py_hash_t __pyx_pf_6pyisda_5curve_5Curve_4__hash__(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_5Curve_4__hash__3368,139330 +static char __pyx_doc_6pyisda_5curve_5Curve_6inspect[] = "Curve.inspect(self)\n method to inspect the content of the C struct\n\n Returns\n -------\n dict\n contains `base_date`, `basis`, `day_count_counvention` and `data`\n ";__pyx_doc_6pyisda_5curve_5Curve_6inspect3516,144863 +static PyObject *__pyx_pw_6pyisda_5curve_5Curve_7inspect(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_5curve_5Curve_7inspect3517,145129 +static PyObject *__pyx_pf_6pyisda_5curve_5Curve_6inspect(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_5Curve_6inspect3528,145544 +static char __pyx_doc_6pyisda_5curve_5Curve_8to_df[] = "Curve.to_df(self)";__pyx_doc_6pyisda_5curve_5Curve_8to_df3675,151955 +static PyObject *__pyx_pw_6pyisda_5curve_5Curve_9to_df(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_5curve_5Curve_9to_df3676,152031 +static PyObject *__pyx_pf_6pyisda_5curve_5Curve_8to_df(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_5Curve_8to_df3687,152440 +static PyObject *__pyx_pw_6pyisda_5curve_5Curve_11__iter__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_5curve_5Curve_11__iter__3887,161187 +static PyObject *__pyx_pf_6pyisda_5curve_5Curve_10__iter__(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_5Curve_10__iter__3898,161575 +static PyObject *__pyx_gb_6pyisda_5curve_5Curve_12generator(__pyx_CoroutineObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */__pyx_gb_6pyisda_5curve_5Curve_12generator3931,163178 +static Py_ssize_t __pyx_pw_6pyisda_5curve_5Curve_14__len__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_5curve_5Curve_14__len__4052,167736 +static Py_ssize_t __pyx_pf_6pyisda_5curve_5Curve_13__len__(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_5Curve_13__len__4063,168119 +static char __pyx_doc_6pyisda_5curve_5Curve_15__deepcopy__[] = "Curve.__deepcopy__(self, memo)";__pyx_doc_6pyisda_5curve_5Curve_15__deepcopy__4102,169308 +static PyObject *__pyx_pw_6pyisda_5curve_5Curve_16__deepcopy__(PyObject *__pyx_v_self, PyObject *__pyx_v_memo) {__pyx_pw_6pyisda_5curve_5Curve_16__deepcopy__4103,169405 +static PyObject *__pyx_pf_6pyisda_5curve_5Curve_15__deepcopy__(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_memo) {__pyx_pf_6pyisda_5curve_5Curve_15__deepcopy__4114,169857 +static PyObject *__pyx_pw_6pyisda_5curve_5Curve_20forward_hazard_rates_1__get__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_5curve_5Curve_20forward_hazard_rates_1__get__4234,174883 +static PyObject *__pyx_pf_6pyisda_5curve_5Curve_20forward_hazard_rates___get__(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_5Curve_20forward_hazard_rates___get__4245,175311 +static PyObject *__pyx_pw_6pyisda_5curve_5Curve_9base_date_1__get__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_5curve_5Curve_9base_date_1__get__4571,187874 +static PyObject *__pyx_pf_6pyisda_5curve_5Curve_9base_date___get__(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_5Curve_9base_date___get__4582,188278 +static char __pyx_doc_6pyisda_5curve_5Curve_17__forward_zero_price[] = "Curve.__forward_zero_price(self, d2, d1=None)\n computes the forward zero price at a given date.\n\n Parameters\n ----------\n date : :class:`datetime.date`\n\n Returns\n -------\n float\n ";__pyx_doc_6pyisda_5curve_5Curve_17__forward_zero_price4631,189934 +static PyObject *__pyx_pw_6pyisda_5curve_5Curve_18__forward_zero_price(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_5curve_5Curve_18__forward_zero_price4632,190247 +static PyObject *__pyx_pf_6pyisda_5curve_5Curve_17__forward_zero_price(struct __pyx_obj_6pyisda_5curve_Curve *__pyx_v_self, PyObject *__pyx_v_d2, PyObject *__pyx_v_d1) {__pyx_pf_6pyisda_5curve_5Curve_17__forward_zero_price4691,192640 +static PyObject *__pyx_f_6pyisda_5curve_fArray_to_list(TRatePt *__pyx_v_fArray, int __pyx_v_fNumItems) {__pyx_f_6pyisda_5curve_fArray_to_list4855,199095 +static int __pyx_pw_6pyisda_5curve_10YieldCurve_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_5curve_10YieldCurve_1__init__4958,202666 +static int __pyx_pf_6pyisda_5curve_10YieldCurve___init__(struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_self, PyObject *__pyx_v_date, PyObject *__pyx_v_types, PyObject *__pyx_v_periods, __Pyx_memviewslice __pyx_v_rates, PyObject *__pyx_v_mm_dcc, PyObject *__pyx_v_fixed_swap_period, PyObject *__pyx_v_float_swap_period, PyObject *__pyx_v_fixed_swap_dcc, PyObject *__pyx_v_float_swap_dcc, enum BadDay __pyx_v_bad_day_conv) {__pyx_pf_6pyisda_5curve_10YieldCurve___init__5097,210223 +static void __pyx_pw_6pyisda_5curve_10YieldCurve_3__dealloc__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_5curve_10YieldCurve_3__dealloc__5611,232629 +static void __pyx_pf_6pyisda_5curve_10YieldCurve_2__dealloc__(struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_10YieldCurve_2__dealloc__5620,232983 +static char __pyx_doc_6pyisda_5curve_10YieldCurve_4__getstate__[] = "YieldCurve.__getstate__(self)";__pyx_doc_6pyisda_5curve_10YieldCurve_4__getstate__5675,234772 +static PyObject *__pyx_pw_6pyisda_5curve_10YieldCurve_5__getstate__(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_5curve_10YieldCurve_5__getstate__5676,234873 +static PyObject *__pyx_pf_6pyisda_5curve_10YieldCurve_4__getstate__(struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_10YieldCurve_4__getstate__5687,235320 +static char __pyx_doc_6pyisda_5curve_10YieldCurve_6__setstate__[] = "YieldCurve.__setstate__(self, state)";__pyx_doc_6pyisda_5curve_10YieldCurve_6__setstate__5808,240300 +static PyObject *__pyx_pw_6pyisda_5curve_10YieldCurve_7__setstate__(PyObject *__pyx_v_self, PyObject *__pyx_v_state) {__pyx_pw_6pyisda_5curve_10YieldCurve_7__setstate__5809,240408 +static PyObject *__pyx_pf_6pyisda_5curve_10YieldCurve_6__setstate__(struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_self, PyObject *__pyx_v_state) {__pyx_pf_6pyisda_5curve_10YieldCurve_6__setstate__5820,240877 +static char __pyx_doc_6pyisda_5curve_10YieldCurve_8from_discount_factors[] = "YieldCurve.from_discount_factors(type cls, base_date, list dates, __Pyx_memviewslice dfs, str day_count_conv)\n build a yield curve from a list of discount factors ";__pyx_doc_6pyisda_5curve_10YieldCurve_8from_discount_factors5983,247982 +static PyObject *__pyx_pw_6pyisda_5curve_10YieldCurve_9from_discount_factors(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_5curve_10YieldCurve_9from_discount_factors5984,248227 +static PyObject *__pyx_pf_6pyisda_5curve_10YieldCurve_8from_discount_factors(PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_base_date, PyObject *__pyx_v_dates, __Pyx_memviewslice __pyx_v_dfs, PyObject *__pyx_v_day_count_conv) {__pyx_pf_6pyisda_5curve_10YieldCurve_8from_discount_factors6064,252108 +static PyObject *__pyx_pw_6pyisda_5curve_10YieldCurve_5dates_1__get__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_5curve_10YieldCurve_5dates_1__get__6269,261278 +static PyObject *__pyx_pf_6pyisda_5curve_10YieldCurve_5dates___get__(struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_self) {__pyx_pf_6pyisda_5curve_10YieldCurve_5dates___get__6280,261691 +static char __pyx_doc_6pyisda_5curve_10YieldCurve_10expected_forward_curve[] = "YieldCurve.expected_forward_curve(self, forward_date)\n returns the expected forward curve ";__pyx_doc_6pyisda_5curve_10YieldCurve_10expected_forward_curve6342,263935 +static PyObject *__pyx_pw_6pyisda_5curve_10YieldCurve_11expected_forward_curve(PyObject *__pyx_v_self, PyObject *__pyx_v_forward_date) {__pyx_pw_6pyisda_5curve_10YieldCurve_11expected_forward_curve6343,264109 +static PyObject *__pyx_pf_6pyisda_5curve_10YieldCurve_10expected_forward_curve(struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_self, PyObject *__pyx_v_forward_date) {__pyx_pf_6pyisda_5curve_10YieldCurve_10expected_forward_curve6354,264624 +static void __pyx_f_6pyisda_5curve_tweak_curve(TCurve *__pyx_v_sc, TCurve *__pyx_v_sc_tweaked, double __pyx_v_epsilon, std::vector<double> &__pyx_v_h, std::vector<double> const &__pyx_v_T, int *__pyx_v_mask) {__pyx_f_6pyisda_5curve_tweak_curve6546,272823 +static int __pyx_pw_6pyisda_5curve_11SpreadCurve_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_5curve_11SpreadCurve_1__init__6752,279103 +static int __pyx_pf_6pyisda_5curve_11SpreadCurve___init__(struct __pyx_obj_6pyisda_5curve_SpreadCurve *__pyx_v_self, PyObject *__pyx_v_today, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, PyObject *__pyx_v_start_date, PyObject *__pyx_v_step_in_date, PyObject *__pyx_v_cash_settle_date, PyObject *__pyx_v_end_dates, __Pyx_memviewslice __pyx_v_coupon_rates, __Pyx_memviewslice __pyx_v_upfront_rates, __Pyx_memviewslice __pyx_v_recovery_rates, int __pyx_v_pay_accrued_on_default) {__pyx_pf_6pyisda_5curve_11SpreadCurve___init__6908,287110 +static char __pyx_doc_6pyisda_5curve_11SpreadCurve_2from_flat_hazard[] = "SpreadCurve.from_flat_hazard(type cls, base_date, double rate, Basis basis=CONTINUOUS, str day_count_conv='Actual/365F')\n\n Alternative constructor for flat hazard rate Curve.\n\n Parameters\n ----------\n base_date : datetime.date\n Starting date of the curve\n rate : float\n Flat hazard rate.\n basis : int, optional\n Default to :data:`CONTINUOUS`\n day_count_conv : str, optional\n Default to 'Actual/365F'\n\n ";__pyx_doc_6pyisda_5curve_11SpreadCurve_2from_flat_hazard7387,308676 +static PyObject *__pyx_pw_6pyisda_5curve_11SpreadCurve_3from_flat_hazard(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_5curve_11SpreadCurve_3from_flat_hazard7388,309270 +static PyObject *__pyx_pf_6pyisda_5curve_11SpreadCurve_2from_flat_hazard(PyTypeObject *__pyx_v_cls, PyObject *__pyx_v_base_date, double __pyx_v_rate, enum __pyx_t_6pyisda_5curve_Basis __pyx_v_basis, PyObject *__pyx_v_day_count_conv) {__pyx_pf_6pyisda_5curve_11SpreadCurve_2from_flat_hazard7474,313183 +static char __pyx_doc_6pyisda_5curve_11SpreadCurve_4tweak_curve[] = "SpreadCurve.tweak_curve(self, double epsilon, bool multiplicative=True, __Pyx_memviewslice mask=None, bool inplace=False)\n\n Tweak the survival curve in place.\n\n Parameters\n ----------\n epsilon : double\n tweaking factor (either additive or multiplicative)\n multiplicative : bool, optional\n do we scale by 1+epsilon or add epsilon (default multiplicative).\n mask : array of bool or None\n If None (default), tweak everything, otherwise only tweak values\n in the mask.\n ";__pyx_doc_6pyisda_5curve_11SpreadCurve_4tweak_curve7580,317860 +static PyObject *__pyx_pw_6pyisda_5curve_11SpreadCurve_5tweak_curve(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_5curve_11SpreadCurve_5tweak_curve7581,318500 +static PyObject *__pyx_pf_6pyisda_5curve_11SpreadCurve_4tweak_curve(struct __pyx_obj_6pyisda_5curve_SpreadCurve *__pyx_v_self, double __pyx_v_epsilon, CYTHON_UNUSED int __pyx_v_multiplicative, __Pyx_memviewslice __pyx_v_mask, int __pyx_v_inplace) {__pyx_pf_6pyisda_5curve_11SpreadCurve_4tweak_curve7686,323055 +static char __pyx_doc_6pyisda_5curve_11SpreadCurve_6par_spread[] = "SpreadCurve.par_spread(self, today, step_in_date, start_date, end_dates, __Pyx_memviewslice recovery_rates, YieldCurve yc, bool pay_accrued_on_default)";__pyx_doc_6pyisda_5curve_11SpreadCurve_6par_spread7965,333209 +static PyObject *__pyx_pw_6pyisda_5curve_11SpreadCurve_7par_spread(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_5curve_11SpreadCurve_7par_spread7966,333431 +static PyObject *__pyx_pf_6pyisda_5curve_11SpreadCurve_6par_spread(struct __pyx_obj_6pyisda_5curve_SpreadCurve *__pyx_v_self, PyObject *__pyx_v_today, PyObject *__pyx_v_step_in_date, PyObject *__pyx_v_start_date, PyObject *__pyx_v_end_dates, __Pyx_memviewslice __pyx_v_recovery_rates, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, int __pyx_v_pay_accrued_on_default) {__pyx_pf_6pyisda_5curve_11SpreadCurve_6par_spread8072,338782 +static CYTHON_INLINE void __pyx_f_7cpython_8datetime_import_datetime(void) {__pyx_f_7cpython_8datetime_import_datetime8508,357487 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_date_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day) {__pyx_f_7cpython_8datetime_date_new8541,358560 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_new(int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_time_new8588,360424 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day, int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_datetime_new8635,362558 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_timedelta_new(int __pyx_v_days, int __pyx_v_seconds, int __pyx_v_useconds) {__pyx_f_7cpython_8datetime_timedelta_new8682,364861 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_tzinfo8729,366663 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_tzinfo8803,368758 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_year8877,370851 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_month8914,371697 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_day8951,372544 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_year8988,373389 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_month9025,374271 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_day9062,375154 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_hour9099,376016 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_minute9136,376886 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_second9173,377774 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_microsecond9210,378682 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_hour9247,379619 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_minute9284,380525 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_second9321,381449 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_microsecond9358,382393 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_days(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_days9395,383357 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_seconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_seconds9432,384278 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_microseconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_microseconds9468,385242 +static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_pw_5numpy_7ndarray_1__getbuffer__9504,386645 +static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_pf_5numpy_7ndarray___getbuffer__9515,387102 +static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info) {__pyx_pw_5numpy_7ndarray_3__releasebuffer__10376,423903 +static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info) {__pyx_pf_5numpy_7ndarray_2__releasebuffer__10385,424290 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) {__pyx_f_5numpy_PyArray_MultiIterNew110466,427654 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyObject *__pyx_v_b) {__pyx_f_5numpy_PyArray_MultiIterNew210513,429252 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c) {__pyx_f_5numpy_PyArray_MultiIterNew310560,430955 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d) {__pyx_f_5numpy_PyArray_MultiIterNew410607,432765 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d, PyObject *__pyx_v_e) {__pyx_f_5numpy_PyArray_MultiIterNew510654,434681 +static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *__pyx_v_descr, char *__pyx_v_f, char *__pyx_v_end, int *__pyx_v_offset) {__pyx_f_5numpy__util_dtypestring10701,436810 +static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObject *__pyx_v_base) {__pyx_f_5numpy_set_array_base11456,473557 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) {__pyx_f_5numpy_get_array_base11552,476797 +static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {__pyx_f_5numpy_import_array11626,479019 +static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {__pyx_f_5numpy_import_umath11757,483611 +static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {__pyx_f_5numpy_import_ufunc11888,488130 +static int __pyx_pw_8EnumBase_14__Pyx_EnumMeta_1__init__(PyObject *__pyx_v_cls, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_8EnumBase_14__Pyx_EnumMeta_1__init__12018,492722 +static int __pyx_pf_8EnumBase_14__Pyx_EnumMeta___init__(struct __pyx_obj___Pyx_EnumMeta *__pyx_v_cls, PyObject *__pyx_v_name, PyObject *__pyx_v_parents, PyObject *__pyx_v_dct) {__pyx_pf_8EnumBase_14__Pyx_EnumMeta___init__12083,495454 +static PyObject *__pyx_pw_8EnumBase_14__Pyx_EnumMeta_3__iter__(PyObject *__pyx_v_cls) {__pyx_pw_8EnumBase_14__Pyx_EnumMeta_3__iter__12217,500844 +static PyObject *__pyx_pf_8EnumBase_14__Pyx_EnumMeta_2__iter__(struct __pyx_obj___Pyx_EnumMeta *__pyx_v_cls) {__pyx_pf_8EnumBase_14__Pyx_EnumMeta_2__iter__12228,501232 +static PyObject *__pyx_pw_8EnumBase_14__Pyx_EnumMeta_5__getitem__(PyObject *__pyx_v_cls, PyObject *__pyx_v_name) {__pyx_pw_8EnumBase_14__Pyx_EnumMeta_5__getitem__12305,504093 +static PyObject *__pyx_pf_8EnumBase_14__Pyx_EnumMeta_4__getitem__(struct __pyx_obj___Pyx_EnumMeta *__pyx_v_cls, PyObject *__pyx_v_name) {__pyx_pf_8EnumBase_14__Pyx_EnumMeta_4__getitem__12316,504542 +static PyMethodDef __pyx_mdef_8EnumBase_14__Pyx_EnumBase_1__new__ = {"__new__", (PyCFunction)__pyx_pw_8EnumBase_14__Pyx_EnumBase_1__new__, METH_VARARGS|METH_KEYWORDS, 0};__pyx_mdef_8EnumBase_14__Pyx_EnumBase_1__new__12370,506376 +static PyObject *__pyx_pw_8EnumBase_14__Pyx_EnumBase_1__new__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_8EnumBase_14__Pyx_EnumBase_1__new__12371,506547 +static PyObject *__pyx_pf_8EnumBase_14__Pyx_EnumBase___new__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_cls, PyObject *__pyx_v_value, PyObject *__pyx_v_name) {__pyx_pf_8EnumBase_14__Pyx_EnumBase___new__12439,509296 +static PyMethodDef __pyx_mdef_8EnumBase_14__Pyx_EnumBase_3__repr__ = {"__repr__", (PyCFunction)__pyx_pw_8EnumBase_14__Pyx_EnumBase_3__repr__, METH_O, 0};__pyx_mdef_8EnumBase_14__Pyx_EnumBase_3__repr__12723,520041 +static PyObject *__pyx_pw_8EnumBase_14__Pyx_EnumBase_3__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) {__pyx_pw_8EnumBase_14__Pyx_EnumBase_3__repr__12724,520195 +static PyObject *__pyx_pf_8EnumBase_14__Pyx_EnumBase_2__repr__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {__pyx_pf_8EnumBase_14__Pyx_EnumBase_2__repr__12735,520596 +static PyMethodDef __pyx_mdef_8EnumBase_14__Pyx_EnumBase_5__str__ = {"__str__", (PyCFunction)__pyx_pw_8EnumBase_14__Pyx_EnumBase_5__str__, METH_O, 0};__pyx_mdef_8EnumBase_14__Pyx_EnumBase_5__str__12807,523358 +static PyObject *__pyx_pw_8EnumBase_14__Pyx_EnumBase_5__str__(PyObject *__pyx_self, PyObject *__pyx_v_self) {__pyx_pw_8EnumBase_14__Pyx_EnumBase_5__str__12808,523509 +static PyObject *__pyx_pf_8EnumBase_14__Pyx_EnumBase_4__str__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {__pyx_pf_8EnumBase_14__Pyx_EnumBase_4__str__12819,523907 +static int __pyx_array___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_array___cinit__12888,526544 +static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array___cinit__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_shape, Py_ssize_t __pyx_v_itemsize, PyObject *__pyx_v_format, PyObject *__pyx_v_mode, int __pyx_v_allocate_buffer) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array___cinit__13002,531437 +static CYTHON_UNUSED int __pyx_array_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_array_getbuffer13614,553243 +static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_2__getbuffer__(struct __pyx_array_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_2__getbuffer__13625,553717 +static void __pyx_array___dealloc__(PyObject *__pyx_v_self) {__pyx_array___dealloc__13916,563468 +static void __pyx_array___pyx_pf_15View_dot_MemoryView_5array_4__dealloc__(struct __pyx_array_obj *__pyx_v_self) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_4__dealloc__13925,563789 +static PyObject *__pyx_pw_15View_dot_MemoryView_5array_7memview_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_5array_7memview_1__get__14047,567992 +static PyObject *__pyx_pf_15View_dot_MemoryView_5array_7memview___get__(struct __pyx_array_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_5array_7memview___get__14058,568391 +static PyObject *__pyx_array_get_memview(struct __pyx_array_obj *__pyx_v_self) {__pyx_array_get_memview14105,569781 +static PyObject *__pyx_array___getattr__(PyObject *__pyx_v_self, PyObject *__pyx_v_attr) {__pyx_array___getattr__14184,572566 +static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_6__getattr__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_attr) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_6__getattr__14195,572997 +static PyObject *__pyx_array___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item) {__pyx_array___getitem__14249,574715 +static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_8__getitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_8__getitem__14260,575146 +static int __pyx_array___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value) {__pyx_array___setitem__14314,576916 +static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_10__setitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_10__setitem__14325,577386 +static struct __pyx_array_obj *__pyx_array_new(PyObject *__pyx_v_shape, Py_ssize_t __pyx_v_itemsize, char *__pyx_v_format, char *__pyx_v_mode, char *__pyx_v_buf) {__pyx_array_new14371,578883 +static int __pyx_MemviewEnum___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_MemviewEnum___init__14545,585401 +static int __pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum___init__(struct __pyx_MemviewEnum_obj *__pyx_v_self, PyObject *__pyx_v_name) {__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum___init__14592,587249 +static PyObject *__pyx_MemviewEnum___repr__(PyObject *__pyx_v_self) {__pyx_MemviewEnum___repr__14634,588431 +static PyObject *__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum_2__repr__(struct __pyx_MemviewEnum_obj *__pyx_v_self) {__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum_2__repr__14645,588818 +static void *__pyx_align_pointer(void *__pyx_v_memory, size_t __pyx_v_alignment) {__pyx_align_pointer14685,589939 +static int __pyx_memoryview___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_memoryview___cinit__14770,592259 +static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview___cinit__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj, int __pyx_v_flags, int __pyx_v_dtype_is_object) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview___cinit__14841,595363 +static void __pyx_memoryview___dealloc__(PyObject *__pyx_v_self) {__pyx_memoryview___dealloc__15137,606233 +static void __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_2__dealloc__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_2__dealloc__15146,606575 +static char *__pyx_memoryview_get_item_pointer(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index) {__pyx_memoryview_get_item_pointer15325,614051 +static PyObject *__pyx_memoryview___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index) {__pyx_memoryview___getitem__15462,619142 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_4__getitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_4__getitem__15473,619596 +static int __pyx_memoryview___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) {__pyx_memoryview___setitem__15652,625586 +static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_6__setitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_6__setitem__15663,626078 +static PyObject *__pyx_memoryview_is_slice(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj) {__pyx_memoryview_is_slice15847,633140 +static PyObject *__pyx_memoryview_setitem_slice_assignment(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_dst, PyObject *__pyx_v_src) {__pyx_memoryview_setitem_slice_assignment16058,640582 +static PyObject *__pyx_memoryview_setitem_slice_assign_scalar(struct __pyx_memoryview_obj *__pyx_v_self, struct __pyx_memoryview_obj *__pyx_v_dst, PyObject *__pyx_v_value) {__pyx_memoryview_setitem_slice_assign_scalar16141,644612 +static PyObject *__pyx_memoryview_setitem_indexed(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) {__pyx_memoryview_setitem_indexed16427,654461 +static PyObject *__pyx_memoryview_convert_item_to_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp) {__pyx_memoryview_convert_item_to_object16485,656715 +static PyObject *__pyx_memoryview_assign_item_from_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value) {__pyx_memoryview_assign_item_from_object16759,667023 +static CYTHON_UNUSED int __pyx_memoryview_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_memoryview_getbuffer16997,676031 +static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_8__getbuffer__(struct __pyx_memoryview_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_8__getbuffer__17008,676526 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_1T_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_1T_1__get__17281,684157 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_1T___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_1T___get__17292,684561 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4base_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_4base_1__get__17364,687023 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4base___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_4base___get__17375,687433 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_5shape_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_5shape_1__get__17417,688492 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_5shape___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_5shape___get__17428,688904 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_7strides_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_7strides_1__get__17495,691190 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_7strides___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_7strides___get__17506,691606 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_10suboffsets_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_10suboffsets_1__get__17606,695050 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_10suboffsets___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_10suboffsets___get__17617,695474 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4ndim_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_4ndim_1__get__17721,699024 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4ndim___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_4ndim___get__17732,699434 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_8itemsize_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_8itemsize_1__get__17781,700794 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_8itemsize___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_8itemsize___get__17792,701212 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_6nbytes_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_6nbytes_1__get__17841,702605 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_6nbytes___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_6nbytes___get__17852,703019 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4size_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_4size_1__get__17911,704945 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4size___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_4size___get__17922,705355 +static Py_ssize_t __pyx_memoryview___len__(PyObject *__pyx_v_self) {__pyx_memoryview___len__18049,709000 +static Py_ssize_t __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_10__len__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_10__len__18060,709387 +static PyObject *__pyx_memoryview___repr__(PyObject *__pyx_v_self) {__pyx_memoryview___repr__18129,711135 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_12__repr__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_12__repr__18140,711527 +static PyObject *__pyx_memoryview___str__(PyObject *__pyx_v_self) {__pyx_memoryview___str__18234,715144 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_14__str__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_14__str__18245,715533 +static PyObject *__pyx_memoryview_is_c_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_is_c_contig18310,717945 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_16is_c_contig(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_16is_c_contig18321,718378 +static PyObject *__pyx_memoryview_is_f_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_is_f_contig18381,720478 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_18is_f_contig(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_18is_f_contig18392,720911 +static PyObject *__pyx_memoryview_copy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_copy18452,723073 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_20copy(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_20copy18463,723485 +static PyObject *__pyx_memoryview_copy_fortran(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_copy_fortran18543,726490 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_22copy_fortran(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_22copy_fortran18554,726926 +static PyObject *__pyx_memoryview_new(PyObject *__pyx_v_o, int __pyx_v_flags, int __pyx_v_dtype_is_object, __Pyx_TypeInfo *__pyx_v_typeinfo) {__pyx_memoryview_new18633,729848 +static CYTHON_INLINE int __pyx_memoryview_check(PyObject *__pyx_v_o) {__pyx_memoryview_check18721,733120 +static PyObject *_unellipsify(PyObject *__pyx_v_index, int __pyx_v_ndim) {_unellipsify18760,734184 +static PyObject *assert_direct_dimensions(Py_ssize_t *__pyx_v_suboffsets, int __pyx_v_ndim) {assert_direct_dimensions19219,750062 +static struct __pyx_memoryview_obj *__pyx_memview_slice(struct __pyx_memoryview_obj *__pyx_v_memview, PyObject *__pyx_v_indices) {__pyx_memview_slice19304,752918 +static int __pyx_memoryview_slice_memviewslice(__Pyx_memviewslice *__pyx_v_dst, Py_ssize_t __pyx_v_shape, Py_ssize_t __pyx_v_stride, Py_ssize_t __pyx_v_suboffset, int __pyx_v_dim, int __pyx_v_new_ndim, int *__pyx_v_suboffset_dim, Py_ssize_t __pyx_v_start, Py_ssize_t __pyx_v_stop, Py_ssize_t __pyx_v_step, int __pyx_v_have_start, int __pyx_v_have_stop, int __pyx_v_have_step, int __pyx_v_is_slice) {__pyx_memoryview_slice_memviewslice19881,774677 +static char *__pyx_pybuffer_index(Py_buffer *__pyx_v_view, char *__pyx_v_bufp, Py_ssize_t __pyx_v_index, Py_ssize_t __pyx_v_dim) {__pyx_pybuffer_index20662,796159 +static int __pyx_memslice_transpose(__Pyx_memviewslice *__pyx_v_memslice) {__pyx_memslice_transpose20978,806448 +static void __pyx_memoryviewslice___dealloc__(PyObject *__pyx_v_self) {__pyx_memoryviewslice___dealloc__21149,811719 +static void __pyx_memoryviewslice___pyx_pf_15View_dot_MemoryView_16_memoryviewslice___dealloc__(struct __pyx_memoryviewslice_obj *__pyx_v_self) {__pyx_memoryviewslice___pyx_pf_15View_dot_MemoryView_16_memoryviewslice___dealloc__21158,812081 +static PyObject *__pyx_memoryviewslice_convert_item_to_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp) {__pyx_memoryviewslice_convert_item_to_object21191,813096 +static PyObject *__pyx_memoryviewslice_assign_item_from_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value) {__pyx_memoryviewslice_assign_item_from_object21274,815924 +static PyObject *__pyx_pw_15View_dot_MemoryView_16_memoryviewslice_4base_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_16_memoryviewslice_4base_1__get__21356,818762 +static PyObject *__pyx_pf_15View_dot_MemoryView_16_memoryviewslice_4base___get__(struct __pyx_memoryviewslice_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_16_memoryviewslice_4base___get__21367,819189 +static PyObject *__pyx_memoryview_fromslice(__Pyx_memviewslice __pyx_v_memviewslice, int __pyx_v_ndim, PyObject *(*__pyx_v_to_object_func)(char *), int (*__pyx_v_to_dtype_func)(char *, PyObject *), int __pyx_v_dtype_is_object) {__pyx_memoryview_fromslice21407,820321 +static __Pyx_memviewslice *__pyx_memoryview_get_slice_from_memoryview(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_mslice) {__pyx_memoryview_get_slice_from_memoryview21759,832364 +static void __pyx_memoryview_slice_copy(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_dst) {__pyx_memoryview_slice_copy21859,835693 +static PyObject *__pyx_memoryview_copy_object(struct __pyx_memoryview_obj *__pyx_v_memview) {__pyx_memoryview_copy_object21983,839565 +static PyObject *__pyx_memoryview_copy_object_from_slice(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_memviewslice) {__pyx_memoryview_copy_object_from_slice22040,841530 +static Py_ssize_t abs_py_ssize_t(Py_ssize_t __pyx_v_arg) {abs_py_ssize_t22163,845861 +static char __pyx_get_best_slice_order(__Pyx_memviewslice *__pyx_v_mslice, int __pyx_v_ndim) {__pyx_get_best_slice_order22229,847339 +static void _copy_strided_to_strided(char *__pyx_v_src_data, Py_ssize_t *__pyx_v_src_strides, char *__pyx_v_dst_data, Py_ssize_t *__pyx_v_dst_strides, Py_ssize_t *__pyx_v_src_shape, Py_ssize_t *__pyx_v_dst_shape, int __pyx_v_ndim, size_t __pyx_v_itemsize) {_copy_strided_to_strided22417,852266 +static void copy_strided_to_strided(__Pyx_memviewslice *__pyx_v_src, __Pyx_memviewslice *__pyx_v_dst, int __pyx_v_ndim, size_t __pyx_v_itemsize) {copy_strided_to_strided22651,860543 +static Py_ssize_t __pyx_memoryview_slice_get_size(__Pyx_memviewslice *__pyx_v_src, int __pyx_v_ndim) {__pyx_memoryview_slice_get_size22681,861832 +static Py_ssize_t __pyx_fill_contig_strides_array(Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, Py_ssize_t __pyx_v_stride, int __pyx_v_ndim, char __pyx_v_order) {__pyx_fill_contig_strides_array22751,863752 +static void *__pyx_memoryview_copy_data_to_temp(__Pyx_memviewslice *__pyx_v_src, __Pyx_memviewslice *__pyx_v_tmpslice, char __pyx_v_order, int __pyx_v_ndim) {__pyx_memoryview_copy_data_to_temp22871,867189 +static int __pyx_memoryview_err_extents(int __pyx_v_i, Py_ssize_t __pyx_v_extent1, Py_ssize_t __pyx_v_extent2) {__pyx_memoryview_err_extents23120,874356 +static int __pyx_memoryview_err_dim(PyObject *__pyx_v_error, char *__pyx_v_msg, int __pyx_v_dim) {__pyx_memoryview_err_dim23210,877962 +static int __pyx_memoryview_err(PyObject *__pyx_v_error, char *__pyx_v_msg) {__pyx_memoryview_err23323,882312 +static int __pyx_memoryview_copy_contents(__Pyx_memviewslice __pyx_v_src, __Pyx_memviewslice __pyx_v_dst, int __pyx_v_src_ndim, int __pyx_v_dst_ndim, int __pyx_v_dtype_is_object) {__pyx_memoryview_copy_contents23462,887261 +static void __pyx_memoryview_broadcast_leading(__Pyx_memviewslice *__pyx_v_mslice, int __pyx_v_ndim, int __pyx_v_ndim_other) {__pyx_memoryview_broadcast_leading24036,905423 +static void __pyx_memoryview_refcount_copying(__Pyx_memviewslice *__pyx_v_dst, int __pyx_v_dtype_is_object, int __pyx_v_ndim, int __pyx_v_inc) {__pyx_memoryview_refcount_copying24147,909113 +static void __pyx_memoryview_refcount_objects_in_slice_with_gil(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, int __pyx_v_inc) {__pyx_memoryview_refcount_objects_in_slice_with_gil24197,910832 +static void __pyx_memoryview_refcount_objects_in_slice(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, int __pyx_v_inc) {__pyx_memoryview_refcount_objects_in_slice24236,912445 +static void __pyx_memoryview_slice_assign_scalar(__Pyx_memviewslice *__pyx_v_dst, int __pyx_v_ndim, size_t __pyx_v_itemsize, void *__pyx_v_item, int __pyx_v_dtype_is_object) {__pyx_memoryview_slice_assign_scalar24366,916394 +static void __pyx_memoryview__slice_assign_scalar(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, size_t __pyx_v_itemsize, void *__pyx_v_item) {__pyx_memoryview__slice_assign_scalar24414,918504 +static PyObject *__pyx_tp_new_6pyisda_5curve_Curve(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {__pyx_tp_new_6pyisda_5curve_Curve24534,922234 +static void __pyx_tp_dealloc_6pyisda_5curve_Curve(PyObject *o) {__pyx_tp_dealloc_6pyisda_5curve_Curve24548,922749 +static PyObject *__pyx_getprop_6pyisda_5curve_5Curve_forward_hazard_rates(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop_6pyisda_5curve_5Curve_forward_hazard_rates24559,923172 +static PyObject *__pyx_getprop_6pyisda_5curve_5Curve_base_date(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop_6pyisda_5curve_5Curve_base_date24563,923363 +static PyMethodDef __pyx_methods_6pyisda_5curve_Curve[] = {__pyx_methods_6pyisda_5curve_Curve24567,923531 +static struct PyGetSetDef __pyx_getsets_6pyisda_5curve_Curve[] = {__pyx_getsets_6pyisda_5curve_Curve24577,924440 +static PySequenceMethods __pyx_tp_as_sequence_Curve = {__pyx_tp_as_sequence_Curve24583,924729 +static PyMappingMethods __pyx_tp_as_mapping_Curve = {__pyx_tp_as_mapping_Curve24596,925038 +static PyTypeObject __pyx_type_6pyisda_5curve_Curve = {__pyx_type_6pyisda_5curve_Curve24602,925202 +static PyObject *__pyx_tp_new_6pyisda_5curve_YieldCurve(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_6pyisda_5curve_YieldCurve24660,926793 +static void __pyx_tp_dealloc_6pyisda_5curve_YieldCurve(PyObject *o) {__pyx_tp_dealloc_6pyisda_5curve_YieldCurve24666,926999 +static PyObject *__pyx_getprop_6pyisda_5curve_10YieldCurve_dates(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop_6pyisda_5curve_10YieldCurve_dates24683,927530 +static PyMethodDef __pyx_methods_6pyisda_5curve_YieldCurve[] = {__pyx_methods_6pyisda_5curve_YieldCurve24687,927702 +static struct PyGetSetDef __pyx_getsets_6pyisda_5curve_YieldCurve[] = {__pyx_getsets_6pyisda_5curve_YieldCurve24695,928454 +static PyTypeObject __pyx_type_6pyisda_5curve_YieldCurve = {__pyx_type_6pyisda_5curve_YieldCurve24700,928685 +static PyObject *__pyx_tp_new_6pyisda_5curve_SpreadCurve(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_6pyisda_5curve_SpreadCurve24762,931468 +static PyMethodDef __pyx_methods_6pyisda_5curve_SpreadCurve[] = {__pyx_methods_6pyisda_5curve_SpreadCurve24768,931675 +static PyTypeObject __pyx_type_6pyisda_5curve_SpreadCurve = {__pyx_type_6pyisda_5curve_SpreadCurve24775,932267 +static struct __pyx_obj_6pyisda_5curve___pyx_scope_struct____iter__ *__pyx_freelist_6pyisda_5curve___pyx_scope_struct____iter__[8];__pyx_freelist_6pyisda_5curve___pyx_scope_struct____iter__24837,934623 +static int __pyx_freecount_6pyisda_5curve___pyx_scope_struct____iter__ = 0;__pyx_freecount_6pyisda_5curve___pyx_scope_struct____iter__24838,934755 +static PyObject *__pyx_tp_new_6pyisda_5curve___pyx_scope_struct____iter__(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {__pyx_tp_new_6pyisda_5curve___pyx_scope_struct____iter__24840,934832 +static void __pyx_tp_dealloc_6pyisda_5curve___pyx_scope_struct____iter__(PyObject *o) {__pyx_tp_dealloc_6pyisda_5curve___pyx_scope_struct____iter__24854,935580 +static int __pyx_tp_traverse_6pyisda_5curve___pyx_scope_struct____iter__(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_6pyisda_5curve___pyx_scope_struct____iter__24865,936313 +static int __pyx_tp_clear_6pyisda_5curve___pyx_scope_struct____iter__(PyObject *o) {__pyx_tp_clear_6pyisda_5curve___pyx_scope_struct____iter__24874,936675 +static PyTypeObject __pyx_type_6pyisda_5curve___pyx_scope_struct____iter__ = {__pyx_type_6pyisda_5curve___pyx_scope_struct____iter__24883,937076 +static PyObject *__pyx_tp_new___Pyx_EnumMeta(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new___Pyx_EnumMeta24941,938702 +static void __pyx_tp_dealloc___Pyx_EnumMeta(PyObject *o) {__pyx_tp_dealloc___Pyx_EnumMeta24947,938886 +static int __pyx_tp_traverse___Pyx_EnumMeta(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse___Pyx_EnumMeta24958,939199 +static int __pyx_tp_clear___Pyx_EnumMeta(PyObject *o) {__pyx_tp_clear___Pyx_EnumMeta24964,939407 +static PyObject *__pyx_sq_item___Pyx_EnumMeta(PyObject *o, Py_ssize_t i) {__pyx_sq_item___Pyx_EnumMeta24968,939545 +static PyMethodDef __pyx_methods___Pyx_EnumMeta[] = {__pyx_methods___Pyx_EnumMeta24976,939774 +static PySequenceMethods __pyx_tp_as_sequence___Pyx_EnumMeta = {__pyx_tp_as_sequence___Pyx_EnumMeta24980,939847 +static PyMappingMethods __pyx_tp_as_mapping___Pyx_EnumMeta = {__pyx_tp_as_mapping___Pyx_EnumMeta24993,940153 +static PyTypeObject __Pyx_EnumMeta = {__Pyx_EnumMeta24999,940334 +static struct __pyx_vtabstruct_array __pyx_vtable_array;__pyx_vtable_array25056,941964 +static PyObject *__pyx_tp_new_array(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_array25058,942022 +static void __pyx_tp_dealloc_array(PyObject *o) {__pyx_tp_dealloc_array25078,942664 +static PyObject *__pyx_sq_item_array(PyObject *o, Py_ssize_t i) {__pyx_sq_item_array25097,943237 +static int __pyx_mp_ass_subscript_array(PyObject *o, PyObject *i, PyObject *v) {__pyx_mp_ass_subscript_array25105,943457 +static PyObject *__pyx_tp_getattro_array(PyObject *o, PyObject *n) {__pyx_tp_getattro_array25116,943747 +static PyObject *__pyx_getprop___pyx_array_memview(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_array_memview25125,944000 +static PyMethodDef __pyx_methods_array[] = {__pyx_methods_array25129,944161 +static struct PyGetSetDef __pyx_getsets_array[] = {__pyx_getsets_array25134,944306 +static PySequenceMethods __pyx_tp_as_sequence_array = {__pyx_tp_as_sequence_array25139,944455 +static PyMappingMethods __pyx_tp_as_mapping_array = {__pyx_tp_as_mapping_array25152,944743 +static PyBufferProcs __pyx_tp_as_buffer_array = {__pyx_tp_as_buffer_array25158,944917 +static PyTypeObject __pyx_type___pyx_array = {__pyx_type___pyx_array25175,945286 +static PyObject *__pyx_tp_new_Enum(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {__pyx_tp_new_Enum25233,946760 +static void __pyx_tp_dealloc_Enum(PyObject *o) {__pyx_tp_dealloc_Enum25247,947225 +static int __pyx_tp_traverse_Enum(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_Enum25259,947592 +static int __pyx_tp_clear_Enum(PyObject *o) {__pyx_tp_clear_Enum25268,947822 +static PyMethodDef __pyx_methods_Enum[] = {__pyx_methods_Enum25277,948061 +static PyTypeObject __pyx_type___pyx_MemviewEnum = {__pyx_type___pyx_MemviewEnum25281,948124 +static struct __pyx_vtabstruct_memoryview __pyx_vtable_memoryview;__pyx_vtable_memoryview25338,949598 +static PyObject *__pyx_tp_new_memoryview(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_memoryview25340,949666 +static void __pyx_tp_dealloc_memoryview(PyObject *o) {__pyx_tp_dealloc_memoryview25362,950379 +static int __pyx_tp_traverse_memoryview(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_memoryview25384,950998 +static int __pyx_tp_clear_memoryview(PyObject *o) {__pyx_tp_clear_memoryview25402,951456 +static PyObject *__pyx_sq_item_memoryview(PyObject *o, Py_ssize_t i) {__pyx_sq_item_memoryview25417,951927 +static int __pyx_mp_ass_subscript_memoryview(PyObject *o, PyObject *i, PyObject *v) {__pyx_mp_ass_subscript_memoryview25425,952152 +static PyObject *__pyx_getprop___pyx_memoryview_T(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_T25436,952452 +static PyObject *__pyx_getprop___pyx_memoryview_base(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_base25440,952612 +static PyObject *__pyx_getprop___pyx_memoryview_shape(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_shape25444,952778 +static PyObject *__pyx_getprop___pyx_memoryview_strides(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_strides25448,952946 +static PyObject *__pyx_getprop___pyx_memoryview_suboffsets(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_suboffsets25452,953118 +static PyObject *__pyx_getprop___pyx_memoryview_ndim(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_ndim25456,953297 +static PyObject *__pyx_getprop___pyx_memoryview_itemsize(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_itemsize25460,953463 +static PyObject *__pyx_getprop___pyx_memoryview_nbytes(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_nbytes25464,953637 +static PyObject *__pyx_getprop___pyx_memoryview_size(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_size25468,953807 +static PyMethodDef __pyx_methods_memoryview[] = {__pyx_methods_memoryview25472,953973 +static struct PyGetSetDef __pyx_getsets_memoryview[] = {__pyx_getsets_memoryview25480,954342 +static PySequenceMethods __pyx_tp_as_sequence_memoryview = {__pyx_tp_as_sequence_memoryview25493,955113 +static PyMappingMethods __pyx_tp_as_mapping_memoryview = {__pyx_tp_as_mapping_memoryview25506,955434 +static PyBufferProcs __pyx_tp_as_buffer_memoryview = {__pyx_tp_as_buffer_memoryview25512,955646 +static PyTypeObject __pyx_type___pyx_memoryview = {__pyx_type___pyx_memoryview25529,956025 +static struct __pyx_vtabstruct__memoryviewslice __pyx_vtable__memoryviewslice;__pyx_vtable__memoryviewslice25586,957643 +static PyObject *__pyx_tp_new__memoryviewslice(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new__memoryviewslice25588,957723 +static void __pyx_tp_dealloc__memoryviewslice(PyObject *o) {__pyx_tp_dealloc__memoryviewslice25599,958174 +static int __pyx_tp_traverse__memoryviewslice(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse__memoryviewslice25620,958796 +static int __pyx_tp_clear__memoryviewslice(PyObject *o) {__pyx_tp_clear__memoryviewslice25630,959122 +static PyObject *__pyx_getprop___pyx_memoryviewslice_base(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryviewslice_base25641,959468 +static PyMethodDef __pyx_methods__memoryviewslice[] = {__pyx_methods__memoryviewslice25645,959645 +static struct PyGetSetDef __pyx_getsets__memoryviewslice[] = {__pyx_getsets__memoryviewslice25649,959720 +static PyTypeObject __pyx_type___pyx_memoryviewslice = {__pyx_type___pyx_memoryviewslice25654,959884 +static PyMethodDef __pyx_methods[] = {__pyx_methods25720,961649 +static struct PyModuleDef __pyx_moduledef = {__pyx_moduledef25725,961733 +static __Pyx_StringTabEntry __pyx_string_tab[] = {__pyx_string_tab25742,962102 +static int __Pyx_InitCachedBuiltins(void) {__Pyx_InitCachedBuiltins25920,978450 +static int __Pyx_InitCachedConstants(void) {__Pyx_InitCachedConstants25937,980004 +static int __Pyx_InitGlobals(void) {__Pyx_InitGlobals26438,1002660 +PyMODINIT_FUNC initcurve(void)initcurve26451,1003280 +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {__Pyx_RefNannyImportAPI27749,1064769 +static PyObject *__Pyx_GetBuiltinName(PyObject *name) {__Pyx_GetBuiltinName27765,1065197 +static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) {__Pyx_RaiseTooManyValuesError27779,1065603 +static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {__Pyx_RaiseNeedMoreValuesError27785,1065850 +static CYTHON_INLINE int __Pyx_IterFinish(void) {__Pyx_IterFinish27792,1066115 +static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) {__Pyx_IternextUnpackEndCheck27827,1067145 +static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name) {__Pyx_GetModuleGlobalName27839,1067446 +static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) {__Pyx_PyCFunction_FastCall27858,1067911 +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,__Pyx_PyFunction_FastCallNoKw27877,1068789 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) {__Pyx_PyFunction_FastCallDict27906,1069718 +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {__Pyx_PyObject_Call27996,1072601 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallMethO28016,1073275 +static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx__PyObject_CallOneArg28036,1073931 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg28046,1074255 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg28068,1074999 + static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {__Pyx_TypeTest28079,1075312 + static CYTHON_INLINE int __Pyx_IsLittleEndian(void) {__Pyx_IsLittleEndian28092,1075742 +static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx,__Pyx_BufFmt_Init28096,1075861 +static int __Pyx_BufFmt_ParseNumber(const char** ts) {__Pyx_BufFmt_ParseNumber28123,1076645 +static int __Pyx_BufFmt_ExpectNumber(const char **ts) {__Pyx_BufFmt_ExpectNumber28138,1076977 +static void __Pyx_BufFmt_RaiseUnexpectedChar(char ch) {__Pyx_BufFmt_RaiseUnexpectedChar28145,1077258 +static const char* __Pyx_BufFmt_DescribeTypeChar(char ch, int is_complex) {__Pyx_BufFmt_DescribeTypeChar28149,1077413 +static size_t __Pyx_BufFmt_TypeCharToStandardSize(char ch, int is_complex) {__Pyx_BufFmt_TypeCharToStandardSize28173,1078352 +static size_t __Pyx_BufFmt_TypeCharToNativeSize(char ch, int is_complex) {__Pyx_BufFmt_TypeCharToNativeSize28191,1079014 +typedef struct { char c; short x; } __Pyx_st_short;c28210,1079711 +typedef struct { char c; short x; } __Pyx_st_short;x28210,1079711 +typedef struct { char c; short x; } __Pyx_st_short;__Pyx_st_short28210,1079711 +typedef struct { char c; int x; } __Pyx_st_int;c28211,1079763 +typedef struct { char c; int x; } __Pyx_st_int;x28211,1079763 +typedef struct { char c; int x; } __Pyx_st_int;__Pyx_st_int28211,1079763 +typedef struct { char c; long x; } __Pyx_st_long;c28212,1079811 +typedef struct { char c; long x; } __Pyx_st_long;x28212,1079811 +typedef struct { char c; long x; } __Pyx_st_long;__Pyx_st_long28212,1079811 +typedef struct { char c; float x; } __Pyx_st_float;c28213,1079861 +typedef struct { char c; float x; } __Pyx_st_float;x28213,1079861 +typedef struct { char c; float x; } __Pyx_st_float;__Pyx_st_float28213,1079861 +typedef struct { char c; double x; } __Pyx_st_double;c28214,1079913 +typedef struct { char c; double x; } __Pyx_st_double;x28214,1079913 +typedef struct { char c; double x; } __Pyx_st_double;__Pyx_st_double28214,1079913 +typedef struct { char c; long double x; } __Pyx_st_longdouble;c28215,1079967 +typedef struct { char c; long double x; } __Pyx_st_longdouble;x28215,1079967 +typedef struct { char c; long double x; } __Pyx_st_longdouble;__Pyx_st_longdouble28215,1079967 +typedef struct { char c; void *x; } __Pyx_st_void_p;c28216,1080030 +typedef struct { char c; void *x; } __Pyx_st_void_p;x28216,1080030 +typedef struct { char c; void *x; } __Pyx_st_void_p;__Pyx_st_void_p28216,1080030 +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;c28218,1080105 +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;x28218,1080105 +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;__Pyx_st_longlong28218,1080105 +static size_t __Pyx_BufFmt_TypeCharToAlignment(char ch, CYTHON_UNUSED int is_complex) {__Pyx_BufFmt_TypeCharToAlignment28220,1080174 +typedef struct { short x; char c; } __Pyx_pad_short;x28242,1081208 +typedef struct { short x; char c; } __Pyx_pad_short;c28242,1081208 +typedef struct { short x; char c; } __Pyx_pad_short;__Pyx_pad_short28242,1081208 +typedef struct { int x; char c; } __Pyx_pad_int;x28243,1081261 +typedef struct { int x; char c; } __Pyx_pad_int;c28243,1081261 +typedef struct { int x; char c; } __Pyx_pad_int;__Pyx_pad_int28243,1081261 +typedef struct { long x; char c; } __Pyx_pad_long;x28244,1081310 +typedef struct { long x; char c; } __Pyx_pad_long;c28244,1081310 +typedef struct { long x; char c; } __Pyx_pad_long;__Pyx_pad_long28244,1081310 +typedef struct { float x; char c; } __Pyx_pad_float;x28245,1081361 +typedef struct { float x; char c; } __Pyx_pad_float;c28245,1081361 +typedef struct { float x; char c; } __Pyx_pad_float;__Pyx_pad_float28245,1081361 +typedef struct { double x; char c; } __Pyx_pad_double;x28246,1081414 +typedef struct { double x; char c; } __Pyx_pad_double;c28246,1081414 +typedef struct { double x; char c; } __Pyx_pad_double;__Pyx_pad_double28246,1081414 +typedef struct { long double x; char c; } __Pyx_pad_longdouble;x28247,1081469 +typedef struct { long double x; char c; } __Pyx_pad_longdouble;c28247,1081469 +typedef struct { long double x; char c; } __Pyx_pad_longdouble;__Pyx_pad_longdouble28247,1081469 +typedef struct { void *x; char c; } __Pyx_pad_void_p;x28248,1081533 +typedef struct { void *x; char c; } __Pyx_pad_void_p;c28248,1081533 +typedef struct { void *x; char c; } __Pyx_pad_void_p;__Pyx_pad_void_p28248,1081533 +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;x28250,1081609 +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;c28250,1081609 +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;__Pyx_pad_longlong28250,1081609 +static size_t __Pyx_BufFmt_TypeCharToPadding(char ch, CYTHON_UNUSED int is_complex) {__Pyx_BufFmt_TypeCharToPadding28252,1081679 +static char __Pyx_BufFmt_TypeCharToGroup(char ch, int is_complex) {__Pyx_BufFmt_TypeCharToGroup28270,1082529 +static void __Pyx_BufFmt_RaiseExpected(__Pyx_BufFmt_Context* ctx) {__Pyx_BufFmt_RaiseExpected28291,1083049 +static int __Pyx_BufFmt_ProcessTypeChunk(__Pyx_BufFmt_Context* ctx) {__Pyx_BufFmt_ProcessTypeChunk28315,1083996 +__pyx_buffmt_parse_array(__Pyx_BufFmt_Context* ctx, const char** tsp)__pyx_buffmt_parse_array28418,1087789 +static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts) {__Pyx_BufFmt_CheckString28461,1089382 +static CYTHON_INLINE void __Pyx_ZeroBuffer(Py_buffer* buf) {__Pyx_ZeroBuffer28594,1093398 +static CYTHON_INLINE int __Pyx_GetBufferAndValidate(__Pyx_GetBufferAndValidate28601,1093594 +static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info) {__Pyx_SafeReleaseBuffer28635,1094775 +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {__Pyx_ErrRestoreInState28643,1095036 +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx_ErrFetchInState28655,1095496 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb,__Pyx_Raise28667,1095878 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {__Pyx_Raise28718,1097358 + static void __Pyx_RaiseDoubleKeywordsError(__Pyx_RaiseDoubleKeywordsError28829,1101015 + static int __Pyx_ParseOptionalKeywords(__Pyx_ParseOptionalKeywords28843,1101432 + static void __Pyx_RaiseArgtupleInvalid(__Pyx_RaiseArgtupleInvalid28945,1105021 + static void __Pyx_RaiseArgumentTypeInvalid(const char* name, PyObject *obj, PyTypeObject *type) {__Pyx_RaiseArgumentTypeInvalid28971,1105786 +static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed,__Pyx_ArgTypeTest28976,1106059 + static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {__Pyx_GetItemInt_Generic28998,1106755 +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,__Pyx_GetItemInt_List_Fast29005,1106955 +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,__Pyx_GetItemInt_Tuple_Fast29020,1107637 +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list,__Pyx_GetItemInt_Fast29035,1108323 + static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) {__Pyx_PyBytes_Equals29079,1110046 + static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) {__Pyx_PyUnicode_Equals29117,1111359 + static void __Pyx_RaiseBufferIndexError(int axis) {__Pyx_RaiseBufferIndexError29201,1114082 +__Pyx_init_memviewslice(struct __pyx_memoryview_obj *memview,__Pyx_init_memviewslice29208,1114276 +static CYTHON_INLINE void __pyx_fatalerror(const char *fmt, ...) {__pyx_fatalerror29260,1115877 +__pyx_add_acquisition_count_locked(__pyx_atomic_int *acquisition_count,__pyx_add_acquisition_count_locked29273,1116179 +__pyx_sub_acquisition_count_locked(__pyx_atomic_int *acquisition_count,__pyx_sub_acquisition_count_locked29283,1116481 +__Pyx_INC_MEMVIEW(__Pyx_memviewslice *memslice, int have_gil, int lineno)__Pyx_INC_MEMVIEW29293,1116784 +static CYTHON_INLINE void __Pyx_XDEC_MEMVIEW(__Pyx_memviewslice *memslice,__Pyx_XDEC_MEMVIEW29313,1117519 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) {__Pyx_PyObject_CallNoArg29343,1118529 + static CYTHON_INLINE PyObject* __Pyx_PyObject_GetSlice(PyObject* obj,__Pyx_PyObject_GetSlice29363,1119137 +static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED int inplace) {__Pyx_PyInt_AddObjC29461,1122494 + static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) {__Pyx_RaiseNoneNotIterableError29576,1128148 +static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx__ExceptionSave29582,1128366 +static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {__Pyx__ExceptionReset29590,1128653 +static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) {__Pyx_PyErr_ExceptionMatchesInState29606,1129168 +static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx__GetException29616,1129512 + static CYTHON_INLINE Py_ssize_t __Pyx_div_Py_ssize_t(Py_ssize_t a, Py_ssize_t b) {__Pyx_div_Py_ssize_t29676,1131203 + static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) {__Pyx_GetAttr29684,1131420 + static CYTHON_INLINE PyObject* __Pyx_decode_c_string(__Pyx_decode_c_string29697,1131762 +static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx__ExceptionSwap29731,1132916 +static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) {__Pyx_ExceptionSwap29744,1133354 + static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {__Pyx_Import29755,1133680 + static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname) {__Pyx_RaiseUnboundLocalError29829,1135964 + static CYTHON_INLINE long __Pyx_div_long(long a, long b) {__Pyx_div_long29834,1136172 + static void __Pyx_WriteUnraisable(const char *name, CYTHON_UNUSED int clineno,__Pyx_WriteUnraisable29842,1136370 + static int __Pyx_SetVtable(PyObject *dict, void *vtable) {__Pyx_SetVtable29884,1137578 + static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name) {__Pyx_ImportFrom29902,1137998 + static PyObject *__Pyx_GetNameInClass(PyObject *nmspace, PyObject *name) {__Pyx_GetNameInClass29916,1138481 + static PyObject* __Pyx_Method_ClassMethod(PyObject *method) {__Pyx_Method_ClassMethod29925,1138752 + static PyObject *__Pyx_CalculateMetaclass(PyTypeObject *metaclass, PyObject *bases) {__Pyx_CalculateMetaclass29970,1140258 + static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type) {__Pyx_FetchCommonType30009,1141460 +__Pyx_CyFunction_get_doc(__pyx_CyFunctionObject *op, CYTHON_UNUSED void *closure)__Pyx_CyFunction_get_doc30049,1142825 +__Pyx_CyFunction_set_doc(__pyx_CyFunctionObject *op, PyObject *value)__Pyx_CyFunction_set_doc30069,1143407 +__Pyx_CyFunction_get_name(__pyx_CyFunctionObject *op)__Pyx_CyFunction_get_name30081,1143672 +__Pyx_CyFunction_set_name(__pyx_CyFunctionObject *op, PyObject *value)__Pyx_CyFunction_set_name30096,1144106 +__Pyx_CyFunction_get_qualname(__pyx_CyFunctionObject *op)__Pyx_CyFunction_get_qualname30115,1144623 +__Pyx_CyFunction_set_qualname(__pyx_CyFunctionObject *op, PyObject *value)__Pyx_CyFunction_set_qualname30121,1144760 +__Pyx_CyFunction_get_self(__pyx_CyFunctionObject *m, CYTHON_UNUSED void *closure)__Pyx_CyFunction_get_self30140,1145293 +__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op)__Pyx_CyFunction_get_dict30150,1145529 +__Pyx_CyFunction_set_dict(__pyx_CyFunctionObject *op, PyObject *value)__Pyx_CyFunction_set_dict30161,1145811 +__Pyx_CyFunction_get_globals(__pyx_CyFunctionObject *op)__Pyx_CyFunction_get_globals30181,1146364 +__Pyx_CyFunction_get_closure(CYTHON_UNUSED __pyx_CyFunctionObject *op)__Pyx_CyFunction_get_closure30187,1146505 +__Pyx_CyFunction_get_code(__pyx_CyFunctionObject *op)__Pyx_CyFunction_get_code30193,1146642 +__Pyx_CyFunction_init_defaults(__pyx_CyFunctionObject *op) {__Pyx_CyFunction_init_defaults30200,1146819 +__Pyx_CyFunction_set_defaults(__pyx_CyFunctionObject *op, PyObject* value) {__Pyx_CyFunction_set_defaults30222,1147544 +__Pyx_CyFunction_get_defaults(__pyx_CyFunctionObject *op) {__Pyx_CyFunction_get_defaults30238,1148019 +__Pyx_CyFunction_set_kwdefaults(__pyx_CyFunctionObject *op, PyObject* value) {__Pyx_CyFunction_set_kwdefaults30252,1148414 +__Pyx_CyFunction_get_kwdefaults(__pyx_CyFunctionObject *op) {__Pyx_CyFunction_get_kwdefaults30268,1148893 +__Pyx_CyFunction_set_annotations(__pyx_CyFunctionObject *op, PyObject* value) {__Pyx_CyFunction_set_annotations30282,1149292 +__Pyx_CyFunction_get_annotations(__pyx_CyFunctionObject *op) {__Pyx_CyFunction_get_annotations30298,1149773 +static PyGetSetDef __pyx_CyFunction_getsets[] = {__pyx_CyFunction_getsets30308,1150074 +static PyMemberDef __pyx_CyFunction_members[] = {__pyx_CyFunction_members30329,1151878 +__Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, CYTHON_UNUSED PyObject *args)__Pyx_CyFunction_reduce30334,1152082 +static PyMethodDef __pyx_CyFunction_methods[] = {__pyx_CyFunction_methods30342,1152317 +#define __Pyx_CyFunction_weakreflist(__Pyx_CyFunction_weakreflist30347,1152494 +#define __Pyx_CyFunction_weakreflist(__Pyx_CyFunction_weakreflist30349,1152574 +static PyObject *__Pyx_CyFunction_New(PyTypeObject *type, PyMethodDef *ml, int flags, PyObject* qualname,__Pyx_CyFunction_New30351,1152657 +__Pyx_CyFunction_clear(__pyx_CyFunctionObject *m)__Pyx_CyFunction_clear30384,1153772 +static void __Pyx_CyFunction_dealloc(__pyx_CyFunctionObject *m)__Pyx_CyFunction_dealloc30408,1154484 +static int __Pyx_CyFunction_traverse(__pyx_CyFunctionObject *m, visitproc visit, void *arg)__Pyx_CyFunction_traverse30416,1154732 +static PyObject *__Pyx_CyFunction_descr_get(PyObject *func, PyObject *obj, PyObject *type)__Pyx_CyFunction_descr_get30437,1155385 +__Pyx_CyFunction_repr(__pyx_CyFunctionObject *op)__Pyx_CyFunction_repr30454,1155964 +static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) {__Pyx_CyFunction_CallMethod30464,1156316 +static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) {__Pyx_CyFunction_Call30512,1158248 +static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) {__Pyx_CyFunction_CallAsMethod30515,1158441 +static PyTypeObject __pyx_CyFunctionType_type = {__pyx_CyFunctionType_type30538,1159296 +static int __pyx_CyFunction_init(void) {__pyx_CyFunction_init30598,1160331 +static CYTHON_INLINE void *__Pyx_CyFunction_InitDefaults(PyObject *func, size_t size, int pyobjects) {__Pyx_CyFunction_InitDefaults30605,1160531 +static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsTuple(PyObject *func, PyObject *tuple) {__Pyx_CyFunction_SetDefaultsTuple30614,1160894 +static CYTHON_INLINE void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *func, PyObject *dict) {__Pyx_CyFunction_SetDefaultsKwDict30619,1161109 +static CYTHON_INLINE void __Pyx_CyFunction_SetAnnotationsDict(PyObject *func, PyObject *dict) {__Pyx_CyFunction_SetAnnotationsDict30624,1161323 + static PyObject *__Pyx_Py3MetaclassPrepare(PyObject *metaclass, PyObject *bases, PyObject *name,__Pyx_Py3MetaclassPrepare30631,1161561 +static PyObject *__Pyx_Py3ClassCreate(PyObject *metaclass, PyObject *name, PyObject *bases,__Pyx_Py3ClassCreate30664,1162793 + static PyObject* __Pyx_Globals(void) {__Pyx_Globals30698,1164001 + static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {__pyx_bisect_code_objects30743,1165123 +static PyCodeObject *__pyx_find_code_object(int code_line) {__pyx_find_code_object30764,1165770 +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {__pyx_insert_code_object30778,1166330 +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(__Pyx_CreateCodeObjectForTraceback30826,1168134 +static void __Pyx_AddTraceback(const char *funcname, int c_line,__Pyx_AddTraceback30878,1169743 + #define __PYX_VERIFY_RETURN_INT(__PYX_VERIFY_RETURN_INT30904,1170671 +#define __PYX_VERIFY_RETURN_INT_EXC(__PYX_VERIFY_RETURN_INT_EXC30906,1170826 +#define __PYX__VERIFY_RETURN_INT(__PYX__VERIFY_RETURN_INT30908,1170967 +static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags) {__Pyx_GetBuffer30926,1171645 +static void __Pyx_ReleaseBuffer(Py_buffer *view) {__Pyx_ReleaseBuffer30934,1172266 +__pyx_memviewslice_is_contig(const __Pyx_memviewslice mvs,__pyx_memviewslice_is_contig30950,1172721 +__pyx_get_array_memory_extents(__Pyx_memviewslice *slice,__pyx_get_array_memory_extents30973,1173321 +__pyx_slices_overlap(__Pyx_memviewslice *slice1,__pyx_slices_overlap30997,1174024 +__pyx_capsule_create(void *p, CYTHON_UNUSED const char *sig)__pyx_capsule_create31009,1174479 +__pyx_typeinfo_cmp(__Pyx_TypeInfo *a, __Pyx_TypeInfo *b)__pyx_typeinfo_cmp31022,1174762 +__pyx_check_strides(Py_buffer *buf, int dim, int ndim, int spec)__pyx_check_strides31063,1176042 +__pyx_check_suboffsets(Py_buffer *buf, int dim, CYTHON_UNUSED int ndim, int spec)__pyx_check_suboffsets31116,1178039 +__pyx_verify_contig(Py_buffer *buf, int ndim, int c_or_f_flag)__pyx_verify_contig31139,1178785 +static int __Pyx_ValidateAndInit_memviewslice(__Pyx_ValidateAndInit_memviewslice31170,1179749 + static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_ds_double(PyObject *obj) {__Pyx_PyObject_to_MemoryviewSlice_ds_double31244,1182455 + static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_dc_int(PyObject *obj) {__Pyx_PyObject_to_MemoryviewSlice_dc_int31267,1183351 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {__Pyx_PyInt_From_int31290,1184283 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_TDate(TDate value) {__Pyx_PyInt_From_TDate31321,1185433 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {__Pyx_PyInt_From_long31352,1186605 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_Py_intptr_t(Py_intptr_t value) {__Pyx_PyInt_From_Py_intptr_t31383,1187766 + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {__pyx_t_float_complex_from_parts31416,1189067 + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {__pyx_t_float_complex_from_parts31420,1189225 + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {__pyx_t_float_complex_from_parts31425,1189400 + static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_eq_float31436,1189658 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_sum_float31439,1189818 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_diff_float31445,1190060 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_prod_float31451,1190303 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_quot_float31458,1190592 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_quot_float31478,1191536 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex a) {__Pyx_c_neg_float31489,1192049 + static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex a) {__Pyx_c_is_zero_float31495,1192250 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex a) {__Pyx_c_conj_float31498,1192380 + static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex z) {__Pyx_c_abs_float31505,1192592 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_pow_float31512,1192871 + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {__pyx_t_double_complex_from_parts31571,1195013 + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {__pyx_t_double_complex_from_parts31575,1195176 + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {__pyx_t_double_complex_from_parts31580,1195356 + static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_eq_double31591,1195619 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_sum_double31594,1195782 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_diff_double31600,1196029 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_prod_double31606,1196277 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_quot_double31613,1196571 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_quot_double31633,1197525 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex a) {__Pyx_c_neg_double31644,1198045 + static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex a) {__Pyx_c_is_zero_double31650,1198250 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex a) {__Pyx_c_conj_double31653,1198382 + static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex z) {__Pyx_c_abs_double31660,1198598 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_pow_double31667,1198878 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__NPY_TYPES(enum NPY_TYPES value) {__Pyx_PyInt_From_enum__NPY_TYPES31724,1200964 + static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {__Pyx_PyInt_As_long31755,1202238 +__pyx_memoryview_copy_new_contig(const __Pyx_memviewslice *from_mvs,__pyx_memoryview_copy_new_contig31945,1212130 + static CYTHON_INLINE enum BadDay __Pyx_PyInt_As_enum__BadDay(PyObject *x) {__Pyx_PyInt_As_enum__BadDay32011,1214556 + static CYTHON_INLINE enum __pyx_t_6pyisda_5curve_Basis __Pyx_PyInt_As_enum____pyx_t_6pyisda_5curve_Basis(PyObject *x) {__Pyx_PyInt_As_enum____pyx_t_6pyisda_5curve_Basis32200,1225071 + static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {__Pyx_PyInt_As_int32389,1237720 + static CYTHON_INLINE TDate __Pyx_PyInt_As_TDate(PyObject *x) {__Pyx_PyInt_As_TDate32578,1247457 + static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) {__Pyx_PyInt_As_size_t32767,1257388 + static CYTHON_INLINE char __Pyx_PyInt_As_char(PyObject *x) {__Pyx_PyInt_As_char32956,1267416 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__BadDay(enum BadDay value) {__Pyx_PyInt_From_enum__BadDay33145,1277248 + static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) {__Pyx_PyObject_CallMethod133176,1278498 +#define __Pyx_Coroutine_Undelegate(__Pyx_Coroutine_Undelegate33227,1280397 +static int __Pyx_PyGen_FetchStopIterationValue(PyObject **pvalue) {__Pyx_PyGen_FetchStopIterationValue33229,1280501 +void __Pyx_Coroutine_ExceptionClear(__pyx_CoroutineObject *self) {__Pyx_Coroutine_ExceptionClear33312,1282872 +int __Pyx_Coroutine_CheckRunning(__pyx_CoroutineObject *gen) {__Pyx_Coroutine_CheckRunning33324,1283268 +PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value) {__Pyx_Coroutine_SendEx33333,1283527 +PyObject *__Pyx_Coroutine_MethodReturn(PyObject *retval) {__Pyx_Coroutine_MethodReturn33386,1285322 +PyObject *__Pyx_Coroutine_FinishDelegation(__pyx_CoroutineObject *gen) {__Pyx_Coroutine_FinishDelegation33393,1285523 +static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value) {__Pyx_Coroutine_Send33402,1285808 +static int __Pyx_Coroutine_CloseIter(__pyx_CoroutineObject *gen, PyObject *yf) {__Pyx_Coroutine_CloseIter33437,1286937 +static PyObject *__Pyx_Generator_Next(PyObject *self) {__Pyx_Generator_Next33474,1287974 +static PyObject *__Pyx_Coroutine_Close(PyObject *self) {__Pyx_Coroutine_Close33496,1288674 +static PyObject *__Pyx_Coroutine_Throw(PyObject *self, PyObject *args) {__Pyx_Coroutine_Throw33531,1289860 +static int __Pyx_Coroutine_traverse(PyObject *self, visitproc visit, void *arg) {__Pyx_Coroutine_traverse33590,1291928 +static int __Pyx_Coroutine_clear(PyObject *self) {__Pyx_Coroutine_clear33600,1292271 +static void __Pyx_Coroutine_dealloc(PyObject *self) {__Pyx_Coroutine_dealloc33612,1292643 +static void __Pyx_Coroutine_del(PyObject *self) {__Pyx_Coroutine_del33633,1293243 +__Pyx_Coroutine_get_name(__pyx_CoroutineObject *self)__Pyx_Coroutine_get_name33674,1294433 +__Pyx_Coroutine_set_name(__pyx_CoroutineObject *self, PyObject *value)__Pyx_Coroutine_set_name33682,1294617 +__Pyx_Coroutine_get_qualname(__pyx_CoroutineObject *self)__Pyx_Coroutine_get_qualname33701,1295134 +__Pyx_Coroutine_set_qualname(__pyx_CoroutineObject *self, PyObject *value)__Pyx_Coroutine_set_qualname33709,1295326 +static __pyx_CoroutineObject *__Pyx__Coroutine_New(__Pyx__Coroutine_New33727,1295841 + static PyObject* __Pyx_Coroutine_patch_module(PyObject* module, const char* py_code) {__Pyx_Coroutine_patch_module33755,1296714 +static PyObject* __Pyx_patch_abc_module(PyObject *module) {__Pyx_patch_abc_module33797,1298285 +static int __Pyx_patch_abc(void) {__Pyx_patch_abc33812,1298800 + static PyMethodDef __pyx_Generator_methods[] = {__pyx_Generator_methods33849,1300037 +static PyMemberDef __pyx_Generator_memberlist[] = {__pyx_Generator_memberlist33858,1300644 +static PyGetSetDef __pyx_Generator_getsets[] = {__pyx_Generator_getsets33864,1300985 +static PyTypeObject __pyx_GeneratorType_type = {__pyx_GeneratorType_type33871,1301373 +static int __pyx_Generator_init(void) {__pyx_Generator_init33927,1302240 + static int __Pyx_check_binary_version(void) {__Pyx_check_binary_version33938,1302591 + static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig) {__Pyx_ExportFunction33954,1303258 +#define __PYX_HAVE_RT_ImportModule__PYX_HAVE_RT_ImportModule33992,1304225 +static PyObject *__Pyx_ImportModule(const char *name) {__Pyx_ImportModule33993,1304260 +#define __PYX_HAVE_RT_ImportType__PYX_HAVE_RT_ImportType34010,1304673 +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,__Pyx_ImportType34011,1304706 +#define __PYX_HAVE_RT_ImportFunction__PYX_HAVE_RT_ImportFunction34075,1306676 +static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) {__Pyx_ImportFunction34076,1306713 + static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {__Pyx_InitStrings34128,1308255 +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {__Pyx_PyUnicode_FromString34158,1309199 +static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {__Pyx_PyObject_AsString34161,1309360 +static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {__Pyx_PyObject_AsStringAndSize34165,1309506 +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {__Pyx_PyObject_IsTrue34223,1311382 +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {__Pyx_PyNumber_IntOrLong34228,1311579 +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {__Pyx_PyIndex_AsSsize_t34279,1312727 +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {__Pyx_PyInt_FromSize_t34341,1315018 + +pyisda/pyisda/logging.cpp,32994 +#define PY_SSIZE_T_CLEANPY_SSIZE_T_CLEAN20,378 +#define CYTHON_ABI CYTHON_ABI27,707 + #define offsetof(offsetof30,772 + #define __stdcall__stdcall34,912 + #define __cdecl__cdecl37,961 + #define __fastcall__fastcall40,1011 + #define DL_IMPORT(DL_IMPORT44,1068 + #define DL_EXPORT(DL_EXPORT47,1118 + #define HAVE_LONG_LONGHAVE_LONG_LONG51,1267 + #define PY_LONG_LONG PY_LONG_LONG55,1331 + #define Py_HUGE_VAL Py_HUGE_VAL58,1391 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY61,1449 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON62,1486 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON63,1525 + #undef CYTHON_USE_TYPE_SLOTSCYTHON_USE_TYPE_SLOTS64,1565 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS65,1596 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS66,1630 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS67,1662 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS68,1697 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS69,1734 + #undef CYTHON_USE_UNICODE_INTERNALSCYTHON_USE_UNICODE_INTERNALS70,1774 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS71,1812 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER72,1853 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER73,1888 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS74,1926 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS75,1963 + #undef CYTHON_AVOID_BORROWED_REFSCYTHON_AVOID_BORROWED_REFS76,2003 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS77,2039 + #undef CYTHON_ASSUME_SAFE_MACROSCYTHON_ASSUME_SAFE_MACROS78,2078 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS79,2113 + #undef CYTHON_UNPACK_METHODSCYTHON_UNPACK_METHODS80,2151 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS81,2182 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE82,2216 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE83,2250 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL84,2287 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL85,2315 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY87,2376 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON88,2413 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON89,2452 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS91,2524 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS93,2569 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS94,2601 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS95,2636 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS96,2673 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS98,2752 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER100,2804 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER101,2839 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS102,2877 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS103,2914 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS105,2991 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS108,3077 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS111,3158 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE113,3203 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE114,3237 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL115,3274 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL116,3302 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY118,3339 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON119,3376 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON120,3415 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS122,3487 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS125,3559 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS126,3593 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS128,3671 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS131,3751 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS132,3790 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS134,3878 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS137,3967 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS140,4057 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER143,4143 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER144,4180 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER146,4264 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS149,4350 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS152,4436 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS155,4517 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE158,4597 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL161,4674 +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCCALL165,4757 + #undef SHIFTSHIFT169,4905 + #undef BASEBASE170,4920 + #undef MASKMASK171,4934 + #define Py_OptimizeFlag Py_OptimizeFlag174,5044 +#define __PYX_BUILD_PY_SSIZE_T __PYX_BUILD_PY_SSIZE_T176,5079 +#define CYTHON_FORMAT_SSIZE_T CYTHON_FORMAT_SSIZE_T177,5114 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME179,5173 + #define __Pyx_PyCode_New(__Pyx_PyCode_New180,5223 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType182,5397 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME184,5449 + #define __Pyx_PyCode_New(__Pyx_PyCode_New185,5496 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType187,5671 + #define Py_TPFLAGS_CHECKTYPES Py_TPFLAGS_CHECKTYPES190,5753 + #define Py_TPFLAGS_HAVE_INDEX Py_TPFLAGS_HAVE_INDEX193,5824 + #define Py_TPFLAGS_HAVE_NEWBUFFER Py_TPFLAGS_HAVE_NEWBUFFER196,5899 + #define Py_TPFLAGS_HAVE_FINALIZE Py_TPFLAGS_HAVE_FINALIZE199,5977 + #define METH_FASTCALL METH_FASTCALL202,6043 + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args,__Pyx_PyCFunctionFast203,6072 + #define __Pyx_PyCFunctionFast __Pyx_PyCFunctionFast206,6241 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check209,6321 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check212,6499 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED215,6609 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY216,6643 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH218,6806 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR219,6872 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE220,6940 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND221,7014 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA222,7074 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ223,7134 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE224,7200 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE225,7275 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED227,7412 + #define PyUnicode_1BYTE_KIND PyUnicode_1BYTE_KIND228,7446 + #define PyUnicode_2BYTE_KIND PyUnicode_2BYTE_KIND229,7480 + #define PyUnicode_4BYTE_KIND PyUnicode_4BYTE_KIND230,7514 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY231,7548 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH232,7594 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR233,7658 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE234,7740 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND235,7832 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA236,7895 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ237,7970 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE238,8056 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE239,8142 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat242,8249 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe243,8312 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat245,8381 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe246,8448 + #define PyUnicode_Contains(PyUnicode_Contains250,8676 + #define PyByteArray_Check(PyByteArray_Check253,8805 + #define PyObject_Format(PyObject_Format256,8947 + #define PyObject_Malloc(PyObject_Malloc259,9098 + #define PyObject_Free(PyObject_Free260,9145 + #define PyObject_Realloc(PyObject_Realloc261,9190 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars264,9276 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber265,9339 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars267,9435 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber268,9503 +#define __Pyx_PyString_FormatSafe(__Pyx_PyString_FormatSafe270,9593 +#define __Pyx_PyUnicode_FormatSafe(__Pyx_PyUnicode_FormatSafe271,9721 + #define __Pyx_PyString_Format(__Pyx_PyString_Format273,9870 + #define __Pyx_PyString_Format(__Pyx_PyString_Format275,9938 + #define PyObject_ASCII(PyObject_ASCII278,10059 + #define PyBaseString_Type PyBaseString_Type281,10148 + #define PyStringObject PyStringObject282,10202 + #define PyString_Type PyString_Type283,10257 + #define PyString_Check PyString_Check284,10311 + #define PyString_CheckExact PyString_CheckExact285,10366 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check288,10459 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact289,10520 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check291,10597 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact292,10683 + #define PySet_CheckExact(PySet_CheckExact295,10816 +#define __Pyx_TypeCheck(__Pyx_TypeCheck297,10892 +#define __Pyx_PyException_Check(__Pyx_PyException_Check298,10973 + #define PyIntObject PyIntObject300,11074 + #define PyInt_Type PyInt_Type301,11126 + #define PyInt_Check(PyInt_Check302,11177 + #define PyInt_CheckExact(PyInt_CheckExact303,11233 + #define PyInt_FromString PyInt_FromString304,11294 + #define PyInt_FromUnicode PyInt_FromUnicode305,11351 + #define PyInt_FromLong PyInt_FromLong306,11409 + #define PyInt_FromSize_t PyInt_FromSize_t307,11464 + #define PyInt_FromSsize_t PyInt_FromSsize_t308,11521 + #define PyInt_AsLong PyInt_AsLong309,11579 + #define PyInt_AS_LONG PyInt_AS_LONG310,11632 + #define PyInt_AsSsize_t PyInt_AsSsize_t311,11686 + #define PyInt_AsUnsignedLongMask PyInt_AsUnsignedLongMask312,11742 + #define PyInt_AsUnsignedLongLongMask PyInt_AsUnsignedLongLongMask313,11807 + #define PyNumber_Int PyNumber_Int314,11876 + #define PyBoolObject PyBoolObject317,11962 + #define PyUnicode_InternFromString(PyUnicode_InternFromString321,12112 + typedef long Py_hash_t;Py_hash_t325,12226 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t326,12252 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t327,12300 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t329,12352 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t330,12403 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New333,12485 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New335,12604 + #define __Pyx_PyAsyncMethodsStruct __Pyx_PyAsyncMethodsStruct339,12753 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync340,12807 + unaryfunc am_await;am_await343,12902 + unaryfunc am_aiter;am_aiter344,12930 + unaryfunc am_anext;am_anext345,12958 + } __Pyx_PyAsyncMethodsStruct;__Pyx_PyAsyncMethodsStruct346,12986 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync347,13020 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync350,13133 + #define CYTHON_RESTRICT CYTHON_RESTRICT354,13229 + #define CYTHON_RESTRICT CYTHON_RESTRICT356,13316 + #define CYTHON_RESTRICT CYTHON_RESTRICT358,13421 + #define CYTHON_RESTRICTCYTHON_RESTRICT360,13466 +# define CYTHON_UNUSED CYTHON_UNUSED366,13646 +# define CYTHON_UNUSEDCYTHON_UNUSED368,13711 +# define CYTHON_UNUSED CYTHON_UNUSED371,13823 +# define CYTHON_UNUSEDCYTHON_UNUSED373,13884 + template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }CYTHON_MAYBE_UNUSED_VAR378,13983 +# define CYTHON_MAYBE_UNUSED_VAR(CYTHON_MAYBE_UNUSED_VAR380,14059 +# define CYTHON_NCP_UNUSEDCYTHON_NCP_UNUSED385,14183 +# define CYTHON_NCP_UNUSED CYTHON_NCP_UNUSED387,14218 +#define __Pyx_void_to_None(__Pyx_void_to_None390,14275 + #define CYTHON_INLINE CYTHON_INLINE397,14533 + #define CYTHON_INLINE CYTHON_INLINE399,14607 +void __Pyx_call_destructor(T& x) {__Pyx_call_destructor403,14677 +class __Pyx_FakeReference {__Pyx_FakeReference407,14747 + __Pyx_FakeReference() : ptr(NULL) { }__Pyx_FakeReference409,14785 + __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }__Pyx_FakeReference410,14827 + T *operator->() { return ptr; }operator ->411,14897 + T *operator&() { return ptr; }operator &412,14933 + operator T&() { return *ptr; }operator T&413,14968 + template<typename U> bool operator ==(U other) { return *ptr == other; }operator ==414,15003 + template<typename U> bool operator !=(U other) { return *ptr != other; }operator !=415,15080 + T *ptr;ptr417,15168 + #define _USE_MATH_DEFINES_USE_MATH_DEFINES421,15226 +#define __PYX_NAN(__PYX_NAN425,15290 +static CYTHON_INLINE float __PYX_NAN() {__PYX_NAN427,15330 +#define __Pyx_truncl __Pyx_truncl434,15499 +#define __Pyx_truncl __Pyx_truncl436,15532 +#define __PYX_ERR(__PYX_ERR440,15569 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide446,15752 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide447,15822 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide449,15905 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide450,15971 + #define __PYX_EXTERN_C __PYX_EXTERN_C455,16096 + #define __PYX_EXTERN_C __PYX_EXTERN_C457,16142 +#define __PYX_HAVE__pyisda__logging__PYX_HAVE__pyisda__logging461,16193 +#define __PYX_HAVE_API__pyisda__logging__PYX_HAVE_API__pyisda__logging462,16229 +#define CYTHON_WITHOUT_ASSERTIONSCYTHON_WITHOUT_ASSERTIONS469,16380 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;p472,16422 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;s472,16422 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;n472,16422 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;encoding472,16422 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_unicode473,16509 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_str473,16509 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;intern473,16509 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;__Pyx_StringTabEntry473,16509 +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII __PYX_DEFAULT_STRING_ENCODING_IS_ASCII475,16611 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT476,16660 +#define __PYX_DEFAULT_STRING_ENCODING __PYX_DEFAULT_STRING_ENCODING477,16711 +#define __Pyx_PyObject_FromString __Pyx_PyObject_FromString478,16752 +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyObject_FromStringAndSize479,16811 +#define __Pyx_uchar_cast(__Pyx_uchar_cast480,16884 +#define __Pyx_long_cast(__Pyx_long_cast481,16931 +#define __Pyx_fits_Py_ssize_t(__Pyx_fits_Py_ssize_t482,16968 + #define __Pyx_sst_abs(__Pyx_sst_abs494,17574 + #define __Pyx_sst_abs(__Pyx_sst_abs496,17657 + #define __Pyx_sst_abs(__Pyx_sst_abs498,17736 + #define __Pyx_sst_abs(__Pyx_sst_abs500,17826 + #define __Pyx_sst_abs(__Pyx_sst_abs502,17937 + #define __Pyx_sst_abs(__Pyx_sst_abs504,18008 + #define __Pyx_sst_abs(__Pyx_sst_abs506,18070 +#define __Pyx_PyByteArray_FromString(__Pyx_PyByteArray_FromString510,18292 +#define __Pyx_PyByteArray_FromStringAndSize(__Pyx_PyByteArray_FromStringAndSize511,18402 +#define __Pyx_PyBytes_FromString __Pyx_PyBytes_FromString512,18501 +#define __Pyx_PyBytes_FromStringAndSize __Pyx_PyBytes_FromStringAndSize513,18560 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString516,18723 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize517,18790 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString519,18870 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize520,18939 +#define __Pyx_PyObject_AsSString(__Pyx_PyObject_AsSString522,19022 +#define __Pyx_PyObject_AsUString(__Pyx_PyObject_AsUString523,19105 +#define __Pyx_PyObject_FromCString(__Pyx_PyObject_FromCString524,19190 +#define __Pyx_PyBytes_FromCString(__Pyx_PyBytes_FromCString525,19271 +#define __Pyx_PyByteArray_FromCString(__Pyx_PyByteArray_FromCString526,19351 +#define __Pyx_PyStr_FromCString(__Pyx_PyStr_FromCString527,19439 +#define __Pyx_PyUnicode_FromCString(__Pyx_PyUnicode_FromCString528,19517 +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)__Pyx_Py_UNICODE_strlen530,19624 +#define __Pyx_Py_UNICODE_strlen __Pyx_Py_UNICODE_strlen537,19799 +#define __Pyx_PyUnicode_FromUnicode(__Pyx_PyUnicode_FromUnicode539,19856 +#define __Pyx_PyUnicode_FromUnicodeAndLength __Pyx_PyUnicode_FromUnicodeAndLength540,19954 +#define __Pyx_PyUnicode_AsUnicode __Pyx_PyUnicode_AsUnicode541,20021 +#define __Pyx_NewRef(__Pyx_NewRef542,20086 +#define __Pyx_Owned_Py_None(__Pyx_Owned_Py_None543,20134 +#define __Pyx_PyBool_FromLong(__Pyx_PyBool_FromLong544,20187 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble550,20566 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble552,20675 +#define __pyx_PyFloat_AsFloat(__pyx_PyFloat_AsFloat554,20736 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int556,20831 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int558,20927 +#define __Pyx_PyNumber_Float(__Pyx_PyNumber_Float560,21022 +static int __Pyx_sys_getdefaultencoding_not_ascii;__Pyx_sys_getdefaultencoding_not_ascii562,21183 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params563,21234 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize608,22963 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize610,23064 +static char* __PYX_DEFAULT_STRING_ENCODING;__PYX_DEFAULT_STRING_ENCODING612,23231 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params613,23275 + #define likely(likely639,24169 + #define unlikely(unlikely640,24218 + #define likely(likely642,24303 + #define unlikely(unlikely643,24329 +static PyObject *__pyx_m;__pyx_m646,24378 +static PyObject *__pyx_d;__pyx_d647,24404 +static PyObject *__pyx_b;__pyx_b648,24430 +static PyObject *__pyx_empty_tuple;__pyx_empty_tuple649,24456 +static PyObject *__pyx_empty_bytes;__pyx_empty_bytes650,24492 +static PyObject *__pyx_empty_unicode;__pyx_empty_unicode651,24528 +static int __pyx_lineno;__pyx_lineno652,24566 +static int __pyx_clineno = 0;__pyx_clineno653,24591 +static const char * __pyx_cfilenm= __FILE__;__pyx_cfilenm654,24621 +static const char *__pyx_filename;__pyx_filename655,24666 +static const char *__pyx_f[] = {__pyx_f658,24703 + #define CYTHON_REFNANNY CYTHON_REFNANNY667,24882 + void (*INCREF)(void*, PyObject*, int);INCREF671,24956 + void (*DECREF)(void*, PyObject*, int);DECREF672,24999 + void (*GOTREF)(void*, PyObject*, int);GOTREF673,25042 + void (*GIVEREF)(void*, PyObject*, int);GIVEREF674,25085 + void* (*SetupContext)(const char*, int, const char*);SetupContext675,25129 + void (*FinishContext)(void**);FinishContext676,25187 + } __Pyx_RefNannyAPIStruct;__Pyx_RefNannyAPIStruct677,25222 + static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;__Pyx_RefNanny678,25251 + #define __Pyx_RefNannyDeclarations __Pyx_RefNannyDeclarations680,25388 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext682,25473 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext691,25909 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext694,26057 + #define __Pyx_INCREF(__Pyx_INCREF696,26155 + #define __Pyx_DECREF(__Pyx_DECREF697,26248 + #define __Pyx_GOTREF(__Pyx_GOTREF698,26341 + #define __Pyx_GIVEREF(__Pyx_GIVEREF699,26434 + #define __Pyx_XINCREF(__Pyx_XINCREF700,26528 + #define __Pyx_XDECREF(__Pyx_XDECREF701,26607 + #define __Pyx_XGOTREF(__Pyx_XGOTREF702,26686 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF703,26765 + #define __Pyx_RefNannyDeclarations__Pyx_RefNannyDeclarations705,26850 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext706,26887 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext707,26943 + #define __Pyx_INCREF(__Pyx_INCREF708,26983 + #define __Pyx_DECREF(__Pyx_DECREF709,27022 + #define __Pyx_GOTREF(__Pyx_GOTREF710,27061 + #define __Pyx_GIVEREF(__Pyx_GIVEREF711,27087 + #define __Pyx_XINCREF(__Pyx_XINCREF712,27114 + #define __Pyx_XDECREF(__Pyx_XDECREF713,27155 + #define __Pyx_XGOTREF(__Pyx_XGOTREF714,27196 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF715,27223 +#define __Pyx_XDECREF_SET(__Pyx_XDECREF_SET717,27258 +#define __Pyx_DECREF_SET(__Pyx_DECREF_SET721,27389 +#define __Pyx_CLEAR(__Pyx_CLEAR725,27518 +#define __Pyx_XCLEAR(__Pyx_XCLEAR726,27622 +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {__Pyx_PyObject_GetAttrStr746,28455 +#define __Pyx_PyObject_GetAttrStr(__Pyx_PyObject_GetAttrStr757,28852 +#define __Pyx_PyObject_Call(__Pyx_PyObject_Call764,29081 +static CYTHON_INLINE void __Pyx_ReraiseException(void) {__Pyx_ReraiseException768,29190 + PyCodeObject* code_object;code_object798,29986 + int code_line;code_line799,30017 +} __Pyx_CodeObjectCacheEntry;__Pyx_CodeObjectCacheEntry800,30036 +struct __Pyx_CodeObjectCache {__Pyx_CodeObjectCache801,30066 + int count;count802,30097 + int max_count;max_count803,30112 + __Pyx_CodeObjectCacheEntry* entries;entries804,30131 +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};__pyx_code_cache806,30175 +#define __Pyx_MODULE_NAME __Pyx_MODULE_NAME835,31191 +int __pyx_module_is_main_pyisda__logging = 0;__pyx_module_is_main_pyisda__logging836,31234 +static const char __pyx_k_msg[] = "msg";__pyx_k_msg839,31322 +static const char __pyx_k_main[] = "__main__";__pyx_k_main840,31363 +static const char __pyx_k_test[] = "__test__";__pyx_k_test841,31410 +static const char __pyx_k_c_msg[] = "c_msg";__pyx_k_c_msg842,31457 +static const char __pyx_k_flush[] = "flush";__pyx_k_flush843,31502 +static const char __pyx_k_utf_8[] = "utf-8";__pyx_k_utf_8844,31547 +static const char __pyx_k_append[] = "append";__pyx_k_append845,31592 +static const char __pyx_k_encode[] = "encode";__pyx_k_encode846,31639 +static const char __pyx_k_c_string[] = "c_string";__pyx_k_c_string847,31686 +static const char __pyx_k_file_name[] = "file_name";__pyx_k_file_name848,31737 +static const char __pyx_k_msg_bytes[] = "msg_bytes";__pyx_k_msg_bytes849,31790 +static const char __pyx_k_log_message[] = "log_message";__pyx_k_log_message850,31843 +static const char __pyx_k_enable_logging[] = "enable_logging";__pyx_k_enable_logging851,31900 +static const char __pyx_k_filename_bytes[] = "filename_bytes";__pyx_k_filename_bytes852,31963 +static const char __pyx_k_pyisda_logging[] = "pyisda.logging";__pyx_k_pyisda_logging853,32026 +static const char __pyx_k_disable_logging[] = "disable_logging";__pyx_k_disable_logging854,32089 +static const char __pyx_k_set_logging_file[] = "set_logging_file";__pyx_k_set_logging_file855,32154 +static const char __pyx_k_helper_functions_to_use_the_log[] = " helper functions to use the logging facility";__pyx_k_helper_functions_to_use_the_log856,32221 +static const char __pyx_k_home_guillaume_projects_code_py[] = "/home/guillaume/projects/code/python/pyisda/pyisda/logging.pyx";__pyx_k_home_guillaume_projects_code_py857,32332 +static PyObject *__pyx_n_s_append;__pyx_n_s_append858,32460 +static PyObject *__pyx_n_s_c_msg;__pyx_n_s_c_msg859,32495 +static PyObject *__pyx_n_s_c_string;__pyx_n_s_c_string860,32529 +static PyObject *__pyx_n_s_disable_logging;__pyx_n_s_disable_logging861,32566 +static PyObject *__pyx_n_s_enable_logging;__pyx_n_s_enable_logging862,32610 +static PyObject *__pyx_n_s_encode;__pyx_n_s_encode863,32653 +static PyObject *__pyx_n_s_file_name;__pyx_n_s_file_name864,32688 +static PyObject *__pyx_n_s_filename_bytes;__pyx_n_s_filename_bytes865,32726 +static PyObject *__pyx_n_s_flush;__pyx_n_s_flush866,32769 +static PyObject *__pyx_kp_s_home_guillaume_projects_code_py;__pyx_kp_s_home_guillaume_projects_code_py867,32803 +static PyObject *__pyx_n_s_log_message;__pyx_n_s_log_message868,32864 +static PyObject *__pyx_n_s_main;__pyx_n_s_main869,32904 +static PyObject *__pyx_n_s_msg;__pyx_n_s_msg870,32937 +static PyObject *__pyx_n_s_msg_bytes;__pyx_n_s_msg_bytes871,32969 +static PyObject *__pyx_n_s_pyisda_logging;__pyx_n_s_pyisda_logging872,33007 +static PyObject *__pyx_n_s_set_logging_file;__pyx_n_s_set_logging_file873,33050 +static PyObject *__pyx_n_s_test;__pyx_n_s_test874,33095 +static PyObject *__pyx_kp_s_utf_8;__pyx_kp_s_utf_8875,33128 +static PyObject *__pyx_tuple_;__pyx_tuple_881,33770 +static PyObject *__pyx_tuple__2;__pyx_tuple__2882,33801 +static PyObject *__pyx_tuple__5;__pyx_tuple__5883,33834 +static PyObject *__pyx_tuple__7;__pyx_tuple__7884,33867 +static PyObject *__pyx_codeobj__3;__pyx_codeobj__3885,33900 +static PyObject *__pyx_codeobj__4;__pyx_codeobj__4886,33935 +static PyObject *__pyx_codeobj__6;__pyx_codeobj__6887,33970 +static PyObject *__pyx_codeobj__8;__pyx_codeobj__8888,34005 +static PyObject *__pyx_codeobj__9;__pyx_codeobj__9889,34040 +static char __pyx_doc_6pyisda_7logging_enable_logging[] = "enable_logging()\nturn on logging\n\n default location is error.log in the $HOME directory.\n To change from default use ``set_logging_file``\n ";__pyx_doc_6pyisda_7logging_enable_logging901,34395 +static PyMethodDef __pyx_mdef_6pyisda_7logging_1enable_logging = {"enable_logging", (PyCFunction)__pyx_pw_6pyisda_7logging_1enable_logging, METH_NOARGS, __pyx_doc_6pyisda_7logging_enable_logging};__pyx_mdef_6pyisda_7logging_1enable_logging902,34610 +static PyObject *__pyx_pw_6pyisda_7logging_1enable_logging(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_7logging_1enable_logging903,34807 +static PyObject *__pyx_pf_6pyisda_7logging_enable_logging(CYTHON_UNUSED PyObject *__pyx_self) {__pyx_pf_6pyisda_7logging_enable_logging914,35185 +static char __pyx_doc_6pyisda_7logging_2disable_logging[] = "disable_logging()\nturn off logging";__pyx_doc_6pyisda_7logging_2disable_logging953,36236 +static PyMethodDef __pyx_mdef_6pyisda_7logging_3disable_logging = {"disable_logging", (PyCFunction)__pyx_pw_6pyisda_7logging_3disable_logging, METH_NOARGS, __pyx_doc_6pyisda_7logging_2disable_logging};__pyx_mdef_6pyisda_7logging_3disable_logging954,36335 +static PyObject *__pyx_pw_6pyisda_7logging_3disable_logging(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_7logging_3disable_logging955,36537 +static PyObject *__pyx_pf_6pyisda_7logging_2disable_logging(CYTHON_UNUSED PyObject *__pyx_self) {__pyx_pf_6pyisda_7logging_2disable_logging966,36919 +static char __pyx_doc_6pyisda_7logging_4set_logging_file[] = "set_logging_file(str file_name, TBoolean append=True)\nset logging file";__pyx_doc_6pyisda_7logging_4set_logging_file1005,38077 +static PyMethodDef __pyx_mdef_6pyisda_7logging_5set_logging_file = {"set_logging_file", (PyCFunction)__pyx_pw_6pyisda_7logging_5set_logging_file, METH_VARARGS|METH_KEYWORDS, __pyx_doc_6pyisda_7logging_4set_logging_file};__pyx_mdef_6pyisda_7logging_5set_logging_file1006,38213 +static PyObject *__pyx_pw_6pyisda_7logging_5set_logging_file(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_7logging_5set_logging_file1007,38434 +static PyObject *__pyx_pf_6pyisda_7logging_4set_logging_file(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_file_name, TBoolean __pyx_v_append) {__pyx_pf_6pyisda_7logging_4set_logging_file1074,41176 +static char __pyx_doc_6pyisda_7logging_6log_message[] = "log_message(str msg)";__pyx_doc_6pyisda_7logging_6log_message1171,44579 +static PyMethodDef __pyx_mdef_6pyisda_7logging_7log_message = {"log_message", (PyCFunction)__pyx_pw_6pyisda_7logging_7log_message, METH_O, __pyx_doc_6pyisda_7logging_6log_message};__pyx_mdef_6pyisda_7logging_7log_message1172,44659 +static PyObject *__pyx_pw_6pyisda_7logging_7log_message(PyObject *__pyx_self, PyObject *__pyx_v_msg) {__pyx_pw_6pyisda_7logging_7log_message1173,44840 +static PyObject *__pyx_pf_6pyisda_7logging_6log_message(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_msg) {__pyx_pf_6pyisda_7logging_6log_message1189,45421 +static char __pyx_doc_6pyisda_7logging_8flush[] = "flush()";__pyx_doc_6pyisda_7logging_8flush1266,47886 +static PyMethodDef __pyx_mdef_6pyisda_7logging_9flush = {"flush", (PyCFunction)__pyx_pw_6pyisda_7logging_9flush, METH_NOARGS, __pyx_doc_6pyisda_7logging_8flush};__pyx_mdef_6pyisda_7logging_9flush1267,47947 +static PyObject *__pyx_pw_6pyisda_7logging_9flush(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_7logging_9flush1268,48109 +static PyObject *__pyx_pf_6pyisda_7logging_8flush(CYTHON_UNUSED PyObject *__pyx_self) {__pyx_pf_6pyisda_7logging_8flush1279,48461 +static PyMethodDef __pyx_methods[] = {__pyx_methods1329,49687 +static struct PyModuleDef __pyx_moduledef = {__pyx_moduledef1334,49771 +static __Pyx_StringTabEntry __pyx_string_tab[] = {__pyx_string_tab1351,50180 +static int __Pyx_InitCachedBuiltins(void) {__Pyx_InitCachedBuiltins1372,51823 +static int __Pyx_InitCachedConstants(void) {__Pyx_InitCachedConstants1376,51882 +static int __Pyx_InitGlobals(void) {__Pyx_InitGlobals1459,56078 +PyMODINIT_FUNC initlogging(void)initlogging1468,56311 +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {__Pyx_RefNannyImportAPI1653,63850 +static void __Pyx_RaiseDoubleKeywordsError(__Pyx_RaiseDoubleKeywordsError1669,64283 +static int __Pyx_ParseOptionalKeywords(__Pyx_ParseOptionalKeywords1683,64692 +static void __Pyx_RaiseArgtupleInvalid(__Pyx_RaiseArgtupleInvalid1785,68273 +static void __Pyx_RaiseArgumentTypeInvalid(const char* name, PyObject *obj, PyTypeObject *type) {__Pyx_RaiseArgumentTypeInvalid1811,69030 +static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed,__Pyx_ArgTypeTest1816,69295 +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {__Pyx_PyObject_Call1839,70025 +static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {__pyx_bisect_code_objects1858,70663 +static PyCodeObject *__pyx_find_code_object(int code_line) {__pyx_find_code_object1879,71292 +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {__pyx_insert_code_object1893,71852 +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(__Pyx_CreateCodeObjectForTraceback1941,73638 +static void __Pyx_AddTraceback(const char *funcname, int c_line,__Pyx_AddTraceback1993,75247 +#define __PYX_VERIFY_RETURN_INT(__PYX_VERIFY_RETURN_INT2019,76175 +#define __PYX_VERIFY_RETURN_INT_EXC(__PYX_VERIFY_RETURN_INT_EXC2021,76312 +#define __PYX__VERIFY_RETURN_INT(__PYX__VERIFY_RETURN_INT2023,76453 +static CYTHON_INLINE TBoolean __Pyx_PyInt_As_TBoolean(PyObject *x) {__Pyx_PyInt_As_TBoolean2041,77123 +static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {__Pyx_PyInt_From_long2230,87325 +static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {__Pyx_PyInt_As_long2261,88470 +static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {__Pyx_PyInt_As_int2450,98286 +static int __Pyx_check_binary_version(void) {__Pyx_check_binary_version2639,108013 +static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {__Pyx_InitStrings2655,108655 +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {__Pyx_PyUnicode_FromString2685,109577 +static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {__Pyx_PyObject_AsString2688,109738 +static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {__Pyx_PyObject_AsStringAndSize2692,109884 +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {__Pyx_PyObject_IsTrue2750,111760 +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {__Pyx_PyNumber_IntOrLong2755,111957 +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {__Pyx_PyIndex_AsSsize_t2806,113105 +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {__Pyx_PyInt_FromSize_t2868,115396 + +pyisda/pyisda/date.pyx,245 +cdef TDate pydate_to_TDate(c_datetime.date d):pydate_to_TDate7,137 +cpdef c_datetime.date TDate_to_pydate(TDate d):TDate_to_pydate10,249 +cdef long dcc(str day_count) except -1:dcc15,433 +def dcc_tostring(long day_count):dcc_tostring25,737 + +pyisda/pyisda/cdsone.pyx,198 +def upfront_charge(date, value_date, benchmark_start_date, stepin_date,upfront_charge6,120 +def spread_from_upfront(date, value_date, benchmark_start_date, stepin_date,spread_from_upfront68,2806 + +pyisda/pyisda/legs.pyx,837 +cdef class ContingentLeg:ContingentLeg7,218 + def __cinit__(self, start_date, end_date, double notional,__cinit__20,529 + def __dealloc__(self):__dealloc__30,986 + def __reduce__(self):__reduce__34,1084 + def __hash__(self):__hash__41,1456 + def pv(self, today, step_in_date, value_date, YieldCurve yc, SpreadCurve sc,pv47,1695 +cdef class FeeLeg:FeeLeg75,2818 + def __cinit__(self, start_date, end_date, bint pay_accrued_on_default,__cinit__95,3406 + def __reduce__(self):__reduce__118,4480 + def __hash__(self):__hash__127,5001 + def inspect(self):inspect136,5388 + def cashflows(self):cashflows151,6036 + def pv(self, today, step_in_date, value_date, YieldCurve yc, SpreadCurve sc,pv161,6366 + def accrued(self, today):accrued189,7477 + def __dealloc__(self):__dealloc__204,7783 + +pyisda/pyisda/curve.pyx,2006 + FOLLOW = <long>'F'FOLLOW25,844 + PREVIOUS = <long>'P'PREVIOUS26,867 + NONE = <long>'N'NONE27,892 + MODIFIED = <long>'M'MODIFIED28,913 +cdef class Curve(object):Curve33,1050 + def __getstate__(self):__getstate__35,1077 + def __setstate__(self, state):__setstate__44,1401 + def __hash__(self):__hash__62,2053 + def inspect(self):inspect71,2399 + def to_df(self):to_df86,2934 + def __iter__(self):__iter__98,3428 + def __len__(self):__len__105,3662 + def __deepcopy__(self, memo):__deepcopy__108,3731 + def forward_hazard_rates(self):forward_hazard_rates115,3953 + def base_date(self):base_date146,5199 + def __forward_zero_price(self, d2, d1=None):__forward_zero_price149,5287 +cdef fArray_to_list(TRatePt* fArray, int fNumItems):fArray_to_list171,6018 +cdef class YieldCurve(Curve):YieldCurve178,6225 + def __init__(self, date, str types,__init__207,7187 + def __dealloc__(self):__dealloc__261,9373 + def __getstate__(self):__getstate__266,9548 + def __setstate__(self, state):__setstate__271,9756 + def from_discount_factors(cls, base_date, list dates, double[:] dfs, str day_count_conv):from_discount_factors279,10043 + discount_factor = Curve.__forward_zero_pricediscount_factor297,10930 + def dates(self):dates300,10994 + def expected_forward_curve(self, forward_date):expected_forward_curve307,11178 +cdef void tweak_curve(TCurve* sc, TCurve* sc_tweaked, double epsilon,tweak_curve332,12275 +cdef class SpreadCurve(Curve):SpreadCurve355,13019 + def __init__(self, today, YieldCurve yc, start_date, step_in_date,__init__375,13621 + survival_probability = Curve.__forward_zero_pricesurvival_probability424,16115 + def from_flat_hazard(cls, base_date, double rate, Basis basis=CONTINUOUS,from_flat_hazard427,16187 + def tweak_curve(self, double epsilon, bint multiplicative=True,tweak_curve453,17141 + def par_spread(self, today, step_in_date, start_date, end_dates,par_spread500,18818 + +pyisda/pyisda/curve.pxd,527 + CONTINUOUS = 5000CONTINUOUS142,6172 + DISCOUNT_RATE = 512DISCOUNT_RATE143,6194 + SIMPLE_BASIS = 0SIMPLE_BASIS144,6218 + ANNUAL_BASIS = 1ANNUAL_BASIS145,6239 + DISCOUNT_FACTOR = -2DISCOUNT_FACTOR146,6260 +cdef class Curve:Curve157,6516 +cdef class YieldCurve(Curve):YieldCurve160,6572 +cdef class SpreadCurve(Curve):SpreadCurve164,6650 +cdef fArray_to_list(TRatePt* fArray, int fNumItems)fArray_to_list167,6691 +cdef void tweak_curve(TCurve* sc, TCurve* sc_tweaked, double epsilon,tweak_curve169,6744 + +pyisda/pyisda/credit_index.pyx,1110 +cdef class CurveList:CurveList15,599 + def __init__(self, curves, tickers=None, double[:] weights=None):__init__17,649 + def __getitem__(self, str ticker):__getitem__55,2291 + def items(self):items64,2582 + def curves(self):curves77,3015 + def curves(self, list l):curves90,3424 +cdef class CreditIndex(CurveList):CreditIndex98,3684 + def __init__(self, start_date, maturities, curves, double[:] weights=None):__init__99,3719 + def __dealloc__(self):__dealloc__131,5517 + def pv_vec(self, step_in_date, value_date, YieldCurve yc, double recovery_rate):pv_vec141,5903 + def pv(self, step_in_date, value_date, maturity, YieldCurve yc not None,pv181,7942 + def theta(self, step_in_date, value_date, maturity, YieldCurve yc not None,theta243,10280 + def duration(self, step_in_date, value_date, maturity, YieldCurve yc not None):duration300,12831 + def maturities(self):maturities336,13976 + def tweak_portfolio(self, double epsilon, maturity):tweak_portfolio342,14153 +cdef bint* fill_mask(TDate maturity, const vector[TDate]& maturities,fill_mask353,14623 + +pyisda/pyisda/version.pyx,28 +def version():version4,71 + +pyisda/pyisda/credit_index.cpp,137179 +#define PY_SSIZE_T_CLEANPY_SSIZE_T_CLEAN23,565 +#define CYTHON_ABI CYTHON_ABI30,894 + #define offsetof(offsetof33,959 + #define __stdcall__stdcall37,1099 + #define __cdecl__cdecl40,1148 + #define __fastcall__fastcall43,1198 + #define DL_IMPORT(DL_IMPORT47,1255 + #define DL_EXPORT(DL_EXPORT50,1305 + #define HAVE_LONG_LONGHAVE_LONG_LONG54,1454 + #define PY_LONG_LONG PY_LONG_LONG58,1518 + #define Py_HUGE_VAL Py_HUGE_VAL61,1578 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY64,1636 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON65,1673 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON66,1712 + #undef CYTHON_USE_TYPE_SLOTSCYTHON_USE_TYPE_SLOTS67,1752 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS68,1783 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS69,1817 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS70,1849 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS71,1884 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS72,1921 + #undef CYTHON_USE_UNICODE_INTERNALSCYTHON_USE_UNICODE_INTERNALS73,1961 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS74,1999 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER75,2040 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER76,2075 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS77,2113 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS78,2150 + #undef CYTHON_AVOID_BORROWED_REFSCYTHON_AVOID_BORROWED_REFS79,2190 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS80,2226 + #undef CYTHON_ASSUME_SAFE_MACROSCYTHON_ASSUME_SAFE_MACROS81,2265 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS82,2300 + #undef CYTHON_UNPACK_METHODSCYTHON_UNPACK_METHODS83,2338 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS84,2369 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE85,2403 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE86,2437 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL87,2474 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL88,2502 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY90,2563 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON91,2600 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON92,2639 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS94,2711 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS96,2756 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS97,2788 + #undef CYTHON_USE_PYLIST_INTERNALSCYTHON_USE_PYLIST_INTERNALS98,2823 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS99,2860 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS101,2939 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER103,2991 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER104,3026 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS105,3064 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS106,3101 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS108,3178 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS111,3264 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS114,3345 + #undef CYTHON_FAST_THREAD_STATECYTHON_FAST_THREAD_STATE116,3390 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE117,3424 + #undef CYTHON_FAST_PYCALLCYTHON_FAST_PYCALL118,3461 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL119,3489 + #define CYTHON_COMPILING_IN_PYPY CYTHON_COMPILING_IN_PYPY121,3526 + #define CYTHON_COMPILING_IN_PYSTON CYTHON_COMPILING_IN_PYSTON122,3563 + #define CYTHON_COMPILING_IN_CPYTHON CYTHON_COMPILING_IN_CPYTHON123,3602 + #define CYTHON_USE_TYPE_SLOTS CYTHON_USE_TYPE_SLOTS125,3674 + #undef CYTHON_USE_ASYNC_SLOTSCYTHON_USE_ASYNC_SLOTS128,3746 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS129,3780 + #define CYTHON_USE_ASYNC_SLOTS CYTHON_USE_ASYNC_SLOTS131,3858 + #undef CYTHON_USE_PYLONG_INTERNALSCYTHON_USE_PYLONG_INTERNALS134,3938 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS135,3977 + #define CYTHON_USE_PYLONG_INTERNALS CYTHON_USE_PYLONG_INTERNALS137,4065 + #define CYTHON_USE_PYLIST_INTERNALS CYTHON_USE_PYLIST_INTERNALS140,4154 + #define CYTHON_USE_UNICODE_INTERNALS CYTHON_USE_UNICODE_INTERNALS143,4244 + #undef CYTHON_USE_UNICODE_WRITERCYTHON_USE_UNICODE_WRITER146,4330 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER147,4367 + #define CYTHON_USE_UNICODE_WRITER CYTHON_USE_UNICODE_WRITER149,4451 + #define CYTHON_AVOID_BORROWED_REFS CYTHON_AVOID_BORROWED_REFS152,4537 + #define CYTHON_ASSUME_SAFE_MACROS CYTHON_ASSUME_SAFE_MACROS155,4623 + #define CYTHON_UNPACK_METHODS CYTHON_UNPACK_METHODS158,4704 + #define CYTHON_FAST_THREAD_STATE CYTHON_FAST_THREAD_STATE161,4784 + #define CYTHON_FAST_PYCALL CYTHON_FAST_PYCALL164,4861 +#define CYTHON_FAST_PYCCALL CYTHON_FAST_PYCCALL168,4944 + #undef SHIFTSHIFT172,5092 + #undef BASEBASE173,5107 + #undef MASKMASK174,5121 + #define Py_OptimizeFlag Py_OptimizeFlag177,5231 +#define __PYX_BUILD_PY_SSIZE_T __PYX_BUILD_PY_SSIZE_T179,5266 +#define CYTHON_FORMAT_SSIZE_T CYTHON_FORMAT_SSIZE_T180,5301 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME182,5360 + #define __Pyx_PyCode_New(__Pyx_PyCode_New183,5410 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType185,5584 + #define __Pyx_BUILTIN_MODULE_NAME __Pyx_BUILTIN_MODULE_NAME187,5636 + #define __Pyx_PyCode_New(__Pyx_PyCode_New188,5683 + #define __Pyx_DefaultClassType __Pyx_DefaultClassType190,5858 + #define Py_TPFLAGS_CHECKTYPES Py_TPFLAGS_CHECKTYPES193,5940 + #define Py_TPFLAGS_HAVE_INDEX Py_TPFLAGS_HAVE_INDEX196,6011 + #define Py_TPFLAGS_HAVE_NEWBUFFER Py_TPFLAGS_HAVE_NEWBUFFER199,6086 + #define Py_TPFLAGS_HAVE_FINALIZE Py_TPFLAGS_HAVE_FINALIZE202,6164 + #define METH_FASTCALL METH_FASTCALL205,6230 + typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject **args,__Pyx_PyCFunctionFast206,6259 + #define __Pyx_PyCFunctionFast __Pyx_PyCFunctionFast209,6428 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check212,6508 +#define __Pyx_PyFastCFunction_Check(__Pyx_PyFastCFunction_Check215,6686 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED218,6796 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY219,6830 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH221,6993 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR222,7059 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE223,7127 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND224,7201 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA225,7261 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ226,7321 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE227,7387 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE228,7462 + #define CYTHON_PEP393_ENABLED CYTHON_PEP393_ENABLED230,7599 + #define PyUnicode_1BYTE_KIND PyUnicode_1BYTE_KIND231,7633 + #define PyUnicode_2BYTE_KIND PyUnicode_2BYTE_KIND232,7667 + #define PyUnicode_4BYTE_KIND PyUnicode_4BYTE_KIND233,7701 + #define __Pyx_PyUnicode_READY(__Pyx_PyUnicode_READY234,7735 + #define __Pyx_PyUnicode_GET_LENGTH(__Pyx_PyUnicode_GET_LENGTH235,7781 + #define __Pyx_PyUnicode_READ_CHAR(__Pyx_PyUnicode_READ_CHAR236,7845 + #define __Pyx_PyUnicode_MAX_CHAR_VALUE(__Pyx_PyUnicode_MAX_CHAR_VALUE237,7927 + #define __Pyx_PyUnicode_KIND(__Pyx_PyUnicode_KIND238,8019 + #define __Pyx_PyUnicode_DATA(__Pyx_PyUnicode_DATA239,8082 + #define __Pyx_PyUnicode_READ(__Pyx_PyUnicode_READ240,8157 + #define __Pyx_PyUnicode_WRITE(__Pyx_PyUnicode_WRITE241,8243 + #define __Pyx_PyUnicode_IS_TRUE(__Pyx_PyUnicode_IS_TRUE242,8329 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat245,8436 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe246,8499 + #define __Pyx_PyUnicode_Concat(__Pyx_PyUnicode_Concat248,8568 + #define __Pyx_PyUnicode_ConcatSafe(__Pyx_PyUnicode_ConcatSafe249,8635 + #define PyUnicode_Contains(PyUnicode_Contains253,8863 + #define PyByteArray_Check(PyByteArray_Check256,8992 + #define PyObject_Format(PyObject_Format259,9134 + #define PyObject_Malloc(PyObject_Malloc262,9285 + #define PyObject_Free(PyObject_Free263,9332 + #define PyObject_Realloc(PyObject_Realloc264,9377 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars267,9463 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber268,9526 + #define __Pyx_PyCode_HasFreeVars(__Pyx_PyCode_HasFreeVars270,9622 + #define __Pyx_PyFrame_SetLineNumber(__Pyx_PyFrame_SetLineNumber271,9690 +#define __Pyx_PyString_FormatSafe(__Pyx_PyString_FormatSafe273,9780 +#define __Pyx_PyUnicode_FormatSafe(__Pyx_PyUnicode_FormatSafe274,9908 + #define __Pyx_PyString_Format(__Pyx_PyString_Format276,10057 + #define __Pyx_PyString_Format(__Pyx_PyString_Format278,10125 + #define PyObject_ASCII(PyObject_ASCII281,10246 + #define PyBaseString_Type PyBaseString_Type284,10335 + #define PyStringObject PyStringObject285,10389 + #define PyString_Type PyString_Type286,10444 + #define PyString_Check PyString_Check287,10498 + #define PyString_CheckExact PyString_CheckExact288,10553 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check291,10646 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact292,10707 + #define __Pyx_PyBaseString_Check(__Pyx_PyBaseString_Check294,10784 + #define __Pyx_PyBaseString_CheckExact(__Pyx_PyBaseString_CheckExact295,10870 + #define PySet_CheckExact(PySet_CheckExact298,11003 +#define __Pyx_TypeCheck(__Pyx_TypeCheck300,11079 +#define __Pyx_PyException_Check(__Pyx_PyException_Check301,11160 + #define PyIntObject PyIntObject303,11261 + #define PyInt_Type PyInt_Type304,11313 + #define PyInt_Check(PyInt_Check305,11364 + #define PyInt_CheckExact(PyInt_CheckExact306,11420 + #define PyInt_FromString PyInt_FromString307,11481 + #define PyInt_FromUnicode PyInt_FromUnicode308,11538 + #define PyInt_FromLong PyInt_FromLong309,11596 + #define PyInt_FromSize_t PyInt_FromSize_t310,11651 + #define PyInt_FromSsize_t PyInt_FromSsize_t311,11708 + #define PyInt_AsLong PyInt_AsLong312,11766 + #define PyInt_AS_LONG PyInt_AS_LONG313,11819 + #define PyInt_AsSsize_t PyInt_AsSsize_t314,11873 + #define PyInt_AsUnsignedLongMask PyInt_AsUnsignedLongMask315,11929 + #define PyInt_AsUnsignedLongLongMask PyInt_AsUnsignedLongLongMask316,11994 + #define PyNumber_Int PyNumber_Int317,12063 + #define PyBoolObject PyBoolObject320,12149 + #define PyUnicode_InternFromString(PyUnicode_InternFromString324,12299 + typedef long Py_hash_t;Py_hash_t328,12413 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t329,12439 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t330,12487 + #define __Pyx_PyInt_FromHash_t __Pyx_PyInt_FromHash_t332,12539 + #define __Pyx_PyInt_AsHash_t __Pyx_PyInt_AsHash_t333,12590 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New336,12672 + #define __Pyx_PyMethod_New(__Pyx_PyMethod_New338,12791 + #define __Pyx_PyAsyncMethodsStruct __Pyx_PyAsyncMethodsStruct342,12940 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync343,12994 + unaryfunc am_await;am_await346,13089 + unaryfunc am_aiter;am_aiter347,13117 + unaryfunc am_anext;am_anext348,13145 + } __Pyx_PyAsyncMethodsStruct;__Pyx_PyAsyncMethodsStruct349,13173 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync350,13207 + #define __Pyx_PyType_AsAsync(__Pyx_PyType_AsAsync353,13320 + #define CYTHON_RESTRICT CYTHON_RESTRICT357,13416 + #define CYTHON_RESTRICT CYTHON_RESTRICT359,13503 + #define CYTHON_RESTRICT CYTHON_RESTRICT361,13608 + #define CYTHON_RESTRICTCYTHON_RESTRICT363,13653 +# define CYTHON_UNUSED CYTHON_UNUSED369,13833 +# define CYTHON_UNUSEDCYTHON_UNUSED371,13898 +# define CYTHON_UNUSED CYTHON_UNUSED374,14010 +# define CYTHON_UNUSEDCYTHON_UNUSED376,14071 + template<class T> void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }CYTHON_MAYBE_UNUSED_VAR381,14170 +# define CYTHON_MAYBE_UNUSED_VAR(CYTHON_MAYBE_UNUSED_VAR383,14246 +# define CYTHON_NCP_UNUSEDCYTHON_NCP_UNUSED388,14370 +# define CYTHON_NCP_UNUSED CYTHON_NCP_UNUSED390,14405 +#define __Pyx_void_to_None(__Pyx_void_to_None393,14462 + #define CYTHON_INLINE CYTHON_INLINE400,14720 + #define CYTHON_INLINE CYTHON_INLINE402,14794 +void __Pyx_call_destructor(T& x) {__Pyx_call_destructor406,14864 +class __Pyx_FakeReference {__Pyx_FakeReference410,14934 + __Pyx_FakeReference() : ptr(NULL) { }__Pyx_FakeReference412,14972 + __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }__Pyx_FakeReference413,15014 + T *operator->() { return ptr; }operator ->414,15084 + T *operator&() { return ptr; }operator &415,15120 + operator T&() { return *ptr; }operator T&416,15155 + template<typename U> bool operator ==(U other) { return *ptr == other; }operator ==417,15190 + template<typename U> bool operator !=(U other) { return *ptr != other; }operator !=418,15267 + T *ptr;ptr420,15355 + #define _USE_MATH_DEFINES_USE_MATH_DEFINES424,15413 +#define __PYX_NAN(__PYX_NAN428,15477 +static CYTHON_INLINE float __PYX_NAN() {__PYX_NAN430,15517 +#define __Pyx_truncl __Pyx_truncl437,15686 +#define __Pyx_truncl __Pyx_truncl439,15719 +#define __PYX_ERR(__PYX_ERR443,15756 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide449,15939 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide450,16009 + #define __Pyx_PyNumber_Divide(__Pyx_PyNumber_Divide452,16092 + #define __Pyx_PyNumber_InPlaceDivide(__Pyx_PyNumber_InPlaceDivide453,16158 + #define __PYX_EXTERN_C __PYX_EXTERN_C458,16283 + #define __PYX_EXTERN_C __PYX_EXTERN_C460,16329 +#define __PYX_HAVE__pyisda__credit_index__PYX_HAVE__pyisda__credit_index464,16380 +#define __PYX_HAVE_API__pyisda__credit_index__PYX_HAVE_API__pyisda__credit_index465,16421 +#define CYTHON_WITHOUT_ASSERTIONSCYTHON_WITHOUT_ASSERTIONS504,17336 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;p507,17378 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;s507,17378 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;n507,17378 +typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;encoding507,17378 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_unicode508,17465 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;is_str508,17465 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;intern508,17465 + const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;__Pyx_StringTabEntry508,17465 +#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII __PYX_DEFAULT_STRING_ENCODING_IS_ASCII510,17567 +#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT511,17616 +#define __PYX_DEFAULT_STRING_ENCODING __PYX_DEFAULT_STRING_ENCODING512,17667 +#define __Pyx_PyObject_FromString __Pyx_PyObject_FromString513,17708 +#define __Pyx_PyObject_FromStringAndSize __Pyx_PyObject_FromStringAndSize514,17767 +#define __Pyx_uchar_cast(__Pyx_uchar_cast515,17840 +#define __Pyx_long_cast(__Pyx_long_cast516,17887 +#define __Pyx_fits_Py_ssize_t(__Pyx_fits_Py_ssize_t517,17924 + #define __Pyx_sst_abs(__Pyx_sst_abs529,18530 + #define __Pyx_sst_abs(__Pyx_sst_abs531,18613 + #define __Pyx_sst_abs(__Pyx_sst_abs533,18692 + #define __Pyx_sst_abs(__Pyx_sst_abs535,18782 + #define __Pyx_sst_abs(__Pyx_sst_abs537,18893 + #define __Pyx_sst_abs(__Pyx_sst_abs539,18964 + #define __Pyx_sst_abs(__Pyx_sst_abs541,19026 +#define __Pyx_PyByteArray_FromString(__Pyx_PyByteArray_FromString545,19248 +#define __Pyx_PyByteArray_FromStringAndSize(__Pyx_PyByteArray_FromStringAndSize546,19358 +#define __Pyx_PyBytes_FromString __Pyx_PyBytes_FromString547,19457 +#define __Pyx_PyBytes_FromStringAndSize __Pyx_PyBytes_FromStringAndSize548,19516 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString551,19679 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize552,19746 + #define __Pyx_PyStr_FromString __Pyx_PyStr_FromString554,19826 + #define __Pyx_PyStr_FromStringAndSize __Pyx_PyStr_FromStringAndSize555,19895 +#define __Pyx_PyObject_AsSString(__Pyx_PyObject_AsSString557,19978 +#define __Pyx_PyObject_AsUString(__Pyx_PyObject_AsUString558,20061 +#define __Pyx_PyObject_FromCString(__Pyx_PyObject_FromCString559,20146 +#define __Pyx_PyBytes_FromCString(__Pyx_PyBytes_FromCString560,20227 +#define __Pyx_PyByteArray_FromCString(__Pyx_PyByteArray_FromCString561,20307 +#define __Pyx_PyStr_FromCString(__Pyx_PyStr_FromCString562,20395 +#define __Pyx_PyUnicode_FromCString(__Pyx_PyUnicode_FromCString563,20473 +static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)__Pyx_Py_UNICODE_strlen565,20580 +#define __Pyx_Py_UNICODE_strlen __Pyx_Py_UNICODE_strlen572,20755 +#define __Pyx_PyUnicode_FromUnicode(__Pyx_PyUnicode_FromUnicode574,20812 +#define __Pyx_PyUnicode_FromUnicodeAndLength __Pyx_PyUnicode_FromUnicodeAndLength575,20910 +#define __Pyx_PyUnicode_AsUnicode __Pyx_PyUnicode_AsUnicode576,20977 +#define __Pyx_NewRef(__Pyx_NewRef577,21042 +#define __Pyx_Owned_Py_None(__Pyx_Owned_Py_None578,21090 +#define __Pyx_PyBool_FromLong(__Pyx_PyBool_FromLong579,21143 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble585,21522 +#define __pyx_PyFloat_AsDouble(__pyx_PyFloat_AsDouble587,21631 +#define __pyx_PyFloat_AsFloat(__pyx_PyFloat_AsFloat589,21692 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int591,21787 +#define __Pyx_PyNumber_Int(__Pyx_PyNumber_Int593,21883 +#define __Pyx_PyNumber_Float(__Pyx_PyNumber_Float595,21978 +static int __Pyx_sys_getdefaultencoding_not_ascii;__Pyx_sys_getdefaultencoding_not_ascii597,22139 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params598,22190 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize643,23919 +#define __Pyx_PyUnicode_FromStringAndSize(__Pyx_PyUnicode_FromStringAndSize645,24020 +static char* __PYX_DEFAULT_STRING_ENCODING;__PYX_DEFAULT_STRING_ENCODING647,24187 +static int __Pyx_init_sys_getdefaultencoding_params(void) {__Pyx_init_sys_getdefaultencoding_params648,24231 + #define likely(likely674,25125 + #define unlikely(unlikely675,25174 + #define likely(likely677,25259 + #define unlikely(unlikely678,25285 +static PyObject *__pyx_m;__pyx_m681,25334 +static PyObject *__pyx_d;__pyx_d682,25360 +static PyObject *__pyx_b;__pyx_b683,25386 +static PyObject *__pyx_empty_tuple;__pyx_empty_tuple684,25412 +static PyObject *__pyx_empty_bytes;__pyx_empty_bytes685,25448 +static PyObject *__pyx_empty_unicode;__pyx_empty_unicode686,25484 +static int __pyx_lineno;__pyx_lineno687,25522 +static int __pyx_clineno = 0;__pyx_clineno688,25547 +static const char * __pyx_cfilenm= __FILE__;__pyx_cfilenm689,25577 +static const char *__pyx_filename;__pyx_filename690,25622 + #define CYTHON_CCOMPLEX CYTHON_CCOMPLEX695,25734 + #define CYTHON_CCOMPLEX CYTHON_CCOMPLEX697,25792 + #define CYTHON_CCOMPLEX CYTHON_CCOMPLEX699,25830 + #undef _Complex_I_Complex_I710,26075 + #define _Complex_I _Complex_I711,26095 +static const char *__pyx_f[] = {__pyx_f715,26131 + struct __pyx_memoryview_obj *memview;memview729,26415 + char *data;data730,26455 + Py_ssize_t shape[8];shape731,26469 + Py_ssize_t strides[8];strides732,26492 + Py_ssize_t suboffsets[8];suboffsets733,26517 +} __Pyx_memviewslice;__Pyx_memviewslice734,26545 +#define IS_UNSIGNED(IS_UNSIGNED737,26600 +#define __PYX_BUF_FLAGS_PACKED_STRUCT __PYX_BUF_FLAGS_PACKED_STRUCT739,26671 + const char* name;name741,26735 + struct __Pyx_StructField_* fields;fields742,26755 + size_t size;size743,26792 + size_t arraysize[8];arraysize744,26807 + int ndim;ndim745,26830 + char typegroup;typegroup746,26842 + char is_unsigned;is_unsigned747,26860 + int flags;flags748,26880 +} __Pyx_TypeInfo;__Pyx_TypeInfo749,26893 +typedef struct __Pyx_StructField_ {__Pyx_StructField_750,26911 + __Pyx_TypeInfo* type;type751,26947 + const char* name;name752,26971 + size_t offset;offset753,26991 +} __Pyx_StructField;__Pyx_StructField754,27008 + __Pyx_StructField* field;field756,27046 + size_t parent_offset;parent_offset757,27074 +} __Pyx_BufFmt_StackElem;__Pyx_BufFmt_StackElem758,27098 + __Pyx_StructField root;root760,27141 + __Pyx_BufFmt_StackElem* head;head761,27167 + size_t fmt_offset;fmt_offset762,27199 + size_t new_count, enc_count;new_count763,27220 + size_t new_count, enc_count;enc_count763,27220 + size_t struct_alignment;struct_alignment764,27251 + int is_complex;is_complex765,27278 + char enc_type;enc_type766,27296 + char new_packmode;new_packmode767,27313 + char enc_packmode;enc_packmode768,27334 + char is_valid_array;is_valid_array769,27355 +} __Pyx_BufFmt_Context;__Pyx_BufFmt_Context770,27378 + #define CYTHON_ATOMICS CYTHON_ATOMICS775,27468 +#define __pyx_atomic_int_type __pyx_atomic_int_type777,27504 + #define __pyx_atomic_incr_aligned(__pyx_atomic_incr_aligned781,27713 + #define __pyx_atomic_decr_aligned(__pyx_atomic_decr_aligned782,27795 + #undef __pyx_atomic_int_type__pyx_atomic_int_type788,28028 + #define __pyx_atomic_int_type __pyx_atomic_int_type789,28061 + #define __pyx_atomic_incr_aligned(__pyx_atomic_incr_aligned790,28100 + #define __pyx_atomic_decr_aligned(__pyx_atomic_decr_aligned791,28179 + #define __pyx_atomic_incr_aligned(__pyx_atomic_incr_aligned796,28422 + #define __pyx_atomic_decr_aligned(__pyx_atomic_decr_aligned797,28502 + #undef CYTHON_ATOMICSCYTHON_ATOMICS802,28669 + #define CYTHON_ATOMICS CYTHON_ATOMICS803,28695 +typedef volatile __pyx_atomic_int_type __pyx_atomic_int;__pyx_atomic_int808,28810 + #define __pyx_add_acquisition_count(__pyx_add_acquisition_count810,28886 + #define __pyx_sub_acquisition_count(__pyx_sub_acquisition_count812,29030 + #define __pyx_add_acquisition_count(__pyx_add_acquisition_count815,29179 + #define __pyx_sub_acquisition_count(__pyx_sub_acquisition_count817,29331 +typedef long __pyx_t_6pyisda_4date_TDate;__pyx_t_6pyisda_4date_TDate829,29632 +typedef int __pyx_t_6pyisda_4legs_TBoolean;__pyx_t_6pyisda_4legs_TBoolean838,29819 +typedef npy_int8 __pyx_t_5numpy_int8_t;__pyx_t_5numpy_int8_t847,30156 +typedef npy_int16 __pyx_t_5numpy_int16_t;__pyx_t_5numpy_int16_t856,30467 +typedef npy_int32 __pyx_t_5numpy_int32_t;__pyx_t_5numpy_int32_t865,30812 +typedef npy_int64 __pyx_t_5numpy_int64_t;__pyx_t_5numpy_int64_t874,31160 +typedef npy_uint8 __pyx_t_5numpy_uint8_t;__pyx_t_5numpy_uint8_t883,31478 +typedef npy_uint16 __pyx_t_5numpy_uint16_t;__pyx_t_5numpy_uint16_t892,31795 +typedef npy_uint32 __pyx_t_5numpy_uint32_t;__pyx_t_5numpy_uint32_t901,32147 +typedef npy_uint64 __pyx_t_5numpy_uint64_t;__pyx_t_5numpy_uint64_t910,32502 +typedef npy_float32 __pyx_t_5numpy_float32_t;__pyx_t_5numpy_float32_t919,32828 +typedef npy_float64 __pyx_t_5numpy_float64_t;__pyx_t_5numpy_float64_t928,33157 +typedef npy_long __pyx_t_5numpy_int_t;__pyx_t_5numpy_int_t937,33542 +typedef npy_longlong __pyx_t_5numpy_long_t;__pyx_t_5numpy_long_t946,33874 +typedef npy_longlong __pyx_t_5numpy_longlong_t;__pyx_t_5numpy_longlong_t955,34189 +typedef npy_ulong __pyx_t_5numpy_uint_t;__pyx_t_5numpy_uint_t964,34515 +typedef npy_ulonglong __pyx_t_5numpy_ulong_t;__pyx_t_5numpy_ulong_t973,34800 +typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t;__pyx_t_5numpy_ulonglong_t982,35120 +typedef npy_intp __pyx_t_5numpy_intp_t;__pyx_t_5numpy_intp_t991,35414 +typedef npy_uintp __pyx_t_5numpy_uintp_t;__pyx_t_5numpy_uintp_t1000,35694 +typedef npy_double __pyx_t_5numpy_float_t;__pyx_t_5numpy_float_t1009,36014 +typedef npy_double __pyx_t_5numpy_double_t;__pyx_t_5numpy_double_t1018,36304 +typedef npy_longdouble __pyx_t_5numpy_longdouble_t;__pyx_t_5numpy_longdouble_t1027,36628 + typedef ::std::complex< float > __pyx_t_float_complex;__pyx_t_float_complex1031,36746 + typedef float _Complex __pyx_t_float_complex;__pyx_t_float_complex1033,36813 + typedef struct { float real, imag; } __pyx_t_float_complex;real1036,36878 + typedef struct { float real, imag; } __pyx_t_float_complex;imag1036,36878 + typedef struct { float real, imag; } __pyx_t_float_complex;__pyx_t_float_complex1036,36878 + typedef ::std::complex< double > __pyx_t_double_complex;__pyx_t_double_complex1043,37107 + typedef double _Complex __pyx_t_double_complex;__pyx_t_double_complex1045,37176 + typedef struct { double real, imag; } __pyx_t_double_complex;real1048,37243 + typedef struct { double real, imag; } __pyx_t_double_complex;imag1048,37243 + typedef struct { double real, imag; } __pyx_t_double_complex;__pyx_t_double_complex1048,37243 +enum __pyx_t_6pyisda_4date_DCC {__pyx_t_6pyisda_4date_DCC1074,38142 + __pyx_e_6pyisda_4date_ACT_365 = 1L,__pyx_e_6pyisda_4date_ACT_3651075,38175 + __pyx_e_6pyisda_4date_ACT_365F = 2L,__pyx_e_6pyisda_4date_ACT_365F1076,38213 + __pyx_e_6pyisda_4date_ACT_360 = 3L__pyx_e_6pyisda_4date_ACT_3601077,38252 +enum __pyx_t_6pyisda_5curve_Basis {__pyx_t_6pyisda_5curve_Basis1087,38568 + __pyx_e_6pyisda_5curve_CONTINUOUS = 0x1388,__pyx_e_6pyisda_5curve_CONTINUOUS1088,38604 + __pyx_e_6pyisda_5curve_DISCOUNT_RATE = 0x200,__pyx_e_6pyisda_5curve_DISCOUNT_RATE1089,38650 + __pyx_e_6pyisda_5curve_SIMPLE_BASIS = 0,__pyx_e_6pyisda_5curve_SIMPLE_BASIS1090,38698 + __pyx_e_6pyisda_5curve_ANNUAL_BASIS = 1,__pyx_e_6pyisda_5curve_ANNUAL_BASIS1091,38741 + __pyx_e_6pyisda_5curve_DISCOUNT_FACTOR = -2L__pyx_e_6pyisda_5curve_DISCOUNT_FACTOR1092,38784 +typedef npy_cfloat __pyx_t_5numpy_cfloat_t;__pyx_t_5numpy_cfloat_t1102,39123 +typedef npy_cdouble __pyx_t_5numpy_cdouble_t;__pyx_t_5numpy_cdouble_t1111,39420 +typedef npy_clongdouble __pyx_t_5numpy_clongdouble_t;__pyx_t_5numpy_clongdouble_t1120,39753 +typedef npy_cdouble __pyx_t_5numpy_complex_t;__pyx_t_5numpy_complex_t1129,40071 +struct __pyx_obj_6pyisda_5curve_Curve {__pyx_obj_6pyisda_5curve_Curve1138,40267 + std::shared_ptr<TCurve> _thisptr;_thisptr1140,40323 +struct __pyx_obj_6pyisda_5curve_YieldCurve {__pyx_obj_6pyisda_5curve_YieldCurve1151,40547 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base1152,40592 + TDate *_dates;_dates1153,40644 + size_t _ninstr;_ninstr1154,40661 +struct __pyx_obj_6pyisda_5curve_SpreadCurve {__pyx_obj_6pyisda_5curve_SpreadCurve1165,40817 + struct __pyx_obj_6pyisda_5curve_Curve __pyx_base;__pyx_base1166,40863 +struct __pyx_obj_6pyisda_4legs_ContingentLeg {__pyx_obj_6pyisda_4legs_ContingentLeg1177,41082 + TContingentLeg *_thisptr;_thisptr1179,41145 +struct __pyx_obj_6pyisda_4legs_FeeLeg {__pyx_obj_6pyisda_4legs_FeeLeg1189,41289 + TFeeLeg *_thisptr;_thisptr1191,41345 +struct __pyx_obj_6pyisda_12credit_index_CurveList {__pyx_obj_6pyisda_12credit_index_CurveList1202,41577 + __pyx_t_6pyisda_4date_TDate _base_date;_base_date1204,41645 + std::vector<std::shared_ptr<TCurve> > _curves;_curves1205,41687 + std::vector<double> _weights;_weights1206,41737 + std::vector<double> _T;_T1207,41770 + PyObject *_tickers;_tickers1208,41797 + PyObject *_tickersdict;_tickersdict1209,41819 +struct __pyx_obj_6pyisda_12credit_index_CreditIndex {__pyx_obj_6pyisda_12credit_index_CreditIndex1220,42049 + struct __pyx_obj_6pyisda_12credit_index_CurveList __pyx_base;__pyx_base1221,42103 + PyObject *_start_date;_start_date1222,42167 + std::vector<__pyx_t_6pyisda_4date_TDate> _maturities;_maturities1223,42192 + TContingentLeg **_contingent_legs;_contingent_legs1224,42249 + TFeeLeg **_fee_legs;_fee_legs1225,42286 +struct __pyx_obj_6pyisda_12credit_index___pyx_scope_struct__items {__pyx_obj_6pyisda_12credit_index___pyx_scope_struct__items1236,42541 + size_t __pyx_v_i;__pyx_v_i1238,42625 + std::vector<std::shared_ptr<TCurve> > ::iterator __pyx_v_it;__pyx_v_it1239,42645 + struct __pyx_obj_6pyisda_5curve_SpreadCurve *__pyx_v_sc;__pyx_v_sc1240,42708 + struct __pyx_obj_6pyisda_12credit_index_CurveList *__pyx_v_self;__pyx_v_self1241,42767 +struct __pyx_array_obj {__pyx_array_obj1252,42964 + struct __pyx_vtabstruct_array *__pyx_vtab;__pyx_vtab1254,43005 + char *data;data1255,43050 + Py_ssize_t len;len1256,43064 + char *format;format1257,43082 + int ndim;ndim1258,43098 + Py_ssize_t *_shape;_shape1259,43110 + Py_ssize_t *_strides;_strides1260,43132 + Py_ssize_t itemsize;itemsize1261,43156 + PyObject *mode;mode1262,43179 + PyObject *_format;_format1263,43197 + void (*callback_free_data)(void *);callback_free_data1264,43218 + int free_data;free_data1265,43256 + int dtype_is_object;dtype_is_object1266,43273 +struct __pyx_MemviewEnum_obj {__pyx_MemviewEnum_obj1277,43479 + PyObject *name;name1279,43526 +struct __pyx_memoryview_obj {__pyx_memoryview_obj1290,43702 + struct __pyx_vtabstruct_memoryview *__pyx_vtab;__pyx_vtab1292,43748 + PyObject *obj;obj1293,43798 + PyObject *_size;_size1294,43815 + PyObject *_array_interface;_array_interface1295,43834 + PyThread_type_lock lock;lock1296,43864 + __pyx_atomic_int acquisition_count[2];acquisition_count1297,43891 + __pyx_atomic_int *acquisition_count_aligned_p;acquisition_count_aligned_p1298,43932 + Py_buffer view;view1299,43981 + int flags;flags1300,43999 + int dtype_is_object;dtype_is_object1301,44012 + __Pyx_TypeInfo *typeinfo;typeinfo1302,44035 +struct __pyx_memoryviewslice_obj {__pyx_memoryviewslice_obj1313,44277 + struct __pyx_memoryview_obj __pyx_base;__pyx_base1314,44312 + __Pyx_memviewslice from_slice;from_slice1315,44354 + PyObject *from_object;from_object1316,44387 + PyObject *(*to_object_func)(char *);to_object_func1317,44412 + int (*to_dtype_func)(char *, PyObject *);to_dtype_func1318,44451 +struct __pyx_vtabstruct_array {__pyx_vtabstruct_array1331,44627 + PyObject *(*get_memview)(struct __pyx_array_obj *);get_memview1332,44659 +static struct __pyx_vtabstruct_array *__pyx_vtabptr_array;__pyx_vtabptr_array1334,44716 +struct __pyx_vtabstruct_memoryview {__pyx_vtabstruct_memoryview1345,44931 + char *(*get_item_pointer)(struct __pyx_memoryview_obj *, PyObject *);get_item_pointer1346,44968 + PyObject *(*is_slice)(struct __pyx_memoryview_obj *, PyObject *);is_slice1347,45040 + PyObject *(*setitem_slice_assignment)(struct __pyx_memoryview_obj *, PyObject *, PyObject *);setitem_slice_assignment1348,45108 + PyObject *(*setitem_slice_assign_scalar)(struct __pyx_memoryview_obj *, struct __pyx_memoryview_obj *, PyObject *);setitem_slice_assign_scalar1349,45204 + PyObject *(*setitem_indexed)(struct __pyx_memoryview_obj *, PyObject *, PyObject *);setitem_indexed1350,45322 + PyObject *(*convert_item_to_object)(struct __pyx_memoryview_obj *, char *);convert_item_to_object1351,45409 + PyObject *(*assign_item_from_object)(struct __pyx_memoryview_obj *, char *, PyObject *);assign_item_from_object1352,45487 +static struct __pyx_vtabstruct_memoryview *__pyx_vtabptr_memoryview;__pyx_vtabptr_memoryview1354,45581 +struct __pyx_vtabstruct__memoryviewslice {__pyx_vtabstruct__memoryviewslice1365,45862 + struct __pyx_vtabstruct_memoryview __pyx_base;__pyx_base1366,45905 +static struct __pyx_vtabstruct__memoryviewslice *__pyx_vtabptr__memoryviewslice;__pyx_vtabptr__memoryviewslice1368,45957 + #define CYTHON_REFNANNY CYTHON_REFNANNY1373,46126 + void (*INCREF)(void*, PyObject*, int);INCREF1377,46200 + void (*DECREF)(void*, PyObject*, int);DECREF1378,46243 + void (*GOTREF)(void*, PyObject*, int);GOTREF1379,46286 + void (*GIVEREF)(void*, PyObject*, int);GIVEREF1380,46329 + void* (*SetupContext)(const char*, int, const char*);SetupContext1381,46373 + void (*FinishContext)(void**);FinishContext1382,46431 + } __Pyx_RefNannyAPIStruct;__Pyx_RefNannyAPIStruct1383,46466 + static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;__Pyx_RefNanny1384,46495 + #define __Pyx_RefNannyDeclarations __Pyx_RefNannyDeclarations1386,46632 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext1388,46717 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext1397,47153 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext1400,47301 + #define __Pyx_INCREF(__Pyx_INCREF1402,47399 + #define __Pyx_DECREF(__Pyx_DECREF1403,47492 + #define __Pyx_GOTREF(__Pyx_GOTREF1404,47585 + #define __Pyx_GIVEREF(__Pyx_GIVEREF1405,47678 + #define __Pyx_XINCREF(__Pyx_XINCREF1406,47772 + #define __Pyx_XDECREF(__Pyx_XDECREF1407,47851 + #define __Pyx_XGOTREF(__Pyx_XGOTREF1408,47930 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF1409,48009 + #define __Pyx_RefNannyDeclarations__Pyx_RefNannyDeclarations1411,48094 + #define __Pyx_RefNannySetupContext(__Pyx_RefNannySetupContext1412,48131 + #define __Pyx_RefNannyFinishContext(__Pyx_RefNannyFinishContext1413,48187 + #define __Pyx_INCREF(__Pyx_INCREF1414,48227 + #define __Pyx_DECREF(__Pyx_DECREF1415,48266 + #define __Pyx_GOTREF(__Pyx_GOTREF1416,48305 + #define __Pyx_GIVEREF(__Pyx_GIVEREF1417,48331 + #define __Pyx_XINCREF(__Pyx_XINCREF1418,48358 + #define __Pyx_XDECREF(__Pyx_XDECREF1419,48399 + #define __Pyx_XGOTREF(__Pyx_XGOTREF1420,48440 + #define __Pyx_XGIVEREF(__Pyx_XGIVEREF1421,48467 +#define __Pyx_XDECREF_SET(__Pyx_XDECREF_SET1423,48502 +#define __Pyx_DECREF_SET(__Pyx_DECREF_SET1427,48633 +#define __Pyx_CLEAR(__Pyx_CLEAR1431,48762 +#define __Pyx_XCLEAR(__Pyx_XCLEAR1432,48866 +static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {__Pyx_PyObject_GetAttrStr1436,49046 +#define __Pyx_PyObject_GetAttrStr(__Pyx_PyObject_GetAttrStr1447,49443 +#define __Pyx_BUF_MAX_NDIMS __Pyx_BUF_MAX_NDIMS1471,50487 +#define __Pyx_MEMVIEW_DIRECT __Pyx_MEMVIEW_DIRECT1472,50533 +#define __Pyx_MEMVIEW_PTR __Pyx_MEMVIEW_PTR1473,50566 +#define __Pyx_MEMVIEW_FULL __Pyx_MEMVIEW_FULL1474,50599 +#define __Pyx_MEMVIEW_CONTIG __Pyx_MEMVIEW_CONTIG1475,50632 +#define __Pyx_MEMVIEW_STRIDED __Pyx_MEMVIEW_STRIDED1476,50665 +#define __Pyx_MEMVIEW_FOLLOW __Pyx_MEMVIEW_FOLLOW1477,50699 +#define __Pyx_IS_C_CONTIG __Pyx_IS_C_CONTIG1478,50733 +#define __Pyx_IS_F_CONTIG __Pyx_IS_F_CONTIG1479,50761 +#define __pyx_get_slice_count_pointer(__pyx_get_slice_count_pointer1489,51258 +#define __pyx_get_slice_count(__pyx_get_slice_count1490,51344 +#define __PYX_INC_MEMVIEW(__PYX_INC_MEMVIEW1491,51425 +#define __PYX_XDEC_MEMVIEW(__PYX_XDEC_MEMVIEW1492,51513 +#define __Pyx_GetItemInt(__Pyx_GetItemInt1501,51956 +#define __Pyx_GetItemInt_List(__Pyx_GetItemInt_List1506,52340 +#define __Pyx_GetItemInt_Tuple(__Pyx_GetItemInt_Tuple1512,52833 +#define __Pyx_PyObject_Call(__Pyx_PyObject_Call1529,53855 +#define __Pyx_PyThreadState_declare __Pyx_PyThreadState_declare1534,53993 +#define __Pyx_PyThreadState_assign __Pyx_PyThreadState_assign1535,54059 +#define __Pyx_PyThreadState_declare__Pyx_PyThreadState_declare1537,54137 +#define __Pyx_PyThreadState_assign__Pyx_PyThreadState_assign1538,54173 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState1543,54275 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState1544,54389 +#define __Pyx_ErrRestore(__Pyx_ErrRestore1545,54501 +#define __Pyx_ErrFetch(__Pyx_ErrFetch1546,54599 +#define __Pyx_ErrRestoreWithState(__Pyx_ErrRestoreWithState1550,54944 +#define __Pyx_ErrFetchWithState(__Pyx_ErrFetchWithState1551,55027 +#define __Pyx_ErrRestore(__Pyx_ErrRestore1552,55106 +#define __Pyx_ErrFetch(__Pyx_ErrFetch1553,55180 +static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {__Pyx_PyList_Append1573,55879 +#define __Pyx_PyList_Append(__Pyx_PyList_Append1585,56268 +static CYTHON_INLINE int __Pyx_PySequence_ContainsTF(PyObject* item, PyObject* seq, int eq) {__Pyx_PySequence_ContainsTF1596,56595 +#define __Pyx_tp_new(__Pyx_tp_new1602,56830 +static CYTHON_INLINE PyObject* __Pyx_tp_new_kwargs(PyObject* type_obj, PyObject* args, PyObject* kwargs) {__Pyx_tp_new_kwargs1603,56909 +static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {__Pyx_PyDict_GetItem1609,57197 + #define __Pyx_PyDict_GetItem(__Pyx_PyDict_GetItem1625,57643 +#define __Pyx_PyCFunction_FastCall(__Pyx_PyCFunction_FastCall1632,57889 +#define __Pyx_PyFunction_FastCall(__Pyx_PyFunction_FastCall1637,58024 +#define __Pyx_PyFunction_FastCallDict(__Pyx_PyFunction_FastCallDict1642,58296 +#define __Pyx_BufPtrStrided2d(__Pyx_BufPtrStrided2d1657,58755 +#define __Pyx_ExceptionSave(__Pyx_ExceptionSave1666,59115 +#define __Pyx_ExceptionReset(__Pyx_ExceptionReset1668,59334 +#define __Pyx_ExceptionSave(__Pyx_ExceptionSave1671,59559 +#define __Pyx_ExceptionReset(__Pyx_ExceptionReset1672,59640 +#define __Pyx_PyErr_ExceptionMatches(__Pyx_PyErr_ExceptionMatches1677,59792 +#define __Pyx_PyErr_ExceptionMatches(__Pyx_PyErr_ExceptionMatches1680,59995 +#define __Pyx_GetException(__Pyx_GetException1685,60128 +#define __Pyx_PyString_Equals __Pyx_PyString_Equals1699,60700 +#define __Pyx_PyString_Equals __Pyx_PyString_Equals1701,60759 +#define UNARY_NEG_WOULD_OVERFLOW(UNARY_NEG_WOULD_OVERFLOW1708,60944 +#define __Pyx_ExceptionSwap(__Pyx_ExceptionSwap1724,61686 +static CYTHON_INLINE int __Pyx_ListComp_Append(PyObject* list, PyObject* x) {__Pyx_ListComp_Append1736,62334 +#define __Pyx_ListComp_Append(__Pyx_ListComp_Append1748,62689 +#define __Pyx_PyInt_AddObjC(__Pyx_PyInt_AddObjC1755,62904 +static CYTHON_INLINE int __Pyx_PyList_Extend(PyObject* L, PyObject* v) {__Pyx_PyList_Extend1760,63062 + #define __PYX_FORCE_INIT_THREADS __PYX_FORCE_INIT_THREADS1777,63543 + PyCodeObject* code_object;code_object1793,64023 + int code_line;code_line1794,64054 +} __Pyx_CodeObjectCacheEntry;__Pyx_CodeObjectCacheEntry1795,64073 +struct __Pyx_CodeObjectCache {__Pyx_CodeObjectCache1796,64103 + int count;count1797,64134 + int max_count;max_count1798,64149 + __Pyx_CodeObjectCacheEntry* entries;entries1799,64168 +static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};__pyx_code_cache1801,64212 + #define __Pyx_GetBuffer __Pyx_GetBuffer1817,64872 + #define __Pyx_ReleaseBuffer __Pyx_ReleaseBuffer1818,64919 + Py_ssize_t shape, strides, suboffsets;shape1824,65026 + Py_ssize_t shape, strides, suboffsets;strides1824,65026 + Py_ssize_t shape, strides, suboffsets;suboffsets1824,65026 +} __Pyx_Buf_DimInfo;__Pyx_Buf_DimInfo1825,65067 + size_t refcount;refcount1827,65105 + Py_buffer pybuffer;pybuffer1828,65124 +} __Pyx_Buffer;__Pyx_Buffer1829,65146 + __Pyx_Buffer *rcbuffer;rcbuffer1831,65179 + char *data;data1832,65205 + __Pyx_Buf_DimInfo diminfo[8];diminfo1833,65219 +} __Pyx_LocalBuf_ND;__Pyx_LocalBuf_ND1834,65251 +static Py_ssize_t __Pyx_zeros[] = {0, 0, 0, 0, 0, 0, 0, 0};__Pyx_zeros1837,65290 +static Py_ssize_t __Pyx_minusones[] = {-1, -1, -1, -1, -1, -1, -1, -1};__Pyx_minusones1838,65350 +static void __Pyx_CppExn2PyErr() {__Pyx_CppExn2PyErr1878,66740 + #define __Pyx_CREAL(__Pyx_CREAL1924,68395 + #define __Pyx_CIMAG(__Pyx_CIMAG1925,68435 + #define __Pyx_CREAL(__Pyx_CREAL1927,68483 + #define __Pyx_CIMAG(__Pyx_CIMAG1928,68524 + #define __Pyx_CREAL(__Pyx_CREAL1931,68580 + #define __Pyx_CIMAG(__Pyx_CIMAG1932,68618 + #define __Pyx_SET_CREAL(__Pyx_SET_CREAL1936,68867 + #define __Pyx_SET_CIMAG(__Pyx_SET_CIMAG1937,68914 + #define __Pyx_SET_CREAL(__Pyx_SET_CREAL1939,68967 + #define __Pyx_SET_CIMAG(__Pyx_SET_CIMAG1940,69021 + #define __Pyx_c_eq_float(__Pyx_c_eq_float1945,69126 + #define __Pyx_c_sum_float(__Pyx_c_sum_float1946,69174 + #define __Pyx_c_diff_float(__Pyx_c_diff_float1947,69221 + #define __Pyx_c_prod_float(__Pyx_c_prod_float1948,69268 + #define __Pyx_c_quot_float(__Pyx_c_quot_float1949,69315 + #define __Pyx_c_neg_float(__Pyx_c_neg_float1950,69362 + #define __Pyx_c_is_zero_float(__Pyx_c_is_zero_float1952,69427 + #define __Pyx_c_conj_float(__Pyx_c_conj_float1953,69480 + #define __Pyx_c_abs_float(__Pyx_c_abs_float1955,69544 + #define __Pyx_c_pow_float(__Pyx_c_pow_float1956,69601 + #define __Pyx_c_is_zero_float(__Pyx_c_is_zero_float1959,69680 + #define __Pyx_c_conj_float(__Pyx_c_conj_float1960,69726 + #define __Pyx_c_abs_float(__Pyx_c_abs_float1962,69784 + #define __Pyx_c_pow_float(__Pyx_c_pow_float1963,69836 + #define __Pyx_c_eq_double(__Pyx_c_eq_double1983,70979 + #define __Pyx_c_sum_double(__Pyx_c_sum_double1984,71028 + #define __Pyx_c_diff_double(__Pyx_c_diff_double1985,71076 + #define __Pyx_c_prod_double(__Pyx_c_prod_double1986,71124 + #define __Pyx_c_quot_double(__Pyx_c_quot_double1987,71172 + #define __Pyx_c_neg_double(__Pyx_c_neg_double1988,71220 + #define __Pyx_c_is_zero_double(__Pyx_c_is_zero_double1990,71286 + #define __Pyx_c_conj_double(__Pyx_c_conj_double1991,71341 + #define __Pyx_c_abs_double(__Pyx_c_abs_double1993,71406 + #define __Pyx_c_pow_double(__Pyx_c_pow_double1994,71464 + #define __Pyx_c_is_zero_double(__Pyx_c_is_zero_double1997,71544 + #define __Pyx_c_conj_double(__Pyx_c_conj_double1998,71591 + #define __Pyx_c_abs_double(__Pyx_c_abs_double2000,71649 + #define __Pyx_c_pow_double(__Pyx_c_pow_double2001,71701 +typedef PyObject *(*__pyx_coroutine_body_t)(PyObject *, PyObject *);__pyx_coroutine_body_t2048,73848 + __pyx_coroutine_body_t body;body2051,73952 + PyObject *closure;closure2052,73985 + PyObject *exc_type;exc_type2053,74008 + PyObject *exc_value;exc_value2054,74032 + PyObject *exc_traceback;exc_traceback2055,74057 + PyObject *gi_weakreflist;gi_weakreflist2056,74086 + PyObject *classobj;classobj2057,74116 + PyObject *yieldfrom;yieldfrom2058,74140 + PyObject *gi_name;gi_name2059,74165 + PyObject *gi_qualname;gi_qualname2060,74188 + PyObject *gi_modulename;gi_modulename2061,74215 + int resume_label;resume_label2062,74244 + char is_running;is_running2063,74266 +} __pyx_CoroutineObject;__pyx_CoroutineObject2064,74287 +#define __Pyx_PyGen_FetchStopIterationValue(__Pyx_PyGen_FetchStopIterationValue2072,74660 +#define __Pyx_Generator_USED__Pyx_Generator_USED2082,74969 +static PyTypeObject *__pyx_GeneratorType = 0;__pyx_GeneratorType2083,74998 +#define __Pyx_Generator_CheckExact(__Pyx_Generator_CheckExact2084,75044 +#define __Pyx_Generator_New(__Pyx_Generator_New2085,75122 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString2096,75561 + #define __Pyx_PyIdentifier_FromString(__Pyx_PyIdentifier_FromString2098,75633 +static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0;__pyx_ptype_7cpython_4type_type2130,77734 +static PyTypeObject *__pyx_ptype_7cpython_4bool_bool = 0;__pyx_ptype_7cpython_4bool_bool2163,78554 +static PyTypeObject *__pyx_ptype_7cpython_7complex_complex = 0;__pyx_ptype_7cpython_7complex_complex2172,78803 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_date = 0;__pyx_ptype_7cpython_8datetime_date2211,79798 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_time = 0;__pyx_ptype_7cpython_8datetime_time2212,79860 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_datetime = 0;__pyx_ptype_7cpython_8datetime_datetime2213,79922 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_timedelta = 0;__pyx_ptype_7cpython_8datetime_timedelta2214,79988 +static PyTypeObject *__pyx_ptype_7cpython_8datetime_tzinfo = 0;__pyx_ptype_7cpython_8datetime_tzinfo2215,80055 +static __pyx_t_6pyisda_4date_TDate (*__pyx_f_6pyisda_4date_pydate_to_TDate)(PyDateTime_Date *); /*proto*/__pyx_f_6pyisda_4date_pydate_to_TDate2218,80165 +static PyDateTime_Date *(*__pyx_f_6pyisda_4date_TDate_to_pydate)(__pyx_t_6pyisda_4date_TDate, int __pyx_skip_dispatch); /*proto*/__pyx_f_6pyisda_4date_TDate_to_pydate2219,80271 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_Curve = 0;__pyx_ptype_6pyisda_5curve_Curve2226,80537 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_YieldCurve = 0;__pyx_ptype_6pyisda_5curve_YieldCurve2227,80596 +static PyTypeObject *__pyx_ptype_6pyisda_5curve_SpreadCurve = 0;__pyx_ptype_6pyisda_5curve_SpreadCurve2228,80660 +static void (*__pyx_f_6pyisda_5curve_tweak_curve)(TCurve *, TCurve *, double, std::vector<double> &, std::vector<double> const &, int *); /*proto*/__pyx_f_6pyisda_5curve_tweak_curve2229,80725 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_ContingentLeg = 0;__pyx_ptype_6pyisda_4legs_ContingentLeg2234,80969 +static PyTypeObject *__pyx_ptype_6pyisda_4legs_FeeLeg = 0;__pyx_ptype_6pyisda_4legs_FeeLeg2235,81035 +static PyTypeObject *__pyx_ptype_5numpy_dtype = 0;__pyx_ptype_5numpy_dtype2246,81307 +static PyTypeObject *__pyx_ptype_5numpy_flatiter = 0;__pyx_ptype_5numpy_flatiter2247,81358 +static PyTypeObject *__pyx_ptype_5numpy_broadcast = 0;__pyx_ptype_5numpy_broadcast2248,81412 +static PyTypeObject *__pyx_ptype_5numpy_ndarray = 0;__pyx_ptype_5numpy_ndarray2249,81467 +static PyTypeObject *__pyx_ptype_5numpy_ufunc = 0;__pyx_ptype_5numpy_ufunc2250,81520 +static PyTypeObject *__pyx_ptype_6pyisda_12credit_index_CurveList = 0;__pyx_ptype_6pyisda_12credit_index_CurveList2255,81806 +static PyTypeObject *__pyx_ptype_6pyisda_12credit_index_CreditIndex = 0;__pyx_ptype_6pyisda_12credit_index_CreditIndex2256,81877 +static PyTypeObject *__pyx_ptype_6pyisda_12credit_index___pyx_scope_struct__items = 0;__pyx_ptype_6pyisda_12credit_index___pyx_scope_struct__items2257,81950 +static PyTypeObject *__pyx_array_type = 0;__pyx_array_type2258,82037 +static PyTypeObject *__pyx_MemviewEnum_type = 0;__pyx_MemviewEnum_type2259,82080 +static PyTypeObject *__pyx_memoryview_type = 0;__pyx_memoryview_type2260,82129 +static PyTypeObject *__pyx_memoryviewslice_type = 0;__pyx_memoryviewslice_type2261,82177 +static PyObject *generic = 0;generic2262,82230 +static PyObject *strided = 0;strided2263,82260 +static PyObject *indirect = 0;indirect2264,82290 +static PyObject *contiguous = 0;contiguous2265,82321 +static PyObject *indirect_contiguous = 0;indirect_contiguous2266,82354 +static int __pyx_memoryview_thread_locks_used;__pyx_memoryview_thread_locks_used2267,82396 +static PyThread_type_lock __pyx_memoryview_thread_locks[8];__pyx_memoryview_thread_locks2268,82443 +static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t = { "float64_t", NULL, sizeof(__pyx_t_5numpy_float64_t), { 0 }, 0, 'R', 0, 0 };__Pyx_TypeInfo_nn___pyx_t_5numpy_float64_t2302,85829 +static __Pyx_TypeInfo __Pyx_TypeInfo_double = { "double", NULL, sizeof(double), { 0 }, 0, 'R', 0, 0 };__Pyx_TypeInfo_double2303,85974 +#define __Pyx_MODULE_NAME __Pyx_MODULE_NAME2304,86077 +int __pyx_module_is_main_pyisda__credit_index = 0;__pyx_module_is_main_pyisda__credit_index2305,86125 +static PyObject *__pyx_builtin_TypeError;__pyx_builtin_TypeError2308,86223 +static PyObject *__pyx_builtin_range;__pyx_builtin_range2309,86265 +static PyObject *__pyx_builtin_enumerate;__pyx_builtin_enumerate2310,86303 +static PyObject *__pyx_builtin_ValueError;__pyx_builtin_ValueError2311,86345 +static PyObject *__pyx_builtin_KeyError;__pyx_builtin_KeyError2312,86388 +static PyObject *__pyx_builtin_RuntimeError;__pyx_builtin_RuntimeError2313,86429 +static PyObject *__pyx_builtin_ImportError;__pyx_builtin_ImportError2314,86474 +static PyObject *__pyx_builtin_MemoryError;__pyx_builtin_MemoryError2315,86518 +static PyObject *__pyx_builtin_Ellipsis;__pyx_builtin_Ellipsis2316,86562 +static PyObject *__pyx_builtin_id;__pyx_builtin_id2317,86603 +static PyObject *__pyx_builtin_IndexError;__pyx_builtin_IndexError2318,86638 +static const char __pyx_k_O[] = "O";__pyx_k_O2319,86681 +static const char __pyx_k_c[] = "c";__pyx_k_c2320,86718 +static const char __pyx_k_id[] = "id";__pyx_k_id2321,86755 +static const char __pyx_k_pd[] = "pd";__pyx_k_pd2322,86794 +static const char __pyx_k_yc[] = "yc";__pyx_k_yc2323,86833 +static const char __pyx_k_obj[] = "obj";__pyx_k_obj2324,86872 +static const char __pyx_k_args[] = "args";__pyx_k_args2325,86913 +static const char __pyx_k_base[] = "base";__pyx_k_base2326,86956 +static const char __pyx_k_init[] = "__init__";__pyx_k_init2327,86999 +static const char __pyx_k_main[] = "__main__";__pyx_k_main2328,87046 +static const char __pyx_k_mode[] = "mode";__pyx_k_mode2329,87093 +static const char __pyx_k_name[] = "name";__pyx_k_name2330,87136 +static const char __pyx_k_ndim[] = "ndim";__pyx_k_ndim2331,87179 +static const char __pyx_k_pack[] = "pack";__pyx_k_pack2332,87222 +static const char __pyx_k_send[] = "send";__pyx_k_send2333,87265 +static const char __pyx_k_size[] = "size";__pyx_k_size2334,87308 +static const char __pyx_k_step[] = "step";__pyx_k_step2335,87351 +static const char __pyx_k_stop[] = "stop";__pyx_k_stop2336,87394 +static const char __pyx_k_test[] = "__test__";__pyx_k_test2337,87437 +static const char __pyx_k_ASCII[] = "ASCII";__pyx_k_ASCII2338,87484 +static const char __pyx_k_class[] = "__class__";__pyx_k_class2339,87529 +static const char __pyx_k_close[] = "close";__pyx_k_close2340,87578 +static const char __pyx_k_error[] = "error";__pyx_k_error2341,87623 +static const char __pyx_k_flags[] = "flags";__pyx_k_flags2342,87668 +static const char __pyx_k_index[] = "index";__pyx_k_index2343,87713 +static const char __pyx_k_items[] = "items";__pyx_k_items2344,87758 +static const char __pyx_k_range[] = "range";__pyx_k_range2345,87803 +static const char __pyx_k_shape[] = "shape";__pyx_k_shape2346,87848 +static const char __pyx_k_start[] = "start";__pyx_k_start2347,87893 +static const char __pyx_k_throw[] = "throw";__pyx_k_throw2348,87938 +static const char __pyx_k_concat[] = "concat";__pyx_k_concat2349,87983 +static const char __pyx_k_curves[] = "curves";__pyx_k_curves2350,88030 +static const char __pyx_k_encode[] = "encode";__pyx_k_encode2351,88077 +static const char __pyx_k_format[] = "format";__pyx_k_format2352,88124 +static const char __pyx_k_import[] = "__import__";__pyx_k_import2353,88171 +static const char __pyx_k_name_2[] = "__name__";__pyx_k_name_22354,88222 +static const char __pyx_k_pandas[] = "pandas";__pyx_k_pandas2355,88271 +static const char __pyx_k_struct[] = "struct";__pyx_k_struct2356,88318 +static const char __pyx_k_unpack[] = "unpack";__pyx_k_unpack2357,88365 +static const char __pyx_k_columns[] = "columns";__pyx_k_columns2358,88412 +static const char __pyx_k_epsilon[] = "epsilon";__pyx_k_epsilon2359,88461 +static const char __pyx_k_fortran[] = "fortran";__pyx_k_fortran2360,88510 +static const char __pyx_k_memview[] = "memview";__pyx_k_memview2361,88559 +static const char __pyx_k_tickers[] = "tickers";__pyx_k_tickers2362,88608 +static const char __pyx_k_weights[] = "weights";__pyx_k_weights2363,88657 +static const char __pyx_k_Ellipsis[] = "Ellipsis";__pyx_k_Ellipsis2364,88706 +static const char __pyx_k_KeyError[] = "KeyError";__pyx_k_KeyError2365,88757 +static const char __pyx_k_duration[] = "duration";__pyx_k_duration2366,88808 +static const char __pyx_k_itemsize[] = "itemsize";__pyx_k_itemsize2367,88859 +static const char __pyx_k_maturity[] = "maturity";__pyx_k_maturity2368,88910 +static const char __pyx_k_DataFrame[] = "DataFrame";__pyx_k_DataFrame2369,88961 +static const char __pyx_k_TypeError[] = "TypeError";__pyx_k_TypeError2370,89014 +static const char __pyx_k_enumerate[] = "enumerate";__pyx_k_enumerate2371,89067 +static const char __pyx_k_IndexError[] = "IndexError";__pyx_k_IndexError2372,89120 +static const char __pyx_k_ValueError[] = "ValueError";__pyx_k_ValueError2373,89175 +static const char __pyx_k_fixed_rate[] = "fixed_rate";__pyx_k_fixed_rate2374,89230 +static const char __pyx_k_maturities[] = "maturities";__pyx_k_maturities2375,89285 +static const char __pyx_k_pyx_vtable[] = "__pyx_vtable__";__pyx_k_pyx_vtable2376,89340 +static const char __pyx_k_start_date[] = "start_date";__pyx_k_start_date2377,89399 +static const char __pyx_k_value_date[] = "value_date";__pyx_k_value_date2378,89454 +static const char __pyx_k_ImportError[] = "ImportError";__pyx_k_ImportError2379,89509 +static const char __pyx_k_MemoryError[] = "MemoryError";__pyx_k_MemoryError2380,89566 +static const char __pyx_k_RuntimeError[] = "RuntimeError";__pyx_k_RuntimeError2381,89623 +static const char __pyx_k_step_in_date[] = "step_in_date";__pyx_k_step_in_date2382,89682 +static const char __pyx_k_DatetimeIndex[] = "DatetimeIndex";__pyx_k_DatetimeIndex2383,89741 +static const char __pyx_k_protection_pv[] = "protection_pv";__pyx_k_protection_pv2384,89802 +static const char __pyx_k_pyx_getbuffer[] = "__pyx_getbuffer";__pyx_k_pyx_getbuffer2385,89863 +static const char __pyx_k_recovery_rate[] = "recovery_rate";__pyx_k_recovery_rate2386,89926 +static const char __pyx_k_CurveList_items[] = "CurveList.items";__pyx_k_CurveList_items2387,89987 +static const char __pyx_k_allocate_buffer[] = "allocate_buffer";__pyx_k_allocate_buffer2388,90052 +static const char __pyx_k_dtype_is_object[] = "dtype_is_object";__pyx_k_dtype_is_object2389,90117 +static const char __pyx_k_can_t_convert_stub[] = "can't convert stub";__pyx_k_can_t_convert_stub2390,90182 +static const char __pyx_k_strided_and_direct[] = "<strided and direct>";__pyx_k_strided_and_direct2391,90253 +static const char __pyx_k_pyisda_credit_index[] = "pyisda.credit_index";__pyx_k_pyisda_credit_index2392,90326 +static const char __pyx_k_strided_and_indirect[] = "<strided and indirect>";__pyx_k_strided_and_indirect2393,90399 +static const char __pyx_k_contiguous_and_direct[] = "<contiguous and direct>";__pyx_k_contiguous_and_direct2394,90476 +static const char __pyx_k_MemoryView_of_r_object[] = "<MemoryView of %r object>";__pyx_k_MemoryView_of_r_object2395,90555 +static const char __pyx_k_l_should_have_elements[] = "l should have {} elements";__pyx_k_l_should_have_elements2396,90637 +static const char __pyx_k_MemoryView_of_r_at_0x_x[] = "<MemoryView of %r at 0x%x>";__pyx_k_MemoryView_of_r_at_0x_x2397,90719 +static const char __pyx_k_contiguous_and_indirect[] = "<contiguous and indirect>";__pyx_k_contiguous_and_indirect2398,90803 +static const char __pyx_k_maturity_is_not_correct[] = "maturity is not correct";__pyx_k_maturity_is_not_correct2399,90886 +static const char __pyx_k_Cannot_index_with_type_s[] = "Cannot index with type '%s'";__pyx_k_Cannot_index_with_type_s2400,90967 +static const char __pyx_k_Invalid_shape_in_axis_d_d[] = "Invalid shape in axis %d: %d.";__pyx_k_Invalid_shape_in_axis_d_d2401,91053 +static const char __pyx_k_itemsize_0_for_cython_array[] = "itemsize <= 0 for cython.array";__pyx_k_itemsize_0_for_cython_array2402,91142 +static const char __pyx_k_ndarray_is_not_C_contiguous[] = "ndarray is not C contiguous";__pyx_k_ndarray_is_not_C_contiguous2403,91234 +static const char __pyx_k_unable_to_allocate_array_data[] = "unable to allocate array data.";__pyx_k_unable_to_allocate_array_data2404,91323 +static const char __pyx_k_strided_and_direct_or_indirect[] = "<strided and direct or indirect>";__pyx_k_strided_and_direct_or_indirect2405,91417 +static const char __pyx_k_numpy_core_multiarray_failed_to[] = "numpy.core.multiarray failed to import";__pyx_k_numpy_core_multiarray_failed_to2406,91514 +static const char __pyx_k_unknown_dtype_code_in_numpy_pxd[] = "unknown dtype code in numpy.pxd (%d)";__pyx_k_unknown_dtype_code_in_numpy_pxd2407,91618 +static const char __pyx_k_Buffer_view_does_not_expose_stri[] = "Buffer view does not expose strides";__pyx_k_Buffer_view_does_not_expose_stri2408,91720 +static const char __pyx_k_Can_only_create_a_buffer_that_is[] = "Can only create a buffer that is contiguous in memory.";__pyx_k_Can_only_create_a_buffer_that_is2409,91822 +static const char __pyx_k_Empty_shape_tuple_for_cython_arr[] = "Empty shape tuple for cython.array";__pyx_k_Empty_shape_tuple_for_cython_arr2410,91943 +static const char __pyx_k_Format_string_allocated_too_shor[] = "Format string allocated too short, see comment in numpy.pxd";__pyx_k_Format_string_allocated_too_shor2411,92044 +static const char __pyx_k_Indirect_dimensions_not_supporte[] = "Indirect dimensions not supported";__pyx_k_Indirect_dimensions_not_supporte2412,92170 +static const char __pyx_k_Invalid_mode_expected_c_or_fortr[] = "Invalid mode, expected 'c' or 'fortran', got %s";__pyx_k_Invalid_mode_expected_c_or_fortr2413,92270 +static const char __pyx_k_Non_native_byte_order_not_suppor[] = "Non-native byte order not supported";__pyx_k_Non_native_byte_order_not_suppor2414,92384 +static const char __pyx_k_Out_of_bounds_on_buffer_access_a[] = "Out of bounds on buffer access (axis %d)";__pyx_k_Out_of_bounds_on_buffer_access_a2415,92486 +static const char __pyx_k_Unable_to_convert_item_to_object[] = "Unable to convert item to object";__pyx_k_Unable_to_convert_item_to_object2416,92593 +static const char __pyx_k_curves_need_to_be_a_list_of_Spre[] = "curves need to be a list of SpreadCurve or a list of tuple (SpreadCurve, ticker)";__pyx_k_curves_need_to_be_a_list_of_Spre2417,92692 +static const char __pyx_k_got_differing_extents_in_dimensi[] = "got differing extents in dimension %d (got %d and %d)";__pyx_k_got_differing_extents_in_dimensi2418,92839 +static const char __pyx_k_ndarray_is_not_Fortran_contiguou[] = "ndarray is not Fortran contiguous";__pyx_k_ndarray_is_not_Fortran_contiguou2419,92959 +static const char __pyx_k_numpy_core_umath_failed_to_impor[] = "numpy.core.umath failed to import";__pyx_k_numpy_core_umath_failed_to_impor2420,93059 +static const char __pyx_k_tickers_must_have_the_same_lengt[] = "tickers must have the same length as curves";__pyx_k_tickers_must_have_the_same_lengt2421,93159 +static const char __pyx_k_unable_to_allocate_shape_and_str[] = "unable to allocate shape and strides.";__pyx_k_unable_to_allocate_shape_and_str2422,93269 +static const char __pyx_k_Format_string_allocated_too_shor_2[] = "Format string allocated too short.";__pyx_k_Format_string_allocated_too_shor_22423,93373 +static PyObject *__pyx_n_s_ASCII;__pyx_n_s_ASCII2424,93476 +static PyObject *__pyx_kp_s_Buffer_view_does_not_expose_stri;__pyx_kp_s_Buffer_view_does_not_expose_stri2425,93510 +static PyObject *__pyx_kp_s_Can_only_create_a_buffer_that_is;__pyx_kp_s_Can_only_create_a_buffer_that_is2426,93572 +static PyObject *__pyx_kp_s_Cannot_index_with_type_s;__pyx_kp_s_Cannot_index_with_type_s2427,93634 +static PyObject *__pyx_n_s_CurveList_items;__pyx_n_s_CurveList_items2428,93688 +static PyObject *__pyx_n_s_DataFrame;__pyx_n_s_DataFrame2429,93732 +static PyObject *__pyx_n_s_DatetimeIndex;__pyx_n_s_DatetimeIndex2430,93770 +static PyObject *__pyx_n_s_Ellipsis;__pyx_n_s_Ellipsis2431,93812 +static PyObject *__pyx_kp_s_Empty_shape_tuple_for_cython_arr;__pyx_kp_s_Empty_shape_tuple_for_cython_arr2432,93849 +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor;__pyx_kp_u_Format_string_allocated_too_shor2433,93911 +static PyObject *__pyx_kp_u_Format_string_allocated_too_shor_2;__pyx_kp_u_Format_string_allocated_too_shor_22434,93973 +static PyObject *__pyx_n_s_ImportError;__pyx_n_s_ImportError2435,94037 +static PyObject *__pyx_n_s_IndexError;__pyx_n_s_IndexError2436,94077 +static PyObject *__pyx_kp_s_Indirect_dimensions_not_supporte;__pyx_kp_s_Indirect_dimensions_not_supporte2437,94116 +static PyObject *__pyx_kp_s_Invalid_mode_expected_c_or_fortr;__pyx_kp_s_Invalid_mode_expected_c_or_fortr2438,94178 +static PyObject *__pyx_kp_s_Invalid_shape_in_axis_d_d;__pyx_kp_s_Invalid_shape_in_axis_d_d2439,94240 +static PyObject *__pyx_n_s_KeyError;__pyx_n_s_KeyError2440,94295 +static PyObject *__pyx_n_s_MemoryError;__pyx_n_s_MemoryError2441,94332 +static PyObject *__pyx_kp_s_MemoryView_of_r_at_0x_x;__pyx_kp_s_MemoryView_of_r_at_0x_x2442,94372 +static PyObject *__pyx_kp_s_MemoryView_of_r_object;__pyx_kp_s_MemoryView_of_r_object2443,94425 +static PyObject *__pyx_kp_u_Non_native_byte_order_not_suppor;__pyx_kp_u_Non_native_byte_order_not_suppor2444,94477 +static PyObject *__pyx_n_b_O;__pyx_n_b_O2445,94539 +static PyObject *__pyx_kp_s_Out_of_bounds_on_buffer_access_a;__pyx_kp_s_Out_of_bounds_on_buffer_access_a2446,94569 +static PyObject *__pyx_n_s_RuntimeError;__pyx_n_s_RuntimeError2447,94631 +static PyObject *__pyx_n_s_TypeError;__pyx_n_s_TypeError2448,94672 +static PyObject *__pyx_kp_s_Unable_to_convert_item_to_object;__pyx_kp_s_Unable_to_convert_item_to_object2449,94710 +static PyObject *__pyx_n_s_ValueError;__pyx_n_s_ValueError2450,94772 +static PyObject *__pyx_n_s_allocate_buffer;__pyx_n_s_allocate_buffer2451,94811 +static PyObject *__pyx_n_s_args;__pyx_n_s_args2452,94855 +static PyObject *__pyx_n_s_base;__pyx_n_s_base2453,94888 +static PyObject *__pyx_n_s_c;__pyx_n_s_c2454,94921 +static PyObject *__pyx_n_u_c;__pyx_n_u_c2455,94951 +static PyObject *__pyx_kp_s_can_t_convert_stub;__pyx_kp_s_can_t_convert_stub2456,94981 +static PyObject *__pyx_n_s_class;__pyx_n_s_class2457,95029 +static PyObject *__pyx_n_s_close;__pyx_n_s_close2458,95063 +static PyObject *__pyx_n_s_columns;__pyx_n_s_columns2459,95097 +static PyObject *__pyx_n_s_concat;__pyx_n_s_concat2460,95133 +static PyObject *__pyx_kp_s_contiguous_and_direct;__pyx_kp_s_contiguous_and_direct2461,95168 +static PyObject *__pyx_kp_s_contiguous_and_indirect;__pyx_kp_s_contiguous_and_indirect2462,95219 +static PyObject *__pyx_n_s_curves;__pyx_n_s_curves2463,95272 +static PyObject *__pyx_kp_s_curves_need_to_be_a_list_of_Spre;__pyx_kp_s_curves_need_to_be_a_list_of_Spre2464,95307 +static PyObject *__pyx_n_s_dtype_is_object;__pyx_n_s_dtype_is_object2465,95369 +static PyObject *__pyx_n_s_duration;__pyx_n_s_duration2466,95413 +static PyObject *__pyx_n_s_encode;__pyx_n_s_encode2467,95450 +static PyObject *__pyx_n_s_enumerate;__pyx_n_s_enumerate2468,95485 +static PyObject *__pyx_n_s_epsilon;__pyx_n_s_epsilon2469,95523 +static PyObject *__pyx_n_s_error;__pyx_n_s_error2470,95559 +static PyObject *__pyx_n_s_fixed_rate;__pyx_n_s_fixed_rate2471,95593 +static PyObject *__pyx_n_s_flags;__pyx_n_s_flags2472,95632 +static PyObject *__pyx_n_s_format;__pyx_n_s_format2473,95666 +static PyObject *__pyx_n_s_fortran;__pyx_n_s_fortran2474,95701 +static PyObject *__pyx_n_u_fortran;__pyx_n_u_fortran2475,95737 +static PyObject *__pyx_kp_s_got_differing_extents_in_dimensi;__pyx_kp_s_got_differing_extents_in_dimensi2476,95773 +static PyObject *__pyx_n_s_id;__pyx_n_s_id2477,95835 +static PyObject *__pyx_n_s_import;__pyx_n_s_import2478,95866 +static PyObject *__pyx_n_s_index;__pyx_n_s_index2479,95901 +static PyObject *__pyx_n_s_init;__pyx_n_s_init2480,95935 +static PyObject *__pyx_n_s_items;__pyx_n_s_items2481,95968 +static PyObject *__pyx_n_s_itemsize;__pyx_n_s_itemsize2482,96002 +static PyObject *__pyx_kp_s_itemsize_0_for_cython_array;__pyx_kp_s_itemsize_0_for_cython_array2483,96039 +static PyObject *__pyx_kp_s_l_should_have_elements;__pyx_kp_s_l_should_have_elements2484,96096 +static PyObject *__pyx_n_s_main;__pyx_n_s_main2485,96148 +static PyObject *__pyx_n_s_maturities;__pyx_n_s_maturities2486,96181 +static PyObject *__pyx_n_s_maturity;__pyx_n_s_maturity2487,96220 +static PyObject *__pyx_kp_s_maturity_is_not_correct;__pyx_kp_s_maturity_is_not_correct2488,96257 +static PyObject *__pyx_n_s_memview;__pyx_n_s_memview2489,96310 +static PyObject *__pyx_n_s_mode;__pyx_n_s_mode2490,96346 +static PyObject *__pyx_n_s_name;__pyx_n_s_name2491,96379 +static PyObject *__pyx_n_s_name_2;__pyx_n_s_name_22492,96412 +static PyObject *__pyx_kp_u_ndarray_is_not_C_contiguous;__pyx_kp_u_ndarray_is_not_C_contiguous2493,96447 +static PyObject *__pyx_kp_u_ndarray_is_not_Fortran_contiguou;__pyx_kp_u_ndarray_is_not_Fortran_contiguou2494,96504 +static PyObject *__pyx_n_s_ndim;__pyx_n_s_ndim2495,96566 +static PyObject *__pyx_kp_s_numpy_core_multiarray_failed_to;__pyx_kp_s_numpy_core_multiarray_failed_to2496,96599 +static PyObject *__pyx_kp_s_numpy_core_umath_failed_to_impor;__pyx_kp_s_numpy_core_umath_failed_to_impor2497,96660 +static PyObject *__pyx_n_s_obj;__pyx_n_s_obj2498,96722 +static PyObject *__pyx_n_s_pack;__pyx_n_s_pack2499,96754 +static PyObject *__pyx_n_s_pandas;__pyx_n_s_pandas2500,96787 +static PyObject *__pyx_n_s_pd;__pyx_n_s_pd2501,96822 +static PyObject *__pyx_n_s_protection_pv;__pyx_n_s_protection_pv2502,96853 +static PyObject *__pyx_n_s_pyisda_credit_index;__pyx_n_s_pyisda_credit_index2503,96895 +static PyObject *__pyx_n_s_pyx_getbuffer;__pyx_n_s_pyx_getbuffer2504,96943 +static PyObject *__pyx_n_s_pyx_vtable;__pyx_n_s_pyx_vtable2505,96985 +static PyObject *__pyx_n_s_range;__pyx_n_s_range2506,97024 +static PyObject *__pyx_n_s_recovery_rate;__pyx_n_s_recovery_rate2507,97058 +static PyObject *__pyx_n_s_send;__pyx_n_s_send2508,97100 +static PyObject *__pyx_n_s_shape;__pyx_n_s_shape2509,97133 +static PyObject *__pyx_n_s_size;__pyx_n_s_size2510,97167 +static PyObject *__pyx_n_s_start;__pyx_n_s_start2511,97200 +static PyObject *__pyx_n_s_start_date;__pyx_n_s_start_date2512,97234 +static PyObject *__pyx_n_s_step;__pyx_n_s_step2513,97273 +static PyObject *__pyx_n_s_step_in_date;__pyx_n_s_step_in_date2514,97306 +static PyObject *__pyx_n_s_stop;__pyx_n_s_stop2515,97347 +static PyObject *__pyx_kp_s_strided_and_direct;__pyx_kp_s_strided_and_direct2516,97380 +static PyObject *__pyx_kp_s_strided_and_direct_or_indirect;__pyx_kp_s_strided_and_direct_or_indirect2517,97428 +static PyObject *__pyx_kp_s_strided_and_indirect;__pyx_kp_s_strided_and_indirect2518,97488 +static PyObject *__pyx_n_s_struct;__pyx_n_s_struct2519,97538 +static PyObject *__pyx_n_s_test;__pyx_n_s_test2520,97573 +static PyObject *__pyx_n_s_throw;__pyx_n_s_throw2521,97606 +static PyObject *__pyx_n_s_tickers;__pyx_n_s_tickers2522,97640 +static PyObject *__pyx_kp_s_tickers_must_have_the_same_lengt;__pyx_kp_s_tickers_must_have_the_same_lengt2523,97676 +static PyObject *__pyx_kp_s_unable_to_allocate_array_data;__pyx_kp_s_unable_to_allocate_array_data2524,97738 +static PyObject *__pyx_kp_s_unable_to_allocate_shape_and_str;__pyx_kp_s_unable_to_allocate_shape_and_str2525,97797 +static PyObject *__pyx_kp_u_unknown_dtype_code_in_numpy_pxd;__pyx_kp_u_unknown_dtype_code_in_numpy_pxd2526,97859 +static PyObject *__pyx_n_s_unpack;__pyx_n_s_unpack2527,97920 +static PyObject *__pyx_n_s_value_date;__pyx_n_s_value_date2528,97955 +static PyObject *__pyx_n_s_weights;__pyx_n_s_weights2529,97994 +static PyObject *__pyx_n_s_yc;__pyx_n_s_yc2530,98030 +static PyObject *__pyx_int_0;__pyx_int_02585,106930 +static PyObject *__pyx_int_1;__pyx_int_12586,106960 +static PyObject *__pyx_int_neg_1;__pyx_int_neg_12587,106990 +static __Pyx_memviewslice __pyx_k_;__pyx_k_2588,107024 +static __Pyx_memviewslice __pyx_k__4;__pyx_k__42589,107060 +static PyObject *__pyx_tuple__2;__pyx_tuple__22590,107098 +static PyObject *__pyx_tuple__3;__pyx_tuple__32591,107131 +static PyObject *__pyx_tuple__5;__pyx_tuple__52592,107164 +static PyObject *__pyx_tuple__6;__pyx_tuple__62593,107197 +static PyObject *__pyx_tuple__7;__pyx_tuple__72594,107230 +static PyObject *__pyx_tuple__8;__pyx_tuple__82595,107263 +static PyObject *__pyx_tuple__9;__pyx_tuple__92596,107296 +static PyObject *__pyx_slice__28;__pyx_slice__282597,107329 +static PyObject *__pyx_slice__29;__pyx_slice__292598,107363 +static PyObject *__pyx_slice__30;__pyx_slice__302599,107397 +static PyObject *__pyx_tuple__10;__pyx_tuple__102600,107431 +static PyObject *__pyx_tuple__11;__pyx_tuple__112601,107465 +static PyObject *__pyx_tuple__12;__pyx_tuple__122602,107499 +static PyObject *__pyx_tuple__13;__pyx_tuple__132603,107533 +static PyObject *__pyx_tuple__14;__pyx_tuple__142604,107567 +static PyObject *__pyx_tuple__15;__pyx_tuple__152605,107601 +static PyObject *__pyx_tuple__16;__pyx_tuple__162606,107635 +static PyObject *__pyx_tuple__17;__pyx_tuple__172607,107669 +static PyObject *__pyx_tuple__18;__pyx_tuple__182608,107703 +static PyObject *__pyx_tuple__19;__pyx_tuple__192609,107737 +static PyObject *__pyx_tuple__20;__pyx_tuple__202610,107771 +static PyObject *__pyx_tuple__21;__pyx_tuple__212611,107805 +static PyObject *__pyx_tuple__22;__pyx_tuple__222612,107839 +static PyObject *__pyx_tuple__23;__pyx_tuple__232613,107873 +static PyObject *__pyx_tuple__24;__pyx_tuple__242614,107907 +static PyObject *__pyx_tuple__25;__pyx_tuple__252615,107941 +static PyObject *__pyx_tuple__26;__pyx_tuple__262616,107975 +static PyObject *__pyx_tuple__27;__pyx_tuple__272617,108009 +static PyObject *__pyx_tuple__31;__pyx_tuple__312618,108043 +static PyObject *__pyx_tuple__32;__pyx_tuple__322619,108077 +static PyObject *__pyx_tuple__33;__pyx_tuple__332620,108111 +static PyObject *__pyx_tuple__34;__pyx_tuple__342621,108145 +static PyObject *__pyx_tuple__35;__pyx_tuple__352622,108179 +static PyObject *__pyx_tuple__36;__pyx_tuple__362623,108213 +static int __pyx_pw_6pyisda_12credit_index_9CurveList_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_12credit_index_9CurveList_1__init__2635,108682 +static int __pyx_pf_6pyisda_12credit_index_9CurveList___init__(struct __pyx_obj_6pyisda_12credit_index_CurveList *__pyx_v_self, PyObject *__pyx_v_curves, PyObject *__pyx_v_tickers, __Pyx_memviewslice __pyx_v_weights) {__pyx_pf_6pyisda_12credit_index_9CurveList___init__2708,111761 +static PyObject *__pyx_pw_6pyisda_12credit_index_9CurveList_3__getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_ticker) {__pyx_pw_6pyisda_12credit_index_9CurveList_3__getitem__3430,142400 +static PyObject *__pyx_pf_6pyisda_12credit_index_9CurveList_2__getitem__(struct __pyx_obj_6pyisda_12credit_index_CurveList *__pyx_v_self, PyObject *__pyx_v_ticker) {__pyx_pf_6pyisda_12credit_index_9CurveList_2__getitem__3446,143086 +static char __pyx_doc_6pyisda_12credit_index_9CurveList_4items[] = "CurveList.items(self)";__pyx_doc_6pyisda_12credit_index_9CurveList_4items3572,148276 +static PyObject *__pyx_pw_6pyisda_12credit_index_9CurveList_5items(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_pw_6pyisda_12credit_index_9CurveList_5items3573,148368 +static PyObject *__pyx_pf_6pyisda_12credit_index_9CurveList_4items(struct __pyx_obj_6pyisda_12credit_index_CurveList *__pyx_v_self) {__pyx_pf_6pyisda_12credit_index_9CurveList_4items3584,148813 +static PyObject *__pyx_gb_6pyisda_12credit_index_9CurveList_6generator(__pyx_CoroutineObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */__pyx_gb_6pyisda_12credit_index_9CurveList_6generator3617,150488 +static PyObject *__pyx_pw_6pyisda_12credit_index_9CurveList_6curves_1__get__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_12credit_index_9CurveList_6curves_1__get__3764,156288 +static PyObject *__pyx_pf_6pyisda_12credit_index_9CurveList_6curves___get__(struct __pyx_obj_6pyisda_12credit_index_CurveList *__pyx_v_self) {__pyx_pf_6pyisda_12credit_index_9CurveList_6curves___get__3775,156722 +static int __pyx_pw_6pyisda_12credit_index_9CurveList_6curves_3__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_l) {__pyx_pw_6pyisda_12credit_index_9CurveList_6curves_3__set__3885,160619 +static int __pyx_pf_6pyisda_12credit_index_9CurveList_6curves_2__set__(struct __pyx_obj_6pyisda_12credit_index_CurveList *__pyx_v_self, PyObject *__pyx_v_l) {__pyx_pf_6pyisda_12credit_index_9CurveList_6curves_2__set__3901,161269 +static int __pyx_pw_6pyisda_12credit_index_11CreditIndex_1__init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_12credit_index_11CreditIndex_1__init__4093,168900 +static int __pyx_pf_6pyisda_12credit_index_11CreditIndex___init__(struct __pyx_obj_6pyisda_12credit_index_CreditIndex *__pyx_v_self, PyObject *__pyx_v_start_date, PyObject *__pyx_v_maturities, PyObject *__pyx_v_curves, __Pyx_memviewslice __pyx_v_weights) {__pyx_pf_6pyisda_12credit_index_11CreditIndex___init__4174,172476 +static void __pyx_pw_6pyisda_12credit_index_11CreditIndex_3__dealloc__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_12credit_index_11CreditIndex_3__dealloc__4481,186649 +static void __pyx_pf_6pyisda_12credit_index_11CreditIndex_2__dealloc__(struct __pyx_obj_6pyisda_12credit_index_CreditIndex *__pyx_v_self) {__pyx_pf_6pyisda_12credit_index_11CreditIndex_2__dealloc__4490,187030 +static char __pyx_doc_6pyisda_12credit_index_11CreditIndex_4pv_vec[] = "CreditIndex.pv_vec(self, step_in_date, value_date, YieldCurve yc, double recovery_rate)";__pyx_doc_6pyisda_12credit_index_11CreditIndex_4pv_vec4600,191120 +static PyObject *__pyx_pw_6pyisda_12credit_index_11CreditIndex_5pv_vec(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_12credit_index_11CreditIndex_5pv_vec4601,191282 +static PyObject *__pyx_pf_6pyisda_12credit_index_11CreditIndex_4pv_vec(struct __pyx_obj_6pyisda_12credit_index_CreditIndex *__pyx_v_self, PyObject *__pyx_v_step_in_date, PyObject *__pyx_v_value_date, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, double __pyx_v_recovery_rate) {__pyx_pf_6pyisda_12credit_index_11CreditIndex_4pv_vec4680,195021 +static char __pyx_doc_6pyisda_12credit_index_11CreditIndex_6pv[] = "CreditIndex.pv(self, step_in_date, value_date, maturity, YieldCurve yc, double recovery_rate, double fixed_rate, double epsilon=0.0)";__pyx_doc_6pyisda_12credit_index_11CreditIndex_6pv5221,222029 +static PyObject *__pyx_pw_6pyisda_12credit_index_11CreditIndex_7pv(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_12credit_index_11CreditIndex_7pv5222,222232 +static PyObject *__pyx_pf_6pyisda_12credit_index_11CreditIndex_6pv(struct __pyx_obj_6pyisda_12credit_index_CreditIndex *__pyx_v_self, PyObject *__pyx_v_step_in_date, PyObject *__pyx_v_value_date, PyObject *__pyx_v_maturity, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, double __pyx_v_recovery_rate, double __pyx_v_fixed_rate, double __pyx_v_epsilon) {__pyx_pf_6pyisda_12credit_index_11CreditIndex_6pv5334,227627 +static char __pyx_doc_6pyisda_12credit_index_11CreditIndex_8theta[] = "CreditIndex.theta(self, step_in_date, value_date, maturity, YieldCurve yc, double recovery_rate, double fixed_rate)";__pyx_doc_6pyisda_12credit_index_11CreditIndex_8theta5723,242920 +static PyObject *__pyx_pw_6pyisda_12credit_index_11CreditIndex_9theta(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_12credit_index_11CreditIndex_9theta5724,243109 +static PyObject *__pyx_pf_6pyisda_12credit_index_11CreditIndex_8theta(struct __pyx_obj_6pyisda_12credit_index_CreditIndex *__pyx_v_self, PyObject *__pyx_v_step_in_date, PyObject *__pyx_v_value_date, PyObject *__pyx_v_maturity, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc, double __pyx_v_recovery_rate, double __pyx_v_fixed_rate) {__pyx_pf_6pyisda_12credit_index_11CreditIndex_8theta5821,247878 +static char __pyx_doc_6pyisda_12credit_index_11CreditIndex_10duration[] = "CreditIndex.duration(self, step_in_date, value_date, maturity, YieldCurve yc)";__pyx_doc_6pyisda_12credit_index_11CreditIndex_10duration6075,258841 +static PyObject *__pyx_pw_6pyisda_12credit_index_11CreditIndex_11duration(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_12credit_index_11CreditIndex_11duration6076,258996 +static PyObject *__pyx_pf_6pyisda_12credit_index_11CreditIndex_10duration(struct __pyx_obj_6pyisda_12credit_index_CreditIndex *__pyx_v_self, PyObject *__pyx_v_step_in_date, PyObject *__pyx_v_value_date, PyObject *__pyx_v_maturity, struct __pyx_obj_6pyisda_5curve_YieldCurve *__pyx_v_yc) {__pyx_pf_6pyisda_12credit_index_11CreditIndex_10duration6155,262606 +static PyObject *__pyx_pw_6pyisda_12credit_index_11CreditIndex_10maturities_1__get__(PyObject *__pyx_v_self) {__pyx_pw_6pyisda_12credit_index_11CreditIndex_10maturities_1__get__6358,270139 +static PyObject *__pyx_pf_6pyisda_12credit_index_11CreditIndex_10maturities___get__(struct __pyx_obj_6pyisda_12credit_index_CreditIndex *__pyx_v_self) {__pyx_pf_6pyisda_12credit_index_11CreditIndex_10maturities___get__6369,270591 +static char __pyx_doc_6pyisda_12credit_index_11CreditIndex_12tweak_portfolio[] = "CreditIndex.tweak_portfolio(self, double epsilon, maturity)";__pyx_doc_6pyisda_12credit_index_11CreditIndex_12tweak_portfolio6458,273787 +static PyObject *__pyx_pw_6pyisda_12credit_index_11CreditIndex_13tweak_portfolio(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_pw_6pyisda_12credit_index_11CreditIndex_13tweak_portfolio6459,273931 +static PyObject *__pyx_pf_6pyisda_12credit_index_11CreditIndex_12tweak_portfolio(struct __pyx_obj_6pyisda_12credit_index_CreditIndex *__pyx_v_self, double __pyx_v_epsilon, PyObject *__pyx_v_maturity) {__pyx_pf_6pyisda_12credit_index_11CreditIndex_12tweak_portfolio6515,276493 +static int *__pyx_f_6pyisda_12credit_index_fill_mask(__pyx_t_6pyisda_4date_TDate __pyx_v_maturity, std::vector<__pyx_t_6pyisda_4date_TDate> const &__pyx_v_maturities, std::shared_ptr<TCurve> const &__pyx_v_sc) {__pyx_f_6pyisda_12credit_index_fill_mask6629,281016 +static CYTHON_INLINE void __pyx_f_7cpython_8datetime_import_datetime(void) {__pyx_f_7cpython_8datetime_import_datetime6825,287380 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_date_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day) {__pyx_f_7cpython_8datetime_date_new6858,288453 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_new(int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_time_new6905,290317 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_new(int __pyx_v_year, int __pyx_v_month, int __pyx_v_day, int __pyx_v_hour, int __pyx_v_minute, int __pyx_v_second, int __pyx_v_microsecond, PyObject *__pyx_v_tz) {__pyx_f_7cpython_8datetime_datetime_new6952,292451 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_timedelta_new(int __pyx_v_days, int __pyx_v_seconds, int __pyx_v_useconds) {__pyx_f_7cpython_8datetime_timedelta_new6999,294754 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_time_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_tzinfo7046,296556 +static CYTHON_INLINE PyObject *__pyx_f_7cpython_8datetime_datetime_tzinfo(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_tzinfo7120,298651 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_year7194,300744 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_month7231,301590 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_date_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_date_day7268,302437 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_year(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_year7305,303282 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_month(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_month7342,304164 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_day(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_day7379,305047 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_hour7416,305909 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_minute7453,306779 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_second7490,307667 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_time_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_time_microsecond7527,308575 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_hour(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_hour7564,309512 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_minute(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_minute7601,310418 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_second(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_second7638,311342 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_datetime_microsecond(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_datetime_microsecond7675,312286 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_days(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_days7712,313250 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_seconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_seconds7749,314171 +static CYTHON_INLINE int __pyx_f_7cpython_8datetime_timedelta_microseconds(PyObject *__pyx_v_o) {__pyx_f_7cpython_8datetime_timedelta_microseconds7785,315135 +static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_pw_5numpy_7ndarray_1__getbuffer__7821,316538 +static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_pf_5numpy_7ndarray___getbuffer__7832,316995 +static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info) {__pyx_pw_5numpy_7ndarray_3__releasebuffer__8693,353796 +static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info) {__pyx_pf_5numpy_7ndarray_2__releasebuffer__8702,354183 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) {__pyx_f_5numpy_PyArray_MultiIterNew18783,357547 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyObject *__pyx_v_b) {__pyx_f_5numpy_PyArray_MultiIterNew28830,359145 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c) {__pyx_f_5numpy_PyArray_MultiIterNew38877,360848 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d) {__pyx_f_5numpy_PyArray_MultiIterNew48924,362658 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d, PyObject *__pyx_v_e) {__pyx_f_5numpy_PyArray_MultiIterNew58971,364574 +static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *__pyx_v_descr, char *__pyx_v_f, char *__pyx_v_end, int *__pyx_v_offset) {__pyx_f_5numpy__util_dtypestring9018,366703 +static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObject *__pyx_v_base) {__pyx_f_5numpy_set_array_base9773,403450 +static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) {__pyx_f_5numpy_get_array_base9869,406690 +static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {__pyx_f_5numpy_import_array9943,408912 +static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {__pyx_f_5numpy_import_umath10074,413504 +static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {__pyx_f_5numpy_import_ufunc10205,418023 +static int __pyx_array___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_array___cinit__10335,422587 +static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array___cinit__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_shape, Py_ssize_t __pyx_v_itemsize, PyObject *__pyx_v_format, PyObject *__pyx_v_mode, int __pyx_v_allocate_buffer) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array___cinit__10449,427480 +static CYTHON_UNUSED int __pyx_array_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_array_getbuffer11061,449286 +static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_2__getbuffer__(struct __pyx_array_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_2__getbuffer__11072,449760 +static void __pyx_array___dealloc__(PyObject *__pyx_v_self) {__pyx_array___dealloc__11363,459511 +static void __pyx_array___pyx_pf_15View_dot_MemoryView_5array_4__dealloc__(struct __pyx_array_obj *__pyx_v_self) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_4__dealloc__11372,459832 +static PyObject *__pyx_pw_15View_dot_MemoryView_5array_7memview_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_5array_7memview_1__get__11494,464035 +static PyObject *__pyx_pf_15View_dot_MemoryView_5array_7memview___get__(struct __pyx_array_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_5array_7memview___get__11505,464434 +static PyObject *__pyx_array_get_memview(struct __pyx_array_obj *__pyx_v_self) {__pyx_array_get_memview11552,465824 +static PyObject *__pyx_array___getattr__(PyObject *__pyx_v_self, PyObject *__pyx_v_attr) {__pyx_array___getattr__11631,468609 +static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_6__getattr__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_attr) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_6__getattr__11642,469040 +static PyObject *__pyx_array___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item) {__pyx_array___getitem__11696,470758 +static PyObject *__pyx_array___pyx_pf_15View_dot_MemoryView_5array_8__getitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_8__getitem__11707,471189 +static int __pyx_array___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value) {__pyx_array___setitem__11761,472959 +static int __pyx_array___pyx_pf_15View_dot_MemoryView_5array_10__setitem__(struct __pyx_array_obj *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value) {__pyx_array___pyx_pf_15View_dot_MemoryView_5array_10__setitem__11772,473429 +static struct __pyx_array_obj *__pyx_array_new(PyObject *__pyx_v_shape, Py_ssize_t __pyx_v_itemsize, char *__pyx_v_format, char *__pyx_v_mode, char *__pyx_v_buf) {__pyx_array_new11818,474926 +static int __pyx_MemviewEnum___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_MemviewEnum___init__11992,481444 +static int __pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum___init__(struct __pyx_MemviewEnum_obj *__pyx_v_self, PyObject *__pyx_v_name) {__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum___init__12039,483292 +static PyObject *__pyx_MemviewEnum___repr__(PyObject *__pyx_v_self) {__pyx_MemviewEnum___repr__12081,484474 +static PyObject *__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum_2__repr__(struct __pyx_MemviewEnum_obj *__pyx_v_self) {__pyx_MemviewEnum___pyx_pf_15View_dot_MemoryView_4Enum_2__repr__12092,484861 +static void *__pyx_align_pointer(void *__pyx_v_memory, size_t __pyx_v_alignment) {__pyx_align_pointer12132,485982 +static int __pyx_memoryview___cinit__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {__pyx_memoryview___cinit__12217,488302 +static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview___cinit__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj, int __pyx_v_flags, int __pyx_v_dtype_is_object) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview___cinit__12288,491406 +static void __pyx_memoryview___dealloc__(PyObject *__pyx_v_self) {__pyx_memoryview___dealloc__12584,502276 +static void __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_2__dealloc__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_2__dealloc__12593,502618 +static char *__pyx_memoryview_get_item_pointer(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index) {__pyx_memoryview_get_item_pointer12772,510094 +static PyObject *__pyx_memoryview___getitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index) {__pyx_memoryview___getitem__12909,515185 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_4__getitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_4__getitem__12920,515639 +static int __pyx_memoryview___setitem__(PyObject *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) {__pyx_memoryview___setitem__13099,521629 +static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_6__setitem__(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_6__setitem__13110,522121 +static PyObject *__pyx_memoryview_is_slice(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_obj) {__pyx_memoryview_is_slice13294,529183 +static PyObject *__pyx_memoryview_setitem_slice_assignment(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_dst, PyObject *__pyx_v_src) {__pyx_memoryview_setitem_slice_assignment13505,536625 +static PyObject *__pyx_memoryview_setitem_slice_assign_scalar(struct __pyx_memoryview_obj *__pyx_v_self, struct __pyx_memoryview_obj *__pyx_v_dst, PyObject *__pyx_v_value) {__pyx_memoryview_setitem_slice_assign_scalar13588,540655 +static PyObject *__pyx_memoryview_setitem_indexed(struct __pyx_memoryview_obj *__pyx_v_self, PyObject *__pyx_v_index, PyObject *__pyx_v_value) {__pyx_memoryview_setitem_indexed13874,550504 +static PyObject *__pyx_memoryview_convert_item_to_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp) {__pyx_memoryview_convert_item_to_object13932,552758 +static PyObject *__pyx_memoryview_assign_item_from_object(struct __pyx_memoryview_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value) {__pyx_memoryview_assign_item_from_object14206,563066 +static CYTHON_UNUSED int __pyx_memoryview_getbuffer(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_memoryview_getbuffer14444,572074 +static int __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_8__getbuffer__(struct __pyx_memoryview_obj *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_8__getbuffer__14455,572569 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_1T_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_1T_1__get__14728,580200 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_1T___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_1T___get__14739,580604 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4base_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_4base_1__get__14811,583066 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4base___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_4base___get__14822,583476 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_5shape_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_5shape_1__get__14864,584535 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_5shape___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_5shape___get__14875,584947 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_7strides_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_7strides_1__get__14942,587233 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_7strides___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_7strides___get__14953,587649 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_10suboffsets_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_10suboffsets_1__get__15053,591093 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_10suboffsets___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_10suboffsets___get__15064,591517 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4ndim_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_4ndim_1__get__15168,595067 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4ndim___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_4ndim___get__15179,595477 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_8itemsize_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_8itemsize_1__get__15228,596837 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_8itemsize___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_8itemsize___get__15239,597255 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_6nbytes_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_6nbytes_1__get__15288,598648 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_6nbytes___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_6nbytes___get__15299,599062 +static PyObject *__pyx_pw_15View_dot_MemoryView_10memoryview_4size_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_10memoryview_4size_1__get__15358,600988 +static PyObject *__pyx_pf_15View_dot_MemoryView_10memoryview_4size___get__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_10memoryview_4size___get__15369,601398 +static Py_ssize_t __pyx_memoryview___len__(PyObject *__pyx_v_self) {__pyx_memoryview___len__15496,605043 +static Py_ssize_t __pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_10__len__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_10__len__15507,605430 +static PyObject *__pyx_memoryview___repr__(PyObject *__pyx_v_self) {__pyx_memoryview___repr__15576,607178 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_12__repr__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_12__repr__15587,607570 +static PyObject *__pyx_memoryview___str__(PyObject *__pyx_v_self) {__pyx_memoryview___str__15681,611187 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_14__str__(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_14__str__15692,611576 +static PyObject *__pyx_memoryview_is_c_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_is_c_contig15757,613988 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_16is_c_contig(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_16is_c_contig15768,614421 +static PyObject *__pyx_memoryview_is_f_contig(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_is_f_contig15828,616521 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_18is_f_contig(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_18is_f_contig15839,616954 +static PyObject *__pyx_memoryview_copy(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_copy15899,619116 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_20copy(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_20copy15910,619528 +static PyObject *__pyx_memoryview_copy_fortran(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {__pyx_memoryview_copy_fortran15990,622533 +static PyObject *__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_22copy_fortran(struct __pyx_memoryview_obj *__pyx_v_self) {__pyx_memoryview___pyx_pf_15View_dot_MemoryView_10memoryview_22copy_fortran16001,622969 +static PyObject *__pyx_memoryview_new(PyObject *__pyx_v_o, int __pyx_v_flags, int __pyx_v_dtype_is_object, __Pyx_TypeInfo *__pyx_v_typeinfo) {__pyx_memoryview_new16080,625891 +static CYTHON_INLINE int __pyx_memoryview_check(PyObject *__pyx_v_o) {__pyx_memoryview_check16168,629163 +static PyObject *_unellipsify(PyObject *__pyx_v_index, int __pyx_v_ndim) {_unellipsify16207,630227 +static PyObject *assert_direct_dimensions(Py_ssize_t *__pyx_v_suboffsets, int __pyx_v_ndim) {assert_direct_dimensions16666,646105 +static struct __pyx_memoryview_obj *__pyx_memview_slice(struct __pyx_memoryview_obj *__pyx_v_memview, PyObject *__pyx_v_indices) {__pyx_memview_slice16751,648961 +static int __pyx_memoryview_slice_memviewslice(__Pyx_memviewslice *__pyx_v_dst, Py_ssize_t __pyx_v_shape, Py_ssize_t __pyx_v_stride, Py_ssize_t __pyx_v_suboffset, int __pyx_v_dim, int __pyx_v_new_ndim, int *__pyx_v_suboffset_dim, Py_ssize_t __pyx_v_start, Py_ssize_t __pyx_v_stop, Py_ssize_t __pyx_v_step, int __pyx_v_have_start, int __pyx_v_have_stop, int __pyx_v_have_step, int __pyx_v_is_slice) {__pyx_memoryview_slice_memviewslice17328,670720 +static char *__pyx_pybuffer_index(Py_buffer *__pyx_v_view, char *__pyx_v_bufp, Py_ssize_t __pyx_v_index, Py_ssize_t __pyx_v_dim) {__pyx_pybuffer_index18109,692202 +static int __pyx_memslice_transpose(__Pyx_memviewslice *__pyx_v_memslice) {__pyx_memslice_transpose18425,702491 +static void __pyx_memoryviewslice___dealloc__(PyObject *__pyx_v_self) {__pyx_memoryviewslice___dealloc__18596,707762 +static void __pyx_memoryviewslice___pyx_pf_15View_dot_MemoryView_16_memoryviewslice___dealloc__(struct __pyx_memoryviewslice_obj *__pyx_v_self) {__pyx_memoryviewslice___pyx_pf_15View_dot_MemoryView_16_memoryviewslice___dealloc__18605,708124 +static PyObject *__pyx_memoryviewslice_convert_item_to_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp) {__pyx_memoryviewslice_convert_item_to_object18638,709139 +static PyObject *__pyx_memoryviewslice_assign_item_from_object(struct __pyx_memoryviewslice_obj *__pyx_v_self, char *__pyx_v_itemp, PyObject *__pyx_v_value) {__pyx_memoryviewslice_assign_item_from_object18721,711967 +static PyObject *__pyx_pw_15View_dot_MemoryView_16_memoryviewslice_4base_1__get__(PyObject *__pyx_v_self) {__pyx_pw_15View_dot_MemoryView_16_memoryviewslice_4base_1__get__18803,714805 +static PyObject *__pyx_pf_15View_dot_MemoryView_16_memoryviewslice_4base___get__(struct __pyx_memoryviewslice_obj *__pyx_v_self) {__pyx_pf_15View_dot_MemoryView_16_memoryviewslice_4base___get__18814,715232 +static PyObject *__pyx_memoryview_fromslice(__Pyx_memviewslice __pyx_v_memviewslice, int __pyx_v_ndim, PyObject *(*__pyx_v_to_object_func)(char *), int (*__pyx_v_to_dtype_func)(char *, PyObject *), int __pyx_v_dtype_is_object) {__pyx_memoryview_fromslice18854,716364 +static __Pyx_memviewslice *__pyx_memoryview_get_slice_from_memoryview(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_mslice) {__pyx_memoryview_get_slice_from_memoryview19206,728407 +static void __pyx_memoryview_slice_copy(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_dst) {__pyx_memoryview_slice_copy19306,731736 +static PyObject *__pyx_memoryview_copy_object(struct __pyx_memoryview_obj *__pyx_v_memview) {__pyx_memoryview_copy_object19430,735608 +static PyObject *__pyx_memoryview_copy_object_from_slice(struct __pyx_memoryview_obj *__pyx_v_memview, __Pyx_memviewslice *__pyx_v_memviewslice) {__pyx_memoryview_copy_object_from_slice19487,737573 +static Py_ssize_t abs_py_ssize_t(Py_ssize_t __pyx_v_arg) {abs_py_ssize_t19610,741904 +static char __pyx_get_best_slice_order(__Pyx_memviewslice *__pyx_v_mslice, int __pyx_v_ndim) {__pyx_get_best_slice_order19676,743382 +static void _copy_strided_to_strided(char *__pyx_v_src_data, Py_ssize_t *__pyx_v_src_strides, char *__pyx_v_dst_data, Py_ssize_t *__pyx_v_dst_strides, Py_ssize_t *__pyx_v_src_shape, Py_ssize_t *__pyx_v_dst_shape, int __pyx_v_ndim, size_t __pyx_v_itemsize) {_copy_strided_to_strided19864,748309 +static void copy_strided_to_strided(__Pyx_memviewslice *__pyx_v_src, __Pyx_memviewslice *__pyx_v_dst, int __pyx_v_ndim, size_t __pyx_v_itemsize) {copy_strided_to_strided20098,756586 +static Py_ssize_t __pyx_memoryview_slice_get_size(__Pyx_memviewslice *__pyx_v_src, int __pyx_v_ndim) {__pyx_memoryview_slice_get_size20128,757875 +static Py_ssize_t __pyx_fill_contig_strides_array(Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, Py_ssize_t __pyx_v_stride, int __pyx_v_ndim, char __pyx_v_order) {__pyx_fill_contig_strides_array20198,759795 +static void *__pyx_memoryview_copy_data_to_temp(__Pyx_memviewslice *__pyx_v_src, __Pyx_memviewslice *__pyx_v_tmpslice, char __pyx_v_order, int __pyx_v_ndim) {__pyx_memoryview_copy_data_to_temp20318,763232 +static int __pyx_memoryview_err_extents(int __pyx_v_i, Py_ssize_t __pyx_v_extent1, Py_ssize_t __pyx_v_extent2) {__pyx_memoryview_err_extents20567,770399 +static int __pyx_memoryview_err_dim(PyObject *__pyx_v_error, char *__pyx_v_msg, int __pyx_v_dim) {__pyx_memoryview_err_dim20657,774005 +static int __pyx_memoryview_err(PyObject *__pyx_v_error, char *__pyx_v_msg) {__pyx_memoryview_err20770,778355 +static int __pyx_memoryview_copy_contents(__Pyx_memviewslice __pyx_v_src, __Pyx_memviewslice __pyx_v_dst, int __pyx_v_src_ndim, int __pyx_v_dst_ndim, int __pyx_v_dtype_is_object) {__pyx_memoryview_copy_contents20909,783304 +static void __pyx_memoryview_broadcast_leading(__Pyx_memviewslice *__pyx_v_mslice, int __pyx_v_ndim, int __pyx_v_ndim_other) {__pyx_memoryview_broadcast_leading21483,801466 +static void __pyx_memoryview_refcount_copying(__Pyx_memviewslice *__pyx_v_dst, int __pyx_v_dtype_is_object, int __pyx_v_ndim, int __pyx_v_inc) {__pyx_memoryview_refcount_copying21594,805156 +static void __pyx_memoryview_refcount_objects_in_slice_with_gil(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, int __pyx_v_inc) {__pyx_memoryview_refcount_objects_in_slice_with_gil21644,806875 +static void __pyx_memoryview_refcount_objects_in_slice(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, int __pyx_v_inc) {__pyx_memoryview_refcount_objects_in_slice21683,808488 +static void __pyx_memoryview_slice_assign_scalar(__Pyx_memviewslice *__pyx_v_dst, int __pyx_v_ndim, size_t __pyx_v_itemsize, void *__pyx_v_item, int __pyx_v_dtype_is_object) {__pyx_memoryview_slice_assign_scalar21813,812437 +static void __pyx_memoryview__slice_assign_scalar(char *__pyx_v_data, Py_ssize_t *__pyx_v_shape, Py_ssize_t *__pyx_v_strides, int __pyx_v_ndim, size_t __pyx_v_itemsize, void *__pyx_v_item) {__pyx_memoryview__slice_assign_scalar21861,814547 +static PyObject *__pyx_tp_new_6pyisda_12credit_index_CurveList(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {__pyx_tp_new_6pyisda_12credit_index_CurveList21981,818277 +static void __pyx_tp_dealloc_6pyisda_12credit_index_CurveList(PyObject *o) {__pyx_tp_dealloc_6pyisda_12credit_index_CurveList21999,819061 +static int __pyx_tp_traverse_6pyisda_12credit_index_CurveList(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_6pyisda_12credit_index_CurveList22015,819638 +static int __pyx_tp_clear_6pyisda_12credit_index_CurveList(PyObject *o) {__pyx_tp_clear_6pyisda_12credit_index_CurveList22027,820026 +static PyObject *__pyx_sq_item_6pyisda_12credit_index_CurveList(PyObject *o, Py_ssize_t i) {__pyx_sq_item_6pyisda_12credit_index_CurveList22038,820474 +static PyObject *__pyx_getprop_6pyisda_12credit_index_9CurveList_curves(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop_6pyisda_12credit_index_9CurveList_curves22046,820721 +static int __pyx_setprop_6pyisda_12credit_index_9CurveList_curves(PyObject *o, PyObject *v, CYTHON_UNUSED void *x) {__pyx_setprop_6pyisda_12credit_index_9CurveList_curves22050,820907 +static PyMethodDef __pyx_methods_6pyisda_12credit_index_CurveList[] = {__pyx_methods_6pyisda_12credit_index_CurveList22060,821207 +static struct PyGetSetDef __pyx_getsets_6pyisda_12credit_index_CurveList[] = {__pyx_getsets_6pyisda_12credit_index_CurveList22065,821440 +static PySequenceMethods __pyx_tp_as_sequence_CurveList = {__pyx_tp_as_sequence_CurveList22070,821812 +static PyMappingMethods __pyx_tp_as_mapping_CurveList = {__pyx_tp_as_mapping_CurveList22083,822131 +static PyTypeObject __pyx_type_6pyisda_12credit_index_CurveList = {__pyx_type_6pyisda_12credit_index_CurveList22089,822314 +static PyObject *__pyx_tp_new_6pyisda_12credit_index_CreditIndex(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_6pyisda_12credit_index_CreditIndex22147,824147 +static void __pyx_tp_dealloc_6pyisda_12credit_index_CreditIndex(PyObject *o) {__pyx_tp_dealloc_6pyisda_12credit_index_CreditIndex22157,824623 +static int __pyx_tp_traverse_6pyisda_12credit_index_CreditIndex(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_6pyisda_12credit_index_CreditIndex22179,825389 +static int __pyx_tp_clear_6pyisda_12credit_index_CreditIndex(PyObject *o) {__pyx_tp_clear_6pyisda_12credit_index_CreditIndex22189,825793 +static PyObject *__pyx_getprop_6pyisda_12credit_index_11CreditIndex_maturities(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop_6pyisda_12credit_index_11CreditIndex_maturities22199,826176 +static PyMethodDef __pyx_methods_6pyisda_12credit_index_CreditIndex[] = {__pyx_methods_6pyisda_12credit_index_CreditIndex22203,826377 +static struct PyGetSetDef __pyx_getsets_6pyisda_12credit_index_CreditIndex[] = {__pyx_getsets_6pyisda_12credit_index_CreditIndex22212,827322 +static PyTypeObject __pyx_type_6pyisda_12credit_index_CreditIndex = {__pyx_type_6pyisda_12credit_index_CreditIndex22217,827531 +static struct __pyx_obj_6pyisda_12credit_index___pyx_scope_struct__items *__pyx_freelist_6pyisda_12credit_index___pyx_scope_struct__items[8];__pyx_freelist_6pyisda_12credit_index___pyx_scope_struct__items22275,829338 +static int __pyx_freecount_6pyisda_12credit_index___pyx_scope_struct__items = 0;__pyx_freecount_6pyisda_12credit_index___pyx_scope_struct__items22276,829480 +static PyObject *__pyx_tp_new_6pyisda_12credit_index___pyx_scope_struct__items(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {__pyx_tp_new_6pyisda_12credit_index___pyx_scope_struct__items22278,829562 +static void __pyx_tp_dealloc_6pyisda_12credit_index___pyx_scope_struct__items(PyObject *o) {__pyx_tp_dealloc_6pyisda_12credit_index___pyx_scope_struct__items22295,830575 +static int __pyx_tp_traverse_6pyisda_12credit_index___pyx_scope_struct__items(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_6pyisda_12credit_index___pyx_scope_struct__items22308,831415 +static int __pyx_tp_clear_6pyisda_12credit_index___pyx_scope_struct__items(PyObject *o) {__pyx_tp_clear_6pyisda_12credit_index___pyx_scope_struct__items22320,831881 +static PyTypeObject __pyx_type_6pyisda_12credit_index___pyx_scope_struct__items = {__pyx_type_6pyisda_12credit_index___pyx_scope_struct__items22332,832460 +static struct __pyx_vtabstruct_array __pyx_vtable_array;__pyx_vtable_array22389,834119 +static PyObject *__pyx_tp_new_array(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_array22391,834177 +static void __pyx_tp_dealloc_array(PyObject *o) {__pyx_tp_dealloc_array22411,834819 +static PyObject *__pyx_sq_item_array(PyObject *o, Py_ssize_t i) {__pyx_sq_item_array22430,835392 +static int __pyx_mp_ass_subscript_array(PyObject *o, PyObject *i, PyObject *v) {__pyx_mp_ass_subscript_array22438,835612 +static PyObject *__pyx_tp_getattro_array(PyObject *o, PyObject *n) {__pyx_tp_getattro_array22449,835902 +static PyObject *__pyx_getprop___pyx_array_memview(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_array_memview22458,836155 +static PyMethodDef __pyx_methods_array[] = {__pyx_methods_array22462,836316 +static struct PyGetSetDef __pyx_getsets_array[] = {__pyx_getsets_array22467,836461 +static PySequenceMethods __pyx_tp_as_sequence_array = {__pyx_tp_as_sequence_array22472,836610 +static PyMappingMethods __pyx_tp_as_mapping_array = {__pyx_tp_as_mapping_array22485,836898 +static PyBufferProcs __pyx_tp_as_buffer_array = {__pyx_tp_as_buffer_array22491,837072 +static PyTypeObject __pyx_type___pyx_array = {__pyx_type___pyx_array22508,837441 +static PyObject *__pyx_tp_new_Enum(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) {__pyx_tp_new_Enum22566,838922 +static void __pyx_tp_dealloc_Enum(PyObject *o) {__pyx_tp_dealloc_Enum22580,839387 +static int __pyx_tp_traverse_Enum(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_Enum22592,839754 +static int __pyx_tp_clear_Enum(PyObject *o) {__pyx_tp_clear_Enum22601,839984 +static PyMethodDef __pyx_methods_Enum[] = {__pyx_methods_Enum22610,840223 +static PyTypeObject __pyx_type___pyx_MemviewEnum = {__pyx_type___pyx_MemviewEnum22614,840286 +static struct __pyx_vtabstruct_memoryview __pyx_vtable_memoryview;__pyx_vtable_memoryview22671,841767 +static PyObject *__pyx_tp_new_memoryview(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new_memoryview22673,841835 +static void __pyx_tp_dealloc_memoryview(PyObject *o) {__pyx_tp_dealloc_memoryview22695,842548 +static int __pyx_tp_traverse_memoryview(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse_memoryview22717,843167 +static int __pyx_tp_clear_memoryview(PyObject *o) {__pyx_tp_clear_memoryview22735,843625 +static PyObject *__pyx_sq_item_memoryview(PyObject *o, Py_ssize_t i) {__pyx_sq_item_memoryview22750,844096 +static int __pyx_mp_ass_subscript_memoryview(PyObject *o, PyObject *i, PyObject *v) {__pyx_mp_ass_subscript_memoryview22758,844321 +static PyObject *__pyx_getprop___pyx_memoryview_T(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_T22769,844621 +static PyObject *__pyx_getprop___pyx_memoryview_base(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_base22773,844781 +static PyObject *__pyx_getprop___pyx_memoryview_shape(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_shape22777,844947 +static PyObject *__pyx_getprop___pyx_memoryview_strides(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_strides22781,845115 +static PyObject *__pyx_getprop___pyx_memoryview_suboffsets(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_suboffsets22785,845287 +static PyObject *__pyx_getprop___pyx_memoryview_ndim(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_ndim22789,845466 +static PyObject *__pyx_getprop___pyx_memoryview_itemsize(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_itemsize22793,845632 +static PyObject *__pyx_getprop___pyx_memoryview_nbytes(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_nbytes22797,845806 +static PyObject *__pyx_getprop___pyx_memoryview_size(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryview_size22801,845976 +static PyMethodDef __pyx_methods_memoryview[] = {__pyx_methods_memoryview22805,846142 +static struct PyGetSetDef __pyx_getsets_memoryview[] = {__pyx_getsets_memoryview22813,846511 +static PySequenceMethods __pyx_tp_as_sequence_memoryview = {__pyx_tp_as_sequence_memoryview22826,847282 +static PyMappingMethods __pyx_tp_as_mapping_memoryview = {__pyx_tp_as_mapping_memoryview22839,847603 +static PyBufferProcs __pyx_tp_as_buffer_memoryview = {__pyx_tp_as_buffer_memoryview22845,847815 +static PyTypeObject __pyx_type___pyx_memoryview = {__pyx_type___pyx_memoryview22862,848194 +static struct __pyx_vtabstruct__memoryviewslice __pyx_vtable__memoryviewslice;__pyx_vtable__memoryviewslice22919,849819 +static PyObject *__pyx_tp_new__memoryviewslice(PyTypeObject *t, PyObject *a, PyObject *k) {__pyx_tp_new__memoryviewslice22921,849899 +static void __pyx_tp_dealloc__memoryviewslice(PyObject *o) {__pyx_tp_dealloc__memoryviewslice22932,850350 +static int __pyx_tp_traverse__memoryviewslice(PyObject *o, visitproc v, void *a) {__pyx_tp_traverse__memoryviewslice22953,850972 +static int __pyx_tp_clear__memoryviewslice(PyObject *o) {__pyx_tp_clear__memoryviewslice22963,851298 +static PyObject *__pyx_getprop___pyx_memoryviewslice_base(PyObject *o, CYTHON_UNUSED void *x) {__pyx_getprop___pyx_memoryviewslice_base22974,851644 +static PyMethodDef __pyx_methods__memoryviewslice[] = {__pyx_methods__memoryviewslice22978,851821 +static struct PyGetSetDef __pyx_getsets__memoryviewslice[] = {__pyx_getsets__memoryviewslice22982,851896 +static PyTypeObject __pyx_type___pyx_memoryviewslice = {__pyx_type___pyx_memoryviewslice22987,852060 +static PyMethodDef __pyx_methods[] = {__pyx_methods23053,853832 +static struct PyModuleDef __pyx_moduledef = {__pyx_moduledef23058,853916 +static __Pyx_StringTabEntry __pyx_string_tab[] = {__pyx_string_tab23075,854292 +static int __Pyx_InitCachedBuiltins(void) {__Pyx_InitCachedBuiltins23185,864849 +static int __Pyx_InitCachedConstants(void) {__Pyx_InitCachedConstants23202,866408 +static int __Pyx_InitGlobals(void) {__Pyx_InitGlobals23587,883464 +PyMODINIT_FUNC initcredit_index(void)initcredit_index23599,883996 +static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {__Pyx_RefNannyImportAPI24000,905893 +static PyObject *__Pyx_GetBuiltinName(PyObject *name) {__Pyx_GetBuiltinName24016,906321 +static void __Pyx_RaiseDoubleKeywordsError(__Pyx_RaiseDoubleKeywordsError24030,906720 +static int __Pyx_ParseOptionalKeywords(__Pyx_ParseOptionalKeywords24044,907129 +static CYTHON_INLINE int __Pyx_IsLittleEndian(void) {__Pyx_IsLittleEndian24146,910707 +static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx,__Pyx_BufFmt_Init24150,910822 +static int __Pyx_BufFmt_ParseNumber(const char** ts) {__Pyx_BufFmt_ParseNumber24177,911606 +static int __Pyx_BufFmt_ExpectNumber(const char **ts) {__Pyx_BufFmt_ExpectNumber24192,911938 +static void __Pyx_BufFmt_RaiseUnexpectedChar(char ch) {__Pyx_BufFmt_RaiseUnexpectedChar24199,912219 +static const char* __Pyx_BufFmt_DescribeTypeChar(char ch, int is_complex) {__Pyx_BufFmt_DescribeTypeChar24203,912374 +static size_t __Pyx_BufFmt_TypeCharToStandardSize(char ch, int is_complex) {__Pyx_BufFmt_TypeCharToStandardSize24227,913313 +static size_t __Pyx_BufFmt_TypeCharToNativeSize(char ch, int is_complex) {__Pyx_BufFmt_TypeCharToNativeSize24245,913975 +typedef struct { char c; short x; } __Pyx_st_short;c24264,914672 +typedef struct { char c; short x; } __Pyx_st_short;x24264,914672 +typedef struct { char c; short x; } __Pyx_st_short;__Pyx_st_short24264,914672 +typedef struct { char c; int x; } __Pyx_st_int;c24265,914724 +typedef struct { char c; int x; } __Pyx_st_int;x24265,914724 +typedef struct { char c; int x; } __Pyx_st_int;__Pyx_st_int24265,914724 +typedef struct { char c; long x; } __Pyx_st_long;c24266,914772 +typedef struct { char c; long x; } __Pyx_st_long;x24266,914772 +typedef struct { char c; long x; } __Pyx_st_long;__Pyx_st_long24266,914772 +typedef struct { char c; float x; } __Pyx_st_float;c24267,914822 +typedef struct { char c; float x; } __Pyx_st_float;x24267,914822 +typedef struct { char c; float x; } __Pyx_st_float;__Pyx_st_float24267,914822 +typedef struct { char c; double x; } __Pyx_st_double;c24268,914874 +typedef struct { char c; double x; } __Pyx_st_double;x24268,914874 +typedef struct { char c; double x; } __Pyx_st_double;__Pyx_st_double24268,914874 +typedef struct { char c; long double x; } __Pyx_st_longdouble;c24269,914928 +typedef struct { char c; long double x; } __Pyx_st_longdouble;x24269,914928 +typedef struct { char c; long double x; } __Pyx_st_longdouble;__Pyx_st_longdouble24269,914928 +typedef struct { char c; void *x; } __Pyx_st_void_p;c24270,914991 +typedef struct { char c; void *x; } __Pyx_st_void_p;x24270,914991 +typedef struct { char c; void *x; } __Pyx_st_void_p;__Pyx_st_void_p24270,914991 +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;c24272,915066 +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;x24272,915066 +typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;__Pyx_st_longlong24272,915066 +static size_t __Pyx_BufFmt_TypeCharToAlignment(char ch, CYTHON_UNUSED int is_complex) {__Pyx_BufFmt_TypeCharToAlignment24274,915135 +typedef struct { short x; char c; } __Pyx_pad_short;x24296,916169 +typedef struct { short x; char c; } __Pyx_pad_short;c24296,916169 +typedef struct { short x; char c; } __Pyx_pad_short;__Pyx_pad_short24296,916169 +typedef struct { int x; char c; } __Pyx_pad_int;x24297,916222 +typedef struct { int x; char c; } __Pyx_pad_int;c24297,916222 +typedef struct { int x; char c; } __Pyx_pad_int;__Pyx_pad_int24297,916222 +typedef struct { long x; char c; } __Pyx_pad_long;x24298,916271 +typedef struct { long x; char c; } __Pyx_pad_long;c24298,916271 +typedef struct { long x; char c; } __Pyx_pad_long;__Pyx_pad_long24298,916271 +typedef struct { float x; char c; } __Pyx_pad_float;x24299,916322 +typedef struct { float x; char c; } __Pyx_pad_float;c24299,916322 +typedef struct { float x; char c; } __Pyx_pad_float;__Pyx_pad_float24299,916322 +typedef struct { double x; char c; } __Pyx_pad_double;x24300,916375 +typedef struct { double x; char c; } __Pyx_pad_double;c24300,916375 +typedef struct { double x; char c; } __Pyx_pad_double;__Pyx_pad_double24300,916375 +typedef struct { long double x; char c; } __Pyx_pad_longdouble;x24301,916430 +typedef struct { long double x; char c; } __Pyx_pad_longdouble;c24301,916430 +typedef struct { long double x; char c; } __Pyx_pad_longdouble;__Pyx_pad_longdouble24301,916430 +typedef struct { void *x; char c; } __Pyx_pad_void_p;x24302,916494 +typedef struct { void *x; char c; } __Pyx_pad_void_p;c24302,916494 +typedef struct { void *x; char c; } __Pyx_pad_void_p;__Pyx_pad_void_p24302,916494 +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;x24304,916570 +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;c24304,916570 +typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;__Pyx_pad_longlong24304,916570 +static size_t __Pyx_BufFmt_TypeCharToPadding(char ch, CYTHON_UNUSED int is_complex) {__Pyx_BufFmt_TypeCharToPadding24306,916640 +static char __Pyx_BufFmt_TypeCharToGroup(char ch, int is_complex) {__Pyx_BufFmt_TypeCharToGroup24324,917490 +static void __Pyx_BufFmt_RaiseExpected(__Pyx_BufFmt_Context* ctx) {__Pyx_BufFmt_RaiseExpected24345,918010 +static int __Pyx_BufFmt_ProcessTypeChunk(__Pyx_BufFmt_Context* ctx) {__Pyx_BufFmt_ProcessTypeChunk24369,918957 +__pyx_buffmt_parse_array(__Pyx_BufFmt_Context* ctx, const char** tsp)__pyx_buffmt_parse_array24472,922750 +static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts) {__Pyx_BufFmt_CheckString24515,924343 +static CYTHON_INLINE void __Pyx_ZeroBuffer(Py_buffer* buf) {__Pyx_ZeroBuffer24648,928359 +static CYTHON_INLINE int __Pyx_GetBufferAndValidate(__Pyx_GetBufferAndValidate24655,928555 +static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info) {__Pyx_SafeReleaseBuffer24689,929736 +__Pyx_init_memviewslice(struct __pyx_memoryview_obj *memview,__Pyx_init_memviewslice24697,929974 +static CYTHON_INLINE void __pyx_fatalerror(const char *fmt, ...) {__pyx_fatalerror24749,931575 +__pyx_add_acquisition_count_locked(__pyx_atomic_int *acquisition_count,__pyx_add_acquisition_count_locked24762,931877 +__pyx_sub_acquisition_count_locked(__pyx_atomic_int *acquisition_count,__pyx_sub_acquisition_count_locked24772,932179 +__Pyx_INC_MEMVIEW(__Pyx_memviewslice *memslice, int have_gil, int lineno)__Pyx_INC_MEMVIEW24782,932482 +static CYTHON_INLINE void __Pyx_XDEC_MEMVIEW(__Pyx_memviewslice *memslice,__Pyx_XDEC_MEMVIEW24802,933217 + static void __Pyx_RaiseArgtupleInvalid(__Pyx_RaiseArgtupleInvalid24831,934190 + static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {__Pyx_GetItemInt_Generic24857,934948 +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,__Pyx_GetItemInt_List_Fast24864,935142 +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,__Pyx_GetItemInt_Tuple_Fast24879,935824 +static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list,__Pyx_GetItemInt_Fast24894,936510 + static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {__Pyx_TypeTest24938,938233 +static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {__Pyx_PyObject_Call24952,938690 +static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {__Pyx_ErrRestoreInState24972,939361 +static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx_ErrFetchInState24984,939821 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb,__Pyx_Raise24996,940199 +static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {__Pyx_Raise25047,941679 + static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) {__Pyx_RaiseTooManyValuesError25158,945343 + static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {__Pyx_RaiseNeedMoreValuesError25164,945594 + static CYTHON_INLINE int __Pyx_IterFinish(void) {__Pyx_IterFinish25171,945863 + static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) {__Pyx_IternextUnpackEndCheck25206,946897 + static void __Pyx_RaiseBufferIndexError(int axis) {__Pyx_RaiseBufferIndexError25218,947199 + static void __Pyx_RaiseArgumentTypeInvalid(const char* name, PyObject *obj, PyTypeObject *type) {__Pyx_RaiseArgumentTypeInvalid25224,947365 +static CYTHON_INLINE int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type, int none_allowed,__Pyx_ArgTypeTest25229,947634 +static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) {__Pyx_PyCFunction_FastCall25252,948367 +static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,__Pyx_PyFunction_FastCallNoKw25271,949247 +static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) {__Pyx_PyFunction_FastCallDict25300,950176 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallMethO25390,953066 +static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx__PyObject_CallOneArg25410,953724 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg25420,954048 +static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {__Pyx_PyObject_CallOneArg25442,954792 + static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name) {__Pyx_GetModuleGlobalName25453,955113 + static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) {__Pyx_RaiseNoneNotIterableError25471,955557 +static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx__ExceptionSave25477,955771 +static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {__Pyx__ExceptionReset25485,956058 +static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) {__Pyx_PyErr_ExceptionMatchesInState25501,956571 +static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx__GetException25511,956913 + static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) {__Pyx_PyBytes_Equals25571,958611 + static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) {__Pyx_PyUnicode_Equals25609,959926 + static CYTHON_INLINE Py_ssize_t __Pyx_div_Py_ssize_t(Py_ssize_t a, Py_ssize_t b) {__Pyx_div_Py_ssize_t25693,962639 + static CYTHON_INLINE PyObject *__Pyx_GetAttr(PyObject *o, PyObject *n) {__Pyx_GetAttr25701,962854 + static CYTHON_INLINE PyObject* __Pyx_decode_c_string(__Pyx_decode_c_string25714,963194 +static CYTHON_INLINE void __Pyx__ExceptionSwap(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {__Pyx__ExceptionSwap25748,964344 +static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) {__Pyx_ExceptionSwap25761,964782 + static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {__Pyx_Import25772,965108 +static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED int inplace) {__Pyx_PyInt_AddObjC25847,967436 + static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname) {__Pyx_RaiseUnboundLocalError25962,973076 + static CYTHON_INLINE long __Pyx_div_long(long a, long b) {__Pyx_div_long25967,973282 + static void __Pyx_WriteUnraisable(const char *name, CYTHON_UNUSED int clineno,__Pyx_WriteUnraisable25975,973478 + static int __Pyx_SetVtable(PyObject *dict, void *vtable) {__Pyx_SetVtable26017,974684 + static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {__pyx_bisect_code_objects26035,975107 +static PyCodeObject *__pyx_find_code_object(int code_line) {__pyx_find_code_object26056,975746 +static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {__pyx_insert_code_object26070,976306 +static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(__Pyx_CreateCodeObjectForTraceback26118,978102 +static void __Pyx_AddTraceback(const char *funcname, int c_line,__Pyx_AddTraceback26170,979711 +static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags) {__Pyx_GetBuffer26196,980641 +static void __Pyx_ReleaseBuffer(Py_buffer *view) {__Pyx_ReleaseBuffer26204,981262 +__pyx_memviewslice_is_contig(const __Pyx_memviewslice mvs,__pyx_memviewslice_is_contig26220,981701 +__pyx_get_array_memory_extents(__Pyx_memviewslice *slice,__pyx_get_array_memory_extents26243,982293 +__pyx_slices_overlap(__Pyx_memviewslice *slice1,__pyx_slices_overlap26267,982996 +__pyx_capsule_create(void *p, CYTHON_UNUSED const char *sig)__pyx_capsule_create26279,983443 +__pyx_typeinfo_cmp(__Pyx_TypeInfo *a, __Pyx_TypeInfo *b)__pyx_typeinfo_cmp26292,983718 +__pyx_check_strides(Py_buffer *buf, int dim, int ndim, int spec)__pyx_check_strides26333,984990 +__pyx_check_suboffsets(Py_buffer *buf, int dim, CYTHON_UNUSED int ndim, int spec)__pyx_check_suboffsets26386,986987 +__pyx_verify_contig(Py_buffer *buf, int ndim, int c_or_f_flag)__pyx_verify_contig26409,987733 +static int __Pyx_ValidateAndInit_memviewslice(__Pyx_ValidateAndInit_memviewslice26440,988697 + static CYTHON_INLINE __Pyx_memviewslice __Pyx_PyObject_to_MemoryviewSlice_ds_double(PyObject *obj) {__Pyx_PyObject_to_MemoryviewSlice_ds_double26514,991403 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {__Pyx_PyInt_From_long26537,992279 + #define __PYX_VERIFY_RETURN_INT(__PYX_VERIFY_RETURN_INT26568,993440 +#define __PYX_VERIFY_RETURN_INT_EXC(__PYX_VERIFY_RETURN_INT_EXC26570,993587 +#define __PYX__VERIFY_RETURN_INT(__PYX__VERIFY_RETURN_INT26572,993728 + static CYTHON_INLINE PyObject *__pyx_memview_get_double(const char *itemp) {__pyx_memview_get_double26590,994408 +static CYTHON_INLINE int __pyx_memview_set_double(const char *itemp, PyObject *obj) {__pyx_memview_set_double26593,994560 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {__Pyx_PyInt_From_int26602,994826 + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {__pyx_t_float_complex_from_parts26635,996023 + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {__pyx_t_float_complex_from_parts26639,996181 + static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {__pyx_t_float_complex_from_parts26644,996356 + static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_eq_float26655,996606 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_sum_float26658,996766 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_diff_float26664,997008 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_prod_float26670,997251 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_quot_float26677,997540 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_quot_float26697,998484 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex a) {__Pyx_c_neg_float26708,998997 + static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex a) {__Pyx_c_is_zero_float26714,999198 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex a) {__Pyx_c_conj_float26717,999328 + static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex z) {__Pyx_c_abs_float26724,999540 + static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {__Pyx_c_pow_float26731,999819 + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {__pyx_t_double_complex_from_parts26790,1001953 + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {__pyx_t_double_complex_from_parts26794,1002116 + static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {__pyx_t_double_complex_from_parts26799,1002296 + static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_eq_double26810,1002551 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_sum_double26813,1002714 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_diff_double26819,1002961 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_prod_double26825,1003209 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_quot_double26832,1003503 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_quot_double26852,1004457 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex a) {__Pyx_c_neg_double26863,1004977 + static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex a) {__Pyx_c_is_zero_double26869,1005182 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex a) {__Pyx_c_conj_double26872,1005314 + static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex z) {__Pyx_c_abs_double26879,1005530 + static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {__Pyx_c_pow_double26886,1005810 + static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__NPY_TYPES(enum NPY_TYPES value) {__Pyx_PyInt_From_enum__NPY_TYPES26943,1007896 +__pyx_memoryview_copy_new_contig(const __Pyx_memviewslice *from_mvs,__pyx_memoryview_copy_new_contig26975,1009212 + static CYTHON_INLINE size_t __Pyx_PyInt_As_size_t(PyObject *x) {__Pyx_PyInt_As_size_t27041,1011638 + static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {__Pyx_PyInt_As_long27230,1021658 + static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {__Pyx_PyInt_As_int27419,1031484 + static CYTHON_INLINE char __Pyx_PyInt_As_char(PyObject *x) {__Pyx_PyInt_As_char27608,1041213 + static PyTypeObject* __Pyx_FetchCommonType(PyTypeObject* type) {__Pyx_FetchCommonType27797,1051044 + static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name, PyObject* arg) {__Pyx_PyObject_CallMethod127836,1052378 +#define __Pyx_Coroutine_Undelegate(__Pyx_Coroutine_Undelegate27887,1054261 +static int __Pyx_PyGen_FetchStopIterationValue(PyObject **pvalue) {__Pyx_PyGen_FetchStopIterationValue27889,1054365 +void __Pyx_Coroutine_ExceptionClear(__pyx_CoroutineObject *self) {__Pyx_Coroutine_ExceptionClear27972,1056736 +int __Pyx_Coroutine_CheckRunning(__pyx_CoroutineObject *gen) {__Pyx_Coroutine_CheckRunning27984,1057132 +PyObject *__Pyx_Coroutine_SendEx(__pyx_CoroutineObject *self, PyObject *value) {__Pyx_Coroutine_SendEx27993,1057391 +PyObject *__Pyx_Coroutine_MethodReturn(PyObject *retval) {__Pyx_Coroutine_MethodReturn28046,1059186 +PyObject *__Pyx_Coroutine_FinishDelegation(__pyx_CoroutineObject *gen) {__Pyx_Coroutine_FinishDelegation28053,1059387 +static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value) {__Pyx_Coroutine_Send28062,1059672 +static int __Pyx_Coroutine_CloseIter(__pyx_CoroutineObject *gen, PyObject *yf) {__Pyx_Coroutine_CloseIter28097,1060801 +static PyObject *__Pyx_Generator_Next(PyObject *self) {__Pyx_Generator_Next28134,1061838 +static PyObject *__Pyx_Coroutine_Close(PyObject *self) {__Pyx_Coroutine_Close28156,1062538 +static PyObject *__Pyx_Coroutine_Throw(PyObject *self, PyObject *args) {__Pyx_Coroutine_Throw28191,1063724 +static int __Pyx_Coroutine_traverse(PyObject *self, visitproc visit, void *arg) {__Pyx_Coroutine_traverse28250,1065792 +static int __Pyx_Coroutine_clear(PyObject *self) {__Pyx_Coroutine_clear28260,1066135 +static void __Pyx_Coroutine_dealloc(PyObject *self) {__Pyx_Coroutine_dealloc28272,1066507 +static void __Pyx_Coroutine_del(PyObject *self) {__Pyx_Coroutine_del28293,1067107 +__Pyx_Coroutine_get_name(__pyx_CoroutineObject *self)__Pyx_Coroutine_get_name28334,1068297 +__Pyx_Coroutine_set_name(__pyx_CoroutineObject *self, PyObject *value)__Pyx_Coroutine_set_name28342,1068481 +__Pyx_Coroutine_get_qualname(__pyx_CoroutineObject *self)__Pyx_Coroutine_get_qualname28361,1068998 +__Pyx_Coroutine_set_qualname(__pyx_CoroutineObject *self, PyObject *value)__Pyx_Coroutine_set_qualname28369,1069190 +static __pyx_CoroutineObject *__Pyx__Coroutine_New(__Pyx__Coroutine_New28387,1069705 + static PyObject* __Pyx_Coroutine_patch_module(PyObject* module, const char* py_code) {__Pyx_Coroutine_patch_module28415,1070578 +static PyObject* __Pyx_patch_abc_module(PyObject *module) {__Pyx_patch_abc_module28457,1072133 +static int __Pyx_patch_abc(void) {__Pyx_patch_abc28472,1072648 + static PyMethodDef __pyx_Generator_methods[] = {__pyx_Generator_methods28509,1073885 +static PyMemberDef __pyx_Generator_memberlist[] = {__pyx_Generator_memberlist28518,1074484 +static PyGetSetDef __pyx_Generator_getsets[] = {__pyx_Generator_getsets28524,1074825 +static PyTypeObject __pyx_GeneratorType_type = {__pyx_GeneratorType_type28531,1075213 +static int __pyx_Generator_init(void) {__pyx_Generator_init28587,1076080 + static int __Pyx_check_binary_version(void) {__Pyx_check_binary_version28598,1076431 +#define __PYX_HAVE_RT_ImportModule__PYX_HAVE_RT_ImportModule28615,1077137 +static PyObject *__Pyx_ImportModule(const char *name) {__Pyx_ImportModule28616,1077172 +#define __PYX_HAVE_RT_ImportType__PYX_HAVE_RT_ImportType28633,1077577 +static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,__Pyx_ImportType28634,1077610 +#define __PYX_HAVE_RT_ImportFunction__PYX_HAVE_RT_ImportFunction28698,1079572 +static int __Pyx_ImportFunction(PyObject *module, const char *funcname, void (**f)(void), const char *sig) {__Pyx_ImportFunction28699,1079609 + static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {__Pyx_InitStrings28751,1081151 +static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {__Pyx_PyUnicode_FromString28781,1082087 +static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject* o) {__Pyx_PyObject_AsString28784,1082248 +static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {__Pyx_PyObject_AsStringAndSize28788,1082394 +static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {__Pyx_PyObject_IsTrue28846,1084270 +static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {__Pyx_PyNumber_IntOrLong28851,1084467 +static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {__Pyx_PyIndex_AsSsize_t28902,1085615 +static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {__Pyx_PyInt_FromSize_t28964,1087906 + +pyisda/pyisda/utils.py,303 +def getMarkitIRData(date = datetime.date.today() - datetime.timedelta(days = 1),getMarkitIRData18,698 +def rate_helpers(currency="USD", MarkitData=None):rate_helpers39,1913 +def YC(currency="USD", helpers = None, MarkitData=None):YC65,3423 +def build_yc(trade_date, ql_curve=False):build_yc72,3691 + +pyisda/pyisda/flat_hazard.pyx,176 +def strike_vec(double[:] spreads, YieldCurve yc, trade_date, value_date,strike_vec19,644 +def pv_vec(double[:] spreads, YieldCurve yc, trade_date, value_date,pv_vec114,5164 + +pyisda/pyisda/curve.h,386 +#define __PYX_HAVE__pyisda__curve__PYX_HAVE__pyisda__curve4,68 +enum BadDay {BadDay14,273 + FOLLOW = ((long)'F'),FOLLOW23,492 + PREVIOUS = ((long)'P'),PREVIOUS24,516 + NONE = ((long)'N'),NONE25,542 + MODIFIED = ((long)'M')MODIFIED26,564 + #define __PYX_EXTERN_C __PYX_EXTERN_C33,676 + #define __PYX_EXTERN_C __PYX_EXTERN_C35,722 + #define DL_IMPORT(DL_IMPORT40,791 + +pyisda/pyisda/legs.pxd,607 + cdef TContingentLeg* JpmcdsCdsContingentLegMake(JpmcdsCdsContingentLegMake39,870 + cdef TFeeLeg* JpmcdsCdsFeeLegMake(JpmcdsCdsFeeLegMake50,1280 + cdef int JpmcdsContingentLegPV(TContingentLeg *cl, # Contingent legJpmcdsContingentLegPV80,2616 + cdef int JpmcdsFeeLegPV(TFeeLeg *fl,JpmcdsFeeLegPV90,3251 + cdef TCashFlowList* JpmcdsFeeLegFlows(TFeeLeg *fl)JpmcdsFeeLegFlows99,3609 + cdef void JpmcdsFeeLegFree(TFeeLeg *p)JpmcdsFeeLegFree101,3664 + cdef void FeeLegAI(TFeeLeg* fl,FeeLegAI103,3707 +cdef class ContingentLeg:ContingentLeg107,3812 +cdef class FeeLeg:FeeLeg111,3874 + +pyisda/docs/conf.py,925 +extensions = [extensions33,1068 +templates_path = ['_templates']templates_path42,1290 +source_suffix = '.rst'source_suffix48,1452 +master_doc = 'index'master_doc55,1574 +project = 'PyISDA'project58,1637 +copyright = '2016, Guillaume Horel'copyright59,1656 +author = 'Guillaume Horel'author60,1692 +version = '0.1'version67,1921 +release = '0.1'release69,1987 +language = Nonelanguage76,2258 +exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']exclude_patterns90,2689 +pygments_style = 'sphinx'pygments_style112,3303 +todo_include_todos = Truetodo_include_todos121,3597 +html_theme = 'sphinx_rtd_theme'html_theme129,3808 +html_static_path = ['_static']html_static_path163,4918 +htmlhelp_basename = 'PyISDAdoc'htmlhelp_basename243,7289 +latex_elements = {latex_elements247,7399 +latex_documents = [latex_documents268,7917 +man_pages = [man_pages310,8992 +texinfo_documents = [texinfo_documents325,9391 + +pyisda/docs/Makefile,450 +SPHINXOPTS =SPHINXOPTS5,92 +SPHINXBUILD = sphinx-buildSPHINXBUILD6,108 +PAPER =PAPER7,137 +BUILDDIR = _buildBUILDDIR8,153 +PAPEROPT_a4 = -D latex_paper_size=a4PAPEROPT_a411,199 +PAPEROPT_letter = -D latex_paper_size=letterPAPEROPT_letter12,240 +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .ALLSPHINXOPTS13,285 +I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .I18NSPHINXOPTS15,441 + +pyisda/c_layer/cdsbootstrap.h,484 +#define SUCCESS SUCCESS12,171 +#define FAILURE FAILURE13,189 + TDate stepinDate;stepinDate17,226 + TDate cashSettleDate;cashSettleDate18,258 + TCurve *discountCurve;discountCurve19,294 + TCurve *cdsCurve;cdsCurve20,329 + double recoveryRate;recoveryRate21,359 + double spread;spread22,393 + TContingentLeg *cl;cl23,421 + TFeeLeg *fl;fl24,445 +} cds_bootstrap_ctx;cds_bootstrap_ctx25,469 + +pyisda/c_layer/cdsbootstrap.c,61 +int cdsBootstrapPointFunctioncdsBootstrapPointFunction3,27 + +pyisda/Makefile,0 + +pyisda/setup.py,1075 +all_extensions = Extension("*", ["pyisda/*.pyx"],all_extensions6,124 + include_dirs = ['c_layer', numpy.get_include()],include_dirs7,174 + libraries = ["cds"],libraries8,250 + language = 'c++')language9,298 +c_extension = Extension("pyisda.flat_hazard",c_extension11,344 + include_dirs = ['c_layer', numpy.get_include()],include_dirs12,390 + sources = ['pyisda/flat_hazard.pyx', 'c_layer/cdsbootstrap.c'],sources13,463 + libraries = ['cds'],libraries14,551 + language = 'c++')language15,596 +all_extensions = cythonize([c_extension, all_extensions], nthreads = 4,all_extensions17,639 + compiler_directives={'embedsignature':True})compiler_directives18,711 + name = "pyisda",name21,791 + version = '0.1',version22,812 + author = 'Guillaume Horel',author23,833 + ext_modules = all_extensions,ext_modules24,865 + packages = ['pyisda'])packages25,899 + +pyisda/example.py,1776 + today_date = datetime.date(2016, 7, 12)today_date11,298 + yc = build_yc(today_date, True)yc12,342 + step_in_date = today_date + datetime.timedelta(days=1)step_in_date13,378 + value_date = datetime.date(2016, 7, 15) # settle_datevalue_date14,437 + start_date = datetime.date(2016, 6, 20)start_date16,496 + end_date = datetime.date(2021, 6, 20)end_date17,540 + upfront_quote = -0.03063upfront_quote18,582 + spread = spread_from_upfront(today_date, value_date, start_date, step_in_date,spread19,611 + upf = upfront_charge(today_date, value_date, start_date, step_in_date,upf23,898 + coupon_leg = FeeLeg(start_date, end_date, True, 1000000, 0.01)coupon_leg28,1091 + contingent_leg = ContingentLeg(start_date, end_date, 1000000)contingent_leg29,1158 + ig_spread = 0.0070ig_spread31,1225 + spread = array.array('d', [ig_spread])spread32,1248 + recovery = array.array('d', [0.4])recovery33,1291 + upfront = array.array('d', [-0.0164243])upfront34,1330 + sc = SpreadCurve(today_date, yc, start_date, step_in_date, value_date,sc36,1419 + sc_data = sc.inspect()['data']sc_data38,1560 + rate = sc_data[0][1]rate39,1595 + continuous_rate = math.log(1+rate)continuous_rate41,1679 + sc2 = SpreadCurve.from_flat_hazard(today_date, continuous_rate)sc242,1718 + coupon_leg_pv = coupon_leg.pv(today_date, step_in_date,coupon_leg_pv43,1786 + coupon_leg_pv2 = coupon_leg.pv(today_date, step_in_date,coupon_leg_pv245,1906 + contingent_leg_pv = contingent_leg.pv(today_date, step_in_date,contingent_leg_pv48,2072 + contingent_leg_pv2 = contingent_leg.pv(today_date, step_in_date,contingent_leg_pv250,2207 + pv = 1000000 * upfront_charge(today_date, value_date, start_date, step_in_date,pv53,2385 + +ecb_yieldcurve.py,221 r = requests.get('http://www.ecb.europa.eu/stats/money/yc/data/fmd/download/yc_latest.zip?')r9,111 yc = io.BytesIO(r.content)yc10,204 ycunzip = ZipFile(yc)ycunzip11,231 zipinfos = ycunzip.infolist()zipinfos12,253 -handle_default.py,350 -from __future__ import divisiondivision1,0 -from db import dbconndbconn2,32 -import datetimedatetime3,54 -from sys import argvargv4,70 +handle_default.py,210 def affected_indices(company_id):affected_indices6,92 def create_newindices(recordslist, lastdate, nissuers):create_newindices18,525 def update_indexmembers(newids, company_id):update_indexmembers40,1428 -bbg_helpers.py,1530 -import blpapiblpapi1,0 -import syssys2,14 -import pandas as pdpd3,25 -from contextlib import contextmanagercontextmanager4,45 -import logginglogging5,83 -import datetimedatetime6,98 +bbg_helpers.py,1410 logger = logging.getLogger(__name__)logger8,115 BBG_IP = ['192.168.9.61', '192.168.9.65', '192.168.0.10', '192.168.0.12']BBG_IP10,153 def init_bbg_session(ip_list, port=8194):init_bbg_session13,244 def append_overrides(request, d):append_overrides36,993 def event_loop(session, request):event_loop46,1326 -def get_pythonvalue(e):get_pythonvalue59,1822 -def field_array_todf(field):field_array_todf65,2002 -def process_historical_msg(msg):process_historical_msg70,2210 -def process_reference_msg(msg):process_reference_msg76,2462 -def retrieve_data(session, securities, fields, overrides={},retrieve_data93,3164 - testdate = pd.datetime(2013, 1, 1)testdate120,4234 - hist_securities = ['CADUSD Curncy', "EURUSD Curncy"]hist_securities121,4273 - hist_fields = ['PX_LAST']hist_fields122,4330 - securities = ['38145BAA9 Mtge', '75157EAE2 Mtge', 'XS0295516776 Mtge']securities123,4360 - fields = ['CUR_CPN', 'START_ACC_DT']fields124,4435 - hist_data = retrieve_data(session, hist_securities, hist_fields, start_date=testdate)hist_data126,4522 - overrides={'SETTLE_DT': testdate}overrides127,4616 - ref_data = retrieve_data(session, securities, fields, overrides=overrides)ref_data128,4658 - struct_data = retrieve_data(session, securities, ["HIST_CASH_FLOW"])struct_data129,4741 +def get_pythonvalue(e):get_pythonvalue59,1809 +def field_array_todf(field):field_array_todf65,1989 +def process_historical_msg(msg):process_historical_msg72,2252 +def process_reference_msg(msg):process_reference_msg78,2504 +def retrieve_data(session, securities, fields, overrides={},retrieve_data98,3331 + testdate = pd.datetime(2013, 1, 1)testdate146,5096 + hist_securities = ['CADUSD Curncy', "EURUSD Curncy"]hist_securities147,5135 + hist_fields = ['PX_LAST']hist_fields148,5192 + securities = ['004421BW2 Mtge', '75157EAE2 Mtge', 'XS0295516776 Mtge']securities149,5222 + fields = ['CUR_CPN', 'START_ACC_DT']fields150,5297 + hist_data = retrieve_data(session, securities, hist_fields, start_date=testdate,hist_data152,5384 + frequency="MONTHLY")frequency153,5473 + overrides={'SETTLE_DT': testdate}overrides154,5528 + ref_data = retrieve_data(session, securities, fields, overrides=overrides)ref_data155,5570 + struct_data = retrieve_data(session, securities, ["HIST_CASH_FLOW"])struct_data156,5653 -send_email.py,1031 -from apiclient.discovery import buildbuild1,0 -from apiclient import errorserrors2,38 -from httplib2 import HttpHttp3,67 -import oauth2clientoauth2client4,93 -from oauth2client import client, toolsclient5,113 -from oauth2client import client, toolstools5,113 -import osos6,152 -import jsonjson7,162 -import base64base648,174 -import binasciibinascii9,188 -from email.mime.text import MIMETextMIMEText10,204 -import syssys11,241 -import argparseargparse13,253 -flags = argparse.ArgumentParser(parents=[tools.argparser]).parse_args()flags14,269 -SCOPES = 'https://www.googleapis.com/auth/gmail.modify'SCOPES16,342 -CLIENT_SECRET_FILE = 'secret.json'CLIENT_SECRET_FILE17,398 -APPLICATION_NAME = 'Swaptions'APPLICATION_NAME18,433 -def get_gmail_service():get_gmail_service20,465 -class EmailMessage(MIMEText):EmailMessage45,1449 - _service = get_gmail_service()_service46,1479 - def msgdict(self):msgdict48,1515 - def send(self):send54,1738 -def main():main62,2047 - message = main()message74,2391 +send_email.py,473 +SCOPES = 'https://www.googleapis.com/auth/gmail.modify'SCOPES15,270 +CLIENT_SECRET_FILE = 'secret.json'CLIENT_SECRET_FILE16,326 +APPLICATION_NAME = 'Swaptions'APPLICATION_NAME17,361 +def get_gmail_service():get_gmail_service19,393 +class EmailMessage(MIMEText):EmailMessage45,1457 + _service = get_gmail_service()_service46,1487 + def msgdict(self):msgdict48,1523 + def send(self):send54,1746 +def main():main62,2055 + message = main()message74,2399 GHquad.c,56 void GHquad(int n, double* Z, double* w) {GHquad7,167 -download_emails.py,849 -from datetime import datetimedatetime1,0 -import osos2,30 -from pathlib import PathPath3,40 -from apiclient.discovery import buildbuild5,66 -from apiclient import errorserrors6,104 -from httplib2 import HttpHttp7,133 -import oauth2clientoauth2client8,159 -from oauth2client import clientclient9,179 -from oauth2client import toolstools10,211 -import jsonjson11,242 -import base64base6412,254 -import binasciibinascii13,268 -from send_email import get_gmail_serviceget_gmail_service14,284 -import argparseargparse15,325 -import logginglogging16,341 -def ListMessagesWithLabels(service, user_id, label_ids=[]):ListMessagesWithLabels18,357 -def labels_dict(service, user_id):labels_dict49,1729 -def get_msg(service, user_id, msg_id):get_msg66,2309 -def msg_content(msg):msg_content73,2597 -def update_emails():update_emails80,2948 +download_emails.py,285 +def ListMessagesWithLabels(service, user_id, label_ids=[]):ListMessagesWithLabels17,326 +def labels_dict(service, user_id):labels_dict48,1698 +def get_msg(service, user_id, msg_id):get_msg65,2278 +def msg_content(msg):msg_content72,2566 +def update_emails():update_emails87,3158 -cds_rebook.py,488 -from sqlalchemy import create_enginecreate_engine2,39 -import pandas as pdpd3,76 -from pandas.tseries.offsets import BDayBDay4,96 -import pdbpdb5,136 +marks_to_HY.py,5400 +def monthlySpreadDiff(index="IG", tenor="5yr"):monthlySpreadDiff16,435 +def nearestDate(base, dates):nearestDate27,1077 +def interpolate_rates(s, hist_data):interpolate_rates31,1235 +def aux(df):aux36,1410 +df = (pd.read_sql_table('external_marks_mapped',dbengine('dawndb'),df42,1549 +BBG_IP = ['192.168.9.65']BBG_IP46,1694 +bbgstartdate = pd.datetime(2013, 1, 1)bbgstartdate48,1795 +hist_securities = ["US0006M Index", "USSWAP2 Curncy", "USSWAP3 Curncy", "USSWAP4 Curncy", "USSWAP5 Curncy", "USSWAP7 Curncy", "USSWAP10 Curncy"]hist_securities49,1834 +hist_fields = ['PX_LAST']hist_fields50,1979 + hist_data = bbg_helpers.retrieve_data(session, hist_securities, hist_fields, start_date=bbgstartdate)hist_data53,2060 +hist_data1 = pd.concat(hist_data,ignore_index=False, names = ['Rate Index', 'numIndex']).reset_index()hist_data155,2171 +mapping = {"US0006M Index": .5, "USSWAP10 Curncy": 10, "USSWAP2 Curncy": 2, "USSWAP3 Curncy": 3, "USSWAP4 Curncy": 4, "USSWAP5 Curncy": 5, "USSWAP7 Curncy": 7}mapping56,2274 +mapping = pd.Series(mapping, name = 'tenor')mapping57,2434 +mapping = mapping.reset_index()mapping59,2513 +hist_data1 = hist_data1.merge(mapping, on='Rate Index')hist_data160,2545 +hist_data1 = hist_data1[['date','PX_LAST','tenor']].set_index('date')hist_data161,2601 +df1 = dfdf165,2792 +df1 = df1.sort_values('date')df167,2860 +df1 = df1.set_index(['date','identifier','source'])df168,2890 +df1 = df1.groupby(level=['date','identifier','source'])['mark'].mean()df169,2942 +df1 = df1.reset_index()df170,3013 +df1 = df1.set_index(['date'])df171,3037 +mapping = pd.read_sql_query("select distinct date(timestamp) as model_date from priced",dbengine('rmbs_model'), parse_dates = ['model_date']).sort_values('model_date')mapping74,3131 +df2 = df.set_index(['date'])df275,3299 +df2 = df2.groupby(level=['date'])['mark'].mean()df276,3328 +df2 = pd.DataFrame(df2)df279,3450 +df1 = df1.join(df2)df183,3567 +df3=pd.DataFrame()df386,3643 + "where date(timestamp) = %s and model_version = 1"sql_str88,3743 + df3= df3.append(pd.read_sql_query(sql_str,dbengine('rmbs_model'), parse_dates = ['date'], params=(date.to_pydatetime(), )))df391,3954 +df3= df3.rename(columns = {"cusip": "identifier"})df393,4083 +df3 = df3.sort_values('date')df394,4134 +df3 = df3.set_index(['date', 'identifier'])df396,4198 +df1 = df1.reset_index()df199,4309 +df1= df1.rename(columns = {"model_date": "date", "date": "monthend_date"})df1100,4333 +df1 = df1.set_index(['date','identifier'])df1101,4408 +df1 = df1.merge(df3, left_index = True, right_index= True)df1103,4452 +df1 = df1.reset_index().sort_values('monthend_date')df1104,4511 +availratesdate = pd.DataFrame(sorted(pd.unique(hist_data1.index)), columns=['date'])availratesdate105,4564 +df1temp = df1.groupby(['identifier','BDay','moddur']).mean().reset_index()df1temp108,4781 +df1 = pd.merge(df1, df1temp[['identifier', 'BDay', 'moddur','yielddiff']], on= ['identifier', 'BDay', 'moddur'])df1111,5006 +df1 = df1.groupby('identifier').apply(aux)df1114,5220 +df1 = df1.set_index(['monthend_date','identifier','source'])df1118,5385 +SpreadFilter = 1000SpreadFilter122,5490 +SpreadDiffFilter = 250SpreadDiffFilter123,5510 +DurationFilter = 1.5DurationFilter124,5533 +begindate = '2014-01-01'begindate125,5554 +enddate = '2017-01-01'enddate126,5579 +interval = 1interval127,5602 +HYDifference = monthlySpreadDiff(index = 'HY')HYDifference128,5615 +difference = df1[abs(df1['spread'])<SpreadFilter].groupby(level=['identifier','source'])['pv','moddur','spread'].diff(periods = interval)difference129,5662 +difference = difference[abs(difference['spread'])<SpreadDiffFilter]difference130,5800 +difference = difference[abs(difference['moddur'])<DurationFilter]difference131,5868 +avgchange1 = pd.DataFrame(difference.groupby(level=['monthend_date']).mean()['spread'])avgchange1135,6042 +avgchange1 = avgchange1.join(HYDifference, rsuffix = 'HY')avgchange1136,6130 +avgchange1 = avgchange1[begindate:enddate]avgchange1137,6189 +regmodel1 = sm.OLS(avgchange1['spread'],avgchange1['spreadHY']).fit()regmodel1138,6232 +ratio1 = (avgchange1['spreadHY']/avgchange1['spread']).mean()ratio1139,6302 +avgchange2 = pd.DataFrame(difference.groupby(level=['monthend_date','source']).mean()['spread'])avgchange2142,6404 +avgchange2 = avgchange2.unstack(level =1)avgchange2143,6501 +HYDifference = HYDifference.to_frame()HYDifference144,6543 +avgchange2 = avgchange2.merge(HYDifference, left_index = True, right_index= True)avgchange2146,6651 +regmodel2 ={}regmodel2147,6733 +ratio2 = {}ratio2148,6747 +Rsquared2 = {}Rsquared2153,6991 +params2 = {}params2154,7006 +difference1 = difference.reset_index().set_index('monthend_date')difference1161,7278 +difference1 = difference1.merge(HYDifference, left_index = True, right_index= True)difference1165,7563 +regmodel3 = {}regmodel3166,7647 +Rsquared3 = {}Rsquared3167,7662 +params3 = {}params3168,7677 +difference4 = difference1.rename(columns = {('HY'): "HY Spread"})difference4178,8192 +difference4 = difference4.set_index('source', append = True)difference4181,8397 +meanmarkchange= difference4.groupby(level = ['monthend_date', 'source'])['spread'].mean().unstack(level = -1)meanmarkchange182,8458 +StdDevmarkchange = difference4.groupby(level = ['monthend_date', 'source'])['spread'].std().unstack(level = -1)StdDevmarkchange183,8568 + +cds_curve.py,912 +def get_singlenames_quotes(indexname, date):get_singlenames_quotes24,750 +def build_curve(r, today_date, yc, start_date, step_in_date, value_date, end_dates):build_curve30,968 +def grouper(iterable, n, fillvalue=None):grouper44,1647 +def build_curves_dist(quotes, args, workers=4):build_curves_dist50,1876 +def build_curves(quotes, args):build_curves57,2159 +def get_singlenames_curves(index_type, series, trade_date):get_singlenames_curves60,2260 +def all_curves_pv(curves, today_date, jp_yc, start_date, step_in_date, value_date, maturities):all_curves_pv74,2939 +def stack_curves(curves):stack_curves94,3971 +def forward_hazard_rates(sc):forward_hazard_rates101,4249 +serenitas_engine = dbengine('serenitasdb')serenitas_engine114,4545 +def calibrate_portfolio(index_type, series, tenors=['3yr', '5yr', '7yr', '10yr']):calibrate_portfolio116,4589 + df = calibrate_portfolio("HY", 27)df167,7171 + +cds_rebook.py,333 def get_outstanding_positions(engine):get_outstanding_positions7,148 def next_redcode(engine, secid):next_redcode19,711 def rebook(engine, secid, lastdate, already_rebooked):rebook31,1141 def rebook_everything(engine):rebook_everything49,1961 engine = create_engine("postgresql://dawn_user@debian/dawndb")engine59,2338 -dawn_utils.py,261 -from sqlalchemy.sql import texttext1,0 -from sqlalchemy import create_enginecreate_engine2,32 -import osos3,69 +dawn_utils.py,111 def create_trigger_function(conn):create_trigger_function5,80 def create_triggers():create_triggers34,1110 - from Dawn import dbdb54,1860 -parse_emails.py,2359 -import pandas as pdpd1,0 -import rere2,20 -import osos3,30 -import pdbpdb4,40 -from download_emails import update_emailsupdate_emails5,51 -import datetimedatetime6,93 -import logginglogging7,109 -import picklepickle8,124 -import syssys9,138 - level=logging.WARNING,level13,238 - format='%(asctime)s %(message)s')format14,281 -def makedf(r, indextype, quote_source):makedf16,336 -def parse_quotedate(fh, date_received):parse_quotedate39,1215 -def parse_refline(line):parse_refline56,1840 -def parse_baml(fh, indextype, series, quotedate):parse_baml68,2295 -def parse_baml_block(fh, indextype):parse_baml_block94,3114 -def parse_ms_block(fh, indextype):parse_ms_block110,3579 -def parse_ms(fh, indextype):parse_ms135,4397 -subject_BAML = re.compile("(?:Fwd:){0,2}(?:BAML )?(\w{2})([0-9]{1,2})\s")subject_BAML145,4719 -subject_MS = re.compile("\$\$ MS CDX OPTIONS: (IG|HY)(\d{2})[^\d]*([\d.]+)")subject_MS146,4793 -def parse_email(email):parse_email148,4871 -def write_todb(swaption_stack, index_data):write_todb175,6155 - from sqlalchemy import MetaData, TableMetaData176,6199 - from sqlalchemy import MetaData, TableTable176,6199 - from db import dbengine, nan_to_nulldbengine177,6242 - from db import dbengine, nan_to_nullnan_to_null177,6242 - import psycopg2psycopg2178,6283 -def get_email_list(date):get_email_list186,6699 - data_dir = os.path.join(os.getenv("DATA_DIR"), "swaptions")data_dir202,7155 - emails = [f for f in os.scandir(data_dir) if f.is_file()]emails203,7219 - swaption_stack = {}swaption_stack204,7281 - index_data = pd.DataFrame()index_data205,7305 - already_uploaded = pickle.load(fh)already_uploaded208,7388 - already_uploaded = {}already_uploaded210,7465 - index_data = index_data.append(fwd_index)index_data221,7850 - swaption_stack = pd.concat(swaption_stack, names=['quotedate', 'index', 'series'])swaption_stack229,8185 - swaption_stack = swaption_stack.reset_index()swaption_stack234,8439 - swaption_stack = swaption_stack.drop_duplicates(['quotedate', 'index', 'series', 'expiry', 'strike'])swaption_stack235,8489 - index_data = index_data.reset_index()index_data236,8595 - index_data = index_data.drop_duplicates(['quotedate', 'index', 'series', 'expiry'])index_data237,8637 +parse_emails.py,2674 + level=logging.WARNING,level14,332 + format='%(asctime)s %(message)s')format15,375 +def list_imm_dates(date):list_imm_dates17,430 +def makedf(r, indextype, quote_source):makedf25,610 +def parse_quotedate(fh, date_received):parse_quotedate54,1727 +def parse_refline(line):parse_refline71,2387 +def parse_baml(fh, indextype, series, quotedate, *args):parse_baml83,2842 +def parse_baml_block(fh, indextype):parse_baml_block108,3667 +def parse_ms_block(fh, indextype):parse_ms_block124,4132 +def parse_nomura_block(fh, indextype):parse_nomura_block149,4950 +def parse_sg_block(fh, indextype, expiration_dates):parse_sg_block170,5678 +def parse_gs_block(fh, indextype):parse_gs_block198,6771 +def parse_ms(fh, indextype, *args):parse_ms227,7590 +def parse_nomura(fh, indextype, *args):parse_nomura237,7919 +def parse_sg(fh, indextype, expiration_dates):parse_sg247,8256 +def parse_gs(fh, indextype, series, quotedate, ref):parse_gs257,8565 +subject_baml = re.compile("(?:Fwd:){0,2}(?:BAML )?(\w{2})([0-9]{1,2})\s")subject_baml279,9523 +subject_ms = re.compile("[^$]*\$\$ MS CDX OPTIONS: (IG|HY)(\d{2})[^-]*- REF[^\d]*([\d.]+)")subject_ms280,9597 +subject_nomura = re.compile("(?:Fwd:)?CDX (IG|HY)(\d{2}).*- REF:[^\d]*([\d.]+)")subject_nomura281,9689 +subject_gs = re.compile("GS (IG|HY)(\d{2}) 5y.*- Ref [^\d]*([\d.]+)")subject_gs282,9770 +subject_sg = re.compile("SG OPTIONS - CDX (IG|HY) S(\d{2}).* REF[^\d]*([\d.]+)")subject_sg283,9840 +def parse_email(email):parse_email285,9922 +def write_todb(swaption_stack, index_data):write_todb322,11820 +def get_email_list(date):get_email_list344,12707 +def pickle_drop_date(date):pickle_drop_date358,13118 + data_dir = os.path.join(os.getenv("DATA_DIR"), "swaptions")data_dir367,13422 + emails = [f for f in os.scandir(data_dir) if f.is_file()]emails368,13486 + swaption_stack = {}swaption_stack369,13548 + index_data = pd.DataFrame()index_data370,13572 + already_uploaded = pickle.load(fh)already_uploaded373,13655 + already_uploaded = {}already_uploaded375,13732 + index_data = index_data.append(fwd_index)index_data389,14264 + swaption_stack = pd.concat(swaption_stack, names=['quotedate', 'index', 'series'])swaption_stack398,14633 + swaption_stack = swaption_stack.reset_index()swaption_stack399,14720 + swaption_stack = swaption_stack.drop_duplicates(['quotedate', 'index', 'series', 'expiry', 'strike'])swaption_stack400,14770 + index_data = index_data.reset_index()index_data401,14876 + index_data = index_data.drop_duplicates(['quotedate', 'index', 'series', 'expiry'])index_data402,14918 -populate_risk_numbers.py,565 -import yaml, os, csvyaml1,0 -import yaml, os, csvos1,0 -import yaml, os, csvcsv1,0 -from db import serenitasdbserenitasdb2,21 -import datetimedatetime3,48 +test_pyq.py,1041 +def A(t, T, sigma, a, curve):A18,785 +def B(t, T, a):B23,1055 +def gamma(t, sigma, a, curve):gamma26,1108 +def gamma_v(T, sigma, a, curve): #vectorized version of gamma(t)gamma_v31,1314 +Nsim = 1000Nsim38,1690 +a = 0.376739a42,1801 +sigma = 0.0209835sigma43,1814 +todaysDate = Date(26, 12, 2013);todaysDate45,1833 +crvTodaydates = [Date(26, 12, 2013),crvTodaydates47,1907 +crvTodaydf=[1.0,crvTodaydf80,3118 +crvToday = DiscountCurve(crvTodaydates, crvTodaydf, Actual360(), TARGET())crvToday115,3850 +r0 = crvToday.forward_rate(0, 0, compounding=Continuous, frequency=NoFrequency).rater0118,3979 +months = range(3, 12 * 5 + 1, 3)months119,4064 +sPeriods = [f"{month}M" for month in months]sPeriods120,4097 +Dates = [todaysDate] + [todaysDate+Period(s) for s in sPeriods]Dates122,4158 +T = np.array([Actual360().year_fraction(todaysDate, d) for d in Dates])T123,4222 +hw = HullWhite(crvToday, a, sigma)hw124,4294 +grid = TimeGrid.from_vector(T)grid125,4329 +rmat_test = simulate_process(hw, Nsim, grid, 1)rmat_test126,4360 + +populate_risk_numbers.py,404 basedir = "/home/share/CorpCDOs"basedir5,65 def get_index_list(basedir):get_index_list6,98 sqlstr = "INSERT INTO risk_numbers VALUES({0},{1})".format(",".join(["%s"] * 10),sqlstr13,388 @@ -434,31 +7675,22 @@ def convert(s):convert33,1066 def populate_risk(basedir, db):populate_risk36,1124 basedir = "/home/share/CorpCDOs"basedir62,2593 -pnl_explain.py,1436 -import numpy as npnp1,0 -import pandas as pdpd2,19 -from db import dbenginedbengine4,40 -from dates import bus_day, imm_dates, yearfracbus_day5,64 -from dates import bus_day, imm_dates, yearfracimm_dates5,64 -from dates import bus_day, imm_dates, yearfracyearfrac5,64 -from psycopg2.extensions import register_adapter, AsIsregister_adapter6,111 -from psycopg2.extensions import register_adapter, AsIsAsIs6,111 -def get_daycount(identifier, engine = dbengine("dawndb")):get_daycount10,214 -def pnl_explain(identifier, start_date = None, end_date = None,pnl_explain24,682 -def pnl_explain_list(id_list, start_date = None, end_date = None, engine = dbengine("dawndb")):pnl_explain_list104,5139 -def compute_tranche_factors(df, attach, detach):compute_tranche_factors108,5375 -def cds_explain(index, series, tenor, attach = np.nan, detach = np.nan,cds_explain117,5891 -def cds_explain_strat(strat, start_date, end_date, engine = dbengine("dawndb")):cds_explain_strat190,9872 - engine = dbengine("dawndb")engine219,11415 - from position import get_list_rangeget_list_range220,11447 - subprime_list = get_list_range(engine, '2015-09-30', '2015-10-31', 'Subprime')subprime_list227,11749 - df_subprime = pnl_explain_list(subprime_list[['identifier', 'strategy']].to_records(index=False),df_subprime228,11832 - df_subprime = pd.concat(df_subprime, names=['identifier', 'strategy', 'date'])df_subprime230,12005 +saga.py,39 +def saga_option(x, y):saga_option1,0 + +pnl_explain.py,951 +def get_daycount(identifier, engine = dbengine("dawndb")):get_daycount7,112 +def pnl_explain(identifier, start_date = None, end_date = None,pnl_explain21,580 +def pnl_explain_list(id_list, start_date = None, end_date = None, engine = dbengine("dawndb")):pnl_explain_list101,5037 +def compute_tranche_factors(df, attach, detach):compute_tranche_factors105,5273 +def cds_explain(index, series, tenor, attach = np.nan, detach = np.nan,cds_explain114,5789 +def cds_explain_strat(strat, start_date, end_date, engine = dbengine("dawndb")):cds_explain_strat187,9770 + engine = dbengine("dawndb")engine216,11313 + subprime_list = get_list_range(engine, '2015-09-30', '2015-10-31', 'Subprime')subprime_list224,11647 + df_subprime = pnl_explain_list(subprime_list[['identifier', 'strategy']].to_records(index=False),df_subprime225,11730 + df_subprime = pd.concat(df_subprime, names=['identifier', 'strategy', 'date'])df_subprime227,11903 -script_calibrate_tranches.py,757 -import numpy as npnp1,0 -from tranche_functions import GHquad, BClossdistGHquad2,19 -from tranche_functions import GHquad, BClossdistBClossdist2,19 +script_calibrate_tranches.py,605 n_int = 500n_int4,69 n_credit = 100n_credit5,81 recov = np.array([float(e) for e in fh], dtype='double', order='F')recov9,148 @@ -471,11 +7703,7 @@ rho = 0.45 * np.ones(n_credit)rho16,403 R = np.zeros((n_int, Ngrid, SurvProb.shape[1]))R24,742 S = 1 - Rstoch[:,:,t]S26,834 -optimization.py,512 -import numpy as npnp1,0 -import numpy.linalg as lanumpy2,19 -import numpy.linalg as lala2,19 -from scipy.interpolate import PchipInterpolatorPchipInterpolator3,45 +optimization.py,344 def decr_fun(a, b):decr_fun5,94 def KLfit(P, q, b):KLfit8,175 def interpweights(w, v1, v2):interpweights60,1694 @@ -485,54 +7713,7 @@ def interpvalues(w, v, neww):interpvalues67,1951 b = np.array([2.5, 3.3])b102,2878 test = KLfit(P, w, b)test103,2907 -option_trades.py,1959 -import cvxpycvxpy1,0 -import datetimedatetime2,13 -import mathmath3,29 -import numpy as npnp4,41 -import pandas as pdpd5,60 -from pandas.tseries.offsets import BDayBDay7,81 -from arch import arch_modelarch_model8,121 -from db import dbenginedbengine9,149 -from scipy.interpolate import interp1dinterp1d10,173 -from analytics import IndexIndex11,212 -serenitasdb = dbengine('serenitasdb')serenitasdb13,241 -def get_daily_pnl(index, series, tenor, coupon=1):get_daily_pnl15,280 -def daily_spreads(index, series, tenor):daily_spreads25,820 -def index_returns(date=None, years=3, index="IG", tenor="5yr"):index_returns41,1358 -def realized_vol(index, series, tenor, date=None, years=None):realized_vol55,2034 -def atm_vol_fun(v, ref_is_price=False, moneyness=0.2):atm_vol_fun64,2426 -def atm_vol(index, series, moneyness=0.2):atm_vol70,2747 -def atm_vol_date(index, date):atm_vol_date87,3621 -def rolling_vol(df, col='atm_vol', term=[3]):rolling_vol105,4575 - def aux(s, col, term):aux108,4737 -def vol_var(percentile=0.99, index='IG'):vol_var119,5215 -def lr_var(res):lr_var126,5468 -def index_rolling_returns(date=None, years=3, index="IG", tenor="5yr"):index_rolling_returns131,5668 -def get_index_spread(index, series, date, conn):get_index_spread142,6222 -def get_index_ref(index, series, date, expiry, conn):get_index_ref154,6616 -def get_strike(index, series, date, expiry, conn):get_strike167,7117 -def get_option_pnl(strike, expiry, index, series, start_date, engine):get_option_pnl180,7575 -def sell_vol_strategy(index="IG", months=3):sell_vol_strategy211,9053 -def aggregate_trades(d):aggregate_trades242,10473 -def compute_allocation(df):compute_allocation249,10617 - d1 = sell_vol_strategy(months=1)d1274,11400 - d2 = sell_vol_strategy(months=2)d2275,11437 - d3 = sell_vol_strategy(months=3)d3276,11474 - all_tenors = pd.concat([aggregate_trades(d) for d in [d1, d2, d3]], axis=1)all_tenors277,11511 - -mailing_list.py,1332 -import smtplibsmtplib1,0 -from email.mime.application import MIMEApplicationMIMEApplication2,15 -from email.mime.multipart import MIMEMultipartMIMEMultipart3,66 -from email.mime.text import MIMETextMIMEText4,113 -from string import TemplateTemplate5,150 -from config import gmail_login, gmail_passwordgmail_login6,178 -from config import gmail_login, gmail_passwordgmail_password6,178 -import osos7,225 -import csvcsv8,235 -import syssys9,246 -import xlrdxlrd10,257 +mailing_list.py,854 root = "/home/share/serenitas/Fund Raising"root12,270 def get_mailinglist(name):get_mailinglist14,315 server = smtplib.SMTP('smtp.gmail.com:587')server25,762 @@ -547,30 +7728,11 @@ def get_mailinglist(name):get_mailinglist14,315 msg_alternative = MIMEMultipart('alternative')msg_alternative54,2237 name = " " + namename56,2309 -client.py,311 -import logginglogging1,0 -import osos2,15 -import redisredis3,25 -import socketsocket4,38 -import taskstasks5,52 -from json import loads, dumpsloads7,66 -from json import loads, dumpsdumps7,66 -from db import dbconndbconn8,96 +client.py,76 def run():run10,119 logger = logging.getLogger('intex')logger31,865 -position.py,1283 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPinit_bbg_session1,0 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPretrieve_data1,0 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPBBG_IP1,0 -import pandas as pdpd2,64 -from sqlalchemy import create_enginecreate_engine3,84 -from pandas.tseries.offsets import BDayBDay4,121 -from pandas import bdate_rangebdate_range5,161 -import rere6,192 -import osos7,202 -import logginglogging8,212 -import syssys9,227 +position.py,769 def get_list(engine, workdate=None, asset_class=None, include_unsettled=True):get_list11,239 def get_list_range(engine, begin, end, asset_class=None):get_list_range25,1065 def backpopulate_marks(begin_str='2015-01-15', end_str='2015-07-15'):backpopulate_marks38,1832 @@ -582,13 +7744,7 @@ def populate_cashflow_history(engine, session, workdate=None):populate_cashflow workdate = pd.Timestamp(sys.argv[1])workdate149,7718 workdate = pd.datetime.today()workdate151,7773 -load_globeop_report.py,823 -from glob import iglobiglob1,0 -import osos2,23 -import pandas as pdpd3,33 -from itertools import chainchain4,53 -from dates import bus_daybus_day5,81 -import pdbpdb6,107 +load_globeop_report.py,645 def get_globs(fname, years=['2013', '2014', '2015', '2016']):get_globs8,119 def valuation_reports():valuation_reports20,654 def pnl_reports():pnl_reports43,1565 @@ -600,72 +7756,25 @@ def monthly_pnl_bycusip(df, strats):monthly_pnl_bycusip64,2297 clo_strats = ['CLO_BBB', 'CLO_AAA', 'CLO_BB20']clo_strats77,2952 df_monthly = monthly_pnl_bycusip(df_pnl, subprime_strats)df_monthly82,3101 -markit/cds.py,492 -import ioio1,0 -import logginglogging2,11 -import osos3,27 -import requestsrequests4,38 -import shutilshutil5,55 -import zipfilezipfile6,70 -import timetime7,86 -from common import rootroot8,99 -from pandas.tseries.offsets import BDayBDay9,124 -logger = logging.getLogger(__name__)logger11,167 -def convertToNone(v):convertToNone13,207 -def download_cds_data(payload):download_cds_data16,261 -def download_composite_data(payload, historical=False):download_composite_data29,765 +markit/cds.py,238 +logger = logging.getLogger(__name__)logger11,186 +def convertToNone(v):convertToNone13,226 +def download_cds_data(payload):download_cds_data16,280 +def download_composite_data(payload, historical=False):download_composite_data29,784 markit/__init__.py,0 -markit/loans.py,554 -import csvcsv1,0 -import logginglogging2,12 -import osos3,28 -import requestsrequests4,39 -from common import rootroot6,58 -from db import with_connectionwith_connection7,83 -from psycopg2 import IntegrityErrorIntegrityError8,115 +markit/loans.py,316 logger = logging.getLogger(__name__)logger10,154 def download_facility(workdate, payload):download_facility12,194 def insert_facility(conn, workdate):insert_facility19,546 def download_marks(conn, workdate, payload):download_marks40,1427 def update_facility(conn, workdate, payload):update_facility60,2405 -markit/rates.py,467 -from db import dbconndbconn1,0 -from common import rootroot2,22 -import datetimedatetime3,46 -from io import BytesIOBytesIO4,62 -import osos5,85 -import pandas as pdpd6,95 -import requestsrequests7,115 -import xml.etree.ElementTree as ETxml8,131 -import xml.etree.ElementTree as ETetree8,131 -import xml.etree.ElementTree as ETET8,131 -import zipfilezipfile9,166 +markit/rates.py,92 def downloadMarkitIRData(download_date = datetime.date.today(),downloadMarkitIRData11,182 -markit/__main__.py,2429 -import argparseargparse1,0 -import datetimedatetime2,16 -import logginglogging3,32 -import numpy as npnp4,47 -import pandas as pdpd5,66 -import osos6,86 -import syssys7,96 -import logginglogging8,107 -from common import rootroot10,123 -from .cds import download_cds_data, download_composite_datadownload_cds_data11,147 -from .cds import download_cds_data, download_composite_datadownload_composite_data11,147 -from .loans import download_facility, insert_facility, download_marks, update_facilitydownload_facility12,207 -from .loans import download_facility, insert_facility, download_marks, update_facilityinsert_facility12,207 -from .loans import download_facility, insert_facility, download_marks, update_facilitydownload_marks12,207 -from .loans import download_facility, insert_facility, download_marks, update_facilityupdate_facility12,207 -from .rates import downloadMarkitIRDatadownloadMarkitIRData13,294 -from pandas.tseries.offsets import BDayBDay15,402 -from sqlalchemy import create_enginecreate_engine16,442 -from .utils import default_datedefault_date17,479 -from db import dbconndbconn18,511 +markit/__main__.py,1301 parser = argparse.ArgumentParser()parser21,553 group = parser.add_mutually_exclusive_group(required=True)group22,588 help="download markit loan data")help24,704 @@ -688,41 +7797,23 @@ formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(messag serenitasdb = dbconn('serenitasdb')serenitasdb84,2835 engine = create_engine('postgresql://serenitas_user@debian/serenitasdb')engine88,2966 -markit/utils.py,115 -import pandas as pdpd1,0 -from pandas.tseries.offsets import BDayBDay2,20 +markit/utils.py,38 def default_date():default_date4,61 -markit/import_quotes.py,1026 -import csvcsv1,0 -import datetimedatetime2,11 -import logginglogging3,27 -import numpy as npnp4,42 -import pandas as pdpd5,61 -import osos6,81 -from collections import defaultdictdefaultdict8,92 -from common import rootroot9,128 -from pandas.tseries.offsets import BDayBDay10,152 +markit/import_quotes.py,736 logger = logging.getLogger(__name__)logger12,193 def convert(x):convert14,231 - ['EU' + str(s) for s in range(19, 27)]index_list24,550 + ['EU' + str(s) for s in range(19, 28)]index_list24,550 DOC_CLAUSE_MAPPING14 = {'Full Restructuring': 'MM14',DOC_CLAUSE_MAPPING1426,603 DOC_CLAUSE_MAPPING = {'Full Restructuring': 'MM',DOC_CLAUSE_MAPPING30,776 def get_markit_bbg_mapping(database, basketid_list, workdate):get_markit_bbg_mapping34,937 def get_basketids(database, index_list, workdate):get_basketids59,2275 def get_current_tickers(database, workdate):get_current_tickers68,2558 def insert_cds(database, workdate):insert_cds72,2739 -def insert_index(engine, workdate=None):insert_index105,4478 -def insert_tranche(engine, workdate = None):insert_tranche144,6724 +def insert_index(engine, workdate=None):insert_index106,4519 +def insert_tranche(engine, workdate = None):insert_tranche145,6765 -calibrate_tranches.py,1636 -import numpy as npnp1,0 -from yieldcurve import YCYC3,51 -import yamlyaml4,77 -import datetimedatetime5,89 -import osos6,105 -import pandas as pdpd7,115 -import pdbpdb8,135 +calibrate_tranches.py,1455 n_int = 500n_int10,147 n_credit = 100n_credit11,159 indices = yaml.load(fh)indices15,243 @@ -751,11 +7842,7 @@ Rho = np.zeros((len(dates), 3))Rho22,575 u = rhou59,2073 l = rhol61,2115 -parse_preqin.py,719 -import osos1,0 -import bs4bs42,10 -import csvcsv3,21 -import rere4,32 +parse_preqin.py,644 root = "/home/share/serenitas/Fund Raising/Preqin/Investors/"root6,43 filelist = [f for f in os.listdir(root) if f.endswith('htm')]filelist7,105 fh2 = open(os.path.join(root, "investors3.csv"), "w")fh28,167 @@ -768,31 +7855,17 @@ sentinel={}sentinel93,3479 table_rows = table.findAll('tr')table_rows105,3844 fields = row.findAll('td')fields107,3928 -calibrate_swaption.py,833 -import pandas as pdpd1,0 -import argparseargparse2,20 -from analytics import Index, SwaptionIndex3,36 -from analytics import Index, SwaptionSwaption3,36 -import datetimedatetime4,74 -from db import dbconndbconn5,90 -from joblib import Parallel, delayedParallel6,112 -from joblib import Parallel, delayeddelayed6,112 -from pickle import loads, dumpsloads7,149 -from pickle import loads, dumpsdumps7,149 -from psycopg2.extensions import register_adapterregister_adapter8,181 -serenitasdb = dbconn('serenitasdb')serenitasdb10,231 -def get_data(index, series, date = datetime.date.min):get_data12,268 -def calib(d, option, expiry, index, series):calib23,869 -def calibrate(index_type, series, date, nproc):calibrate40,1524 - parser = argparse.ArgumentParser()parser60,2446 - args = parser.parse_args()args65,2781 +calibrate_swaption.py,464 +serenitas_engine = dbengine('serenitasdb')serenitas_engine9,206 +def get_data(index, series, date = datetime.date.min):get_data11,250 +def get_data_latest():get_data_latest26,967 +def calib(option, ref, strike, pay_bid, pay_offer, rec_bid, rec_offer):calib43,1751 +def calibrate(index_type=None, series=None, date=None, nproc=4, latest=False):calibrate64,2459 + parser = argparse.ArgumentParser()parser86,3527 + args = parser.parse_args()args92,3964 -backfill_index.py,821 -from sqlalchemy import MetaData, create_engine, TableMetaData1,0 -from sqlalchemy import MetaData, create_engine, Tablecreate_engine1,0 -from sqlalchemy import MetaData, create_engine, TableTable1,0 +backfill_index.py,589 engine = create_engine('postgresql://serenitas_user@debian/serenitasdb')engine2,54 -import pandas as pdpd3,127 metadata = MetaData(bind = engine)metadata5,148 index_quotes = Table('index_quotes', metadata, autoload=True)index_quotes6,183 series=[9]series8,283 @@ -802,27 +7875,20 @@ index_type ='HY'index_type11,363 stmt = index_quotes.delete().where((index_quotes.c.index==index_type) &stmt16,473 df = pd.read_excel('/home/share/CorpCDOs/index historical.xlsx', "{0} {1}".format(index, t))df20,724 -flask-run.py,108 -import syssys1,0 -import importlibimportlib2,11 +flask-run.py,57 mod = importlib.import_module(sys.argv[1])mod8,164 -xmltotab.py,266 -from lxml import etreeetree1,0 -import csvcsv2,23 +xmltotab.py,213 ns = '{urn:schemas-microsoft-com:office:spreadsheet}'ns4,35 doc = etree.parse('/home/share/guillaume/grid1_1cz1rlvt.xml')doc6,90 tree = doc.getroot()tree7,152 csvwriter = csv.writer(fh)csvwriter10,210 -insert_tranche_quotes_old.py,1326 -from sqlalchemy import Table, create_engine, MetaDataTable1,0 -from sqlalchemy import Table, create_engine, MetaDatacreate_engine1,0 -from sqlalchemy import Table, create_engine, MetaDataMetaData1,0 -import osos2,55 -import csvcsv3,66 -import datetimedatetime4,78 -import pdbpdb5,95 +task_runner.py,77 +def run():run12,210 + logger = logging.getLogger('intex')logger36,1072 + +insert_tranche_quotes_old.py,1035 engine = create_engine('postgresql://serenitas_user@debian/serenitasdb')engine7,109 metadata = MetaData(bind = engine)metadata8,183 quotes = Table('tranche_quotes', metadata, autoload = True)quotes9,219 @@ -840,11 +7906,7 @@ K = [0, 15, 25, 35, 100]K14,449 timestamp = datetime.datetime.strptime(csvdict['bidTime'], "%m/%d/%Y %H:%M:%S %p")timestamp32,1121 d = {'quotedate' : timestamp,d33,1217 -trade_booking.py,459 -import csvcsv1,0 -from datetime import date, datetimedate2,11 -from datetime import date, datetimedatetime2,11 -import osos3,47 +trade_booking.py,326 root = "//WDsentinel/share/Daily"root17,743 root = '/home/share/Daily'root19,806 def get_broker_codes():get_broker_codes21,838 @@ -853,21 +7915,11 @@ account_number = "602382.1"account_number30,1133 n_trades = 0n_trades32,1222 broker_codes = get_broker_codes()broker_codes33,1235 -tasks.py,415 -import subprocesssubprocess1,0 -from intex.intex_scenarios import generate_scenariosgenerate_scenarios2,18 -import osos3,71 -Rpath = os.path.join(os.environ['CODE_DIR'], "code", "R")Rpath5,82 -logpath = os.path.join(os.environ['CODE_DIR'], "logs")logpath6,140 -def build_portfolio(workdate, dealname, reinvflag):build_portfolio8,196 -def build_scenarios(workdate, dealname, reinvflag):build_scenarios14,541 +tasks.py,148 +def build_portfolio(workdate, dealname, reinvflag):build_portfolio5,82 +def build_scenarios(workdate, dealname, reinvflag):build_scenarios13,531 -adj_index_price.py,982 -from sqlalchemy import create_engine, MetaData, Table, bindparamcreate_engine1,0 -from sqlalchemy import create_engine, MetaData, Table, bindparamMetaData1,0 -from sqlalchemy import create_engine, MetaData, Table, bindparamTable1,0 -from sqlalchemy import create_engine, MetaData, Table, bindparambindparam1,0 -import pandas as pdpd2,65 +adj_index_price.py,639 index='HY'index4,86 series = [9]series6,138 engine = create_engine('postgresql://serenitas_user@debian/serenitasdb')engine9,206 @@ -878,21 +7930,7 @@ index_quotes= Table('index_quotes', metadata, autoload=True)index_quotes11,312 r = factors.ix[i].indexfactor/factors.ix[i+1].indexfactorr28,1248 stmt = index_quotes.update().where((index_quotes.c.date==bindparam('b_date')) &stmt34,1562 -intex/intex_scenarios.py,1702 -import csvcsv1,0 -import datetimedatetime2,11 -import jsonjson3,27 -import logginglogging4,39 -import osos5,54 -import os.pathos6,64 -import os.pathpath6,64 -import psycopg2psycopg27,79 -import rere8,95 -import syssys9,105 -import yamlyaml10,116 -from csv import readerreader13,150 -from common import rootroot14,173 -from db import dbconndbconn15,197 +intex/intex_scenarios.py,1335 logger = logging.getLogger(__name__)logger17,220 pattern1 = re.compile("REINVEST\[\w+::REINV_TBA(\d)\]\[DEAL,(\d+)\]=.*$")pattern119,258 pattern2 = re.compile("(STANDARD_VAR\[)\w+(::#REINV_END,\d+\]=)(\d.*$)")pattern221,349 @@ -905,65 +7943,34 @@ global_reinvfloatpercentage = 84global_reinvfloatpercentage30,809 global_reinvfixedpercentage = 16global_reinvfixedpercentage31,842 def get_reinv_assets(conn, dealname, workdate):get_reinv_assets33,876 def get_recovery(conn, dealname, workdate, defaultrecovery = 50):get_recovery43,1207 -def get_reinvenddate(conn, dealname):get_reinvenddate59,1842 -def generate_scenarios(workdate, dealname, conn):generate_scenarios70,2215 - workdate = sys.argv[1]workdate230,10395 - workdate = str(datetime.date.today())workdate232,10436 - dealnames = sys.argv[2:]dealnames234,10508 - dealnames = [d.split(".")[0] for d indealnames236,10551 - ET = dbconn('etdb')ET240,10778 +def get_reinvenddate(conn, dealname):get_reinvenddate59,1868 +def generate_scenarios(workdate, dealname, conn):generate_scenarios70,2241 + workdate = sys.argv[1]workdate230,10421 + workdate = str(datetime.date.today())workdate232,10462 + dealnames = sys.argv[2:]dealnames234,10534 + dealnames = [d.split(".")[0] for d indealnames236,10577 + ET = dbconn('etdb')ET240,10804 intex/__init__.py,0 -intex/load_indicative.py,1078 -import psycopg2psycopg21,0 -import osos2,16 -import datetimedatetime3,26 -from datetime import datedate4,42 -import csv, sys, recsv5,68 -import csv, sys, resys5,68 -import csv, sys, rere5,68 -import pdbpdb6,88 -from common import root, sanitize_floatroot7,99 -from common import root, sanitize_floatsanitize_float7,99 -from db import dbconndbconn8,139 -from contextlib import closingclosing9,161 -import logginglogging10,192 +intex/load_indicative.py,639 logger = logging.getLogger(__name__)logger12,208 def convertToNone(s):convertToNone14,246 def insert_new_cusip(conn, line):insert_new_cusip17,316 def upload_cusip_data(conn, filename):upload_cusip_data38,1333 -def upload_deal_data(conn, filename):upload_deal_data100,4267 - workdate = sys.argv[1]workdate181,8528 - workdate = str(datetime.date.today())workdate183,8569 - files = [os.path.join(root, "data", "Indicative_" + workdate, f) for f infiles184,8615 - cusip_files = [f for f in files if "TrInfo" in f]cusip_files186,8772 - deal_files = [f for f in files if "TrInfo" not in f]deal_files187,8826 +def upload_deal_data(conn, filename):upload_deal_data100,4294 + workdate = sys.argv[1]workdate182,8603 + workdate = str(datetime.date.today())workdate184,8644 + files = [os.path.join(root, "data", "Indicative_" + workdate, f) for f infiles185,8690 + cusip_files = [f for f in files if "TrInfo" in f]cusip_files187,8847 + deal_files = [f for f in files if "TrInfo" not in f]deal_files188,8901 -intex/__main__.py,323 -import syssys1,0 -import datetimedatetime2,11 -from db import dbconndbconn3,27 -from .load_intex_collateral import intex_dataintex_data4,49 -import logginglogging5,95 +intex/__main__.py,150 logger = logging.getLogger('intex')logger6,110 workdate = sys.argv[1]workdate10,212 workdate = str(datetime.date.today())workdate12,245 -intex/load_intex_collateral.py,908 -import psycopg2psycopg21,0 -import os, csv, datetimeos2,16 -import os, csv, datetimecsv2,16 -import os, csv, datetimedatetime2,16 -import pdbpdb3,41 -from common import root, sanitize_floatroot4,52 -from common import root, sanitize_floatsanitize_float4,52 -from db import dbconndbconn5,92 -import syssys6,114 -import uuiduuid7,125 -from .load_indicative import upload_cusip_data, upload_deal_dataupload_cusip_data8,137 -from .load_indicative import upload_cusip_data, upload_deal_dataupload_deal_data8,137 -import logginglogging9,202 +intex/load_intex_collateral.py,359 logger = logging.getLogger(__name__)logger11,218 fields = ['Asset Name', 'Issuer', 'Contributed Balance', 'Asset Maturity Date',fields13,256 def convertToNone(s):convertToNone21,765 @@ -971,140 +7978,163 @@ def windows1252_encoder(fh):windows1252_encoder24,820 def upload_data(conn, dealnames, workdate):upload_data28,928 def intex_data(conn, workdate):intex_data136,6666 -intex/common.py,166 -import osos1,0 +intex/common.py,149 root = "//WDsentinel/share/CorpCDOs"root4,30 root = '/home/share/CorpCDOs'root6,96 def sanitize_float(intex_float):sanitize_float8,131 -analytics/__init__.py,148 -from .index import Index, ForwardIndexIndex1,0 -from .index import Index, ForwardIndexForwardIndex1,0 -from .option import SwaptionSwaption2,39 +analytics/__init__.py,0 + +analytics/option.py,2486 +def calib(S0, fp, exercise_date, exercise_date_settle,calib30,756 +def memoize(f):memoize38,1087 + def cached_f(*args, **kwargs):cached_f40,1117 +def ATMstrike(index, exercise_date):ATMstrike51,1400 +class BlackSwaption(ForwardIndex):BlackSwaption70,1923 + __slots__ = ['_forward_yc', '_T', '_G', '_strike', 'option_type',__slots__72,1983 + def __init__(self, index, exercise_date, strike, option_type="payer",__init__75,2122 + def from_tradeid(cls, trade_id, index=None):from_tradeid88,2588 + def exercise_date(self):exercise_date105,3395 + def exercise_date(self, d):exercise_date109,3484 + def strike(self):strike116,3732 + def strike(self, K):strike123,3898 + def atm_strike(self):atm_strike134,4335 + def moneyness(self):moneyness142,4575 + def direction(self):direction146,4660 + def direction(self, d):direction153,4809 + def intrinsic_value(self):intrinsic_value162,5065 + def __hash__(self):__hash__167,5283 + def pv(self):pv172,5471 + def pv(self, val):pv186,6018 + def handle(x):handle196,6395 + def reset_pv(self):reset_pv208,6689 + def pnl(self):pnl212,6764 + def delta(self):delta222,7100 + def T(self):T237,7582 + def gamma(self):gamma244,7754 + def theta(self):theta257,8091 + def vega(self):vega265,8262 + def DV01(self):DV01274,8463 + def breakeven(self):breakeven284,8722 + def __repr__(self):__repr__299,9320 + def __str__(self):__str__327,10943 +class Swaption(BlackSwaption):Swaption330,11028 + __slots__ = ["_cache", "_Z", "_w"]__slots__331,11059 + def __init__(self, index, exercise_date, strike, option_type="payer",__init__332,11098 + def __hash__(self):__hash__338,11351 + def pv(self):pv343,11437 + def pv(self, val):pv377,13031 + def handle(x):handle381,13129 + def __setpv_black(self, val):__setpv_black397,13522 + pv_black = property(None, __setpv_black)pv_black407,13903 +def compute_vol(option, strike, mid):compute_vol410,13950 +class VolatilitySurface(ForwardIndex):VolatilitySurface419,14135 + def __init__(self, index_type, series, tenor='5yr', trade_date=datetime.date.today()):__init__420,14174 + def vol(self, T, moneyness, surface_id):vol444,15500 + def list(self, source=None, option_type=None, model=None):list448,15665 + def __iter__(self):__iter__458,16043 + def plot(self, surface_id):plot461,16106 + def __getitem__(self, surface_id):__getitem__472,16544 -analytics/option.py,2006 -from __future__ import divisiondivision1,0 -import arrayarray3,33 -import datetimedatetime4,46 -import mathmath5,62 -import numpy as npnp6,74 -import pandas as pdpd7,93 -from .black import blackblack9,114 -from .utils import GHquadGHquad10,139 -from .index import g, ForwardIndexg11,165 -from .index import g, ForwardIndexForwardIndex11,165 -from yieldcurve import roll_ycroll_yc12,200 -from pandas.tseries.offsets import BDayBDay13,231 - import cPickle as picklepickle15,276 - import picklepickle17,325 -from pickle import dumpsdumps18,343 -from functools import wrapswraps20,369 -from pyisda.curve import SpreadCurveSpreadCurve21,397 -from pyisda.flat_hazard import pv_vecpv_vec22,434 -from scipy.optimize import brentqbrentq23,472 -from scipy.integrate import simpssimps24,506 -def calib(S0, fp, exercise_date, exercise_date_settle,calib26,541 -def memoize(f):memoize34,872 - def cached_f(*args, **kwargs):cached_f36,902 -def ATMstrike(index, exercise_date):ATMstrike47,1185 -class Swaption(ForwardIndex):Swaption60,1586 - def __init__(self, index, exercise_date, strike,__init__62,1641 - def exercise_date(self):exercise_date77,2213 - def exercise_date(self, d):exercise_date81,2304 - def strike(self):strike88,2571 - def strike(self, K):strike95,2732 - def handle(S, index, forward_date, forward_yc):handle99,2899 - def intrinsic_value(self):intrinsic_value116,3589 - def __hash__(self):__hash__120,3743 - def pv(self):pv126,3943 - def pv(self, val):pv160,5506 - def handle(x):handle169,5858 - def pv_black(self):pv_black188,6319 - def pv_black(self, val):pv_black200,6934 - def handle(x):handle206,7204 - def delta(self):delta219,7498 - def T(self):T232,7899 - def gamma(self):gamma239,8071 - def theta(self):theta251,8365 - def vega(self):vega259,8536 - def DV01(self):DV01267,8702 - def breakeven(self):breakeven277,8922 - def __repr__(self):__repr__305,9848 +analytics/portfolio.py,941 +serenitasdb = dbengine('serenitasdb')serenitasdb8,185 +def portf_repr(method):portf_repr10,224 + def f(*args):f11,248 +class Portfolio:Portfolio31,1084 + def __init__(self, trades):__init__32,1101 + def pnl(self):pnl52,1904 + def pnl_list(self):pnl_list56,1985 + def pv(self):pv60,2068 + def pv_list(self):pv_list64,2147 + def reset_pv(self):reset_pv67,2214 + def trade_date(self):trade_date72,2308 + def trade_date(self, d):trade_date76,2390 + def mark(self, source_list=[], option_type=None, model="black", surface_id=None):mark85,2683 + def ref(self):ref109,3995 + def ref(self, val):ref116,4176 + def delta(self):delta130,4674 + def gamma(self):gamma137,4915 + def dv01(self):dv01141,5030 + def theta(self):theta145,5113 + def _todf(self):_todf148,5184 + __repr__ = portf_repr('string')__repr__167,6118 + _repr_html_ = portf_repr('html')_repr_html_169,6155 -analytics/black.py,224 -import mathmath1,0 -from scipy.stats import normnorm2,12 -def d1(F, K, sigma, T):d14,42 -def d2(F, K, sigma, T):d27,140 -def d12(F, K, sigma, T):d1210,218 -def black(F, K, T, sigma, option_type = "payer"):black16,372 +analytics/black.py,184 +def d1(F, K, sigma, T):d15,85 +def d2(F, K, sigma, T):d28,178 +def d12(F, K, sigma, T):d1212,287 +def cnd_erf(d):cnd_erf21,495 +def black(F, K, T, sigma, payer=True):black26,655 -analytics/index.py,2854 -from __future__ import divisiondivision1,0 -import datetimedatetime2,32 -import mathmath3,48 -import numpy as npnp4,60 -import pandas as pdpd5,79 -from pyisda.legs import ContingentLeg, FeeLegContingentLeg7,100 -from pyisda.legs import ContingentLeg, FeeLegFeeLeg7,100 -from quantlib.settings import SettingsSettings8,146 -from quantlib.time.api import Date, Actual365FixedDate9,185 -from quantlib.time.api import Date, Actual365FixedActual365Fixed9,185 -from termcolor import coloredcolored10,236 -from pandas.tseries.offsets import BDayBDay11,266 -from db import dbconndbconn12,306 -from psycopg2 import DataErrorDataError13,328 -from pyisda.curve import SpreadCurveSpreadCurve14,359 -from .utils import previous_twentiethprevious_twentieth15,396 -from scipy.optimize import brentqbrentq16,434 -from yieldcurve import YC, ql_to_jp, roll_yc, rate_helpersYC17,468 -from yieldcurve import YC, ql_to_jp, roll_yc, rate_helpersql_to_jp17,468 -from yieldcurve import YC, ql_to_jp, roll_yc, rate_helpersroll_yc17,468 -from yieldcurve import YC, ql_to_jp, roll_yc, rate_helpersrate_helpers17,468 -serenitasdb = dbconn('serenitasdb')serenitasdb19,528 -def g(index, spread, exercise_date, forward_yc = None):g21,566 -class Index(object):Index35,1301 - def __init__(self, start_date, end_date, recovery, fixed_rate,__init__37,1376 - def start_date(self):start_date66,2333 - def end_date(self):end_date70,2406 - def start_date(self, d):start_date74,2484 - def end_date(self, d):end_date80,2688 - def spread(self):spread86,2885 - def _update(self):_update92,3021 - def spread(self, s):spread108,3911 - def flat_hazard(self):flat_hazard115,4099 - def pv(self):pv121,4277 - def accrued(self):accrued125,4350 - def days_accrued(self):days_accrued129,4460 - def clean_pv(self):clean_pv133,4543 - def price(self):price137,4628 - def price(self, val):price141,4695 - def handle(x, self, val):handle143,4790 - def DV01(self):DV01158,5251 - def IRDV01(self):IRDV01166,5413 - def rec_risk(self):rec_risk186,5993 - def jump_to_default(self):jump_to_default200,6379 - def risky_annuity(self):risky_annuity204,6492 - def trade_date(self):trade_date208,6587 - def trade_date(self, d):trade_date215,6788 - def from_name(cls, index, series, tenor, trade_date = datetime.date.today(),from_name232,7501 - def __repr__(self):__repr__257,8527 -class ForwardIndex(object):ForwardIndex310,11913 - def __init__(self, index, forward_date, ref_is_price = False):__init__311,11941 - def forward_annuity(self):forward_annuity320,12311 - def forward_pv(self):forward_pv324,12394 - def forward_spread(self):forward_spread328,12467 - def ref(self):ref332,12554 - def ref(self, val):ref339,12702 - def _update(self):_update350,13085 +analytics/scenarios.py,403 +def run_swaption_scenarios(swaption, date_range, spread_shock, vol_shock,run_swaption_scenarios11,264 +def run_index_scenarios(index, date_range, spread_shock, params=['pnl']):run_index_scenarios43,1387 +def _aux(portf, curr_vols, params, vs):_aux56,1849 +def MaybePool(nproc):MaybePool62,2068 +def run_portfolio_scenarios(portf, date_range, spread_shock, vol_shock,run_portfolio_scenarios65,2136 -analytics/utils.py,253 -import numpy as npnp1,0 -from scipy.special import h_rootsh_roots2,19 -from dateutil.relativedelta import relativedeltarelativedelta3,53 -import datetimedatetime4,102 -def GHquad(n):GHquad6,119 -def previous_twentieth(d):previous_twentieth11,242 +analytics/index.py,2582 +engine = dbengine('serenitasdb')engine22,647 +def g(index, spread, exercise_date, forward_yc=None, pv=0.):g24,682 +def _key_from_index(index):_key_from_index42,1553 +class Index(object):Index48,1737 + __slots__ = ['fixed_rate', 'notional', '_start_date', '_end_date',__slots__50,1812 + def __init__(self, start_date, end_date, recovery, fixed_rate,__init__57,2303 + def __hash__(self):__hash__94,3693 + def start_date(self):start_date98,3821 + def end_date(self):end_date102,3894 + def start_date(self, d):start_date106,3972 + def end_date(self, d):end_date112,4181 + def spread(self):spread118,4383 + def direction(self):direction124,4532 + def direction(self, d):direction131,4684 + def _update(self):_update139,4928 + def spread(self, s):spread156,5844 + def flat_hazard(self):flat_hazard164,6058 + def pv(self):pv170,6222 + def pv(self, val):pv174,6330 + def accrued(self):accrued180,6564 + def days_accrued(self):days_accrued185,6718 + def clean_pv(self):clean_pv189,6801 + def price(self):price193,6920 + def price(self, val):price197,6987 + def ref(self):ref219,8078 + def ref(self, val):ref226,8222 + def DV01(self):DV01233,8367 + def theta(self):theta241,8562 + def IRDV01(self):IRDV01252,9010 + def rec_risk(self):rec_risk271,9582 + def jump_to_default(self):jump_to_default284,9962 + def risky_annuity(self):risky_annuity289,10122 + def trade_date(self):trade_date293,10217 + def trade_date(self, d):trade_date300,10418 + def reset_pv(self):reset_pv320,11295 + def pnl(self):pnl325,11436 + def notify(self):notify335,11879 + def observe(self, obj):observe339,11963 + def mark(self):mark342,12027 + def from_name(cls, index=None, series=None, tenor=None, trade_date=datetime.date.today(),from_name358,12728 + def from_tradeid(cls, trade_id):from_tradeid408,15130 + def __repr__(self):__repr__429,15989 +class ForwardIndex(object):ForwardIndex474,18539 + __slots__ = ['index', 'forward_date', 'exercise_date_settle', 'df',__slots__475,18567 + def __init__(self, index, forward_date):__init__478,18742 + def from_name(cls, index_type, series, tenor, forward_date,from_name487,19075 + def forward_annuity(self):forward_annuity493,19343 + def forward_pv(self):forward_pv497,19426 + def forward_spread(self):forward_spread501,19499 + def ref(self):ref505,19586 + def ref(self, val):ref509,19652 + def __hash__(self):__hash__512,19706 + def _update(self, *args):_update515,19830 + +analytics/utils.py,239 +def GHquad(n):GHquad7,139 +def previous_twentieth(d):previous_twentieth12,262 +def next_twentieth(d):next_twentieth21,466 +def roll_date(d, tenor):roll_date30,671 +def build_table(rows, format_strings, row_format):build_table62,2046 templates/template-2014-05-19.html,0 @@ -1140,63 +8170,174 @@ templates/template-2015-04-20.html,0 templates/template-2014-04-16.html,0 -tranche_functions.py,1933 -import numpy as npnp1,0 -from quantlib.time.schedule import Schedule, CDSSchedule3,40 -from quantlib.time.schedule import Schedule, CDSCDS3,40 -from quantlib.time.api import Actual360, Period, UnitedStates, Following, todayActual3604,89 -from quantlib.time.api import Actual360, Period, UnitedStates, Following, todayPeriod4,89 -from quantlib.time.api import Actual360, Period, UnitedStates, Following, todayUnitedStates4,89 -from quantlib.time.api import Actual360, Period, UnitedStates, Following, todayFollowing4,89 -from quantlib.time.api import Actual360, Period, UnitedStates, Following, todaytoday4,89 -from quantlib.util.converter import qldate_to_pydate, pydate_to_qldateqldate_to_pydate5,169 -from quantlib.util.converter import qldate_to_pydate, pydate_to_qldatepydate_to_qldate5,169 -import pandas as pdpd6,240 -from scipy.special import h_rootsh_roots7,260 -from common import rootroot8,294 -import osos9,318 -libloss = np.ctypeslib.load_library("lossdistrib", os.path.join(root, "code/R/lossdistrib/src"))libloss11,329 -libgq = np.ctypeslib.load_library("GHquad", os.path.join(root, "code", "python"))libgq48,1930 -def GHquad(n):GHquad53,2228 -def stochasticrecov(R, Rtilde, Z, w, rho, porig, pmod):stochasticrecov57,2308 -def fitprob(Z, w, rho, p0):fitprob63,2604 -def BCloss_recov_dist(defaultprob, issuerweights, recov, rho, Z, w, Ngrid = 101, defaultflag = False):BCloss_recov_dist68,2780 -def adjust_attachments(K, losstodate, factor):adjust_attachments78,3343 -def trancheloss(L, K1, K2):trancheloss85,3543 -def trancherecov(R, K1, K2):trancherecov88,3629 -def tranche_cl(L, R, cs, K1, K2, scaled = False):tranche_cl91,3724 -def tranche_pl(L, cs, K1, K2, scaled=False):tranche_pl104,4223 -def tranche_pv(L, R, cs, K1, K2):tranche_pv116,4604 -def creditSchedule(tradedate, tenor, coupon, yc, enddate = None):creditSchedule119,4707 -def cdsAccrued(tradedate, coupon):cdsAccrued137,5475 +tranche_functions.py,1770 +def wrapped_ndpointer(*args, **kwargs):wrapped_ndpointer12,367 + def from_param(cls, obj):from_param14,445 +libloss = np.ctypeslib.load_library("lossdistrib", "../R/lossdistrib/src/")libloss20,640 +def GHquad(n):GHquad94,3252 +def stochasticrecov(R, Rtilde, Z, w, rho, porig, pmod):stochasticrecov98,3332 +def fitprob(Z, w, rho, p0):fitprob104,3628 +def BCloss_recov_dist(defaultprob, issuerweights, recov, rho, Z, w, Ngrid=101, defaultflag=False):BCloss_recov_dist109,3804 +def lossdistrib_joint(p, pp, w, S, Ngrid=101, defaultflag=False):lossdistrib_joint119,4363 +def lossdistrib_joint_Z(p, pp, w, S, rho, Ngrid=101, defaultflag=False, nZ=500):lossdistrib_joint_Z159,5545 +def joint_default_averagerecov_distrib(p, S, Ngrid=101):joint_default_averagerecov_distrib216,7188 +def adjust_attachments(K, losstodate, factor):adjust_attachments247,8101 +def trancheloss(L, K1, K2):trancheloss254,8301 +def trancherecov(R, K1, K2):trancherecov257,8387 +def tranche_cl(L, R, cs, K1, K2, scaled = False):tranche_cl260,8482 +def tranche_pl(L, cs, K1, K2, scaled=False):tranche_pl273,8981 +def tranche_pv(L, R, cs, K1, K2):tranche_pv285,9362 +def creditSchedule(tradedate, tenor, coupon, yc, enddate = None):creditSchedule288,9465 +def cdsAccrued(tradedate, coupon):cdsAccrued306,10233 +def dist_transform(q):dist_transform318,10667 +def dist_transform2(q):dist_transform2333,11081 +def compute_pv(q, strike):compute_pv347,11482 +def average_recov(p, R, Ngrid):average_recov354,11684 + n_issuers = 100n_issuers382,12690 + p = np.random.rand(n_issuers)p383,12710 + R = np.random.rand(n_issuers)R384,12744 + Rbar = joint_default_averagerecov_distrib(p, 1-R, 1001)Rbar385,12778 + Rbar_slow = average_recov(p, R, 1001)Rbar_slow386,12838 + +exploration/beta_trade.py,633 +returns = index_returns(index=['IG', 'HY'], tenor='5yr')returns8,175 +returns = (returns.returns9,232 +returns = (returns.returns14,376 +vol_sma = returns.hy.rolling(20).std() * math.sqrt(252)vol_sma22,719 +vol_ewma = returns.hy.ewm(span=20).std() * math.sqrt(252)vol_ewma23,775 +scale = 10scale26,896 +am = arch_model(scale * returns.hy.dropna())am27,907 +res = am.fit()res28,952 +vol_garch = res.conditional_volatility * math.sqrt(252)/scalevol_garch29,967 +vol = pd.concat([vol_sma, vol_ewma, vol_garch], axis=1)vol30,1029 +beta_ewma = (returns.beta_ewma33,1109 +resids = returns.ig-beta_ewma*returns.hyresids39,1285 + +exploration/sell_atm_vol.py,357 +option_delta = Index.from_name('ig', 28, '5yr')option_delta6,145 +payer = BlackSwaption(option_delta, datetime.date(2017, 5, 17), 67.5, direction='Short')payer9,254 +receiver = BlackSwaption(option_delta, datetime.date(2017, 8, 16), 62.5, 'receiver')receiver10,343 +portfolio = Portfolio([payer, receiver, option_delta])portfolio24,668 +r = []r27,804 + +exploration/curve_trades.py,1293 +df = get_index_quotes("IG", [23, 24, 25, 26, 27], tenor=['3yr', '5yr', '7yr', '10yr'])df6,107 +spreads = df.groupby(level=['date', 'tenor']).nth(-1)['closespread'].unstack(-1)spreads7,194 +spreads = spreads.sort_index(1)spreads10,350 +spreads_diff = spreads.diff(axis=1)spreads_diff11,382 +spreads_diff = spreads_diff.filter([5, 7, 10])spreads_diff12,418 +df = index_returns(index='IG', series=[24, 25, 26, 27, 28], tenor=['3yr', '5yr', '7yr', '10yr'])df17,551 +returns = df.price_return.unstack(-1).dropna().groupby(level='date').nth(-1)returns19,670 +strategy510 = returns['5yr'] - 0.56 * returns['10yr']strategy51020,747 +strategy710 = returns['7yr'] - 0.75 * returns['10yr']strategy71021,801 +strategy3510 = -2*returns['3yr']+3*returns['5yr'] - returns['10yr']strategy351022,855 +monthly_returns510 = strategy510.groupby(pd.TimeGrouper(freq='M')).agg(lambda df:(1+df).prod()-1)monthly_returns51023,923 +monthly_returns710 = strategy710.groupby(pd.TimeGrouper(freq='M')).agg(lambda df:(1+df).prod()-1)monthly_returns71024,1021 +sharpe510 = strategy510.mean()/strategy510.std()*math.sqrt(252)sharpe51026,1120 +sharpe710 = strategy710.mean()/strategy710.std()*math.sqrt(252)sharpe71027,1184 +sharpe3510 = strategy3510.mean()/strategy3510.std()*math.sqrt(252)sharpe351028,1248 + +exploration/option_trades.py,1222 +serenitasdb = dbengine('serenitasdb')serenitasdb14,300 +def realized_vol(index, series, tenor='5yr', date=None, years=None, return_type='spread'):realized_vol16,339 +def lr_var(res):lr_var28,972 +def atm_vol_fun(v, moneyness=0.2, index=None):atm_vol_fun41,1366 +def atm_vol(index, date, series=None, moneyness=0.2):atm_vol57,2034 +def atm_vol_calc(df, index):atm_vol_calc71,2636 +def rolling_vol(df, col='atm_vol', term=[3]):rolling_vol84,3200 + def aux(s, col, term):aux87,3362 +def vol_var(percentile=0.99, index='IG'):vol_var98,3840 +def get_index_spread(index, series, date, conn):get_index_spread105,4090 +def get_index_ref(index, series, date, expiry, conn):get_index_ref117,4484 +def get_option_pnl(strike, expiry, index, series, start_date, engine):get_option_pnl130,4985 +def sell_vol_strategy(index="IG", months=3):sell_vol_strategy165,6666 +def aggregate_trades(d):aggregate_trades191,7973 +def compute_allocation(df):compute_allocation197,8116 + d1 = sell_vol_strategy(months=1)d1221,8898 + d2 = sell_vol_strategy(months=2)d2222,8935 + d3 = sell_vol_strategy(months=3)d3223,8972 + all_tenors = pd.concat([aggregate_trades(d) for d in [d1, d2, d3]], axis=1)all_tenors224,9009 + +exploration/swaption_calendar_spread.py,847 +engine = dbengine('serenitasdb')engine23,645 +def shiftedColorMap(cmap, start=0, midpoint=0.5, stop=1.0, name='shiftedcmap'):shiftedColorMap25,680 +def plot_df(df, spread_shock, vol_shock, attr="pnl"):plot_df76,2455 +def plot_color_map(df, spread_shock, vol_shock, attr="pnl", path="."):plot_color_map91,3050 +def plot_time_color_map(df, spread_shock, attr="pnl", path=".", color_map = cm.RdYlGn):plot_time_color_map116,4193 +def dec_jan_2017_trade():dec_jan_2017_trade141,5261 +def april_may_2017_trade():april_may_2017_trade158,6151 +def april_may_2017_trade():april_may_2017_trade175,7043 +def may_june_2017_trade():may_june_2017_trade192,7935 +def portfolio_scenario_2():portfolio_scenario_2214,9157 +def portfolio():portfolio253,11194 +def portfolio_today():portfolio_today275,12458 +def probabilities():probabilities314,14424 + +exploration/portfolio_example.py,697 +option_delta = Index.from_tradeid(870)option_delta23,808 +option1 = BlackSwaption.from_tradeid(5, option_delta)option124,847 +option2 = BlackSwaption.from_tradeid(6, option_delta)option225,901 +portf = Portfolio([option1, option2, option_delta])portf27,956 +date_range = pd.bdate_range(option_delta.trade_date,date_range28,1008 +vol_shock = np.arange(-0.15, 0.3, 0.01)vol_shock30,1129 +spread_shock = np.arange(-0.2, 0.3, 0.01)spread_shock31,1169 +vs = VolatilitySurface("IG", 27, trade_date=option_delta.trade_date)vs32,1211 +vol_surface = vs[vs.list(model="black")[-1]]vol_surface33,1280 +df = run_portfolio_scenarios(portf, date_range, spread_shock, vol_shock, vol_surface,df34,1325 -mark_backtest_underpar.py,1129 -import pandas as pdpd1,0 -from db import dbenginedbengine2,20 -import matplotlibmatplotlib3,44 -import numpy as npnp4,62 -import matplotlib.pyplot as pltmatplotlib5,81 -import matplotlib.pyplot as pltplt5,81 -import statsmodels.api as smstatsmodels6,113 -import statsmodels.api as smsm6,113 -from statsmodels.formula.api import glsgls7,142 -import seaborn as sbsb8,182 -df = pd.read_sql_table('external_marks_mapped',dbengine('dawndb'),df10,204 - parse_dates=['date'])parse_dates11,271 -df = df[df.source.notnull()]df12,316 -df_wide = (pd.pivot_table(df, 'mark', ['identifier', 'date'], 'source').df_wide13,345 - "from bonds where buysell = 'f'"df_trades17,567 - parse_dates=['trade_date'])parse_dates19,681 -df_trades = df_trades.sort_values('trade_date')df_trades20,739 -df_wide = pd.merge_asof(df_trades, df_wide, left_on='trade_date', right_on='date', by='identifier')df_wide21,787 -df_long = pd.merge_asof(df_trades, df, left_on='trade_date', right_on='date', by='identifier')df_long22,887 -params = (df_long.params29,1103 +murano.py,1029 +df = pd.read_table("/home/share/guillaume/murano leads.csv.txt", encoding="utf-16-le", low_memory=False)df6,71 +df = df.dropna(1, 'all')df8,204 +todrop = []todrop10,271 +df = df.drop(todrop, axis=1)df14,378 +df = df.drop([col for col in df if 'ID' in col], axis=1)df16,437 +website = df.Websitewebsite18,509 +website = website.replace("http://","")website19,530 +df = df.drop(['Teams', 'Do Not Call', 'Assigned User Name', 'Hit Status'], axis=1)df23,706 +col = df['Primary Address Country']col58,2741 +col = col.str.strip().str.title()col59,2777 +col = col.replace(["Republic Of Ireland", "United State Of America", "The Netherlands"],col60,2811 +def generate_table(df):generate_table64,2976 +def list_placeholders(df):list_placeholders99,4294 +def nat_to_null(d, _NULL=AsIs('NULL'),nat_to_null118,4962 +investorsdb = dbengine('investorsdb')investorsdb125,5202 +sql_str = "INSERT INTO investors VALUES({})".format(",".join(list_placeholders(df)))sql_str126,5240 +conn = investorsdb.raw_connection()conn127,5325 -insert_index.py,1523 -import datetimedatetime1,0 -from sqlalchemy import MetaData, create_engine, TableMetaData2,17 -from sqlalchemy import MetaData, create_engine, Tablecreate_engine2,17 -from sqlalchemy import MetaData, create_engine, TableTable2,17 +mark_backtest_underpar.py,2286 +df = pd.read_sql_table('external_marks_mapped', dbengine('dawndb'),df11,205 + parse_dates=['date'])parse_dates12,273 +df = df[df.source.notnull()]df13,318 +df_wide = (pd.pivot_table(df, 'mark', ['identifier', 'date'], 'source').df_wide14,347 +df_trades = {}df_trades18,479 + parse_dates=['trade_date'])parse_dates22,725 + parse_dates=['trade_date'])parse_dates26,1018 +df_sell_wide = pd.merge_asof(df_trades['sell'], df_wide, left_on='trade_date', right_on='date', by='identifier')df_sell_wide30,1186 +df_wide_temp = df_wide.set_index('date').shift(periods = -1, freq= 'M', axis = 1).reset_index()df_wide_temp31,1299 +df_buy_wide = pd.merge_asof(df_trades['buy'], df_wide_tempdf_buy_wide32,1395 +d_sell = {}d_sell35,1542 +d_buy = {}d_buy36,1554 +df_long = {}df_long37,1565 +df_long = pd.concat(d_sell, join='inner')df_long47,2025 +df_long = df_long.append(pd.concat(d_buy, join='inner'))df_long48,2067 +df_long = df_long.reset_index().dropna(subset=['price','mark'])df_long49,2124 +diff_threshold = 5diff_threshold53,2277 +begindate = '2013-01-01'begindate54,2296 +enddate = '2018-01-01'enddate55,2321 +df_long = df_long[df_long.identifier.str.len() == 9]df_long57,2345 +df_long = df_long[(df_long['trade_date'] > begindate) & (df_long['trade_date'] < enddate)]df_long58,2398 +order = ['MANAGER','BROKER','BVAL','IDC','MARKIT','PB','PRICESERVE','PRICINGDIRECT','REUTERS','S&P']order70,2758 +g_sell = sb.FacetGrid(df_long[df_long.dir == 'sell'], hue='source', hue_kws={'s':[50] + [20]*9, 'marker': ["o"]+["s"]*9, 'alpha': [1]+[.4]*9}, legend_out=True, aspect = 2.1, size = 4, hue_order = order)g_sell73,2907 +ax_sell = g_sell.map(plt.scatter, 'mark', 'price').add_legend()ax_sell75,3151 +g_buy = sb.FacetGrid(df_long[df_long.dir == 'buy'], hue='source', hue_kws={'s':[50] + [20]*9, 'marker': ["o"]+["s"]*9, 'alpha': [1]+[.4]*9}, legend_out=True, aspect = 2.1, size = 4, hue_order = order)g_buy77,3216 +ax_buy = g_buy.map(plt.scatter, 'mark', 'price').add_legend()ax_buy79,3457 +params = {}params84,3647 +error = {}error85,3659 +trade_PNL = {}trade_PNL86,3670 +trade_PNL_stat = {}trade_PNL_stat87,3685 +buychart = trade_PNL['buy'].unstack(-1).plot()buychart102,4458 + +insert_index.py,1288 engine = create_engine('postgresql://serenitas_user@debian/serenitasdb')engine4,74 metadata = MetaData(bind = engine)metadata5,148 index_desc = Table('index_desc', metadata, autoload=True)index_desc6,184 @@ -1225,31 +8366,16 @@ CFLAGS=-O2 -march=native -fpicCFLAGS1,0 LDLIBS=-lm -llapackLDLIBS2,31 LDFLAGS=-fpic -sharedLDFLAGS3,51 -test_upfront_cds.py,4012 -from quantlib.time.api import (WeekendsOnly, today, Years, Months,WeekendsOnly1,0 -from quantlib.time.api import (WeekendsOnly, today, Years, Months,today1,0 -from quantlib.time.api import (WeekendsOnly, today, Years, Months,Years1,0 -from quantlib.time.api import (WeekendsOnly, today, Years, Months,Months1,0 -from quantlib.instruments.api import CreditDefaultSwap, SELLER, BUYERCreditDefaultSwap5,270 -from quantlib.instruments.api import CreditDefaultSwap, SELLER, BUYERSELLER5,270 -from quantlib.instruments.api import CreditDefaultSwap, SELLER, BUYERBUYER5,270 -from quantlib.termstructures.default_term_structure import DefaultProbabilityTermStructureDefaultProbabilityTermStructure8,471 -from quantlib.settings import SettingsSettings11,689 -from yieldcurve import YC, rate_helpers, getMarkitIRDataYC12,728 -from yieldcurve import YC, rate_helpers, getMarkitIRDatarate_helpers12,728 -from yieldcurve import YC, rate_helpers, getMarkitIRDatagetMarkitIRData12,728 -import pandas as pdpd13,785 -from pyisda.curve import YieldCurve, BadDay, SpreadCurveYieldCurve14,805 -from pyisda.curve import YieldCurve, BadDay, SpreadCurveBadDay14,805 -from pyisda.curve import YieldCurve, BadDay, SpreadCurveSpreadCurve14,805 -from pyisda.utils import build_ycbuild_yc15,862 -from pyisda.cdsone import upfront_chargeupfront_charge16,896 -from pyisda.legs import ContingentLeg, FeeLegContingentLeg17,937 -from pyisda.legs import ContingentLeg, FeeLegFeeLeg17,937 -import datetimedatetime18,983 -import arrayarray19,999 -import mathmath20,1012 -import numpy as npnp21,1024 +index_data.py,455 +serenitasdb = dbengine('serenitasdb')serenitasdb6,96 +def insert_quotes():insert_quotes8,135 +def get_index_quotes(index=None, series=None, tenor=None, from_date=None, years=3):get_index_quotes41,1880 + def make_str(key, val):make_str47,2164 + def make_params(args):make_params63,2698 +def index_returns(df=None, index=None, series=None, tenor=None, from_date=None, years=3):index_returns78,3323 + def add_accrued(df):add_accrued106,4487 + +test_upfront_cds.py,2424 def snac_pv(spread, term_date, fixed_coupon=0.01, recovery=0.4, ts=YC()):snac_pv23,1044 def jpmorgan_curves(trade_date, value_date, start_date, end_date, spread, recovery=0.4):jpmorgan_curves45,2476 settings = Settings()settings54,2877 @@ -1280,10 +8406,7 @@ def jpmorgan_curves(trade_date, value_date, start_date, end_date, spread, recove flat_curve2 = FlatHazardRate(0, WeekendsOnly(), h, Actual365Fixed())flat_curve288,4808 isda_pricer2 = IsdaCdsEngine(flat_curve2, 0.4, ts)isda_pricer289,4881 -test_hyoption.py,539 -from analytics import Index, SwaptionIndex1,0 -from analytics import Index, SwaptionSwaption1,0 -import datetimedatetime2,38 +test_hyoption.py,410 index = Index.from_name("hy", 27, "5yr",index3,54 trade_date = datetime.date(2016, 11, 16))trade_date4,95 exercise_date = datetime.date(2017, 3, 15)exercise_date6,182 @@ -1291,12 +8414,7 @@ strike = 102.5strike7,225 payer = Swaption(index, exercise_date, strike, strike_is_price = True)payer8,240 receiver = Swaption(index, exercise_date, strike, "receiver", strike_is_price = True)receiver13,374 -facility_download.py,698 -import requestsrequests1,0 -import osos2,17 -from common import rootroot3,28 -from db import conn, query_dbconn4,53 -from db import conn, query_dbquery_db4,53 +facility_download.py,533 legal = 'serecap'legal6,86 username = 'serecapuser'username7,105 password = 'Welcome1'password8,131 @@ -1306,15 +8424,7 @@ loan_ids = query_db(sqlstring, one=False)loan_ids28,972 r = requests.get('https://loans.markit.com/loanx/LoanXOneFacility.csv?LEGALENTITY={0}&USERNAME={1}&PASSWORD={2}&LOANXID={3}'.format(legal, username, password, loanxid[0]))r32,1162 flag = Trueflag38,1541 -bbg_prices.py,1658 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPinit_bbg_session1,0 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPretrieve_data1,0 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPBBG_IP1,0 -from sqlalchemy import create_enginecreate_engine2,64 -import numpy as npnp3,101 -import pandas as pdpd4,120 -from psycopg2.extensions import register_adapter, AsIsregister_adapter6,141 -from psycopg2.extensions import register_adapter, AsIsAsIs6,141 +bbg_prices.py,1159 engine = create_engine('postgresql://et_user@debian/ET')engine10,257 fields_update = ["LN_ISSUE_STATUS", "AMT_OUTSTANDING", "PX_LAST","LAST_UPDATE_DT",fields_update12,315 "AND not called", engine, index_col='cusip')cusips20,812 @@ -1330,19 +8440,14 @@ currentdata = pd.read_sql_query("SELECT id_bb_unique, pricingdate from bloomberg df = df.ix[df.index.difference(currentdata.index)]df50,2232 to_insert = df[['ID_BB_UNIQUE','LAST_UPDATE_DT','PX_LAST','LN_CURRENT_MARGIN',to_insert54,2365 -test_hyoption2.py,437 -from analytics import Index, SwaptionIndex1,0 -from analytics import Index, SwaptionSwaption1,0 -import datetimedatetime2,38 +test_hyoption2.py,308 index = Index.from_name("hy", 27, "5yr",index3,54 trade_date = datetime.date(2016, 11, 16))trade_date4,95 exercise_date = datetime.date(2017, 3, 15)exercise_date6,182 strike = 102.5strike7,225 payer = Swaption(index, exercise_date, strike, strike_is_price = True)payer8,240 -sftp.py,516 -import paramikoparamiko1,0 -import osos2,16 +sftp.py,469 hostname="alias.im"hostname4,27 port=22port5,47 username="guillaume"username6,55 @@ -1354,23 +8459,25 @@ hostkey = host_keys[hostname]['ssh-rsa']hostkey14,347 sftp = paramiko.SFTPClient.from_transport(t)sftp16,448 dirlist = sftp.listdir('.')dirlist17,493 -risk_insight/__init__.py,146 -from flask import FlaskFlask1,0 +mark_swaptions.py,817 + level=logging.INFO,level13,295 + format='%(asctime)s %(message)s')format14,335 +def get_trades(date, engine):get_trades16,390 +def get_swaptionvol(index, series, strike, expiry, date, engine):get_swaptionvol25,830 +def mark_trades(date, engine):mark_trades45,1697 + parser = argparse.ArgumentParser()parser97,3990 + type = lambda s: pd.datetime.strptime(s, "%Y-%m-%d").date()),type99,4076 + dawn_engine = dbengine('dawndb')dawn_engine100,4162 + serenitas_engine = dbengine('serenitasdb')serenitas_engine101,4199 + args = parser.parse_args()args102,4246 + workdate = (pd.Timestamp.today()-BDay()).date()workdate104,4307 + workdate = args.workdateworkdate106,4373 + r = mark_trades(workdate, dawn_engine)r108,4407 + +risk_insight/__init__.py,31 app = Flask(__name__)app2,24 -import risk_insight.viewsrisk_insight3,46 -import risk_insight.viewsviews3,46 -risk_insight/views.py,860 -from risk_insight import appapp1,0 -from flask import render_template, jsonify, request, grender_template2,29 -from flask import render_template, jsonify, request, gjsonify2,29 -from flask import render_template, jsonify, request, grequest2,29 -from flask import render_template, jsonify, request, gg2,29 -import os, csv, yamlos3,84 -import os, csv, yamlcsv3,84 -import os, csv, yamlyaml3,84 -import datetimedatetime4,105 -import psycopg2psycopg25,121 +risk_insight/views.py,397 basedir = "/home/share/CorpCDOs"basedir7,138 def get_attach_from_name(index_type, series):get_attach_from_name8,171 def get_db():get_db25,709 @@ -1387,28 +8494,13 @@ risk_insight/templates/tranches.html,0 risk_insight/templates/indices.html,0 -Dawn/__init__.py,515 -from flask import FlaskFlask1,0 -import logginglogging2,24 -from flask_sqlalchemy import SQLAlchemySQLAlchemy3,39 -from sqlalchemy import MetaDataMetaData4,79 +Dawn/__init__.py,290 app = Flask(__name__)app6,112 db = SQLAlchemy(app, metadata = MetaData(schema=app.config['SCHEMA']))db8,165 fh = logging.FileHandler(filename=app.config['LOGFILE'])fh11,255 formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')formatter13,346 -import Dawn.viewsDawn17,498 -import Dawn.viewsviews17,498 -Dawn/models.py,12086 -from flask_wtf import FormForm1,0 -from flask_wtf.file import FileFieldFileField2,27 -from sqlalchemy.dialects.postgresql import ENUMENUM3,64 -from wtforms import SelectFieldSelectField4,112 -from wtforms.validators import LengthLength5,144 -from wtforms_alchemy import model_form_factorymodel_form_factory6,182 -from sqlalchemy_utils import EmailType, PhoneNumberTypeEmailType7,229 -from sqlalchemy_utils import EmailType, PhoneNumberTypePhoneNumberType7,229 -from . import dbdb9,286 +Dawn/models.py,11647 class Counterparties(db.Model):Counterparties11,304 __tablename__ = 'counterparties'__tablename__12,336 code = db.Column(db.String(12), primary_key=True)code13,373 @@ -1554,43 +8646,18 @@ class SwaptionDeal(db.Model):SwaptionDeal178,9305 price = db.Column(db.Float, nullable = False)price198,10556 expiration_date = db.Column(db.Date, nullable = False)expiration_date199,10606 initial_margin_percentage = db.Column(db.Float)initial_margin_percentage200,10665 - security_id = db.Column(db.String(12), nullable = False)security_id201,10717 - security_desc = db.Column(db.String(32), nullable = False)security_desc202,10778 - fixed_rate = db.Column(db.Float, nullable = False)fixed_rate203,10841 - maturity = db.Column(db.Date, nullable = False)maturity204,10896 - currency = db.Column(CCY, nullable = False)currency205,10948 - counterparty = db.relationship(Counterparties)counterparty206,10996 -BaseModelForm = model_form_factory(Form)BaseModelForm208,11048 -class ModelForm(BaseModelForm):ModelForm209,11089 - def get_session(self):get_session211,11138 + index_ref = db.Column(db.Float)index_ref201,10717 + security_id = db.Column(db.String(12), nullable = False)security_id202,10753 + security_desc = db.Column(db.String(32), nullable = False)security_desc203,10814 + fixed_rate = db.Column(db.Float, nullable = False)fixed_rate204,10877 + maturity = db.Column(db.Date, nullable = False)maturity205,10932 + currency = db.Column(CCY, nullable = False)currency206,10984 + counterparty = db.relationship(Counterparties)counterparty207,11032 +BaseModelForm = model_form_factory(Form)BaseModelForm209,11084 +class ModelForm(BaseModelForm):ModelForm210,11125 + def get_session(self):get_session212,11174 -Dawn/views.py,3860 -from flask import (request, render_template, redirect,request1,0 -from flask import (request, render_template, redirect,render_template1,0 -from flask import (request, render_template, redirect,redirect1,0 -from .models import ModelForm, BondDeal, CDSDeal, SwaptionDeal, CounterpartiesModelForm3,127 -from .models import ModelForm, BondDeal, CDSDeal, SwaptionDeal, CounterpartiesBondDeal3,127 -from .models import ModelForm, BondDeal, CDSDeal, SwaptionDeal, CounterpartiesCDSDeal3,127 -from .models import ModelForm, BondDeal, CDSDeal, SwaptionDeal, CounterpartiesSwaptionDeal3,127 -from .models import ModelForm, BondDeal, CDSDeal, SwaptionDeal, CounterpartiesCounterparties3,127 -from sqlalchemy.exc import IntegrityErrorIntegrityError4,206 -from wtforms.fields import BooleanFieldBooleanField5,248 -import pandas as pdpd6,288 -from pandas.tseries.offsets import CustomBusinessDayCustomBusinessDay7,308 -from pandas.tseries.holiday import get_calendar, HolidayCalendarFactory, GoodFridayget_calendar8,361 -from pandas.tseries.holiday import get_calendar, HolidayCalendarFactory, GoodFridayHolidayCalendarFactory8,361 -from pandas.tseries.holiday import get_calendar, HolidayCalendarFactory, GoodFridayGoodFriday8,361 -import osos9,445 -import datetimedatetime10,455 -import redisredis11,471 -from .utils import load_counterparties, bump_rev, simple_serializeload_counterparties12,484 -from .utils import load_counterparties, bump_rev, simple_serializebump_rev12,484 -from .utils import load_counterparties, bump_rev, simple_serializesimple_serialize12,484 -from PyPDF2 import PdfFileMergerPdfFileMerger13,551 -from io import BytesIOBytesIO14,584 -from . import appapp15,607 -import socketsocket16,625 -import psycopg2psycopg217,639 +Dawn/views.py,2099 fed_cal = get_calendar('USFederalHolidayCalendar')fed_cal19,656 bond_cal = HolidayCalendarFactory('BondCalendar', fed_cal, GoodFriday)bond_cal20,707 bus_day = CustomBusinessDay(calendar=bond_cal())bus_day21,778 @@ -1645,59 +8712,32 @@ Dawn/templates/bond_blotter.html,0 Dawn/templates/counterparties.html,0 -Dawn/utils.py,352 -import pandas as pdpd1,0 -import osos2,20 -import rere3,30 -from pickle import dumpsdumps4,40 -from sqlalchemy import create_enginecreate_engine5,65 +Dawn/utils.py,197 def load_counterparties(engine):load_counterparties7,103 def load_trades(engine):load_trades26,1441 def bump_rev(filename):bump_rev57,3057 def simple_serialize(obj):simple_serialize63,3299 -trade_template.py,275 -from string import TemplateTemplate1,0 +trade_template.py,234 default = "\underline{\hspace{1cm}}"default3,29 checked = "\underline{\hspace{0.35cm}X\hspace{0.35cm}}"checked4,66 d = {}d5,122 texfile = Template(fh.read())texfile29,887 texfile = texfile.substitute(d)texfile30,921 -dates.py,1256 -import datetimedatetime1,0 -import pandas as pdpd2,16 -from pandas.tseries.offsets import CustomBusinessDay, Day, QuarterBeginCustomBusinessDay3,36 -from pandas.tseries.offsets import CustomBusinessDay, Day, QuarterBeginDay3,36 -from pandas.tseries.offsets import CustomBusinessDay, Day, QuarterBeginQuarterBegin3,36 -from pandas.tseries.holiday import get_calendar, HolidayCalendarFactory, GoodFridayget_calendar4,108 -from pandas.tseries.holiday import get_calendar, HolidayCalendarFactory, GoodFridayHolidayCalendarFactory4,108 -from pandas.tseries.holiday import get_calendar, HolidayCalendarFactory, GoodFridayGoodFriday4,108 -from analytics.utils import previous_twentiethprevious_twentieth5,192 -import unittestunittest6,239 -fed_cal = get_calendar('USFederalHolidayCalendar')fed_cal8,256 -bond_cal = HolidayCalendarFactory('BondCalendar', fed_cal, GoodFriday)bond_cal9,307 -bus_day = CustomBusinessDay(calendar=bond_cal())bus_day10,378 -def imm_dates(start_date, end_date):imm_dates12,428 -def days_accrued(tradedate):days_accrued20,764 -def isleapyear(date):isleapyear30,1209 -def yearfrac(date1, date2, daycount):yearfrac33,1317 -class TestDaysAccrued(unittest.TestCase):TestDaysAccrued50,1859 - def test(self):test51,1901 +dates.py,567 +fed_cal = get_calendar('USFederalHolidayCalendar')fed_cal9,259 +bond_cal = HolidayCalendarFactory('BondCalendar', fed_cal, GoodFriday)bond_cal10,310 +bus_day = CustomBusinessDay(calendar=bond_cal())bus_day11,381 +def imm_dates(start_date, end_date):imm_dates13,431 +def previous_twentieth(d):previous_twentieth21,767 +def days_accrued(tradedate):days_accrued30,982 +def isleapyear(date):isleapyear40,1427 +def yearfrac(date1, date2, daycount):yearfrac43,1535 +class TestDaysAccrued(unittest.TestCase):TestDaysAccrued60,2077 + def test(self):test61,2119 -bbg_newids.py,2585 -from sqlalchemy import create_engine, MetaData, select, Column, func, bindparamcreate_engine1,0 -from sqlalchemy import create_engine, MetaData, select, Column, func, bindparamMetaData1,0 -from sqlalchemy import create_engine, MetaData, select, Column, func, bindparamselect1,0 -from sqlalchemy import create_engine, MetaData, select, Column, func, bindparamColumn1,0 -from sqlalchemy import create_engine, MetaData, select, Column, func, bindparamfunc1,0 -from sqlalchemy import create_engine, MetaData, select, Column, func, bindparambindparam1,0 -from collections import defaultdictdefaultdict2,80 -import pandas as pdpd3,116 -import numpy as npnp4,136 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPinit_bbg_session5,155 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPretrieve_data5,155 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPBBG_IP5,155 +bbg_newids.py,1671 engine = create_engine('postgresql://et_user@debian/ET')engine7,220 meta = MetaData(bind=engine)meta8,277 deal_indicative = meta.tables['deal_indicative']deal_indicative11,388 @@ -1722,11 +8762,7 @@ pd_colnames = ['ID_BB_UNIQUE','LAST_UPDATE_DT','PX_LAST','LN_CURRENT_MARGIN',pd sql_colnames = [c.name for c in bloomberg_corp.columns]sql_colnames72,3462 to_insert2 = df.filter(pd_colnames)to_insert273,3518 -option_exploration.py,2047 -import seabornseaborn7,62 -import pandas as pdpd9,130 -from scipy.interpolate import interp1dinterp1d10,150 -import numpy as npnp11,189 +option_exploration.py,1906 SQL_CON = 'postgresql://serenitas_user@debian/serenitasdb'SQL_CON16,220 df = pd.read_sql_table('swaption_quotes', SQL_CON, index_col=['quotedate', 'index', 'series', 'expiry'])df17,279 index_data = pd.read_sql_table('swaption_ref_quotes', SQL_CON, index_col=['quotedate', 'index', 'series', 'expiry'])index_data18,384 @@ -1754,31 +8790,7 @@ skew = df_26.otm_vol.IG-df_26.atm_vol.IGskew94,2788 skew = df_27.otm_vol.IG-df_27.atm_vol.IGskew100,2854 ig26_vol = df_vol_rolling.xs(('IG', 26), level=['indextype','series'])ig26_vol106,2920 -process_queue.py,2057 -import datetimedatetime1,0 -import redisredis2,16 -import socketsocket3,29 -import pandas as pdpd4,43 -import csvcsv5,63 -import syssys6,74 - from io import StringIOStringIO9,118 - from cStringIO import StringIOStringIO11,152 -from pickle import loadsloads13,188 -from ftplib import FTPFTP14,213 -import task_server.config as configtask_server15,236 -import task_server.config as configconfig15,236 -import osos16,272 -from sqlalchemy import create_enginecreate_engine17,282 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPinit_bbg_session18,319 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPretrieve_data18,319 -from bbg_helpers import init_bbg_session, retrieve_data, BBG_IPBBG_IP18,319 -import rere19,383 -from analytics.utils import previous_twentiethprevious_twentieth20,393 -from db import dbconndbconn21,440 -import logginglogging22,462 -import argparseargparse23,477 -import psycopg2psycopg224,493 -from send_email import EmailMessageEmailMessage25,509 +process_queue.py,1031 HEADERS = {'bond_trades':['Deal Type', 'Deal ID', 'Action', 'Client', 'Reserved', 'Reserved',HEADERS27,546 def decode_dict(d):decode_dict80,4858 def get_redis_queue():get_redis_queue84,5013 @@ -1787,40 +8799,40 @@ def aux(v):aux94,5319 def get_trades(q, queue_name='bond_trades'):get_trades104,5565 def build_line(obj, queue_name='bond_trades'):build_line118,6064 def get_bbg_data(conn, session, identifier, cusip=None, isin = None, settle_date = None, asset_class=None,get_bbg_data213,10371 -def bond_trade_process(conn, session, trade):bond_trade_process268,13279 -def cds_trade_process(serenitasdb, dawndb, session, trade):cds_trade_process288,14199 -def generate_csv(l, queue_name='bond_trades'):generate_csv303,14813 -def get_filename(timestamp, queue_name):get_filename314,15170 -def upload_file(timestamp, queue_name='bond_trades'):upload_file320,15425 -def write_buffer(buf, queue_name='bond_trades'):write_buffer329,15804 -def email_subject(trade):email_subject336,16081 +def bond_trade_process(conn, session, trade):bond_trade_process268,13259 +def cds_trade_process(serenitasdb, dawndb, session, trade):cds_trade_process288,14179 +def generate_csv(l, queue_name='bond_trades'):generate_csv303,14793 +def get_filename(timestamp, queue_name):get_filename314,15150 +def upload_file(timestamp, queue_name='bond_trades'):upload_file320,15405 +def write_buffer(buf, queue_name='bond_trades'):write_buffer329,15784 +def email_subject(trade):email_subject336,16061 -test.py,320 -import pandas as pdpd1,0 -df = pd.read_excel("/home/serenitas/Daily/2016/2016_10/2016-10-31/ReviewedPack.bseeman.SERENITAS.SERCGMAST.20161001.20161031.Draft.xlsx", "Securities Valuation Details", parse_cols = "JA:JX", skiprows=range(13))df2,20 -def get_globs(years=['2013', '2014', '2015', '2016']):get_globs4,235 +test.py,1205 +def run_swaption_senarios(swaption, date_range, spread_shift, vol_shift, vol_surface):run_swaption_senarios12,344 +def plot_df(df, spread_shock, vol_shock):plot_df35,1310 + trade_date = datetime.date(2017, 2, 23)trade_date49,1813 + ig27 = Index.from_name("IG", 27, '5yr', trade_date=trade_date)ig2750,1857 + payer1 = Swaption(ig27, datetime.date(2017, 4, 19), 65)payer152,1942 + payer2 = Swaption(ig27, datetime.date(2017, 5, 17), 72)payer253,2002 + date_range = pd.bdate_range(trade_date, pd.Timestamp('2017-04-19') - BDay(), freq = '5B')date_range56,2118 + vol_shock = np.arange(-0.15, 0.3, 0.01)vol_shock57,2212 + spread_shock = np.arange(-0.2, 0.3, 0.01)spread_shock58,2256 + vs = VolatilitySurface("IG", 27, trade_date=trade_date)vs59,2302 + vol_surface = vs[vs.list()[-1]]vol_surface60,2362 + df1 = run_swaption_senarios(payer1, date_range, spread_shock, vol_shock, vol_surface)df161,2398 + df2 = run_swaption_senarios(payer2, date_range, spread_shock, vol_shock, vol_surface)df262,2488 + df = df1df64,2591 + df = df.assign(pv=df1.pv-df2.pv)df65,2604 +trade = Swaption.from_tradeid(3)trade71,2803 +index = Index.from_tradeid(873)index72,2836 -task_server/__init__.py,474 -from flask import FlaskFlask1,0 +task_server/__init__.py,319 app = Flask(__name__)app2,24 -import task_server.resttask_server3,46 -import task_server.restrest3,46 -import logginglogging4,70 -import osos5,85 fh = logging.FileHandler(filename=os.path.join(os.getenv("LOG_DIR"), 'tasks.log'))fh7,96 formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')formatter8,179 loggers = [logging.getLogger('intex'), app.logger, logging.getLogger(__name__)]loggers11,293 -task_server/insert_tranche_quotes.py,1102 -from sqlalchemy import Table, create_engine, MetaDataTable1,0 -from sqlalchemy import Table, create_engine, MetaDatacreate_engine1,0 -from sqlalchemy import Table, create_engine, MetaDataMetaData1,0 -from sqlalchemy.exc import IntegrityError, DataErrorIntegrityError2,55 -from sqlalchemy.exc import IntegrityError, DataErrorDataError2,55 -import osos3,109 -import csvcsv4,120 -import datetimedatetime5,132 -import logginglogging6,149 +task_server/insert_tranche_quotes.py,658 logger = logging.getLogger(__name__)logger8,167 engine = create_engine('postgresql://serenitas_user@debian/serenitasdb')engine10,207 metadata = MetaData(bind = engine)metadata11,281 @@ -1833,18 +8845,7 @@ runningdict1 = {0: 500, 3:100, 7:100, 15: 25}runningdict134,874 runningdict2 = {0: 500, 3:500, 7:500, 10:100, 15:100, 30:100}runningdict235,921 def insert_quotes(year=2016, quote_dir=None):insert_quotes37,986 -task_server/rest.py,725 -import psycopg2psycopg21,0 -from psycopg2.extras import DictCursorDictCursor2,16 -import datetime, redisdatetime3,55 -import datetime, redisredis3,55 -from intex.load_intex_collateral import intex_dataintex_data4,78 -from .globeop import download_datadownload_data5,129 -from .insert_tranche_quotes import insert_quotesinsert_quotes6,164 -from task_server import appapp7,213 -from flask import request, grequest8,241 -from flask import request, gg8,241 -import jsonjson9,270 +task_server/rest.py,238 def get_db():get_db11,283 def get_queue():get_queue20,584 def close_db(error):close_db27,772 @@ -1853,96 +8854,111 @@ def globeop():globeop40,1117 def insert_tranches():insert_tranches46,1362 def run_tasks():run_tasks51,1470 -task_server/__main__.py,839 -import logginglogging1,0 -import argparseargparse2,15 -import datetimedatetime3,31 -from .globeop import download_data, upload_datadownload_data4,47 -from .globeop import download_data, upload_dataupload_data4,47 -from sqlalchemy import create_enginecreate_engine5,95 - level=logging.INFO,level8,207 - format='%(asctime)s %(message)s')format9,247 -parser = argparse.ArgumentParser()parser11,302 -group = parser.add_mutually_exclusive_group(required=True)group12,337 - help="download reports from GlobeOp")help16,559 - help="upload marks to GlobeOp")help18,675 - default=datetime.datetime.today())default20,824 -args = parser.parse_args()args21,879 - engine = create_engine('postgresql://dawn_user@debian/dawndb')engine26,979 +task_server/__main__.py,565 + level=logging.INFO,level9,223 + format='%(asctime)s %(message)s')format10,263 +parser = argparse.ArgumentParser()parser12,318 +group = parser.add_mutually_exclusive_group(required=True)group13,353 + help="download reports from GlobeOp")help17,575 + help="upload marks to GlobeOp")help19,691 + default=datetime.datetime.today())default21,840 +args = parser.parse_args()args22,895 + engine = create_engine('postgresql://dawn_user@debian/dawndb')engine27,995 + +task_server/config.py,330 +ftp_password = 'B6#dEu7V'ftp_password1,0 +key_password = 'Serenitas;1'key_password2,27 +gmail_password = 'dweeks314'gmail_password3,57 +gmail_login = 'david.weeks@serenitascapital.com'gmail_login4,87 +markit_password = 'Welcome3!'markit_password5,137 +markit_login = 'guillaume.horel@serenitascapital.com'markit_login6,168 -task_server/globeop.py,963 -import osos1,0 -import os.pathos2,11 -import os.pathpath2,11 -from ftplib import FTPFTP3,27 -import gnupggnupg4,51 -from task_server import configconfig5,65 -import rere6,97 -import logginglogging7,108 -import shutilshutil8,124 -import pandas as pdpd9,139 -from sqlalchemy import create_enginecreate_engine10,160 +task_server/globeop.py,548 logger = logging.getLogger(__name__)logger12,200 - import pandas as pdpd15,246 - from pandas.tseries.offsets import BDayBDay16,271 root = "//diskstation/Daily"root21,369 root = '/home/serenitas/Daily'root23,429 def get_ped(s):get_ped25,467 def key_fun(s):key_fun35,773 def run_date(s):run_date45,1090 -def get_ftp(folder):get_ftp48,1177 -def get_gpg():get_gpg54,1320 -def download_data(workdate):download_data63,1666 -def upload_bond_marks(engine, workdate):upload_bond_marks112,4019 -def upload_cds_marks(engine, workdate):upload_cds_marks124,4608 -def upload_data(engine, workdate):upload_data136,5204 +def get_ftp(folder):get_ftp52,1288 +def get_gpg():get_gpg58,1431 +def download_data(workdate):download_data67,1777 +def upload_bond_marks(engine, workdate):upload_bond_marks116,4130 +def upload_cds_marks(engine, workdate):upload_cds_marks128,4719 +def upload_data(engine, workdate):upload_data140,5315 + +parse_gs.py,2375 +data_dir = "/home/share/guillaume/swaptions"data_dir6,52 +all_df = {}all_df7,97 +fwd_index = []fwd_index8,109 + full_path = os.path.join(data_dir, index + " swaptions")full_path10,151 + flag = Falseflag13,342 + masterdf = {}masterdf14,367 + line = line.decode('utf-8', 'ignore')line16,421 + line = line.rstrip()line17,475 + m = re.search("(IG|HY)(\d{2}) 5y (?:.*)SWAPTION (?:UPDATE|CLOSES|CLOSE) - Ref\D+(.+)$", line)m18,512 + indextype = m.groups()[0]indextype20,644 + series = int(m.groups()[1])series21,690 + refspread = float(m.groups()[2])refspread26,972 + quotedate = pd.to_datetime(line[4:])quotedate29,1100 + m = re.match("Expiry (\d{2}\w{3}\d{2}) \((?:([\S]+) )?([\S]+)\)", line)m32,1232 + date = pd.to_datetime(date, format='%d%b%y')date35,1411 + flag = Trueflag38,1552 + r = []r39,1584 + vals = re.sub(" +", " ", line).split(" ")vals43,1694 + cols = ['Strike', 'Sprd', 'Pay', 'DeltaPay', 'Rec', 'Vol',cols54,2136 + cols = ['Strike', 'Pay', 'DeltaPay', 'Rec', 'Vol',cols57,2317 + df = pd.DataFrame.from_records(r, columns = cols)df59,2460 + d = {'quotedate': quotedate,d67,2961 + flag = Falseflag79,3521 + r = []r80,3558 +all_df = pd.concat(all_df, names = ['quotedate', 'index', 'series'])all_df83,3709 +index_df = pd.DataFrame(fwd_index)index_df86,3845 +all_df = all_df.rename(columns={'Strike':'strike',all_df89,3914 +index_df = index_df.drop_duplicates(['quotedate', 'index', 'series', 'expiry'])index_df101,4450 +serenitasdb = dbengine('serenitasdb')serenitasdb105,4571 +conn = serenitasdb.raw_connection()conn106,4609 + "ON CONFLICT DO NOTHING"format_str108,4710 +cols = index_df.columnscols109,4748 +sqlstr = format_str.format(",".join(cols), ",".join(["%s"] * len(cols)))sqlstr110,4772 +format_str = "INSERT INTO swaption_quotes({}) VALUES({}) ON CONFLICT DO NOTHING"format_str116,4946 +cols = all_df.columnscols117,5027 +sqlstr = format_str.format(",".join(cols), ",".join(["%s"] * len(cols)))sqlstr118,5049 + +experiments/test_matrix.py,727 +openblas_lib = ctypes.cdll.LoadLibrary(find_library('openblas'))openblas_lib8,150 +def get_num_threads():get_num_threads10,216 +def set_num_threads(n):set_num_threads13,291 +seed = 1234seed16,366 +N = 1000000N19,400 +p = 100p20,412 +X = np.random.random(N * p).reshape((N, p), order='F')X21,420 +XT = X.T.copy()XT22,475 +true_value=33334547.40257686true_value23,491 +old_num_threads = get_num_threads()old_num_threads25,559 +def test():test26,595 +def test2():test230,692 +def test3():test334,815 +t = timeit.timeit(test, number=5)t38,912 +t = timeit.timeit(test2, number=5)t41,1030 +t = timeit.timeit(test3, number=5)t44,1155 +t = timeit.timeit(test, number=5)t48,1299 + def test_dask():test_dask55,1521 + +experiments/test_timestamptz.py,418 +engine = dbengine('serenitasdb')engine3,44 +df1 = pd.read_sql_query("SELECT date FROM test", engine)df15,78 +df2 = pd.read_sql_query("SELECT date FROM test WHERE date<='2014-10-17'",df27,136 +df2bis = pd.read_sql_query("SELECT date FROM test WHERE date<='2014-10-17'",df2bis9,242 +df3 = pd.read_sql_query("SELECT date FROM test", engine,df311,376 + parse_dates=['date'])parse_dates12,433 -parse_gs.py,2165 -import pandas as pdpd1,0 -import pdbpdb2,20 -import rere3,31 -import osos4,41 -data_dir = "/home/share/CorpCDOs/data/swaptions/GS swaptions"data_dir6,52 -all_df = {}all_df7,114 -fwd_index = []fwd_index8,126 - full_path = os.path.join(data_dir, index + " swaptions")full_path10,168 - flag = Falseflag13,359 - masterdf = {}masterdf14,384 - line = line.decode('utf-8', 'ignore')line16,438 - line = line.rstrip()line17,492 - m = re.search("(IG|HY)(\d{2}) 5y SWAPTION (?:♦GRANULAR♦ )?(?:UPDATE|CLOSES) - Ref\D+(.+)$", line)m18,529 - indextype = m.groups()[0]indextype20,669 - series = int(m.groups()[1])series21,715 - refspread = float(m.groups()[2])refspread26,997 - quotedate = pd.to_datetime(line[4:])quotedate29,1125 - m = re.match("Expiry (\d{2}\w{3}\d{2}) \((?:([\S]+) )?([\S]+)\)", line)m32,1257 - date = pd.to_datetime(date, format='%d%b%y')date35,1436 - flag = Trueflag38,1577 - r = []r39,1609 - vals = re.sub(" +", " ", line).split(" ")vals43,1719 - cols = ['Strike', 'Sprd', 'Pay', 'DeltaPay', 'Rec', 'Vol',cols54,2161 - cols = ['Strike', 'Pay', 'DeltaPay', 'Rec', 'Vol',cols57,2342 - df = pd.DataFrame.from_records(r, columns = cols)df59,2485 - d = {'quotedate': quotedate,d67,2986 - flag = Falseflag79,3546 - r = []r80,3583 -all_df = pd.concat(all_df, names = ['quotedate', 'index', 'series'])all_df83,3734 -index_df = pd.DataFrame(fwd_index)index_df86,3870 -all_df = all_df.rename(columns={'Strike':'strike',all_df89,3939 -index_df = index_df.drop_duplicates(['quotedate', 'index', 'series', 'expiry'])index_df101,4475 -from db import dbenginedbengine104,4572 -serenitasdb = dbengine('serenitasdb')serenitasdb105,4596 -conn = serenitasdb.raw_connection()conn106,4634 - "ON CONFLICT DO NOTHING"sqlstr115,5095 +experiments/test_asyncpg.py,169 +async def dbconn():dbconn5,47 +async def get_singlenames_quotes_async(indexname, date):get_singlenames_quotes_async10,235 +loop = asyncio.get_event_loop()loop20,627 -backfill_cds.py,864 -import osos1,0 -import commoncommon2,10 -import csvcsv3,24 -import datetimedatetime4,35 -from db import serenitasdbserenitasdb5,51 -import pdbpdb6,78 -import psycopg2psycopg28,139 +backfill_cds.py,676 def convert(x):convert10,156 sqlstr = "select markit_ticker, cds_curve from index_members(%s, %s)"sqlstr16,238 basedir = "/home/share/CorpCDOs/Scenarios/Calibration"basedir21,449 @@ -1954,9 +8970,7 @@ tenors = [str(i)+'Y' for i in [1, 2, 3, 4, 5, 7, 10]]tenors27,749 c = serenitasdb.cursor()c33,941 toinsert = [(date, ticker, convert(line[tenor]), convert(line[tenor]),toinsert37,1065 -markit_tranches.py,609 -import pandas as pdpd1,0 -from db import dbenginedbengine2,20 +markit_tranches.py,544 engine = dbengine("serenitasdb")engine4,45 df = {}df5,78 sheets = ["AskClose", "Close", "BidClose"]sheets6,86 @@ -1967,22 +8981,12 @@ df = df.unstack(level=0).stack(level=0).reset_index(level=1)df12,378 tranche_quotes = df.join(index_quotes)tranche_quotes20,813 index_label='quotedate')index_label27,1292 -common.py,166 -import osos1,0 +common.py,149 root = "//WDsentinel/share/CorpCDOs"root4,30 root = '/home/share/CorpCDOs'root6,96 def sanitize_float(intex_float):sanitize_float8,131 -futures.py,1367 -import jsonjson1,0 -import datetimedatetime2,13 -import requestsrequests3,30 -from common import rootroot4,47 -import syssys5,72 -import osos6,84 -import pytzpytz7,95 -from quantlib.time.date import DateDate8,108 -from quantlib.time import immimm9,145 +futures.py,1105 ticker = "GE"ticker11,178 monthcodes = ["F", "G", "H", "J", "K", "M", "N", "Q", "U", "V", "X", "Z"]monthcodes12,193 def nextIMMDates(startdate, length = 8):nextIMMDates14,270 @@ -2000,11 +9004,7 @@ central = pytz.timezone('US/Central')central55,1754 tradedate = datetime.datetime.strptime(q['tradeDate'],tradedate60,2057 tradedate = central.localize(tradedate)tradedate62,2200 -optim_alloc.py,611 -import cvxpycvxpy1,0 -import numpy as npnp2,13 -import mathmath3,32 -from matplotlib import pyplot as pltplt4,44 +optim_alloc.py,493 def cor2cov(Rho, vol):cor2cov7,106 def rho(sigma, delta, volF):rho10,175 def resid_vol(rho, delta, volF):resid_vol14,329 @@ -2016,65 +9016,17 @@ def plot_allocation(W, fund_return, fund_vol):plot_allocation60,2146 delta = {'CLO': 0.4,delta82,2810 mu = np.array([0.01, 0.075, 0.065, 0.25])mu85,2890 -download_markit_quotes.py,1610 -import seleniumselenium1,0 -from selenium.webdriver import Firefox, PhantomJS, FirefoxProfileFirefox2,16 -from selenium.webdriver import Firefox, PhantomJS, FirefoxProfilePhantomJS2,16 -from selenium.webdriver import Firefox, PhantomJS, FirefoxProfileFirefoxProfile2,16 -from selenium.webdriver.common.action_chains import ActionChainsActionChains3,82 -from selenium.webdriver.common.by import ByBy4,147 -from selenium.webdriver.support.ui import WebDriverWaitWebDriverWait5,191 -from selenium.webdriver.support import expected_conditions as ECEC6,247 -from selenium.webdriver.support.ui import WebDriverWaitWebDriverWait7,312 -from selenium.common.exceptions import TimeoutExceptionTimeoutException8,368 -import time, os, shutiltime10,425 -import time, os, shutilos10,425 -import time, os, shutilshutil10,425 -from task_server.config import markit_login, markit_passwordmarkit_login11,449 -from task_server.config import markit_login, markit_passwordmarkit_password11,449 -from task_server.insert_tranche_quotes import insert_quotesinsert_quotes12,510 -import logginglogging13,570 -import syssys14,585 +download_markit_quotes.py,484 level=logging.INFO,level17,687 format='%(asctime)s %(message)s')format18,727 profile = FirefoxProfile()profile21,871 driver = Firefox(profile)driver27,1181 -menu = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR,menu35,1688 -hiddenmenu = WebDriverWait(driver, 10).until(hiddenmenu38,1936 - link = WebDriverWait(driver, 10).until(EC.element_to_be_clickable(link46,2272 -total_wait = 0total_wait57,2689 +menu = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR,menu34,1586 +hiddenmenu = WebDriverWait(driver, 10).until(hiddenmenu38,1806 + link = WebDriverWait(driver, 10).until(EC.element_to_be_clickable(link46,2142 +total_wait = 0total_wait57,2559 -load_cf.py,3298 -import osos1,0 -import os.pathos2,11 -import os.pathpath2,11 -import pandas as pdpd3,27 -from pandas.tseries.offsets import BDay, DateOffsetBDay4,48 -from pandas.tseries.offsets import BDay, DateOffsetDateOffset4,48 -import numpy as npnp5,101 -from intex_scenarios import dealname_from_cusipdealname_from_cusip7,123 -from zipfile import ZipFileZipFile8,172 -import re, datetime, yamlre9,201 -import re, datetime, yamldatetime9,201 -import re, datetime, yamlyaml9,201 -from db import query_db, connquery_db11,230 -from db import query_db, connconn11,230 -from quantlib.time.api import Schedule, Actual360, Period, Months, Calendar, Unadjusted, ModifiedFollowing, DateSchedule12,261 -from quantlib.time.api import Schedule, Actual360, Period, Months, Calendar, Unadjusted, ModifiedFollowing, DateActual36012,261 -from quantlib.time.api import Schedule, Actual360, Period, Months, Calendar, Unadjusted, ModifiedFollowing, DatePeriod12,261 -from quantlib.time.api import Schedule, Actual360, Period, Months, Calendar, Unadjusted, ModifiedFollowing, DateMonths12,261 -from quantlib.time.api import Schedule, Actual360, Period, Months, Calendar, Unadjusted, ModifiedFollowing, DateCalendar12,261 -from quantlib.time.api import Schedule, Actual360, Period, Months, Calendar, Unadjusted, ModifiedFollowing, DateUnadjusted12,261 -from quantlib.time.api import Schedule, Actual360, Period, Months, Calendar, Unadjusted, ModifiedFollowing, DateModifiedFollowing12,261 -from quantlib.time.api import Schedule, Actual360, Period, Months, Calendar, Unadjusted, ModifiedFollowing, DateDate12,261 -from quantlib.util.converter import pydate_to_qldate, qldate_to_pydatepydate_to_qldate13,375 -from quantlib.util.converter import pydate_to_qldate, qldate_to_pydateqldate_to_pydate13,375 -from quantlib.settings import SettingsSettings14,447 -from yieldcurve import YCYC15,487 -from optimization import KLfitKLfit16,514 -import rpy2.robjects as rorpy217,546 -import rpy2.robjects as roro17,546 -import syssys18,574 +load_cf.py,1271 root = "//WDsentinel/share/CorpCDOs"root21,608 root = '/home/share/CorpCDOs'root23,676 def sanitize_float(string):sanitize_float25,713 |
