From 5856a8c8065272592601957979e05edf5fd47393 Mon Sep 17 00:00:00 2001 From: Jakob Gamper <97gamjak@gmail.com> Date: Fri, 1 Mar 2024 02:55:04 +0100 Subject: [PATCH] xlsx reader improved - still a long way to go --- data/basic_info.csv | 2 +- data/calendar.csv | 346 +- notebooks/10k.ipynb | 2216 +--------- notebooks/10k_xlsx_problems.txt | 3849 +++++------------ notebooks/btc_trade.ipynb | 39 +- notebooks/current_assets_coverage_ratio.png | Bin 0 -> 37782 bytes notebooks/dynamic_gearing.png | Bin 0 -> 37904 bytes notebooks/equity_ratio.png | Bin 0 -> 43632 bytes notebooks/gearing.png | Bin 0 -> 42946 bytes notebooks/goodwill.png | Bin 0 -> 33546 bytes notebooks/netto_margin.png | Bin 0 -> 40900 bytes notebooks/pbg.png | Bin 0 -> 30248 bytes notebooks/peg.png | Bin 0 -> 36439 bytes notebooks/pfcg.png | Bin 0 -> 34108 bytes notebooks/prg.png | Bin 0 -> 35892 bytes notebooks/ranking.ipynb | 547 ++- notebooks/ranking_contracts.csv | 504 +++ notebooks/return_on_assets.png | Bin 0 -> 41663 bytes notebooks/third_order_liquidity.png | Bin 0 -> 38040 bytes .../core/financialStatement/balance.py | 4 +- stockMarket/sec_edgar/downloader.py | 7 +- .../sec_edgar/financialReportReader.py | 141 +- 22 files changed, 2215 insertions(+), 5440 deletions(-) create mode 100644 notebooks/current_assets_coverage_ratio.png create mode 100644 notebooks/dynamic_gearing.png create mode 100644 notebooks/equity_ratio.png create mode 100644 notebooks/gearing.png create mode 100644 notebooks/goodwill.png create mode 100644 notebooks/netto_margin.png create mode 100644 notebooks/pbg.png create mode 100644 notebooks/peg.png create mode 100644 notebooks/pfcg.png create mode 100644 notebooks/prg.png create mode 100644 notebooks/ranking_contracts.csv create mode 100644 notebooks/return_on_assets.png create mode 100644 notebooks/third_order_liquidity.png diff --git a/data/basic_info.csv b/data/basic_info.csv index 88c833c7..d8b24033 100644 --- a/data/basic_info.csv +++ b/data/basic_info.csv @@ -1,4 +1,4 @@ -2024-02-28T01:00:55.774822 +2024-02-29T23:10:29.064790 ,Long Name,Sector,Price,Trailing PE,Forward PE,Market Cap,Dividend Yield,Payout Ratio MMM,3M Company,Industrials,91.86,,8.928571,50433.875968,6.54,61.67 AOS,A. O. Smith Corporation,Industrials,80.74,21.704605,18.496534,11788.848128,1.5800001,33.060002 diff --git a/data/calendar.csv b/data/calendar.csv index 96529fe8..c4f18f22 100644 --- a/data/calendar.csv +++ b/data/calendar.csv @@ -1,4 +1,4 @@ -2024-02-28T01:00:56.110480 +2024-02-29T23:10:29.436304 ,Earnings Dates,Ex-Dividend Dates,Pays Dividend MMM,2024-04-23,,True AOS,,,True @@ -190,7 +190,7 @@ EXPD,,,True EXR,,,True XOM,,,True FFIV,,,True -FDS,2024-03-21,2024-02-28,True +FDS,2024-03-21,,True FICO,2024-04-25,,True FAST,,,True FRT,,,True @@ -222,7 +222,7 @@ GPC,,,True GILD,2024-04-25,2024-03-14,True GPN,,,True GL,,,True -GS,2024-04-16,2024-02-28,True +GS,2024-04-16,,True HAL,2024-04-23,2024-03-05,True HIG,,,True HAS,,,True @@ -239,7 +239,7 @@ HON,2024-04-25,2024-02-29,True HRL,2024-02-29,,True HST,,,True HWM,,,True -HPQ,2024-02-28,2024-03-12,True +HPQ,,2024-03-12,True HUBB,,,True HUM,2024-04-24,2024-03-27,True HBAN,2024-04-18,2024-03-15,True @@ -346,7 +346,7 @@ NSC,,,True NTRS,2024-04-16,2024-03-07,True NOC,2024-04-25,,True NCLH,,,True -NRG,2024-02-28,,True +NRG,,,True NUE,,,True NVDA,,,True NVR,,,True @@ -409,7 +409,7 @@ ROP,2024-04-25,,True ROST,,,True RCL,,,True SPGI,2024-04-25,,True -CRM,2024-02-28,,True +CRM,,,True SBAC,,,True SLB,2024-04-19,,True STX,2024-04-18,2024-03-20,True @@ -445,7 +445,7 @@ TSLA,,,True TXN,,,True TXT,2024-04-25,,True TMO,,,True -TJX,2024-02-28,,True +TJX,,,True TSCO,,,True TT,,,True TDG,,,True @@ -458,7 +458,7 @@ USB,2024-04-17,,True UBER,,,True UDR,,,True ULTA,2024-03-14,,True -UNP,2024-04-18,2024-02-28,True +UNP,2024-04-18,,True UAL,2024-04-16,,True UPS,,,True URI,2024-04-24,,True @@ -472,7 +472,7 @@ VRSK,2024-05-01,,True VZ,2024-04-22,,True VRTX,2024-04-29,,True VFC,,,True -VTRS,2024-02-28,,True +VTRS,,,True VICI,,,True V,2024-04-23,,True VMC,,2024-03-01,True @@ -505,7 +505,7 @@ ZION,2024-04-22,,True ZTS,,,True AADI,2024-03-26,,True AAN,,,True -AAON,2024-02-28,,True +AAON,,,True AAT,2024-04-23,2024-03-06,True ABCB,2024-04-25,,True ABCL,2024-05-02,,True @@ -519,22 +519,22 @@ ACA,,,True ACAD,,,True ACCD,2024-04-25,,True ACCO,,2024-03-14,True -ACEL,2024-02-28,,True +ACEL,,,True ACET,2024-03-13,,True ACHR,,,True ACIW,2024-02-29,,True ACLS,2024-05-01,,True ACLX,,,True -ACMR,2024-02-28,,True +ACMR,,,True ACNB,2024-04-25,2024-02-29,True ACRE,,,True ACRS,,,True ACRV,,,True ACT,2024-05-01,,True ACVA,2024-05-08,,True -ADC,2024-05-02,2024-02-28,True +ADC,2024-05-02,,True ADEA,2024-05-06,,True -ADMA,2024-02-28,,True +ADMA,,,True ADNT,,,True ADPT,2024-05-01,,True ADTH,2024-02-29,,True @@ -555,8 +555,8 @@ AGX,2024-04-10,,True AGYS,2024-05-14,,True AHCO,,,True AHH,,2024-03-26,True -AHT,2024-02-28,,True -AI,2024-02-28,,True +AHT,,,True +AI,,,True AIN,,,True AIP,2024-05-02,,True AIR,2024-03-19,,True @@ -571,13 +571,13 @@ AKYA,2024-03-04,,True ALCO,2024-05-02,,True ALE,2024-05-01,,True ALEC,,,True -ALEX,2024-02-28,,True +ALEX,,,True ALG,,,True ALGT,2024-05-01,,True ALHC,,,True ALIT,2024-05-07,,True ALKS,,,True -ALKT,2024-02-28,,True +ALKT,,,True ALLO,,,True ALPN,2024-03-21,,True ALRM,,,True @@ -598,12 +598,12 @@ AMKR,2024-04-29,2024-03-11,True AMLX,,,True AMN,2024-05-02,,True AMNB,2024-04-23,,True -AMPH,2024-02-28,,True +AMPH,,,True AMPL,,,True AMPS,2024-03-14,,True AMPY,2024-03-07,,True AMR,,,True -AMRC,2024-02-28,,True +AMRC,,,True AMRK,2024-05-07,,True AMRX,2024-02-29,,True AMSF,,,True @@ -612,7 +612,7 @@ AMTB,2024-04-18,,True AMTX,2024-03-07,,True AMWD,2024-02-29,,True AMWL,2024-05-01,,True -ANAB,2024-02-28,,True +ANAB,,,True ANDE,2024-04-30,2024-03-28,True ANF,2024-03-06,,True ANGO,2024-03-28,,True @@ -624,20 +624,20 @@ AORT,2024-05-02,,True AOSL,2024-05-02,,True APAM,2024-04-30,,True APEI,2024-03-05,,True -APG,2024-02-28,,True +APG,,,True APLD,2024-04-08,,True -APLE,,2024-02-28,True +APLE,,,True APLS,,,True APOG,2024-04-10,,True APPF,2024-04-25,,True APPN,2024-05-07,,True APPS,,,True ARCB,2024-04-26,,True -ARCH,2024-04-25,2024-02-28,True +ARCH,2024-04-25,,True ARCT,2024-03-07,,True AREN,2024-03-14,,True ARI,2024-04-24,,True -ARIS,2024-02-28,,True +ARIS,,,True ARKO,,,True ARL,2024-03-21,,True ARLO,2024-02-29,,True @@ -651,13 +651,13 @@ ARVN,,,True ARWR,2024-04-30,,True ASAN,2024-03-11,,True ASB,2024-04-18,2024-02-29,True -ASC,2024-05-07,2024-02-28,True +ASC,2024-05-07,,True ASGN,2024-04-24,,True ASIX,2024-05-03,2024-03-01,True ASLE,2024-03-07,,True ASO,2024-03-14,,True ASPN,2024-05-01,,True -ASTE,2024-02-28,,True +ASTE,,,True ASTR,2024-03-28,,True ATEC,,,True ATEN,2024-05-02,,True @@ -674,7 +674,7 @@ ATOM,2024-04-24,,True ATRA,,,True ATRC,2024-04-30,,True ATRI,,,True -ATRO,2024-02-28,,True +ATRO,,,True ATSG,,,True AUB,2024-04-23,,True AUPH,2024-05-02,,True @@ -683,8 +683,8 @@ AVA,2024-05-01,,True AVAH,2024-03-14,,True AVAV,2024-03-04,,True AVD,2024-03-11,,True -AVDX,2024-02-28,,True -AVIR,2024-02-28,,True +AVDX,,,True +AVIR,,,True AVNS,2024-05-01,,True AVNT,2024-05-01,2024-03-18,True AVNW,2024-05-01,,True @@ -741,13 +741,13 @@ CCRN,2024-05-01,,True CCS,2024-04-24,,True CCSI,2024-05-09,,True CDE,,,True -CDLX,2024-02-28,,True +CDLX,,,True CDMO,2024-03-11,,True CDNA,,,True CDRE,2024-03-11,,True -CDXS,2024-02-28,,True +CDXS,,,True CEIX,2024-04-30,,True -CELH,2024-02-28,,True +CELH,,,True CELU,2024-03-29,,True CENN,,,True CENT,2024-05-01,,True @@ -772,7 +772,7 @@ CIO,,,True CISO,,,True CIVB,2024-04-26,,True CIVI,,,True -CIX,2024-02-28,,True +CIX,,,True CLAR,2024-03-07,,True CLBK,2024-04-24,,True CLDT,,,True @@ -806,8 +806,8 @@ CNSL,2024-03-05,,True CNTY,2024-03-08,,True CNX,2024-04-25,,True CNXN,2024-05-02,,True -COCO,2024-02-28,,True -CODI,2024-02-28,,True +COCO,,,True +CODI,,,True COGT,2024-03-12,,True COHU,2024-05-02,,True COKE,2024-05-01,,True @@ -820,9 +820,9 @@ COOP,2024-04-24,,True CORT,2024-05-01,,True COUR,2024-04-25,,True CPE,,,True -CPF,2024-04-24,2024-02-28,True +CPF,2024-04-24,,True CPK,,2024-03-14,True -CPRX,2024-02-28,,True +CPRX,,,True CPSI,,,True CPSS,2024-03-07,,True CPTN,2024-03-12,,True @@ -835,7 +835,7 @@ CRGY,2024-03-04,,True CRK,2024-04-30,,True CRMT,2024-03-08,,True CRNC,2024-05-07,,True -CRNX,2024-02-28,,True +CRNX,,,True CROX,2024-04-25,,True CRS,2024-04-25,,True CRSR,2024-05-08,,True @@ -843,13 +843,13 @@ CRVL,,,True CSGS,2024-05-01,2024-03-14,True CSR,2024-04-29,2024-03-27,True CSTE,2024-05-08,,True -CSTL,2024-02-28,,True +CSTL,,,True CSTM,,,True CSTR,,,True CSV,,,True CSWI,,,True CTBI,2024-04-17,,True -CTKB,2024-02-28,,True +CTKB,,,True CTLP,2024-05-02,,True CTO,,2024-03-13,True CTOS,2024-03-12,,True @@ -881,7 +881,7 @@ DAWN,,,True DBI,2024-03-14,,True DBRG,2024-05-01,,True DC,,,True -DCGO,2024-02-28,,True +DCGO,,,True DCO,2024-05-02,,True DCOM,2024-04-26,,True DCPH,2024-05-01,,True @@ -897,15 +897,15 @@ DHC,,,True DHIL,2024-02-29,,True DHT,2024-05-01,,True DHX,2024-05-08,,True -DIBS,2024-02-28,,True -DIN,2024-02-28,,True +DIBS,,,True +DIN,,,True DIOD,2024-05-07,,True DJCO,2024-05-13,,True DK,,2024-02-29,True DLTH,2024-03-07,,True DLX,2024-05-02,,True -DM,2024-02-28,,True -DMRC,2024-02-28,,True +DM,,,True +DMRC,,,True DNLI,,,True DNMR,2024-03-26,,True DNOW,2024-05-02,,True @@ -925,12 +925,12 @@ DSGR,2024-03-07,,True DSKE,,,True DSP,2024-03-04,,True DTC,2024-03-09,,True -DUOL,2024-02-28,,True +DUOL,,,True DVAX,,,True DX,2024-04-22,,True DXLG,2024-03-21,,True DXPE,2024-04-12,,True -DY,2024-02-28,,True +DY,,,True DYN,2024-02-29,,True DZSI,,,True EAF,2024-04-26,,True @@ -941,10 +941,10 @@ EBF,2024-04-22,,True EBS,,,True EBTC,2024-04-23,,True ECPG,2024-05-01,,True -ECVT,2024-02-28,,True -EDIT,2024-02-28,,True -EE,2024-02-28,,True -EFC,,2024-02-28,True +ECVT,,,True +EDIT,,,True +EE,,,True +EFC,,,True EFSC,2024-04-22,2024-03-14,True EGAN,2024-05-09,,True EGBN,2024-04-17,,True @@ -959,7 +959,7 @@ EIGR,2024-03-14,,True ELF,,,True ELME,2024-04-25,2024-03-19,True EMBC,2024-05-10,,True -EME,2024-02-28,,True +EME,,,True ENFN,2024-03-12,,True RENB,2024-05-10,,True ENR,2024-05-06,,True @@ -995,7 +995,7 @@ EVGO,2024-03-06,,True EVH,,,True EVLV,2024-02-29,,True EVRI,2024-02-29,,True -EVTC,2024-02-28,,True +EVTC,,,True EWCZ,2024-03-06,,True EWTX,,,True EXLS,2024-02-29,,True @@ -1036,12 +1036,12 @@ FGBI,2024-04-24,,True FGEN,,,True FHI,2024-04-25,,True FHTX,2024-03-09,,True -FIGS,2024-02-28,,True +FIGS,,,True FISI,2024-04-24,2024-03-14,True FIX,,,True FIZZ,2024-03-07,,True FL,2024-03-06,,True -FLGT,2024-02-28,,True +FLGT,,,True FLIC,2024-04-25,,True FLL,2024-03-05,,True FLNC,2024-05-11,,True @@ -1057,7 +1057,7 @@ FNA,,,True FNKO,2024-03-07,,True FNLC,2024-04-17,,True FOA,2024-03-11,,True -FOLD,2024-02-28,,True +FOLD,,,True FOR,2024-04-18,,True FORM,2024-05-01,,True FORR,2024-05-02,,True @@ -1077,13 +1077,13 @@ FSP,,,True FSR,,,True FSS,,2024-03-14,True FTCI,,,True -FTDR,2024-02-28,,True +FTDR,,,True FUBO,2024-03-01,,True FUL,2024-03-27,,True FULC,,,True FULT,2024-04-16,,True FVCB,2024-04-18,,True -FWRD,2024-02-28,,True +FWRD,,,True FWRG,2024-03-05,,True FXLV,2024-03-14,,True GABC,2024-04-22,,True @@ -1099,12 +1099,12 @@ GCO,,,True GDEN,2024-02-29,,True GDOT,,,True GDYN,,,True -GEF,2024-02-28,,True +GEF,,,True GEO,2024-04-23,,True -GERN,2024-02-28,,True +GERN,,,True GES,2024-03-12,,True GEVO,2024-03-07,,True -GFF,2024-05-01,2024-02-28,True +GFF,2024-05-01,,True GHC,,,True GIC,,,True GIII,2024-03-14,,True @@ -1121,8 +1121,8 @@ GNL,,,True GNTY,2024-04-15,,True GNW,,,True GOEV,2024-03-28,,True -GOGL,2024-02-28,,True -GOGO,2024-02-28,,True +GOGL,,,True +GOGO,,,True GOLF,2024-02-29,,True GOOD,,2024-03-20,True GOSS,2024-03-15,,True @@ -1136,11 +1136,11 @@ GRC,2024-04-25,,True GREE,,,True GRPN,2024-03-14,,True GRWG,2024-03-13,,True -GSAT,2024-02-28,,True +GSAT,,,True GSBC,2024-04-20,,True GSHD,2024-04-24,,True GT,2024-05-02,,True -GTLS,2024-02-28,,True +GTLS,,,True GTN,,,True GTY,2024-04-24,2024-03-27,True GVA,,,True @@ -1179,7 +1179,7 @@ HLGN,2024-03-25,,True HLI,2024-05-07,2024-02-29,True HLIO,,,True HLIT,2024-05-06,,True -HLLY,2024-02-28,,True +HLLY,,,True HLMN,,,True HLNE,,2024-03-14,True HLTH,2024-03-13,,True @@ -1225,7 +1225,7 @@ IBCP,2024-04-25,,True IBEX,2024-05-15,,True IBOC,,,True IBP,,,True -IBRX,2024-02-28,,True +IBRX,,,True IBTX,2024-04-22,,True ICFI,,,True ICHR,2024-05-07,,True @@ -1244,7 +1244,7 @@ IIIV,2024-05-07,,True IIPR,,,True ILPT,2024-04-23,,True IMAX,,,True -IMGN,2024-02-28,,True +IMGN,,,True IMKTA,2024-05-02,,True IMVT,2024-05-13,,True IMXI,,,True @@ -1254,7 +1254,7 @@ INDB,2024-04-18,,True INDI,,,True INFN,2024-03-06,,True INGN,,,True -INN,2024-02-28,,True +INN,,,True INNV,2024-05-07,,True INO,2024-03-06,,True INSE,,,True @@ -1266,7 +1266,7 @@ INSW,2024-02-29,,True INTA,2024-05-06,,True INVA,,,True INVE,2024-02-29,,True -IONQ,2024-02-28,,True +IONQ,,,True IOSP,2024-05-01,,True IOVA,,,True IPAR,,,True @@ -1289,7 +1289,7 @@ IVT,2024-04-25,,True IVVD,,,True JACK,2024-05-15,,True JANX,2024-03-10,,True -JBI,2024-02-28,,True +JBI,,,True JBSS,2024-04-30,,True JBT,2024-04-23,,True JELD,2024-05-06,,True @@ -1299,7 +1299,7 @@ JOAN,2024-03-21,,True JOBY,,,True JOE,2024-04-24,,True JOUT,2024-05-03,,True -JRVR,2024-02-28,,True +JRVR,,,True JXN,,,True JYNT,2024-03-07,,True KAI,2024-04-30,,True @@ -1319,10 +1319,10 @@ KN,2024-04-25,,True KNSA,,,True KNSL,2024-04-25,,True KNTE,2024-03-13,,True -KNTK,2024-02-28,,True +KNTK,,,True KOD,2024-03-26,,True KODK,2024-03-14,,True -KOP,2024-02-28,2024-03-07,True +KOP,,2024-03-07,True KORE,2024-03-11,,True KOS,,,True KPTI,,,True @@ -1336,7 +1336,7 @@ KRT,2024-03-14,,True KRTX,,,True KRUS,2024-04-02,,True KRYS,,,True -KTB,2024-02-28,2024-03-07,True +KTB,,2024-03-07,True KTOS,2024-05-01,,True KURA,,,True KW,,,True @@ -1360,7 +1360,7 @@ LE,2024-03-14,,True LEGH,2024-03-13,,True LEU,2024-05-06,,True LFCR,2024-03-14,,True -LFST,2024-02-28,,True +LFST,,,True LGIH,2024-04-30,,True LGND,,,True LICY,,,True @@ -1369,7 +1369,7 @@ LILA,,,True LIND,,,True LIVN,2024-05-01,,True LKFN,2024-04-25,,True -LL,2024-02-28,,True +LL,,,True LLAP,,,True LMAT,,,True LMND,,,True @@ -1382,17 +1382,17 @@ LOCO,2024-03-07,,True LOVE,2024-03-26,,True LPG,,,True LPRO,,,True -LPSN,2024-02-28,,True +LPSN,,,True LQDA,2024-03-14,,True LQDT,2024-05-02,,True LRN,2024-04-23,,True LSEA,2024-02-29,,True LTC,2024-04-25,2024-03-20,True LTCH,,,True -LTH,2024-02-28,,True +LTH,,,True LUNG,2024-04-30,,True LVLU,2024-03-06,,True -LWLG,2024-02-28,,True +LWLG,,,True LXFR,,,True LXP,2024-05-01,,True LXRX,2024-02-29,,True @@ -1402,13 +1402,13 @@ LZ,,,True LZB,,2024-03-04,True MAC,2024-05-02,,True MAPS,,,True -MARA,2024-02-28,,True +MARA,,,True MASS,2024-03-05,,True MATV,,,True MATW,2024-04-25,,True MATX,2024-05-02,,True MAX,2024-05-02,,True -MBI,2024-02-28,,True +MBI,,,True MBIN,2024-04-25,2024-03-14,True MBUU,2024-05-01,,True MBWM,2024-04-16,2024-02-29,True @@ -1425,7 +1425,7 @@ MD,2024-04-30,,True MDC,2024-04-30,,True MDGL,,,True MDRX,,,True -MDXG,2024-02-28,,True +MDXG,,,True ME,,,True MED,2024-04-29,,True MEDP,2024-04-22,,True @@ -1434,7 +1434,7 @@ MEI,2024-03-07,,True METC,2024-03-06,2024-02-29,True MFA,,,True MGEE,2024-05-02,2024-02-29,True -MGNI,2024-02-28,,True +MGNI,,,True MGNX,2024-03-13,,True MGPI,,,True MGRC,2024-05-02,,True @@ -1442,12 +1442,12 @@ MGTX,2024-03-12,,True MGY,2024-05-01,,True MHO,2024-04-24,,True MIR,2024-05-01,,True -MIRM,2024-02-28,,True +MIRM,,,True MITK,,,True MKFG,2024-03-07,,True MKTW,2024-03-25,,True ML,2024-03-07,,True -MLAB,,2024-02-28,True +MLAB,,,True MLI,2024-04-23,,True MLKN,2024-03-20,2024-02-29,True MLNK,2024-03-05,,True @@ -1455,7 +1455,7 @@ MLR,2024-03-06,,True MLYS,,,True MMI,2024-05-03,2024-03-11,True MMS,2024-05-01,,True -MMSI,2024-02-28,,True +MMSI,,,True MNKD,,,True MNRO,2024-05-16,2024-03-07,True MNTK,2024-03-14,,True @@ -1471,9 +1471,9 @@ MPAA,,,True MPB,2024-04-26,,True MPLN,2024-02-29,,True MPX,2024-04-24,,True -MQ,2024-02-28,,True +MQ,,,True MRC,2024-05-06,,True -MRSN,2024-02-28,,True +MRSN,,,True MRTN,2024-04-16,2024-03-14,True MSBI,2024-04-25,,True MSEX,,,True @@ -1499,13 +1499,13 @@ MYE,2024-03-05,,True MYFW,2024-04-25,,True MYGN,,,True MYPS,,,True -MYRG,2024-02-28,,True +MYRG,,,True NABL,,,True NAPA,2024-03-06,,True -NARI,2024-02-28,,True +NARI,,,True NAT,,,True NATR,2024-03-12,,True -NAUT,2024-02-28,,True +NAUT,,,True NAVI,2024-04-24,2024-02-29,True NBHC,2024-04-17,,True NBN,2024-04-22,,True @@ -1540,7 +1540,7 @@ NODK,2024-03-06,,True NOG,,2024-03-27,True NOTV,2024-05-09,,True NOVA,,,True -NOVT,2024-02-28,,True +NOVT,,,True NPK,2024-05-06,2024-02-29,True NPO,2024-04-30,2024-03-05,True NR,,,True @@ -1582,7 +1582,7 @@ OCFC,2024-04-18,,True OCGN,,,True OCTO,,,True OCUL,2024-03-04,,True -ODP,2024-02-28,,True +ODP,,,True OEC,2024-05-02,,True OFG,2024-04-18,2024-03-27,True OFIX,2024-03-05,,True @@ -1613,7 +1613,7 @@ OPRT,2024-03-11,,True OPRX,,,True OPY,2024-04-26,,True ORA,,,True -ORC,2024-04-25,2024-02-28,True +ORC,2024-04-25,,True ORGN,2024-02-29,,True ORGO,2024-02-29,,True ORRF,2024-04-23,,True @@ -1622,7 +1622,7 @@ OSCR,2024-05-07,,True OSIS,2024-04-24,,True OSPN,2024-03-06,,True OSUR,,,True -OSW,2024-02-28,,True +OSW,,,True OTLK,2024-05-13,,True OTTR,2024-04-29,,True OUST,2024-03-21,,True @@ -1634,8 +1634,8 @@ PAHC,2024-05-01,2024-03-05,True PAR,,,True PARR,,,True PATK,2024-04-25,,True -PAYO,2024-02-28,,True -PBF,2024-05-03,2024-02-28,True +PAYO,,,True +PBF,2024-05-03,,True PBFS,2024-05-03,,True PBH,2024-05-02,,True PBI,2024-05-02,,True @@ -1646,18 +1646,18 @@ PCT,2024-02-29,,True PCVX,,,True PCYO,2024-04-10,,True PD,2024-03-14,,True -PDCO,2024-02-28,,True +PDCO,,,True PDFS,2024-05-07,,True PDM,2024-04-29,,True PEB,,,True PEBO,2024-04-23,,True PECO,2024-04-30,,True PEPG,,,True -PETQ,2024-02-28,,True +PETQ,,,True PETS,2024-05-20,,True PFBC,2024-04-16,,True PFC,2024-04-23,,True -PFIS,2024-04-25,2024-02-28,True +PFIS,2024-04-25,,True PFS,2024-04-25,,True PFSI,2024-04-25,,True PGC,2024-04-23,,True @@ -1681,16 +1681,16 @@ PLCE,2024-03-14,,True PLL,,,True PLMR,2024-05-01,,True PLOW,,,True -PLPC,2024-02-28,,True +PLPC,,,True PLUS,,,True PLXS,2024-04-24,,True PLYM,,,True PMT,2024-04-25,,True -PMVP,2024-02-28,,True +PMVP,,,True PNM,,,True -PNTG,2024-02-28,,True +PNTG,,,True POR,2024-04-26,2024-03-21,True -POWI,2024-05-02,2024-02-28,True +POWI,2024-05-02,,True POWL,2024-04-30,,True POWW,,,True PPBI,2024-04-25,,True @@ -1735,7 +1735,7 @@ PZZA,2024-02-29,,True QCRH,2024-04-24,,True QLYS,2024-05-02,,True QNST,2024-05-01,,True -QRTEA,2024-02-28,,True +QRTEA,,,True QSI,2024-02-29,,True QTRX,,,True QTWO,2024-05-07,,True @@ -1749,7 +1749,7 @@ RBCAA,2024-04-18,2024-03-14,True RBOT,2024-03-04,,True RC,,,True RCKT,,,True -RCKY,2024-02-28,2024-03-01,True +RCKY,,2024-03-01,True RCM,,,True RCUS,2024-05-07,,True RDFN,,,True @@ -1780,7 +1780,7 @@ RIOT,2024-02-29,,True RKLB,,,True RLAY,,,True RLGT,2024-05-08,,True -RLI,2024-04-17,2024-02-28,True +RLI,2024-04-17,,True RLJ,,,True RLMD,2024-03-21,,True RLYB,,,True @@ -1788,7 +1788,7 @@ RM,2024-05-01,,True RMAX,,,True RMBL,2024-03-14,,True RMBS,2024-04-29,,True -RMNI,2024-02-28,,True +RMNI,,,True RMR,2024-04-30,,True RNA,,,True RNST,2024-04-23,2024-03-14,True @@ -1808,10 +1808,10 @@ RUSHA,2024-04-23,,True RUSHB,,,True RVLV,,,True RVMD,,,True -RVNC,2024-02-28,,True +RVNC,,,True RWT,2024-04-25,,True RXRX,,,True -RXST,2024-02-28,,True +RXST,,,True RXT,,,True RYAM,,,True RYI,,,True @@ -1832,7 +1832,7 @@ SB,2024-05-08,2024-02-29,True SBCF,2024-04-25,2024-03-14,True SBGI,,,True SBH,2024-05-02,,True -SBOW,2024-02-28,,True +SBOW,,,True SBRA,,,True SBSI,2024-04-23,,True SBT,2024-04-29,,True @@ -1843,8 +1843,8 @@ SCSC,2024-05-07,,True SCVL,2024-03-20,,True SCWX,2024-03-21,,True SD,2024-03-13,,True -SDGR,2024-02-28,,True -SEAS,2024-02-28,,True +SDGR,,,True +SEAS,,,True SEAT,2024-03-05,,True SEER,2024-02-29,,True SEM,,,True @@ -1866,15 +1866,15 @@ SHAK,2024-05-02,,True SHBI,2024-04-25,,True SHCR,2024-03-27,,True SHEN,2024-04-26,,True -SHLS,2024-02-28,,True +SHLS,,,True SHO,,,True -SHOO,2024-02-28,,True +SHOO,,,True SHYF,,,True SIBN,,,True SIG,2024-03-20,,True SIGA,2024-02-29,,True SIGI,2024-05-01,,True -SILK,2024-02-28,,True +SILK,,,True SITC,2024-04-23,2024-03-13,True SITM,2024-05-01,,True SJW,,,True @@ -1909,9 +1909,9 @@ SNDX,,,True SNEX,2024-05-01,,True SNPO,2024-03-12,,True SOI,,,True -SOND,2024-02-28,,True +SOND,,,True SONO,2024-05-08,,True -SOVO,2024-02-28,,True +SOVO,,,True SP,,,True SPCE,,,True SPFI,2024-04-25,,True @@ -1925,27 +1925,27 @@ SPTN,,,True SPWH,2024-04-10,,True SPWR,2024-05-01,,True SPXC,,,True -SQSP,2024-02-28,,True +SQSP,,,True SR,2024-05-01,2024-03-08,True SRCE,2024-04-18,,True SRDX,2024-04-24,,True -SRI,2024-02-28,,True +SRI,,,True SSB,2024-04-25,,True SSD,2024-04-22,2024-04-03,True SSP,,,True SSTI,,,True -SSTK,2024-04-23,2024-02-28,True +SSTK,2024-04-23,,True STAA,,,True -STAG,2024-04-24,2024-02-28,True +STAG,2024-04-24,,True STBA,2024-04-18,,True STC,2024-04-24,,True STEL,2024-04-26,,True -STEM,2024-02-28,,True -STEP,,2024-02-28,True +STEM,,,True +STEP,,,True STER,2024-03-06,,True STGW,,,True STHO,,,True -STKL,2024-02-28,,True +STKL,,,True STKS,2024-03-07,,True STNE,2024-03-12,,True STNG,2024-04-30,2024-03-07,True @@ -1958,20 +1958,20 @@ STRO,2024-03-28,,True STRS,2024-03-29,,True SUM,2024-05-01,,True SUPN,,,True -SVC,2024-02-28,,True +SVC,,,True SWAV,2024-05-06,,True SWBI,2024-03-07,,True SWI,2024-04-25,,True SWIM,2024-03-12,,True SWKH,2024-04-01,,True SWTX,,,True -SWX,2024-02-28,,True +SWX,,,True SXC,2024-05-02,,True SXI,2024-05-02,,True SXT,2024-04-26,,True SYBT,2024-04-24,2024-03-15,True SYNA,2024-05-01,,True -TALO,2024-02-28,,True +TALO,,,True TARS,,,True TBBK,2024-04-25,,True TBI,2024-04-22,,True @@ -2017,15 +2017,15 @@ TMDX,,,True TMHC,2024-04-24,,True TMP,2024-04-26,,True TMST,,,True -TNC,,2024-02-28,True +TNC,,,True TNET,2024-04-24,2024-03-28,True TNGX,2024-03-25,,True TNK,,,True TNYA,,,True TOI,2024-03-07,,True TOWN,2024-04-25,,True -TPB,2024-02-28,,True -TPC,2024-02-28,,True +TPB,,,True +TPC,,,True TPH,2024-04-25,,True TPIC,,,True TR,2024-04-23,,True @@ -2049,9 +2049,9 @@ TTGT,2024-05-07,,True TTI,,,True TTMI,2024-05-01,,True TTSH,2024-02-29,,True -TUP,2024-02-28,,True +TUP,,,True TVTX,2024-05-02,,True -TWI,2024-02-28,,True +TWI,,,True TWO,2024-04-29,,True TWOU,2024-04-24,,True TWST,2024-05-03,,True @@ -2073,7 +2073,7 @@ UIS,2024-04-30,,True ULCC,2024-05-01,,True ULH,2024-04-25,2024-03-01,True UMBF,2024-04-23,2024-03-08,True -UMH,2024-02-28,,True +UMH,,,True UNF,2024-03-27,2024-03-07,True UNFI,2024-03-06,,True UNIT,2024-02-29,,True @@ -2089,7 +2089,7 @@ USCB,,,True USLM,2024-05-01,,True USM,2024-05-02,,True USNA,2024-04-23,,True -USPH,2024-02-28,,True +USPH,,,True UTI,2024-05-07,,True UTL,2024-04-30,,True UTMD,2024-04-23,2024-03-14,True @@ -2104,7 +2104,7 @@ VBIV,2024-03-11,,True VBTX,2024-04-23,,True VC,2024-04-25,,True VCEL,2024-02-29,,True -VCSA,2024-02-28,,True +VCSA,,,True VCTR,2024-05-02,2024-03-08,True VCYT,,,True VECO,2024-05-06,,True @@ -2115,7 +2115,7 @@ VERU,2024-05-09,,True VERV,,,True VGR,2024-05-06,2024-03-01,True VHI,2024-03-07,,True -VIA,2024-02-28,,True +VIA,,,True VIAV,2024-04-30,,True VICR,,,True VIEW,2024-03-27,,True @@ -2132,17 +2132,17 @@ VRE,,,True VREX,2024-04-30,,True VRNS,2024-04-29,,True VRNT,2024-03-27,,True -VRRM,2024-02-28,,True +VRRM,,,True VRTS,2024-04-26,,True VSEC,2024-03-06,,True VSH,2024-05-08,2024-03-13,True VSTO,2024-05-01,,True VTGN,,,True VTLE,,,True -VTNR,2024-02-28,,True +VTNR,,,True VTOL,2024-03-06,,True VTYX,2024-03-25,,True -VUZI,2024-02-28,,True +VUZI,,,True VVI,2024-05-02,,True VVX,2024-03-05,,True VWE,,,True @@ -2159,20 +2159,20 @@ WEYS,2024-03-05,,True WFRD,2024-04-23,,True WGO,2024-03-20,,True WGS,2024-05-07,,True -WHD,2024-02-28,,True +WHD,,,True WINA,2024-04-17,,True WING,2024-05-01,,True WIRE,2024-04-23,2024-04-04,True WISH,,,True WK,2024-04-30,,True -WKHS,2024-02-28,,True +WKHS,,,True WLDN,2024-03-07,,True WLY,2024-03-07,,True WMK,,,True WNC,2024-04-24,2024-04-03,True WOR,2024-03-20,2024-03-14,True WOW,,,True -WRBY,2024-02-28,,True +WRBY,,,True WRLD,2024-05-02,,True WSBC,2024-04-22,,True WSBF,2024-04-23,,True @@ -2184,7 +2184,7 @@ WTI,2024-03-05,,True WTS,2024-05-01,2024-02-29,True WTTR,2024-04-30,,True WULF,,,True -WW,2024-02-28,,True +WW,,,True WWW,2024-05-08,2024-03-28,True XERS,2024-03-06,,True XHR,,,True @@ -2200,17 +2200,17 @@ XXII,2024-03-07,,True YELP,2024-05-02,,True YEXT,2024-03-05,,True YMAB,2024-02-29,,True -YORW,2024-03-05,2024-02-28,True -YOU,2024-02-28,,True +YORW,2024-03-05,,True +YOU,,,True ZD,,,True ZETA,,,True ZEUS,,,True ZGN,,,True ZIMV,,,True ZIP,,,True -ZNTL,2024-02-28,,True +ZNTL,,,True ZUMZ,2024-03-07,,True -ZUO,2024-02-28,,True +ZUO,,,True ZWS,2024-04-23,,True ZYXI,2024-03-04,,True DAY,,,True @@ -2238,7 +2238,7 @@ RR.L,,,True PUB.PA,,,True DTG.F,2024-03-01,2024-05-16,True OMV.VI,2024-04-30,2024-06-05,True -EDPR.LS,2024-02-28,,True +EDPR.LS,,,True EVO.ST,2024-04-24,,True ATE.PA,,,True INCH.L,2024-03-05,,True @@ -2265,7 +2265,7 @@ LGEN.L,2024-03-06,,True BMW.DE,2024-03-21,2024-05-16,True HUSQ-B.ST,2024-04-24,2024-04-19,True IHG.L,,2024-04-04,True -RED.MC,2024-02-28,,True +RED.MC,,,True COV.PA,,2024-04-19,True BESI.AS,,,True BALN.SW,2024-03-26,,True @@ -2294,7 +2294,7 @@ SAFE.L,,2024-03-07,True BPE.MI,2024-05-08,2024-05-20,True GFTU.L,2024-03-07,,True SPSN.SW,,2024-03-26,True -AENA.MC,2024-02-28,,True +AENA.MC,,,True DIE.BR,2024-03-05,,True TELIA.ST,2024-04-25,2024-04-11,True ENX.PA,2024-05-14,,True @@ -2349,7 +2349,7 @@ MC.PA,,2024-04-23,True KRX.IR,,2024-04-11,True OR.PA,,2024-04-26,True SK3.IR,,2024-04-11,True -AMS.MC,2024-02-28,,True +AMS.MC,,,True SFSN.SW,2024-03-07,,True NTGY.MC,,,True CLNX.MC,2024-02-29,,True @@ -2371,7 +2371,7 @@ ARGX.BR,2024-02-29,,True SGSN.SW,,,True BBOX.L,2024-03-01,,True WIE.VI,2024-05-16,,True -G24.F,2024-02-28,2024-06-06,True +G24.F,,2024-06-06,True TATE.L,,,True STLA,,2024-04-22,True SDZ.SW,,,True @@ -2419,9 +2419,9 @@ TPK.L,2024-03-05,,True BN.PA,,,True SAP.DE,2024-04-22,2024-05-16,True ORSTED.CO,2024-05-02,,True -ELE.MC,2024-02-28,,True +ELE.MC,,,True LUND-B.ST,,,True -STJ.L,2024-02-28,,True +STJ.L,,,True BNR.DE,2024-03-07,2024-05-24,True CAST.ST,2024-05-03,,True CDR.WA,2024-03-28,,True @@ -2433,7 +2433,7 @@ PSPN.SW,,,True SW.PA,2024-04-19,,True UBSG.SW,2024-05-07,2024-04-30,True KNEBV.HE,2024-04-24,,True -UCB.BR,2024-02-28,,True +UCB.BR,,,True EDEN.PA,,,True ANA.MC,2024-02-29,,True PRU.L,2024-03-20,,True @@ -2450,7 +2450,7 @@ DTE.DE,,2024-04-11,True AKZA.AS,2024-04-22,2024-04-29,True LAND.L,2024-05-14,,True HM-B.ST,2024-03-28,2024-05-06,True -MF.PA,2024-02-28,,True +MF.PA,,,True PAH3.DE,2024-03-21,2024-06-12,True TEG.DE,2024-03-12,,True IP.MI,2024-05-15,,True @@ -2477,9 +2477,9 @@ INPST.AS,2024-03-28,,True NZYM-B.CO,2024-04-24,,True GLEN.L,,,True IG.MI,2024-03-07,,True -DLN.L,2024-02-28,,True -AGS.BR,2024-02-28,,True -FNTN.DE,2024-02-28,2024-05-09,True +DLN.L,,,True +AGS.BR,,,True +FNTN.DE,,2024-05-09,True PKN.WA,,,True BC.MI,2024-03-14,,True CCH.L,,,True @@ -2488,7 +2488,7 @@ FME.DE,2024-05-07,2024-05-17,True MRK.DE,2024-03-07,2024-04-29,True INW.MI,2024-03-07,,True IDS.L,2024-05-16,,True -HOLN.SW,2024-02-28,,True +HOLN.SW,,,True DIA.MI,2024-03-15,,True SMIN.L,2024-03-26,,True ML.PA,,,True @@ -2517,7 +2517,7 @@ BP.L,2024-05-07,,True ASM.AS,,,True ORK.OL,2024-05-03,,True SOF.BR,2024-03-15,,True -WLN.PA,2024-02-28,,True +WLN.PA,,,True MNDI.L,,,True RMS.PA,,,True G.MI,2024-03-12,,True @@ -2551,12 +2551,12 @@ LXI.L,,,True ROR.L,2024-03-05,,True GLE.PA,2024-05-03,2024-05-27,True ABI.BR,2024-02-29,,True -TW.L,2024-02-28,,True +TW.L,,,True SECU-B.ST,2024-05-08,2024-05-10,True COL.MC,2024-02-29,,True WISE.L,,,True AAL.L,,,True -FGR.PA,2024-02-28,,True +FGR.PA,,,True SCR.PA,2024-03-06,,True KINV-B.ST,2024-04-18,,True STERV.HE,2024-04-25,2024-03-21,True @@ -2564,7 +2564,7 @@ BEI.DE,2024-02-29,2024-04-19,True GSK.L,2024-05-01,,True ZEAL.CO,,,True IPN.PA,,,True -MONC.MI,2024-02-28,,True +MONC.MI,,,True DRX.L,2024-02-29,,True MT.AS,2024-05-02,,True ADYEN.AS,,,True @@ -2592,10 +2592,10 @@ HNR1.DE,2024-03-18,2024-05-07,True PZU.WA,2024-03-21,,True INVP.L,,,True EDP.LS,2024-02-29,,True -PST.MI,2024-02-28,,True +PST.MI,,,True HL.L,,,True ALFA.ST,2024-04-25,,True -ALLN.SW,2024-02-28,,True +ALLN.SW,,,True YAR.OL,2024-04-26,2024-05-29,True FPE3.DE,2024-03-12,,True REY.MI,2024-03-13,,True @@ -2610,7 +2610,7 @@ HEXA-B.ST,2024-04-26,2024-04-30,True BYG.L,2024-05-20,,True RAA.DE,2024-03-27,2024-05-09,True ENEL.MI,2024-03-21,,True -RKT.L,2024-02-28,,True +RKT.L,,,True RXL.PA,,2024-05-15,True PNDORA.CO,2024-05-02,2024-03-15,True DKSH.SW,,2024-03-28,True @@ -2647,7 +2647,7 @@ SAN.MC,2024-04-30,2024-04-29,True EKTA-B.ST,,,True RHM.DE,2024-03-14,2024-05-15,True KCR.HE,2024-04-25,2024-03-28,True -GL9.IR,2024-02-28,,True +GL9.IR,,,True PUM.F,,2024-05-23,True TRN.MI,2024-03-19,,True BRBY.L,2024-05-15,,True @@ -2781,7 +2781,7 @@ G1A.DE,2024-03-07,,True NOVO-B.CO,2024-05-02,2024-03-22,True KGF.L,2024-03-25,,True LATO-B.ST,2024-04-26,,True -RBREW.CO,2024-02-28,,True +RBREW.CO,,,True GEBN.SW,2024-03-13,,True SN.L,,,True AD.AS,2024-05-08,2024-04-12,True @@ -2812,7 +2812,7 @@ BVIC.L,2024-05-15,,True SDR.L,2024-02-29,,True AZE.BR,2024-03-07,,True AAK.ST,2024-04-25,2024-05-10,True -SYDB.CO,2024-02-28,,True +SYDB.CO,,,True SHL.F,2024-05-07,2024-04-19,True RIO.L,,,True EPI-A.ST,2024-04-23,2024-05-15,True diff --git a/notebooks/10k.ipynb b/notebooks/10k.ipynb index 9793e772..f59146dc 100644 --- a/notebooks/10k.ipynb +++ b/notebooks/10k.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 3, + "execution_count": 1, "metadata": {}, "outputs": [], "source": [ @@ -18,7 +18,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -31,2169 +31,17 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 62, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ - "100%|██████████| 1/1 [00:01<00:00, 1.05s/it]\n", - " 0%| | 0/503 [00:00 4\u001b[0m \u001b[43mreader\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mread\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m~/Trading/stockMarket/stockMarket/sec_edgar/financialReportReader.py:9\u001b[0m, in \u001b[0;36mFinancialReportReader.read\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 8\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mread\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[0;32m----> 9\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mread_income\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 10\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mread_balance()\n\u001b[1;32m 11\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mread_cashflow()\n", - "File \u001b[0;32m~/Trading/stockMarket/stockMarket/sec_edgar/financialReportReader.py:16\u001b[0m, in \u001b[0;36mFinancialReportReader.read_income\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mread_income\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[1;32m 14\u001b[0m sheet_name \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mConsolidated Statements of Inco\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[0;32m---> 16\u001b[0m df \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_read_sheet\u001b[49m\u001b[43m(\u001b[49m\u001b[43msheet_name\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 18\u001b[0m key_column \u001b[38;5;241m=\u001b[39m df\u001b[38;5;241m.\u001b[39mcolumns[\u001b[38;5;241m0\u001b[39m]\n\u001b[1;32m 19\u001b[0m date \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_read_date(df)\n", - "File \u001b[0;32m~/Trading/stockMarket/stockMarket/sec_edgar/financialReportReader.py:47\u001b[0m, in \u001b[0;36mFinancialReportReader._read_sheet\u001b[0;34m(self, sheet_name)\u001b[0m\n\u001b[1;32m 46\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m_read_sheet\u001b[39m(\u001b[38;5;28mself\u001b[39m, sheet_name):\n\u001b[0;32m---> 47\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mpd\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mread_excel\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfilename\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43msheet_name\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43msheet_name\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m~/Trading/stockMarket/.venv/lib/python3.11/site-packages/pandas/util/_decorators.py:211\u001b[0m, in \u001b[0;36mdeprecate_kwarg.._deprecate_kwarg..wrapper\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 209\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 210\u001b[0m kwargs[new_arg_name] \u001b[38;5;241m=\u001b[39m new_arg_value\n\u001b[0;32m--> 211\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mfunc\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m~/Trading/stockMarket/.venv/lib/python3.11/site-packages/pandas/util/_decorators.py:331\u001b[0m, in \u001b[0;36mdeprecate_nonkeyword_arguments..decorate..wrapper\u001b[0;34m(*args, **kwargs)\u001b[0m\n\u001b[1;32m 325\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mlen\u001b[39m(args) \u001b[38;5;241m>\u001b[39m num_allow_args:\n\u001b[1;32m 326\u001b[0m warnings\u001b[38;5;241m.\u001b[39mwarn(\n\u001b[1;32m 327\u001b[0m msg\u001b[38;5;241m.\u001b[39mformat(arguments\u001b[38;5;241m=\u001b[39m_format_argument_list(allow_args)),\n\u001b[1;32m 328\u001b[0m \u001b[38;5;167;01mFutureWarning\u001b[39;00m,\n\u001b[1;32m 329\u001b[0m stacklevel\u001b[38;5;241m=\u001b[39mfind_stack_level(),\n\u001b[1;32m 330\u001b[0m )\n\u001b[0;32m--> 331\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mfunc\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m~/Trading/stockMarket/.venv/lib/python3.11/site-packages/pandas/io/excel/_base.py:482\u001b[0m, in \u001b[0;36mread_excel\u001b[0;34m(io, sheet_name, header, names, index_col, usecols, squeeze, dtype, engine, converters, true_values, false_values, skiprows, nrows, na_values, keep_default_na, na_filter, verbose, parse_dates, date_parser, thousands, decimal, comment, skipfooter, convert_float, mangle_dupe_cols, storage_options)\u001b[0m\n\u001b[1;32m 480\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(io, ExcelFile):\n\u001b[1;32m 481\u001b[0m should_close \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n\u001b[0;32m--> 482\u001b[0m io \u001b[38;5;241m=\u001b[39m \u001b[43mExcelFile\u001b[49m\u001b[43m(\u001b[49m\u001b[43mio\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mstorage_options\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mstorage_options\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mengine\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mengine\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 483\u001b[0m \u001b[38;5;28;01melif\u001b[39;00m engine \u001b[38;5;129;01mand\u001b[39;00m engine \u001b[38;5;241m!=\u001b[39m io\u001b[38;5;241m.\u001b[39mengine:\n\u001b[1;32m 484\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[1;32m 485\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mEngine should not be specified when passing \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 486\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124man ExcelFile - ExcelFile already has the engine set\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 487\u001b[0m )\n", - "File \u001b[0;32m~/Trading/stockMarket/.venv/lib/python3.11/site-packages/pandas/io/excel/_base.py:1652\u001b[0m, in \u001b[0;36mExcelFile.__init__\u001b[0;34m(self, path_or_buffer, engine, storage_options)\u001b[0m\n\u001b[1;32m 1650\u001b[0m ext \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mxls\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 1651\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m-> 1652\u001b[0m ext \u001b[38;5;241m=\u001b[39m \u001b[43minspect_excel_format\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 1653\u001b[0m \u001b[43m \u001b[49m\u001b[43mcontent_or_path\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mpath_or_buffer\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mstorage_options\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mstorage_options\u001b[49m\n\u001b[1;32m 1654\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1655\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m ext \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m 1656\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[1;32m 1657\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mExcel file format cannot be determined, you must specify \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 1658\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124man engine manually.\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 1659\u001b[0m )\n", - "File \u001b[0;32m~/Trading/stockMarket/.venv/lib/python3.11/site-packages/pandas/io/excel/_base.py:1525\u001b[0m, in \u001b[0;36minspect_excel_format\u001b[0;34m(content_or_path, storage_options)\u001b[0m\n\u001b[1;32m 1522\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(content_or_path, \u001b[38;5;28mbytes\u001b[39m):\n\u001b[1;32m 1523\u001b[0m content_or_path \u001b[38;5;241m=\u001b[39m BytesIO(content_or_path)\n\u001b[0;32m-> 1525\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m \u001b[43mget_handle\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 1526\u001b[0m \u001b[43m \u001b[49m\u001b[43mcontent_or_path\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mrb\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mstorage_options\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mstorage_options\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mis_text\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\n\u001b[1;32m 1527\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mas\u001b[39;00m handle:\n\u001b[1;32m 1528\u001b[0m stream \u001b[38;5;241m=\u001b[39m handle\u001b[38;5;241m.\u001b[39mhandle\n\u001b[1;32m 1529\u001b[0m stream\u001b[38;5;241m.\u001b[39mseek(\u001b[38;5;241m0\u001b[39m)\n", - "File \u001b[0;32m~/Trading/stockMarket/.venv/lib/python3.11/site-packages/pandas/io/common.py:865\u001b[0m, in \u001b[0;36mget_handle\u001b[0;34m(path_or_buf, mode, encoding, compression, memory_map, is_text, errors, storage_options)\u001b[0m\n\u001b[1;32m 856\u001b[0m handle \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mopen\u001b[39m(\n\u001b[1;32m 857\u001b[0m handle,\n\u001b[1;32m 858\u001b[0m ioargs\u001b[38;5;241m.\u001b[39mmode,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 861\u001b[0m newline\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m\"\u001b[39m,\n\u001b[1;32m 862\u001b[0m )\n\u001b[1;32m 863\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 864\u001b[0m \u001b[38;5;66;03m# Binary mode\u001b[39;00m\n\u001b[0;32m--> 865\u001b[0m handle \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mopen\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mhandle\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mioargs\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mmode\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 866\u001b[0m handles\u001b[38;5;241m.\u001b[39mappend(handle)\n\u001b[1;32m 868\u001b[0m \u001b[38;5;66;03m# Convert BytesIO or file objects passed with an encoding\u001b[39;00m\n", - "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: '../data/sec-edgar-financials/AAPL/10-K/data/sec-edgar-filings/AAPL/10-K/0000320193-17-000070/Financial_Report.xlsx'" + "\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn[125], line 15\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;241m14\u001b[39m \u001b[38;5;241m<\u001b[39m \u001b[38;5;28mint\u001b[39m(file\u001b[38;5;241m.\u001b[39msplit(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m-\u001b[39m\u001b[38;5;124m\"\u001b[39m)[\u001b[38;5;241m-\u001b[39m\u001b[38;5;241m2\u001b[39m]) \u001b[38;5;241m<\u001b[39m\u001b[38;5;241m=\u001b[39m \u001b[38;5;241m24\u001b[39m:\n\u001b[1;32m 14\u001b[0m reader \u001b[38;5;241m=\u001b[39m FinancialReportReader(file)\n\u001b[0;32m---> 15\u001b[0m \u001b[43mreader\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mread\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m~/projects/stockMarket/stockMarket/sec_edgar/financialReportReader.py:15\u001b[0m, in \u001b[0;36mFinancialReportReader.read\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 14\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mread\u001b[39m(\u001b[38;5;28mself\u001b[39m):\n\u001b[0;32m---> 15\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mread_income\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m~/projects/stockMarket/stockMarket/sec_edgar/financialReportReader.py:42\u001b[0m, in \u001b[0;36mFinancialReportReader.read_income\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 27\u001b[0m \u001b[38;5;66;03m# higher weight on total revenue\u001b[39;00m\n\u001b[1;32m 28\u001b[0m income_keys \u001b[38;5;241m=\u001b[39m {\n\u001b[1;32m 29\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mrevenue\u001b[39m\u001b[38;5;124m\"\u001b[39m: {\n\u001b[1;32m 30\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124msales\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;241m1\u001b[39m,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 39\u001b[0m },\n\u001b[1;32m 40\u001b[0m }\n\u001b[0;32m---> 42\u001b[0m revenue \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_get_value_from_df\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 43\u001b[0m \u001b[43m \u001b[49m\u001b[43mdf\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mrevenue\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mkey_column\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mincome_keys\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m~/projects/stockMarket/stockMarket/sec_edgar/financialReportReader.py:110\u001b[0m, in \u001b[0;36mFinancialReportReader._get_value_from_df\u001b[0;34m(self, df, key_to_find, key_column, key_dict)\u001b[0m\n\u001b[1;32m 107\u001b[0m values\u001b[38;5;241m.\u001b[39mappend(single_key_values)\n\u001b[1;32m 109\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mlen\u001b[39m(values) \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m0\u001b[39m:\n\u001b[0;32m--> 110\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[1;32m 111\u001b[0m \u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mNo revenue found for file \u001b[39m\u001b[38;5;132;01m{\u001b[39;00m\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfilename\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 112\u001b[0m \u001b[38;5;28;01melif\u001b[39;00m \u001b[38;5;28mlen\u001b[39m(values) \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[1;32m 113\u001b[0m values \u001b[38;5;241m=\u001b[39m [value[\u001b[38;5;241m0\u001b[39m] \u001b[38;5;28;01mfor\u001b[39;00m value \u001b[38;5;129;01min\u001b[39;00m values]\n", + "\u001b[0;31mValueError\u001b[0m: No revenue found for file ../data/sec-edgar-filings/AEE/10-K/0001002910-21-000065/Financial_Report.xlsx" ] } ], "source": [ + "import glob\n", + "\n", "from stockMarket.sec_edgar.financialReportReader import FinancialReportReader\n", + "from tqdm import tqdm\n", + "\n", + "for ticker in tqdm(tickers):\n", + " files = glob.glob(f\"../data/sec-edgar-filings/{ticker}/10-K/*/Financial_Report.xlsx\")\n", + " \n", + " if ticker in [\"MTB\", \"NVR\"]:\n", + " continue\n", + " \n", + " #something wrong with the statement\n", + " if ticker in [\"AEE\"]:\n", + " continue\n", "\n", - "reader = FinancialReportReader(\"../data/sec-edgar-financials/AAPL/10-K/data/sec-edgar-filings/AAPL/10-K/0000320193-17-000070/Financial_Report.xlsx\")\n", - "reader.read()" + " for file in files:\n", + " if 14 < int(file.split(\"-\")[-2]) <= 24:\n", + " reader = FinancialReportReader(file)\n", + " reader.read()" ] } ], @@ -2257,7 +121,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.6" + "version": "3.12.1" } }, "nbformat": 4, diff --git a/notebooks/10k_xlsx_problems.txt b/notebooks/10k_xlsx_problems.txt index a74fd6a8..9cafda79 100644 --- a/notebooks/10k_xlsx_problems.txt +++ b/notebooks/10k_xlsx_problems.txt @@ -1,2773 +1,1078 @@ -100%|██████████| 1/1 [ - 00: 01<00: 00, - 1.05s/it -] - 0%| | 0/503 [ - 00: 00]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" } ], "source": [ "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", "\n", "from tvDatafeed import TvDatafeed\n", "\n", @@ -39,7 +68,11 @@ "\n", "print(f\"Initial price: {initial_price}\")\n", "print(f\"Maximum price: {maximum_price}\")\n", - "print(f\"Sell price: {sell_price}\")" + "print(f\"Last price: {data.close.iloc[-1]}\")\n", + "print(f\"Sell price: {sell_price}\")\n", + "\n", + "bool_array[-1] = True\n", + "plt.plot(data[bool_array].close)" ] } ], @@ -59,7 +92,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.6" + "version": "3.12.1" } }, "nbformat": 4, diff --git a/notebooks/current_assets_coverage_ratio.png b/notebooks/current_assets_coverage_ratio.png new file mode 100644 index 0000000000000000000000000000000000000000..024336517aa5bb5476581bb49dd0c21b7506147e GIT binary patch literal 37782 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 literal 0 HcmV?d00001 diff --git a/notebooks/equity_ratio.png b/notebooks/equity_ratio.png new file mode 100644 index 0000000000000000000000000000000000000000..5721924bab658a6ed7f0e0a2ee9c9ace89d0d90e GIT binary patch literal 43632 zcmb5Wby!v1*EM_)1rY>PN>W5g1qGxe6bV5Ak&>3~?nVJA2?>!dkrI&Z5Tv`iySt>m zx&1xw^FHr&ec$z7-yi3O8_(HiueIiybIdWu+P-fjMXz5Yy@o=eu8X}CdW%A#?IEwL z81R?Yfk{93!EG)4&RWJy*V<0QQU@iWVQp?~W^HVsdB;}A(#pWhl#Q8-nf1XPeQRrT zD;^dWlmC7LvzetH%bk<+KX4H&^OuTNC={Ls@t9$ zU);eLT>9|r4%YojQ@b^vZTBIMurz@uzTnmA zzC9((JMf!NOQ7UXktt7L+IfhEY+*jo@rO^ zC1O*1;upH#vxXl@M8W_6Kb&U8VLVh5O#R|29-e4wZ?1Op&GLD_q^*_AoSQ^MpHfrl z&@phPwx;WBZJ1R`YJ6_cZ0+vS+_~f4Na^&sqJnpHXSOk@H&u$NqOx+iHx;ijh^kom zBD;KJCPLjcJx?nHxuv9z=FZMkmy?6G81DSG`OV5h%6R7;tbE;e&CwzgdnYG0{jNKH zetyO_BA-c~YiizQQpnaG&eJg-`t{+lR>RO&fs4~!cH^Poqa*v;+S;QymXTPmEYL(fa;rZzk<7V|mRn`M0rdJkrb_!J&=T0!)Iv3|> z*Amu-a_i(5g9OgsSo6e&L`7xL`y~~ajw>C*H3@{J!zSG>R1JE61SHY>g+xZCvztw* zh>3}%_sj;f{hR5qxjF5go*t4%@7=T7CMV-f$IEhcT8U6a#>0Zoo}oC$twXaq+|kgx zR`-oZi>|vLtdHg!_A~yJXL36~rduB=M1Q|C*Zi5{>DPt;G6jP%X1TH_bQ-zuxU84( zH8eDq_IIL1u2RRuCeg$S9L9I}`Qz*+T_UFIyz{LVB{6Wx zo9N=5KSoC@dj*Y}UW6-+ic#=b`*4_y=u>=x$TK_`G0NHgyP9K^xB2NhS)TDQ>!?+7 zcT>W1k8hl2lxCItL{(K)}93YmJqq4;5F^7*@l4G-Mt}N6XZ255i~79UaVr`~%sl$_ob~ z0i-GPej_&PaBI>qa|Fmc-7d~setTf97g?O2I?N|}Q@(X}b|w%I5YX9M>J~RO-5@-H zDf`N5JoKnMZ*R{U`G8+ePR>pZIv)M;@iFH?BcpICz2Dp8_$wXred#jnreohi>7;tn zq-nD1ZV2ip?A@12d?+kERBT4YB>!`&Q{X}y@&N%c@o4{J5**l&QLu4(6JKDC6dH+U z%4g~KrQL9>jEjjOKRr8x`_IlVemfshj-MncP2dIFA}=qm05?UFExO%!vMQF4N&c5c z9Y#-Y@A_BFD_6Qpt@L1>Uwh+H=nv=Jr>3Tc95FKT9LovGwKn2nta!M%4Xv%OLS9_Y zQ_36RQygW5ApLu=-dghk{r02xC~0ZwqCpX9f@{~V8E3V;D&{4Q zKyq~7Z6g2ruWcS5KNjGocD$65(%Tp-ZHr{{P8JOsX;~f2>4aMq4=4sgu{06GnL+iM8rw7V74UWc65d3m zlU)M@6l8M~)nZ0*wPK@xxj6lJ9VrND0;03%i6{C{r4uK`Q``)q8xQTzO7doq;vQ)r`W0Z*FS+XK9*T)#>2AAhf14J3K|@y{P2 z`D~TuJe^kfa&)bR&!r1IoqUJnaQ93X$DM8@?E3gd13xuZ2eRxP9d~wGS*(t>G`>Dm z{?u=%v%ApV7R?z{YPGlnb$O&{`)D@EYBj4k&uEZ2FF$`h+t~SN+Iw$pI5bi*j zh#{PkcL1yT-G*SFgqN3B%lX+!I22CSh#=A@;-#zE5E@+aq&%3(hTRV z-yFGhQ|kp$7o3S zVKS+b;fi{j6P4O}dRDy>oT|BNb$9}EKcY=F4>!hnciY%_&-Qwurfp@MMDseZ!ggJB zyEvgjYBsEk)?l{kV8AZCz1El`-(-|SS#h$;#bNG?Xm(i#tkl)3SAY3C)wrWA?K_sQ zhspPNJ43qG*3s#Ppc%+fml6`X+!#oaZ^FsJ@ijOYf7H zkjpJP$)T3JckgC%KQL5M8XQIvNdgG5M#y zz8laU)Cl9%? zJ>Q$Jo3YW-e%fCh9F2kM++;Z8W=ZB!CF?!BQpoWS0!#!I0sFsC1UnmwcWt^_~M3769Gr3>#N z`RQJ0S=;ZuBrIKY?2n))LxB3rOf*c*u>0T0G})e zSymgphK(0$y|7`BN%YsC%y7r@*dRf883SVnQWE^}{QTT@H3a|?DXHP;#(aKCI4?`O zRjF7g?PH4>A<`#?f68oD?WaCqZXFyfbUfYE9xt<*=cl#sg=|gU9!SxZcOM}3(aDQ= z{*}5(^@m3N*K9ZXcv}3pEiWq-f09mqe`xwkslRb!d@IQ9+3U|rjlU~)JD#2btbRKhV$ad`=zF*Ek&r}#4;I`ko!@$4*NTRN2+|%=NITbd5{y$LI z0D`LAXk6*f6cZQMgbL$+Hnv9_isfJbc0=oCivBpG6n0OGsy-u&l=L%~xp~#n3S~~= z+iW7zKL?m16thrF|yn?lCQ&blwf<`Kg%Cq=}@iR^FnUNGa^e)e_YKT+;#& zI2_`R9+ITYM-PBtNM8cKgg;a+8mcF`aU&5vD>7VamD-amikAX&Tr{tnuV^q@l*MX3 z_3S=BznWr|b7@b)b99I^28FfiU%%cM^k;2Y36>mu|S+C?B9g*T?zU46aSUhn_pqeS-`1p6US?zV4khiyf zNX9BH+~0+K9do?9s9^5|_c1?KYE`rd{S<$t)1fZZavYLJ?rN2e2&O8xfh_kzT-;A} z_;AwA%;=Z=-TU{w*z`J7tS)vJJ5%K{<@Yux;{i#|E-p6y-Cu2PYDzE}Eqb7s=lS_F z4$}6mI`4Ihj@b;V;*fEC=6CsvPfFU7BW)6%zMZu03qJUDnmN-_aG#As6Pb zn_YEY;o#TvU98Z{t}fd~MMJ}HXEjGb-ER49q2!bDiQA6C1Ox>10c4!=9MJS#`6Aa= z<#G}>HTC{J6VvLa;xFOhDPvZhd`0~8LA*OJz5W&$J@4qskx(kdp4LA2NAbWzzZ9Y6NXgRC+{i(f)*3Uao(W=f4l*{wiqbwKN zZo}`ROr#m%3eW)qW@GWjqiO&kfs`&}U4PKoSOPdQXV+>JJo~%VExL8Q_@?Js(|h-h zSd9%85`L9ld?w=+*{uV4*k^ME8oT)A2&Z)@v~gL#lti3X^e|zOw%%2Is!V zH_uOk+TV*T`l%6I2OIR=10u)6jdobDH1+DL0S#Zqe^*#oxi(00+{z#f}?k!j+vov-Tc9xtxkUmKZoyYOHno&QNIXUo3_`Ft0O zhOCB=0&C>!&!kUUzP3#|u0CAoh-GT7AVRo>{Ns7zeSSxiom%Wijs*kKeMinq(2cUP zR2|J+54cxsI?lsmv*KA^{uFAXp6TsP-`ZM12#^M-KHk6IzaJ?uc%WWI4l6;*Y1-zr zS!q|#BXG8ND@&=cwyw@&Xy~2m#hG3CJeBhn+V9`LFJoeky50*zTF6)c%!BXtl1TN( z+tjdoOeFMI9LEP@!f%l)IADAQX!z#RrAuLu^oLql;`!yI3FdPfDP`iEcbdiPwK$@~ zgM)*aerQz2X*C8isHv&7d>0E11AxjD@A@}g^ASndd~3w$3Lq6Gm%n?`sQS9P7m6k3 zi8pWFO!`dnSa7)5EPm(gaFQu5F3z^M+;pTs3|giZ7(gl{ZFL7&P(lR-1!!}g14tT% zHg#rsIUUJfiiL*ZGt<+FYvbh#@K28;UyDOd4_hBCR#-8!eAr{MJ~D@cpj)KPfxh{5 zJpWmS%>yEAgoGiyAdxv_Vu@# z&$ro(N6!F3v;+R=m}?F-7%zKbR&`7Zsd^^AlOKHw+OPtn!9WB*0J!aih60zI3zddG z2bEY7sZ`BXXl9;tY{^ zXVczPy0xBI?1p_yemn}%cxO}>N0`b*#?z2k5`nk6M@Oe#9PbDKaGiOZO29Rysp%zj z&QATN7Vxgpq}36G7vZwFTUuI*L&^IM#{D)&jSoP!aH?eNH#R+7Sj691eNK9S04h#4 z%C&WMkv9NeR152#J+u*W{}sw7AYi^L@dflk3G~-sO_Cr>lJhx+!N40#Kif<1l5gO+ z)P1^+bDPz3Ys(y{tMvd`rMGWyLM(FvUH~GkH|13X(T49GO4q4$%CsT>6VT@Ey3|EY#H`XZsP5JdK=T#s=B3GM0k@OU$?Vb`xV~f@ zuR(dx#>$GgwKY3LsDkRE;cn34+?+WO7Wodlx)9&S&8JGMVGqjXV?*X)&fz2`-z&U}mx`2;)d3o7=BXa|I*cexD34yowf~_W}$aLCNQcPeB2=>M57a3IQJf(Vgbz z=ANi33~m)cDqj0X9+-GlD?1Ttj=s>BKxNUDm6et7q!nr(DiEt=cgga7U1pPcT*9bT ze{Ja3bc;5w;V@miyGU}js>Jef7nQ@@jdGoo#TP84p6koY4lhnh&8II-OiU0eUF;k; zJ|w~hHV?f9?gK~-6^o|{yjEY;vpV`0*ahr1$jvIYF@WNG4;TX>hX7)9K|=&o62#D5 z4vwO+#`}zo)6Avn{{4pYfJl;cTEF6uvim?)0}Ls@pyNOtBmWFVF5tR9-x!o>6XRQ6 z?r1Y@Xld2YgZty|Zen9YgJz+UVzsM_*Fmn?WYx8H1KgF<+55YpOn$Y0d~YF;Wt~H( znALS_f2rF8VD``g1*T2M&eD=T06DvQ+gF1Ok%y<2NXLu30!W|aMfZ}|7<05%EIg4| z)jb%zMDI_`Qp6`;d=|zjMx8FiT5)S)Rb)QSTEK4GeSJ7dkbkUgYM|hmuX|I%k zoN490{OB$;y!Y?j6S~c9`905Ul7Ak^fj1Qu71>Kg3o|oGNEa>s_HD=xaIV8P%1rCP zgvplKu4h1L6_)PXs6l`#ps#FaNbBNn-na$Zk)+>1b$}afu#}Z!cK25)d~% zMCO!S@h)#n^}$ zXw>Z0ef|CObIh}585!S(0p2CxYW$_3l%%Bm*w|S1%Oz-A zN_zkgG8J6_Bw_&G8fpD|DjcllS97Y19%BAWTnDGX{P|^OW{%rQTUzE_qBk1Mu3X54 z_Ea9aG~e};wVlm+K-v-pmc#7jPOyML%cKA_V1h7`op4x;WhyE+pB7Akphd0^-CgqO z!Kj%+9|Jx88>J%S^tFk~(QKsE7JvED=jM$Y($iJ@^VC>pBi4RN^iP~55>BmoC?L2N z;+!_n`b4N;TOs{(#pzCKkt0jR)+I7dQ*GE^I;M^K?7%gcbjrxc0Q-L(2-OGqul(@) z83m}Eo%=2p=hO3pRRho^v=QQE!Hn;DGSTB0o|q<|4T&`})$qjO6_A3CFK^0(y5nszG2TC3=l!UbOjf>Mo z0f&pTLo<2|J5rAJ#;N9Hhe(Y zo}Qi>BE^suy&vgNY(P2U zV7y3~!7ucvyT1pZ3t>D*cSEH8fkCW?zN8eOa^w>uBFGbZP{WZq2F%!%slbvYNR(vw zP}OmLzA>=>HMyL@itIPu+Y^r1u19E;uJ6{(+;TGsWq#B=-Q-dg9IR#Qe_cdwC!!dN8*pZ4gL+0q?*6I7SYEhIn zN9H8lH#e#;dUkHmOhua&__q5ZoE_9|j7qgmkeXgXB`L%eCsHNd z+23i*R#g(U*AjR2T-u+SMms-`_F$4^FDD=QN}-g4K^?$f5!aXeX%@~y)H-b~7Qzh42UFQNzU%zO)ZCv#2D9dD2oAo7gKp6Ahy>^I z<;%fezM#2BL=f{}lG$vQZ&qowM?JB(x8DN7;yr8RqsZ4v-YE>i()9H7cW7ulfUsOH zvLpO=GvY8o?hn(Sh5*igH_w3jh#USXf1i zxw*OhJs~67tY3Z^MW`w|9LmW&=J^P_JQvdPo+BSfxxRJ#zQi5EF#9$yL3d*#%BH?| z*KaQ@`Sm5}zGUZ5#9qJFZpcx->g#hUt*gqAQ6vjgK0x}Ye^Mpjl!EIox%l8t`yNx@ zkY+cOKGX70&=q(>nEbWsbmtXxJ)k$twR2AP@sLYnH}QcAo2J3d&0PU97wUB^Pk2JY z9TW7Mg&z^EB25EPn32u`Y6idvkyUe{ht$Ym4ZA?2j(n_zf!eItmCQ2PqBD&9_lf5@ zl?SAdp~swe+mZfW$(zRT1~PHdFQDKY11W}P4@o&CIx6igvhYctDvoCS-(|^fR354! zd?E;1g`fXj3Jsx(fkr36!T2E+pKZgH^siCH?|&^#fHY1hkYHW_m}t1+JMt1?b!GG6 zHgjE0YylA1!yYQc747@amyjxE$t&N4euEeKFjCQbhD`r%DS(JY?X|NrFNDNv0368Z zXpzxn_||Jq7Y?eSzn}Tz%laoXP5$4lMmSMgsjj$XD{K=6`g6>}iA6s}vYegOLITAhHBNc-96M(B0AYe7liq7Ze#b zAPzx^Yy=413UQ>Er;UXITfmsh;rO3Fe-N^>BaW{XR2r21-{n*X7|ZtVZf5taWr=4M z2zZ}xZVTGmbMeG>95gbu%1H5fNv6&M9LUZ+0_98zI&4JmMj-%T``}=J>#jv8s&k;4>aolm}pcN2n`&jV=px{s6kJ?^Wec} zpxclN3hfgjIvSmpkZ*)Ixw`U0x4+meN;O{vy{KU&Xq@@b2ms+>^oR#k^dc|~cme-= zgM_3B?lZ-P%SKXCGH~4LKOThj7B%N>5brGY`!fhJJkb2>YYPl|NgiunMj03wpgcW2 zhq8!o-qch+SV|7c192QkmKQ*J0)Igr85vpecO~h)HUv>W12Ua^~S(7P^7>xn<8Td3p!(ih79U|4T{q7(z+ zAr4O=>ht$G=#h-H&>7ze3+&_Ti%^2Tx9E^mm?oXvQb+}ah;B!WfdU8US_sVm{1UQ= z0KulA1J(lc0GN;^oF{w7yu{O$4>&7eiCG~(YHDh>6b5$d|Iue3iCbJ)kXNu5^kIGX zKsO{L#JE#SOUuH>rvFjWN-o$WAXjbe?^haP>xDK82?~BxRWvzs(w_zr!}c(nMc^ss zH;|Tqp1KR!_D;h2nN$oHA|Kp-Vi;y(KLI*A2zAB?^AEzeH|t@!?Ya_@f;!#K>);xt zvw=^6@z*`tns$a6khAwxShU7E0~He5oce*AxxA2cI>^i_qywa}sI%u)Rir^6176!Fp1cDRaO)En)U(FD?;+& zeQr6yAbxeKq!VT6bTFc?j*0Q zQ6<=Bhwx#-QK#K@PGriK0Ac(yP$0G&O1`L0{*%vfd`<&R7I1?X(5@f~{N1~?^18Y2 z?9Y!Ek3nJO2B|1=Rds@XW=8~SuC(I)!w#r*Vo<`L1d6D%rpCLrAV~;t;|mcHjOpoV z-s8DYTba@GRrQOz0s`@1T?!5l7tT?ud{^bn4N1y&6l6XsfC~5c`6uLUAtUAkKZyW; zU|6t;9;AJlwaoD3x14)fZh9F7>Yye_t#G?a$!VVWHsb)U>w&rifo(Sa;xrW!`6@)( zJfx5+-3UFH1n9I(&@Zb>01>b*5{$TyoM9};OYVkgDKHfXjBolvQ?&R$ar_^`e8SSQ zGFVz5daNb989nh)MNW$VBC@}1hzW+(Pv86t>2rB7Cw|?bxpGrFS>&`z*3XFZ+4;W8dQ~a-vOFQ5Qn`a+#Rqt^faDuCk#*P4 z;A=W&AOKH6%yl2}5x@En!AU-3>{<;tV3dL+`xKA|6rU9?r0Q9q!#y+tEWF+{TxyPk zRJIum@RNlCpNrT!K#GOJdG%j`lm>Co8B(x253{|nNH#%I8RE_GxfTVK?P6y<9V=@H z*e47q0`dPj=hE;YgF#1rHEmWKYKY3Fy0qxOd%5r31Ry6eVFF(Z);UWM>Ff25Q zzUYHC#JfL;;DDq4Np7C>sUS7xYc=9Rt|j3#jR72`A^PwAGR?!sOWnx^T?rq+q@*GB z?~ipLD;xoT+r4aEB$n)He(ztYCKq4msDeaoFi}xj^!utb#=ntMfGx@ystL-{mYMu3 z0y0Vhf#bfJ-2D>a7V#WKv0$#zT8KNhMM}rZR|n( zn>U0VTcl~xfPpR3ylvh-f4`N-cC88a-{qPTi`nd`uvaa%j^5Lr@2@v;nHhx|b5HSxGH z!-F^+g>C~C*$nCg8j|#3@A<6$^R4KBm_P-N5|Ea9Gvt^6g3Xj6@BgFo+3UC{e;1~} zknA)5{5=F5F^B##AcVMpO7&^fv|M7<+>;&|;Zh~2f2*lt&9ToVdT1(|I%ox(+6V%R z@Sj73*-!lf6V*OyM+4-~tiER&3G$6-K!XPtXrZGhOiN!NfBhHWXs4TQ7j-Je_a5Zk z4~Q!6<{_tMd=0UZ)RF)0!71cf)E+6%+p-L-RAfBTi)VmJzW?|!voZf-QQ2D`zLQhv z-`h{%y=eNQ$pWU7J#rFUbjULDtb;mu3P^9snrGzj_IDdD!LdjG`3HnfPq5pZxZH== z4I^t(SrZQ88cwb(595LRGO zgFr&Gohc}1BUc`Hnk!YG9gu+!2YT|}EM-nuprp6ZQ73>X0rH_!?f2}p>gI88y$%#REP6yK;=K%K zQWyz$fxxg{9|?yp2kL|2T_G^Zn$JwBL6i6)Cx->GGlA;~8YrO@E)~I?w6!&3AcfG- z&=j(?*hwFg1{5sE0SdZE%81%I=>?o8uAtitqQKucDBilj>)U|Jqa-rl*^Z z=WSwv>;C9{t?Pn)7?ROl612Afa*Ik6fZ*kCG!VLLx~^N2Y)-Hb zJ!zp&H_vBr1{a)V2GJ+J)btg;syMLo#4l8fPtR%SuYr32>6YYf{J@X0YVlMHX+v-c zsQK9rwzyLp8-eBJcqz_B6libgm@nYD>$H_8hc4W!Q3QtWX_xcXqfe=X};3!2h+qy$zlRuo^c&GVDYm zpvV|JbcmY|bqO8a!pf?b(U{sZbf{v@2{p1`)}CzK}>ay~^zQcT9YIZZtlwUA9yYb%XGqa(_+YLyylSJKMAb{?zx;`}MC z){Wl*(cKl5pGTPusgUiYBqdGYdak&hVY{n}*HW^cB#+Q0Y5QPm_ye7cg@sLWtI44u zY}S53WU~&OK=nh@?@!^3;~%7iBKWT~@-q`lDCN{qf<+@gxCW70+ zya)DD6cALd+B4eH(fJG--Kkab0mJnEn6*3)J9d&x zsN>I3mtd{q>^1Rb&8Aec(wuNk`73QdG!IPFuG9eJlo1xa@2Q1YseHs`2)yJ@Se|e( zJz_X2Rk}UK5%y&~8efEnxhx}=p}RjJwXix|%FL|B#6<9sB7y7cHmw(*u%8ZIh-s+d z0&3Ai%$a5C)a2oaWsdRwyfa$P!|}!e&(M3S51fjk1-v`vd$|4-j~r6X>AXK^3Vbkb z6-DeeQRk2xhc4iPSp%K3g~gW~ZfQ<%Tj0-p0#cwhmhSfH=JlU^_CyMGDXmN6WDajb zcaie*$yUF~8+~;)(k|-b+&Ic}f<0~FBfg;4POscmOfA;PmoH!bV)73NsPFGD>=_jo z7q2yxD>qa8*K4hEyNg|cT~ zZ?bEwysG5jkM=3X(8ayCb*E-KxgI>sZPqzgTp5{3X zz*h=&f?&05uJu1kx^qo}=u|bULLi}Pq50HO^uQQBp|!^8aY+elLL@O8)rOD1TBACH zu(5zy&D#%&T3+U~2+|z1nQ`VnG5Abq<1?Tv*ml|Bb^&gyq;7+OB-PWa&kld%4Yin= zku?yzZGQHre2a~9n!EY=o{jWBDpRF5z3r0gxDy7G<3}9fv2lKK15lD(VJ5OMz5&s z1s)b^6uuj(IweLaS#PN7#&&2>?&-f5$?>SW?eIsB^v%7@LB;g+^iv>$>FDXN0(=A` zBO*GQlqS(5bb_as*YxsoGcesig#R)r?bg?Z>m*xI0hh6{zq!#ZX<`;^BzG;LtXL z`TxkpF#Y<)Q0JxTAN~m~uHbIC_~#*|EZntI|DRR{B~Fevx>r`T{&+hw;`m`*nR*xZ zf$G+-A*0arGgdaX<>7p~?Cfl?EmI*jVsJeKgJw0nf*7p<*3z{_J@JR$czS)k9SACV zM#f8s+XbAH$QcpDfDP=F@yUm8F)@JDt-f)XC1&Y)(z&dRWlD?I4={AqujktcE1%L+uL~4k+%V3{R;8$fVFvPq>$;$ zmoGTvT)}Ddg-)qS^oY9}k-Bgwc)|c^ZG%E@`FGC%oaC3%w0Qon+!a#3ekIdiV>!)> z(2CR@+q-60jNLfipG#U3E*~5!)>E{PVmF)2Qduo9B6vpT#)itdh-&itQ()*X#T5r` z1WPd5ZiCSXpPc+Pv{I35dVwZL;RmJ&=)xNLh0RSVV6cbsbg)stO6kEs2#ARCz%2kg z2pEd^!9&&vP8@Ky6gLFDf=yN1VK@5rUD+Z#28DHwSwm-UuBhnKJSR5!Os}S**zFvu zw;TIP$BMTJ=Dm_?tOOcDV+=AH=!GSq=goB@320ziA%AN785o$4pp^fDFN$;hYk<%} z6%Mto8tcCVy8 z8JW!EG&y8%aWqHLPN)=7xqn%AHkg_&i5NyBsBf88B|}@{x3~8i=wF`N4s_i!REz(p ziQUVon$Yx?LfS8?4`gRJ)?g9@)S|j{qhVnW;KB(oxFT)Vx5rxcV3z*MsMaCT*- z1>3JNX^6%d?^<{KX3PE*@%)ZQf72e^zlWUi)dxz4~!jGwah! zVF@^2a&LHexTrCVK_)v5j_ioQe5|!76`M+ki(dnikYQaj5Le|q%gf6}IuXhM0eyXa zKa+6=f=Xb~NMSbxTLJL5VzH?zLJA?^1NDn#^qFC{7ruZUzkLEg|8P!8ARm%Wee6$j0=>hO2Na4AXLJ>Unt{P?g=^ z#crYQ($HXCzpk^t(qA+W;s6}I3IN}R%761yuwK5u-`8m7zGqD@HV2?j^r~Iu?-vO1 zDOp`KQOo`u54%r=$#KQe4L4NPO&7Q&Da0-(oKO&!kGYlt+IYPojYn|}v&T}5CgIv$ zg20v1#W*dX`zye>N6u~O32MzFrvqc42C&n5x1sm=g6LDQ2||K{YXr`>@t|{pk2qxy zO#rjo43??qje&*{%`gzeT5zy2-l`YxBGMVhXEax$ZAnDE!j)g&lJOnqS)=<)slURQ zMig&LjW4Wj`1OmQiG1-C6;W_>%B9{Yxc)0Rc)s?r;8t;5&PRGLnw6duY*4&)!6k}_ zBfz@wpC4&~MOq_sH^=SF|Mb)uQ6c2ziNI>3dAu`kZ$G4t^?xO&AQ=cz5Zm1iT@$=T ziQy&6(`Q^gOr}$)GqlOh_Xc)CKs@Zz@RCP=Dye;`i@D}w z1PyMF+NWfvB8!bZES0e_gOP(DjHB6-sevaOl8=S`urm+znznw`8gMnHDuB8`F!eH5 zfGATi*)fiN$1-kUT>0V%%l(H5&y1r-z;t#)UH>ztx7~^6bHbu(RPUBg^A6nn?xKH{Qk8mGN7nV|C1XqzB6H%zINW0cm91~fS6N9A?DWL>n zxXUpI;>Z`OT)f_|mf+-6f!SmnB+9R)r;cn>SE;jEHiT$J#>@vJmq~A@*>KJO0DIW% z`6b3lxphZto~2115>Ah}-FnBb6dgGOXIRpT(A_{6-3IPBxrLg8`A9U;s}?5pesQV{ zhA&EVv$;!1$v2FqGCJbKX-`y0O*i7KSM2tQTIA|G>%u1Ty8zwms&5aj@e}maOsOaoiHm$%?K;Het#C2aj(S_Oup{Pc{ZG)Gl0tT;|K{`ea*Z;0?4nVrBc);_pTSgo4ylJc?WcY;05@=X z%3W^>jFoWKmWdKBb%nXzJ@o5W5ir02|DOa*#0bViPxPloeHJ|BS3T53X=2R8yXHLC z3COUqe0`Fh*ZolPevwd2Hv9Jp=9Gs3-rG0EpqNq1Lgahl%K;s7pqJU}R&@Qaj$-i@ zzxON$s>@|-i_r*2K{46XR2;Ix_eGM(;$u(XY0-ckPLhAsM88lW9rQeB_6KbT+aDv} zU4zsT^M!jD3JN@UB|u&n^Qv5bT_#b<%4KvWz2hIN_k%~;2})Vg*S7>-UcM`DQcUX3 zwzkbnXxRqkSXoud)jYPg?S4|-d-0V0Ud9K`VK3U-i>h3gp&a+URSt~PyC~J%qnC8B zHGR;wcyvCFvZgw9Z|GKOP8fW=T%?csO4*h=R60WHr}cYIlk4e&km=amE_8A2!_=i%wZb~xS|pB73^7c$TWsjEk5KqwEWg!9?`pM z!)ujWfAU2IyWxiLq^pb`RwveTuNOP{!DyJUc(*=H8{Km!&z#9T+%(DVBuG{7$Aq&I0hW;2;~}^Th98wU(#$ zw@v30kJ}hknbkLaJ>p9fBf%FanUlJjZ~|vh1;?&;G0Mh99fv8F-<}p4m($T(Lj3!1 zJQdEamX7!8F#6MP14cUl#wIPs{aC|-(6bV z&^`9;FaO4oG-~N(7_)KGCpkqyH|R|if4zS$XCir38qJE6Dz!=beo>-8r81Y^Y@eqD z6GKybZR=qC)`CeP?&2q}qzTQjh$s&^rAA*;S)D--I6Lx<&xr%c7(lWBTRZX)L^lz+ zb@8jx;-+7G9ioHKw_Z=uds9H6ECQYrCB0sjH273XtE9D`E<)>F6I-qC?v)ZXH$v(R zq44{A;AZTBBI3-v{`-dXB8AiRQAxuj1Yk~G|zR~_K(<3(B zJTcy?STYz_X@+R-zH4T8m; z&z>hvj|yJYW#E)He0xoMvp5?q;bdx>fS6F9TzcMNx!v=xL-1FbKfeo9Bq_K=tcx5o z;tE_auSeD6Ct7??I!Mp+oXAnHHd0ek&)1beCO4IUV8RnL9dm|?uwS*wN-}G%T6#vh z{^2ZxnROL`%e^?9#ETW16(DY2+qK-nHhvauT8v+Pj+gZ!C0AzyA*Dw*JRY4 z+(DKm6{R)IWPG)B|FH8F+#npfhtmy{grP-{Pc{cDQ-N4{8C*=}wmMU>=mfA9BVjc` zgG9wp>Q>%YYW|-B&R;KOVmkP#;1Krbv`py00WRstc_2%9p#I4fl2KoNU&vS__KtF$ z&^I;Os$(-88t)<#VsFRFGuMFRbft}KjHDGOD|(tB>->VxxB7ENa=OoeYlyHI^Gegq z4C&zxi}MaD$9CJC5Lz`i9YPK}qM`~6rQW>Lg3mi<)%K;Uv$e&&%j%(1mCZ4fT7p9X zzw2HoSznWugB-o9JpM05SlM zTD^g@1gV=&u1_#31OLv2i16Y5n7?_0K4L<6A69Q;bJOflC1>y!7}x=G-{vxZFSjn@ z!?U?txH5b^S;qe3Lk{rFVsRJCzxuZn|jL;Ex(>vH7A+PiV zeOB@pwTZ}rV(JnGw}m!!mAtL$5Rc!^d@EWBG&e)`BD3xpUj(j{EI%NK?oWIVz*=r1 z;x03D2M6QZ*ROHlWcAM#P_Xn|sy42oUW|J84*9Z7!Z}fb%zkl@alsahMb;V9#q-@T z8J(2mn%I*Qb1oV@Zc*a?6exrswIj|6XuH5)hjIsJHJDr)frNSHfw99ul*AgSJ(qX) zF@<~Ti3rq&fPAHgpscO1r^BJ^Zmy`P?wU738N=RlR>zmoI)}0p z06t)cLMJuA6GH~ho#C=my{VQDX)BkAE8~7VUpd>g`dVg@`MmEZW4ZSP5Fm&Ym?4+R zWj=*MA%};6LYFJVrd}b>?{E1+UMR8mjbD0cUm-qes5_RsEWT||c8srbbxp234a0Eo ziP%ySkL+I@7qD+4GH*-_If#74Up?)C;%dl02i-@69rcHNdee{jp!!mG~yD#FD!D9kMrNmOcMj!QfdP@SFj=dR8!I zgN`kx+xATwz>oAI@ZQ@c`MAhaP9xQ={jh(q>YW)B0qmwJbqb{(WNTYd}deuWx z)JoldU|P0idR)1wwaPuyn{NF?<;+k`b^6m4fy$_+p!m>cC87RwYr$%8@7T|WD*%mJ zrl|%N>G3OP4-A$rOh`MN=g2$ z!+}Y+%L$6*8zm0*hU5WSSJ~4hBcP}nk^81eFuF9K!Rbfc?j&L4^o+%9!wm|G>u|md z^BcDnEl81Ys3*PW!&iGa(hC$~BAjOhYbUt%dVff0{qeb>p!&a#4Om%OWj>&!&QLN8 zjAZj#F1!ecGq zs8F&!Gd5m(V#cZVD&cpN#jTjO2MJlxXGKi;s?x=BJc-_(p1pS(JMh>6W2*Q2;}uwAd@8C=a7JO_;pqXk*2!jb`D;C4KO4a4|J-L~ zZ&YLd=fk`z&i#t3{#%&l z7WzDI;m`)c#y`BV{HbU$nQeO6FriC(dT2SHeAF#!$v8(GPHLFQvHp4usx)GFX>Mx+ zYMzGPPY|Al18U+*V@%xtVTg<3gU1?xnZMdlF#dmt*;!U~lGhf4Ro`o_TiDD51_q#; z>XZHR3g19a^A%u(tlaJ`fu>}_h>`mr{eOXxG9G|xgy&vJr6FtM0HsrJl^UB>%QG#E(04hegSoa-RZ7cj zG0yTxP?uKpAWc=wY3!J@Cy)wSq97SAfO;!BHi6eDviXV5s+@_K6CB;{_8rQ&iSzSzTCo!C+_E-bB^&FfyxEc zX@-)~_gT5pbSH}pwS(6_tO<(o`nN2Fz7vRim-nP2m2Qb*Q5}ttSs&}i4|}BQ<0Pw? zHu6yQz#_s=4?(hmsq{rk=h+OVlVKWOvQbz2Fj%c}ZX0y8^w&HY0 z7_O$3%pZGpYXsXYE1r_Bdu`J7qBZHA`C0c(l;3K5an*o~UncMs!KVf1u(@2xi?-WQ zS+pPb9C+eVtKo*;rW?Lekt&*m)zu=dkMW#4U?972ZNt-rR@dCz>}!rnwV0ID z)Jkgk$=yHIV(O}WVR3Q_h?;%GsDiXoKg9g4ziQoOsTR>TtX^O^P#cnd;UgNB_9axq zq2#2hNJgKCXx~mbJs(;2z=iSexM5~tVKFX`2_ApwwFP7ShPKyoMrauGnHY9hSXmrB z?(yAc=U?Rl$UhCKvyeK?))x8DW0>G=wzX+ZvC40zm+3e#a?h!l`gtIgtXmtZ@3l>N z=M*}Y*czdkE3($rLOHNMDyLQOA*Jt1>OD(xa(NjE{J=S5XF?8)uFMV4J&bL-tj3UF z8rU&N*>TSsbE}^8mU%g_dlF@w@PDd48ea!Ha<=7j$I z(&%^Vph{-)S=+skFtf&k*rsF_$+vIt4SyHQU0>Qw>!;i=i%Mag!6P^i{}D?m;TVY1 zUrv8?B)U=(ztpSV#S$)K0dO^)#+S&b#4*w|RZA^jTDm*SVhMD>LEw`3J~`{%#1%~Uzcp@td1`e$VQ0wD)vM73maf~5?_v#9 zx@03R?YIqd6Ow##&NixsOI0!uS5_~4yocOn&rWBo#-bI+kv5}B%py8g<)vd~!vK%i zSgW*5i-{#+Ogi2jE;VXd&#m-bruwSr`MDT{-*^3XUAQObobaqr)EmcVmmKRCRRvY*`^?=Iz2!Ub=K(CV|vyfE?B+EQ)lD7KOhJ1LD9F~E%z4aC&I#M#=B88U9_Xm7`^tBbPhcxBYea;VGu$Ve0gAwqh{#HO@G{ z52oo+-t$!WLS`m$NVEEe9O<#)M$Y@~tbo>X=mADRNwCn%7^8jcFZ!(eOkT)NYWHf7 zfkIuoN*kSb-@8(9glxYnS)2B)8Y+9Q;Z5W<>9`Hw5!7q2L{<>NojIq$+V*=vajAET z&&iVV_T=Pyg{j&xgVT<{+e<-)zOzQp*W1I++!Qh7^U*Jhti#v8J`9}lj4rC9DUpW|kd-cenF?bRXg;eW?XR)X zJr2+Q?Ixk1Lvk@Y3)BK&eMsv+I_&>`5vJZey#I@|viz6b<{cK6SYb{covOW{k~iO# zT&)Rmbor^KWb_*v*K0R758joeySUVruGQA)pM02>(a-jt3aLNP%*k{2R9W9Nstdw; z&UJ5nlQ`fcX<>d%HbY6I&a1?1_!`6BxbCD7TWyUIU4_16QPybB)TS?|e_PMF@s!+_ zyrf&nrkR7*m!bUxCZ7dEf+Vpi7jVBaxU%k9VTiXHEZ0V3+_vfgi#1g8cp6Uu*X# z4dr9JeuWmP>IRph#-idBg`Omyd~RZz_;1IENS}tG{bAV-dqI|+{C!J4HV)Yuh8kA} zri=Tq^Lk*Mf#?m@69UdsPz6r=J4wA~%kL~g*>%Z|q^AY8vSX`h71UA;s}b`Z;?Cus zIU*0P&^#;NigcX4a*H^5q@B-d;Zd-c@F&gx)av%fij~Et%-0y;>LrKD?5zdGWnKfa4Vnd}hh`!wD0@K=*V#jqhKFn2zC9C-?R9;US4;sQWKiHK zL^9L)H5P_vMT2+=X1gdg6tHVW2iHK^z@hk8DbB7qO`K-GGnzaj3B@-JAI{e7d9ozEzpaxBp3UH zl4pP(4ON5ok_#C4U2~BCPO+MK5GGB=mKH&N6D%$Z{yb(sdoe_s^BV?>CGbkXT5 zBd_;t_i8xYX6N}62*FQKn801QFfU%#b8P?x3Buefn1*G4cZ0e^7k@NnsS zSC9-LPix1uRWD-DwN=s@!ghT4XY}@Z*=m2W*}ga{Gp)2xsNEn2m@HLlnnaki5VQ*4 zPWD&-(x#{dEhLFhhLZ;bU=Ej1d{rn=tA@u&`^?PD!Dru3lvE;T+vp%HWN`A((IElH z^;JD?2^$%i>nMj4%KKLhoHPQ0wz;;@V_=|w?1&Bgz4Oqjn*~%87)Guy35Yf^(+D!-WG#*hX1|-<54pAc4n^|ko@wiCT zH~LvxlZJo3wPwmN(py1NWXB zY&(o}c!{tpGw$>m&AtaUNWApjmXYAvc>MVB`h_i&>mX9!9@dKw>Tos0Ip{H+cX?&AlQ@M5Pm@FXDPMm4Coti#MmbV)Ir) zVyyiUvN^J0;)${);l$emA6r`6eHB4{7N2*Rft;Uo{d;)+Pp#4Sgn#P;bh8p-QPLPKVMQ<9>K14 zeTy{6JNV$^0|pgg}IJN-&WCTpY0W z3u3cg$e^TiC_gv!pzoJi^nJC!K9fN~t%ri0j?z*e{^$rh5$>Hj^u8Q%!CzeXJ-Z=i ztr$mB!M|s1kb?fA#+u);m;LTZtxN31OjXgi=odi@Y!%8(50CH7Z`BF3KOKYN5L{1y z5xey-tM~}yBt_X(a4i55xY zlopslsm;^*4_Y(xiPt4E_d%;w#7$GSl8t^KU6eWU=_2xqySqE8n~O3r^z36`leDIG z`F?Tt@F-CVpri*HRIpWy9cOfy=ViTFu+#1RcrU7e00&Yua%O=;Xol+Ky)?bg;zBHu^1N;X*~+m7RYBcaMz#U! zv247;CrQR{cLhH^kvENKammrxj|?Fc^uC`rzBbRupH@DgzF3RkP9GuIjqIQQ^BaCN zU(s-vzy99XtiMY_F;<41*CrM{LT))(y0Nc`JN)&Ju%}p{^1RHOhhXtY26rvkGTq?z z1vAqlV3Gn{!-_lx7s1r@xu4XNZ)-srwPG9o~ zH|$oK>n2rfPIGLz&fW5`Vmof3JWqLfj66KIA5d{6yifnzP$V%m4_;h&TzW&V_*p#X zyUWw2OW602Kl{vv#>2w{#1i#Ie&}s30of{hRz_04%m+!~n#^)_k8FlgaXy$v;-g7} zQx5HsFnj2-H7g?OU%ApmEmGHDn43B2wkQy1+)ptz1`Tozww;$yL-B zyA~0t`~_qM&iqf;o0A8ro%4n}<$0!BfzpmG3ZDcftCTSJul>KxRTLGR>rPR&fNK`9 za{v6+imcYTKUM+hzhhp+zFd8J*FU-*0ZnGKRI{w);mVYF6;;2gTs8j1U$$0vfk0RkiF_PZZ~7NQE#t%&kz_M(X%rG+xWulvDMeiSz4D0jVd zIGGXbZ&0)VpgUQS$7i>=k~N9Gdiq_z2zPa96uYR920V#l7Ja`rS0rQ64#8JPCtio^ zh5!qTu{u5&fWq5X?s$UlQmfvb9dOh_p!8kwA8ER!f7%4AD}S~1@lq`R!hpcp#myX84eCiS+~?Af%BBO6 zQ8pv|WV837_;Luq3hA*Hbj0yTD@bBZThil|Tb=a*6N)D`c@B^{uISzJBpFfl^WRX2 zzE~CmAWAT4`OY@qdvnGxbfFi-bKdABWbY@ggMPv1MZZ#@f-5)m;Q)17=p9&ZtDjH@ z{JdpJKIfd#La?}C&tyc4@Y!VciV>R~mEFvsO=6_!ql=wFJ$P+{+j5IfjNK|G61N>s zD;GpexC!p!k}2%sOucQF2#EVj?bijRM*CNdVm8LFS29#&vzly zuUT_&A)D3}!qH?%dz1!URE^rA8>pWRj@qHs z^Td^QBB7z7C+z>&gbK!pkxYaf;MJ^LLWUT%%-Jd9Gp0pCY`}v+kePrNFk9+XG6uiY z)nWna&`+m>$6kk>x9^z#AJ0)uq0BG}G(?vLMa|c9J06YZ9k+_VZB;i1ypC|E3ONu@ zC*1l|wQu2Z-5dOG`3;iGgs!{GXl+a63htoOb8IO(tLAUqX(*{`AA{^NaCEx0ssq7@ ziTI@&{`kf+$S^XinEyfRGu)ryz{jGhHS(E!7RClGy==)_{^l0-PiEx{Nn2uO{93iN z{Qb_AniD#POx@ElCP!%AxW!UF?;3FWgCDoOn|&7NEF<@+uwDW~sEnaAP zOUKmP=Z0cG&%C#Eyvh`N|JjS2en#W_t7)P(jfulChBlv=BXQXyl{z^wWyu+r8&N@ zO`PR$xHq>bK#4;7gzj0m~<-k5>G5&gZ9+A|s3E($Og3*<@fzfgPyl z%;{~=v2dmSDLoBob!O6t%g-!y2)Co5;sj1ki(t}{oa2U~AzDA@BFz*K~{2_KtNee$Ge$rOa!|S<_q|7dRrDx+X!XdI@Sp< zsd-BYdDv98x_o@rerNC-HV^G_YrggoC4Szg?d*}Ofn2agDF+0W-^TnM@rL6wQ|}JC zni@9kvF9Bz0qS$lx=Lwgs#@u+rg^buFT*L4tEwIRe7!>{aO7b8q@>WrBz6*_d zUfs&aD#zNV9-Y|1G^1zuv1C7Kh}iS9e-AfX!L5x{16RWm*09&cWpJG1!Ob50Qp;t> z@l=#H?)2>Wq!d^YNw^}YYMof&ppvXiexbm7WdKsi>Ak@|_cD5FDXJVHd^=5TNCJzzZ6nxS;uCOu$$D>xuyrYLtHaY}&xw~ik zTtmYo^DoU<5H?;j;nPp0%I*%+KKK#JBEObKSM2VV3*Zcr`zfAOozFRSwUR!feIqXk z_p9;gND2MXBN!BGh=?rFN6jFEPX+QUR&Kf_ODHE=d=z&uLACP&<)wQgUvl1^TTTZe)P)Fk<*P0%m(w`e_kz?G*VY7339B~lRYQ;X`g9FVC{v;eCqS(iWP99{LA{;Or zHxs)A48&-~OCspl(rKQ9!f6+1d1_8-&BP#zU^AH|f!!rS=D*yYh}NyKuG&9(-`);o zJbm=&Xd;F$euI%v`9s3ntfHpGBxLdbdjtM}%u*zCW{r@sI(11+11~T7SB{;a%^{!6 zcq2ta(CvW@{@9w7Uk-W~ad_b^D|b$QM$>u#kwCk~k(z>H;WU#U@OwaMH1&d_OBMya zVU(Et4WA00OkcarP#ydE*I9Y52-A$X$h1)_wuX<$P5;UUjIOa73=lJnPD?{$jocCS zA(Z(rc|W6rSavBTX=*(tGm8ucN`5`(AH&6YX|m*&9UL4?!99M?U#`W33eW=74Kzc7 zzdtY5?U^Y>Ln}$HZK)#0A>Q~r#usCoUDvL5UHA*X7p_c^cor|H;av)RR{Su6_KpFFMN`1CMLB;yd3br<#m9G+tidHH zft{D*dyUC`tgtl?hw&#JvvgCX4IZbquy;xPAyiO5=9nAYq=H4fT|qb0Ke17w?@y9B-3d*9EvVadaNx5Q6|*rHxc5RijVP?C z?KxB_f8p{T`LXj68bnu%A6;-FeB#~bvNYQJC7JeWc;>N>+*%{8W}=$|BIf z%9vBY=LjqeRJ0CEZvKMUZ8XMasul&g9X=v^STP5IOP?aOEsf@9%Mg3-woT>J+tEIy z(TT*mi1=ZPo*D%7%h};5-(nCQIY8q0JHkKG11{4UWAdVBkhBR^vR*elmsR z2#MfA2-rGBX3%+KJa9k&GcjC4`tL;IA4e)Gu>h1i#i&3xu*ChZp#=BSQLv#(gGRMx z`5#YT@ z6FY?w3u+dS$m{SLAOWCuBSncFr~NK{P>40SFnJ-v14zx_FsyhSq-Gn{FPRh*Rpk3_ zAMSz^;cz!v_Ib6((ucXxxKqc=kDSBDjTLz_+g}+-j2ucm>0pme0R`X<=oZ&WuNXD4 zf_je^QgqsZu=ippJF-BKlk?-;oH1m2t*>VNlY^qOSc&Qn0mtwjzcU?N((`abeTPI5 zppc}t*J{X#5xK++=h_Pzo?o9t<_x%4y)-$lS5(4h4AZH6_*lxk>W;dikenv3-OeMf zL5C&QY}t@>Hh5d$DS~JFC1kUe>rO+Y1&jo=8$2rt*5PIa8asqfL@-vm{ioLs*e|T? z-B1v!i`qQ0C>eUD2$ffQFTbyF%7aiG5jUX# zwr`@YeKVBqO{WXz!x2{}fh7Rws^mcaLZQ6@c>=LVbWCb~{YR&#yQ3x%>@R*j0?fRe zo*o%$9sofc&Rf&xAsh1GEJay<1F?r)d7%sUr|I&X70Mn|TjO7<8H|!$G{kbpl@><6 zCRf++jz~icKuoXiZGW&xXA`Y{*2ID;+lQ#6p^9#6IWMm&~#EW zF?AmtL0`|tMfha-A)tU+06Zp@BJ6V={I#Hz)U<*SitffZi!*XKX;o6Z)@O)V7O>`=_C*`Vc(nRPiscwe=nuN4h3ZqIt9MZ6s)V8V z(isO4DICs&*EM@o@F!8RqeJ9_Zjgw>Il-IkD;P;)Gcni*8R}r~Jd^W&0wi!ThxlH+ zoMXV!%OaSb-XE}b=3ZoZJT zBD9<6H=MUz*OyT=Yf1M&I8(TbU#pmkl8~k*=7p)kcm?5jbt*v`y8`7Zeyjc)KOK>Q9LxNC+>JgYRRx3_0U za7#3IEMZXF#pEv`ip?{0Lm(p0VhPNS=}w7_6-_=o(Z(iJ`(mU6KE=+ecf+%ue&G3T zipH-&ooV8b7!gqoP*~-)B*tG3G~i=YkmdzOUWYkP@v)*yX;7h?;G1cs1nEA)-hASf zY9p$$ZxSk%^@`*m!|*@z-Zx_AvikhigfMA7XG9^s5qOOtS2aZSz&N;`q7*-*Q~9LM?+KDo`Y~!MGKKBox#9TXs@ro zQtO{ka^1%$ZDU{Xv&pw%<8<-Vo70QwFGsHR>vmV;6aF?Xo%xS8u~wxhYt~p_ykx+) z?yK=+NSLe3K4GX1QtJ(YJI4OBZ`ZObCr)U!)zq(B?GGkHLkD7W^U8FF-9xdu)R6_F z?q*ZQ4?(hck12Lqm4Cr_s`<4evLP|8T1zNg#YOpJp7kNWi(JEjXS5D7bI$@{&#G~` zNsz0%S^(hP&9vjT7r&aH_;PV@ex!mmB@iaIPcK9xP zv&wq1r!7%Xv%91$^S}ZQfp?6?wHdt1+J&R=YU2c#4{$`k%75>`jEZ9U)RUAKBXpGN zGsSH)^jE)*<$uSqMf(lz5dp<()?%jD!s5V1)4!;@czzgZi;jQFf%%9)v$6%=~; z=0xUA`;vNlTXLENPHj$~EXnZitzNU}wdWj^(1}bQ5QzQT)r7IL9FnrJ+IaG7-fAjC z+Qv+XyYL?opWxPvtBc8IL+na4#n+1+@z~YPsotYB@|u^c?sc_xe!F;1U&CnEMe7Ul zcVA7RRDyL`;U?V01onq}=EpV8pgdHZKPsrKEs?&9`hYDdltxukr-trtiiADi;RGFw zccv?nY0Q)RHR(_N|CKE^o-9+J*cnIF_DIhgO z=_u=J|Gy{}pXrXti}-JV&4O6Y2X8WVMZ;9J^g9?tF@?hZ?{;`z)K z7v#63HK6_m4ohp{=Jt~GHtKJ@_I|nQl08$JX)^Pcc3vJ1t@NrK3yFV3sj_BpK<w8%;yr?kN*?Knjsf!B`Ea7Z>MY6RE2fr-mTxW4lfp7 zhsIt&_JdjK1wSXru#1q8UB2y4GeeXRnpe=jE!_YEB+W@U^|C!%`u|ZvMkg8U2HHaxw(m5nc3hs zS;I^yVGVC`3H#PxjV&%bbBpf%=Hv%aH*yEkn2e)q18E)1t}X(5%V?e`-q+lzy!1QE zU$0evVjk;m5mur-cC{OCZQh`NQ@-hM%!d2l3P<#|=g&_K8Bu*zc!ftym&5^Cl^$q#%8gnt~G{}a@nd-DevCL%ddQm~29qnR_|AvZ~$gTBM3> ziLT~qGT#21H7GCCpU|UOpL}|8MBETdX>&5EaZ%fV>2F|n=(#z*jj7RevXHAAiM;rW z9L&uAa8%J`v~x4vr_Yzba|2D~_U6JCdCPKt&LF`I-cFq>yC0IcS+}CBXrkm{9S+&^ zf6!@oss}F(SAC2Rw#&UXsyenTUdCX0^6>a3^oLGHV;-**wX7};4u+}*-5u_;c=jx_ z@uAX3xhl;1`k^gGrKVWc({NGcA5Z04LUKVXi zA>S3zH?agw2)l0ov9@dC#4a`>e-L@!ua#vHnQNYIFeE4A*LkIWw5m6+(K>W&E3~~g zIk~Z_gN26uC9JD4IVkqK ztvxx(I?}K=t>#R$W>C42H{#Opmm#>V2iv~Im~P(zP}0CF;N+s=OyK+AUHB>^rK_Hw z=J)H{PapAq3p)^=ZcSo;e7w|9Kh%@4-e*DJE&WmZkYNVT3`p{SbW*ZEMfDPvorq$1 zl9&H=d;gOfdau40doGA}^dzn@sbJEK!SB&Y=Q}QLR2Qa%T{vcPql+is>vLQH=_%&Jiq1MUM&iG9xDfTSwihd13O1h=y)b3O z>`U0TAKtCHM_JHt3J7JIa?{-Dz-(h;~ z%#NOJ8`cp*CwTAFc*lN#-E5%A!&iwhne<*ykjYjCM5#dBR4n&%&fF>E^RrYlIjxFL zUrbP>&u`TEhJ-{*IizchIWdF^mf`rh37OcwXpcO&=g?VSh*>nu0>0eSn2zk%}PoE;C zz_-q8hKT-+-k|LQO~d)%H`&z<$^}Q6mqKJ4E)xV@wxNHUTT-8MR+m2NkqtK#>fT=y zZ}5y|pr+12w`*$!Cb#_oQ=&i?i`U5u_e1^tb$zvvL^!x6g9A?Zy7^bDwO5F=rI3vz z<`tihX9F(b7!Sb6NPfb#=0aACm$*Se`a_*q_p7THhl@V<8tNVDGBLf6sjptk`7~Y? zba|n<5zuIS?akXK=O?SzV<;%>w;IMN{>eueg1HfY)Z-!LS^l9i-d67=FP^jBoQLn+ zPfiA1e)~A)=nv^g8}pYIOpu>NZap;}c`-dxBTAm`*+u9w87fWrw!v#St!xb$^!6qd z$6W&-f{}uNSi?X{U;k{nqmwnppm@TCxsS1v&}veE0Xnd&sUdg<6*mJ>HlRG|mx&zf zEZkkS8*~jjyWxmztk@V+?RctH6wV=RJ(=fz@?$|l*{f}4=;oTf_>Y$Z@e9nh=5sA} z-@?hQN-(qbb`#oo@yn-kA*RD24J~Y!bs3W{{*JzTLYh}hEi2v8b_H3;0)nF{APPxslSk@{p zVSr@=GaSN|G89vUHMQl2q+m$CGtm~AYimRBJ|Xm=Ntwv+g3x1(XdCCc@#ql}+6BQR zcYiNPO(1Tr(3aYFb^gg$ypPRNq^9Y4%K*RX1t_57T;5AP1pLo|AdjYv;HM8C zM8Ud^Kw))bxQOMLAz1}Tk6RJ?cRRd}ee*n1Qu2knL5%1<BrbzXEb+3jSleZq`j zpR%L=@-%cUpGsokzmWTRYfe*48~Cg~B3%dd1Mi91OfZ(VYD3Wvr=)|1=AFIvUrg>g z{XDpN|8OzEgU*UKOYzTkOL(;45SN&~!;Emn6FqN1`yGLFZ4MH*4cXs4JgP(G^tK}B z5*ueUg}w?Y{UDX;g7)Vqpsm%{P*HXeH##5kx2;ZLR<|hlpK^GDGp<7Ze`@5^_VB7b z)c3ftB4uvNi~j9y(ixuve}-(OS4K#f&F+U3OjF6MMRb-0cuIu~F@bd6sfw>5H&Ck7+HRiCP{k zMZ-oHOtaDD^&b5vKiB-MKKz64ZSkg{VG}y0FRs3KHAS)-{|Nt2Q*GFzr^pzXMPSaD zpnxtu=6$Be@c?nKepkp1fTDEe(9a|y(^2Od3&NpH+XIzM_}3`be|P&hbL(1dvp32@qqv}a%#0nNXO7Nq9pOMXVsig--F&40ky6X4@+ zBlCWQs>EdBPUS@jZvVi`Q4^q35AZ*t;6V_NQ`k51E<6fDI3Fv|(#aS;7@b&&gZcV=d%6&VvWfj>N{F`d&!b{G^z0 zLd+`LaE3`=m%cOnEojN^<&AF%T?bAyx{Vom(eT13P#|n+P7XHYw6s2N?10V(r5lpU ziF<1;oEv^ASQ|iDAXY)1pUEZ?%XL$@#gyp*Ohr+o;X(H|_7V|?wo)K*`9sokHp9iz z5ZVdayFxnIxCn^2mssnU;QGnaVt2!$n4$kiSMxV>gZOq6z@``t2x66Tyy(xSe|Tw! z;n|?-oA@SM1Mm)qTXsPSPx{6KERM}Ib4RF#b^c;MA~Q()*|}K8f*;Rx^|W@7uRndI zdO0M0d$6O(5pZdfg7xm!t4#IY=Uk!iJ&_MuW8YQfOz~!2#LJ-66?nr6FrpVP(;^Ta zkC6<28WEfD3Wk_z`_JuRvf0zCF4w=Zw?`}-_*)8T`;q>QKYK&MKw+c^pQO2g4%GH} zAmp6wpEh*(kdzg+tbFem3z=cq67Niv8CR1Z2fBan`BsdSJ&^N5pY)v`R&@-gny9N_ zT!xAiz{v}T-z{#O{@k6vFO9ZLW=b_QBR=R35uyJ+N4H*e1aC5lt6?eQ4Wu;+P8c@q zU5x*dV8OQ%X*NN1*m%FR)hV*O#PK8g1K5Qn+;zFaP!LI!MxRcDQ6FQvLq9@sgp-0Q zaX7k4VxTgO5OC?xQe>3<&v*d}snrNH( zvTcp0q-BbjTj+MVBnxLqxxA=k$%{5LVjZ!Ej&V0s#qM0W@yHa1_=jjz?ogwjMDE?! zA8?~&+xE}BdxLVF4*0wZWZ!;Lt>_z*mWx!J-Xf=8PH!1Yi0bpR5kmi#5AmvDj+K^z z9TAjEk+WM}|`4z=~P3+le(374Xp6*?EuK`W}#m zq%5+kv;@VRX)f_dpIK`P(QvNIcDE>5j1>*@qr(>xr^_GNKDoG)YqfTdaIF}UiM)vnES5sDLX%v9L%YZkKn8+kDQ;VDQRw~128o{$(5i*yn<152h>MWz7h*eu$ z-95)}k<}j)&)*h&-A?#3UO+>yL5zzSWQRX znSXKhx3w#=_9vAn9dQF8Bjwl-hT{`w92Z&f@}}f{#e*tK_DcvAI`TYE*x!vm-0Xt{ zlg!UI2Lipx@!6?15s&aEKKS%l&Iael;yW9$$1;|CJJAI3M>qFPw|0q7GHY}LWL++X z$q2eabY>4+*YPQQZ1He#Vp3k}2lv|A^C(`KBx7U1wj*bl^(@d!@#XoF8tR($ajxql zRyfgwu?p_WQuA}Why0{nxBT<+^G#tDKAXMmhj`w9)Dd^k{J0#nxAE%1DK`r=T8^fD zM_&@enMqyD#J+QUIa+rgITP$^_Lx3qLuRpsV*w$7S;x*a8M=N`llhL~Q(qj8i@gUB z5HUJ7R^q;6-04H{VXgbErG(&)a_m-t3h`RLLtg>?!%RUtquk0`76cnZdgdKuK z6Cvp=wDsYequ7oIN$y9!ez#mg_$X8E?^=Dz6fY%#i!q^#rKWdUkQ}~wz5br}!Q_3Z zH(KV!W5bh7l}(rY(yr&^VN&AjP4eb|st4PL_9F@^2@{gAKoNN#|5J2*`kcqx-Cs>U zYLYUM$EbhU>ev18oDD_3kXi%yet<$&-9}~QdKGiUmzji#WP#XcR&jTqYHKRViu1VX za`zF3H07b+kRS0l2E?juxt-0vi>ps{{FX?BIQ`qaSk^&9-y!&EQvt@o#o=mJfOQ6BfZr^Kw!U5dmoFv$ll|UbzVZrfA!uIoE2z>Vv=YxjQ z_xFcQOPQ~FM=dKBee8raAR#j0kBR)3)T(~SXx2WiYB<7h!@MuD`+yZOFfdRxH4<}P znHjS;QEX#Fezu$bDui;0^|oWa$(W_cnSO$s`SiBdPw9x+sRE)NathUtK5>fCvMbt) zGJgk5?tKi5m_AZ0Tr@|+9rr@?F`aWL=uh(ET~^dE_h%OccGP$z;F9+wO&9T88k7%v z)x02^$*6Gqx^#X{D%7a{9{bp}WT^?GcKdJg+M_=sY=_aISBK2;UQAc*loWoUu6V*d zB8hdPzm2`A@I1nRdHO#eb&YhAoHWIDU9LN$c^U^hL|MqkzNk~mZld(N9nVQmU;XIZ zXQ8^l-^+8dzh?cS;&eou5)xu5Z@(u~{Ba)OusS!Ay%Bb1ySe5%@n+d_bI-S-q@iG@ zi>JeAe%WgCuzfxyq$F*Vg5S7dl~?6U<`6q>EK6aPAd6^^%WS?= z_zD?8Q}7EIYO`P(tx)gT(?55F$*Ps!7|<@IS3S6< zUoLAF7Rlwsy8Zq3$~}3k1`YPFnwqdm^F<8t?HKU6UNfp-51OG;y5GUvfdLJFm zFr_VeQdcV2ZrlmNP2afc_=#T^v-Ca7x;)E$GR;~Y{%jm6tlDZuS^7qygsxJ%=%37a z7|)gbg$(pE>J(3(nX7=+@^q`IPhhLQWjJr2Cv|%p`~Cw@x>wnwi(x$6r~sTo!zLX6&^n@db3w)RCZYD6Ew@ge(YMQQI7#kJ4U&=;1gdIh>akTj zoH??yQ&Gg=6o`L#%@SWwTpt+lw$eLU+wjMJrOsmbYHwoXR0(nng3_nVeUQYr5=T$5 zrCn_onpYk!?!(;y;dgP(EO>7ug!|3UZ&LANgh{moQyA#=)QS=sob|oU8zPZE`k}|7 z(%-g0pGlWHVt?|Cg$Rog!K{NVIKukjnu#awpV`r`J{CzLT{}XCkq#`c#z|u{Eji!c z6HXL?B^r{}Uqi}i>GAdgcc}RFff7qj5;3|~4GZbOw3{6)pZe7qQ#zkMA*xcd$)2C! zsL7vFm4NPecGFGOR1@->(nstLY7>drjG4S%2TTx2v9Md@rlj%FVtR3Lqwkx;rGk=# z-J&r5;3Cg3o|v=s_gbu4m)jP0R%n`qa!+DkvvfbBX`6kY=k4-1i2Pj*tZiuhR``d< zb-#Figso2Ayy{w0Wk;&2PtLbOpD$FB1Z6Y?k{M5b9h{h_BzY2nmT^zS2S|pl zM1Gg3o*-QjS_gFx`WYX$WU%lRLrQW~6iJHN8hPS9K5se*{(A)B%-4xn4NP}uyOzll zb*8Ft(|4UBt!S<_a4_aQwr4pc@#@udoXf=)`Dm)5rX28eB{lUm=}ahQH6I)QuY>_1 zpL-;mZyO3-ESf90AmHa2&B76yEY|Mme(VCi-iwo}GELFzhqp=P)YfIJU0enE$`ia< zS>E8fJ;kd1l$XsOIjbby6Ul7l@O>M;G}>{+xYV0oJ`O+KCedm^D`Iu@k5Bp2HFt2)es#B4#pxq zdjv~f|MP|g53ij|%hJm-ysXjD7I(;eHP@-rS%_3I;Z!zZQ`WUeZ?}A~+sPFrYhCS~ zcD+DK+#@cgDJAc><+0>nC&n7B!c3;DTX3KKV!-Zj%+0Z9Y3nCEI@$*fIf)OYE>N70yq<4R<9xe=HFj&2ZYwW2!>yq<3Y>U1{6>VMV7jMJunto)Q z*ws|^Fn;TKRTxgw$(XxLNan9dvwDj(~{=0A-n~^oghV;ZPdJDSVo(DoZyhNAE zPa%R9mBN{yzaDd1Q|&d-)YB9)I~KZzTM9P?3M6A>P9_#=9QjMp>bLFKEz zA(WIa{Z9nws|8lCA2>f~ZHdHHlzuHlc4Oc1K{N82CMG#d#jS<)6jJTZCFmEh725N1 zbAeq(B_L2Y0KIEN8X=)1P+u@GGWzj9ASLzOTYdteZQI-1_iwwMgnM7-u@kv-;2RK@ z!KhsFaN(BTb*k~vzS`83u9`p_B7s$l$O6{zLL7c*ecQVY&90`leDD2wVLdJdGU3cW zR(SL^NPE}a)-U)-+0d2EjrVzVwAUmh^_cRTdk5n9Gph}>-z7v-=n8mQtvwqe@zeA5 z)-&NuL$fX?apu;6e_L0OSle*&uGu)0AZLy3N$+EC^P?2@P!NH&&E>7;xgn*K|ft2!r8H=w$2W6O)Qyo+=&w%V=zqq_C zBPxmjv?tdkDMU^~1;WjT+KP|KL9eK)%6E4=5Rb-3TFx)1GV05cTU0US6#- zb8P4{G4o4Vf5x<(w$-aimKP9Iq0H)5lr?iA|3oO0_54-W@N z=Vzh<4Y?;3gj?T~$ddHgNvz^{>7pR-ZlL0&CfuWbj!Gy>7Uu3kWv*Co?~<#_pSMH? z&!O7n<>Nycj)6jLJ8cKbByWf&gD6>^7_9S{{L)lE5QCzuyr|eq0E?Ac4Ko1HK+ejF zL0DM$upEwxjJ7s$W@aXwHT(5Z_FmdA(Q%$Jxql!3ffAYpU!cXNs!DaIH3+cQBS!tB+<5UO>lJK6$;)dPx7zUp7=5aN7{)ua8D1TBYz)X zS7)cGg@tQmp7mqsqbt8RpvG;k>lSxE5|Yi+omWRSz?YOL!Q;%NTI!dUpr9rFSh%;wYd64Ot?1l@Lc$zm86KjB2Us!DHVS?~p0262gocLwh6%LGC3ZiXe`_G6 zqOzE_3PRiovna<*nX1?OZ^~%V+?(%;f6GsjajdhHJzII4dMv_jd1a*p1h`t@aRo#~ zB7$C&@tqyoQwJ8eii(O+8$XA`0YmpGN|J(dZ0xloTB<^cze!4>WjNNl)c0L5lgYf1 zknjOg$Pi?x@p7IjP-Jhun_in-UuIzcxgaI)@#75in_d)ZZ4Ku1snygcp`mXUoo!d< zKAjsjx0AjQhC9hqkQM##1OTm$AU!6xT z-?NYSq!93>{m~AA=i$6|go&yP@Jc^6VCUJ&`-IK10n^(ID(kN9Sm@zt1IiRDA6OgPT5o~W)Kqpyf)4EM zloBH;e71=vI4q0<#vIpzWDNAT$I$Ufu#rK|g|NQN9c>G1+x9}EtW*D$M}+Pzp+-U& z&OM{Q#`5b7>R*{S9T|CynI`)Y4~b2NbtDR8#9XSVs3??4-EPd1SZ|#_1O;|=!Pwjt zFM*o!+uT7#s=Q>uf4@^(rj1^nnf@Vzbu%%1XneQVfY>muGWLR?IaJqm;*F1Q10Zv2 z2k&WZlB=?^GA=?8F*!sdgnTt1W{cj{SHr_OV090NbBvgq`wVdm^nv1;BPJuWori}9 zJ-=;t#SMze%Y8fB`seCEr>~8Ti#tyuy+PZuTIhUHfv)$XF=o0VR;Gi413IP8z0E%Z z3Zja)g`*=2{MrA^&;QleM*(71>FeS%k>&&eX{32*Fn(U&X2)r1Yh&M#%z6Iq-ERCk z)CK+o5{NaBYF@wC?}MhxkE5f{fm%6jU{LMySCF-h%`3pI`@gKm1Kx34Nw~y4F~pYd z=8opoJxf!hs8Yxr(7DK1NSqZI%(1UuOW^=2Kru3W$o*lSH*DAV!c6^_=rfMfPlPN2QdM zEQg}j*Cs%JRHZXs)h$UOOtmWy)PdpCH!-n!8Z=`qc-Y|x1FYq1m&s%+%$gLa zN37Ij9`(-y9Nq$!km2%)!2sWQY<#@<5ox3Xf*YOa)lRLhu3nj0|3SL4*Qb?fhbOO# zISf-kh~Ni`&uB+MCnpu~z>?x(d3xCLSh^LChh+K3hX^#U6)Nh>Piol$d-s;2shAY$ zWMflU7dTatCg<$eR5b0Rt^Kc!oj^CyQ_M?hYAnYC)N9cjekBW3Z|))p)Y?k5dPvL3 z*=UB&o1&GLDx`Kf|H*xOA1Clpt3Z_QHStrW7`D85V}d~ydo~#^R-fKe3Qt#~sZ%cv zLXIh32hhmK@~knKZKH2Xa_ZJOcA0bl91fzN7OIU~_4Hmz4D1w9huY_X%Ia!G`d*Dd z8H6J6)-|3*<>uDbao4Y3Uw)#@Cc8?#0QNVdXJ{&=UgSmM9&Xb2iv)zS$>l7&NhNqj`o%HmcgK`+5*|I~p zH-5EVo56mZvAY*to*Ot|gd_mb z(2on;)SZ=Hd*|x#Mo4|?&^iVKQKCKvao&{l^lH>94XzK$uvn$J$dJ$$Ptc1gnqiNw z?H6PyfLV@hgnH}E0$s0KXgudc{Rn}$?5&1|hJrtzc%su41por62|1$MP@PV~ej#AW z2G_f#qE-h+dh0_J0c%E7$_vup4Xw3t6OpfrMbr$dVdjuI!7nG2I|fuxOmv+YZXkk) z=Itaf=ZUjEOvAs2z%R3SHTqummPh4Es`S0Uo&Ta4szfMz0%e}qPtLE;{Ob4M(^L`R z6sjXu0~cpTOk7;noxL0$2|P@q2v@VGJww z81Pq?mX+c=60V*u@4GlBBen219L*AJE852HW+outnYXqEss|yhU-S#b;FhCVO)3}<1 zM)42R)59vf-(%Tq?gdXa(PAF8{sWvcWr|57@RU=(=L?0i-qM z{$V&qC?a4j8d4OvqdPk-K}7?YzEWJrFO5eu{0^jDRP0m%oWx0A2=+Ymy{cO3<93Mj zf2#Tel0v(8?b>+!?Ac!;BO?JQ$@<4otxpe-pj$x#@twJpRbEn3(!9=#5CC2F&qFy? zLTUR_zg@YLoZR7-66WPqJh!l5g^EDFzM-Kd)~XqzcafF33Tc~)qS@I?3!^bRONiHl zgASa_G0N-$%QbhO&;}>p!N+D0xiHp*_;m}5Wi&Q6W~*M~LD2}RAdDVCt)9P9TvDQd zu0YSEZ98^Yhkcv2!r6=sDl69b`^cp;sPO&4pn@_*I&PPgy}f-cOk!$U+5;@kGGP&s zu2-T_7yYV{3yiVZ4;oh{q{-~oJqysK30z`6g;I1b#ur-C%Oju=f%w=!*5Psc;7cJ+ z)z9Yb15M@I>df_txCj*x!|{bs0e=4b)@5hUQMj^@tr>4%I0#ies`o>FlSo`$U|=93 zEo+fu;k|Fglm|@K95BYx>Wczg1+Zj=gF{29G#V{*^5H9?HF*zNzr$a;Gka7=!fA+w z%jZKI5^mkH1d^FlGvuaFOlZj>9FuBrqVEfz)lSXK^v=DI^%>(Bgy*n<;c6KkcES*q zQNvt|bmC#x+L!fZ*IFM*AQTALsL%q&a_pDQ`S<^U*nk@S6FAEJdAm{A`}?2&S9~Cd zxIulxA&|+$PDuXB?YLFC615Nsi&(pu_I6VO**AV9cF7j+KOqfD9w+S`D`~Ilbk3rp zZ@*I8JuOmXBb3y_6g0YUN-y+c3V<=)otm9)Iw=~<#ac&`L^NJPv#n?1=r#TziRyCR z4t->42cWRsQI}QN<|_;L5C1$pF27eFpj^aMU^36XHIS1(_s8bL4v(W@3QLm)25rB` z@|R0`e$lD9>qG~7jNb9~Qb{jr1z>6YtD!*?=@dccMp>}&`<%h3vu86r3_HS@s*WSB z_rTE}|EM@hM9r%s>pAc*S#Qb+mFjmUS}Z^S2M?;mG(|(@E(#`ulof+l*b$&5SK|~L zgDf#O5Y zH~YAd;@*glcY&Mx#Abh(nc4XqAPnq>^UyM8sRtrO#b(=ZAt11#%NqkS%ID6V%P%Y> z#*uzL?C=`-5fkHUXA!_cqdPMsiR9_|S>lxn#gKje2b7-yTBc}49V2A3VMxkD&cyPc z))vg`LNGC$AH6mm^z38MvsIC>#Yr)7@oPg*gWe(Q=0e*AAL6X2o;9_jM@J_oZz0{q zO=2&=66a!YDjZ)LX(E3#G{7K*70TQ=VCv%XD;HvDE4yA<89)wfX3`>KQAPhCv((Io*$Gb`e(E{QM{dw6itmH)EN>d@1 z&cXm#&jsrB>pWZ#1K-TeO}VM|93l09Od8N_X~-R`FTK}+;Rc>k64s;PVQJZP3V zfc6e=|5liINvtc33~spe;V)izYeIY_W(yyo_LrTV?eXGWdt%RiX=!FX05n(NDt8G8 zbbY{PO++<4FV)-I8`x!^nx6y&HXQM2{RMABSiXgrQM@i1ISQ3MubQaf;G-CzL^hd% z{n)s+Xg?geIyJDkM@UE?)q_G~YF<%Md}gK)=MnK_;M0@A{lE#iUG{An?EqYq2hyB_ z1(-8>1@Tv;v>3u91jI7Ke-p)LoIJ^mb%84|v$E>?^ceJrTsU7MJb*An(mu@=;-;g7 zg4oT=KU*h0>!8?Qj#=`qaT_ybFq5UkIAdgF1^FQh!bs%gR=;n6oBTvFeGqovYTZ zc~?P-IfAyEP$@aNnI!*hV$+5+%NV)oSpF%5Zk4_R zDi~l6cyrs)%uE{@FQ$xf{IZ-Q>b$i>zWM%9F?C*`+ko#P9yI2_vGqFMit&o|Cu8xd z-)L<$1kQ8o_U&#k!@d12bOyhc=X=b0r+-;nD{!}c73xCd> MG(J(G<8t+X00Qc$4*&oF literal 0 HcmV?d00001 diff --git a/notebooks/gearing.png b/notebooks/gearing.png new file mode 100644 index 0000000000000000000000000000000000000000..c66fe1e6a1dc514b719ecb9f6cbc982d2e74238a GIT binary patch literal 42946 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