Files
Payment_Reconciliation/v-2/model/__pycache__/Report.cpython-313.pyc

58 lines
16 KiB
Plaintext
Raw Normal View History

2026-03-23 11:37:15 +05:30
<EFBFBD>
,<2C><>i<EFBFBD>*<00><00>X<00>SSKrSSKJr SSKJr SSKrSSKJr SSKJr "SS5r g)<08>N)<01>datetime)<01> send_file)<01>Font)<01> FolderAndFilec<00><><00>\rSrSrSrSr/rSr\/S4Sj5r \S5r
\S5r \S5r \S 5r \S
5rS rg ) <0A> ReportHelper<65> F<>c<00>.<00>SUlSUl/Ulg)NFr
)<03> isSuccess<73> resultMessage<67>data)<01>selfs <20>mC:\Work\lcepl_Projects\Payment reconciliation\New1\payment_reconciliation_software-21-03-2026\model\Report.py<70>__init__<5F>ReportHelper.__init__s<00><00><1E><04><0E><1F><04><1A><16><04> <09>c<00><><00>URX5 U(a[RU5$[RU5$<00>N)<04>callprocr<00>fetch_one_result<6C>fetch_all_results)<04>cursor<6F> proc_name<6D>params<6D> fetch_ones r<00>
execute_sp<EFBFBD>ReportHelper.execute_sps=<00><00><0E><0F><0F> <09>*<2A><19> <19> )<29> )<29>&<26> 1<>
<EFBFBD> <19> *<2A> *<2A>6<EFBFBD> 2<>
rc<00>X<00>/nUR5HnUR5nM U$r)<02>stored_results<74>fetchall<6C>rr<00>results rr<00>ReportHelper.fetch_all_resultss+<00><00><11><04><1C>+<2B>+<2B>-<2D>F<EFBFBD><19>?<3F>?<3F>$<24>D<EFBFBD>.<2E><13> rc<00>X<00>SnUR5HnUR5nM U$r)r <00>fetchoner"s rr<00>ReportHelper.fetch_one_result$s+<00><00><13><04><1C>+<2B>+<2B>-<2D>F<EFBFBD><19>?<3F>?<3F>$<24>D<EFBFBD>.<2E><13> rc <00><><00>URRS5nURRS5nURRS5nURRS5nURRS5nURRS5nURRS5nURRS5n[R"5n U (d/$U R S S
9n
[
R U
S U=(d SU=(d SU=(d SU=(d SU=(d SU=(d SU=(d SU=(d S/5n U
R5 U R5 U $![an [S U 35 /n Sn A NASn A ff=f!U
R5 U R5 f=f) N<>subcontractor_name<6D>pmc_no<6E>state<74>district<63>block<63>village<67> year_from<6F>year_toT<6F><01>
dictionary<EFBFBD>search_contractor_infozError in search_contractor: )
<EFBFBD>form<72>get<65>config<69>get_db_connectionrrr<00> Exception<6F>print<6E>close) <0A>requestr)r*r+r,r-r.r/r0<00>
connectionrr<00>es r<00>search_contractor<6F>ReportHelper.search_contractor,s<><00><00>$<24>\<5C>\<5C>-<2D>-<2D>.B<>C<><1A><18><1C><1C>!<21>!<21>(<28>+<2B><06><17> <0C> <0C> <20> <20><17>)<29><05><1A><<3C><<3C>#<23>#<23>J<EFBFBD>/<2F><08><17> <0C> <0C> <20> <20><17>)<29><05><19>,<2C>,<2C>"<22>"<22>9<EFBFBD>-<2D><07><1B>L<EFBFBD>L<EFBFBD>$<24>$<24>[<5B>1<> <09><19>,<2C>,<2C>"<22>"<22>9<EFBFBD>-<2D><07><1B>-<2D>-<2D>/<2F>
<EFBFBD><19><15>I<EFBFBD><1B>"<22>"<22>d<EFBFBD>"<22>3<><06> <1F><1F>*<2A>*<2A><16>(<28>&<26>.<2E>$<24><1A>N<EFBFBD>d<EFBFBD><19>M<EFBFBD>T<EFBFBD><1C>$<24><04><19>M<EFBFBD>T<EFBFBD><1B>O<EFBFBD>t<EFBFBD><1D>%<25><14><1B>O<EFBFBD>t<EFBFBD> <12> <0E>D<EFBFBD>( <13>L<EFBFBD>L<EFBFBD>N<EFBFBD> <16> <1C> <1C> <1E><13> <0B><><19> <16> <11>0<><11><03>4<> 5<><15>D<EFBFBD><44> <16><>
<13>L<EFBFBD>L<EFBFBD>N<EFBFBD> <16> <1C> <1C> <1E>s+<00>A'F<00>
F4<03>F/<03>*F7<00>/F4<03>4F7<00>7"Gc
<00>F<00>[R"5nURSSS9n[R USU/S5n[R USU/5n[R USU/5n[R USU/5n[R USU/5n[R USU/5n[R US U/5n 0S
[ [ S U555_S [ [ S U555_S[ [ SU555_S[ [ SU555_S[ [ SU555_S[ [ SU555_S[ [ SU555_S[ [ SU555_S[ [ SU555_S[ [ SU555_S[ [ SU555_S [ [ S!U555_S"[ [ S#U555_S$[ [ S%U555_S&[ [ S'U 555_S([ [ S)U 555_S*[ [ S+U 555_n
[R"5RS,5n UR5 UR5 UUUUU UUU
U S-. $!UR5 UR5 f=f).NT)r2<00>buffered<65>GetContractorInfo<66>GetContractorHoldTypes<65>GetContractorInvoices<65> GetGSTRelease<73>GetHoldRelease<73> GetCreditNote<74> GetPayments<74>sum_invo_basic_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> Basic_AmountrN<><00><02>.0<EFBFBD>rows r<00> <genexpr><3E>5ReportHelper.get_contractor_report.<locals>.<genexpr>o<00><00><00><00>3a<33>X`<60>QT<51><0E>4G<34>4L<34>1<EFBFBD>4L<34>X`<60><><00><01>sum_invo_debit_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> Debit_AmountrNrLrMs rrPrQprRrS<00>sum_invo_after_debit_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03>After_Debit_AmountrNrLrMs rrPrQqs <00><00><00>9m<39>dl<64>]`<60>>R<>:S<>:X<>WX<57>:X<>dl<64>rS<00> sum_invo_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03>AmountrNrLrMs rrPrQrs<00><00><00>-U<>H<EFBFBD>S<EFBFBD>(<28>m<EFBFBD>.@<40>q<EFBFBD>.@<40>H<EFBFBD>rS<00>sum_invo_gst_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03>
GST_AmountrNrLrMs rrPrQs<00><00><00><00>1]<5D>T\<5C>S<EFBFBD>l<EFBFBD>2C<32>2H<32>q<EFBFBD>2H<32>T\<5C>rS<00>sum_invo_tds_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03>
TDS_AmountrNrLrMs rrPrQtr`rS<00>sum_invo_ds_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> SD_AmountrNrLrMs rrPrQus<00><00><00>0[<5B>RZ<52>3<EFBFBD>[<5B>1A<31>1F<31>Q<EFBFBD>1F<31>RZ<52>rS<00>sum_invo_on_commissionc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> On_CommissionrNrLrMs rrPrQvs<00><00><00>7f<37>]e<>VY<56>O<EFBFBD>8L<38>8Q<38>PQ<50>8Q<38>]e<>rS<00>sum_invo_hydro_testc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> Hydro_TestingrNrLrMs rrPrQw<00><00><00><00>4c<34>Zb<5A>SV<53><1F>5I<35>5N<35>Q<EFBFBD>5N<35>Zb<5A>rS<00>sum_invo_gst_sd_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> GST_SD_AmountrNrLrMs rrPrQxrmrS<00>sum_invo_final_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> Final_AmountrNrLrMs rrPrQyrRrS<00>sum_invo_hold_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> hold_amountrNrLrMs rrPrQzs<00><00><00>2_<32>V^<5E>s<EFBFBD>}<7D>3E<33>3J<33><11>3J<33>V^<5E>rS<00>sum_gst_basic_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> basic_amountrNrLrMs rrPrQ|<00><00><00><00>2_<32>W^<5E>PS<50>~<7E>3F<33>3K<33>!<21>3K<33>W^<5E>rS<00>sum_gst_final_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> final_amountrNrLrMs rrPrQ}rzrS<00>sum_pay_payment_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03>Payment_AmountrNrLrMs rrPrQs<00><00><00>4d<34>[c<>TW<54>9I<39>5J<35>5O<35>a<EFBFBD>5O<35>[c<>rS<00>sum_pay_tds_payment_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03>TDS_Payment_AmountrNrLrMs rrPrQ<00>s <00><00><00>8l<38>ck<63>\_<>=Q<>9R<39>9W<39>VW<56>9W<39>ck<63>rS<00>sum_pay_total_amtc3<00><# <00>UHoS=(d Sv<00> M g7f)<03> Total_amountrNrLrMs rrPrQ<00>s<00><00><00>2`<60>W_<57>PS<50>~<7E>3F<33>3K<33>!<21>3K<33>W_<57>rSz%Y-%m-%d) <09>contInfo<66>invoices<65>
hold_types<EFBFBD>gst_rel<65>payments<74> credit_note<74> hold_release<73>total<61> current_date) r6r7rrr<00>float<61>sumr<00>now<6F>strftimer:) <0C> contractor_idr<rr<>r<>r<>r<>r<>r<>r<>r<>r<>s r<00>get_contractor_report<72>"ReportHelper.get_contractor_reportXs2<00><00><1F>1<>1<>3<>J<EFBFBD><1F>&<26>&<26>$<24><14>&<26>F<>F<EFBFBD>+ #<23>'<27>2<>2<>6<EFBFBD>;N<>Q^<5E>P_<50>ae<61>f<><08>)<29>4<>4<>V<EFBFBD>=U<>Xe<58>Wf<57>g<>
<EFBFBD>'<27>2<>2<>6<EFBFBD>;R<>Ub<55>Tc<54>d<><08>&<26>1<>1<>&<26>/<2F>M<EFBFBD>?<3F>[<5B><07>+<2B>6<>6<>v<EFBFBD>?O<>R_<52>Q`<60>a<> <0C>*<2A>5<>5<>f<EFBFBD>o<EFBFBD>P]<5D><EFBFBD>_<> <0B>'<27>2<>2<>6<EFBFBD>=<3D>=<3D>/<2F>Z<><08><12>(<28>%<25><03>3a<33>X`<60>3a<33>0a<30>*b<><12>(<28>%<25><03>3a<33>X`<60>3a<33>0a<30>*b<><12>/<2F><05>c<EFBFBD>9m<39>dl<64>9m<39>6m<36>0n<30><12>#<23>E<EFBFBD>#<23>-U<>H<EFBFBD>-U<>*U<>$V<> <12>
'<27><05>c<EFBFBD>1]<5D>T\<5C>1]<5D>.]<5D>(^<5E> <12> '<27><05>c<EFBFBD>1]<5D>T\<5C>1]<5D>.]<5D>(^<5E> <12>&<26>u<EFBFBD>S<EFBFBD>0[<5B>RZ<52>0[<5B>-[<5B>'\<5C><12>-<2D>e<EFBFBD>C<EFBFBD>7f<37>]e<>7f<37>4f<34>.g<><12>*<2A>5<EFBFBD><13>4c<34>Zb<5A>4c<34>1c<31>+d<><12>*<2A>5<EFBFBD><13>4c<34>Zb<5A>4c<34>1c<31>+d<><12>)<29>%<25><03>3a<33>X`<60>3a<33>0a<30>*b<><12>(<28><15>s<EFBFBD>2_<32>V^<5E>2_<32>/_<>)`<60><12>(<28><15>s<EFBFBD>2_<32>W^<5E>2_<32>/_<>)`<60><12>(<28><15>s<EFBFBD>2_<32>W^<5E>2_<32>/_<>)`<60><12>"*<2A>5<EFBFBD><13>4d<34>[c<>4d<34>1d<31>+e<>#<12>$.<2E>u<EFBFBD>S<EFBFBD>8l<38>ck<63>8l<38>5l<35>/m<>%<12>&(<28><15>s<EFBFBD>2`<60>W_<57>2`<60>/`<60>)a<>'<12><05>, (<28>|<7C>|<7C>~<7E>6<>6<>z<EFBFBD>B<> <0C><17> <0C> <0C><0E><1A> <20> <20>"<22>%<25>$<24>(<28>"<22>$<24>*<2A> ,<2C><1E> ,<2C>
<0E>
<0E><><17> <0C> <0C><0E><1A> <20> <20>"<22>s <00>J+K><00>>"L c<00><> <00>[R"5nURSS9n[R USU/S5nU(dgUR SU/5 /nUR 5H"nURUR55 M$ U(dg[R"5nURnSUl URS/5 [SS 9URUR S
S 9lUR/5 URS UR%S 5=(d S/5 URSUR%S5=(d S/5 URSUR%S5=(d S/5 URSUR%S5=(d S/5 URSUR%S5=(d S/5 URSUR%S5=(d S/5 URSUR%S5=(d S/5 URSUR%S5=(d S/5 URSUR%S5=(d S/5 URSUR%S5=(d S/5 UR/5 UR/5 /SQnURU5 ['S
[)U5S
-5H)n [SS 9URUR U S 9lM+ S n
S n S n UGH<>n U R%S!5U R%S5U R%S"5U R%S#5U R%S$5U R%S%5U R%S&5U R%S'5U R%S(5U R%S)5U R%S*5U R%S+5U R%S,5U R%S-5U R%S.5U R%S/5U R%S05U R%S15U R%S25U R%S35U R%S45U R%S55/nU
[+U R%S15=(d S 5- n
U [+U R%S25=(d S 5- n U [+U R%S45=(d S 5- n URU5 GM<> UR/5 URSSSSSSSSSSSSSSSSS6U
U SU S/5 UR,HonS nUS R.nUH>nUR0(dM[3U[)[5UR0555nM@ US7-UR6UlMq S8UR%S 5S93n[:R<"U5nUR?U5 [AUSS:9$![Ban[5U5sSnA$SnAff=f);NTr1rB)zNo contractor foundi<64><00>FetchInvoicesByContractorzNo invoice data foundzContractor ReportzSUB CONTRACTOR DETAILS)<01>bold<6C>)rO<00>column<6D>Name<6D>Contractor_Namer
z Mobile No<4E> Mobile_No<4E>Email<69>Village<67> Village_Name<6D>Block<63>
Block_Name<EFBFBD>District<63> District_Name<6D>State<74>
State_Name<EFBFBD>AddresszGST No<4E>GST_NozPAN No<4E>PAN_No)zPMC Nor<6F>z
Invoice Noz Invoice Datez Work Type<70>Invoice_Detailsz Basic Amountz Debit AmountzAfter Debit Amountr\z
GST Amountz
TDS Amountz SD Amountz On Commissionz Hydro Testingz Hold Amountz GST SD Amountz Final AmountzPayment Amountz TDS Paymentz Total Amount<6E>UTRr<00>PMC_No<4E>
invoice_no<EFBFBD> Invoice_Date<74> Work_Typer<65>rKrVrYr\r_rcrfrirl<00> Hold_Amountrprsr<>r<><00> Total_Amountr<74><00>TOTAL<41><00>Contractor_Report_z.xlsx)<01> as_attachment)"r6r7rrrrr <00>extendr!<00>openpyxl<78>Workbook<6F>active<76>title<6C>appendr<00>cell<6C>max_row<6F>fontr5<00>range<67>lenr<6E><00>columns<6E> column_letter<65>value<75>max<61>str<74>column_dimensions<6E>widthr<00>get_download_path<74>saverr8)r<>r<rr<>r<>r#<00>workbook<6F>sheet<65>headers<72>col<6F> total_final<61> total_payment<6E> total_amount<6E>invrOr<><00>
max_lengthr<EFBFBD>r<><00>filename<6D> output_filer=s r<00>download_report<72>ReportHelper.download_report<72>s5<00><00>{ <1A><1F>1<>1<>3<>J<EFBFBD><1F>&<26>&<26>$<24>&<26>7<>F<EFBFBD>$<24>.<2E>.<2E>v<EFBFBD>7J<37>]<5D>O<EFBFBD>]a<>b<>H<EFBFBD><1B>1<> <13>O<EFBFBD>O<EFBFBD>7<>-<2D><1F> I<><19>H<EFBFBD> <20>/<2F>/<2F>1<><06><18><0F><0F><06><0F><0F> 1<>2<>2<><1C>.<2E> <20>(<28>(<28>*<2A>H<EFBFBD><1C>O<EFBFBD>O<EFBFBD>E<EFBFBD>-<2D>E<EFBFBD>K<EFBFBD> <12>L<EFBFBD>L<EFBFBD>2<>3<> 4<>;?<3F>T<EFBFBD>?<3F>E<EFBFBD>J<EFBFBD>J<EFBFBD>5<EFBFBD>=<3D>=<3D><11>J<EFBFBD> 3<> 8<> <11>L<EFBFBD>L<EFBFBD><12> <1C> <11>L<EFBFBD>L<EFBFBD>&<26>(<28>,<2C>,<2C>/@<40>"A<>"G<>R<EFBFBD>H<> I<> <11>L<EFBFBD>L<EFBFBD>+<2B>x<EFBFBD>|<7C>|<7C>K<EFBFBD>'@<40>'F<>B<EFBFBD>G<> H<> <11>L<EFBFBD>L<EFBFBD>'<27>8<EFBFBD><<3C><<3C><07>#8<>#><3E>B<EFBFBD>?<3F> @<40> <11>L<EFBFBD>L<EFBFBD>)<29>X<EFBFBD>\<5C>\<5C>.<2E>%A<>%G<>R<EFBFBD>H<> I<> <11>L<EFBFBD>L<EFBFBD>'<27>8<EFBFBD><<3C><<3C> <0C>#=<3D>#C<><12>D<> E<> <11>L<EFBFBD>L<EFBFBD>*<2A>h<EFBFBD>l<EFBFBD>l<EFBFBD>?<3F>&C<>&I<>r<EFBFBD>J<> K<> <11>L<EFBFBD>L<EFBFBD>'<27>8<EFBFBD><<3C><<3C> <0C>#=<3D>#C<><12>D<> E<> <11>L<EFBFBD>L<EFBFBD>)<29>X<EFBFBD>\<5C>\<5C>)<29>%<<3C>%B<><02>C<> D<> <11>L<EFBFBD>L<EFBFBD>(<28>H<EFBFBD>L<EFBFBD>L<EFBFBD><18>$:<3A>$@<40>b<EFBFBD>A<> B<> <11>L<EFBFBD>L<EFBFBD>(<28>H<EFBFBD>L<EFBFBD>L<EFBFBD><18>$:<3A>$@<40>b<EFBFBD>A<> B<> <11>L<EFBFBD>L<EFBFBD><12> <1C> <11>L<EFBFBD>L<EFBFBD><12> <1C><0E>G<EFBFBD> <12>L<EFBFBD>L<EFBFBD><17> !<21><1C>Q<EFBFBD><03>G<EFBFBD> <0C>q<EFBFBD> 0<>1<><03>AE<41>4<EFBFBD><1F><05>
<EFBFBD>
<EFBFBD>u<EFBFBD>}<7D>}<7D>S<EFBFBD>
<EFBFBD>9<>><3E>2<><1C>K<EFBFBD><1D>M<EFBFBD><1C>L<EFBFBD><1F><03><17>G<EFBFBD>G<EFBFBD>H<EFBFBD>%<25><17>G<EFBFBD>G<EFBFBD>N<EFBFBD>+<2B><17>G<EFBFBD>G<EFBFBD>L<EFBFBD>)<29><17>G<EFBFBD>G<EFBFBD>N<EFBFBD>+<2B><17>G<EFBFBD>G<EFBFBD>K<EFBFBD>(<28><17>G<EFBFBD>G<EFBFBD>-<2D>.<2E><17>G<EFBFBD>G<EFBFBD>N<EFBFBD>+<2B><17>G<EFBFBD>G<EFBFBD>N<EFBFBD>+<2B><17>G<EFBFBD>G<EFBFBD>0<>1<><17>G<EFBFBD>G<EFBFBD>H<EFBFBD>%<25><17>G<EFBFBD>G<EFBFBD>L<EFBFBD>)<29><17>G<EFBFBD>G<EFBFBD>L<EFBFBD>)<29><17>G<EFBFBD>G<EFBFBD>K<EFBFBD>(<28><17>G<EFBFBD>G<EFBFBD>O<EFBFBD>,<2C><17>G<EFBFBD>G<EFBFBD>O<EFBFBD>,<2C><17>G<EFBFBD>G<EFBFBD>M<EFBFBD>*<2A><17>G<EFBFBD>G<EFBFBD>O<EFBFBD>,<2C><17>G<EFBFBD>G<EFBFBD>N<EFBFBD>+<2B><17>G<EFBFBD>G<EFBFBD>,<2C>-<2D><17>G<EFBFBD>G<EFBFBD>0<>1<><17>G<EFBFBD>G<EFBFBD>N<EFBFBD>+<2B><17>G<EFBFBD>G<EFBFBD>E<EFBFBD>N<EFBFBD>-<12><03>2<1C>u<EFBFBD>S<EFBFBD>W<EFBFBD>W<EFBFBD>^<5E>%<<3C>%A<><01>B<>B<> <0B><1D><15>s<EFBFBD>w<EFBFBD>w<EFBFBD>/?<3F>'@<40>'E<>A<EFBFBD>!F<>F<> <0A><1C><05>c<EFBFBD>g<EFBFBD>g<EFBFBD>n<EFBFBD>&=<3D>&B<><11> C<>C<> <0C><15> <0C> <0C>S<EFBFBD>!<21>= <20>B <12>L<EFBFBD>L<EFBFBD><12> <1C> <11>L<EFBFBD>L<EFBFBD><12>B<EFBFBD><02>B<EFBFBD><02>B<EFBFBD><02>B<EFBFBD><02>B<EFBFBD><02>B<EFBFBD><02>B<EFBFBD><02>B<EFBFBD><17><1B><1D><12><1C><12><0E> <0F> <20>-<2D>-<2D><06><1E>
<EFBFBD> &<26>q<EFBFBD> <09> 7<> 7<> <0A>"<22>D<EFBFBD><1B>z<EFBFBD>z<EFBFBD>z<EFBFBD>%(<28><1A>S<EFBFBD><13>T<EFBFBD>Z<EFBFBD>Z<EFBFBD><1F>5I<35>%J<>
<EFBFBD>#<23>@J<01>A<EFBFBD>~<7E><05>'<27>'<27> <0A>6<><<3C> (<28>,<2C>H<EFBFBD>L<EFBFBD>L<EFBFBD>9J<39>,K<>+L<>E<EFBFBD>R<>H<EFBFBD>'<27>9<>9<>(<28>C<>K<EFBFBD> <14>M<EFBFBD>M<EFBFBD>+<2B> &<26><1C>[<5B><04>=<3D> =<3D><><18> <1A><16>q<EFBFBD>6<EFBFBD>M<EFBFBD><4D> <1A>s3<00>AX(<00>AX(<00>S=X(<00>B X(<00>(
Y<03>2
Y<03><Y<03>Y)rr r N)<10>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__firstlineno__r r rr<00> staticmethodrrrr>r<>r<><00>__static_attributes__rLrrrr s<><00><00><15>I<EFBFBD><16>M<EFBFBD> <0B>D<EFBFBD><17>
<12>-/<2F>5<EFBFBD>
<EFBFBD><12>
<EFBFBD><12><14><12><14><12><14><12><14><12>(<14><12>(<14>V<12>;<0E><12>;<0E>z<12>|<1A><12>|rr)
r6r<00>flaskrr<><00>openpyxl.stylesr<00>model.FolderAndFilerrrLrr<00><module>r<>s#<00><01> <0A><1D><1B><0F> <20>-<2D>J<1A>Jr