import re
texts = [
"[' \n\na)\n\n \n\nFactuur\nVerdi Import Schoolfruit\nFactuur nr. : 71201 Koopliedenweg 33\nDeb. nr. : 108636 2991 LN BARENDRECHT\nYour VAT nr. : NL851703884B01 Nederland\nFactuur datum : 10-12-21\nAantal Omschrijving Prijs Bedrag\nOrder number : 77553 Loading date : 09-12-21 Incoterm: : FOT\nYour ref. : SCHOOLFRUIT Delivery date :\nWK50\nD.C. Schoolfruit\n16 Watermeloenen Quetzali 16kg 4 IMPERIAL BR I € 7,70 € 123,20\n360 Watermeloenen Quetzali 16kg 4 IMPERIAL BR I € 7,70 € 2.772,00\n6 Watermeloenen Quetzali 16kg 4 IMPERIAL BR I € 7,/0 € 46,20\n75 Watermeloenen Quetzali 16kg 4 IMPERIAL BR I € 7,70 € 577,50\n9 Watermeloenen Quetzali 16kg 4 IMPERIAL BR I € 7,70 € 69,30\n688 Appels Royal Gala 13kg 60/65 Generica PL I € 5,07 € 3.488,16\n22 Sinaasappels Valencias 15kg 105 Elara ZAI € 6,25 € 137,50\n80 Sinaasappels Valencias 15kg 105 Elara ZAI € 6,25 € 500,00\n160 Sinaasappels Valencias 15kg 105 FVC ZAI € 6,25 € 1.000,00\n320 Sinaasappels Valencias 15kg 105 Generica ZAI € 6,25 € 2.000,00\n160 Sinaasappels Valencias 15kg 105 Noordhoek ZA I € 6,25 € 1.000,00\n61 Sinaasappels Valencias 15kg 105 Noordhoek ZA I € 6,25 € 381,25\nTotaal Colli Totaal Netto Btw Btw Bedrag Totaal Bedrag\n€ 12.095,11 1.088,56\nBetaling binnen 30 dagen\nAchterstand wordt gemeld bij de kredietverzekeringsmaatschappij\nVerDi Import BV ING Bank NV. Rotterdam IBAN number: NL17INGB0006959173 ~~\n\n \n\nKoopliedenweg 38, 2991 LN Barendrecht, The Netherlands SWIFT/BIC: INGBNL2A, VAT number: NL851703884B01 i\nTel, +31 (0}1 80 61 88 11, Fax +31 (0)1 8061 88 25 Chamber of Commerce Rotterdam no. 55424309 VerDi\n\nE-mail: sales@verdiimport.nl, www.verdiimport.nl Dutch law shall apply. The Rotterdam District Court shall have exclusive jurisdiction.\n\nrut ard wegetables\n\x0c']",
"['A)\n\nFactuur\n\nFactuur nr.\nDeb. nr.\nYour VAT nr.\n\nFactuur datum\n\n72459\n\n108636\nNL851703884B01\n11-01-22\n\nAantal Omschrijving\n\nOrder number\n\nYour ref,\n\nD.C. Schoolfruit\n\n79005 Loading date\nSCHOOLFRUIT Delivery date\nWKO2\n\n782 Peen Breek peen 10xikg B Rabbit NLI\n138 Mandarijnen Clementinas 10kg 3-140 Black MAI\n450 Mandarijnen Clementinas 10kg 3-140 Black MAI\n486 Sinaasappels Navels 15kg 6-90 Gloriosa MAI\n\n60 Sinaasappels Navels 15kg 6-90 Gloriosa MA I\n\nVerDi\nVerDi\nVerDi\n\nTotaal Colli\n\n1.916\n\nVerDi Import BV\n\nKoopliedenweg 38, 2991 LN Barendrecht, The Netherlands\nTel. +31 (0)1 80 61 88 11, Fax +31 (0)1 8061 88 25\nE-mail: sales@verdiimport.nl, www.verdiimport.nl\n\nMidden Zuid Noord\nMandarijn 195 158 235\nWortel 202 164 416\nSinaas 302 244 0\n\nTotaal Netto\n\n€ 12.474,40\n\nVerdi Import Schoolfruit\nKoopliedenweg 38\n2991 LN BARENDRECHT\n\nNederland\nPrijs\n\n10-01-22 Incoterm: : FOT\n€ 4,70\n€ 8,00\n€ 8,00\n€ 7,50\n€ 7,50\n\n588\n\n782\n\n546\n\nBtw Btw Bedrag\n\nBedrag\n\n€ 3.675,40\n€ 1.104,00\n€ 3.600,00\n€ 3.645,00\n€ 450,00\n\nTotaal Bedrag\n\n€ 1.122,70 € 13.597,10\n\n \n\nBetaling binnen 30 dagen\nAchterstand wordt gemeld bij de kredietverzekeringsmaatschappij\n\nING Bank N.V. Rotterdam IBAN number: NL17INGB0006959173\n\nSWIFT/BIC: INGBNL2A, VAT number: NL851703884B01\nChamber of Commerce Rotterdam no, 55424309\nDutch law shall apply. The Rotterdam District Court shall have exclusive jurisdiction.\n\nSas?\nVerDi\n\nfruit and vegetables\n\x0c']",
'["a(S (>)\n\n \n\n \n \n\n \n\n \n\n \n\nFactuur\nVerdi Import Schoolfruit\nFactuur nr. + 71257 Koopliedenweg 38\nDeb. nr. : 108636 2991 LN BARENDRECHT\nYour VAT nr. : NL851703884B01 Nederland\nFactuur datum : 13-12-21\nAantal Omschrijving Prijs Bedrag\nOrdernumber : 76929 Loading date : 29-11-21 Incoterm: : FOT\nYour ref, : Delivery date :\nD.C. Schoolfruit\n705 Appels Royal Gala 13kq 60/65 Generica PL I € 4,68 € 3.299,40\nOrder number : 76643 Loading date : 25-11-21 Incoterm: : FRA\nYour ref. : Delivery date\nD.C, Schoolfruit\n1.712 Tomaten Cherry pruim 4kg Los Cherie MA I € 2,25 € 3.852,00\n80 Sinaasappels Midnights 15kg 105 BIG 5 ZAI € 6,50 € 520,00\n240 Sinaasappels Midnights 15kg 105 Noordhoek ZAI € 6,50 € 1.560,00\n8 Sinaasappels Valencias 15kg 105 Limpopo ZAI € 6,50 € 52,00\n160 Sinaasappels Valencias 15kg 105 Noordhoek ZAI € 6,50 € 1.040,00\n320 Sinaasappels Valencias 15kg 105 Noordhoek ZAI € 6,50 € 2.080,00\nSINAAS:\nMIDDEN 267 pcm\nNOORD 325 2%; oe\nZUID 216 PARTUNUMMER\nTOTAAL: 808 | DATUN Bi r|\nCHERRY:\nMIDDEN 564\nNOORD 693\nZUID 455\nTOTAAL: 1712 ee\nBETALING\nTotaal Colli Totaal Bedrag\n\n \n \n \n\n€ 13.519,71\n\n \n \n\nBetaling binnen 30 dagen\nAchterstand wordt gemeld bij de kredietverzekeringsmaatschappij\n\nails,\nVerDi Import BV ING Bank N.V. Rotterdam IBAN number: NL17INGB0006959173 —\nKoopliedenweg 38, 2991 LN Barendrecht, The Netherlands SWIFT/BIC: INGBNL2A, VAT number: NL851703884B01 a\nTel. +31 (0)1 80 61 88 11, Fax +31 (0)1 8061 88 25 Chamber of Commerce Rotterdam no, 55424309 VerDi\n\nE-mail: sales@verdiimport.nl, www.verdiimport.nl Dutch law shall apply. The Rotterdam District Court shall have exclusive jurisdiction,\n\nfret and vegetan"]',
'["a(S (>)\n\n \n\n \n \n\n \n\n \n\n \n\nFactuur\nVerdi Import Schoolfruit\nFactuur nr. + 71257 Koopliedenweg 38\nDeb. nr. : 108636 2991 LN BARENDRECHT\nYour VAT nr. : NL851703884B01 Nederland\nFactuur datum : 13-12-21\nAantal Omschrijving Prijs Bedrag\nOrdernumber : 76929 Loading date : 29-11-21 Incoterm: : FOT\nYour ref, : Delivery date :\nD.C. Schoolfruit\n705 Appels Royal Gala 13kq 60/65 Generica PL I € 4,68 € 3.299,40\nOrder number : 76643 Loading date : 25-11-21 Incoterm: : FRA\nYour ref. : Delivery date\nD.C, Schoolfruit\n1.712 Tomaten Cherry pruim 4kg Los Cherie MA I € 2,25 € 3.852,00\n80 Sinaasappels Midnights 15kg 105 BIG 5 ZAI € 6,50 € 520,00\n240 Sinaasappels Midnights 15kg 105 Noordhoek ZAI € 6,50 € 1.560,00\n8 Sinaasappels Valencias 15kg 105 Limpopo ZAI € 6,50 € 52,00\n160 Sinaasappels Valencias 15kg 105 Noordhoek ZAI € 6,50 € 1.040,00\n320 Sinaasappels Valencias 15kg 105 Noordhoek ZAI € 6,50 € 2.080,00\nSINAAS:\nMIDDEN 267 pcm\nNOORD 325 2%; oe\nZUID 216 PARTUNUMMER\nTOTAAL: 808 | DATUN Bi r|\nCHERRY:\nMIDDEN 564\nNOORD 693\nZUID 455\nTOTAAL: 1712 ee\nBETALING\nTotaal Colli Totaal Bedrag\n\n \n \n \n\n€ 13.519,71\n\n \n \n\nBetaling binnen 30 dagen\nAchterstand wordt gemeld bij de kredietverzekeringsmaatschappij\n\nails,\nVerDi Import BV ING Bank N.V. Rotterdam IBAN number: NL17INGB0006959173 —\nKoopliedenweg 38, 2991 LN Barendrecht, The Netherlands SWIFT/BIC: INGBNL2A, VAT number: NL851703884B01 a\nTel. +31 (0)1 80 61 88 11, Fax +31 (0)1 8061 88 25 Chamber of Commerce Rotterdam no, 55424309 VerDi\n\nE-mail: sales@verdiimport.nl, www.verdiimport.nl Dutch law shall apply. The Rotterdam District Court shall have exclusive jurisdiction,\n\nfret and vegetan"]'
]
for text in texts:
blocks = re.search(r'SCHOOLFRUIT(?:(?!SCHOOLFRUIT).)*?Totaal Colli', text, re.S|re.I)
if blocks:
number_found = re.findall(r'^\d+(?:\.\d+)?', blocks.group(), re.M)
print(number_found)
else:
print("No matches!")
# ['16', '360', '6', '75', '9', '688', '22', '80', '160', '320', '160', '61']
# ['782', '138', '450', '486', '60']
# ['1', '80', '240', '8', '160', '320']
# ['1', '80', '240', '8', '160', '320']
aW1wb3J0IHJlCnRleHRzID0gWwoJIlsnIFxuXG5hKVxuXG4gXG5cbkZhY3R1dXJcblZlcmRpIEltcG9ydCBTY2hvb2xmcnVpdFxuRmFjdHV1ciBuci4gOiA3MTIwMSBLb29wbGllZGVud2VnIDMzXG5EZWIuIG5yLiA6IDEwODYzNiAyOTkxIExOIEJBUkVORFJFQ0hUXG5Zb3VyIFZBVCBuci4gOiBOTDg1MTcwMzg4NEIwMSBOZWRlcmxhbmRcbkZhY3R1dXIgZGF0dW0gOiAxMC0xMi0yMVxuQWFudGFsIE9tc2NocmlqdmluZyBQcmlqcyBCZWRyYWdcbk9yZGVyIG51bWJlciA6IDc3NTUzIExvYWRpbmcgZGF0ZSA6IDA5LTEyLTIxIEluY290ZXJtOiA6IEZPVFxuWW91ciByZWYuIDogU0NIT09MRlJVSVQgRGVsaXZlcnkgZGF0ZSA6XG5XSzUwXG5ELkMuIFNjaG9vbGZydWl0XG4xNiBXYXRlcm1lbG9lbmVuIFF1ZXR6YWxpIDE2a2cgNCBJTVBFUklBTCBCUiBJIOKCrCA3LDcwIOKCrCAxMjMsMjBcbjM2MCBXYXRlcm1lbG9lbmVuIFF1ZXR6YWxpIDE2a2cgNCBJTVBFUklBTCBCUiBJIOKCrCA3LDcwIOKCrCAyLjc3MiwwMFxuNiBXYXRlcm1lbG9lbmVuIFF1ZXR6YWxpIDE2a2cgNCBJTVBFUklBTCBCUiBJIOKCrCA3LC8wIOKCrCA0NiwyMFxuNzUgIFdhdGVybWVsb2VuZW4gUXVldHphbGkgMTZrZyA0IElNUEVSSUFMIEJSIEkg4oKsIDcsNzAg4oKsIDU3Nyw1MFxuOSBXYXRlcm1lbG9lbmVuIFF1ZXR6YWxpIDE2a2cgNCBJTVBFUklBTCBCUiBJIOKCrCA3LDcwIOKCrCA2OSwzMFxuNjg4IEFwcGVscyBSb3lhbCBHYWxhIDEza2cgNjAvNjUgR2VuZXJpY2EgUEwgSSDigqwgNSwwNyDigqwgMy40ODgsMTZcbjIyICBTaW5hYXNhcHBlbHMgVmFsZW5jaWFzIDE1a2cgMTA1IEVsYXJhIFpBSSDigqwgNiwyNSDigqwgMTM3LDUwXG44MCBTaW5hYXNhcHBlbHMgVmFsZW5jaWFzIDE1a2cgMTA1IEVsYXJhIFpBSSDigqwgNiwyNSDigqwgNTAwLDAwXG4xNjAgU2luYWFzYXBwZWxzIFZhbGVuY2lhcyAxNWtnIDEwNSBGVkMgWkFJIOKCrCA2LDI1IOKCrCAxLjAwMCwwMFxuMzIwIFNpbmFhc2FwcGVscyBWYWxlbmNpYXMgMTVrZyAxMDUgR2VuZXJpY2EgWkFJIOKCrCA2LDI1IOKCrCAyLjAwMCwwMFxuMTYwIFNpbmFhc2FwcGVscyBWYWxlbmNpYXMgMTVrZyAxMDUgTm9vcmRob2VrIFpBIEkg4oKsIDYsMjUg4oKsIDEuMDAwLDAwXG42MSAgU2luYWFzYXBwZWxzIFZhbGVuY2lhcyAxNWtnIDEwNSBOb29yZGhvZWsgWkEgSSDigqwgNiwyNSDigqwgMzgxLDI1XG5Ub3RhYWwgQ29sbGkgVG90YWFsIE5ldHRvIEJ0dyBCdHcgQmVkcmFnIFRvdGFhbCBCZWRyYWdcbuKCrCAxMi4wOTUsMTEgMS4wODgsNTZcbkJldGFsaW5nIGJpbm5lbiAzMCBkYWdlblxuQWNodGVyc3RhbmQgd29yZHQgZ2VtZWxkIGJpaiBkZSBrcmVkaWV0dmVyemVrZXJpbmdzbWFhdHNjaGFwcGlqXG5WZXJEaSBJbXBvcnQgQlYgSU5HIEJhbmsgTlYuIFJvdHRlcmRhbSBJQkFOIG51bWJlcjogTkwxN0lOR0IwMDA2OTU5MTczIH5+XG5cbiBcblxuS29vcGxpZWRlbndlZyAzOCwgMjk5MSBMTiBCYXJlbmRyZWNodCwgVGhlIE5ldGhlcmxhbmRzIFNXSUZUL0JJQzogSU5HQk5MMkEsIFZBVCBudW1iZXI6IE5MODUxNzAzODg0QjAxIGlcblRlbCwgKzMxICgwfTEgODAgNjEgODggMTEsIEZheCArMzEgKDApMSA4MDYxIDg4IDI1IENoYW1iZXIgb2YgQ29tbWVyY2UgUm90dGVyZGFtIG5vLiA1NTQyNDMwOSBWZXJEaVxuXG5FLW1haWw6IHNhbGVzQHZlcmRpaW1wb3J0Lm5sLCB3d3cudmVyZGlpbXBvcnQubmwgRHV0Y2ggbGF3IHNoYWxsIGFwcGx5LiBUaGUgUm90dGVyZGFtIERpc3RyaWN0IENvdXJ0IHNoYWxsIGhhdmUgZXhjbHVzaXZlIGp1cmlzZGljdGlvbi5cblxucnV0IGFyZCB3ZWdldGFibGVzXG5ceDBjJ10iLAoJIlsnQSlcblxuRmFjdHV1clxuXG5GYWN0dXVyIG5yLlxuRGViLiBuci5cbllvdXIgVkFUIG5yLlxuXG5GYWN0dXVyIGRhdHVtXG5cbjcyNDU5XG5cbjEwODYzNlxuTkw4NTE3MDM4ODRCMDFcbjExLTAxLTIyXG5cbkFhbnRhbCBPbXNjaHJpanZpbmdcblxuT3JkZXIgbnVtYmVyXG5cbllvdXIgcmVmLFxuXG5ELkMuIFNjaG9vbGZydWl0XG5cbjc5MDA1IExvYWRpbmcgZGF0ZVxuU0NIT09MRlJVSVQgRGVsaXZlcnkgZGF0ZVxuV0tPMlxuXG43ODIgUGVlbiBCcmVlayBwZWVuIDEweGlrZyBCIFJhYmJpdCBOTElcbjEzOCBNYW5kYXJpam5lbiBDbGVtZW50aW5hcyAxMGtnIDMtMTQwIEJsYWNrIE1BSVxuNDUwIE1hbmRhcmlqbmVuIENsZW1lbnRpbmFzIDEwa2cgMy0xNDAgQmxhY2sgTUFJXG40ODYgU2luYWFzYXBwZWxzIE5hdmVscyAxNWtnIDYtOTAgR2xvcmlvc2EgTUFJXG5cbjYwIFNpbmFhc2FwcGVscyBOYXZlbHMgMTVrZyA2LTkwIEdsb3Jpb3NhIE1BIElcblxuVmVyRGlcblZlckRpXG5WZXJEaVxuXG5Ub3RhYWwgQ29sbGlcblxuMS45MTZcblxuVmVyRGkgSW1wb3J0IEJWXG5cbktvb3BsaWVkZW53ZWcgMzgsIDI5OTEgTE4gQmFyZW5kcmVjaHQsIFRoZSBOZXRoZXJsYW5kc1xuVGVsLiArMzEgKDApMSA4MCA2MSA4OCAxMSwgRmF4ICszMSAoMCkxIDgwNjEgODggMjVcbkUtbWFpbDogc2FsZXNAdmVyZGlpbXBvcnQubmwsIHd3dy52ZXJkaWltcG9ydC5ubFxuXG5NaWRkZW4gWnVpZCBOb29yZFxuTWFuZGFyaWpuIDE5NSAxNTggMjM1XG5Xb3J0ZWwgMjAyIDE2NCA0MTZcblNpbmFhcyAzMDIgMjQ0IDBcblxuVG90YWFsIE5ldHRvXG5cbuKCrCAxMi40NzQsNDBcblxuVmVyZGkgSW1wb3J0IFNjaG9vbGZydWl0XG5Lb29wbGllZGVud2VnIDM4XG4yOTkxIExOIEJBUkVORFJFQ0hUXG5cbk5lZGVybGFuZFxuUHJpanNcblxuMTAtMDEtMjIgSW5jb3Rlcm06IDogRk9UXG7igqwgNCw3MFxu4oKsIDgsMDBcbuKCrCA4LDAwXG7igqwgNyw1MFxu4oKsIDcsNTBcblxuNTg4XG5cbjc4MlxuXG41NDZcblxuQnR3IEJ0dyBCZWRyYWdcblxuQmVkcmFnXG5cbuKCrCAzLjY3NSw0MFxu4oKsIDEuMTA0LDAwXG7igqwgIDMuNjAwLDAwXG7igqwgMy42NDUsMDBcbuKCrCA0NTAsMDBcblxuVG90YWFsIEJlZHJhZ1xuXG7igqwgMS4xMjIsNzAg4oKsIDEzLjU5NywxMFxuXG4gXG5cbkJldGFsaW5nIGJpbm5lbiAzMCBkYWdlblxuQWNodGVyc3RhbmQgd29yZHQgZ2VtZWxkIGJpaiBkZSBrcmVkaWV0dmVyemVrZXJpbmdzbWFhdHNjaGFwcGlqXG5cbklORyBCYW5rIE4uVi4gUm90dGVyZGFtIElCQU4gbnVtYmVyOiBOTDE3SU5HQjAwMDY5NTkxNzNcblxuU1dJRlQvQklDOiBJTkdCTkwyQSwgVkFUIG51bWJlcjogTkw4NTE3MDM4ODRCMDFcbkNoYW1iZXIgb2YgQ29tbWVyY2UgUm90dGVyZGFtIG5vLCA1NTQyNDMwOVxuRHV0Y2ggbGF3IHNoYWxsIGFwcGx5LiBUaGUgUm90dGVyZGFtIERpc3RyaWN0IENvdXJ0IHNoYWxsIGhhdmUgZXhjbHVzaXZlIGp1cmlzZGljdGlvbi5cblxuU2FzP1xuVmVyRGlcblxuZnJ1aXQgYW5kIHZlZ2V0YWJsZXNcblx4MGMnXSIsCgknWyJhKFMgKD4pXG5cbiBcblxuICBcbiBcblxuIFxuXG4gXG5cbiAgIFxuXG5GYWN0dXVyXG5WZXJkaSBJbXBvcnQgU2Nob29sZnJ1aXRcbkZhY3R1dXIgbnIuICsgNzEyNTcgS29vcGxpZWRlbndlZyAzOFxuRGViLiBuci4gOiAxMDg2MzYgMjk5MSBMTiBCQVJFTkRSRUNIVFxuWW91ciBWQVQgbnIuIDogTkw4NTE3MDM4ODRCMDEgTmVkZXJsYW5kXG5GYWN0dXVyIGRhdHVtIDogMTMtMTItMjFcbkFhbnRhbCBPbXNjaHJpanZpbmcgUHJpanMgQmVkcmFnXG5PcmRlcm51bWJlciA6IDc2OTI5IExvYWRpbmcgZGF0ZSA6IDI5LTExLTIxIEluY290ZXJtOiA6IEZPVFxuWW91ciByZWYsIDogRGVsaXZlcnkgZGF0ZSA6XG5ELkMuIFNjaG9vbGZydWl0XG43MDUgQXBwZWxzIFJveWFsIEdhbGEgMTNrcSA2MC82NSBHZW5lcmljYSBQTCBJIOKCrCA0LDY4IOKCrCAzLjI5OSw0MFxuT3JkZXIgbnVtYmVyIDogNzY2NDMgTG9hZGluZyBkYXRlIDogMjUtMTEtMjEgSW5jb3Rlcm06IDogRlJBXG5Zb3VyIHJlZi4gOiBEZWxpdmVyeSBkYXRlXG5ELkMsIFNjaG9vbGZydWl0XG4xLjcxMiBUb21hdGVuIENoZXJyeSBwcnVpbSA0a2cgTG9zIENoZXJpZSBNQSBJIOKCrCAyLDI1IOKCrCAzLjg1MiwwMFxuODAgU2luYWFzYXBwZWxzIE1pZG5pZ2h0cyAxNWtnIDEwNSBCSUcgNSBaQUkg4oKsIDYsNTAg4oKsIDUyMCwwMFxuMjQwIFNpbmFhc2FwcGVscyBNaWRuaWdodHMgMTVrZyAxMDUgTm9vcmRob2VrIFpBSSDigqwgNiw1MCDigqwgMS41NjAsMDBcbjggU2luYWFzYXBwZWxzIFZhbGVuY2lhcyAxNWtnIDEwNSBMaW1wb3BvIFpBSSDigqwgNiw1MCDigqwgNTIsMDBcbjE2MCBTaW5hYXNhcHBlbHMgVmFsZW5jaWFzIDE1a2cgMTA1IE5vb3JkaG9layBaQUkg4oKsIDYsNTAg4oKsIDEuMDQwLDAwXG4zMjAgU2luYWFzYXBwZWxzIFZhbGVuY2lhcyAxNWtnIDEwNSBOb29yZGhvZWsgWkFJIOKCrCA2LDUwIOKCrCAyLjA4MCwwMFxuU0lOQUFTOlxuTUlEREVOIDI2NyBwY21cbk5PT1JEIDMyNSAyJTsgb2VcblpVSUQgMjE2IFBBUlRVTlVNTUVSXG5UT1RBQUw6IDgwOCB8IERBVFVOIEJpIHJ8XG5DSEVSUlk6XG5NSURERU4gNTY0XG5OT09SRCA2OTNcblpVSUQgNDU1XG5UT1RBQUw6IDE3MTIgZWVcbkJFVEFMSU5HXG5Ub3RhYWwgQ29sbGkgVG90YWFsIEJlZHJhZ1xuXG4gICAgXG4gXG4gXG5cbuKCrCAxMy41MTksNzFcblxuIFxuIFxuXG5CZXRhbGluZyBiaW5uZW4gMzAgZGFnZW5cbkFjaHRlcnN0YW5kIHdvcmR0IGdlbWVsZCBiaWogZGUga3JlZGlldHZlcnpla2VyaW5nc21hYXRzY2hhcHBpalxuXG5haWxzLFxuVmVyRGkgSW1wb3J0IEJWIElORyBCYW5rIE4uVi4gUm90dGVyZGFtIElCQU4gbnVtYmVyOiBOTDE3SU5HQjAwMDY5NTkxNzMg4oCUXG5Lb29wbGllZGVud2VnIDM4LCAyOTkxIExOIEJhcmVuZHJlY2h0LCBUaGUgTmV0aGVybGFuZHMgU1dJRlQvQklDOiBJTkdCTkwyQSwgVkFUIG51bWJlcjogTkw4NTE3MDM4ODRCMDEgYVxuVGVsLiArMzEgKDApMSA4MCA2MSA4OCAxMSwgRmF4ICszMSAoMCkxIDgwNjEgODggMjUgQ2hhbWJlciBvZiBDb21tZXJjZSBSb3R0ZXJkYW0gbm8sIDU1NDI0MzA5IFZlckRpXG5cbkUtbWFpbDogc2FsZXNAdmVyZGlpbXBvcnQubmwsIHd3dy52ZXJkaWltcG9ydC5ubCBEdXRjaCBsYXcgc2hhbGwgYXBwbHkuIFRoZSBSb3R0ZXJkYW0gRGlzdHJpY3QgQ291cnQgc2hhbGwgaGF2ZSBleGNsdXNpdmUganVyaXNkaWN0aW9uLFxuXG5mcmV0IGFuZCB2ZWdldGFuIl0nLAoJJ1siYShTICg+KVxuXG4gXG5cbiAgXG4gXG5cbiBcblxuIFxuXG4gICBcblxuRmFjdHV1clxuVmVyZGkgSW1wb3J0IFNjaG9vbGZydWl0XG5GYWN0dXVyIG5yLiArIDcxMjU3IEtvb3BsaWVkZW53ZWcgMzhcbkRlYi4gbnIuIDogMTA4NjM2IDI5OTEgTE4gQkFSRU5EUkVDSFRcbllvdXIgVkFUIG5yLiA6IE5MODUxNzAzODg0QjAxIE5lZGVybGFuZFxuRmFjdHV1ciBkYXR1bSA6IDEzLTEyLTIxXG5BYW50YWwgT21zY2hyaWp2aW5nIFByaWpzIEJlZHJhZ1xuT3JkZXJudW1iZXIgOiA3NjkyOSBMb2FkaW5nIGRhdGUgOiAyOS0xMS0yMSBJbmNvdGVybTogOiBGT1RcbllvdXIgcmVmLCA6IERlbGl2ZXJ5IGRhdGUgOlxuRC5DLiBTY2hvb2xmcnVpdFxuNzA1IEFwcGVscyBSb3lhbCBHYWxhIDEza3EgNjAvNjUgR2VuZXJpY2EgUEwgSSDigqwgNCw2OCDigqwgMy4yOTksNDBcbk9yZGVyIG51bWJlciA6IDc2NjQzIExvYWRpbmcgZGF0ZSA6IDI1LTExLTIxIEluY290ZXJtOiA6IEZSQVxuWW91ciByZWYuIDogRGVsaXZlcnkgZGF0ZVxuRC5DLCBTY2hvb2xmcnVpdFxuMS43MTIgVG9tYXRlbiBDaGVycnkgcHJ1aW0gNGtnIExvcyBDaGVyaWUgTUEgSSDigqwgMiwyNSDigqwgMy44NTIsMDBcbjgwIFNpbmFhc2FwcGVscyBNaWRuaWdodHMgMTVrZyAxMDUgQklHIDUgWkFJIOKCrCA2LDUwIOKCrCA1MjAsMDBcbjI0MCBTaW5hYXNhcHBlbHMgTWlkbmlnaHRzIDE1a2cgMTA1IE5vb3JkaG9layBaQUkg4oKsIDYsNTAg4oKsIDEuNTYwLDAwXG44IFNpbmFhc2FwcGVscyBWYWxlbmNpYXMgMTVrZyAxMDUgTGltcG9wbyBaQUkg4oKsIDYsNTAg4oKsIDUyLDAwXG4xNjAgU2luYWFzYXBwZWxzIFZhbGVuY2lhcyAxNWtnIDEwNSBOb29yZGhvZWsgWkFJIOKCrCA2LDUwIOKCrCAxLjA0MCwwMFxuMzIwIFNpbmFhc2FwcGVscyBWYWxlbmNpYXMgMTVrZyAxMDUgTm9vcmRob2VrIFpBSSDigqwgNiw1MCDigqwgMi4wODAsMDBcblNJTkFBUzpcbk1JRERFTiAyNjcgcGNtXG5OT09SRCAzMjUgMiU7IG9lXG5aVUlEIDIxNiBQQVJUVU5VTU1FUlxuVE9UQUFMOiA4MDggfCBEQVRVTiBCaSByfFxuQ0hFUlJZOlxuTUlEREVOIDU2NFxuTk9PUkQgNjkzXG5aVUlEIDQ1NVxuVE9UQUFMOiAxNzEyIGVlXG5CRVRBTElOR1xuVG90YWFsIENvbGxpIFRvdGFhbCBCZWRyYWdcblxuICAgIFxuIFxuIFxuXG7igqwgMTMuNTE5LDcxXG5cbiBcbiBcblxuQmV0YWxpbmcgYmlubmVuIDMwIGRhZ2VuXG5BY2h0ZXJzdGFuZCB3b3JkdCBnZW1lbGQgYmlqIGRlIGtyZWRpZXR2ZXJ6ZWtlcmluZ3NtYWF0c2NoYXBwaWpcblxuYWlscyxcblZlckRpIEltcG9ydCBCViBJTkcgQmFuayBOLlYuIFJvdHRlcmRhbSBJQkFOIG51bWJlcjogTkwxN0lOR0IwMDA2OTU5MTczIOKAlFxuS29vcGxpZWRlbndlZyAzOCwgMjk5MSBMTiBCYXJlbmRyZWNodCwgVGhlIE5ldGhlcmxhbmRzIFNXSUZUL0JJQzogSU5HQk5MMkEsIFZBVCBudW1iZXI6IE5MODUxNzAzODg0QjAxIGFcblRlbC4gKzMxICgwKTEgODAgNjEgODggMTEsIEZheCArMzEgKDApMSA4MDYxIDg4IDI1IENoYW1iZXIgb2YgQ29tbWVyY2UgUm90dGVyZGFtIG5vLCA1NTQyNDMwOSBWZXJEaVxuXG5FLW1haWw6IHNhbGVzQHZlcmRpaW1wb3J0Lm5sLCB3d3cudmVyZGlpbXBvcnQubmwgRHV0Y2ggbGF3IHNoYWxsIGFwcGx5LiBUaGUgUm90dGVyZGFtIERpc3RyaWN0IENvdXJ0IHNoYWxsIGhhdmUgZXhjbHVzaXZlIGp1cmlzZGljdGlvbixcblxuZnJldCBhbmQgdmVnZXRhbiJdJwpdCmZvciB0ZXh0IGluIHRleHRzOgoJYmxvY2tzID0gcmUuc2VhcmNoKHInU0NIT09MRlJVSVQoPzooPyFTQ0hPT0xGUlVJVCkuKSo/VG90YWFsIENvbGxpJywgdGV4dCwgcmUuU3xyZS5JKQoJaWYgYmxvY2tzOgoJCW51bWJlcl9mb3VuZCA9IHJlLmZpbmRhbGwocideXGQrKD86XC5cZCspPycsIGJsb2Nrcy5ncm91cCgpLCByZS5NKQoJCXByaW50KG51bWJlcl9mb3VuZCkKCWVsc2U6CgkJcHJpbnQoIk5vIG1hdGNoZXMhIikKCiMgWycxNicsICczNjAnLCAnNicsICc3NScsICc5JywgJzY4OCcsICcyMicsICc4MCcsICcxNjAnLCAnMzIwJywgJzE2MCcsICc2MSddCiMgWyc3ODInLCAnMTM4JywgJzQ1MCcsICc0ODYnLCAnNjAnXQojIFsnMScsICc4MCcsICcyNDAnLCAnOCcsICcxNjAnLCAnMzIwJ10KIyBbJzEnLCAnODAnLCAnMjQwJywgJzgnLCAnMTYwJywgJzMyMCdd