commit 7a0821bf19e195297e5672a3ee08ac52baf54991 Author: MikoÅ‚aj Pokrywka Date: Tue Mar 28 20:50:21 2023 +0200 all done zad 3 diff --git a/README.md b/README.md new file mode 100644 index 0000000..5c033e9 --- /dev/null +++ b/README.md @@ -0,0 +1,9 @@ +# Zadanie pierwsze: + +1. Skompresowane pliki za pomocÄ… `xz` znajdujÄ… siÄ™ w folderze `compressed` +2. Skopresowane pliki za pomocÄ… huffmnana na poziomie **znaków** znajdujÄ… siÄ™ w folderze `on_chars`, suffix `coded` to zakodowany text, a suffix `table` tablica kodowa +3. Skopresowane pliki za pomocÄ… huffmnana na poziomie **wyrazów** znajdujÄ… siÄ™ w folderze `on_words`, suffix `coded` to zakodowany text, a suffix `table` tablica kodowa +4. Tabele i wnioski znajdujÄ… siÄ™ w pliku `tabele_wnioski.ipynb` +5. Skrypty dowodzÄ…ce wykonania zadania: +- `zad.ipynb` +- `generate_100k_corpus.py` diff --git a/compressed/100k_corpus.xz b/compressed/100k_corpus.xz new file mode 100644 index 0000000..e8e5ba8 Binary files /dev/null and b/compressed/100k_corpus.xz differ diff --git a/compressed/100k_dwupunkt_p_05.xz b/compressed/100k_dwupunkt_p_05.xz new file mode 100644 index 0000000..071efa0 Binary files /dev/null and b/compressed/100k_dwupunkt_p_05.xz differ diff --git a/compressed/100k_dwupunkt_p_09.xz b/compressed/100k_dwupunkt_p_09.xz new file mode 100644 index 0000000..085f268 Binary files /dev/null and b/compressed/100k_dwupunkt_p_09.xz differ diff --git a/compressed/100k_gemotric.xz b/compressed/100k_gemotric.xz new file mode 100644 index 0000000..aeb9747 Binary files /dev/null and b/compressed/100k_gemotric.xz differ diff --git a/compressed/100k_jednostajny.xz b/compressed/100k_jednostajny.xz new file mode 100644 index 0000000..157f89a Binary files /dev/null and b/compressed/100k_jednostajny.xz differ diff --git a/generate_100k_corpus.py b/generate_100k_corpus.py new file mode 100644 index 0000000..f8c009c --- /dev/null +++ b/generate_100k_corpus.py @@ -0,0 +1,64 @@ + + + +import random +import string +import numpy as np + + +text = ''.join([random.choices(['0', '1'], weights=[0.1, 0.9])[0] for _ in range(100000)]) +with open('100k_dwupunkt_p_09', 'w') as f: + f.write(text) + +# ========== + +text = ''.join([random.choice('01') for _ in range(100000)]) +with open('100k_dwupunkt_p_05', 'w') as f: + f.write(text) + +# ========== + +vocab = list(string.ascii_letters + string.digits + ' ') +vocab_len = len(vocab) +# print(vocab_len) + +text = '' +for i in range(100000): + r = np.random.geometric(p=0.3, size=1)[0] + if r > 61: + raise Exception('Value is: ', r) + text += vocab[r] +with open('100k_gemotric', 'w') as f: + f.write(text) + + +# ========== + +text = ''.join([random.choice(string.ascii_letters + string.digits + ' ') for _ in range(100000)]) + +with open('100k_jednostajny', 'w') as f: + f.write(text) +# ========== + + + +counter = 0 +f = open('100k_corpus', 'w') +with open('News-Commentary-v16', 'r') as file: + for line in file: + + line = line.rstrip() + + + word_letters = '' + for letter in line: + counter +=1 + word_letters += letter + if counter == 99999: + f.write(word_letters + '\n') + break + if counter == 99999: + break + f.write(line + '\n') + counter +=1 + \ No newline at end of file diff --git a/huffman_tree.jpg b/huffman_tree.jpg new file mode 100644 index 0000000..9c73002 Binary files /dev/null and b/huffman_tree.jpg differ diff --git a/on_chars/100k_corpus_coded b/on_chars/100k_corpus_coded new file mode 100644 index 0000000..5355072 Binary files /dev/null and b/on_chars/100k_corpus_coded differ diff --git a/on_chars/100k_corpus_coded_table b/on_chars/100k_corpus_coded_table new file mode 100644 index 0000000..133d76e Binary files /dev/null and b/on_chars/100k_corpus_coded_table differ diff --git a/on_chars/100k_dwupunkt_p_05_coded b/on_chars/100k_dwupunkt_p_05_coded new file mode 100644 index 0000000..98d94e1 --- /dev/null +++ b/on_chars/100k_dwupunkt_p_05_coded @@ -0,0 +1 @@ +ZÕw[j®¶ëwí¾»Wk]ÝUjýwº¯Vª¯Umúí«ïkÕUUµví½z»¶¾Ý{[ÖÿUo[µÚÞ«Õµ]zÕ®ªÕÞýj¯ÖõªêÕöµÝ»ëZÚ®×öª¯ÛVíVµ®ÿ­½½[ªÕýk÷Ý]½«µÚ¿®«]}Û­n몽îª×[Uû·U­UÞÞµªÿ{µªÕ]÷ªêûU¿µºÖ·{­Õ^×öíWo]]mv«}ß®ý»mköº¾¾ªíÖÕWmê«Þ­Z®¯ýuû¶ÖëµÚ·¿WûUj®ÕZ­¶¯ÛÚÖª­jízÕ¯ZÕUV¶íº­µzµ­Uµ­jÕz¯oÖúµ^·mV«ï«jÕµzª­{^ÛÕ]mnµªµÕßWöÞ»]V®½oÛ÷×ÝíµvÛÖÕm«ª¯vûÝuwÖªß[­W[]U^õ[ÞÕ^­­uë[Õë^ï~­Uv­ÕUWUUõëUUëÛU¶ê¶¾ª«Uvµ®ú®ö«ëµU×mV¾ªíÛÝUªªÚ·}ïZ«¿wZ½^ýÕm«ª×w·U¯Õ»Ö÷»w»õ»v¶µ_]ëêÖ«WW[Õ®º½{WëWuÖÝ]¯ZïUÞµnªµv¿ªívÕ~µ«UªÕ®»jµkU·km_ûþºªªö«×­®ío]^ëÖ«¶ï·µª×W[×­½«mo­u½õ¾×íµzëw÷Úª«Vë_U®ÝÿjªÖûZÚÕë­½¯¶õÝVµÕZ­VÛµU·[Ýo¾ÖÞªêµ{wµ[·®­mU÷»µ«÷u»jõVµZÛ[ß]]WUµU×]ëv«ª÷_{Uªºª¾ÖÝVë]UªÚê½mº«Û«u[UêýUö÷]íµª¶ýª¿Ý®Þ«UëÛ­VªµWëUUUv·õVëvëW·Wm]U}UumoU^ÕUêÝõwnýj÷WnÿªíuuW~ïwÛÖë}V»ÖëmÛ[jßuÿÕWu·[Z×µnë÷µ½uúëÝU~Ûk¯WuVë~«®¶ýw}ºêÖõ¯×u½zº¶Û]mµªßõ}uµ·oªÕ]¶»×[­kÕ}VÕkí®ºÚºªÕZ¾¾­¾«VÛz»oWmZ­z¶Þֺ׶µ»Õïöë­kk[Õ{^­jõßzÚÕvêÝkkíµn®Ûk½¿µ[·­Uín¶ªíê­}m®®®·[îªëuWVÕïßzûVõ»këîû^®ííz«¯õnêë×wÿ­º«ªÝv®­u_~ÝmûÛUÖªÕ_mõ]Õ^ÞÖöê­ÛÖ½µêþÛÕWUºÚ¯zºî¯»úºÕ­]mÿÕõZî¾öíz×¾ëj»Z«û­z®ÕëºÚßÛ­ª­^Ú«Û[®¶ëµÖ×ýݵv¾ýï·ªê÷UúîÝZë]ëjÞõë«ÕúÚúíû¾ýWÝVõ[¯«kµ«ª«u]÷UÖªµuZ­U¿wÕWmkëoV¯km÷ÿuÖ½u[½[ÕëÕmí^×}õZê¿Z®«­kõ]ÝÛ¾Ú¯¯Öí«»¾Û[Õ~ÚÕ¯kº·ýV¶¿»»ª­j«ïÛß}^­Z«~õV½íõUV»UÛö«n®­ÝZ¶ö»~ÛµªÿVõUVõu÷U¶õÝU}[ûjÝÖë]}º®­Vï}^ê×ín÷U®®×VßêÝvºÞ÷]kUU[µvµ[Þ»_UÖ«W_mmWwÖêõ~»}m[ßzö·ýÖª½[««W­Þë^ªÕW«¿õU¯[u·VíVתµ«VÚ­Þ¿«Õ¯j¯kÖ궫VݺÞÿÛ}k­Wµöõê­ëµ«jÕ¯µÕýV×»{Zê×]Zí]j«]þº»}×kjÕ×î·Z«v×~º«½÷VÖ½·­­jîþÕ]Wm{ëj®ÝZöî®×{Þ·í«Õjþ¶­îª×ë»Wµ]mjµVíWUúÕ{[¾­UzûªÚ¶ß}­[]Û^­o½»¯½Uuvê×õÕ®»[·ýn¶ý­»Õwjº÷z¯¶­½µZíU®ÛêÝUUmU®îÕ}VÖ«Ö×Ýu}Uê«Ûºª«Zº­VµV­[×Zï×u_ÞªÛ^®«Þ½VµºïwjÕ®ûkÖ®Ú·[º­WZ®½ª¿½mõÛW[u­µª«µªÕVîýÞª­W½õ]µÕ^­{Z×í{Wºõ¶þÚ­Ûk¿j·Uz׫{zõúÖÕíªº­Ú¯j«jÝÚí·¶Ýþ«µ­UU¶®ÝÖ«»k»VÕUµ½µZªû]궵]íZªëWnµ×kíkWZ«UµWþë»o¿ëîúÿ}ÿ]×íUU}õúþë[×Vêþ÷­Vêíu{{km½¯Zúï^®¿½uº¯¾êÛU]·êÛÚ¶ÛmmþÝõû×k·~ûÕUV¶ºîÝ{µÖÝVº«uj¯ºÿw_n¯mUU[»_îí×ov¯Vªµ}µ¿W[j«]í½¶½vþªêª®ÖÝëµUvµÖÛ{÷úÖºö»mj×Õݯڵöªªº¯×Û÷[UuÿU«êï¿Õª­íUÝ­Zõ[«jµ]ZºÕúۻݭ×õíU»ªÖ¯ßkUo_{Õ_ª­uVۺݮ½«êªÚÛ[zúªÖ×ÕUuêí{WÚ»uvµ»ZíWvÚÝk]{ZµúÖµWmZ»­ujÛw]k×µ[UÕÚ·»»Þ×»WVÛ«ëjë}¾ªê־뿷^ëkÞÛí}߶¯ëUm_«ºµ¿vµÝëµÕÕÖ»ý«ªÕ]õ_VµZ½öÕzÕ­ª­ÞêíUíßkUomõ½UnÛí»muW}Úßú÷×ÕÕUënµö¾ýWª½W}n×mZÿ}j·­ëµµj«j¶­ZÛÝ^ûÕÕZÚ­o«UVÛjÕ®úíÚßíU[[Û^¾íÛ¶¿U¶îÕë¯wîêßî×Úªº»ºª®í­UuUª·ªöÕ×kûín­õ½Z·mjª·n«Výmk¿ÛVûnª­õZ½ÛWÛ[µUjí·V½ZïÕÝ^íu··uZö×Z굫_«mu}®êµ½µkµýZÝ»UoµkZÛ_«ëªÕ­êÕUWú×j¿½nêßݪ·{zë}ºÖ«ZêíWk¿jïV«»½_·k¯»¶ÚÖ·m½UÞ¯U×õ­oÕ¾ª¶ßUmUj«zë­¶Õ¿Uµêíê×wz½[¿_¯º×_mýµW[m­UëÖëo¾®êëo¯u_wÕÛj­Õ®÷kwWÛõ{µUv«×oëuªÚÿ[j½»ïnÚªÕöÛzöÛuÞ½¶÷Ûêõ·z»Z«]möÚíV«m««Zª­ªÝ^¶­µ[ºÕo_Unú­ÞÕV×µUºµj·®½Zí®½µU·ný_U_m«nú»ZÚÕ¯Vªªºë¯UUW×[ëõ½µ¯Ûzµö«ZõZµ·½mVµmû®¯mjõ»¯V«·¯]zÛµ·ªÕW_ºÛ{ÖÞõu×÷ê«U^Ûvµ[^Õ¿¶ê¯ÿ×ÝU½{U­Ýªº­µV®­kïVúýÛjªÚ¯U¶ª®ªÖÛnªµW¯n·»kjÝU÷»ªíU®·kÚ×ö®µýk­_[vß}z÷ºûZµí]Z÷­ÕzÖõ]ëV«Uª¿Uº®­~ÖúÚýõ÷ëoÿuÚÛíß¾Ý]kê¾û»Z·×½µZêÛÕÚµ]½ª®¶ªîßþÕv®®ûW~Úª»î«®»[õUk}ZµUû×k{믫ÝjÕ¶»UëÚÕkk×îêö«]ÛVëZ×UUÕº××ýÖ¾ë{ûõo­Õmjººªëuuwk­uû«­êª¾ÕÝÕ×õ{µ}¯z¿×­¯­^Öµ[k¾Õõ^¾ínÚ·ku­kªë»[Þ®ÝÝUZ¯ªûõjû^ÕßßkWjÛ­}Wwu^ÕÖµ}¯Zõ÷]×ÿUzªÿj·n­ounÚÚê­õ}]unµUúÚ»ªû×zª«^«ÝÞ·¯Uí»«®®Úý®ýjûk]ÕUUÕßߪ×WvëWZõ]·×íz»ªºÛ½«Ö궽vÖíª®îª·U·VúÚûV¯µÕÕ~êê¿Úµ¿WV¶º»«j­«ïºÕo]}ßmÝ^Ûê»êÖµµ½»^¶¯×[ZïÞöë^½}­ßkõVÕ_wW»U­nµZªÛªíÿ]êÝ®µU_Wúµ{}[wêªÕkëV­U½Ö¯®Ý­¾õþ»]uíöëumÕZµ¶×ÕjíUwUZªî¿]®÷¶»µõïo[mkuµjûv«»ínµu«U]ÝUv¿ÚýÕ­ÿ[¿m­oÚµZö®îým_mW¾¾ªµ·k¯¶ª½[÷WZën·µuUoö­n«ï꫺Ýo­ZÚöÕý¿»íu~»Z­uvêõuUkUk^í½þÕu«VÖ­VëU{zÕwW¶µ}·ºÕwµjµoU~µuWWµîÞõuÕÛúê»ZÛ®®×_­}jª·¯µ_oVîºÕ¶«}«jß»í^ÛºûZ÷Õ[꾫um[_Vµ»ûkÕ^×W[õ½]mµú«wU×mºµ_ª­j·µµö¾õzªõÞíªµVïµµuVݶªÖ®Õµûkm~Õµ]½nÚ¯}Uí¯×¯k­]^ºº¯oªÚ½kmÚ»­VתÝíUUê»^ÕÕ]u­Úýz·«oz«®Ý­}U»z­v¯w÷·[÷W­íõVö÷]WÚ¯n«µ÷Wî¯Ûko×Õzê¯n½V­Ýíë_îí¿Õz­ÕÕ×u«¿­U½]jªªÕj¶«ëUVµ­»[««~öÖÝUÕߪսVõî«_]Õ·«»]kUªêßU^Úö½^ßZ¶µýkwÝïÖúííÕÝÕknª««­ß{ßú­umÞõ®÷V«jë·Ýª­õnºï[®íwVÕ­V·Þ·ªßjÝn½]zÕv»ÛÖëÝ­ºÚÞÿ}WÕW]Vëú«ºµ]ªïUªª«ÛµWÿ}µ^®Û]kW®ëÖê«êÞ¯VÞÖínݵ}m·½wíÕõ{¾ïßÝmWµ«Ûý«¶ú¯{Þ®úº«]ßk]­ë[ªú«uªß_Uª½VÕvýÕZ®ïÚªÕk»o·«ª¯×uU_»[ª·[«µ·õÝuUjíº¶×«Ú뺷׶êêúõÝ­U¶ºº­­·Úß_uûªÛku­UÚ½UÝÛnß]«U[uZ®í{¶µº®õz·ú·½Ú¿]ݯ¯êýWÛ®·ë]]«»«ÕUkÕºöío«}º«Wº«Õêºí]¯uª¶Ý­«]½öÝ÷µZÛjþë×½[~õ¶úÛ«U}kº«»VÕo­µ¶ê¿­U{»ö»­ÛU¾Õ]ª¯®úÛ¶ïvµmª¾îÚÕÕ^½UU}µ××U¶¿mmëUº®õ×k[ª­{kÚí¿ÿëWjõzÕÕ«]õï÷­íª®»½µ­½}Û­ÿÖÝVݯֺ®­µ¯«½u­­Z¶îÕUw×o]Wmí¯¯_Z×V¯kVº÷]W«¿Um­Z«nªÚÖºÚïßk»wZþÞªµ{¾íµ«]ZµÖí_·w_­{këÖ¶·ªöõu_öº÷Z«ê÷[n½õûUU­W»Úª·kú¯í·»ªêúõ«Uº¶îßÞ«][m[»ªµµj½w[ªíõW]­U¯®µ[kU{ZÝvªýÕÞõ­×VªÚ«·ZýVêï]ºªë[VµukµªûmZÚÖê·]oû{ku¿WZ«÷ëªí{Õ®¶÷¿½×ÚÕ®Õë^÷öÞû~ß®ë×mv¶Úê®í×z»Õ»vµÕû×Uûm[ß×ëo««ÝÝÕUµ­ÝêûúݵúßµêÕÚ·UÛ½_uj«í×®«V«þݵª«Õj¶¯UmZ»î¶Ú¿_kvºêµzªÝ»íkní®ªûÛ{×Zµ¶ª®Þªß»_VÝ]múëÛZö×{Z»W^­mªúÕVÕ¾µWõk¯z­î뿵µ}Z»ªíÕïÕîû¯wn®­U·U«·×î½~úÕv·ûwï¾ßmUjªµnýë}Vê½êª·uZªÝW­]¾ëºÚ»Z÷»¯Zºªº­u^»ªýõ[ëVª÷w{Õõî­û]uVﯿ­ê«Vö¯VÝßïöÛZÛîÕ¯Þ½[zÞ»ÕÕÕµÕ_oÞººÕ~®ÛÞß¾¿Ýß~×íÚ·_mµ­®õÕ­Õ«µ[ý­µ]mßwÛ­{ZÛ¶¯ÕÕ]U»[m××U¿jµ¾µ}_UªÛ­×îõ½Zµu]׺ÖÞöÛï[Þ¯o۪껪­UUmUovÕê«Öû¯jÞ·U]]ª¿wm·v¯ª¿[j­ÕW®ÕÝ^µuWuWm[«uîß{}[ºýzê½Vþ­­ªï[U«[]]ÕÕïw¾ÕëUõuªî·­VÝ}Uz®ÿõj»íWºµwí·¿o{ÕwU½uZíÿu««íkµªªµþ®ë¿÷Õw¶¶ªÿÖµk[k[ÚîõkÕõZª«¯Ý÷ºµ­m~ÕVû·­WV­ª»U{¾¿uZ×uj¾»UÖªþê»­V½ÝUÚ×êß­W­ÚªªëkUn×ׯÕUz×µ[¾Õî¶Ûí¶ý^ºÕmÕªêÚÖÚ«v­ÝÿêµÚÕUWÕuënöíU·[{}jºÕ«Z×Ú­õZ®ªº½mm»ÖÛµöﵪí½U[j½uWVꮺÝU·j׫V»{kÕÖªÚ«]}ë¶Õ¶ú·]Û¯º¿{Vî«]ÿÞÝkW½}«_ÚêÚëꪭUÿkíkÕkª½]ÿ«Z­kWvõkûÕZÕÛjîºë}w×Z¶ëj­]kv¯í®í}mZÚû^µ«U×Uo®ªÛVÕ«k¶þ»Z®¶«í]ª»®­~®«[­Ú¾î÷ZꪵjÛj®¶­Vî·ª¿Ý¶½ÕZתëUêÕÛµU_UÕZ«U]Ýuj½Wªº½W]UUµÕ­jÛªö¿µwn÷kýk×­«ª®­vú¾¶Úûkv®Ûk«½oÚûU­jõ_Ö¶«®¯Ýêú«Võõv½÷ûõUVõm¯­nîïõþµW«Ý·Ú«}®µwkUmWj«_W{Wûj×o×Ú«ªöÛj뮫µµÕkª®ö­ïzï¶×mVõVºª«ë]«m·UkZëZ­]·ýÿë~½^Ú¶ÝUWî¾÷­íÕ÷m¶««U_®«ª«Öîö½]}_«u®Ö½­Z«ýuv¶¾î»W}Zë¿W_nµ^õµª¯ößu¾¯¾úû½ª«jîÚßz«n÷j­v½zª««¶»Uu뫪»Þ궫꯭îªën궿[ö«¾ý^ªµÖ®ÕkUuVêÕîµU^þ·¯öÚÕU­[÷úµµwÝß»jÝ÷¯Võ­[{ûz«UÚÕíU[ÕkÿU­¿®­]}«jª·ª×­­ÚÕ}¾ö×jª·«ënÕ{{_Ö·ÕÕumunª­ZÞõV­jÖÝî¿úµ¿úªëUk­ïºÛkº¶úêöµwÕ½Zï]_ûjÖïj»º×®«ZÝjûj×µUº½ZûZ·úÛ¯ÖûWÕ_õÿ·×Ú»»kÖ½z®­µU«÷ë]¯nõÚµUUumÛ}¾ÕÛkkUßÕ_vÛí^­U^¶­ª¯¯¯µºîþª»Õ]jÝW¶¯µö«W[ZêÕvÛzªÞ«µ·û®¯W«mnÕþÕÞêê«m_»woUî·[¾öªö뫪µª¯·ª¯{mkVö·vÖ¿«wkª»¿oU÷÷mu½Zµ{íozÚµ¶Öýoªë{V­UkuÝ­]«º­V«[ÚºÝUº¯mk»µU¿õUªÕú««_»·nú×{jýjµWkê»ÖµíUªªª·kZ»¯µjÖÖÚÛ_ªíU]ûuïj·¯õµV¶ÝïVªß[[êÛÞ¯víjõªÛ«WZµVÚ­{Zí[]_UnªÝ¶«V½Uoê»Ö®»¯Zío}»­Ý}ª«_U]ÛÿÝÝWwýVÛUjõkõ»×z­m½UWoº¾Õ»víwÕk]ÕÚÝuÕªª­mU·­wî®ê××mZÖ×ûÝõ®ÚÕêêõ着«ín«ëj«¿_{kõU÷Õk]uWVÖíª»j«úÚÞ×Õ{ß[V¶µz×{jÕêû}kýÝõjßkÚêÕWªþ¶ýÚßjí¾¯Wjî·WÖ«¾ëWªÛ¯z¾µ»Vªî«Þ×vÕÖªýU^ýêîþÝîÕv÷ëV×w­vªµ­]íÛ]Z­m«uwmµnëU¾µ¯v®÷[]ÚëÕ꯽mÝ·º×WZß«UZÛWUjõ­ªÝµuv»]zýªÖ½Õoöîªëm¯jºëû·UWuU«U[¾Ûz«W][jêöµ{ÚßoZÞÖڪתºªÖ®ïW­[ÚÛ÷úªÝnÕµjïÖµ«nÚµíí½{{UoWõ~Õj÷[·ÕWmªêï½®ýê½Z®ºß·o[{n®­m×jëkõUZ¶­ÕmVêÝjÿkº¾ßu»Ö·þªª­{Zõ]U[ZÕ^µëúÕUíöµ{ý}V½vµÚ­ªöµZ­zª¾Öºõ[VªÞöÖª¯¿_µWUk¾îÕÞªêªÖ·êÕ·®×½WîÛêÚº­jë»[UWë]¾Ýz¾ªîú¾õk½º¶Ýj«Z®ëê«zªªõÕÝm_WÛUUµ[ýµ®¿»Þß^ªÛ{këkuZîë~¾®Õ]ªªþú­Wê­jímÛuV×UUºÿv¿]¾úª¿êêöµ«­ö½uÖîýnªÚ»¾­Ûj®­»V»}V»Õw«º½muµj»u^ÖþÕúµ~ºª¶Õ[ï_µ_uU­{~߯u¾º¶®ªêÞÝuÖêÝÖî«®Õ«½­WïºÛ­­v­ÕªýµWÚÖë·ÖÚº·nÖ«n¶«Õ[¶¯zÖ½U»¿mU×n®ª®ºßU÷ݯWu·u~½º­{]Õ«UwíÞö»ªÖ÷Õö®­jíUUª­µvêíU]W~¾¯Uj­zÚ«jýÚ®½®·ûZëµ_V½W·µm¯Zõj­mWnª×ºõzê½·wu«k_öï_^×UÖ­ºÕw[]ZÖ­ê×zë»õmÝUWµ»[Ú»Zê®­Ö­u{®­Þïj»­«n®ëºÖ­Õß«ZÝk¯¿¿ªý]Õk껽n·íZ»}º«ê­×uºª¶×]V¶¾êªÝ­½½{[µZ«¯^ÝUm«µ[ßo}ýUõV«kzÝWWVÕZ¿Uï½[uÖí÷¶·z«m¾õom}^ª®Ö«~ë[µÛ­]m®ÕÛÕ^íoõ~í¾Þ׫^Úîµ[»µþëuí»uwmV¯­}×½ÕVÕ«Wµ¾ï]}¾ëÿk×m×Uµî·µwµ~µ~º«»ö¶½º®ï·UÕÕm]¿[®ºÛªµUîµmVÖß]oîÕªõuomozî¯ï½¿­zÚö½WkUÛWÛVöªíjÛ^öëïjÞëûu}mv÷n·W]ë÷~îÖî­UmkÖöݵîÖºê¶ÕÚÝuí­«»V÷UÕ¶×WZªÕíuÕõomzîÝm}­[W{Zö¶ëÞÚÕþ«Wuë»÷îÕkVÛu~ªÕ¿¶½kzµ]}j­k¾ûÕmz¾ßª­­UÖûmUn×[µöºû¶×®ªº­õu®®µÖ½½V¯jµíuZº·í{ÛVõÕUõjêµ[]¾ºÖ×ooýµöµjÖ¾ú®­VîµÝU}zª»½kÕ¶ªÕUµÕZÛµëm[ZÖõÕWV÷Wnê­Z­]ëµuú¾Ý{ê·úöªöµ«ú®×~»_[úïn«ßݪª«­ûWÝõ¯Ûým­Z­Z«ë«ööÚë·Ö»]×ÕZ×Ú½ªµ^×u_]mµm×Õ[wjíuÝu÷moýuýu½úêªë«µ·Ww¶»Öê×k×oÕUÖï¯×v®Ú»í]UûÚÛ^«[¯ë¶ÝÛmþª¿ê­Uö÷mwÚ×Ýzµuz­µmû}¯½÷¿^ªÛëµ½Uê­¯m«ÖÝÛíªÕ]«~Ö¶Úö«^º×µ_UUÚ®µZ«UUo]½ª«ºª¿kõµ_×júº¶µµuûk·Ú«¶ê«ê×kUUµv·ßZêµÕ«Ývõ_Ý[[{ºõÖÿkj«}kµ»ZÕjµU«ªõ­¯ÕvÕµ×u­k¾ÚõUëÛz½VªëjÖ­[kí^ëmU߯ÕnþªëmUVú½_m[vÚºª­ê­z­ujª­¯_÷o×z·º¯ÝÕý}]×U»VªýkUµª·{õ¯zÕmÕÚ¯}oÕê×ê®Õ­w¶ÚÛ®ªêÕU»vïºÚ¿®ÞÕÕ[Wk}mUýÝ_j«Þÿ¯®ýnµWWÛj¯n×WVꫪۿUUõ[®­û^ºÛ­®ßÛõVª«µ_U»«¿[»·×ZýýVþÞµu]êõWn·ZÚêý÷movµúßµk×®õZ¿UÕÕ¶ºÞÝ««ÕUß}WÕµWµoÞ÷ÖÝzêµ×[W·^Õº­U]÷Ývë¶Þ»·U·ßU­k­û®ê®ÛuV×­U]ÚÝ[ê­«Ú·÷v«UW믫uÖíªÛ¿Öª­»]U×ÿ«ív÷µ~¯UÖ·«ÛÕZî­j«­«w·UUuV«ww[~«»µZÞê×UÝ»_ÕjõïU[«vî­®ªö»U­u·Z«Z÷U½kíÕVÕV«ÖÝUu¯µVªÕw×Ú½Þµïw·«kUnþêÕßÛmÕÞ®ªßu×m»ª¾ê«ÛÖªºÛU×ÕÕµwÚ·¯­Û}µ]Z×jµýû÷jþ»mÚÿ«W^»õ«mký½ªëׯëÝVÖúÖ­ý®ëZûµjÿ¾­«Uý_õµú­·uZÕ¯kª×½ÝjÚíµë}_j«Ûv«U­kZëÖµµÕ½^Ö½¿ÿ«®»µj¯ÕuÚ¶Ö®®­öµ~­ª×^¾Þ¶µV»«W}ªÿ~ûUk×]jï­¾ÖúÝVÖµÖõ¯Zûû·mwn­]v뮵_­k{j­÷ú··ªµ[ûÕ·«Vúíõ«[µ¯ýß»«ÕÝzûÕjúïmU½õ_·VºªªÕw«®«¿ÛªÕ­õßmuê·¿µj®û½[תú»µUwµÕk^ïÖÖ¶½Û½ví¶ú¿ë^ÕÕz·jÛízõoª×_uU½Z«½íjµ]Vß·zïjµUkêµ»·½nÕjÖÕvúí_êúÚ·mm^ª­}Ý«®¶×»ªõµ¯{Vê¶ÛjÕ¶Ö¯ÝÕ«]«nÞÝ_Ö׫ªµ«º«n¯W[UUÕuV­]Ûïë«Z®½õn¶ÕÕݪµmn­Z¶¾«^Ú½ÕumZµÛV»n¶¶î®Ú»÷®ë­W®Õ«Wm­m[nÕv®ëµÛë}êÖ­½×¶ë]îÛkëßmªê«ë÷Þ¾Ûªªíwú®µ[uëU®­ÝÖ¶µ]^µ¯¿oµê­UÚÝnÚ×ê¯îïVµo^»w{ë]Ý]ê½ZïkWݽþª×z¶ªÕ®Û¯õ{_jߺ«Uõ}jú½Þý{Um·ºöªªµÕízÞîµ^µ]ÕÕkªïÖ¶ÛZ¯õowmêõ­ZßÕmUëmûêµUmVªª«_÷Õ¯µîß}­ë«Uíu}×}«[z®þµëw}^ý^Õ½Ú­¶«[ë«UÞµÕkUVîµWw®½WµUnÞûj×w«ÖýíêÖ¿õªêÚêõW]w÷W«U­}[ö»º«Z«×U½«U¾ºªµZ¾ß¯ï¯Û«UÚºíÝתõ·Wuv­ý×W½~Õªûº»VÝjýW{Ö«W^×ûu[]Û¯kZÕºÞºªíî­U{ªûý·}ín»¿¶®ÕÖ®·^ë×oUzënßZ­µ­öë½zê«ÕZµÕö×V½m^×}[ªµ¶­ûíkµ^íoz»ê»UWÚ®ªºµ×ªëµU®Õmuúªªº­½]m][ÛUõÕýVÕº®êÕÕ¿®Û®·[_]µß½U®íÝ«k}V­[më{kº×]µVëµ_v»ný}nº«]mj½mv»®ßíûê½Uukn·µ^º¿Þªª­þ«W­ïÕmïõV®öÕjª¶º«nÕUÕ~ëwk{u]Ûëmënªê¾¶íºßê¾ÕUõµZ®ö×zµîªÕnÛ­j®ÖÖª·]ÕzÛvÕv¯kÝUVõ¿V®Ú®ê«ÖþÕïv¯º¯êÕv®íVÕUµ·®«ßzº¶öºõu~ÛZ÷÷¯Û}jª»UÝ÷í]·[jßßÝ®­ª«wêµ[ÖíëVí½U×Õ­UuªÖ«Õz¯z¶Õ®·õµÿßwkkí®õÛVݾ«õµ½í»wmmz¿kõºÝWmÕ]ÛZª¾í}jíW]µ­Uoª®¶º¯®ëVµ]¯¯ëmë×ZÕýÖûkuÖÚ·ëU}k}ªºµ·îÚö«UÕ^ª÷k[¯ªºûjõ¯«}ß®­UwîÕUWUkíW]î«Víkª½uÕW×Vþª·[{jµ¯o¾¶¾ûVí·õuûÚ¿ÕnªýmöÛ}ÛêºÕzµ¶ÛUתµýkZ÷~êýúÚÖÚêÖ­uUW«UUݵ]w]õmoÕµUÕ«Õnú×z¶¯jª«wêµÖõU{mÛªÝë®ßÝmÚ««n­·í®ªêªªõU}µwÛ¶ÕWÕêµV­[ª®Öµë]ZÕµVµï[µ_Uu÷kÝ®·kUV׫þÞ­«kµÝ­ª»Ýµß½z½mj®îÿkí¶ªêêúêõß¾÷Uk­m×VªÚÕÖºõ×®¶¶ª®»^¾í­v×Öµµª»«uö»Ö®ëöë«ZÖµß_[zööªëÕm­»µ÷­U¾·kVê«ÕkÕªµ[W­ÕoV·Zê꺺«®ª×jÛëªýªªíÕ}u}zÕVÞÕ[¶Ö·w«ÚõZÕ½Õ­ªíö¶µWuUúö«½]nõ_Ýjõën«ê®µzºµUꫯw^þ¾«}íkuk}½¶«ö»¯ÝVí[·úëÞº½­Vþ¯¶ÚúêºëÝjÖµ]jµê·zªÕuêÕ{Z½[궽_WÕ]^«WÚ»^õmêÕ]u}ÿk{­{Z«º¿Õî«ÕW[Þ«Ý­[u«zío»õ¾¶þ­«k꿪׫ZïuWUv×Õú«jí­zÕkª®»­]½úê­ZÚÖ굺þ¯vÚ×UµvÖÖ½UWj×µ¯]mêÝkV½wVÚÛ]º¯^¿ommU×^Þµ®÷UZÝk}Zö»[]ºêö«ûVªß~ÕZêµßUW««möµ×»jÕûnºµmúÕjºí[µkê¿[UjÖûWn­×«[ß{·ö¾¿mWV»m}{[]¯½V¿îëû_ý«]nï[Ú»«µµÝ^»V­uÖ­µ¿^Û]­¾µj¾÷Z½k÷VÛ¶Õ×v­¯U¯õÝuꪭ×^û{»oÕUmo^×ý÷^ߪ««­··»ÖµµoU^ºÖúúºªÖ»Ö­VµÖ«·êÛ­·¶µmתê«õ®µªµõwz¯¶ÕÞ½»j®¿®Úªºªµë»ëU~×_m«÷uþ·U]­«Z«õ»Ú®ê¾úë«¿»VªûjÕªµ»ÕëÛUêýîÞ«W®öúúÚ·nûÕºû·Wu®ªº­]]íß}öµW_jí½¿V×mª·¶ïµmõ×m_ݺíÕ¯½ý¶«V«Û­êµ¯]^ªµnµVªíºÖ¶­ZîÖõÝmµÞîÕÞ½ÕkÿÝ«»·»ÖõÖõk«_wU«vêî¯]WþÚ®¶ß}]Zê«VëÞ··Uªßúûoî½^­Uzõ­½Wªëûú÷jÛÚê¾×{[wku÷ZíjÖ¯ª­ûUUoöÖíUÕׯí«×knµªõ××õ¿õ½Õýµõõ]u¶­_׶ëuZ®ÕínÕ¯jººï{n­[o]ê¯VªÛ׺»«vÕµk^«ë¯^µ¶Ý«×u[]Vßꮺ­º«Ý{½ííko­UUªûVÞ­ví·jêÕkíV®µU¶»UUÕnÛÖßmV·mW[WÕuZþýíµv®ª¿ÛÛµ®Öµ[jªÛo]}jªÖÛkµWzժݻU~Õkj«Ýº½~«®«jõ·«û®µ]Wª¯Úµë^»Ö¶µj·WÛýkÝZýj×kW{kVÛÛµ[U­_U×kÛ«]_V÷mvú¾½ßmuëm¯uú·ª¾¾ï­«Ûj«ý«j½íu«_ÕÖ½­ÝÕj¶úµ]Zýõ­{kûÛm¶»îþﮫջokÚݽo^êÕ×[µý^µku¯V·mU­¿ÕZÝßV·]Ú»j½Ví»ÛUU]VÚÖµ¶¿^¾ºêý·U­½«ÕvµZõîßv½¶Õ{ÞêÕßú¾ýZÖ®«·ouú½zªí{·¾Õ×]¾®«Z·«Õý¶¶êúµV®¯Uv«µ¯Zöµ]W«k¿ÝmmUU¶½o®·m­ª­kö»¶¶ÖûU®õÕµwÞ­_Úµ«Wví{o¯µ¯ú»u_]zµuêß÷V«wÛnÕuUU«Ú­}Uj¶«]µ^íõkwUëVêÕ[Z­µj­Z­ªÞúªµÕ]ªíUÖÖêªÖêºë­}µ÷j×m]W»z×^»Z·íë]ÕÝ^®¶ÕÛµUuj¶ëÚíÕÛß}­Õëí½W}}U¶ÚµUVõW«ê«m×{Ú·Ý]mê­êõVêê½ûUnëzíímº·µî×ZÚ»_jõzÝ[mõÕjû½«w{õuíV÷nûUõWVÚªµUº·Uí~êþÝUõj«ïÞïWzßµ·×÷ªµzÛí­^Ý»®¯ê«º«z«ú®­Öêýö­Ý­{{¯]Wª¶µÛUjÕkVµkkªÖí[þ«­ÛÛ­¯íëªÝZ­ZõuZëuvꪵ­jº×jÕ×µZ׶µmÛ[]v¾ï[mµW½»ÖýªÝV½UW·Zõ÷VÚÕU]õ]Uµ½õ]µVíݪ«µV«{VµU]]oë{½n÷¿^¯[}»^ºß½[^«­ïª½k[Wë×ívªº·»m^תÕÝ]mÖõUu«o¶ªÝ]Uwvûm[mUkzõUUµ^ժꪻêÕoëu·Öúëë[o½j®º®«íÛ}j­{jªûÖ×o[vþªª«ª®íZ붿múþ¿ºµkº×j·½z­¶ß½]öíUê­«ZëU×½«º·¯UÝVú­½ªÛj­Þ»[µ_«o«[UîªÕîõªööúÕ[»«zﶻmÖ®ÚûZÖ÷Umê»uªúÝ»Wª»[·Ú«j®¶ûZ­ëÞªÕÕÕ~ûUµv­[ÕnÕê­m½nÖ½Þ¯mת÷êþµö­VÕZºëUVÕZÕukZöµÿªö­ÞÛ}­WVªµ·z÷}÷[õµ­¿»UUë½Ö¶ßU»­Ûý¯Ûí]úß]Ýj½oúÚê×W]o諾®ï·ê­Z÷Z¾ÝëZÖÕëÞª­mZÕ¶ûõ¯ÛUÚ·­ªÝí®ÕÛªÚ¾«]_­WmõÕk­öºíoÛwkUU¿[^ßwm­]½»jºªÖµWZúë«]oZ»¯nµVµýWî»WUº­¯UU_m·U·ªÚ­u«þ¾ÕWªëUÕ}«mú½]Z÷~¯Z«ëu®½Õ«õֵ磌UvÛ_Õ¿½÷]®ëîöëî·Zªª­^¿~÷ö¿®ÖºÕmm·mWukÕ¶­×ª­½jÚÖµÞÚ»Þõ÷o«þ«^÷v­ö·Û[V½«­j·jµ]íö­Úª÷WºÖ׺·Z®í¿«]U«ûíÕuWþ¯ºª»¾Ú¯]­]Uµ­Vý[jÛÕ[º¯ÛµmUum·zÿ×·jõµ«ZªÖÚÝ«u÷}î÷Uúõ­j·Õí­Ú®­V×kj¯WªÞ¶½ªëW_]m[_­U·»Õkvµ[m­«¶¶ÛÖµmjÖëÕU®ë׾ꭿßÕÕ½nëÚê·ÖÖÞÛV«k}ýj½ÚÖ¶ÚëÞªþ®Ý½{­µ^­ú½V×WkÕj¶ûïî×nÚ«ÕmZÖÝUõWº­wÚën­nîöëÛÕ½«zïoW»»}ê¿û÷Z«u«j­ýZûÕꮵkWj·U[öªµu[­Ú»Úºªï¿«[µê¿¯kj­«ªÞî¯UÕ]Um®«U½ÕµZÖÚÕmµUß[­kVÕm÷ªÛöê¶Ûnû­]ëªýU[ujÕoݽwmuVÕª®¾ºµkת«¿VëíýZ¿î¿]ö¶«íº¿ÕWkjõý½j÷zÛk½Wo¯µ¾úºÕ{ÚëÕZ«Ö«íÕê®ß½WÚÕkÕVÚÕ}}×W÷WV«V»÷uZî·ªÛkk{WoÖ¶»ÖÚ×uÝo­ª»jßj¶ÕmÕUm_Zºº×®ª«UUmU¶­]Û«mUn­kuW¯º½îêÕÝ[ëê«õ[­V«Uu®Ö»vº÷×öíªÝ¯í{u­UWWív¿m½w«¶·µê¶µ»¾½mýmu~¶í«][j«^«µ»Û}õÚ½Ûý×®ê·Õ­ª¶»®¿Õ«zëíÕWj½VíÕªÛ×kmÕZµZêíuµ¶µV­Uڶ߭­W]¯}U}ýýª×ªµjÚÛÿÝoWµ}½úÛ½ýWj·îªÝkwV¯jíÚ»»m]×íW]k¶«ÛÕu[ê÷ZÖ®ÿUZ÷íÖêí«mZíկ׺ûoZݯï­~ß[U½ÕZ¯[_ï~­{{«kW·^ÕkÚÛj÷^ív­½ª½}ª¾»mW·UýUkWouW~»Þîëµ»µ«ÕÕ}WZUÕ[z®Ú¾û[[uZÚª¯êõ»]öíU^·ö·ªº®×¾ÕµVÚ­mÚ®«m×j»ªº­êí¯^«]µõµõß­ê½{[ÕkZª­ï_oîëUkUzºÕ{oßZ×jû_ºë­ª¯V®µÛwV·zµ]¿Ý×U®Ö¾êõ×úïuýÖ궷­núÚÖªÚëÕîÕ[[º×V®®­­ÕúµßV×j®í®¶ßõªº¿ïë·­õvª¶ë]ÕÕuÛw×ýë½U¾«]zºÞ꾯wý^Õkoëm«kªÛµ^ëÕu[k¾·Ú­}{ýkµµ]ê¯Ú¯_k»uUmV¯»õÕÝÕûººº«úêÞõþº«õ·µµw­nýUµzïkÞÕvÞ­kUëu¾Ý»¶ÚúûjÕê­{÷mö®½¿km~ÕU»[­ëUjÚ«mV¿WÚ­êïõV»ß]u~×o»þ×õm÷ZÖÖµjÕ^ÖÕu{z®·ZÕªëÛVµz­_[uµj×zªÕojÕ½ªÕ·}Ýë_kw}Õ÷UW­ÞÕUµ«Wwj뵫·µßÚë^Õkµ®µûwz»ÕV­vµuW·U{_]võþ½Öí껪ª½VÖíkU×]»kªºÕuÞïÝUoWºÖíjªêîß[n¾µv­ZÚïºûíUµWjª«un¿í¿VíUÖµ«w½ºûm[ª¶«Û®Úªúµv×m[v­Uuº½]V¯kjýjݺ¶µwí][«kµ«öª­o¯u¿µ{öÛuUÛ×uúïu}j«_úÕuº××ßuê«õ­íûÚ®¯÷U×íZ¯Z®«­Umëªú¯«½öêÖµzÕ¶þ¶íUª«u««V«»·uÕÕßunÕV×Wjím«Vªê½·ÕWÛª¯ÿzµ««V×{×Öê«íjÝkÕëVýïöÕz·­ªµ]ÕþÝuÖµ®×þ¿¿Z¿ºßjßZ«Vªõ­VÕ­vÛ[Z½kUºûõk«êö½j­Uk×jëûëöÝWUj¶¾®ö¯»þëÚ½_{µÕ¶·Õj«j«V×®«WmmkÞ­»víkU­ß]ÖëuUVµÛÝWZë_Uµm[ÛVíUw»½u»UWvªÝºö»¶½míU}^÷[ojÕßõíjݪ¯[ÿ®®¯¿ÕÖí«ZûU¾ªîëÕk^¯«Z·om}Vªß{[Õº«kk]_®­¿ëWß«½z½»j®ÕZ׺­j¯muuë¯ëõÖ­kVîÛkz»o×]õv»zÛ[U½ímoþ®û«~Ö½úõÕ¶Þ«ª·UjîÚÕý·[k]köºßﶾïÞ®¯­ê®®«ûíµjöÕõ¿ºöêª×µ{[}þµu×[U×mZ»wÝ»[­µÖîõÝmU]z×µõ½^«Ûºõjª­Ö«_ÚÝZÝo¯»¯ß¶½¿ZÖ¾µ]jª×Õ][ÝUÕ_ZµíÖÕÕý·U^µ·õ·[Ûׯ[«_öí­mWÕ×Öµ½kïꪭ¿ß[_®ÚÖÝUV­}­¾õ]«mWz×WW~ÝÛ­»m_nõoUº®ÝÚ«íÕî·÷ֵ׶¾íUÚµ{õuWj½oVºªýöíZÕm[UëÝnÿk®½uU«­wªþúª­½Ú»_]ûmÖ·Ýú«ëÛV½ªÕ«Vín»W¿VºÕþªÚþ¾¯Wݵúº«µkª¯UvßÕ[ÕzöÛÕ·ªÛí®û­õÕª½mÖÛªªÕ¶êêÖªª×oº«]U¾«ýzÕW«õ½]UßßZ®ÕªíuUw¯}W^µ½oëvú·~ûÖ««µÞÖëí~µÚ×®ýkõ×Ö«k[kíõ®»}kª®ûz»Wõ¿}V·Ûª¿»®½ÖêÛV÷UUµUµnªÖëuªßÿkú÷_ZµV®ÖÕÚÖ¶ú¾ÕÛu«jÖ·UõmoU®«Úï}öÖëÿÖë­]m[Ý[ÞëÚ»]UwÛïmï×]}WªÚ·~íµþ¶ÿ¾ÚµnµzûmwmîÝûZ­WÕj¾÷¶¿»¯¶ÖÕU~®ê®õµU]{VÝUÞÛÝï}÷wªû]ººµ«V¶×­]ZýïZ«UukuµVµ­uv»ÖÕ]ë[¯U굫½um½W«º¶õÕZíoW­ÕUuþµzë»ÕÛU®Õ}Õ~몪öûÚÚÕujÚÕÚ­kUºµwj¶­ê×]mU]^¿·ukªÕ[u¿·u[ÕU[Wíµ®ëoÞ­zíÕ­zû®íö÷»jÝÚ·½ûV»­mª­ÝêëU×êÖíVÕuW^÷ª¯m«÷ëªÖ·w߯mUÖÿ}Ý{k^®®¶«ªªªë«ZªëVº®ûµmª®ºÕ[µµ«~®«okëµm»uÚÕv«ÖÕïW[µ}o¶öºõµv«w¶õj­íö»¶ÛÕníkº«^Õ×U¶·m]í×U­mU_®½ê«ë[k®½ÕõZíV×WkÚí_UV×»{¶ÝÖÕ¯Wk«µûZûmí]mZ×kuïûÕjë}ת¶·¶ª·Û¯÷U¶õÚ­V®íZ¾í~Ú­uµ¿n»µmZº·µ­­]Õ­VÝõ^úßUwª¾µïo[Ö¯m×w{þº««^õµ­ë÷Ö­«kÕuîÕZ«[Uukk[[Wm®Ý««ûª¯«[ÕwUÕ]mzë]mvÛj­«ý¯®¯UÕU÷­}ß­ú×îÕWªÛöݽ­[½ªÚß­kW«·[k¶ªÕoW«Z÷êÕÚ÷õÕk]oÕ½{Ú¾ëo»k«k¶ºúûUõkj­z¯Vú®®­ºªîîúßmkjªíÞÚÛ­®ûë¶Ýíõª­UÕµVÛ·~»öª­Ú®»vöªÚ÷ªêÛ¯_×Ý«[ß]Wkmu·uk¯uu¯u]¶¯jÚýºº¶»ÖªÛªÕ½u­¾ºªïªö·}º­½kÞ«uV®í[õV·j«mWmW_ÝWV®¯^ënëµmkµî½uu«¯«jª­Zý]}¾ºê·UÖ­z«U[UUêªõ¿mou{«]j·ªª­V¶»¯«úõ÷Ö×z­ß®ÖºÕí¯ZöÕÞï]«UmººªÕU«kººÝºÕ]ûÖúûk[Uw®×U}uZÛ~ýµÝÚ×vþ­Õ{um«U[U«Ý¾íííjõ_Ûjý«zë[ÖÛwëÖµ¯UUmÕZºßzµnÖºß[ª«zÖÚ­ªµªë]v¯íª¶¯¶­¶µ]½k{ýjªíµªÕ¶ïÛþ½«k×]uªïVõ·n½êº×Öíª¶¯[«µµVÛzíVªÞ·]}ª¯}w»×®«[]W׶µÞºë»vתն«ÝÛ·{jÕ×¾ê­ïÕ­Z½Uêê®õ_í«[¯W­ßõkµ[VµUßUªúÕ»oW½öîªê¶öûo[µî­[®Ý^µuZþ×wïÞÖÝÝj¶«}m×½¯o¶Ö®¶ê«úÕk­ÿuú««êÛ«^ýjµUu¾«×VöµVª­­[w­ß×¾úÚ®Ú÷wk¯ÛíµUnÖµß×^·¶öÛVÖ­¶ë[¾«·mÖê·Ýkjµ^ú·û{UÖÞ¾®ëwê­ýµ×½WÞºº·jõ[u×ï{ªêïêÚÚ¶ÚÿUZî½ïu»Öµwý½¯ª­{ÞýU[kÛUzª¿µ[¿ºÝÖïmwUjíª««v½ß_~߶×êëWí½Õ[¶¶ö«µ]«U·õ¿Ý¿ªþõ­Û[k}k[mWuõuý»ª¯kUÕ­k¿Z·kÕ½Zëkn½ªÕuöû«¯Ý{kuªµê×oªï­µUÕ_[½ªÖßw^î¿jÖíWµ­îÕÛU[][_Õ¶¾«ûZÚßjî÷­Úï»WW¶ªío]ý[j½V¶ú×vêûݽ­ýÝýUÛ{Ö÷µkïß^Õê¿[õuª½UU[µ[Ö¶­»¯Ú½ov»®ÛzÖ½½[®¿jÝÝõÛÞê½w}v»õU^êµÝ[]Ûׯ[}«U®¯¯W«ZÕj¯ÛuÛµoª­¶·jë{­«Um×n«­½j«×]ª·u÷õW½mZÕWïmo¯uûﶫWª×UÝUíúÞµ]jÚ¾­UªÕ{_[׺·Þºíu[kovëZ×UU]ýUWïZÖíWVêÛÛÝÛÕµ­¿_ë]Uêºë­jû[k·[_ÿµ{võz«¶ª»V®­¯Uªê×{VÚÿo¾µUÖ­[¿mUj¯®µ«U]ï^µz¯×{[kº·ÚÚêêÕ­úwv½[mõm«­ou­z­Uݶºöµ½}m]Ýjê¿Öûjõ¯V­Wï]wõ÷Õ»·¿ZÛUUÛÞ­½ý¾¯¶ßªÚ«umº­[Ö·÷wªÕj·ª«k×]z«W×»«nºë]u_júëUoW~ÕVÝwªÝ¶µmº¶»­uÕ®¾¶õÿ­÷ÕumVºÕÿUúÚ¯ÛV«U{kkk^Ýj»¯~ûÕjÛÿV½ïõ×Um]u]nÖ®Ö×½öªýU¶­ªµ®ºÕUÖõW^»n¿UW]×mk]Uµu«^ÝZîµÕkÕÞÕµ«[mnÚ·k«ë}u®ÕûUj«Ujß¾×VÕ®ÛW_Õªºû[z«×[ú®õÚ»ëªÛ·W­«WÕU_Û½mwí^ª«ëu«í­µê«nõþµ«×õ[ª­u[µUUwUkµuëU«v¶Öõïv­V·[µw¿wµ®¯WoU][µ]Õ»«WU·]^µ­ÕjïÖ­ÚÕU«nÚ·vµVõûm}·×m[÷ªÛ×Zöý]VíVßUmmnÞíWnë^×j½õ]µojªÞ÷mj«µ[«­µ½îªÕjÚµ­×ÝVõ¯U­ß}÷jÕÝ[ku{­ÖÛz­_Õ¯Õ]kZ·[½ýöµUw¯«UÛjÕVµ­núöÕ~ª×Ö¯_½o]Úݪª¿ëuVµê­UÚ¾ÕU«êª»×[n®ÖûûªîÚ¿×j«U}ÚªºÕ[­ª»Uív¯wíu~ºÛÝÛjºõ¯­Vª®­Umª¶õ««µ÷­ê«ë]UUÛm{Vû_m¶÷vÖßjöýÛûÝu½»uV·í]ëZûoÖµZ®·Þ¯V¶«~í^ª­ß÷V¿Õ«ÚºÝú×k«kUZÖÚªÿ}[ï{ö®¶«_»mmjêývª®ÖêûWîÕZ­Ö½Z÷^Ö·]Zöþê«W­­õîúªª­êªí[»}j÷k¯Ý^ª­õWm®ïµ{Ûjíª¾ë­õ¶µ{úúö¯v­j«­~«~ÿ{uªí[÷j·­µëÚëõvýVÕª¯ZëíZûz¾ïío^Ö«_þÕ[­wZº»×úÝom­V·mvößZýõm·ïª¶·m×~Ú¶ú¶êުݻêêºíÞívª××êµöïëjÝë^Úµ^¿ßuõýUV½mÞ¾ÝßÿµU_kU}ö·Ú­¶Ûv¾ÝVºÚÝ·]WÕ»Ú«Z«m®­×î­mÕUVÛuoµêõ뽫w{~ú­Vµ[wÕ×î½uõjªí]«Zë­­¶úÕÚºµ­V¯_V×¾«Z·kou_ݶ¯«»¶­«××»ÛÚïmZ­·ZÝ[ÝU¯_í·UÝ­ªÝÛêÕ­WÚÚ«öê®®«kÖ­n«Ö«]U×»[u­Û][kUkVê­½êõmݯu«­ëUmUoׯµíu®»zµëW·^Ö¯ým{ë^ÝUUíWV×_[m֪׵u¶®ëîÞ½WµVÕjªý_º¾µÖ¯kªÕZÝV¾Ý[[­ª¿w½íïUêí^ê®ÝWo»×ªêºëõkÕj½w×wªµîª·^Õªª»VÛÕµ·jµõµVÖ­Ûj«mÝVª½ëÝÿïu¯¯ªÕmÝm[ÚöõÚ®ÚÕvÞªímº¶õ«UjÖ¶µÕꪫ¶ë¶ú«ýö½VÛUjêê×u_Z¶ÝöúªÞÕkUZêß^êëwÚö½zÕZª««jÝÛ¶Úõµ½vª»jÕm[ß¿m^êÞ½·ª«¯Ú¶º­nºªºª­öÕk­µÛÿ]^«êööúºÛ­m«^ÚÕÕú®ÛýÝV¶ê®×uUm×VÚ×V«úªûUªöª÷ªºÚ¾ß]­k{]¯WZ¾ªÝ·ýmU_ký{×wÛýz··j½ZÕW_[ªÛ÷_n­jî÷z«ÛÞ®¿_^ÿVÛîúÖÚ¶ÛvºÝÝu®ßú«Ûï_«Vëú¯U[Õ­Ý[µýu«µµ­^­j÷Ý­ZÝÛVõµ÷^þ«]V»Z·V¿­­ïmk¿Z¶íûzê¿Wµ¿«}W_j««Û[{ïuÞµª®ªÛº­WÖ½·U[U¯Ö­^ím­nýUuWíÕVö¯Ö»^ë«ÛÕ¯mժߵ«¾ÚÖêÞª½¯ÚõÕV½W[»ÛZ¯­]v½¯VÝuvºµnû»{û×®Þ·Öÿõ­«Ö¶½¶«ZµmU«½­­n­ª¿uí]wû½×½®¿~»VÝ]½kW[u­U÷¯}ÕmU«öú­jÛUZ¾»ë]^­Ö­«¿Û}»U]]^µ¶îÛ[ëUÞ¿÷®»W]Þ¾ÿWëZß×Uoë]ê«këß[}«Úî÷®í[UÖÿþ­ZÕ¶ík¿m¶õWÛ_êßík]Uwꪫ~ßzíßj»mmjºíV­mzµZ½½jÖí×ZÕoº«ZµUzÞ«êíU«ÕëÕ«WÖ÷výnÕmWµZÖºÛ¯kí¶Ú¶ÖÕ®îÕZú«U¶Ú««Z·UWÕÝ]×jÚÕÚÕZ­¿z¾ë_U[ëºööþûuö꺫ïíjªöÛoj½õõ]Ö­Wßu­ÝíW­jëVÚ÷jºþ¾Ö½Ý­ýzê¾·]ºªþÝ÷u]uZÿUVªÛº®«u~õµj»ªÞÕÛZõv·­µwUUþÞýÕ[]ÕW_V½ÕjëÕµZÝVûjêÖ÷v­Ö­}}]^í¿¿VýjÕõ_µ®Þ¯«u{{WvÛ½í«_ªÚµ¯ªµzªÖöÖÞÝUë­­ë[«jþ¶¶¾ï{ZÕ«ªÚíÛ×}ÕïöµõëkVë·UVÞú»·[WU·«®×Z×UëknÕ_k«Ýmk«Unúí{w·k«_V¿ÚÕÛj¯÷Zµ×{ZÿÕÕÝW[ÿ¶÷ÛÕUu~ÕﺵW¯V÷m¯{W¶ºÿö®ÛßV¶õÿWÝÕýUkmª«j­z¯Õ®ª¯WÕUjÕû­mUW¯ª¶îÛ¯­­nö«vêê­[o¿ZÖ®ÚíUW¯V÷ÕÖê×Õ»­vµ[ëÖµwÕÚª«UöÖõ­Vß]UªÚ«Vµ¿ö«u­]wwWí]n¿­]{z®îßWjíª÷_«nýVõ®µ«V·Z®õuu×k~ûUªêöÕUo[µý­õ­{[wmvº×zÝkÝmwÚª®ªµUÛëo{ªªë·ÝÕï­ujºÛU¯^º¯uª¯U¶»ZÖ×k[UUV·ê¶ë½UÛ»^«¯v®ªªím¿o]jÛ~Ö¶«k]·ÕÚÝwUVîßշݺuîïku¯U]­õWZ­«Ö»®»µîõªïÚ«V﫺½v»õZ·kÚêÕû[µÕÖªûÕ^ßm¯j­®×Öê×jµnÚ­úªú¿®Õjµ_ÛkU}vÝ[½vª·ºª­W·UjþÝ]kÕw[׺»WÝUú®Õkê»nÞ­Z­V×Z­ëúÛZÝV½íjþÕ­zî»~®öÚ¶ª»Ý×oµzÕ½jÕ^ý_×mªîµ«uUV¿Ú«{º«W]uÝ_n·zµ[}ºÛë}mn׺Úí~êÛ¾«Ýkë»z­nÕÛU][Zý¾«WVÕku{[jÝu·ÖÕ·U{{Un®íZêõ­V¶Öª÷ºïºêõ}úÕ¶ûÖº÷õª«ëw«µ]Õw«U®¶ªº×oZÖÕUoꪽ÷W_ºïuµßþöÕ®Ûz¯ûkVª×jêßîÝë[·[WU×Ûz궫uë~µU¶¿ím«[ÛV¾õW}Ûoíº­U­vµUÝUÕzß«ÛmkªÕ]ªÚꪭª­»öﯭ»VµW¿[[UõÞ¶¯ª®ªµ«nªÛUú×m«WuêúÝoÝÚû®Ö»^Û¾ÚÝ^íºû­z¿z»õºÚÖ¶õUWêßVÞÛz«v覆n·µvëo×{UU½UZõ_m]vëzºïUí^Ûmª­zþÛ}ºÖÕ]Wu¿ízµýµuu·½¾ú½m[_뺭­_Õ¶ÞöößíÕ[ïjïUm«î­{¶¯v¶ï­}}µm_nöÖõ­uv­½º½_o­uîÖêõ[[µjÿZ«V¿ÕzëZ­]W«×­[·¶µzê·[ª¯u­z¶««Uëûjõkú×ÛÖݶ×V×UzíW¶ªº»Õ[·Zª®×W·ë߯[µoV½]­Õ]n¿o­uZÞ½w÷~«u¿m÷««ª·¯«o½_mUýZµï­VµÚí׺ëzª·]ê»}úõ½j¯·ÕõU½¯ým^®öÿÕ¶½×WkW[_«õª®ª«]µVªÚ«ÝÝ­wÞ»÷µ­­u«öõn»mª¶­ª¯^תÕ_®»ßVÝÕ]jªÖµµö¾÷­÷UÛ»]»µ­ûz®ýÝ«×{uÕ¶Ö·Uº¿Û«}v®®µk®î«UW¯v«·ÕkÝuwºû_ª·ÕV«Umª·mõ¶÷kïÞµ]êµ^ª­j­n½kU×µ}VÕ^·Ú½oÚÝWßWvµ­ÕÕ»µª«ZÚÝk}w»ªÕ¯më_»ÛÝV«¯¯ß¯·õk½W®ë¿_kêÛ^Õ­«kW^·í·ûv»n×jÖ½»Z·ÖÖöêû×uzö·mzÚî×êÕÕnö­½[VÿU»uW[¯{Z«uÝÖ뽪º·¶ÛWwÖªý]ZÝVý^ÕU×nÕ¯Z¶­j®«ºß]­mU^÷Öîö¿o«¯¿íUkµ¶¶®ö®ª·}ª®¯Z½m¿wëUÚÛU½Úö½­_ªú­µo}{ÝÖ¶ª¯ª«UßzÝjëoÛö×í­º«UUêõµõÕÕõ[ßµ~Õj¯®Ý­jÖµu[UÛ^ÕzúÚ®¿­W÷]®ê÷UÖ¿kZÕVÕº¯U¶õnª®¶«íµªöÝ»Uº¯ý®ºÖÞÛmUU¿Ýûz«êµþímª®ª·ú­jõj»{Ö·^ª®î«ÿÖÚÛï¾Öºíu]®ëj½½ë¶»¯µ×µ[VÚímU»u«ïê׿_µwW®Û_Öº÷ÝV¶êö¯ª­ª·ª­öÖ«__ÕuÞÖªÚëûº­UÕþ«½¯]_µz«íÖÖõWÛ{­_½W_Ûmµöö­][íÚÕÿ·µÛªÕ^ªënÕUú붪«Õj­­j¿ú·zý»úïÝ}~­¾ªªµ¯«·]j­þõªÿëWj«þÛj¿µWöªª«­un½k{}×ZïÕz¾µmZ®«®º·]këëj­mûjö½ª¿­zÿõ¯U¿j½VÖ½uÞÖýUWk«o^õõ{µí­ªý½í_uUßÕ÷Vºª¯j¯WkZßvîëU[ëÛ[ujºÖ­wµ­ë®Ûuºþ¶«mööÖ׺սµî½µß¶«­Ý­Z¿¯»[î»{ÕUuV«jÛõõ®«UoUëïµÕ]UWýUÕ[¶ÛZÖßµ·U}«¿Z÷uV«m«kkZ½×U]WÕíwWê«n÷®¯múªµ­vïkU¯Ö×îÛ]n¯µmµêµõÕª¯½ª­ZýÝîªê¯­»ÚöûmV®ÕkÚÝÛV«Vïmµßë[uuýj­kw­]o»öª×WU^îî­UnëïZ¶­®»ªªí»­UÚ¶×VµÕª¿»vºë½_µ»«~ßÛûZ½W¶¶Ú·õjÕ·ë[«ºÚ·zÕÕ_mVõª­®ª»ýß­W[o]Umºë­¶ÕªÝµ}¶ªõ¶®ûZ­^ï]k½{^õªíÕmnµÚÕ«­}÷õ»Ýµv«V»oZÛ@ \ No newline at end of file diff --git a/on_chars/100k_dwupunkt_p_05_coded_table b/on_chars/100k_dwupunkt_p_05_coded_table new file mode 100644 index 0000000..461e37b Binary files /dev/null and b/on_chars/100k_dwupunkt_p_05_coded_table differ diff --git a/on_chars/100k_dwupunkt_p_09_coded b/on_chars/100k_dwupunkt_p_09_coded new file mode 100644 index 0000000..ad6a3fb --- /dev/null +++ b/on_chars/100k_dwupunkt_p_09_coded @@ -0,0 +1 @@ +ÿ¿ÿ¾þÿÿÿw»ÿßÿý¿ÿßÿßÿ¿ïÿÿÿþý÷ÿÿ¾÷ÿÿßïÿwÿÿûþÿýûÿÿÿíï¿ÿîßß÷ÿÿÞ÷ß¿¿ï{ÿÿÿÿÿÿÿÿÿ¿þÿÿê¿ûýýÿûïݾÿïþÿÿëÿÿßßßÿnýßÿÿÿÿ¿ûÿÿÿÿÝ¿k}ïýýÿÿÝÿ_ÿÿÿ¿ÿÿÿßöÿ¯÷ÞýÿÿûÿÞÿÿßÿÿßÿÿÿÿëëõÿ÷õÿïÿÿ×ÿßÿÿ_¿û·ÿÿíÿÿÿ÷÷ÿÿÿÿÿkÿïþýßß×ÿßïÿÿûÿÿþÿïÿ¯¿ÿÿÿÿÿ÷ÿöÿ÷÷ßþþûw¿¿ûþÿûÿ÷ÿÿû¿ÿÿÿ÷íÿÿý÷ÿÿ÷÷þýúÿÿÿÿ¿ÿÿ·ÿ·}ßÿïïïÿÿþß_Ý÷¿ÿ÷ïwßÿïÿÿÿÿ¿ÿÿÿÿÞÿ÷ýÿ¿ûýÿßÿ÷ÿ×ÿÿÿÿ÷öÿ~ÿÿÿÿÝûÿÿýÿÿ·÷¿ÿîûûwÿþ¶÷¿ÿÿÿÿ×ÿûëÿÿºßþÿ¿ÿÿûßößþÿÿïÿ¿ÿÿ÷õÿÿÿýÿÿÿÿÿÿÿû¿_ßÿ½ÿÿïÿÿÿ¿÷¿ÿ¿ïûÿoýÛêÿÿwÿÿýýÿ÷ÿþÿÿÿßÿÿoÿÿÿïûÿÿý¿ý_ÿ½ýÛÿ¿ûï÷ýÿÝ÷uí÷¿ÿïÛ¿ë¿÷ÿÿÿÿþÿþÿ_þ÷ÿÿÿ¿ÿÿÿ_ÿÿûÿÿÿÿ_÷­îÿÿÿýÿÿïÿÿÿ¿ûÿïÞÿÞÿ÷ÿÿÿwÿ÷ßþÿßÿÿþÿý¾íkÿÿÿïÿÿß×÷îûÞïýÿ¿ýÿÛûÿûÿÿûÞÝÿ_ÿÿÿ÷ÿ¿ÿïÝÿ÷¿ÿïÿÿûÿûûÿÿ¿ÿýÿÿÿÿÿ·½ÿÿÿÿÿþÿ÷¿ßÿÿÿû÷ß¿ÿkþÿþÿûÿÿÿÿÿÿÿïïÿýï_ïïÿßÿþÿÿ÷ÿýÿÿÿ¶¿Ýÿÿíßÿÿÿÿ÷½ÿûÿýþÿÿßÿÿÿß¿÷õþÿÿÿÿïßï¿ÿï÷õöû÷ßû¿ûÿý÷ßÿ÷ÿû÷ÿ÷ÿëÿïÿÿÿýßÕ{ýÿ÷ÿ¿þÿ·ûÿïßÛÿíÿÿÿ¿þëÿþ·ÿ¿ÿÿÿ_ÿÿÿÿïþßÿÿÿïÿïÞÿÿÿ÷ÿ÷ÿÿûû{ºýû½ßûÿ÷ûÿÿÿ}ýÿÿûïýîûÿß~÷ÿÿï¿ÿ{ÿ÷ïÿþÿÿ{ÿß~ÿ¯þþ­ïÿÿÿ·ýÿÿÿïïÚþß×êÿûßÿ½ÿÿÿÿÿÿÿ÷ÿýÿwÿÿºïÿ¿ÿß÷ß¿ÿýíÿÿ÷ÿ^ÿÿÿÿ{ÿûÿÿ¯ûÿþûÿÿû÷¯þûÿÿýïÿï·ÿÿþõÿÿwÿßÿÞû÷íÿ÷ë½{ÿ÷þÿïßýÿÿÿïÿÛ½ÿïÿÿ~Ûõÿïý_Öîÿÿýÿ½ïîýþ¾÷ÿïÿÿÿÿþÿíÿÿÿûûÿÿýßÿþÿÿÿÿºíÿÿÿÿÿÿûßÿßöÿÿÿßÿ÷ÿÿïþýþÿÿÿÿ÷Úÿÿûÿßÿ¿ßþßßïÿÿÿêöÿþÿíÿÛßßëßïÿ¿ÿ¿ß}þßÿýþýÿÿ¿÷ÿÿÿÿÿßÿïÿÿý¾ûÿûÿëkÿ»ÿïëÿýÿ÷ûû÷ÿßÿÿïÿÿÿÿýÿýÿ÷ïýÿÿ¿ÿïþß÷ÿûÿÿÿÿßýÿÿ~ïÿÿûÿÿþ÷ÿïÿWÿÿÿï¿ÿÿÿ¶ï¿ú¶ûßÿ½ÿÿÿýÿÿÿ¿þ÷ÿ÷wÿÿÿÿßûÿýÿÿÿßßÿÿ¿ßÿ¿¿ýÿßÿÿ{ûÿÿÿûÿÿÿïû¿ÿÿîîöûýþÿ×ÿ×ÿÝ·ïÿ{ÿïûßÿÿÿûßßÿïÿÿýÿÿÿÿ~ÿÿ÷¯ÿßÿw÷ÿÿÿÿ¿ÿÿû¿ÿÝýz¿÷ÿÿöÿÿÿÿÿÿþÿß¿ÿÿÿÿÿ¿ÿÞÿßïÿÿÿûúýßÿþ¾ÿÿÿß¿÷ÿÿþÿ¯ï÷ûï¿ÿÿ¿ïÿûÿÿß{ÿÿÿ¯ïÿÿÿÿîÿ_÷{õo÷ÿ¿ÿþþûÿþÿÿÿ÷úýïþÿÿÿþ¿ßÿ¿ÿÿþ»ßÿÿÿÿÿßÿoë÷µÿÿþÿþÿï¿ÿÿÿÿ½÷ÿ}ïÿÿ÷ÿßßýöÿÿûúÿÿÿÿßÿo¿ÿÿÿÿ¾ÿÿÿýþÿ÷öÿÿ÷ÿÿÿõþÿÿýÿÿÿÿûëÿûÿßÿýÿûÿÿÿÿ÷ÿÿÿÿïëßïÿß½þÿÿÿßÿÿ¿ÿþýÿ¿¿þÿÿÿÿÿ¯ýßÿ÷úÿußÿÿÿ~ý¿ÿï¿¿ÿïÿû¿ýþÿ·ÿïÛÿöß÷_û÷ÿûÿÿßÿÿ¯ýýÿÿ׿þßÿÿúÿÿÿÿûÿÿÿýÛ÷ÿÿýþÿÿßÿÿÿÿûÿïÿÿïÚû_¯×ÿ~þ÷ÿýýÿÿþÿöÿÿÿïÿ¿ÿÿÿÿ}ÿÿûÿÿÿWÿÿ¾ÿÿûïnÿ÷ïÿÿÿÿÿÿoûÿ}ïë¿õÝÝ~ÿÝ¿ÿÿ¿ûÿÿ»¿ýÿÿÿÿ¯ÿÿßÿÿÿ÷wÿßýï¿ÿëÿïÿíûÕÿ¯ï»ÿÿýÿÿß·ÿÿÿûÿ¾ÿÿÿßÿßÿÿÿu÷÷¿÷ÿÿþþýÿöÿÿ{nÿÿÿÿï¿¿ÿÿÿÿ}}ÿÿþ×ÿëýÿ÷ÿÿ¿½ÿÿÿ÷ÿöÿþ¿÷ÿûß~ßÝÿû¿ýÝÿÿï¿Ûÿ÷÷ûþ¿ï÷ÿ·ÿ¾¿ÿÿÿÿÿÿ÷÷þ÷ÿý÷ÿýÿµoÿÿ¿ÿ÷ÿÝÿý¯ÿúÿ×û¿ÿýkÿþï¿ÿþÿþßÿÿÞ÷þÿï÷ÿþÿÿÿÞ»¯ÿ·ÿÿ÷ÿ¿ÿÿýÿ¿íÿÿ÷ï{ÿýÿÿßÝîÿÿ¿ÿëÿÿþ¿ÿ÷ýÿ÷ÿÿÿ¿ÿÿÿ×ýûÿ¿û÷}ÿÿÿÿïûïíû÷ßý}ÿÿÿÝïÿûÿýßýÿß¿þ÷ÿïÿ¿ÿÿýûÿ~ï·ßÿÿÿ~ÿ¿ÿÿÿÿ¿þÿ»ýÿßû¿ÿþþÿþÿÿþÿû÷ßÞÿÿ÷ÿÿÿÿÿýºßßÿÿÿÿÿþúþÿ¿û÷û¿¿ÿ_ÿÿÿþÿïÿþÿÿUÿÿ_÷ÿïÿ{÷ß÷¯ÿÿÿû÷ÿÿÿÿÿ½÷÷ÿýßÿuÿ뽿ßû­ûß¿ßÿ÷­ÿ÷þÿ¿·ïÞúÿ÷íûÿý¿ÿþÿÿ¿ÿ¿ÿÿÿ}ÿþÿýÿÿûýÿÿ×ï_þÿßÿÿÿýÿþýïÿÿûÿÿÿÿw¿ÿÿÿÿ_ÿÿÿºÿþÿîÿÿîýÿûÿïÿÿûûýÛÿÿÿ÷Þÿíÿÿûëÿÿ½ÿÿÿÿý¿ÿÿ¿¾ÿ¿÷ÿî÷û×ÿ÷Ýo÷þýöÿßÿÿÿÿÿ}ïößýÿßÿÿÿ÷}¿w»ýÿ}¿ï_ÿîêöþþÿ¿{þ÷ýõýÿÿößÿÿß¾÷ÿÿ¿þ¿ßÿÿ¿ï·ÿûõÿÿÿ¿ÿwÿÿûÿïûÿûíÿÿÿÿÿþÿ÷÷¯ÿÿÿÿÿÛßûûÿÿßýÿÿýÿ÷ÿûÿÿÿÿûÿÛ}ÿÿýÿÿÿ÷¿ÿÿû¿ïÿýíÿÿÿÿßï»ÿ÷ÿÿÿÿÿþÿÿÿ­ÿÿýÿ}ÿ¯í¿ßÿÿÿÿÿÿßÿÿÿûÿÿßÿÿÿûÿíÿÿÿÛÿ{ßÿÿÿÿÿÿþûÿþßïÿ÷¿ÿþÿ~ßûÿÿ¿ÿÿýÿß·÷»õÿÿÿÿ¿ýÿ¾ÿ·ýûþÿ}÷¿ÿûÿÿß÷ÿûÿß}ûëîÿíîÿÿïïþÿÿýÿÿÿÿßïÿï÷ÿÿÞûïÿÿ÷û¿»ÿÿû÷·Ýÿûßßÿ½ÿÿÿÿîýÿïoÿo¿ÿÿÿÿÿÿÿ÷ÿÿýÿÿÿýÿþÿÿïÿýÿí{Zÿýÿÿ×ÿÿÿÿ÷oû¿þÿwõÿÿÿúÿïýíÿÿÿîÿÿÿ¿ÿÿï÷ÿý¿ÿïþÿßÿÿîÿÖ÷¿ÿÿ}ÿÿ¿ÿûýÿý_ÿ¿ïÿÿîµÿïÿïÿûßÿÿ÷þ÷¿ÿûïßýÿÿ¾ÿÿ·ýý÷ýÿÿÿÿÿ¾ÿúÿÿÿÿÿû¾ÿ×ÿ¯ÿÿÿûûÿ­Þÿÿÿÿÿïýÿöÿïûßÿ»÷ÿû»ÿÿûÿýÿÿý¿¿ÿþÿÿÿÞïï×ÿÿõÿÿÿþÿßÿþÿïýÿþïýÿÿû{¿ÿÿý÷nöÿï}ûÿÿÿÿÿïÿ¿÷ÿß¾ÿûïÿÿÝïßßýÿýýûÿÿ_÷÷÷ïÿÿþ·ÿïÿ·ÿÿÿ»¿½ïûÿûÿýÿßÿï¯ïïýý¿ÿÿýý_¿ÿ¿ï÷ïîý»¯ÿúÿÿ¿ÿÿýû~ÿý·ûÿ¿ÿÿÿûïÿ¾ÿï½ÿÿþÿ÷÷ÿþîþÿÿÿÿÿ÷û¿ÿ÷ÿÿ_ûÿÿÿÿ{wÿýÿï¿ïï{÷÷oÿÿûÿý­ÿÿöÿÿÿûÿýÿÿï÷÷÷ÿÝ÷ïÿ÷þÿÿÿý½÷ûÿÿÿÿÿûý÷ÿÿÿïÿÿÿ¿ÿ¿ÿ¿ÿ¿ÿ¾ÿÿ÷¿ÿýÿ¯ÿÿïÿÿÿß¾ÿÿÿ¯~ÿûÿÿÿ½ÿýßÿÿûÿÿÿ÷ÿýößÿ¿ïÿÿÚÿþû»ÿ×ÿßÿÿÿ¾ßûÿ÷ý·Ûýÿ__ÿÿÿÛÿ¿ÿÿõ¯ÿßý÷ÿÿþÿÿßïÿ÷×ÿýÿÿ¿ý~ï_ÿÿÿö÷ÿïïÿÿ½ýû÷¿ÿïÿ_î¿ÿýwÿÿïþÿïÿÿý¿¿ÿýÿÿýïïû½ÿþÿÿÿþÿý¿ÿï¿ïÿÿßÿ÷ÿÿÿÿÿß÷ÿ·îþÿÿÿÿÿÿý÷ÿû÷ÿ½_ÿÿýÿßÿï÷_·¿ÿÿÿ¿»_ÿÿ¿ÿ÷ÿÿÿ¿ÿ¿ßîïÿþß×ßÿÿÿÛÿÿÿÿÿ]ÿÞ¿ÿûý×÷ÿÿÿÿÿÿÿÿûë¿ïµïýÿÿ÷ÿÿ~þßÿÿûï¿ÿûÿÿÿïÿ¾÷ÿÿ½·ïÿý»×ûßýúÿýwÿ÷ÿÿÿïÿßÿÿÿýÛÿÿ}ÿýÿý¿oþÿýÿÿÿÿþïõ÷ïÞýÿÿÿ¯·¿ÿÿûýÿÿÞÿÞûþÿÿýÿ¿ÿÿßÿÿ}ÿÿÿ¿ï÷þÖÿÿÿë¿×¾Þ¿ïÿÿÿþÿwûÿ}ÿÿïÿ·þÿßÿ÷ÿÿÿÿÿþíÿÿßú÷¿ÿûÿÿßï×ÿßÿÿöÿÿÿÿÿû÷¿ÿþÿ÷ëÿÿÿÿÿ}÷Ý¿ÿÿÿûÞûÿÛþÿÿ¿ÿÿÿûÿÿûÿÿÿïýÿï½ßÿ÷ÿÞÿîþÿ¿ÿßÿ÷ýÿ¿ÿûÿÿÿ}þëÿÿýï¿ÿÛßßÿÿ¿ÿýûÿ¿ÿûß÷ßïÿÿÿÿÿÿþßÿÿýÿÿûÿÿ×÷÷®ýÿû½ÿÿÿÿûÿ»îýû¿ßßßúßÿþ¯ÿ~ÿýÿ¿_ïûîÿûýþýõ^ÿ÷þÿûúïúÿÿÿ¿ÿû¿ïíþýßÿÿþ¿ûÿûß÷ÿÿÿÿÿÿûÿ¿ÿßþßßßßÿÿÿþÿwû÷ÿÿßÿÿýÿ¯þïýëÿÿÿýßÿÿþÿÿÿÿÿýÿÿÿÿÿ÷ÿ¯ÿÿÿ{ÿÿþöÿÿÿÿïûÛÿ÷ÿÿÿÿ½ÿÿÿßõþÿ¿Úÿÿïÿï¯ûÿïÿ¿ýþÿÿýëÿþ·ÿ¾ÿßÿvÿ}÷ÿõþ·ÿ¿ÿÿýÿß÷ÿ¿ïßïÿÿÿÿßþÿ÷ÿ¾÷ÿïÿ÷ÿÿÿ¿_ÿÿ÷¿þÿÿoÛë½ÿÿÿ÷û×ÿÿßßýßÿÿÿ¿ÿýßÿ÷÷÷ÿý÷ÿÿýßûþÿ¿÷ÿïïÿÿ÷~¿ÿ{oï÷ÿþßÿÿûÿÿÿ÷ïÿß¿ïÿÿÿßÿ÷÷þÿþÿ¿ÿÿïÿÿÿÿûöúÿÿÿûÿ÷¿ÿïÿÿÿÿÿÿý×ûÿÿ_ÿþ«ÿû÷Ý¿ïÿ¿ÿßÿwÿýûÿÿÿÿ÷ÿûÿÿÿÿþïÿ¿÷ßý»¿ÿ÷÷ÿ»þÿ_¿Ýÿÿþúÿÿÿßÿÿþÿÿ÷îÿÿýÿÿßÿëûÿþÿÿûÿÿÿ÷÷ÿÿÿÿÿ~îïþ÷ÿÿßïÿÿ÷ßßÿÝþïÿþÿÿÿoïýÿíÿÿÿÿÿÿ÷ýÿßþÿûÿÿÿûÿÿÿûÿûßÿ»nÿßßõû~ïþÿß÷þÿûÿÿþÿÿÞýÿ½ß~÷ÿÿþûï~¿ïßÿßß¿ÿÿÿûûûïû÷ÿÿúúïÿÿöû}ÿÿßÿßÿîÿíÿÿõïoþý»ÿÿo}÷ÿÞÞÿý¿ÿÿÿÿû÷ÿÿÿ»~ÿÝûÿÿÞÿ¿ÿÿßûý¿ÿÿ¿wïþÿÿßÝýÿÿþûÿ·ïÿþïÿïßÿÿÝþ¿ûûÿýÿïÿÿÿ×ý÷÷÷ßûßÿÿ¿oÿûÿ¿ßÿÿÿÿ{{ÿ¿ÿ½ÿûÿÿþÿïÿÿïÿÿÿÝ¿ÿûÿÿ]owÿÿÿwþ÷ÿÿÿÿ½¯ÿû÷ÿßýý÷ÿ¿Þÿï¿÷þûïÿÿÿþÿ÷ÿÿÿýÿÿï¿ÿ}ÿú·÷ÿÿÿÿöÿ½¿ïÿÝÿÿßýßÿÿÿ¿ßßÿÿÿÿÿÿÿý÷ÿßÿû¿·þý÷ÿ×ÿû}µÿûï¿ßÿÿÿ÷ÿ÷ý«ß÷ÿ÷ïÿ÷ÿßÿ¿ÿ¿ûïýÿíÿïîþÿ}ÿÿ··ßÿÿ¿ÿnîÿÿ÷ÿÿÿÿÿÿÛ¿ïýÿ÷{ÿÿûÿß¿ÿÿÿÿÿÿÿÿßÿÿþÿþ¿ÿûÿÝßÿïÿÿÿÿûÿ÷ÿÿîÿÿÿÿûûÿ¿Þû»¿îûÞöÿîÿîÿöÿ»þ½¿ÿ÷ýÿÿ¿÷ýÿÿþ¿ûÿÞïýÿÿÿÿwý¿ÿÿ÷ýÿÿûÿïÿÿÿÿûÿÿÿ¿úÿ÷ÿÿÿ»ßÿÿþÿÿÿßëïÿÿÿÿ÷ïÿûÿßûÿßþ½Ûý¿ÿý¯¿ïÛû÷ÿ¿ÿ¯ÿûÿ¿õ}ûß¿¯õßÿ÷ÿ÷ÿÿÿû·¿÷ýÿÿÿÿß·ý}ßûÿ¿ýÿÿÿ}¿÷ÿw¿ßûûÿÿîÿ¿¿÷ý¿ÿûÿ_ßÿ~ûÿÿþßûíÿßþÿÿï»ïþû÷ýÿÿû÷ýÿÿÿýßÿÿÿïÿþÿÿÿïÿïûþû}ïúÿïßÿÿÿ_¿»ïßµÿýÿ¿ÿÿ¿ß¿îÿï¿¿ÿþûµ×Þß}ïïÿÿýÛýÿ}þ¿Ûö¯¿ÿÿÞ÷ïÿ{kÿþÝí÷ÿýÿÿÿÿÿ¿ÿÿÿÿÿÿû÷ÿûÿß¿ïÿÝßûÿíßÿýo½¿ö«ÿÿÿ÷ÿÝïþþ÷ÿï½ûÿÿÿïûoÿÿ¿þÿÿþÿ¿ý½êûÿÿ®ýÞÿýÿÿþßúû÷ÿû¾ûÿÿÿ×{ûÿÿßÿÿßÿÿýÿûýû_÷ÿþþÿßýÿÿoýÿÿÿÿÿÿÿ~¿ýÿÿÿÿÕý{þÿþÿÿþý¿ÿßÿ÷ÿ·÷ßïïûíÿÿÿ¿þÿÿÿß÷ßÿ÷÷ÿ¿þûª¿ß¿ÿ×þÿÛÿõ_÷ÿÿÿÿ÷ÿÿïÿÿÿþïÿ÷ÿÿÿÿÿÿÿZ÷ÿÿÿ»ýÿûïïÿÿ¿ïÿÿÛõöºý¿þûýí¿ÿÿÿÞÿ÷ßÿûÿÿý¿ûÿÿïÿýÿÿÿÿÛÿûÿ¾¿ÿÿÿýý÷½ÿÿÿûûÿïýþýÿÿÿÿÿ_ÿÞûÿÿß÷þÿ¿ïÿûßÿÿÿ÷ÿÿýÿÿûÿÿ÷÷ÿ¯ß¿¿ßïÿÿÿÿößûÿþÿþÿÿ_¿ÿûÿûï­ÿ÷ïÿÿ~ú¿ßÿ÷×ÿÿ÷ÿÿ¿÷ßÿßÿÿëÿÿÿßÿïïþÿÿÿÿþ¿»ßû÷ÿÿ÷ÿ¿»ÿþÿûoþÿþþ¿ïÿÿýÿÿÿíÿÿ¾ÿ¿ïÿÿÿÿ{¿ïýÿÖ÷ûÛÿÿ÷¿÷÷þ÷ß·ÿÿÿÿw÷ûûïÿÿÿíßÿ½ÿÿïýÿÿþÿÿûÿûï¿ÿþÿÿû×Ûÿÿ¿ÿÿÿÿÿºÿÿÿûÿÿÿoÿï÷ö¿÷ýþïÿÿý÷ÿÿÿ÷¿ûÿÿÿÿ»ÿÿÝÿþÿýÿûßÿÿÛÿ¿ÿÿ¿ÿþþþÿÿ¿«·ïÛ÷ÿÿÿÿÿouïÿ¿þ·ÿÿÿ÷ÿûï÷ÿÿ{ÿ¶ïÿ½ïÿþÿõïÿÿÿ½ïÿßßÿþÖÿý¶¿÷îëÿßÿ¯÷þÿýÿÿ}{ÿÿÿÿÿþ¿ÿÿÿßûÿõÿ_ÿÿûÿÿ¿ûÿýûíþþýýýï}w¿ÿÿÿ¿þûß¾÷ÿÿýÿÿß÷ÿÿßÿÿ÷ßßÿýÿ¿ÿo÷ÿÿÿïÿ×ßýÿýÿÿ·¿ïÿ~ßúßßÿÿÿúúÿßÿÿÿÿíÿ·ÿ÷ÿÿÝÿÿþ÷þöÿßïïï¿ïÿ}ûý÷ïîýoîÿÿßÿÿÿÿÿïÿ÷ÿÿ÷ÿÿ¿ÿïýÿÿÿ×ïÿýÿû÷÷÷ÿõïÿÿÿý¿ýßßýÿë÷Þÿÿûÿßÿïÿýÿ¾¯ÿÿïÿÿúï¿ûþïþ»ïþ÷ÿõ_ÿÿ}ÿÿú¿¿ÿÿ¿ÿ¾ÿÿ¾ÿÿÿÿÿ×ýÿ÷ÿ_¿ûýÿÿ÷·ýûÿþÿÿõÿÿ¿û×ÿÿþÿ÷÷ÿÿÿý¿ÿï÷úûÛïÞ·ý÷ýÿÿÿzÿÿ÷ÿýûÿÿû®þÿþ¯ÿÿûÿûwöÿÿïwþ¯¿ÿë¿¿÷ÿûÿÿÿÿÿ»ÿÿÿÿßÿ¿þ¿ûûÿõ»úý¿ýïÝþÿÿÿÿÞ¿ÿÿÿoký÷ÿûÿ÷ßÿÿ÷ÿÿÿûÿ½ÿÿ÷ÿîÿþÿûÿÿÿÿÿßÿÿ_ÿï÷ÿÿûßÿÿ¿õ÷ÿû¯ÿû_þÿ÷~ýÿÿÿÿßÿ}·ý÷ÿÿïßïÿïÿî÷¿ÿß½wß÷½þÿÿÿ÷ý¿ÿÛûþÿÿÿïÿÿß×ÛÝÿß_ÿÿÿÿ÷ß¿ÿûÿÿ÷ûïÿ¾ýÿwýÿ¿ÿþþÿ÷oÿ÷¯ýëÛïûÿÿöÿÿ÷ýþÿÿÿÿþ÷ÿïÿ×úÿÿÿï÷þýÿÿÿýßßÿûÿ¿}ßÿÿþÿÿÿßþÿ¿÷þûÿÿÿöþûßýoÿÿÿÛÿÿÿ¿ÿýÿÿÿ¿ÿûû¿¯ßÿÿ·ÿþÿîÿÿÿþîûýÿ÷ÿýÿûûoÿýÿûïÿ}þÿÿöÿÿ÷ÿï¯ÿÿõÝÞÿûÿÿ{¿ßÿýÿþûÿÿÿþþûÿïÿÿûßþÿÿþÿÛÿÿûÿÿÿýÿÿÿÿ÷ÿÿoÿjÿ¿ÿÿÿÿÿß÷}û~ï¯ûþöß½¾ÿþÿþÿþÿÿ¿þûßßÿûÿ½ý¯¯ÿwÛþß÷ÿÿûß÷ë÷÷ÿïÿÿÿÿÿïûû¿ïûÿÿÿßÿÿ½þÿþ·ÿÿoúýÿöÿÿÿÿÿÿúþÿ÷þßÿ×ÿíÿíßîÿÿþýÿûßï¶ÿÿÿÿ¿ÿÿí÷÷mýßÿ¯õ»ý~ÿÛßþÿÿÿÿþïÿoûýÿÿ×ÿÿ¿ÿÿ÷ÿ{ÿ¿ÿ¿õ{ßúÿþÿ»ýíÿßÿÿ}ÿÿÿûûÿÿÿß÷Ýÿÿþýÿÿÿÿ¿Ýý·ÿÿýÿþÿÿÿÿ÷ÿ¿¿ÿÿ¶ûÿ¾÷ïÿÿí÷ßÿí½ÿ­ÿÿû¿ß÷ÿßÿýÿÿýÿ¿ý]ÿ÷ýþÿÿûöÿßÿýßýýÿÿÿÿÿÿïÿßÞÿû¿ûÿn÷ïÿoîÿï¿ßÞßÿÿÿßîýÿÿïïïßÿ~ÿþÿÿýÿ_ÿÿ_ûÿÿÿmïÿíßÿÿÿÿöýÿß¿ÿûÿû¿ÿ¿ÿý}ÿîÿß¿ÿßÿÿÿ¿ÿÿïÿÿÿýÿÿÝýÿÿÿïîýûÿÿÿý÷ïïÿþßýÿÿÿû÷ÿûÿÿþûÿ¾þïÿÿÛÿ÷ïþÿßÛßß«ÿþÿ¿ÿïÿÿ¾ßÿõïýïÿÿÿö»ûÿþÿw¾ÿûýûïÿûÿ÷ýÞÿ÷ßÿï¿ÿöÿÿú÷ïÿîï÷Ûÿÿÿ¾÷ÿÿÿûÿÿÿ¿ÿ¿_ÿßßû÷ÿþßÿÿþÛÿÿýîÿÿ¯¿ÿ¿ÿÿ«ÿï¾ÿÿÿÿÿz¿ÿÿÿÿÿÿÿÿÿÿûÿÿmõþíÿý»ÿ¿ïïïïÿwÿßßýÿÿïÿûÿ¿ÿ÷÷÷ûþþÿÿÿûÿÿý÷ÿÿÞßÿÿÿÿÿÿÿûÞÿÿÿ¯ÿÿ½kûÿ¿ÿ¯ï}ûÿÿÿ»ûÿ¿ÿÿßw÷ÿþ÷ÿußûöý¿ÿû÷ûÿÿÿÿ×ïÿßwÿ¿ÿÿÿûÿÿÿïÿÿÿÿÿÿÿÿ¿÷½ÿÿýïï]ÿÿÿýÿ¿ÿ¿ÿÿÿýÿýÿï¿÷ÿÿÿ}¿ÿÿ÷ÿÞÿÿÿÿõ¿ÿ¿ÿ÷ÿw{w÷ÿßïÿÿûÿßûû¾÷ÿoÿÿýÿÿÿë¿ßýÿÿýî÷v¯wÿÿµßïÿÿmÿþÿÿýû{ïúûÿÿÿëÿÿ÷ÿÿÿÿÿÿÿÿïßýþÿÿ¯û¿ÿÿß÷ýÿÿßëûÿÿw½ÿÿþúÿ÷ýÿß¿×ßþþÿÿßÿÿÿ÷ý÷ÿÿßÿÛÛÿ¿ýÿûïÿÿ÷ÿ¿wýýþÿûÿö¿¿ÿþ¿¿îÿ¿{ïÿþÿýþþÿÿýÿ÷ûûúÿûÿÿûÿï÷»ûÿ}û¿ÿýÿûþëßÞÿ¿ÿÿûýÿÿo¿ßïÿþÿÿÿïÞýÿÞÿÿÿïÿÿýÿÿÿÿÿ·ú÷ýûÿ÷ûþïÿû¿ÿÿwÿÿkÿþý¿þÿ¿þÿÿÿþÿÿÿï½ÿþÿ÷þþýÿþëÿïßÿÿïïþ¿¯ýÿÿÿßýïÝÿÿÿÿÿÿÿÿÿÿ÷¿ÿý÷ûîßÿëû÷ÿ¿ûÿíÿ÷ÿ^þÿ¿ÿûÿÿ_þ½ÿÿÿ¾ÿ÷ßþ÷ëÿÿê÷ÿýÿþÿß×ÿïÿï®ÿÿÿkßÿë÷o÷ÿÿþëÿ~þûû÷ï×ÿÞ÷ÿ¿Ýïïßÿÿÿ¿þ÷Ûýÿÿoÿÿÿÿÿÿÿïkÿÿþýÿý÷ÿÿßßÿ÷ÿÿ÷ýßÿÿÿ÷ÿýïÿÿßÿ{ÿÿí«÷ýÿ¿ûýÿÿÿëÿÿïûÿÿïÿÿßý÷ï~ûÿý¾¿þïÖÿÿÿ÷_úßëï¯ÿïÿ»ÿ¾¿ÿíï{ÿÿ½ÿûß×÷Ûýÿûÿßûöûÿî÷÷ÿëÿÿÿÿÿÿÿÿÿÿïï÷ÿßÿÿûïÿÿßýõßëÿÿïÿÿýÿÿ¿ÿÿ¿ÿÿïÿý÷ÿ¾ÿ߯ÿïÿ_ß®ÿûÿþÿ_¿ÿþÿ¯ÿÿÿÿÿ¿ûýÿûÿÿýþÿ÷ÿõûÿý÷¿ÿ÷ßýïþÿû÷ÿÿÿõïïÿÿ¿þÿþÿÿÿÿÿ¿ÿßZ¿ÿ~ÿ½¯ÿßÿÿoýýïëíÿÿÿÿÿ¿ÿýýÝûß÷ïÿûÿïÿîÿÿû_ýÿý÷¿ÿ{ÿÿÿ·ÿíýýÿßÿþ×ÿÿ{ÿÿ}õý~Ûýöÿÿ~¿{¿ÿ÷ÿÿÿ¿ÿïÿý~û¯ÿýïÿÿþÿß¾ûÿÿÿ÷ÿÿÿÿÿûïþÿÿÿÿÿÿÿwÿ׿÷¿~ßûÿýnþÿ{¿ÿÿûÿû¿ïÿÿoïýÿûþÿýýÞ÷÷ÿÛ¾ÿßÿûïÿÿÿÿÿoÿÿ÷ïÿß¿ÿ¯ÿ¿þÿÿÿÿÿßÿÿÿûÿû÷}{ßÿïûÿ¿ßþû÷û÷þÿÿûÿÿÿ¾ÿÿÿß¿ßïWýÿõoÿ÷ÿÿÿýß¿ÿÿÿÿþïûÿÿ½ûïÿþþ¿ÿßÿ¿ûÿÿÿïýÿ}ÿ½ýÿý×ÿÿ÷oßûÿÝûÿ÷ßÿÿßÿÿ}ÿïý÷ß¿ÿ~Þ¿~ûÿþ÷ÿÿûÿÿ{ÿÿýÿÿÿû¶ÿ¿÷ÿÿïÿ¿ï{¿ÿÿÿÿÿßÿßÿ÷ýÿûÿÿ¿ÿûú÷ßßÿÿÿÿÿûûÿÿÛï¿þÿ}û_þßÿwïÿ¿ÿýÿïÿý{ÿÿþ÷¿ÿß¿ÿÿÿÿÿÿ÷ýÿÿÿÿmÿßÿÿßÿïÿþÿûßöþÿ÷ÿÿ¿÷ÿÿûÿÿÿÿ~ý»ïÿßïïÿý~û¿ýÿÿÿûÿþÿÿýïþÿÿûÿÿ÷ÿïÿÿÿþ÷ïûÿ}ÿÿÿ¿ÿÿÿÿÿÿÿ}ÿÿ÷ÿßÿ{ÿßÿwÿÿÿÿûÿëÿÿ_ÿÿýÿÿïýÿÿÿïÿûÕÿÿÝÿ¿ÿo·ÿöÿÿß¿ÿÿÿÿz÷ÿïï¿÷ï÷÷ïþþ¿ûÿÿÿÿíÿíÿ¿ú÷þ»ÿÿ÷ÿÿïÿÿýÿ¿ÿÿÿÿýïÿûÿÿÿÿÿ}ýÿÿÿýïÿÿÿÿÖÿêÿÿÿ÷ÿÿïþÿ¿þÿþÿÿïÿÿÿ¿ßÿ}ßÿ_ûþÿÿßÿÿÿÿßûÝ¿ÿÿÿÿÿÿÿ¿¿ÿýÿÿÿ÷ÿÿþÿÿîÿÿÿÿÿÿÿ~ÿÿúïÿþÿ¿ûÿûÿ¿ýÿÿÿûÿ¿ûÿ_ûÿ÷÷¾ýßþÿïÞÿûýï÷îÿÿîÿÿþïöïÿÿýÿýßþÿí¿ÿþëþÿÿÿ½¯õ÷ÿû¿ÿÿ÷ÿíß÷ÿ¾ÿß¿ßßÿµ÷ßÿßÿÿí÷ÿëýß×ÿÿÿ÷{ûÿ¿~ßµÛÿÿ÷ÿúû÷ÿÿÿ·ÿþÿÿ÷WÿÛÿ÷Þÿ÷wÿýßßïÿÿÿÿÿÿßÿþ÷ÿÿÿÿïÿýÿÿ÷ûÞõßýÿÿÿÿßÞß»ÿýÿû×ûÿûÿwÿÛÿÿÿïûýõÿÿëÿÿ«ÿoÿÿÿ÷ÿ¿ÿÿÿÿ¿ÿÿî¿ÿÿïÿÿ¾ïW÷û»ÿõ_ÿÿþÿþÿú½~ÿÞþÿÿÿÿ_ÿÿÿûÿ÷ýÿÿ÷ÿÿÿûÿÿÿûýÿ¿ÿÿÿÿÿýÛÿÿÿÿÿ¿ÿ¿ÿÿÿÿýûÿÿÿ¿»÷ûÿÿÿïïÿÿþÿýÿ¿÷ÿï÷_ÿßýÿÿÿÿÿÿßßÿÿÿÿÿß÷¿ßÿÿý¿ÿ¿¿ßÿÿÿßýÿÿþÿýÿÿÿoÿ¿ÿ¿ÿÿßþÿïÿÿÛõÿþÿ¿ÞßÝ÷ý¿ÿÿÿï¿ïíÿí¿ÿÿÿÿÿöÿÿ»~þÿÿÿýÿ÷¾ÿúýÿýþÿÿÿï¯þÿï¿ÿÞÿ÷Ûÿÿÿoߺýÿïýíÿíï¿Þßÿ¿þÿûþÿûõ÷ÿÿÿíÿÿÿÿoÿ×ëëþöÿÿÿÿÞÿÖÿûíÿ¿ÿ¿ÿÿÿÿûÿÿ¾ÿÿÝýýÿßß_ÿÿÿúÿ¿þýÿÿÿ{ÿ¯ßþ¿ÿµÿÿÿþÿïÿÿþÿÿþÿï·¿ï·ÿßõÿÿÿõÿÿõýûöÿÿÿþïïÿÝý÷þßÞÿÿßûþïûÿ¿½÷ÿÿÿÿÿ÷ÿýÿûÿÿºÿÿÿÿÿÿÿïÿÿ¿ÿþ¿·ÿÿûïÛ÷oÿßûÿßûÿ~ÿÿwïß¿ÿoÿÿÿß_ÿý÷ÿÿþÿÞ½¿ÿßÿÿû¿ßÿÿßýoïÿÿý¿ýÿÿÿßÿÿþÿßÛÿ]ÿÿÿwÝÿÿöûï¿ÿÿÿÿÿîÿ÷ÿ{¯¿ÿÿÿúûõßÿÿïwoýÿý÷ÿõÿÿkWÿßÿÿµ÷ýÿ}ÿûÛÿ~ÿÿÿÿý¾ÿÿ÷ýÿÿÿÿûßÿ¯íÿþßï¿ÿëÿÿ÷¿·ßÿïûÿþÿÿwÿû×ÿ×ÿÿþÿ_ÿ}÷»ÿÿÿÿïýÿÿÿßûþ÷ëßïÿÿÿßÿ¿ÿïþ÷ÿÿßíÿÿÿÿþïÿÿþûÿÿïÿÿ¿ÿêÿÿÿÿýÿ¿ÿû÷ßÿÿý¿ÿ÷ÿ½þýÿ÷û¯ýßÚ×ÿÿý÷ÿû_ÿûÿÿþ÷ÿÿÿÿÿÿÿ÷þûß·¿×ÿÿ½ÿïßÿÿÿþÿíÿÿÿÿßÿÿßÿÿ¿Þÿÿßÿûïÿëíûzÿï¯ÿÕïÿÿÿÿïÿÿÝ÷ÿß÷»ûßîÿ¿¿û¿ú÷ÿûÝÿ÷ÿÿ¾ßßÿþÝþÿ¿×¯ÿ÷îÿþÿ¿ýïÿþÿÿÿúûÝo¿ÿîÿÿ¿þÿï÷þ¿ÿ¿÷û¯ÿÿßÿÿÿþÿ¿÷ÿ¾ÿ~ûþû~ÿÿÿÿûûÿÿ¿ýÿþû÷¾÷õïûÿ÷ûÿ¿ýßþïÿÿÿë÷ÿö½ïßÿÿÿÿÿÿïÿÿ¿ýÿ¿þÿûÿ¿ÿöûïÿû÷ÿßþÿÿßÿÿÿ{ÿÿÿÿÿÝÿÿÿ·ßýßÿÿÿïÛþÿ_õ÷ÿÿûÿÿÿoÿÿÿïßþýûÿÿÿûÿþÿÿÿýïÿÿ¿ÿÿoÿ~ûÿÿÿýÿÿûÿÿÿþïÿïïÿßþÿÿþûÿî¾ÿïßuÿÿûÿ¿ÿwÿÿþÿ÷ÿÿÿûÿÿþþûÿ_þÿßÿßÿÿïÿwÿßÿ¿ÿÿÿýÿÿÛÿÿ÷ï÷÷ÿÿÿýÿ¿ÿïÿÿ¿¿ÿ}ûÿ{ýÿ÷wëÿßÿÿïûÿÿÿÿ¿ÿ¿¿ÿõ÷ïÿß÷õÿÿÿÿÿ¾ÿ^þÿ÷ßÞþïo~ïýÿßÿ½ýÿÿÿÿÿ÷¾ÿ¿ýµÿÿýßÿÿÿûÝÿýÿßÿÿßßþ÷¯ÿÿßÿ½oÝÿÿÿWÿýÿÿÿý×ý÷ßíÿÿ®½ûÿ~ÿïkÿíßÿ¯ÿûÿþÿ¿·ÿ¿Ûïÿ¿ßïÿ¿¯ÿïÿïÿÿîÿûÿÿÿ÷¯õÿwþ÷ïÞÿúßÿÿïÿÿÿÿßÿÿþÿï÷ûßë¯ÿÿõýÿëÿþÿÿÞÿþýÿûßÿþ÷ÿÿýÿ÷Û÷ûÿÿÿÿï¿ÿþÿûÿÿ­ÿ¿ú¾þÿÿõïßÿ½ÿÿjÿÿÿßÿÿûþ·ï¿wïúßýïÿÿÿßßÿÿßÕ÷ÿÿÿïÿÿÿÿÿýÿþÿ{¿ÿïÿûï~íþëÿýý¿ÿÿîýßÿÿÿ×_ûþ×ï½Ýÿÿÿþýÿþÿÿûÿþßßýý_ÿÿßÿÿþÿuÿÿÿýÿ¿¿÷ûÞ÷ÿÿÿÿ¿ÿÿûïþÿÿþý¿ïÿÿÿÿÿ÷ý÷þîýúëÿÿýÿÿþÿ÷ÿÿ÷þßÿ÷ÿ»¯ÿÿýýÿ·ÿïßoþý¿ß÷ÿÿ÷ë¯ýûÿúÿ¿ÿÿÿÿûÿÿöÿÿþÿ÷ÿýßÿ÷ßûí¿ÿ÷ÿïýýþýÿ÷û÷÷ÿ×ûïïÿÞîïßÿwÿ¿ÿÿú¿ÿÿÿÿ¿ÿÛÿÿÿÿÿÿÿûÿ¿ÿÿßûßÿû÷ÿßþÿ÷Öý×ßÿÿÿÿ¾þÿÿÿ¿ÿÿýÿÿÿîÿëÿîÿýÿþþ×~×ÿý·ÿÿÛÿÿúý÷ýÝÿÿ¿ÿÞßõöýëíþ÷ßýÿß¿ÿÿÿúû¿ÿ~ÿwUÿÿýûÿ÷ßÿÿ{ï¿ïÿÿÿÿÿÿïýïÿÿß­ûíýÿÿýÿÿïïÿ}ÿÿÿÿÿÿ×¾ÿ~ÿÿ~¿ÿÿÿÿ÷íÿÛïÿýû{ÿÿÿÿÿþ»÷ÿÿÛëýýßÿý÷ÿ÷ýÿîþÿÿýÝ¿ÿÿ¿~ß÷ÿÿþíûýÿþûÿÛÿÿßÿÿ_oßÿ¿ÿßÿwÿÿÞÿ÷ïÿÿûÿÿýÿõÿûîÿÿïÿÿûßúÿÿÿÿû¯í÷»ï×ÿÿûÿÿÿßûÿýõÿÞßý÷ýÿÿþïýÿÿßßûÿûÿßÿÿß÷ÿ÷÷ëÿÛÿÿí¯ÿßýÿïÿÿÿÿûõ¯÷ÿÿûï÷ÿ÷ÿw¯{íÿÿßÿÿ}}ÿýÿ÷÷ÿÿÿÿ×ýÿûÿÿ÷ÿÿýß¿ÿÿßÿÿûÿ½¯õúßßÿÿ÷ÿ×wÿÿïÿÿýÿÿëÿýÿ¿»ýÿÿïþõ¿ýÿÿÿÿßÿ÷kÿÿ÷ÿýÿÿÿÿýÿëëÿ÷þïÿÿÿÿû»ÿÿïÿþ»¿ÿï¾ÿÿýÿ÷÷ßÿÿû¯Ûïÿÿÿ÷ÿÿ¿÷ÿÝõÿ^ÿÿÿÝþÿ{ÿûÿ½ÿÿÿ¿ÿÿÿÿÿÿ¿ß_ïþÿÿÿÿöÿýû÷ýÿýÿÿW{þ¾ÿÿÿÿýÿÿÿÿÿÿöû¾ÿÿ¿ÿ¿þÿÿ¿ÿÿþÿ÷¿ï÷ö¿ÿßý¿ßÿÿÿÿÿÿïÿo·û»ÿÿÿÿÿÿÿÿÿÿöþëÿÿûõïî¯ÿÿÿ×û{ÿÿ¿ÿÿ{þÿþÿÿÿÿûßßîÿÿÿÿïÿÿß÷÷ßßÿßÿß½û¿ÿÿÿÿÿÿýïýÿßÿÿ÷ÿÿýïß¿ÿÿ÷ßÿ_ÿÿ÷ïÿÿûßíÿþÿýþíï÷}ÿûÿÿÿÿÿýÿÿõÿÿïÞÿßÿ_ýýÿÿÿýë¿}÷þûÿ{ÿÿýûýÿÖßÿýûÿÿÿ÷ÿÿïûýÿÿ¿ÿÚÿÿÿ÷uûßýÿ÷þ÷ÿÿÿwúÿÿûÿ{ÿßßoþÿß¿¾úþîÿoÿïûÿßßÿÿ÷÷}ýÿþ¯þÿÿÿÿÿÿ¿ÿûÿïþßÿ¿ÿß¾ÿÿïÿÿï·÷ýÿÿÿÿ_ÿ÷ÿÿÿ÷ý{þÿÿúÿ÷_½¿ÿÿÿÿÿ÷ÿûÿ}ÿÿÿ»Þÿÿßÿ÷¿û~û·ÿ÷ÿ÷{ÿÿýßßÿÿ÷íÿÿöû÷ÿþþÿÿßúûß¿·ßÿ÷þÿÿÿïwþÿûÿ¿÷ÿÿwßÿÿþ¿ÿþÛÿÿþý÷ßÿÿý^¿íÿ¶ý÷W½ÿÿÿýþÿÿ÷ÿoïý÷ïûÿÿÿÿÿÿÿ]ÿÿÿ¿}_ÿmÿÝÿÿ÷ÿ÷ÿÿÿÿwÿûÿ{ýÿÿîÿÿ¯ßßÿÿÿþûßþÿÿÿý¿ÿýþÿÿýýþßÿ½ûë»ÿÿÿÿÿûÞ¯ÿÿþÿ÷ÿÿÿû¾ÿÿýï÷ÿïûÿëûÿ¿ßÿÿÿÿý÷ÿúÿÿ÷ÿûþÿ¿¯ÿ¿ßöýöÿÿïÿÿÿïÿÿÿýÿþÿÿõ¯ÿ÷ßýþÿûÿýÿýïÿï÷ÿÿûïÿÿÿïÿý¿ÿ÷÷ÿÿýýÿë×ÿÿÿûýÿÿÿÿÝ÷þÿU÷×ûßÝÿÿÿýÿÿ¿ÿ[ÿÿÿþõþÿÿþß»¿ïïÿßÿßûÿûþþýï÷ÿÿ÷ÿÿÿûÿýÿÿÿ÷öÿÿÿÿýÿÿÿoýÿïÿÿkÿÿ÷ï·û{_ýßÿ÷ÿÿ¿¿ýÿÿÿï×ÿßïÿÿþÛÿÿÿ¾ßÿ­ÿ¿~ÿëÿîÿû_õÿÞ¿ÿÿÿ¾ÿýïÿßþÿÿÿÿöÿÿÿ÷ÿ[ÿßïÿÿÿþ÷ûÿ__ÿ÷ûÿÿïÿ·ïÿ·_ÿ÷÷ÿÿÿ÷ÿûïý¯í·÷÷ý¿ÿ¿ûwÿÿûþûþÿû¿ÿïßþïíûÿ÷¿ÿÿÿÿÿ¿ÿÿÿ¿ÿÿzÿÿÿÿïÿÿÿÿ¯÷îÿoßÿÿ÷ÿ÷×ÿÿý¾ûûûÿÿþ¿ÿÿ}ÿÿÿÿ÷ÿÿý¿ÿû_ýÿÛïþþÿÿûÿýÿÿþûÿwßÿïÿÿÿýïÿ}þÿ×û÷íÿ÷ÿÿ÷ïÿï÷ÿïû~÷û÷ÿ÷ÿÿÿÿÿÿ·ÿÿÿßÿ¿÷ÿîýÿ÷ïÿúÿ÷wÿÿÿÿïþÿúÿßÿÿÿ¿ßÿýÿßÿ¾ÿûÿoÿ÷ÿµÿÿûÿÿÿïÛþ¿ÿÿÿÿû÷Ûÿïß}{û¿ÿÿÿî¿ÿÿÿÿÿÝý_ÿÿûþÿÿ}ÿ÷ÿ¿÷ÿûïßÿÿÿÿþÿö÷Ýÿûÿû¿õ_ÿÿÿïÿï÷ÿÿÿïýþ¿ýÿÿÿÿ¯ÿýÿ÷zîïÿÿo¿ö¿ýßö¿Õÿÿÿßÿûûÿÿ×ÿÿý¿û¿ÿïÿÿõÿÝûû÷ßÿÿÿÿÿÿ÷¯ÿÿßÿïýúß÷ÿ¿½~ß÷ýÿþÿÿÿÿÿ¿û÷þï¿ïÿÿ~ßßþýÿÿýú×ßÿûo÷ÿÿ}ïûÿýÿÿßÿÿýo¿ÿÿûÿþÿ¿ÿïÿ¿ÿïÿßÿÿÿþÿÛ÷»ýûÿïûÿÿÿwû_ÿÿþ»ÿïÿÿõÞÿÿ÷ÿýÿÿÿÿûûo÷û»ÿÿ¿ÿúÿÿ_öß}¿ßÿïÿß÷ÿÿÿþþ·õÿÿÿïÿÿÿýÿþßÿïûÿ÷ÿ÷ÿ_ÿÿïÿÿýï{¿ÿÿÿÿßßßïíÿýÿoÿýÿÿß÷ö÷ÿÿþ»¿ý~ïÿÿ_ûýþÿïïïÿÿÿ÷¿ÿÿÿÝú÷ßÿÿÿÿ×ÿÛïÞÿþþÿï¿ÿÿûÛÿïïÿÿïÿÿÞßþ®ÿÿÿÿÿÿßÿßzÛÿÿÿõþÿ÷÷ÿÿÿÿ¿_ÿÿÿÿßÿÿ{÷ûÿþÿ»Û÷ïÿÿÿ¿þûw÷ÿ¿ÿÿÿ×ßÿÿûþïïÿýÿÿöÿÿ[¿ýýßýÿÿïÿïÿÿÿýúÛÿîÿûÿÿÿïÿÿ{ß¿ÿÿÿÿß÷ÿÿ}÷ßÿûÿÿÿÿÿÿþýßÿÿ¿ûýwÿÿ÷ÿïÝÿßïÿÿÿÿ÷ÿ¿ÿÿÕïïþÿïÿÿÿïÿêÿö÷ÿÿÿÿÞ½ÿÿÿÿÿÿ¯ÿÿÿÿÿÿÿÿýÿ}ïÿÿï_ÿÿÿ÷ÿÿÿÿÿþ¿¾ÿûß¿oÿÿ·ÿÿë¾ÿïýÿÿ÷×ÿÿo¿ÿïÿÿÿÿÿoÿßß÷ÿÿÿ¾ÿÿ÷ÿÿïÿÿÿþ÷ÿÿÿ÷ûÿÿÿïïþÿ¿ßÿïÿÿþ÷¿ÿÿ÷ÿïýÿ­þ¾ïÿÿÿÿ÷ÿ¿ÿÿ¿ÿïÿzÿûï÷ÿïïÿÿÿÿ÷¿ßþ»úúÿû÷ß÷ý·ÿõ_ëÿßoîþÿýïþïïÿúÿÿßÿÿÿþ÷Û»ûÿÿ¯ÿÿ÷ÿßÿÿÿîöÿïÿ¿ÿÿ·ÿ¿ÿïÿßÿÝßÿþ½ïÿÿÿ¿ÿwýÿÿûßõ×ÿÿ÷þÿ}ÿÿß¿ÿß÷ÿÿÿÿ«ÿÿÿÿÿþÿÝÿÿÿÿÿÝÿûvÿþ¿¿ÿßÿ¿ÿÿÞþ÷úÿÿÿ{ÿÿýÿïÿÿÿûúï¾÷þíÿÿÿÿÿ÷ÿÿÿýíûÿ¯úÿÿïýßýÿÚÿïÿßþÿï÷ý~ÿµï÷ýÿ÷ÿßû¿ößÿÿÿÿÿÿ~¿ÿ~ÿwßïß¿ýûÿ½ßÿýíwÿÿ÷ÿÿïþÿû¾ÿ¿ÿÿÿ¿ß÷Ûûÿßýï·ÿÿÿ¿ÿ÷þÿÿýÿ¿º÷ßÿÿ½ÿþö÷ÿÿÿÿ¿ÿûûïûß^ÿÿÛ¿ÿÿ¿ÿßýÿÿÿÿÿÿÿÿÿÿÿ¯ý¿ÿÿÿßÿßþþÿÿßÿß¿þßÿÿÿÿ÷ÿÿÿöÿÿ÷ßÝÿ÷ÿÿÿÿÿþßöýÿý¿ÿÿï÷×ÿoýÿÿÿ{ÿþÿ·ûÿÿÿïÿ½ÿïÿÿÿßÿÿÿþ÷þ÷÷ïÿ_÷ÿÿßëÿëþÿÿÿÿÿÿ¾ïÿïÿÿÿ¿¯ÿ÷ûÿÿÿÿÿÿw¿¿ÿ·ÿÿ×ß¿ÿ¯ÿ×ÿÿîÿ_ÿÿÿ÷ï×ïÿï÷ÿ÷ÿÿ_ÿÿ÷ÿÿû»û÷ÿÿÿ_ÿþþÿÞýÿûÿýöÿïÿßï¯ïÿÿÿþ÷ûý·ÿßûïÝýÿÿû]û¿þûÿÿÿ_ÿ¿ýûÿÿ÷¿ïþ¿ÿÿÿïÿÿö¿ÿÿÿ~ÿ~ÿÿí÷ÿÿÿýï÷oÿÿïÿïßíÿÿÿÿúÿÿýß_ý÷ÿÿÿþÿÿÿÿÿÿÿ÷ßïßÿ¿îßÝßÿ~ÿ÷ïöÿÿïõÞ¿ÿÿÿßïÿÿÿý¿ßý÷ÿ½û¿wÿ÷÷ÿþ÷ûÿûïÛ»ÿÿÿ¾ÿÿÿ÷þÿÿÿÿ}ÿÿÿÿ÷_wÿºþ·ÿ÷÷ßößÕÿÿûû¿ÿÿúÞÿÿÿÿo¿ÿïÿýÿÿïÿûÿþ¿¾ß÷ÿÛݽÿÛÿÿwÿÿÿýÿ÷ÿ¿ßûïÿ¿}ÿÿÿ÷ßûïßýÿûý_þÿÿÿïïÿþÿÿ·û_uÿ^ÿÿÿÞÿ¿»¿¿ÿûþýÿÿûÿÿÿÿþÿß÷ÿÿÛûÿ·ÿûþÿý}ÿ÷ÿÿßÿÿ»½Wÿ¿¿ÿ¿ûý÷ÿ}ß}o{þûÿÿÿþëÿûûo_ÿÿïû÷ÿÿvïÿûÿþïßÿïßúöíßýÿëÿ÷ÿÿÿ~÷ßÿûþßÿ÷ÿÿ}ýûÿÿÿÿ÷ÿÿßß¿ÿ·ú¿ÿ÷ÿþ÷ßÿÿúÿ÷»zýÿÿ«{ÿÿÿ¿ÿÿýÿÿÿûþÿÿïýî÷ÿÿßÿýûÿï~ïý»ïÿÿï¿ý¾ÿÿÿÿÿßÿúÿÿÿÿÿÿû¯ûÿýß¿¿ýÿßÿþÿõÿÝýÿïÿÿý¿ÿÿ÷ÿûÿ÷ÿ÷ÿÞïþÿÿÿÿïÿýûßÿ¿ûÿûÿÿ÷ýÿûÿ÷ÿÿýÿþêþß÷ÿÿÿîû_ÿÿÿÿ·ÿïÿÿÿÿï½}ÿßÿÿýë¿÷µïßÿÿÿïþíýýÿýÿÿï}îßÿ÷ÿÿÿßÿß­þÿþÿÿï·Þþÿ¿ÿïÿÿÿÿ_ûï×ÿöÿû÷ÿÿÿÿýÿÿ÷¿ûï»ÿ÷¿oݵûÿÿý·µÿÿ÷ÿÿÿÿÿýïûûÿþûÿÿÿÿÿýÿÿ¯îÿUýþÿ½÷ÿÿÿÿÿ÷ÿÿÿÝßßÿÿûïÿÿýÿ¿ÿ­ÿÿÿ¿ÿÿÿïÿ¿ÿß_ßÿÿþîÿþ¿ïÿûÿþýßþïõïþÿïïÿßÿÿÿÿÿßÿÿÿûû}ïÿÿÿïöÿì \ No newline at end of file diff --git a/on_chars/100k_dwupunkt_p_09_coded_table b/on_chars/100k_dwupunkt_p_09_coded_table new file mode 100644 index 0000000..461e37b Binary files /dev/null and b/on_chars/100k_dwupunkt_p_09_coded_table differ diff --git a/on_chars/100k_gemotric_coded b/on_chars/100k_gemotric_coded new file mode 100644 index 0000000..81c5e03 Binary files /dev/null and b/on_chars/100k_gemotric_coded differ diff --git a/on_chars/100k_gemotric_coded_table b/on_chars/100k_gemotric_coded_table new file mode 100644 index 0000000..40ecc1c Binary files /dev/null and b/on_chars/100k_gemotric_coded_table differ diff --git a/on_chars/100k_jednostajny_coded b/on_chars/100k_jednostajny_coded new file mode 100644 index 0000000..5ba8eaa Binary files /dev/null and b/on_chars/100k_jednostajny_coded differ diff --git a/on_chars/100k_jednostajny_coded_table b/on_chars/100k_jednostajny_coded_table new file mode 100644 index 0000000..3cc453a Binary files /dev/null and b/on_chars/100k_jednostajny_coded_table differ diff --git a/on_words/100k_corpus_coded b/on_words/100k_corpus_coded new file mode 100644 index 0000000..de0c8ef Binary files /dev/null and b/on_words/100k_corpus_coded differ diff --git a/on_words/100k_corpus_coded_table b/on_words/100k_corpus_coded_table new file mode 100644 index 0000000..9744451 Binary files /dev/null and b/on_words/100k_corpus_coded_table differ diff --git a/on_words/100k_dwupunkt_p_05_coded b/on_words/100k_dwupunkt_p_05_coded new file mode 100644 index 0000000..5416677 --- /dev/null +++ b/on_words/100k_dwupunkt_p_05_coded @@ -0,0 +1 @@ +€ \ No newline at end of file diff --git a/on_words/100k_dwupunkt_p_05_coded_table b/on_words/100k_dwupunkt_p_05_coded_table new file mode 100644 index 0000000..dcc332d Binary files /dev/null and b/on_words/100k_dwupunkt_p_05_coded_table differ diff --git a/on_words/100k_dwupunkt_p_09_coded b/on_words/100k_dwupunkt_p_09_coded new file mode 100644 index 0000000..5416677 --- /dev/null +++ b/on_words/100k_dwupunkt_p_09_coded @@ -0,0 +1 @@ +€ \ No newline at end of file diff --git a/on_words/100k_dwupunkt_p_09_coded_table b/on_words/100k_dwupunkt_p_09_coded_table new file mode 100644 index 0000000..75abbf2 Binary files /dev/null and b/on_words/100k_dwupunkt_p_09_coded_table differ diff --git a/on_words/100k_gemotric_coded b/on_words/100k_gemotric_coded new file mode 100644 index 0000000..5416677 --- /dev/null +++ b/on_words/100k_gemotric_coded @@ -0,0 +1 @@ +€ \ No newline at end of file diff --git a/on_words/100k_gemotric_coded_table b/on_words/100k_gemotric_coded_table new file mode 100644 index 0000000..0cae325 Binary files /dev/null and b/on_words/100k_gemotric_coded_table differ diff --git a/on_words/100k_jednostajny_coded b/on_words/100k_jednostajny_coded new file mode 100644 index 0000000..a789a89 Binary files /dev/null and b/on_words/100k_jednostajny_coded differ diff --git a/on_words/100k_jednostajny_coded_table b/on_words/100k_jednostajny_coded_table new file mode 100644 index 0000000..11be5ab Binary files /dev/null and b/on_words/100k_jednostajny_coded_table differ diff --git a/tabele_wnioski.ipynb b/tabele_wnioski.ipynb new file mode 100644 index 0000000..b66dff4 --- /dev/null +++ b/tabele_wnioski.ipynb @@ -0,0 +1,318 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Logo 1](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech1.jpg)\n", + "
\n", + "

Modelowanie Języka

\n", + "

3. Entropia [ćwiczenia]

\n", + "

Jakub Pokrywka (2022)

\n", + "
\n", + "\n", + "![Logo 2](https://git.wmi.amu.edu.pl/AITech/Szablon/raw/branch/master/Logotyp_AITech2.jpg)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Zadanie 1 ( 15 punktów)\n", + "\n", + "Weź teksty:\n", + "- z poprzednich zajęć (lub dowolny inny) w języku naturalnym i obetnij do długości 100_000 znaków\n", + "- wygenerowany losowo zgodnie z rozkładem jednostajnym dyskretnym z klasy [a-zA-Z0-9 ] o długości 100_000 znaków\n", + "- wygenerowany losowo zgodnie z rozkładem geometrycznym (wybierz p między 0.2 a 0.8) z klasy [a-zA-Z0-9 ] o długości 100_000 znaków\n", + "- wygenerowany losowo zgodnie z rozkładem jednostajnym dwupunktowym p=0.5 z klasy [01] o długości 100_000 znaków\n", + "- wygenerowany losowo zgodnie z rozkładem jednostajnym dwupunktowym p=0.9 z klasy [01] o długości 100_000 znaków\n", + "\n", + "Następnie dla każdego z tekstów trakując je po znakach:\n", + "- skompresuj plik za pomocą dowolnego progrmu (zip, tar lub inny)\n", + "- policz entropię\n", + "- wytrenuj kodek huffmana i zakoduj cały tekst\n", + "- zdekoduj pierwsze 3 znaki (jako zera i jedynki) wypisz je (z oddzieleniem na znaki)\n", + "- zakodowany tekst zapisz do pliku binarnego, zapisz również tablicę kodową\n", + "- porównaj wielkość pliku tekstowego, skompresowanego pliku tekstowego (zip, ...) oraz pliku skompresowanego hofmmanem (wraz z kodekiem)\n", + "\n", + "Uzupełnij poniższe tabelki oraz wnioski (conajmniej 5 zdań).\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### START ZADANIA" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Entropia\n", + " \n", + "| | Entropia |\n", + "| ----------- | ----------- |\n", + "| tekst w jęz. naturalnym | 4.490477053022786 |\n", + "| losowy tekst (jednostajny) | 5.976797776033915 |\n", + "| losowy tekst (geometryczny)| 2.9384661505927614 |\n", + "| losowy tekst (dwupunktowy 0.5) | 0.9999992786523595 |\n", + "| losowy tekst (dwupunktowy 0.9) | 0.4672814931728006 |\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Wielkości w bitach:\n", + " \n", + "| | Plik nieskompresowany | Plik skompresowany (zip, tar,.. ) | Plik skompresowany + tablica kodowa) |\n", + "| ----------- | ----------- |-----------|----------- |\n", + "| tekst w jęz. naturalnym | 100766 *8 | 36084 *8 | (56413 + 1131) *8 |\n", + "| losowy tekst (jednostajny) | 100000 *8 | 76560 *8 | (74976 + 790) *8 |\n", + "| losowy tekst (geometryczny)| 100000 *8 | 38744 *8 | (36964 + 491) *8 |\n", + "| losowy tekst (dwupunktowy 0.5)| 100000 *8 | 14292 *8 | (18740 + 180) *8 |\n", + "| losowy tekst (dwupunktowy 0.9)| 100000 *8 | 7764 *8 | (13750 + 180) *8 |" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Wnioski:\n", + "\n", + "1. W tekście w języku naturalnym wystąpiły znaki o ponad przeciętnej długosci bitowej\n", + "2. W tekście w języku naturalnym skompresowanie narzędziem `xz` bardziej się opłaciło \n", + "3. Korpusy z mniejszą entropią jest łatwiej kompresować.\n", + "4. Losowy tekst (jednostajny) ma większą entropię niż tekst w języku naturalnym\n", + "5. Czym większy alfabet tym większa tablica kodowa" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### KONIEC ZADANIA" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Zadanie 2 (10 punktów)\n", + "\n", + "Powtórz kroki z zadania 1, tylko potraktuje wiadomości jako słowa (oddzielone spacją). Jeżeli występują więcej niż jedna spacja równocześnie- usuń je.\n", + " \n", + "Do wniosków dopisz koniecznie porównanie między kodowaniem hoffmana znaków i słów.\n", + "\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### START ZADANIA" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Entropia\n", + " \n", + "| | Entropia |\n", + "| ----------- | ----------- |\n", + "| tekst w jęz. naturalnym | 10.188508379298268 |\n", + "| losowy tekst (dyskretny) | 10.629740889027198 |\n", + "| losowy tekst (geometryczny)| 0 |\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Wielkości w bitach:\n", + " \n", + "| | Plik nieskompresowany | Plik skompresowany (zip, tar,.. ) | Plik skompresowany + tablica kodowa) |\n", + "| ----------- | ----------- |-----------|----------- |\n", + "| tekst w jęz. naturalnym | 100766 *8 | 36084 *8 | (20495 + 91497) *8 |\n", + "| losowy tekst (jednostajny) | 100000 *8 | 76560 *8 | (2130 + 114214) *8 |\n", + "| losowy tekst (geometryczny)| 100000 *8 | 38744 *8 | (1 + 100164) *8 |\n", + "| losowy tekst (dwupunktowy 0.5)| 100000 *8 | 14292 *8 | (1 + 100164) *8 |\n", + "| losowy tekst (dwupunktowy 0.9)| 100000 *8 | 7764 *8 | (1 + 100164) *8 |" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Wnioski:\n", + "\n", + "1. korpusy bez spacji mają tylko jeden bajt\n", + "2. Korpusy bez spacji mają większą tablice kodową niż nieskompresowany plik\n", + "3. Kompresowanie huffmanem na słowach dla plików z jednym wyrazem nie ma sesnu\n", + "4. Kompresowanie na wyrazach wydaję się być gorsze niż na znakach z powodu ogromnej tablicy kodowej\n", + "5. W jęzuku naturalbym częściej występują te same wyrazy niż w losowym tekście (jednostajnym)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### KONIEC ZADANIA" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Zadanie 3 (20 punktów)\n", + "\n", + "stwórz ręcznie drzewo Huffmana (zrób rysunki na kartce i załącz je jako obrazek) oraz zakoduj poniższy tekst " + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "'kkehsoaefokjsnodjoj'" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "random.seed(444463) # <- Mój numer indeksu\n", + "\n", + "tekst = list('abcdefghijklmnoprst')\n", + "\n", + "random.shuffle(tekst)\n", + "\n", + "tekst = tekst[: 5 + random.randint(1,5)]\n", + "\n", + "tekst = [a*random.randint(1,4) for a in tekst]\n", + "\n", + "tekst = [item for sublist in tekst for item in sublist]\n", + "\n", + "''.join(tekst)\n", + "\n", + "random.shuffle(tekst)\n", + "\n", + "tekst = ''.join(tekst)\n", + "tekst" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "19" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(list('abcdefghijklmnoprst'))" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Counter({'k': 3,\n", + " 'e': 2,\n", + " 'h': 1,\n", + " 's': 2,\n", + " 'o': 4,\n", + " 'a': 1,\n", + " 'f': 1,\n", + " 'j': 3,\n", + " 'n': 1,\n", + " 'd': 1})" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Counter('kkehsoaefokjsnodjoj')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Start zadania" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Koniec zadania" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## WYKONANIE ZADAŃ\n", + "Zgodnie z instrukcją 01_Kodowanie_tekstu.ipynb" + ] + } + ], + "metadata": { + "author": "Jakub Pokrywka", + "email": "kubapok@wmi.amu.edu.pl", + "kernelspec": { + "display_name": "Python 3.8.12 64-bit", + "language": "python", + "name": "python3" + }, + "lang": "pl", + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + }, + "subtitle": "0.Informacje na temat przedmiotu[ćwiczenia]", + "title": "Ekstrakcja informacji", + "vscode": { + "interpreter": { + "hash": "31f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6" + } + }, + "year": "2021" + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/zad.ipynb b/zad.ipynb new file mode 100644 index 0000000..e8fa81d --- /dev/null +++ b/zad.ipynb @@ -0,0 +1,254 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 109, + "metadata": {}, + "outputs": [], + "source": [ + "from collections import Counter\n", + "from math import log\n", + "import random\n", + "from dahuffman import HuffmanCodec" + ] + }, + { + "cell_type": "code", + "execution_count": 110, + "metadata": {}, + "outputs": [], + "source": [ + "from collections import Counter\n", + "from math import log\n", + "\n", + "def unigram_entropy(t):\n", + " counter = Counter(t)\n", + "\n", + " total = sum(counter.values())\n", + " return -sum((p := count / total) * log(p, 2) for count in counter.values())\n" + ] + }, + { + "cell_type": "code", + "execution_count": 111, + "metadata": {}, + "outputs": [], + "source": [ + "def save_codec_to_files(t, path):\n", + " codec = HuffmanCodec.from_data(t)\n", + " encoded = codec.encode(t)\n", + " encoded_text = \"{:08b}\".format(int(encoded.hex(),16))\n", + " # print(encoded_text)\n", + " # codec.print_code_table()\n", + " # print(encoded_text)\n", + " with open(path, 'wb') as file:\n", + " file.write(encoded)\n", + " codec.save(path + '_table')\n", + "# save_codec_to_files(\"Ala ma kota\", 'x')" + ] + }, + { + "cell_type": "code", + "execution_count": 112, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "unigram_entropy: 4.490477053022786\n", + "3 pierwsze znaki 10110000111001101111011\n", + "3 pierwsze znaki 111111000001011110000110111110111101101\n", + "unigram_entropy words: 10.188508379298268\n" + ] + } + ], + "source": [ + "text = ''\n", + "with open('100k_corpus', 'r') as file:\n", + " text = file.read()\n", + "\n", + "print('unigram_entropy: ', unigram_entropy(text))\n", + "codec = HuffmanCodec.from_data(text)\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text[:3]).hex(),16)))\n", + "\n", + "codec = HuffmanCodec.from_data(text.split())\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text.split()[:3]).hex(),16)))\n", + "print('unigram_entropy words: ', unigram_entropy(text.split()))\n", + "\n", + "save_codec_to_files(text, 'on_chars/100k_corpus_coded')\n", + "save_codec_to_files(text.split(), 'on_words/100k_corpus_coded')\n" + ] + }, + { + "cell_type": "code", + "execution_count": 113, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "unigram_entropy: 5.976822702978705\n", + "3 pierwsze znaki 101100101111000110000010\n", + "3 pierwsze znaki 11110001000010011110110110010000\n", + "unigram_entropy words: 10.629740889027198\n" + ] + } + ], + "source": [ + "text = ''\n", + "with open('100k_jednostajny', 'r') as file:\n", + " text = file.read()\n", + "\n", + "print('unigram_entropy: ', unigram_entropy(text))\n", + "codec = HuffmanCodec.from_data(text)\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text[:3]).hex(),16)))\n", + "\n", + "codec = HuffmanCodec.from_data(text.split())\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text.split()[:3]).hex(),16)))\n", + "print('unigram_entropy words: ', unigram_entropy(text.split()))\n", + "\n", + "save_codec_to_files(text, 'on_chars/100k_jednostajny_coded')\n", + "save_codec_to_files(text.split(), 'on_words/100k_jednostajny_coded')" + ] + }, + { + "cell_type": "code", + "execution_count": 115, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "unigram_entropy: 2.932690237976291\n", + "3 pierwsze znaki 10101111\n", + "3 pierwsze znaki 10000000\n", + "unigram_entropy words: -0.0\n" + ] + }, + { + "data": { + "text/plain": [ + "['dcbbbbdcgdbbbbddgcbcbkdbjfcdhkbdcbddccbhcccdgbccbdbejddcbccfgcdeccbbfdjbegbbbcdecbebegdcdbbdebbnbdcbbdbkbkbbcjdgcfbbcdcccfbeddfbdbejbdfeccbbbcecdbcccbbgfccbebcebjbfbbbdecbbbbcmbfekbccbbbdbjbhhigdeeefgddbcbbcebgbcdbbekdtbcfbjccgbbbvbmdeidhbbbbbbbbbgcpcekjbcbbhcbclmdbejfbbdcfchcbbgecfjebbegbbbeeffdbbbedcfccbbeedgbcbbdgebcbecfbbbdddbbebhcmeccbcbhhebcdcbdbedegchdcdeeobbfbhcebebfcfbbdccbjbedcfhbgbeeedbbcbcfcebdbcccbbiiceceeblddedqbbbgbhdhbbcbocbbdbbedddebbecdgdbcgfeebbbffbecddbgjbccfcigccbdccccbbcddjeffcdgebfdbddbcbdhcdbjcbbccbcbcdbfcbcfbcfcbdcbdbbbbfdbgcelfcbedffiecegcccecdcbhccfifbccffdbbvcogddbdlffdgecbbecefebiifbgcchbbcchffggccgbbbgcmbbdcfgddbefdccdedbbcdcebemcjdqcbcfbcbdcbcddfeecdcbgcbmbbcbcfdchbdecedjblgbhdcidbhchicdnfbcdbjecdeddbbbcbbfeegdebcbmbfghbbhccbjebebcbbfbekbhbdffebebhbfededbgfckbbkccbebgcgbbecccbdcbbdlbbcgcgcdccbcbdofeedbbdjelcbffcefcbekdjbcccedbgbdcdhbebbesdbeddbcecfcjmgcbbdbcedbddbdkddgfebcbbbccdbidbbdbkbbojcebcffddcebedcfdbbejddhgbdbccebkbbehgbbfeccdebcefhbbfigbkcffhdkbbccdbcdbdcjecfecibgcdgcdccfccbbfeccbbbeeedccdhcfbecbcbdbdgdkbbbdbdfhccfdebclclcbdbdbbbcccbbbciecceecbdejcgbihibfbfbgcbfcdbcdbbfbbcghbhjcbddcdccdcccebbchbbccdefwbbedbdccddbbdbdbhcbbbfcebgjbebccbccbdcebcbbbccbbfibdghlecbchbdcbefddcncccebbdidbgdcgcbcdbccdcbbfbchfdbbccbbfbkfebcfbfnbbcgdeddbbcccdbcedcgdbccbhccbbbfcgbefghddbfdcbbceebcbbgbbbcbfgecbbbcfdececbgeegbbdgeccjcbcbdecbbcobdbbfceegbdbccbecbbcdbcfbiccbbccceddcegrdbfibbchbbbebcdbdecdlcfedbgbebiebbdbbbbbfcdgbbcebcbcbgccbndecbbdbbgcbbbgebbbccdbgdedlccgefbdjcdebeffbcehdfdbbhbdcbdccdbefjcecccibbdbbdcebbdcecfbghfdbbcbbfdcgchbgcbecjbdbibfdbbcdbfccbjgbmcbddifbbchbfibbeeffbcceihjochccbfchbgcddbdebcfdmbdbdgcjbddhddcbdbbdcbcdlodcbbfdbjebibdbdefbbdcgcgdfgdclbcbkbgbbebcbcjcgdfdbebbebbddebdbccddgcbbedekbfdcblccbbcdbbdcndbcebbocecfdhbikddhcgciggbhecdecbbgdfdfbccbkdifdcbbbdcdheceblihefdbddgbbgfbdbcdbfefhfhhebbbcgddchbbdgbcbicbdgedhdbbiecfdbhbcdkbgcdkdbccbdbbfbicebbbgebpibecbkebbcfdoecdhbbcbddcebghdbfbecbbdjdbbtfbbdjiebbbbbbbcbccbdcebddcdijcbdegcbkdfdtbbgcdcfddfdbecbehcbebgbedibdceddbbkbdcckbcdcebfeecdgehbgcbedgddeecdebbceccbcdcdbfchcdfefcfbebbccfdbebhcddbbhcgdbbcuddbjsbdlgbbbcbcgbcccecbbfchidcdecdfdjhbbdfbcedcebbbfcicdcggjbdcbfngbbcbcbebbbbbcbhedcbjgccddebbbmbbhddcofcdceecefddfhecebbdcbfcbbbcbcbcbfbdgdcebcbbefbdbcbbighbejbedbbccbbecgcgdjcbbbgbcrcebdccbdbgccdbdebeceecdbbcegcecjebbffdcccjccdddebbfkddbcgbbfcgbddhfcbieecibbdffcccjcdcbcehhddcbfbddfccbchbedddpbbecbbdebjcbfbgbefbfcbeddbddkbbbdcfefdgfcfhebcbbjfcibchbbbdibfdbbccecdbcbgdihbbbefcbdbcedcbbbecbbbibcifbdbbbbbdcccbkggfbfgibddecbeebccbdbbbhbecdcbffgdbbjbcedccejimcdkfgcfdbedcbecccbbecbndgeefedbccbbdfccdcbchcibjbjdccbfcbbcefgehebebcibdcegbdgbicbbecbebeebcebgbfeebfbekdbbbiecddebfdcefkefcbdcbhbchdbdebbgbcbgfcfefecdbbbfbbdcbbbgecgfcbbgddbcbecbbbbgbcdccbeedjdllbdcbdldbhcbfecgbcdbelbcbcdcdcgbhdcbbibdbcbcdgbcclcdbcdbebfdbdebccdccocddbdfdbecececccbdecgbbdfdchbbhdbcgcedgbbdcbebbbmbccgbchfkeebbedfbbjdbccigfbcbefcicgbcccedbbgdbcheccbbeddcbccbcbcfegfddbccbbblccccccbfgegcmbdbhcbhcdcccdfbcbcbcbbjcbcbccdbbdecfbdibbbbbfglceedgdgcgrbhgfbgcbfegcfuikggddggcdcdccefbcbjcgfcfcdbccccbebbbdcbbehbbcedcbfhbbgdcdcecbgbbeebbfdfbbcccbbdgccbdeccfdbbiiebbcbbdhcefbcfcdddcefddebbcebbfjebbbbcfcdhebbcgbcicdefbcrdcbccdcibgbecdcbcdcgfcbbbjgkjdfbecbbbgcccbfokddebdcejkbfhghdgccbdgbldcfbcgbfcboebbbmcdebhbpbceeebceeedbegdidecbefebebcnfdeckbgbdbbcbeeebfbelgcffcgekfdbcbecbghcbbbccpgbddibrfbicdbidbdbcbcedcbhbbdcbcefbebgdbdcddecdgedgbjcccgdcfgbbgcdbfhcddbfieldcibbbdcchbeceebidbebhbbcibbfebbgbedbbffbeehcbddbdedbbcebdbcbecbdebbcbbbhdcedebcbbfbhbcndfjfbcbjicbmbbeccbcdbdececdcbgbbdbccfhfdbjcbbcebecbddcelcbhbfccdhccdbhcedbdccdchcfffdddcecbnjccfbncfbffbbbgbbfdbdgfccbbebcfbocgbbldeebcceggdcbedbceiccdecerdbbbdbehbcfdebddbffcccbddddcbecbbeecbbdedbbebdbbebbcbbcfcgbebbdbddbjcdgebchcbckdfcdbbegddbbcbgcbbccgcbbhbbbbchbdlbbffecdbbdbecefkbccbbjgbbcdcbbbjegeebccbcbmcbebcbbgbccedcgecbebcbjbbbhbdbccncebhfdbgjebcbbgddecceeefofbecebmcbidbbbeedhbcfeibfdbbbchbfikbcbkejffbcfecbgcjjenkbibccdcebdcdhbbbddbcncfihccgcgbbddbdkfgdbbbmgdgddfnebdcbdbfebblbhfbbegfcebbcdiedibdfgbcdgedbbgdbecbbbbcclebicbfcfbhbgicbdbddebdgejcbcbhbbjbbbcibceiedcgbbbesbndgbbdddbbnbcccfifccjgmhebbdbdbdhgddbbbebfbdccmjccccehfecbgdcbbbhbcbcbdedobdcdbdeccncdfbhdifdbbfhbbbbbdcbefeddbddhechhhbbdbbggcbhenllcbbccgebcbmebcdcgcjcjibgbdhbbdbecdgdbbcccdkccdbcheddbhcfbccdcbceccbbidhkhgfccgbekgdbdfcfbbbbccbfbbbgcbddcbeeddfdcbcdbohbfccchdbccbcfbcbcfcbhgjbdfcbbbbghebdebdccbcckfdcbbclelgbcbfbbbdbggbdbcbdddchfcbbhccbbeebccbdfbbgehclcbdccccbbcbhbibfddcceebdjdbbcbdbdcddfjhdgddcfibcccbibbdfecfgbgeidbcbbbcbeebcldegddegefjmdcfbdfcfccebcgebgbbbeebgdbfbddmbbbddbddbfycbbdbbbbcecejlcfjecbcbceeldddcmbeeeccjbfbcbccejdbeldcddgbcebgdeehbddfbfbdbggdjceefchbbbecccehbcbcdjccbfbdscceccbbbbbfdcbgdidfbcdbcbdbbbdbblbbcfbcdbdgcjbeibbebdcbbcbdgfecfcfceccheefhefcggbnbcbdcjhfbbbiffdccdbefbcbcfbcbecfcejcbdceiccbcbbbibcgcbdcbcccjccgeddgdpjbbddbbmcbbbffbcechibobdeblegbbdbgdgcdfcccbccbgecbcegbcfcjccggbcmbfcdbmhccbcbbbcbdbcbehhebbbchccbbbcbdbebfdcebifcbhgbdgfeihgfbfbdchcebcdjbecddkdbccedbdblccbhfecdbiccdgcbfidccchccbclhbbgccfbccchchbndfegbbbbebhededbbdcjgdhfcebbehcfgfhdfbdbecdcecddgdbfbbbbhedcdcbedfbdeibbfbcbcbobbdochbbebfcgfiebefjccccbbcgbebbibbdffcfgdkbdblefdihfkjcikccbblbbfdegkhicddcdfhcceebdmccbccbhcbcdccgdcheebdcbdgcegbbcbekbeeiccbecccciefbbcbcdedcjcbevbcdcbjclbechgcebgcddeofbeebbbbbbbcdefbchcbbebcfdgecflecnedmcfcncbbbccddfcgccbbjpbdccbbchjbhblbehebbbgcdffcebbdbbcdbecdcegbghdfgdbedobbebhbbcbkbbcdbccefccgfdbccegbbcedbebbfbccqebibebbdbbiiccccbjgeblbdffcbmmbcdjbghbdcbbidddhbddcdecfcceeccfcbcbedpbccbjfbdbbcibcjmbeebbbbcfcpcbdbbccbbegbeccbcbcgcdbcdcbcgbbbbdciccedercbpbbbbjgcgbdddcpmcbdbbbdddgddbcdehbibebeslebbebbebecbbbcidbbdebkmbccecehbddfkbnfhbdeflkhddfjbccddbdbchbdeffhdechgfcbcbccgbbbidfcbcedegbbedbcbcfbfcbgjcbfbibcclbbbebcecbcbcfdbbcffcibbbbbbdbbfdcigbifbbbcecbbdgdcbeefcdeechgebdkecdgbkjgmhbibbcfdgeegpbbgcbfenbmcebbeddcccbbbeccbeffbcbfcffcbbbbbieccfdbdfbcecbccddhdjbblbegdbbbcbsddcccbdcbcbfcofeeecjcbbebhbbdebbbbffbecgdbccdgbbcdggcbbecdbecebbdcebeeckcidlccedbxbcpfccgfcbcebgcbbbbebbbhbbdibccbbebffebbbfcccddgbeibbgeccdcdelbbbddcdgbdebfbfbdbbcbdcbbcicfceefcfhkbdcbkcdhbccecdegdbcbcbbbbbbcbfcbbfbgdceeehbdeecedhbjdecbneebqbefbbcbidcbcegbbbbdlbhccededebdeobekgbebbeccdcidcccbgbeeeddcgbcmecbebbbqcibddfdgfegccbeidcbdbdbdcclgbcdbhbfceeedcdbdhbcfedecbejdiebcbihebccbcbcdeegddcdbfgfebjbbdeclcbgmghccbedbdbfbbdbdebbccdigebgcccejceicblciccbjfebehbfddbbljcccncbgbhhbbdecgdbbibddbgibbcdbcbebcdffbedbccccbbcbcbfdcebfcnbccbeeebfbbfccbehdbdccegedccbdcbiecddeeefhhbibcebdeehdibcgideboiccdeeibjcbbcbdfibjibbdccbdgcCbfbocedbbecdbcbbddldbecfcjchbfjkdffhbfcbbdhmdegfhbbecbdcddcccjbdddhbcfiffbcbcjcbbfbbbcgebebebbibbccddccckibcbcecbeeccbebbebcbbcfbcbdcbdfdjbbbcecbedebbcihcdbfcceccebjbdebbdcflcedgbbceebdbjbbbbffdbdbbbbbdecbeebbbcbcfbbcbbbdddfchbbdbdheckebbbccfnbccbdcebcddddbbcbbhcbfbebecfdkcccbbedehbebbbbgbccdbfbheejdcidcffbgciebcbbcdbcbebdfbbfdgibbbcjcccbffdccgdbcbhdedbecdbcbgdebecccggebbkbqdbbebdedbcbbcicbgdddbccddbnbdcfibccdbddcfdhbcdbbbccccebgdddbdgcdrcceccfclbbfdbfecfbbcggeefcgtbbgwhbjhgcbcdcgbebhfbdecheddbbckdibcbbeodbdcecbefcbkcebidhibfcgebeebbddbdgbfbbfbejjcbbidfbdbyccbbcbbcbdcefbbfcccfebebeebdbceccbddbbbbjbbbcccbdhdcbbdebcfgecbecbfbiffcebcbmefibbddkfdbeffcbbgcjgdcfbifcbbdbecdbbbbbfbbbbeldbdfjcbdhdcedddccbckcbcecbddjgbggfbebbgcbcbgbjfbdcdbdcgbkchgcfnbdglbgdbbgfbddftbdgbcbbhhccbbcbcendhidfbedbcbdccdbbbbfbdicdcbbobccebbccbdbedbbbcecebgcdfbdbdiddbbdcbbicdcfeeedbbbbbccebeepedcfbdedbbidckkcgbdecdgdhcbbegcdfbbgedbecbbdcbbbmecebcdmhcbbfegedgeedebghbefbcbbcbicfbedbfddidbcbdhbbcdcfcbdbbbbgdhcijkbcbfbkbcfcfcfcdbecdcbbbbbcfdbccbbbbbbfdfccebfcbcbkccblddfgbgcbbfccbbbdgbchbiifbdbdbdkcdfcfdbdbbbbbedrfdefbdbcbdcdbdfbcbgbbbdbcbbddckccbdgehjbbfhbkfbbdcccgbhebccebedddfdbdebkcifbcedddcdcnbeebbddedhddumghcbbbbiiddbfbeffbbhhbcbjbdfccckbdcdhhdnfcdfeecgdbcfbbdcchddbfdbfdbdceffbdpofecbcbcceeeeebkebbefbfldbbeefhegccebeddefcccfhghfhcdedbcgccbcccbcdbbecdebdbjbbbfecfbmcbddbbccdcbccbebfdccebccgccbdbccbelpbddfcgbchcicbbcjfbbdcodcdddebbdbmccbccbgfbibccbccbdbhcbfbcodecjdbcgejcbgdbbbnebeebgrbbbdchdbfheeebpjjbfhbtbbdbebbdbbbebbecchdbbdfbebdcpcnbceejfcdobbchbgbhccbbbcgbfdbbdeeglchbdocedbcdbcfbbdbdcicdccbbcbrefcdeibcbbjfbgcibdbfbebbccbhcbfbedhbicbbccbecbfbdbbdgdcdfeeckckbefcbbbbgcfbbbckiddflefeficfbkbcbjbecbbdddeebdbbgbdegcdefbcgbehbdbfebccbcbcddjcbbdefhdecibiccibdbchcbbbmbddfddebcicbccjdccbjbcfcubcpbdbbbdfbebcbecejbccnedbedccbjgfffbbrcbbbbbdedgdgibdbcbcbblbdblhcdbchhdbbefbcdddbdbccdbbedeedcbcbbdcdbbcfecfbdbcccceccbgbicjdidbhfbbbdebeebcedfgccccbbbfbebeebcbfcecfbbecdcceicbbcbbcbghbbbgbbccdcbccbchjfbibejbcbdgbbbdjecbcccccbfchcbcbfcbncbcbiddcfbbbdcgbdccbbdeebbdbbbbicbbkcbdfedgbfbgcbbdeecdgfcecbdhbbbbibcbbbcdsedbbdcbdeicbbbbcogbccchgbbceblbgjfcciebbbccdfbbdbbhfhcbgbbbechebefdfgbccjbddfbfbjbdhfhbcicgbbdfbbcbbfbbhgidcbbbbbcedjdbefdbfgbigejdbbcbiccjccbfjcedDjikcbbbceddgkcdcbibbcledecfgdciibejbhcbejfgfbbdbchdbbegeqeecedcdbdfbbegbcibcbfbehibdcdcbcgcefbgbbfcbcfbbfgcbcbbdedgbbbdhbdebbcbbjbebdbckhgbebececbcbbfbdbfbgdbfddcbddcgcbbcbhdcbcfbdgbccbbhcbbedcbgcbbeccijeejbbebcfbcdhccdeebbbbbcfebfccbbbcbdbdbbcbebdddhbebecbgfnbcnicebecicbhbeeceebfbbbgbdcbgjbcxbckbbbdbdhccdfbdbbccbblbjdeddmeBdcfebbfebdddbcccdbcgbebebdffbffcccdbbcfcjbcfbbdbbmbeecbddjbbcdbhdbddbdjcefbbdefbebdbbbcdcbbecbbbdbhbbcbfbceccbbecddbebcglcbbbgbecbcgdcdjfocbccbdhdbcjcbdbebbigbbbdcdbbdckbebbbgcchbbbgocdfibcbdbcbecdecfddgcechgbkbbdedbchbcbecbedbhfefccehclfdeclbckibblcbbfhbbcdgbficcecgcbdhbbcbebddcecibeddedefebcfecbiecdfcdeeddbfbddcbcdedccchelcbekegccbbcbebfeicbbccmbfeccgcdbddgiibdbdbebfcbcdchcheebfecbgpdbfbdffbbebgdffccefdeddchbdgedbjcbcbcebbdbbcdbhliihecdqebgcdcbddfjbcbbddfbdccefddhjbdbbbbbbcbdbbbfhbbjfdcbbdcbgecbgffdgbhkehfdbfbcjbbbodcefcbcbecfcbchcbedmbgcijecfiebkcbcbbccbbebdcgbibcbcbbefcbddfbbefbcegbfcffdbhfckdkdhbhccghfgcbbccbbbbjbcbccbofcbbgbdcfbgbbdbchbcbcbbdbcgcibbckdbbihfgbghgbkgccbbcbbdcdecbbbgebcodcbfbcdfebbdcdccbjcbbgbbbgdcbbbfbbboebbddcdfbfcbdcbibcbgccdbbjhbicbdddccfbgbfbcfkcchccddbgdcbbejgbjcbeebbclfbbebibcdhdbhgccekcbbgdcdcbbbbdecebbbiebbbdbcebfhbegbgbbbdccdegfigbbeddcdbeccfebcdbbebccbddegbbcdhddbbdbcbmgbdebhdbcbefccdbedddgbkedcbdcbmccbccdgdbceibgcekcbdcdcdejbdedfbfddcbbbcdbecggbcbbedbdgfechciedbhhmbbmdecekbgbeftekffcdececciebfcbebcecdcdgdcbgdjdceiefcfcccdfcgccfcghebcbcbcffddcjbcfbcckbbbddgiscbbibddcbbcgdbfgcbbbbebcjfhdddsbgcbbcbeecehbfbeebdeblfbgdbfeieebgdccbcnkfbehcedbdbdgbbbbbedddkcdkibcddbbbebbbifbehbcdcbbgbbgbdkecebcbfbmddcddcbgffdfbgbebgfeclgicedbbhbdbfdcgdeefbdfcbbcbgcdkhiccbecggcbcccbmhmebbcbibdecdhedbcgbffefbcbbbcdmcdibdhbcebbbcdcdcfhddpfbjhddddhccbgbbebbefcdpcgdgbgiedbgdbhbbgccjbdbhccebcdbbdcbfccffbefcbbbcbjbdcifdchdbcccfbbcbbgdbbedbbbcqbbebhdcbcfbbbdecgcecjbcccdbcdbcbcccbdffbcfefgbeccbbbcbccbegefibfehccnfbeebidfcgbbdbbffdfcbbbefebccmhebeedbgedcbbbhbmbclncbdbbbccbbcdibfccbbdbbcbcbccebcnbebfbmbbjeheddigciecdebccddbcbbcfgeffdbbbbelghcbobjibcbbdbcbdbcdbcbbhbmfhhccdbebbccbhbbfbhcbebbbdbbidcbdccbeibdedfdbdbccebfdigbeffcccbcbfbpjcfbebbbehccbbebdbhhbjdfbfgbbbbfbbfcgbbdqdhbbbdcbcfddbcbcifcbcbgigbkfbebbgbbccbcbbebdcdbgcbdcbbbcbdbbjdebdccbccbbbbcbdifbjbbfcebebbhfcdbkbbdbdbebcbicfbeecccfbbefcdbbcbbbdbbccjdbjddedcbccdcjbeccbcccdbeebdbddjbdbcbecgkdbbhdcmbdbgbebbcdcbfbbfbbcdjbbbeffcfhbccfcdffegfbbbbdefbcfgbcbdbcddeibfbbjdgeccbedbdcbfbzebbbddbcebbbebdgdbbblcfcdcbcdbgbchcffbddefbbgcbfkcbdbgbbcedudbeggebgidbbgcnjccdbbedhjbbgdbebcbccdjdcecbbcbbccicecbcdbdfbebbffccdedbbfbbdcdfchcbebbcdbcebbcgdedebdieeghnbbedjdgfbhfdbbcddbcibcbcchhccbbbddccdcjbbdbciccbedbbbbdfcdbcdccdlcbcccbdcdjbfbcibcbcebfeccbcbbdjfjbkgddbdggcgbbdbpfbecbcbcbjebbgcedcebcicffecdbbbbedceehcehbshjcbbccfcbiecfhdccedccidcccbbbecdbkddbbbeeeecbbbibfdfhcbhcgdbcdceddbdbbcdedjcfddlbbgccbebcgcbbdbdcbcedbccbecbcbbcbcdfcecbdcdhebbdffcbdcdbfccfcbebcbbhbibdigcelbbgdhbbebbbgecdceeebdbbibhdbgbedjfdbcddbdfebbceccbbcebcccccgdebbbcddbcbdgcbbibbdbpkcfcbkebdiccDbbblccbfdedbbfbbbcdccdhecfbbbhdbfjecbddbcbcdbbehcbdgbccbdccbfdebqbdbbebebidcebgbfckdbcdhdcgbdcjgjbdbecfbbbcgedbcehcedgbdfbdbdebbcdbrcgcfeddbdbedfbbdbbbbcebdeccbbcdfdfdcchbdddbefdcbbbhbbbbbddccbldcncccddcccdhdcccbeocbgbecgcbbobcbbedflbdcdbddbbcccchfebcfeeecdbmgdbbfbfcdbeedjcbccbbebdecidbdcjecjcbciebgdfhbcebcccbchbcdbbbbgdceeddgedbjddcccjbbgdbbbcjcblbeceddbbfbcdgbdbbcedcdbcddbbhdqcbncdbgbbhdbcjcbbbgichddcbbebebeddbfeibfdefcbecbebecgbccecbbbeddhdchbcdelcfeqecfbggbfdecbceibbbegbjihbfdcemebcbccbcbhbecgffdfbbcbcbbgbdbcidfcbbefFfciebcdbebcbdbhcblhccbebcdbccbfcbmeccbbcdcbodbcfbbcchhbfbbbglddhbcbbbcbeddbbddddcdccbcbdceccccdcfddcbfeebbeibghdbcecbbdbchcbddbcbdbcbcbbcecedbcebdccbbbeeblhbbcdcgbccbbfdhbchledcbbbhefhbbmmjcdcfbedbcefghfcbbcbefekbbbnfffcbbdddbhcccebcebdicbcdcchbgefgddecbfecinbbddbigbbcgkcbfbficccgdbddbegdoeccbbfebbhbkbfebegcebkecdhffdclbcgbfbdgcecbcgfcjbbbdcecicbdldbcdcckfdbbdchcbebbcggcbfbebbghekdbebcbinkblbcbkgbbecbegcidfbcbecgbmbbhbdcccdbbddbegffkdbbbecbhhgccbbgfkdcfgdbcjfbdidbdeebdbeccbbbbbbeigfebdgembbcbgibcfibdebbbgdmmecgfnfcfddecbddcbbbbbecbcbbcdgcbcdodibbbgedebcdebbfbcdcbjdjcffcficpdfbbbogbhebbbcegcbcgcbcifdeddccbbcfbdcdefbebdbbhecfccbcbdkhcifbfgbccdhddlbfbfdhgecjicdbdbcbfcdchcbcdfhbbccbbcjccbefeefbdcfbccebbehbgccbbhedccdbebcdbcgbcbcdcgbbcbfdibbccebblccbccbcfdcdccncfhdbbfbchcgbbcbedcddbbbdeebcedebhdbbbdfcecdbbbcdcdbefcbbecbcbggbccgccbgebhbcibcdcfcfcfjdbdbcckbdcdbgibfibccfbfbedcldjdcdfcfbcecdbcbcfdebbcocgdbcbbdcdpbcbedcbkmblbjdfbbddjihohdkfgcckbgbbfbfoebbgbbicddgdbbdccbfbbgbcddcdfdbccbccbbbbbbbbbbbfbecbccbdbbbebdcgbbbfbddbigeehccjdcccbdbcedbbbdbeedbbcicfccbiedigddbedcbbcbbcbbdxcbbecdffbbebbbejbbgdcddbdhebccdfncdcbccbhbccbdffecgeegedbbdbfbccfgbdegcgghbcdfffccbgdbhcbeedcddbdebbecfcbbbjecchccihbnddcbbefbcccdcedfecdebdccjcebdbcddbbbkddejcbhdbcddgehcbbeedffdbfcqbdcdbfbejbdebbhddcebeebjechbdebbdcdffdebbdheedgeocbegbcccfbcbbbebidbksgbfhfebbbhbdoeddmbmbdbbdddbbbcjbbhifdelgnjdbiddcggcfedbcbccdekifdfbbdejdeeemdccccccdchdbbbbbbbegihikcgcbcdbbcbhbbbebcdjceebehfbcbcecebgcbdbccecebbgebcddbddcdfnfeecebblccjcehhbcdehdmcdkbjbbcfccgbgbmfjgebchbbdbfnebibcbddcccbbcbbdkedddfbgchbfbbbfcdebhefccfbeberfbbdbdbckfcbcddcbbbcdgmfbbbbhcbbcelfebddfbdbbjcggkfccbbihcbffisfdffbbccegbkbcbdbccbdbbbbebfiiecbhbcfimfbddbddcbdebbbbcdbdbbbcbfbddcbenjbfjfbbedbdbddbccdddbcebbdddebeicddbbgcbdbdfdcbfjlhcfdcccccgbbbdcbbfibcdbjcbfqeccefbbbdegbehbcbdgecjdggbefbffhfebbdbchdbjffbbedeecbcbcbbbdbbdbccggcfbjfceegbbcebccbfbcfdebbefcbcdefcibjbddbcebffbbecbhfbbdecccccefqbbgbdefbdbjeecbmdehebhfeebcbbgcggfbhfbdgeebbgbbfbcfeebdbgkgbcgfdbihlhbbbegdbcfhbcedchhdcfbckhbgdbdcpieceebbfdbbcbbedelbicecfehfbcbbbgdcgcbedbofbbcedbcbcebddbgbcbcbbhbhbfdcbdcbbfbcgdbdjbbdcbbdddbbkecefebjcbbmfnbbebifbdjbbeegdbdbcccbbckbcccdbbbdccbbcocbbcdkgcihecdfgcbbbcdgdbjicbecbdcbbcefeebifidibbcbebdcbbbdebbbccbeiebbbcbdbcbbcgegfdfbgbdcbhcccsdfekcbgcbbbbbceibedcebbebdfedbcdcfbifgbbbcdbgbebbcmgbdbgbdbbdcccnbbbbbbcbcbihbcebdbjbbccwcbgbbdbdcbffbjgcgbecebfgbcfbcjdbdbddbbbcbcjidcbmfbebeckgbebfbebbebbbbbccbdfbmcgdddebmefeccdcfgckbccebecbcbbbbcbbbebediccfbidggbbcbebdibcbfegfbgfbcbjndbfdcjdcchbmbdbdgdcbcdbbcbdeccbbccdhdbbctbgnbjcdccccgecbnibgecdcciceblbnebcecbdccdedbebdcecufbgbcbbedbdegbbbcbcccbegcchbcdbebccedceclbdbfbeecccbfpcgccdedbdfmebccbeccecebddcbcedbccdfccfbdedcebhbcefcbddbiddbcbecgccebcdbdebbbphcdclcicdcecedbdbbbbcffcofbmfecbbcccdebddegccebcbbbbbdcdfbbebccccfbdcbecdgcgbebihdchbccddcbbbihhbdcbgfecdeqccbcghcccccfbcbbbclbdcdebebbbdbdcdbbcbfbedcecbbgbbgdbcbmdeiccclbdbfbblcdcbkbbkbfebecfbbdccibhccjdbbbddbbcgmbdeccecdbegdcqdedbblgddfbbdhfcbbbcmdbdbcbbcccdfffdbcchfebbdgjdhmhhdbndcgbebdjcbbbccebcbchcdbcchcbbebbbjcbbcfilebbbcbcbfbceibpbcbbbgbccccbbcbccbndfdncbebbddfebcbfegbbhbcccggbfeebjfcbcdbibbegffebhcbigbchbdgdeebbgdccbdndccbbbjccebedkdgbcbbccdcbbcfhdffbegbcecfbbcebbfbbbdbbeecddmmhfbecbfbeghbdedbdcbdgbbcedcibcdcddgbbclcdbcgbcecbcbdbbldceefbdcchddhbdbcfgbfbfdkbjhgbhcbbcjbedddbcpdcfcccdcbdgpebddbdefcdbedfdcfceofceddknbbcdbnbfchbbbdbebdbbdcbdbcbdifbfefddiebbejbhcbecgjbbbebgbbebbbdbddedfdddechdfcchejbcdbgcbhccdhbcecbecccibdccdbbdkccgdhbbbjdjbbifddccdecdcbegbcccfcbdbmefbgdcbpbfcbbcebhcdecdiebddbdcbefbbdbcbcebcbbleejebdcccjddbbccdfbbccckbbcbebffccebefedebdhffcdcerfbcebfdbencgdffbgccecfgedgmbekbbcedcccdhcbebccbedgcccbbbedbidcbcdebiceccqbgcmcgghfebbdbekdgccmbbchgrddebgfbbecdeibbdndbdddbbdbchbcbbfbbccecgfbecemebfbfdeddcbccdcifbccdhicfbbebefbbcbdcbccdcbecbbgbbbdebbdgbbddbbbgdebnbecbbbcgcjclbdefjdgbgeccbbbbcebcbbjcqbgccdgbbdcbcidbecfbbcgfdflebbcbbbbbbmebdbebbccfibcbgdbbebbfccecbdgeqhcbcdecidcbbcibchbcbbfcdbfbcfbgbbbbgcbffbfbeeckebbdcdbceggbjbbgccgbcbbbbbfebceddccbechjbhcbmicbddcdgbbibbjgecbdcdbbggfbgcfggfcbbdcbfedcdbdifecekdcccbcccdcbjdbbdebdcbedckffcbcfgbhcbkcfbggheeebcefbcjeddbcidedcfbbebcecblbdhcebbbhcbbbfbebebgecbdcgcdeddcckbcbbielbbbibbebbcececidbncbdfbcbbfgbigbebeddhcbbdchfcdhcdbbcbcefedcgncddcebdfeccjbogcfkcbgcbifdcnbdbbdcbbckbeefecednbdebbmfbbbehbbdncbbcbgcfceclbbbcckbbbcbkckedcdicbmchceeceeceebcbdhdebcbdhbecbddincgfdecdgjgbdbbbecbfcecdheddcbidcjecbcbgbdhclegfmcdddccbibcefbcbbbbbdecebbcbhbeibdcfbfdbbccedcbbkbbbchbbceekbchdchcedbccgbebcbdcgebfbjhcecbcfebcbdcihbeeebbdccbddbgdechdeidbeefgbdbbcbhcdibbbdccdcbbbcjbbbbgbfbbbbdcfeebcbcbcfcccfceciegcbdcbhidccjhcsbdcccbbieddffcdbebbbgbbccbcdcbdegdflbbbbcbnbbegccbccfbebcpfbcbbebbdecbbecedcfbedcbbbdcbejchbfebhbbgbeecbccccbgchcfgfccdbbfjcccffdccefkibcgcbobekbccehdbfbdcjdbfcfbbcbdcbcbdbbcddccbhddbceecbfjedhcddcdfbfibeehegfcdbbdfbhdblcbbdkbbcdbqbefebcidbbdcbkdcegbdkckbcbccjebbbecbbgibjghdbbbchebkbbbcffbdebbdcbcfcebcjjebbcbcbebfccdbcbbbecccedbggffdhgcbbceecdcbddbbcbebbcbdchbdibccdhcbfddcfdbrececbiceddcebbcbeedbdccdebobbfcbbgfkifbffbeddcdbhfbmcgbeceebdhbgegbcfbdbbcbcbbdfibdcbhbgghbbcbgccbghecdbfbbfgebbbbjcbbcbccbccbiiddfcdhcbobcmfibkbcfhcgjdkcccdfbbbdihcbbgebdfebbebbcbbfggbbfbcbdfibebdeebgjhcefgieeedebbgbbcdmbgedfedbhcbcccfcibcfcdcfejccbbjibbddehbfeccdebdbdjccdjbdbhcceccbcdbebbfcbbcdbbcfcbfbdbbcdddbbdjbgbyddgifclgdecdgbgdijdehbbbbcdbenbbbbbdbcbddhcchbbbbbcbcgbjhebffjedbccbdcbbbjcecbcesbcbcbgebblcbcbcdbgcehjccbgeeedjdgebebbcbfbbdcldeddbcdbdbbcccbebddbdcfblcjmdbjbbjbcccbegdbgddbdbefbksbecddcgbcbcbnfccbfcbecbgmbgtcdgdbbcbcccegfeccbcgbrbcbbbmdbcbicccbbehccdecbddbebgcbdgdbhbbdcbfbbkgecbbedbbibfbgcbjbbibfgcdecmbefbbebcbhbdkbbfdddccdfibfbbbcfbcghcideebbnceibckbbbdgececgebbfcdbfcferbcfbbbcbceedmcccbfbbbdgbbcbedgbefbbcbccedchdbbbbhecchdbehfeckcdbcufegbdbdhbicgodcbcfmcgblbbbbbbbidbdibbbkeefebccddfbbbfcjcbbedbebekfbdbfdicgdbdbogbddjcbbbcfbdgbddbcgbbgbcdcdchmhdbedkbbebfiibgbkcbceicdbgebbbdbicbcchgfbicedobcefcbbdbcecgdbcbbhibkccdjcbdekbccghbchhbdgbbddddbeegbdiccebcdbcefebeidbfibdbbegcbfgbbbbeccdbccdcbdccbebfgcfbcbbckjbdcbefdccdccbbegkdejbcdcbegbibgcddceecbbcbbbcdblccjcdcbcegdcccdbbbcbbdcffcbdbfhbkbcgigbfcccbddlddbcedeedbgdfbbkebeicceibdbddcbcjceidbhgjidcfbfcbcfbdcbbbbecfbdbchifcibkgcbebcbbcbbfcdccicdeccgdcdbhbbgdbfbehdbnbfcljccbbbbdbfccebbgmgdebecibcggdciffccegbcfebdbdcebegeckbdgcbbbgdccjibbibbfcdjbbhbdcchbcbiedejbdqdbcbcbdecfbcbdcecdcccfccibbchcfgdbccecdbdcgbgkecbbbfchccebeefgcbdecbdecedbbccdhicfbjbfbbcdbbedcdcbgbkbgbbcbcfbbddcfgbcebbbebegbhecdlcegddcecdefbebgbgbgcmcbcdcbdefbodiccfmdlbbbbccddfibfdcecbbjhebiccccddcbhbcddcdebddbhhdbhccedlbhcfbbbgbfbddbbbccebhibcbddebbdbjbbbebbcgdghcbcdccidbbccjfjblcfedfbpfgbfdfcceibkchlbbbedfbbbdcfcebdcbcdejbcjcbldmbbbbbbibnegbifbccbgchigdbifbcebcfbbebdgbbcddibcbedccbbbebcfgdbcmdbbbbcbbdcccdbddebdccbfbdficcghbfhieedbdbcecdbebhbchgfddbebmbebccbbccbcfgdccbccbbdlcbdbcbdbccdghcdebcdfdbbcdecdedcddcbbbjddbcbhicdhebjcbdfcidbcibbcbdcnbbcbbbbbjfbffcgcfbbdddcbgccddgeceeedccccbcbedgbcibfbcdcecdjeqdgfcchbdecbctfeenicgdddchfedcccbcfibbebgecdbcdjhbgbkifeffcfbecegbbbdkfcdbgecbebjmbhbdlbchdhfieeenbhbibbhdccfffdbbbbbcecbdfbeecjdcgbkdjbbccbcbdeecbccghddgdcccbedhgjgcbbedbecfebccbeedcbddccbebgcbcccedbcedflgmcbkckdhcbccdcebedcbbbcbcdecfbdcbcjgbcgeebicggebbcedcejjcsbbnbghdbbfbcbcibhfdbdbcbbegcigcgfbbcdhbbhebcfbggbdcdccecfddbgcfgegfcbcicobdbficeccbcefccbbbegfchcbckcdcchccibebbecfkdbbecdbcbbbbbeecbbfbbfegcffgccbkcdddcecibbbdcehgegcbcbfdfgedbcfcbjgbedgfbbbgddfdhgbcibbrbgeebcdccddcgefbgcccfbbecdibjbbdemfbgbnfdkbdeecegfbhbbgcobcddqbefdcebcdifbfehccdceddlbchkbcegbbbcbcbhbbjcgghchhbbccfbccdfjedbeddbcgdbcbhedbddhbedcdfbidiibeebfiblbekbcfkdbdbcbpbbcfbdecbbbcebccbckbfbbbbfddbdbbdbhffeigbcbcgbbecccbdicgdkfddechccbddgbijdfgebbcdbbccbdedbgddedbkfckbbdbcdhbefbefggdbfjedbedcbbgbdhbbbdbcfhccbgddcefbbbdghcbcrebbbfdejfcfgcbdfbbiccmcdgmbbbbbbfcfcccdlcbctcmeccbebegdeeeeddegbbbbofdfbcceefbbcdecdccbbbddegdjhbcbddbbdbbeecbdhbcqbdcbdffcdebdcbieedhbecbcbbbcehdhflfccchbgbbbdckbbegbbbbbbbhbbpebbecbgcdbghcbdbicbdgbgecbcbbmobiheeftbbbfbbdfdbcbdhbbbbceccefcdceifdbccidblkbccdfdgddecbccbcchcceieebbbbfhbbofbbbccbeebcfbldcbbfbccdeddgbedcbibbbbbbcbbjdkbfghbbecddbcfjfcickbcebfgibbcbfkguigbdbcldcfcfbbjfbggdcddhcfcbdfbbbebccbgefbbcecemchbdbdhbecbbbbcjbbdddbccbdbiecbbbbbdfebcfbbdcbbccddgfbdbbcddblbbbbiockccdbbbgddjebcbbedbiccofdccbbddhodbebdhbgbeebdbcccfeccbbccdcgbcbcfibcggcffbbhxdbcbfebmbbddbcdedcbcdjdhecbibbdcbdbdbfeecbcfbccibhebdecbebkcbbdgcdbcdbccpbfbdecceinfcgcbckgbbbccdbdbjicfdcjbgefbhbebdbdegbcbbdbbemjdbdgefheccdhjgfedcdbekicbkbddbgcclcdbcbbccgjgdfcbbcigddefdbgcibbddccbbbbgbdeibbdccdcbcicbdbepfdbebfibbbbbbeddddkpdcbccbcfcgbdcedbedebfbekeccdbccdbccbcfbcbbdbhbhbcbfdefbfgeedidbbebdcfcbelcdbdbbeiebdcfcblicebdebhdcfebgbdbkgecbbdctfcbfccbffbbccdbcldembccccbcdhcgdebcbfcffbcddbgdebbbqfdddbcgcbifghdcbbecbebbffecbbehicbgdcddgdfbbedcejcgbbdgchdbbbdejbbcibeehfbbbbeddbccbcccicbfccedbgcfkccbccecbgbdecbbhfhhefccfceeejdcfcbiidfidecbcbdcdbdccbbbbneecdfcbebgkbgbkfibfbcccbeidebebcckhbbbcckfgdcddbgbddbfcbbedebgfbkbccedbcegjgihedfbcbghbcdgecebfbcccblbbegeobbebbhheefcbhjdebflcfddcedebbbfdjdbecbdcgefdbcieccdidbcfdcjebhbbcebfqbgdbeccciehcbdefckdfbdbdbdbdbbcbejdbeebigchcedcedbkdeedhcpbbbnebdjkcfqbeoeebbhcfcbbbbbedecbfdccbgbcemscbbdbbbbhebkphebcbgbdbbdbbccfdcbccdecccbdfccdbcfbbbedbgbejbfkblccccbdebifbcdbfcffibbdkdbcebhbgbjcbfjbcqbcbbccbcbbhdbdecedccddjdbicbbcbbbbdbbdebcbbifbcehbbddbgbdcncgbbbebhcbcedebdbdcbchebbgdbefbchbbddbbbbedccbfcgcfblccjbdhhcccbbbbchbcgcbhcbcebbebddbcccbdcbbccdfcdbeddcbbbbbbcefbibcbbsbccgccebbhcccbefdcgbhefbcdhbcdcbccdicedbbhfkfcccbbdhbbdjjgfbedgeiccbeqbdcdfdgcecefefgcdbbdbbddbbdjfcjbhbdbbbbebbbcdbcedejdcbgdbhbebbdkbnbdcbebdbcccfebgebbbfccibcgbccbbebbbbdegbcfbdcbbjbhbbbhbbbbkfgbbcdfdbebbfebbfbbbcgccbcicddecbcedbbccfeccfodchqbbnhgbehdccgbeicdcebdhbbecfcbbcfghbcdcfengbddccbbccbkhhiefjddpddfedgcdddjcbdeefgdffcbbebbibbbdbhdbbbbcbbbdfedkbdbccbebfgccbidccdceebdbbejebchcbccbebbibdecgdhhdbcgbefebjedhhbjbbccbdhccbbogdcbccepbhedckdebhddbdccbfbndibdbcbgecebeccedbbcgebfbcdcbhfcbcebcfbfbtbefebebbcjjdcdbegeghecdbhijbdbccbfbbdcbckqdbgeejcbbcdbbdnfdccdbccnbhcccdbhcdelbgedbcdbbobifbbbddcfebddcbdcbicbbbbgciigdcechdbbdbbbjcebeedcdbbbebdggbchdbbbbbdbdcbkdbccbbbbcdbfbcfhfjcjcbbeebdcccbhbfbffbbecdbgbccdbbbnhkeebccdbbbciekleccicccbldcbcfdrbdfbbeccbeeecbibddbbcececdbbgebbcmbicbcejfcnfbhdgbcbfbcbbbccbfccfbebdiicccbcdfbbccbcbdibibdbdddgfebhffgcccbcdcgefhbbgdfbefbebcfcedgdgcbfcbbddcbbbbddfcdcedifeedbddbdbhbbbbcbbbcbfhbcbbbibccgncbfbgcbcbffcfecdeeicbdbebccbcchcccjbbdcbbgdnefbhccbbcecbdlicdfebcihdgqgefefbebfccbbbeecdbebccddgeccdebcbdcgebecbbcqbcfdbcgebccfbefcedcbfgbjbcdgfjcefceeckedddcjdbcfejeedcfebmhfedbbbdbbdbdccebfcbddgcccebccbbcbcecdbccjcbebdbbbebbbhbbbbddfebddccccbdbebcbbcgbebdcjcojeemfcfjcchdeehjbgcbcbbfbdebbkhdfbecbccbbbsieddbdbbbiilbbdcfdbbcfchccebehceebgbjdffcceckbbdcbcbddfccccbdeccjbbcdbebgcdnbcocccbgfbdchifbebffcecbgcbceddddcfecddfhcegkbdedcddbecbfbcfgcecbkcdibcbcdcgcffcbccehcbjidcbdfgbdbdebbfdcemebbcbbbcfcbedcbgebbdboccccbeeechbfbcdifbbgcedbdjedbcdbdgbfgbcbccdbdbdbfbciebdfcdgdbbcbcbkbddgbicbmcdfcebbbbfcdhcgeibdccbdefdbcbbjgbibbibggdbccccckdfbbbbedebdbeddblkbbgbbgnscbbdgcbfmbbjccbbeccbfecefbbdhdcebbedbcbcbbbbbbicfegpefebebdbfbbbdbeibcecfecccenbccdgdcbhbfclbcbdhecedccdlcccdhbbcgblboccebdebhebfhbccbfbbfebbcgdfldbfbbdcfdcdbbedcbebcccecccbdbcfbdchbclbccbbbbhchcbbecbgcbbdcfkcedcbfbdebfibddbccbbhcbhjgfdegdhfccbdcbdccfbddpcigcfbcbbcedgebdbecbcehcichccdcbeefbbbebebbbcbfcbbdbbbiebdbgbdcbfcbdfgbbbjcbcdfebdbecbbbbjbgihdbbbcbdedocbdcccdbddcccdcfeeecdccbfbfbdcgbbjbffbbcbdkdgedccbbddceehbdbhbdgmkdebnebembbbebhdecbjfibhebfbddcfbdgdbbbmbfebdcjbbebddbbdcdbcefbbdbbbbfdebcbedcbbcbcbbcciqdgfkddcdhqcgeecbdfbfcbcdbdbdfllcbcccdccffegdcieecfbbebcccbdededckjcbdbccbbbbcbccmbgcbebbecbdjcbdbcbddddccddbcbbdhdcebbbcbcbdcdfbjhdbcecccdcbccjcgkbbcedcbbccbhbhddbdebcbbcffibfcecgfbfbbfddbbcckebbefchjcebbbcgdbibdeebccgfchbighfcgdblbddgcfbjghbdocebcecbfbkcfcbcebebcdedcbdbbicbgbcbbdcdgddfcccbchdbildnebbkcbcechdbkfbeeegbbbbcbcccbgkebjceccbcbbecbhdccbhgcfhidggfgffcbijbdbbebbdbbbbjecbbggedeccbcfbdbbbbcgbbeefbecbbgdccdfcehcbhfjcdfbcbcecbdhebbccfgddjccdefbfgbgccjbcghfcjecbcbdbkddbbcfdbeokcdbdcbbeglbbbckfemdbgdbbcbdccdecblbibccdeccdcbbbbdbfbbvbecjbfcbbnedebibgbfcecccdcebebbcgbbcekbmbifccbbbbdgbcgfbeccbhbffbdcjdccmbgcedccxceegmbbhgcbebhmddecdbfbifcddcdbcccbebjdcencdbbfebibbcdbbjgbbedbdediddbbcedicddbecbbebdcgcbbdddccbhccdhdfebhbcfibbbdbcbefcccbbkbedmcbicecqdchbcbbcdebcbcllmbkbfdbcbbdddhbcdmebdebcccedddeefbeeicdicbcbdbbbecbodcccddedcbecdhdbdebifebcdgfddhbfgbdbejhbddedbgfbddbcbcbdccbbdgbbbebbbdhcccdbhhbhjfbdcccgbcbdcgcebgfdcffsjcccbbbldccfccbdbccdmddcgbccbdfggdjdfcghbdeddhdebihbbbbkhbfcbcddbcdbddbfjegbebddfdefbbbbcldbcjbfhcedbfcclggefcjgcfbbdhfnibbbcbfctcfcbobcbfeceqcfbbcfiebbccechgdcfebcbdebgbdebcdbebgbcfcbgdbbjilgmhbcbbdfbcdcgbbdbceldfbbdcbccbcbbceedebdgcbeicjgdebcddbcekebcdbbefbcjdcfdccedbbbcwdmfcbgbcbbchddcbbbbcbfgidbbbbdbkcgjgfdccbbiennfbcdbbdebdibebccggdbbgbdedbecdecfdhfhdbbbegdbcljbdbficbbbfbccchbbcceoddcdbgdcegpbbbbbccfcdbebecffjcbbbfbcbfbcdbedccbgeibkdbcbecdbgjbbchfefecbbbbcbcfbedbmhcbjfhghfiddiddbddeieccbbbibclfcjbhhcdbbcfchgbbdccibbcbbcbgeedjcchdcfibeccecdbcfdbdebbbbbcejhbfcmddedcbccgcbcgfcbhfgecbdjcbcgicdebcccecbbfbffcfbdbgbbbdcbbbbjebfcbbbgbbbgbdgdddbbbdcdbbigbfebfcbdjbclbbeibceddbdegbbiebmecckddbbddbcgbkjhcbeibgfbdcgccccdbdebbbbjgdffbgbddbidebcbddcbflcecfbbecbbedcchfegedbbdbbbbbbbhcdbdddbccbibdhofgccchfbbddcbbbddcddhcbhdbhbgccbfcbbebbbdbccccchbcbeedddddbecbccefgjcedchgbcccjccbcibcbccgbbbbbccbbbfebkcccgdcbbbbbgbdkdbfbbbebdbjhecdebcbbbdecbegebebefcbdhedbcdbbdgebefdgdbcbchbcbbbbdcdbhdcgccbefbhcbbfgdcfecbbbbcmcbcbbbfbbcbbcdbbfdbhhbbcbdcbbdehbbgbfbfbdcgcdcdbehobdcjfbdgdbbbecmeibbmbccbbcbbhbkbdfbbbbcfdbgeefgddcebbdbbbccbgcdbbbgdedebcfdbbdcigbfcbggcfbhccbcbcbbfebbcdbdccgbgbghdccfmdcjghgeebcdebdibfbbeifecccdckbdbmccbedcbdccdbbkbbbcbgibheekbcgbbbhbgdjfckgeddcgfegdgcbbgdcgjhdbccbdbddbgddghcdfhdbbcbjcdccecpbbeecbgdgebbcdbfdeecedcbkjedfdcfeccbbeceebhebieiedcbedbddcfdebcdbcmddbcjefcgcfcibcbebcgbdeegdcbbbedqflejcbdbecebbbddgcchegibdfgecgccibdfbidccbccfdcdbghhbbdcdibcdhefbbgcibdgdbbedbccdgddbcdbdbeebibebcbbkcfddbcebcghfdcbcgdbbbebbccekdbbdeccbcdccfckfcceccqjcfhhgcedccebbbcbbffifhbiccdbdgjfdbgfdedeeeccgccccbgdiedbcbbhdcbebcddbdbldbcbccgbbcdcdibdcfbbbbcebjbbedbcecefccbddbcciikccbcffdjfdeedbcbbddbdebbbdcdibbdicbdefhcbbbdbjbbefmccbegcdbkdfchciebicbcbccecbbcedddbccdeeedefcbjdcbhdbedecbcjfibdedbcdcebcbcddbbcgebcdcdhbddcmebjcbbebebcbceeebbbbcbbbbfebfcfbhbhbcbdbbcjefdcdbgicuccbdgejceccddbfdbcdcbcddebibccccfecbbcbefbdghhdbcdbfdiebbcdccebbegbbbfobebdebfccbdbbcbdchcccchddcgbbcbbldbbdefbbbbbcdebccsccgcedbbbbcbdcbcfbhdcbecdccbdedcbddbbbbbebbbcbbbgcebfbbccbnecebcccebebddbdefbbccfbbbbbbdhfccbddefbgjbeccefhmcccbfebeecbbddbgbcccebcbcjchcgobbcfbbddkifbchdbghbbbfsccbccdgbchbcdddebbccecceddfcbfebdhkpgccbdbbebbbebebhhebddfbccbebcbfefckcbcbcccddbjdbedbbbfejdegccbdbfdbbeldchedggdgejcfbbcdefceedhccheccbhfcdbbjidcbcebbchcbccebbfbfdcddccbdbbdcbkdgdbccbddcdjbbcbdfcbcchbcddcbbbbbhbbcdfbcgbceebbedffccbecbdjdcbkjbbegbeddcbbcefeeehkfbjcbcbcbfeigfbecbebbgedhdhgcfbgcdjhggbbefcbcibfgcibcbccecmgdbcdddicdbbbgjebhcbedbedbebegcbcbedcgibhefbebcbgbbbcebidgbcfccbddddbbebehcbedgbbbecfdbccbfkdhcbfcbicjcbcfhcbbebbcicjcddebbfkjcjjbbdbcjdcfbbcecddeefeecbbbinhbeddccbefbbcbidicdcczdlcbfcddfbcbfbcfkcbccedbdbfdbbgbbjbbebgbccceebjbdfdbddfebecbbbcjbjbccdcdbbeddhcbmcfcbfbkbgdbfbbbcbbegkbgcbfdgbbcbcejddddefcbebdcfbgfbedbfbffcbccdbcjcbebcdbbbbdcdfjbfdebdhedfcecdgcdccccmbhcccekbfhcdfhgbbfccbcbdfjbddjbbbffciifebeccfgbbdbbbgccfebcbdbbbdicdbdbheibdeegbidejcdecidbhgbmdbhbbkdedbddibdbebebdjddbgbddjbbdebfnecfeefddeediccdjdbbbbblbbbbbcbccbcibbhbcfcdcbdglgdhjenbcdcdcffbiddhbcbghjbcbbccebchecfcdbbdfdbfcebeccecbbbcdbcdbbddpbicbcledebdcbbbbbgddehbgbbbhbbbebceicdbecchbbcbfbfbdccebegfcbbbdbedibccbdkefhbecdbebibhcgbbccdebhejheedfbecghdcbibdegcodcccckfccbbbgdbbeccdbebbrddbdjcbcdebggbdgdccdbebbfbbdefccgdibdbbbcdhcgbbffhdccdfbcddcbecdkbbmcdcbccbbbhccdbeggbcjfdkfebccqjbdcbbdddfbcdcbbbbedbjifcfbfcbldcfcnekdccbbidicdghbbbclefbbhdkddejbeiefbdbbdcbdedfbfebbgjbbbbebibffgcecbcbgheddcebibcbeceffdfbccbfidbgbffebcccbfeebcibbbcedcbbehddbebcddeegbjfjchgdbcbpdfbcbbdcgcbcdeqbbebbccdfbbedggeccbbgbjdceciggbccyhcgfdegcebbbcebhcdlegbcbcmccbfhbdfclefbblbcchgcccbbddcbdbebdcdbbkdhbbcbdedbgdbbbbbcfeebdbdhbjibbcdebvfdkcebehiddbbbdcbnbdffffmbdcibecdbfeddhbijbdhbebbcecbcecgdbbgdbdghfbcbfcbedbbbbcdicdfkcdbhddgcdbcbdbbcbbfcbcgcigbdfbcbbcjcmiehbfbdgncchdbfgbdcbebbbdocmicjchcesdfcdbcddhdbbgdcgcccddddbmfecghdfebebbebcbbbdjiebedddccccfdfbcdcbfjdebdbcbcbfnncdcbbbicbgldhdcbbebbdcbcbdbdeediccbdddbcgdbceifgccbeccbhcbcbbbfddhbcdbcbebdecbdbbecicigddcfieccefbnccbdbecebbebeegddbehcibdbbbbbecehccfcbhhmidhdfcdcdckichbbhcdbbfbgbccbegcdibkocbcdceefccdcbbcbedgcbchecgcgbbbdeebeebbbhniejdelffbecfdbgbbbfbgbbhdcbdubcgbdhbbbbcbghghcbibbbebebegimcgbbbccdbccgfbdngibcjffcidbffpfcgdfcnnedecbcbcedidccfjgdddccceedgkbeeddegdbbcdmcecidbccbkebbgebbbbddbbfcbbcdbcdjjcbdeebmccccbecbfdebcccbbbbcbbbcdcfcbgbbeefecdbbbbbjfdhbbebcdfddcbccejbibhbedbeibcbdbhceddcbccecbedeebbdejcebdebhdbeggngqeebbbcebgicdgcbbefbffdcdcgdbbbceccccfffgbfbdcdbbcbkchedfbjbfcidcjbbbbcifddmbcbjjibrdebcbbbdechdbdcbfdoddbcbbbcdxehcpcmbhbjcbcedjcbbdbeebckdcebfdbffbbgcbebbfdibbebccebdebbbdbbbbdbcdflebcccgqbhdhdbeeeiedcdfcdbbcbeeccbnbedfchecdbbdbfgcfcbjgbgbcbkcbbbbcccbbdcbbbbbecdcebchcdbbccbdcebbdejbhebhcfbefcbedccbcldbdhbddjbbfidbdbfbdbbccchhbccedbiincbhcccbicicefcgecehbbcbdecebddcdcbbbdcbcbdbcdbhcdebdebgcbdbddffcbebgcbcbbrbeccecbcddgcbceccfjbedcdchdfcbbibgbccdddedkdgecbccccbdbfbkbebehghbbbfbbbcbgbccbedfccfcebrbcbcechhccdhbcdebebdbdcdcbdbdcbebeccfcfddcbdbfddhidcebbcbebcfcccciblebddbchdblbfbhgeefdcbbscfcdcedbcdbciehbbdbcbdcdbbedcebcbbdfbdcchgechecebbdddccbbgccdbbbbbbbkjegcdfdfbkcfbdcdfbcfhdhbbdhecibbfcbdchffdbbcfdbbcdbclcddbbcbebcdfedbbdddeebdebbbkdbfbfccfidkcggffcdchfecbcdcbbececddcfbbikeelebdhededbdfbdcbbbbhkbebebdlcccbreffbbbbgcbcbedcbbcdbgcbccjgbebbgmbdbbkcbhceifccbodidcbbbbbedbebcbfbbcbdfdmbdjcbcdegbbcbbecdbdfbdcddbbecbkecbdddcfbbbcbcbecbebbbbbdfddcdebcbcbgbdejfbeichcigceebcekchebcddcjbdbbdfgbjcbgdfccedjbgcgbeeccdbldbcybbdpdbechdhfdcbbbecedcbdfebhldcdcebbfbfhbebbbdcfccdkcbbcfcgchdfgbeedbbjbifdefbdbbcbgbejckebdhgcibceflgfbcbbebbbijddcgdjbbeodccddbdegibdccgedeeflfgccdbddibhmbcbbbebcdicjfdgdhcdcfcbccbcbfdehfdbdbcbgcfcbbcdbbbdcijcdbdejccccbccebbfobbcbbkbbibcfedbcbefbebbbcbdcgebcddfdbbegbeccbfcbtegdbebbbdcecfbfeecedccfbfcfdhbcbehccbbbdjlbbebcdccbdbckcfbbbdcdcdgdfbcbedcchfednbjcbfbbienebbbfbcbbcccdbdddbbecfcdcdbbcbchcccbedfblfddhbccbjchdccjecbebegegbdeicecbbebffddhbbbcdqefdcbckbbdbbcbdcbebkcdfcbeccbcfbbgcnbddebfddffbebfciedccgbffcdebbghdcbcbcicbbidecbcccbbcccgbcbhgdbnbcjbcbefcbhicfffgblffcgbidbiecgbdcdbjbdbbddbqdbrcccbdhocbbchcgbcbdddcbccccdgbddfdbbcbkceebbfefdbccbedbkddbjcbcccidbebefcdbgbgbcidcscfdcdiddcgfcgccddicidcfbcbdefceieddcbcccbffbebbejbcfdfcdcbblddccggcedfbbccbbbbbbdgbgdlfekbghcfcbdbbdqcbcgcbbffdbdfcdhjccebkmbcehccbccbbcccidcbbbcbidgbcbbdedcdbbjcekchccbbfbgffcbjecfccdbbcecbgchebbddddcbccqfdbdcbddjbbbbdegdcdcddcbeiccebgcbebcncebcedidbbcfcidebhccbdbinbcbebccbdbbibfcflddcdbbdebbfcecfbcegbcbbcgdbededcccdbbceceeedcbcekfbcccbfceffmdeejbbdbbccbdcfbdficbdbfbjbcbcdbnkdbjcbeecbbiciccdbidfdgfdbbdjfffddebcekcfbcbfbbebccdjbbfeheebbmdbcibbjbecdcbeddjcbedemcbbccdblccbcebbcbiibcfbcbcebbdfbbcbdgdbfcdfgdbecfeccdccbdbehbgebdgbfbfccebeccebebcebefbbcebdccbcedcdbccecddgccebbfcccbbbdefbbdbbebjdfcbbfebdbecgebdeebgccbdbbcbgegcebchbbbblbgdcibcbcelgcccekdeceedbjfbdbhccjedjdecfhbddbhgdbhccebccffbbgdbcbbmkgbgbdcbcbdgffdccbhebbbedecbebdedegkebciddbhdcbbddijbjgdcbbbhcbcfchdbccbdedcbcbkehcbgbddddbgibdhblbfdcbdbcbbgceedbdecpdcnbdbdbecdbdcbchdcccbdbbbbbccdhffbdbbffccbbfcfdcbbddbbcebcdehcdbdgbbbfdgbddbdbbfbbbccceececcgbgbbcbbecfcdchceheibdhbcedlbbchdcbccbcbdebfncbbccbbgbbecbjgcfcibbebedghcbbbiecdbdfcbbbccbdbbbbbcbdbjcbdbbjhddbffdfbhbebbeedbceebfcfddbrbcibcbebhcdedbcbfdgcebdbfhfdbgecefeeedffidiggddckcfbbcfdfeecbfdbbfdciflhdekdbhdbkgfcdbffbcghbbbddgcbtrbbdccnbbcdehdfbeggkdbbcbcebcbjbceecbebddbebbcbcbbbgbcgbbfbccdbdbddbhcbebbbibddgddbcecbbfbdwdcbbccbbibcebcbhdkgbbmeccedcbbcefbfcfbcccbdfecdcefjbeebbcbheccebcbbkcgbdbdbhegbjcdbbcbedceddbbbbedchdefbddjcbccecbccdbdbbbbbdcfebdembbbdgcmcecbicmbbdbcfofpbbbbpibbbecedcccdceddhejddbbbccebdfjbfcckcbecdbfbdllbebefchhbbbhdekhdcccbbfbdbdbcghcbgghfejeccggcddjdcdcbdcgedibdbcmfbbfmcdidcbfbcegcfbddccdbcfbebdcdgdccbiegcbdgpccjbdbdedccbbcbdfeikelccfcjdbbbbbedhcekdebbdbcbcjgjbcfbbcfcddboebccdbbbdhhbdhcbbbecbfcbfdcfbcdbddbnddbcbciccdbjficnbfcebefbdbbbgbbhbcbdddcggddbejekecheeedcgbcebcdcbhcbebbedebgebbfcgcbdbbfibbhbebcbbfbcecbbbdbelbccibdccbfdfcmeccbfdddfdcddbdlbgebgcdddbfgdbedbefcbcgbddgcbcbcfdbefgbcdcbgbfgcdbbnbbfddeccccfffebcbeefcifbdbdbjbcchcbdbddbchllbbcbhdicbdbebbfbdcdbcbbjbbdbddebcbfdbebbdjbfccbbbcedchbccbdbhbcbbbhebbgbbcdebghbddbmfcgebfbcbchbcfbdfbeecbdgobbdgbcbcfebdbffbdbdbbebghbbkfnbbcbjbcfeccgbgfccmghdgbehbcdfbcecjbfdedbmhccdebbecggdcibbfeddbjcdeefbdbdcbfhldceecgldfbbcfbbcceibfdcbebcgmbmebcebeddbbefcddcebbecgcbbehllbebdbbdgbbbqebcchbgddccgbddbcbbeddbcbdhfgbcbebfbgdbdcgdbbebbcfdfgbfbfgdcibdbffbbdbocccbbcbbjdckbebcbffbribdfbndbcpcdchdccbbbbgcbcbdccgcccbibcdfcfjcdcgdidbcbgebiecbfbicdicfddebdfhdcegccbckbccldbgescceedhbcbfcbbcdcbdfbhcbjdbbdgecbcedbbcidccffbhgbcbgdbcbdbcbdckbceccdbdcbbhgbgccbcchgdfbdcdfchbcifgdcbfebdbcifpcdbhbbedbcebdbbfcbefbgbbefcdggeedgccjbbbbcgbbdcbbbbbcfbedebcdbbebecbgbedfcccjidcbbhbccbfbfeddcgbfbbiedcgdfedbbbedddecchbkfgbebbcdecedbcdbbccdfwdgcbbebhbcdbdbbdcbecdcblbbbgbefbcebbbcbcdffdibccbegikbbcbdgbbmihbdbcfgfbbfnbedbdcbedkihbbbbjebdccdgbgilbcbibcbgbhdbbbbhbbcdbfcddbbcdfibebfdgbdcclbbfcbccbfbbdccbcfhcefqdbefecbbfhcbciebfdbldbeembmddbbebbbbcfeddgdfbeefciidcdbffcbgbbdhfbhccebcbheddfcgejhbfbbbdeilbbhfbecjieibbbdbfbbcbddbbdbebdgbebeccdcccfdcbclcihbbfcbcbccdldbbckbfbcfbbbcbgjbbdghcbnbicbdbbegdgibffbbifgdedbgbbccgbchddbgdfgiigebbecdbfhbhcdbbgjdbgdhbcbbdbcddbddfcbccfgbdccbcbcdbecefedbfdbbcbbbbbbcebrfcdceegbbihbbdcccgidpbbcegbcdfidcebehgdfecdcgbbcccbcdbdbbbbedbbecdbdeehefbbcfbbcjbceceecgcbdfbbddcbcbgfcbcedgdbbdbddcbgdjdbebjegbhdbbbdfbddbebcbbeddfbbfdbdbebbbddbedcebbbbcdeckcgbccbbcgcbciecbeecddbgbbefecbcdbbfhbcbbdbdddghgimbchcngcebcfdbhbcgbbbcbccdcbcheelcbedfchgbeddcdbcbcbgcchgdfbccbbeebbccfbbddbbldbbcbbbfddbbdcebeheecebcehbbbfcdcdcbbbbbbbccdcgbcgdbbbdcfcbbdijbbedbbicdbbbecbbccccgbdbffeedgeefbbfcblbbeebcbjbebkfbefbebdcbfcbbcbegbddbldcgfdcddgcdbdbedcfbhddgecdbgdmdddbcbbfcbfdgbbcfcbhhifedhcedgbdbbfblbebdcdbcebdbfbcbifdbdcfbceebhcdbdgbecdicifblfbfbnbcebdccjcdbecbccgbcccgefbebbdbujcfbmjbfbebcedfbbcbbdgbbkcbbhdfbgcebcdeeelfgclbdbfnfdcebdccgefjccebcecblcfbehbbfgfdfdbdebhebbgdefecddkchcccecmcbbcdbcdbdieegccebicchbbbcjbekblfdkecbbcfgbhdbgqechfhddibbcbbbhhbdjcchcbcdedhecideebbibbeidgddbcncfcgdecjbbcibbbbbfbdkbkidbjbbcfgbfcjefdhdcbcfeefbeecbebibhccebcebbdjdcdbdkkcggcddhfcbmecbcbebiecjcdbbbgbgbfccceebbdebdcbbkdcdicgbfiecbgcfbcdbjgcbdchhdggcebcbcdbjecefibdbcbedcdbbbbddecdgdbcgbdbcccbebbfechecbfbcbbcbggbhbbjfecbbfbdghbcbbfgbcbebdgdbghbbcbbbchkkbjefebbdbbccbccbccbddfdbdbfddbbcdfddbcddbvbbcdbcbbcbdcifebbbdbeciebgidbbddicbefgbddbbdicbdbbfdebbccbgcecbffcccbcdccfcfgebdofobccebdbeebdjcbcececcdecbfdetbbdcclbdgbdcbdmbksbbgbbdfcgbeffmfngbbehdjbbdnfcbebbcjbhdbibccbbbdhbedbefbbdbdbjecbbbfceedbghbecdhdgegbedgibcbcdcjccbbjccgeccbdbcgiecbbbhbdemcbbdcbcceccccbocbbdcbcgcdbbcbebbccfebehfcbbbffbbbbqccbeebcjbcebbeodccbbbcbdcbcehcdcbbecicbcdbfgcbchecekibbecqdbedbfcefcdcbhmfdfbccbfbcccecdcedcfccbdbbfdccfegcgbcjfjbdhcffccfcccfdcdfbbcebbdbbblbcenhbcdeeldbbbfdfddbbdbdhfcbdgbbdijbbdeeedbbdlbggcdbcdddgcbfbicffbccbccdbcebgbbbehcbcmbbbdbbcfkcbebgfbbdbccdcbcdedcedcgibcdbbcbgdbcecdbbchkkebcghfcgdbdccbccgbbdcgebbjdcccebddebhbgbefbbdbbdcbbbeibbkgbfeeebejhlbgfcbdsebbbdcbbkfcbdbceccbhieedbjecbkcbbbddpbbccbglbhcbcbcdfidekccdgdfgdcdchbcdgbbfcjdedcfbcebddhbhcehcecbefgebbbdcfccbecbccbcbbdbffcbccbbgbdbbbcfbgbbddbdigbibdbfbcmfbebdcddepbhbbjcbhbbdhndbbdfecbfbbbcbcdgcjfbhblebdbbbcfbifdeedbbdocbeececbdcbcdgbbffccbbbebbdgedccbbdbgdhfheedcbcbhcfcdcdfhbclhecbbebcbcbgbfdcccfdcfkjbmcbhgeececbegfdfccfegfbbkddcebdebbrbbbbgdkhbbehdbfeehbgfbeecdebebebbbbgbcdhcdceededbdfcbbbcdcbcdbbebbedcgbcebbiecdcbkdbecicccbdccbdcbflcbbecffbebbcbebbebcbidccccbfecdcbbcbeedbegbcbeebhccccgcdmbhedccgceedccebgfcddeifeecbehdrcbbeeffcccecbehcbfdbbbcfcdbdebebdbdjcbcbbcjcdcccdgfidddegeidbceecbdbchhckiebbzgcfbbebfgbdddbebbbdehbbdchebmcccchbfdcfhbcbcefjibbgbcjcdbbcebcbcecbbbbebgebgbedbbdgbbbcebecscmgcdbebdgbbcbblebhccdibbfbbdebbgbdbfcicdddbbjfibdbfbdcddbbgbcccjbbgbbbehbbbecebbddbbdbcbbdbcbmhcccebefcbhjefdbhfgefbbcdjcbbcjdbbbbfckidcbccbbcbcbcddjecdegcbbbcgbebfbebbgefbcbfbdjhignccchcbdgdbbdbiceebcigdjebdcdgdcedcbgbfbefdddiebfbebcccgbfcddgbdcbeibbbccbedbcddcbdhbfbbhbcgbbchbecfddifbkbcgeddcbhcfegbcnbcdbccbfhfibgicbegdbbediedbcdcfcdbbccdcedkbbebdehjfbdbbebdhebccdcfceepcgdbbbcgfcbmiebbxbbbeccbbdcccccbvedeeceemccbecfebfcbcbmhejebfdeddhhbfibcbbhbbhbbebbnbbbidhmfcfffbcecjdbdbdfceedbbedfcbbdcbbfgicfdcbcbgdfbdfcccdfgceccejcbedbbocdddccchbblbedfcccekbeibkpfbecbedbeedebcbbbbcebbldbkbbbebbhdcbghebddgbbebbhdkwdbedjbedbbededcbffcdddbcbcdcbddbcefbeledijecdjdbeicbgdebecbcbhdddgbcbccechbecebcfdmccccdhbbhcfecbccedecbgddcdcecbdcpcdebbcdddkdddcbccecjcbhbbbbfjeddcbbddcbfcdbccdbccfiedfjdsmhcbdcidicdjhcdbhllebccffbifdbcbbjbjbfjidfdgcbebbgecchfebhbbdbcddbedccgbhddmedcfbbdefebbecjbbkddibcmgedbbdecbggcibdbbleecgdebeebbbbcdchcdfbicccebbcdkcfebdbbbdcmdbbiiceebbhfibbdebedbbbfddbbedjhbfefbeedbcheedgbfbebcfcecfcbbbdbefceeeccdbbbcbjddgbcindffccbidfhbdcbbhdcjnjhehdbbbcfbedfbcbbidbbbbjbccdececcnkcrddihccfdcdicccdbbdfbgkdcbiecgdikcsgdmnbcbdcbceejbbcedbbfdfbdnbdbbedbfcfscdbffebbcfdilbecbiodfcbbfcfdbbehdbhcdbccfgbbjcfbgcccijdccbicbcDebdidgfdclebbdbhbfcdcebbmdbhihbbdbbfeldddeebbbgedebcbbehebgqbfdbgdbdecgbbbbdhcfdbgfdbbdbchdgcqgcbccbdbehbgegbdebcbbdbfcehdedhbbebccbcbbbcebbdbcbhbbbffccbddbbceedcdcbbbbcbccdbcgbbjecfbfbbiddcdcdbddebbcdbdemddmerbcdbbhcccdgddbcebkcdbbgcfbecfbcebdbchgbedbecfdldbcbffbcdbbdbeeddcbobbcfebebbbdfbceccdbbqfecpbcbcfbccbcfbbdddckdfcdfidcccbddhemdccigfcbcbjbbbcbeceibcblbdbjgccbbbobhebbbcbbddgcbegeccbjdgebbbbbdjbibehcedbbgfgejedbhbsdfbdbmccdbdfgedbfbebbcecbbjbfcjicehcbchhcjdedecbhhcibeccbmcbfdbdgngbccdcbbcfdccbchblccffbffcdjbdbdbiccddbcbdbcdcdbjbbcffbbcbccbbbbbbcckdgefbehbebhbbdhccefckdbidmfbfbieewbbbhbbbfcdehccbdbcceebbhddfebccbcdkcjbcdbdbcbcbbdfbebcdeddbhccgcbejdcijebbdbbccbdeediciceccdbgdbhcbncebbdebbghbebbbbegebbcdcddbccddddbfdccedbbhpcbddbgbgbcbbbbdebddhfcegfcbbfeddchbcfdccbcjcdjbbibdbceefbebbhdfjchbkfibebbcbbbbcigbcigebkdebbdbbdcfgbihidbnfhdcbfdbcddgnfecchffccbbbbhedccibdbkecbeikbbclbbddcdhfbceeicmcffbcedfbdcfbcfbcbjbfdddgbgebcdfbecbjfchfchkccjidcbddcefbbddecbbdiccdcgbbeldbhbecbbecoideeccdoecccccdgccdddbebefbedbdgedfdbdfbdehbgfhbfgedbcfcbblbccchehdbgkbgcckfbdibbbbchfbcgebbfbcjbcdbfebchbcbdbbfdfbbbhcceccbbcbffecbdbcbbjbbfdbnbbjcibhecddbeddcledfcbmdfbbbcebeodgideccdbcdceldcbcbkdbebdbbbdbedfcehcghicdhecbcckbbdbcgcbbcbbbcccbbfdcmccfejfkocccfembdiddcjbmcbifbcbgcjbhcbbcxdbknbbcfbcdkddfedbkbbcecgcecefiebcceccdbbdfbdgececkcccbdjecdcrdgfdedccgbibbbgcbccbbdedbihdbcbdcbfeedcdecbekdcjddhbegbdcbgedddbbheibbbbbecjbfedbbffibddeedbjdfdbbccdcbbbdcbgbbdbwbbbfeffeibccgfbchfhbddcdmcbcbdgbfdcbdddefbdcbebbgbbccdbddbbdbbbfddbdhbbdbfdgccdkebbegcdgffbfbbbbcdbbecdbedhcbbdbbbgdfecccdilccbfkfiefbccgbjcbbdgebbcccdkbfbdflgecfcjbjcbdejfbdcnecgdbbekkkbiibmbcbbbdhcbgbccdbchbbbdbbjcgbebfbcdebeddodbhdfhcbcccccbbbbbedffbbegdidbfecddbbbdddbdbbcgcbbgbdcceccbdiefedcdbehdcefedcdbfcbcdcebdebbcddlcebbeibgcbbdbbfebbbbdbcbccebqcebdbexbgedhbbdebdbbeijbjihdbcceccbecfdbbcdcbdeefidbbecdcdebkbcbejbgejdbffbfbcbcbbdodbcbbbbdddbbfdcfdebbfeofbbddebieddbmbdbhbeddbfdfcfecbbbeeidihcckdefbbbcbfefbfbcbccdefeddefcklkbbbebbbcdbbembfbgbcbegibddbcgdbgcdiglbgdbfbcdcmecjbbdblbdbedclelbgbbfbeedmcgbbgcbbfcfccbfbehgbdfdgeccfebchccbbddbbbbffcdbbbdejcdbnbcdbfbfdbddecgdbchdebcbeebbfnbdfgcfgddedcccdbdlcchbhedddfidcehdbbbccbcbhbcccjcecgdfdbijefhgebbbbbgbbbbfdfdbbbbekdgmbbdcbfcbccbbceemebcccbbfbifbccbgfjcebficdfbdbehficcgchhdbdcvbdfbbbccbbdhcgbgdicbddgbfgejbedddcbccjcbcddmcgbffeddbcjbddcdbddjecdcbdbfbccdghebdebhcbccbdbcfgebbcbbbbbbecbgbffbgffbddbbiffbcebbcdbecbbbbbbbbdgdecccbiccfbbncecdceggdccbbdebbdbdkgdbfbbccddbdlbebdcefjccbbdeedcbcbgbbcdccbcbdcbbebcdecchgfgchbbbbcdcebbbccdcdmbdchcdbckpbdmlbbbcdfhncbdebblbbedcbcjdhibgcddcbbbebcgbcbeccbbkbibcfbfbbefbccdeccbbcbcgeheddcedbeddlbkfnidgbcbffdckbnbbddjccdbccbbbejedeciliclbbddbfdbbcbbbbjdbfddbbdhmcdpbbbbebjbcebccfbclccbedbdlcbddggbhfhbcfeebgcbbebfccbbidccbbedebccgbbgccbdicbdbhmmjmbkedjdcbgbbibbcbecbcbhmbibbhebledecbdhhgbhchhbfbihbbhifdgdlbflbdbcbdfofbkebbeedcdedbcbbcdebbbdcbeddiedccdfbbbbdbqbfbefbbccgjfedlcbbbbbbdebclfdbdmcccciygdedbccdcbldldbdgbkhebbddcbbcfgbbbjbeedbbbfckbebjbfcdhcgfhbdbgbgcbcjbjffffhebecckbebemckdbebebdfcbdbbdidbdbdcbbdbbbcdcgbcdhbcgccddcedddbbhebdcceeffclbcbjbcbbfgbfccehgebchfdbbdcecccebbcceccgbncfbbccccbidcdibecbdcbccbcfccfcccbcgcbbcbfbmedgdebechhbfbdbcdffdbdfebccbfibcvbbbhchbeccdedbeebccihbgebnccedcbbccckedcbbbbbcbbbfidbcbnddgbckecffbbcbecedebbbdcbcdfdbbccdccdfebbcddbdbbcbbbbcbqfebdkdbcikfecbbcdbebielbdfdchdcbccdcbbhbchfbcbcbbbbbeebcecchbfcbbfimddchdfcbbebcbccbdbecngiffdchbicjjhbkcpbcbbcbhbehbmdcibbbbgccdhbeobbcbbcbddccebffbbgbbebboecbeejggcbbbdcccfnfbedbcbcbbbcdcbbgdebccfbdbcbdcbchebdbebdbbbedbfbbecdmccdbecbcfcbcdbbcdfbcdbfcbfbbfhdbbbcdgfgccbnbhfibcdfcibbbbbccfgclbbeffghcfeecgcchpblbcgbhgbecfhqbccccgchebdcdblcebbedccddcbccbeccdcdcdddebldfbbiffffcdcbcedeccefihbcgbbcdcegbbchbbdbfbcccbbbdbbdddidbcbcdbhcdfgdfbfbbcccdbiccbbmbfbccbeifebbdbbedidbebdccddechbceebebddcecmcbbffdbbdccbdegcbdhldcddbbbfhecendbbfbcbdbdecfcddcbdkeedjbeichdcbccedjcgibhcheebbbbeeedcefcbebcbggbgmbeeckcbkcbbccbibfdbcfdcegfldifbbbcfebccbmbeflcebcgbbgdbbbdcffijiflibecjlbcbcbdbcccbbfbbdfbfcfdcjhdcbbhddfbmbcddtcgbbbcemecgcjgchbgcdbcibbcdebededbbcccbdbbbebbfnbcghbbbhebbcdcbjbdbebjddbcfdcbbfdfcfcbbbbbcbbegeeteeccbifbddgbbedbbiccbebcgcDcehbdcgdcbebbbbboecccdccbddbcbbebcbecdbcbcbbfcscbdcccbbbbcbhdbbbghgccbcebdbbgefdgdcbfdhbbefgbgceehcccdbciebgdbhbcbdchgeheidbbbcebbbbbbbfdebbhbbrcdfdddfcbbbbbfbegcembdfccbfcdbgdccbbccfbbbhdeccbdibceffgbcdbcelcfcbbgbgcgbbebddchfdcbecckeeegbgbdclcbbbglbbdfcchggflcbecbccdibceecbcbpceecfbnbfbbdcgbfbdmhdffbdebebcbcefbcbddbcdebhbbecddbbdcfbgebgbbbdbcdbcbbbbcdbbiecegekcggjbdbddddkbefedhbcbddcbcgbbijehdbdfbdckdddccjbbbfcedddbbecedccbbbdbhficefbfbefhbceecdefgchvidebbbccdbdfcbccefcgcbclibdhcccbehcecbdhbccejddhdfdbfbebbbbbccbdcdccodcebeeddgccebcjcebfebebcfdbdcckdedlbedbbbiebecjebhdbddchbhcbbbbbdibbbbhbeechccbbkpkhffcbcdbcdbgdbecbbekcdhgbbcbchdbbdblbfbcgbbfeccedbbbberddbfbdceecfccbeecbcdbccbhcbjbbdhlbdbbegbedcbcbebbcgbbbecdbegbcebbcbcdbhbbgcffobbgcbfidbehdgbcbfbffcdecfgbffhfcdedcbdbhcgeccccbbccfjfbjbddbbbdhccefdhhfedffcembbgcfnecfebbbblcdcjdebcbbcbbbbffiddccefdcefbbbgcoblfdbdjfgbbbcnebecbbbbbcbebecdddcebddbbgcibcccgcbbhffjciebcecbbbfnccfdbbcdbdebdbebcbbcdbbfehfffdbldbbbbechdfdeccgfhccedbdicbdccfbddjdbbcfdgbdibdbdiebcccbjbfedcbcdbfcddbdbeckbedecebbdbcdegbbbdcfecdbcbbccckfgbgbbjcdcfcibbdbbbegecdccdbbbfclbdecbbcfcbbcgccbddedbbbcfbbebcfcfdccbfbgbdcbbbcbkbcgcbebehbeefdbdbecbchbhbbbdbddhdcdebebibhgcgefbddbbcfdcbbcfcbcbbcbddfcchbhtefcbcdbfcdbcjhcfedcfjbefdhcceccbccbbdbbebbffdcdgbcbcbgifbbbcbccbdebcebgibccbebccbfcccjefedfbfbcdccbbcbdkdidbhffdbcdbdecdcbbeebbhefbdkbcbedcbddgcgfccdbbiybkedbdbedbiccbcbbceeeccddlgidbcdccbgbkbdccecgfccdfgbbiccdbbcefbbchebdcddbbbcecdcdcidcgbhbdfbbccbbdfbbcbgbbblbdcgbbcbmccbfccdedbbfbiccdehbcicbbcdbcbjheddbicddcjndchhceedbhbcgbicgdbhkqcbidhekgdcddhjcddfdbfebhcfbccbedddcbbebcfgbcbbccbccbbcbedcddcbmbbebbgbjffbcdcddbgccibcdbcbebbbcdbcbicebcdbcdkdbbckcfcedebdbccibjbccbbechbbebbbbdccggmdsbdefbhcbccbbdbbdbhfedbbbbedmcbcbbbccbbcdbgcbbcgceccbbcecbfhdcfecbbfeciebbdglgfhbcefbhbfcgdgbecbhkedcfbeheedcdbbgeeccebdbbgbbbbbmbbgecbbbecnddcebfegfgdbbeccebccdcbefgbfdcecccregbsbecbbcdbdcjcedbdbcccebdhbgjhdkcdgbbgebcbcbdmbichfdbcfcclggbccfgbbccbcebgcccckcdebdgfcjdbgefddbbeegbdhgbcckbddbdbgbbdlcgbkbbbebcvbdebhbbcdgeccibedbedddcbbbcddvbbmebejieccbdcfbbcbbedcdfgebjdeccbcebcjbkdfbckecbgxblbcceebchebdbdcbccidbhbehbdccgbdbjpbgbebmjdeebdegccdgbdbfeeogjcciddbdbhcbeebcffejicbbbbgiccbebbfbeceebgfbbbecehcfdbdeigbchbcbbjdcbcmblbcdbecegdbibdnbbbbhmdcdgcdcdeebffchiddbdbcfhgebccccfelhdibecncbcccdddheccchcdlbbbdbcebdebfcckeldgccdgcdcoeffhhjdhbibfbhbdcegdebbbbebbfdbehcccbcgbecbhbbddggbdbbbgebbbeegbbcbbbcbbebebdcseegcbdcbdblcbceebfbdccbgmhccbgccebkbdcdccggbccecmfbbddgdhcfcdcccjddcgbcffbgccfeccbbjcobnfghccderddckbbddecfigbcegeblecibdcjecfdbfbdbccbebinbdckdeedidhjbdebfdfgdcbcbbmfcbcbbebbccdbbbbefbjddcdcdbbfbdoedciebehedkdembbcbdecfbomcchbggdbbedhbccdcgebdcbbcggihbbbkhcdeehbbbeedffhgsbfkdbbecdkbhbeddbbegcdbdcddfebomcljhjecoiecjehbfggbhdbcdcbfeckeebcdcmbcfclcdebeblfdcebbfjcjbdcbedgcbcbbfcckcbdhbfbicbhcifgccdcedbmdbhbbccbdbebbdbbeedffbbbcdbchhfdccbgbebccbdbibehddhckemgdbbhfcbdjcbbbbdcibfhbdcbbceeedeccbgfbbbdbcccddhbbcbbdbdcccecdbbbcbfmejcgbcbbfbfhbbcbffchiebcdjbcgfcfdbfcccccilgbcheeibdfccgfhfbbddbfcebidgddgchbbebbcebddhgbbccdldbiddlrbbbchbbcdcddmbbcffbdddcdccbebfbbfcbfcfbebccccbecbcbcbcbchbcegbbbbifbhmgdjbidjkcbofdbcbcjbcdcbcccfhdefbegdejcbblbdeebbbdbgidgkceiemjfbbbchebdcdbbbbcdbcbccbdbfbfcebcdbbdbccbbbjmgcbehcdkchdhcbbbdcbcbcbfgddblbbbfbbeddcbeibfhdbbflndbcdbbcbcblicfgeqcbcdbeedfdbbceebhnbdcbbbceebdhbfcigdccicbbedgigfdbbbccedcchbebbbhcccgkgcbkgbgoddccbhgcfgcdeiebeqedbcbgeecdcdbcfbbcdddbcgdbdmdjbccecdbeecdhcbbeicbfccgdbbebddbbbbdbcdcehbbdbbcbbcjdceddbbbfgcbceejcbehedcbbedbfbibbgsdbehbcbcbecelbbbebchibdhhehdbbbdcbbcdcccbbijbchdfcfdcbcgdgcgddcbnhbebjdcibfggbebicbddceclcbcccbbecfebebbbbcbbfdcecdgccdbdcejcbbkcecdbdgedgbdeebchbdgbhbnefbbcedebebgfcbcgebcbbbebbcebbdfbecbbedbdccbcbfbbeccbccfcfecgbfdbdccbceddcbcbchcebddbcddbcefcdphbbgdbcbggedbfbfdbbbfgbbebdbcicbddbbcfgbjbbdcbbdbbcbcbddbcjbbbbdcrbibcjdfbbbdgbddbdefbebhfbbbicicibbcgiebdbbgddcbbeccichcbbbbejbdbejdfbdgddcddbbcddbbbeebgcdedbgbbbecbbbbjbcdcbcbhdebfefbfcbhbjccebdfgbecccfecfbsdcdkbbbcbbfdeeddbfdbcghkgfdbccpdddcbfcchfccddebdbbffcccccbfbbcbechccefhcbcffhgebecdbddgbdcbchmcfdbkgibececfccdbbbbbcibbfbbdnjebhbcdbdfhdbcebdeobbckmddlefkcdiffebbfcebecccgidcddblcbbgbcjcdebcdclcbcebcbcccebdbbbfcbeghdhecgbdcbccebbiddebbbddddjdcbbebgcihbfdcbbjbfccfcbgebebkcfebblcccbebcbdccbehccccbcgbedddbhjbcbcbchbjdgcdbdcbbdfbecdbfbdcgcfdeebccccbdicbebggcdbebcbfbfbbbcfgfegdfibdgbcpccgbbbfhccjcccfebdcebbbbbcdbdfbkeibbbecdcbbfbgfdcjbcbbbddbgbeecdeebbebcbbbbccgbbchcbdbbhdbddhbebcebhddjfbbcbnfxbeebccbbdebbhdcghebbdobbfbfcbbifebeecjbccbbdbdbleodbdbbchbffhcibbfgddbcbbkecjbccddbkbfbhgebcebcdeiicbgcdcgebfccegcbcblicbbbhgdkhicgdbdddccigcehdcddbbcbdccgbdggfbbcebcbjblbeebcbebbbbgicdcbedcbmbcdcdbfeddcbcbidbcbecbgebcdebbbdrbbbgegfbcngddkddbfbcccbbbbgbgkcdkgecfdcfchbbdhbbdddcfbfccbelkbchhbfcdjdjbcccdcifbbbdbdcbbbcbbgecbbbbfbcdobecbdldcbjcbcjidcfffbcbbccbdbbecbbgddddbgblbefhbcdcebcbcfbcccddbeccbefbbdeccefbbdbeedcidcdmcfccbdciebcgegonebcbbcbfbjccgjjhcbccbdjbhebbhidbccbbbbgbbegbbdcebdddcbbbeddnccebdbdbhcebbdbekbbcdclcidcedhcdceddgbcdgegbcblbkdkffhbfeefcbcebchcebfbbidjcbbdjcedlbdgcigcmbbccbcgdeedbcdbcfbbbdmdqjdbcjfcbdldbecbbhdbcbbbfebbhdbhibbbobcedcfcbcddgbdcgdbecfdbdbfbbfdgdbbmefbcebbbbjdcbcfbccbdhddbgeddccdldichbfbbdbhgebccbbibbbbcfheebcbbbddbbdccffcibbbdecebbcbbdcbcefegbebcbgcbleegbceedbfbbdmbbcbcdcdbdfbegccgccecbebefbedbddbbdpccccddfphddbeedffbdcgjoieebbfcibeebbeccbeddcdddfbefdbdedcjbbbdbdbcdcddhbchdfbcjfbbfccbdcbcbdihgebcbbcdcbbddcibcbcbgdfifbcbdbdjbbdcbbbghdbcbcijccbfbcddkcdbcchbbcbdcmbcdbbfjbdbcffegecdecccfdccdcbdhbcbdfcdbbbdekbbebjcfbbgcbcbbchgbccgfehbgmblbgdjciebiecchbbbfhbechccibbbbgfbbclccbkbcefbdqcbcedebdceceeebbcbhcgbbecbffcbdcbbcbmkbcbhbecececebbcbfbdebbdfdcdghcjfebbdbcjbbedecfcdbbcbcdfbhebebbeddfceefcfbbdcicbeedccecbcebrcicececebbcxkbbedbccleebccdbccdbdcggbeibcebcbedbebbfbeebccccfqhccbdcbfhiccdicbbjbhffbcdcbbbbedccecbececcbcqcfbfgceffgceedfcdbbcdbdbbbedbckhcdccbccdecfgbhibebeocbcibdbeccbjbcbdccbdhcbfcdcgcdbbccccicbcdbbfccbpciccbcbbcbfcibfdbcbbcfbebcbdcjebjdbecddbgjbbeebcbbbcgbdchcceebcdgbccbgfbdcbcheecdcddcbhhgbddcgbchecekfcbcegceddebcddebbegbcibfbcbbebbebbecfbcgebebbfbdcgcccddbilkbhbideedbfbdbddgbblcbdceccfbbedcedcfbbbcbcdbfbccbdceciiccbhbdfbfcecbccdgjbbcceedebddbbcebmddkffbebdkbdbbeccbcbfdnckbcccebbhdbbbbbmgbbcgfbgcbjgebdcheblbhqfdeebedimfccbfeeccbbbeqccbcbdcbfbbbbbeedfcicbfcbebbedbhbbebfcibddebchffbbbbbbbbcdebdedbvbbedbedgfdebcktbgdddfbbbbhhcdbbcdebecgcdcibfbchccfccbbhhccfffibcbbccbcekncdbbddbbddfebcdibbkbfddeedegbbbdbebddcfebbefccbhhqgbdgidbbcgebcdccccbcgbdidccefbfebcbbbccdgbmfbcnfbfgbeknibdbcbcdbbbcbbgdpgdddcgdbffdobfefebccdbhdbbibdibiejbddkdbdbcccdcbfhebblgbbbgbcedcchcbbddbbcbfbebcbcdebchghbnlbgehbdggdhdcdbbdkhbccjfcfdbdddccdhbdgbfbccdbcbjbksbcdcddebbcbeefbcbecedcchbbbecfdibddcbfccfddhhbebebbibogbcdgbbbheebdddbcbccbddbcbdebbbbbbdidbbegfbbdbgehdbdbeblhbkgkeghbbkfcbebbbbbbbbbdbdfcbdbcbebcbdgebcbcchcbbbccbdddbbcbbbibgdbccdbcbcbgfccdcijbbcecbbbfbeddgjggdbdgdkdbeecfcegbcbiecbccbcebndgcdefdflbccbhdcdbcbhbbddbdbccdbbbcbdficccjbjbbfdjebbegehddchcdcecddccglgbbbbobdbbcdjbchddbddidbeedicbfbcfeccgceffdbbecldhecbfchdggcfcbdebbkcdbbbbrdbdcgcbcbbihfgdfidbcddfbbbfechffdcffcjbfbichecbdbggeccdbbeedbcdcbbbcejecebfbbchchbbbbejhdccbdhcbeebbbebecbebccbcfcecicbbbbjedcfebdcbbccbbcbbfbbeccbcbegejideebbbggrccbbbcfcbclbcjcbbdncccdfbfcbiccjddbbbbbgecflccibcedbbbgcbdddeckbceibdbcccnicbfcdbbbbfdbcfcbdccdbddbdbchbbbkbbfbbecbefdfeeeecgdgebdbbgcedegbbebicficebcbfcdbbcbdebbccdbbmdcbcddfcceddfgcdbefcebcebbgehdbfebcbjeebcbcjbcgbbbdcddebbbbedlcdjebbcechkegfbhfccdbbpcgbbbbhbcefefgbbbbbddbdgdehefbjkbbbfebchfbbebedcidbebecdicdfdbddcbdbcccdbddfcebcfbbeichkkfcgbdcbbcbbbcbbcbbgghcqecbjiebccfcedbdebbdbeefcddfhbccbhdfdrbdfbcebbdhbfbbhgbbffmcbddfdcbedfbdebihdgcfcfbcecebocfgehbcbebbcfcbbhcbbbbcdcccgffjbfcbebfbcbbbbchfccbfbifcbkbfdbgdjfeebcnfnbebfbcdbfbhcccefebbfcbgcmdkdbfcjbfbfccbdnedeccccicgdccbcbdbebbcfdcclbbbbegkbccbbbcbehcdffreccdbbcbfbbbgbbdhchcbciidcfcbcbclccdbbdebobbbebbembdhdbbbddbjbececcbdedgddidebcbhcbfdddbbcbffcleddbccdebhckibgcbbjcejfechbchbibhcfbchbcfekgicebecgbbfibcebdbrjccddlhcbcggcbbhbbcbeccdbbgddcbbdlcfciecdcbbbfbfeebelifbefbcebbcecefbhebfbcbbdebeeoblcbebgfddgbedbbdbdbbdegfbcbcqcegbcegbegdeiecddhcecmcdbdfbdbfdjbffecbbegbcegbbebbccbcdbdbgejcdccbbcbbbdkbegbbcdebdbbdcddbbdbefbbbbcbbdeebdcfbbjgeebbdfpcfbfbbbchdckbcdddebfmcdhcdnbgifbgbbgcdgebcfbplhdenbcbddbccebcbeicbcehdhefbdbidccccbbeddfcdgbddhdchdeccbfmgbbbdeddficeeckbbkdhbcfcjbbccfdbdbbcddbccecdcbdfdebdhcbbddbfkcbffddbefbccdbmbbbbefebcefglfcbbggfedfbbbbjbieffcccbhcfddddfbebeedcdcbiccbbbeedcddbbbccbkredecbbcbbbehbbdhcibehbgcebdicecbpbcbiccegcbiijbcbcebbchbbbddbbbbkebccebdgheibdfcbfgbldcjkcccddbedcbbgecdbeocbbddbbbgebccccfebdbhdeghdibbicebcjbecbdbccbbbencdcdcifdbbckbbcdcielbgcbdlfggbecckodcbbbfdcdbcbbdcbfbgcbiccbgecbbebdbidjgbeddcddebcceihidebgcddcbecvcclfbfccmdpddogcdgbcbbldbdeffbecbmbjdjddfdgcccbedddcgedfcddbbmfbbcdddgcdcccgcebdbdcbbcbebdcbbdehcdbccbcbebbhfmddffcgbgdbbbecbfbbdbcbbdebgedbcjbdlebccclfbccbcibcfcicbfgckcfcfddbbgbccbebcfbegbbddibbecdididbebbccgdccddjcicfhbbbcbdbbebclcgbbficcgbbdfobdcfedcckbgcdbmbfbdbdecbbbfcbcbbchcbdkdgebccbeedbedbbbeehzdbccbbfbddbfebfhdcfcbhdglbdceccjbbebdcjeifhdedfhbibdbbdebbgfbbgdcgcisedbbbebccdbcdbbcbbcgcbfcflefdccdmebkbbbeidbdfcddbdebceqceebbefgcccegcbdbcbbchbbkccgbfchcbcbqfbbdedfbddbddffddgbibfbdfefchbdibebhefbbecdbcddcfgbcobdecbbgbjgdhbbcgkccfdbbgcbfbciccdiccfebbddbdfhgdbcbddccgbbcddcbdcebcbebbcdibgdcjicbbchdceehcebfddccccfbefdebchbcmcchicdboeecbdcbdeddgbebegbbbccbbccbbcjbdbfedjhdfbjgebfgbdbcdbbhbfcgddddcebdbedbbbcccegbficchcejibdceefkjbbcgdddbhbjebcdecbfcbbhdbcedhcefdfdbbegbgjfgfddbiedbchbebefjbfcccdhkddbbcebfdbeccgdmbbbbhcbdcbbhcecccgbceibbqbicbicbbcdfbbgdbbhedfbcbbbbfgdecbgbcfhblbgdddfdjicbgdkcbgfdbbcebegbcbbbcecfdbbgcgfcebhcbgccdbbbhbbfdbckfdccbbgbbbbbcbcecebbbbgbbbebfjbecdcdbkfbbhfcccfbdeicdliccbdfccbcccfeeedeebbcbjbgbgbbfhigbbbebdcbbddbfbcmbddbebjfcchcdfbfkedccbdbioccbbbeeccbfkceicecfdbbbcfdcebdcgdbdcbfdfibdbbddcbbgccjhhiddebelfnebbdcqccpfmfedeccbcbdcddegfdycbdbcfnbmcdbbcdcdcebbbbdcbkebebedbdbcededcccicbicdfebcbdhebbeededjcgbefbcebbdkbfebcbcecbgbfbbdbechceccfbbeccddefeecdcbbcbbbbcgebebbedfbddeeccggbdbcekdbbdhdfbbbblchcfbcdbhdodddcbebbbfjgdcbhcccbdbcbeclcefefbdbcccbebbdbbhhdhbebfbbbkcbbkcgbccbbfbbdhbebbcbdfibfbdwbcbefbbecfbjbdbfccbbbqdccmfbcedbhcdbcbhcccbnglcbbfdekbhkcbbccbeebbbbbdfdbedbddcbbbcclbfbbdecffkgcmdfcdbbfccdcdcccebdddbbdfbifbbdbffbfeibbcbedbebbbdebbecebbbbheicbckddbgfchbcbfebdcbbcdcbbebfccefecbbebcjeebbbgdedgeccicdcfdcbbbfbbecbceheedcbbcbdieeedbifcfeibifbbbdebibdcdcbfbccebchcjcbdkcbibdbbbbbbdedegfdbebhgedbbfdcbcfbbbdfbgbbbbbcbhebfdcdicbdebebcbbccbijbbbbcdckdgccbcbddbbccbeebbdbbffbegdfbfcbbebbcebbdbcdbbecbcbbnbbgebcbggidecbebgbffebfigedebehbgcgcecbbccdhbjbbcbdcfrclbihbdebeccfdccccckcdcdgecbfbkbgbbccfdcfbbbdnecfbhbccbebcceecgbcdidbgffdedebcdbdcbccbgdpgbebbebdcddehbccbcbecedcdbcbjegcbbhfbegbgebbclbbbcdcfdbecccgdbccdpedgchdebedcbecgbegbcgbhbfdbccbbdfbgcbcbcbbfbdidbdcdchbbbbebccdbbbbdfcdhdhcdcgodcccefcbcbccecbcfbebhdbchcbicbbgedefecbbcgbbebkbdbdmccdbfcdgchbdbbdfcgclbcdncdbcobbbebbcbddcbbdkbcdbfpglfcbbccbbcbdffbccbechfdeecccbgfbcdcjcjdfeddcmcfkbfhcegbcgbgihbbedccbbchdbbbcgbbdfmcpgbcdcbgcfccbcccbcbgechedbcledcedbfbfbjecedbbfebecccjibddbhkcdebebbdcbdjfgclfebckehbegbbcbckbgdcdfbgebbdbcebeehdbbbddbcbdbdccbdbkddebhbccbndcccbgbfecbbbebbmgfdbbddcfdcbjdbdjbcbefgbcbdibhgbddkbbbbbdjhhkeceboceccdibcfecdfdcdcbcbfbdbdcdbbbbhehbcccfbibdcbbccgbgcbcddebedcbdbbccbcccbfbgjccifbcbebbedbbecbfeebgbccbfcbecbbfhbecbgbedfcbbfdbpdfkecbccbcedbhdbblcbeeiccddciccdbbecdcebdebecdbbfhdefbgbdbdbfbbcdedbfdhbcciidbbbdbqibbecdebfbbiebcbccgbjbbdccbcbeebcebececbcbgcchdbbdcebcmcbgtbccdedcbbbecbdgdcbbdcbcbccbfjbcececgbcbbfdbgdbdebbcbcbbdfgdbhcfdfbfbckcfffbbcjkgdbiepeedfedebcbdbbbcdbdccbgfhbccbccbfbbbebbdcebceqfggbdecedccgdbbdbbcbbgdbegfebibbdcbbcdebcegdcbdldbhijhbbggegbchhcbdcbcbbeddcbdbicfkecbfcbbnbcbhjbbcbbehebcbbbbbdddggkdcjbcccdececdfgjgdflbbbedcbebcdfeeggbeeefbcbbbbdldddbbjfbbccccbdddbbdcbeebcbfbcibgfbeebebgbcdbcccbfdfcbbchcbfbcffheiggqbjcbhfbbdbbbcdicbccbdccmbbdbmebbhlmffbccdchicfcfcbbbbefbbbedbeebccbcbbjcebcedgbddgcdfccbdcpjfdhefbiegbnbdbeceekccdeccccbcddehbebcbhcgbdcebhdbbbbbbcccddedenlbbcgbccigbcbcbccdfbbchhbbcclfbhcgbdbdefbfnqdcdkebfbgecbbcdifbdbfdfbccbcebdfkectdbdcdfbccdbccbxddbcddfbfbbcdhgbkjccgecdedddecbfcbdffidcddbbdcbbcbbedcbcbefbbbcebdbbcbdbbbccbcbbbbdcfdcedceccbnccbbfclcbcgbdcdlbcdddddcbbbdbbhbdbficddgehkgcbbdbbfhbbfqbcdbdrcbbfgedcbfccfebdbfbgcfbgcchebcbcbcecddfceebebfbdcbdcembgbdcfbddbhcbccddececlbgkdobfedeccedebccbbdfgmdcbdhdbbbbfbdjgeichicdlbbbcbbbbbcgdbhccbbcecfcchchebfcbgbbbfdddccbibccddebccbcbfceccdbbbbbeejgecbjbbbdddcbficdlhbbdbbgbbbbcbbicdgebejbbbeedjbbgecfcbbdbdccgbdjbefecdfejibcccbjdjcdgdgcdiideeccifclchfecbcekbbcdffbeebdhbmeeefbcbjghccdbciecbbbcbeccbddbbbcnbdcbgbcbbecfcbebfdfbhnbbgbgceidgdebbhbbeddmfcfdpdebbdfbbjcbbjcefccdbgddccgbbbbcjdnbjbedflncbfbibdbgbcbcbdbbcbbgcdcdddcccfbebcbcbbdcdjbedbkbebbecbebjbfderddcdbdfdceebedhiegcicgbecbecbfgbbbcbdbdiccrjccgbbbcfbeedccbcbbebfebcbbibfckcbdbkefbgceccedcebhdibbdbbbbeeeeefbddbdjnbbjgcfbhdehfbfnddecddbhdebcifebbgbeccbdcbdbdcchbbfbbcdccbebdgdcjebbccdsecdecdcbbmcfbddccbcbbdebcebcccddbbeibbjcghbdfbbmdbgjebejbbeccfccdhffcbcgbbcdjcfdkchdgbcfbbbccbbcccbgcdddddbbcbcebbbbbddebdiecbfefddddncccbbbbbbechcibkcbefcddgdcbcdbdedbchbcccgcbbbebcbedbeccbcbgddcbedfbcbdebieebbbhbhddbbibbgfjfegbbbfdnbebcbchcdcgfcbhebbbdecbgcfbefbfebddefccccbbfmgcbjcbdbgbdmbebfdhhedegdcbmceebcejfcbebbecddcebbcmcddfeckbcfmbeggebgebcfficcddbcgcedbbdbbedddcbejdbbcdcgcdbbdhbdblbbbcticbbcbebcccfcdcccdcbnbbfebbggbcbbbbbebbbcbefdbdfkcbbbecdffbcbbbbcgebebccccbecccelcbkigbcdecbbhcbjbficcfbfdcbbffbbccbfdbcjcicececdhejjbgihdeedbcbibebfbcnedbdcbbeEchfbjbebccbbbdfddbmceenebbebcibggcbfbbfbddhhccdeubcldfecedccbbcekejeechbbfcdgcibcbebcifegbbcgicflbgfbbcgbgbibbbeffibdccceccccbebbebfdffbcbdbdbfcdfcbbddebbbccgdbbdfeccigbbbefbbdbecbcicebdcfbccgjdfgdcfbebcdbbbbcbdfcfcbjcgfbfbcddgeibbbbcbfbbbbeebcbgfbeebfbbbcbdidbbbbkbcdbbbdcdecgdbdbeecbbcdcbbbbbbkbkcdlbbbiedebdbcbembdeeidlegedgbidddlcbbbhebbcbbbcdcbcbcbfkbbcfceicecddddffccgccbdbbgcbdebbfegbcbcdbccccdgccbdgddehbdgibdjbcicchbbhbcdcbbbfgdcfjjcceccbdecfbchcffdfcbbbebbbehbdccdfcbicbhcbddifcbbpfeccdbefcjebebebccdifdecgbbogcgbrgkdddffcbdfkfbcebegbhbkfbchfdfcbndbkdbbpccdbbdfddjcdccbbcdgebbbdfdndgefgbbegcbbcbbbcebbiddlhbcdgbgcbbcbegfcdcdhdggbbjgbeebffbbcbcibdccbbebcfbbbcfbesdchfbkeehdchdddbbfbcbfbfddggbbccccccdbfbdfddbccibbbfbbiibbccjcgbbchhicbbbdbbdbbbebdddeedcfbcfbcbbddeccfddcbgbccjeibfbgbecheebegdcbcbbbcedcbdcecemgjebgcdhbfbcdbbecdbecdfcleccbcbbbcdcfbibbdbifdddcobdccddbfcbbdbcfpgebccbcfgddcchfdcbefcdcfhdbebchbghbbcecdcbdcdjbbbbbbbcbdbegbbgbcecghbbhcdcbbcebcbbbkcbcjcbebbcccjlcbcccicjbicbbbcecbcbebdcdbcbdgbcbcbhbegebbbkebeeibbbbbhecegfcgkcgbdmcdbbcfbbdbbdbbbdebccbccdcbmbccbmbbdeebccfbbdbblfkccfbcgbfbdccjbcebjededbbidbccdfdhcdfdebcdckccgcbcdbfcdcbgbddcbcgbbobcbdcbfdgbbbibgbbdhjbcccbibcblhcdcdbwbcjbcfehbbcedbbfbbbdddcbbhdbdhgbbbbdbdbdfbmebffbcchdjbgjbejeefbbccfbddbcbcddbbbcbecgfghebbcbdbdccfbbhcbbefflgcecbdgbebbedccbgibcgdbbdbegbcbfcbdbefkdbebibkdbicbgcbgbcqbecdfcbecdcccdcbbcdccbbbcjdbcbbdckdedbcbbedecbkecbcdbbgbbbbbfcbbcfdddbddbfqdlbccggcbecbcddbqibbbbeebfhbhcbbjjjddddbcefbjbeebdcbikccccbecdfeedbccidbbeccfbfbbcbgddfdbbbbbdbbcbdbbcgbbdgckccbbbecffncbbdbbbcffbbchibbdefcbbcbbcdhbdebdbeobbdebbbobcfbcdfbfbebfbbebbdcbbddbcbbbbbdbddjcbccbcfbddcegbcdbdcbbcibcebcdmdecbjbbbkbcebcdcdcddbbcidccbbeccdcbgdjbbbhbcbdbbdgjcdcecbgfgfcdbbbbbcdbbcdjfblbbdcbbeghcccbbbgeddbdbbbecfibbbddbdbedecfcgkbbgfcbbbggfbbbdcebbbbebcbdcegehfecdcebbkeecmbfdccedbceccccbbgecbbjcfegdfebbbbddbbhbcbbefdgceffccbbcibcccbhbccchbdbdfbddbbfbcccbbbcdmdcifccbdgldbegcuecdgffdbdehcfbebcdcebcbbbeebbbeidebcfbccccdcbbchcbcdcebdcgjecbcbebbgbdgbbcecbbdcbbgfdgdbchjbbbbcddddecbldpdbfbceddhiebbgecdbcelfedcbdeedbbfhbfcbcccgcbdfjeccccbbkdcdcbbdeeiddccbmfcebgbcbbecbiffbccccccbdccdccfbbcgdecfbgdddghbcdcbicbbecbbebdbdcbbbgbfbfbecbdcggccbfcfcfcbdbeebcjcebcckfbgbbbbfbbebcndbbdbbdddcdbbbcbbhbpcibbbjbcdgbbggdbcgcghdgbcdededcchkbccecdkbcgdfcjfbfcjbcchebfdkbdeebdidcfdjbbjgbdghbccgcbbckbhcbgcbkccjgcbebhcggbecebebbgbdbebgcbcdccjbdeccfdhcfcbchcibbcccbgcbdbecfccbdbefhcbmhbbebbcedghchbehccckcgchecbbbbcbbcofbdbbgbbbcdhbdkibbbbbbbfcmcxfbbbbbbcedbhdgcdjpdbbifibdbedbbdcdfdhbcdcbbjebefbbbcbdedcebdgdcbcbbjefgbbbcbfdcefhcffbbffddbfbebbcdijebgdcbcjccekbceeiddcficbcgdcbdbcdlcbifdgbcfcbfcdgfdfddbchcgfgdddbdbcbedgcdgcecbbhcdbbpbfdlbbecebfrchdbbcdmcbbbbgcfbfhdeebccchegbbddbbcdcbcbcbcbgddbdnecbbehcdcbgcbcibbebeefbcbedcjecbdgbcbefbeqcbbcftbcghfdedbmbcdgbcdcbecbtgbbbccbhfeebccdccfbigbcbcjbdfbbcegdbedcfbdcbdchkbncdebdpgedccbhecfbdbidbcccegbbebccddbeidkbcbcbdcbbhhdtcbcccddfdcbgidbbdfebebgcqbcbndbeddieebcebbfbhfbdeebbfbenfbbcchddenbdbdbebbgdcbblcfcbfbjcbbebddbbicbbececgbjcdcdcbckckbbbhbcdbkcedfbbdcegdbfbljbcgbheicbcpdhbcefecegdceccfdhbdfbfdidcjdchccbeebiccdcfbdkebkdgbbfbffdecbfgccedbcbcbfeoccgcdcdcfdcecibebhccibejddbdbbbhbbbecbcbdijfhgecbgccfgkbqkbcclidddccbdehbcbbgdcbcdcegbbbcdbeddgcbbedbgcghdbgecccdecgdbfdbebbcdccdgbbcbjjbegddfjcdgegcbhekdbbcdecffkccdbbccdfbcbcbcbecbbeemebcccbfibbcgccbihbdbcdcbicgckcjbdebbbgbhbjbfbbdgbchdeddcbcgebbebbbbchgbbcbkccbcbccbcgfcbhjcbbdebddddbdbbbgfbdbcbbjcccccibbfgcbbccdbcdfbbcdbcccbdcbdehdpbbdfebedehjcddbibcbfbbcpcfbbdcgbfbdfbgcedbhbcbbbbhccdbcbbcdedgdhdcdbbebcfcfddcddcdcegfbdbchgidccdgcbeciiflbbdbcfddcehdecgcdbdbdfdeedcebcgdchebbwgfggfecbcbdcccebhcbbbbebbbbcbbbdbbetideccbccgfgebbbmkdcccebgbbbbbgdeecbfjfbgkigbbbdcebqhbdccdgbcbcbtdfkhdgsbcddodckbebbcgbbfbdbgbdcbbbbbecchgchcebccgfcbbefcbbgceggcccgqbbggfhcbdodcbbbbbbdececdbhebbbdecdcfcgbmbbecblbecbbbffhdcdbdbedccbdcbebcbbbgbbfecebcefbbcbibbhbddfbfcccdicbbgbdfccbebcdfgcebkdjdfbmcbhebcbfdfbbddeebchcjbeccbbiodgecbbcbffjdegbkeedbdhgbebcbhfecebcbccbcbmeeclcddbbhfcbbcbbebbfcbbfcbbcjlbhbbcdccggcdebeehfbbecbncjdmbbcbfbfqbecfkccfbcedgdcbchbcdebckdccbdcdebmekgbfccccgdfhgbcbbbbcfbbfcdffckcdbknfjecdcbdgbchdbedddcdedbfngbgbdfbcdeecddbbdhdbbdbgfbfbbeccdcgbbbbdiecbkblbddccjicgfbdbbcdfbdbeddbdddfbbbbmihcbdcccbbbbhgbgmcgcbgbbdfgcbbbebgcbcebcdcbbbhbhddbebfdjfbeffccccebcddbdbbebbbbicbgbbbkdehbdhcbdbfcbkdgebhdjccebcgccbhbcdcmedfcbbecjbjelgthdcdchcdhbbcdbcccjebhcgdbicbkcbgbbehfnekffbbccfebcedcebbcjkfdbeebgbbbbcfdcbhcbebfgbfjbbmbggcbjgbcdfbkecbgbbbbbegdjbccebcfbjgcbcckcfgdbcdcbccefefebcblbbeukjbccbccfdbebdbegbbbbebddhedfdbdfddedeeecfbdddbbbbdgchbdedbddbgbdgcddcbbbbbbchbccibdcbdccbdibmcddbfgcdedhccdleddbcgebcddcceccbbddbjidbbbedfifcndbceebibedgbifdbdbfdbcjcbbbibbghcgccdbcdfccbccdbcdcbhbhobfbcecbhbhbpdbcdbgdjidgdbddecnccfddeeebdhcdbbbbbecgmhcdbbbbbjcgbdicfdbcdicdbbbccjbcbfbcbbigihhccedceccbdeddbffccbdcfdbdbbcfchbbdgdbbcdcbedbdddbdhcbebebdfbfcdbeocbbecbgcgcffbcecebfdfccbbclmfedbbccbcclbncgbgbghecdcdbccbcbbgbbecfdbbbebifeidccbbcfbcbbdbccdbbbcbccbefebbcdbhbbbbecddecbfdjhebbkbfbbccecbbbbdehbdbbfbfbcbidoccfecneddbccbbbehifbdbccgecbfbbdcbebdbbceihfccjehcbedbdcecccbdbbcedbbbececedcddbbcedbbchcbgebbbecdcbcdddcbecccdelbbcccgdidkccccdncegebdefbbbfgbbcbddbcdhfcbbdgbdcicfcbdbbbbbbcjcbbbhebbbcbibcbccbdbfdfddcgcmddgbdcbgkkcffmffdfcbbbgneiccfcedcmdfcbbdhcccmdbcdcddecbbfecfbfbgbcjggcechfcdbdgchbdcciibcccebdclddgfscbcdocdbbcbecfcbfebhbkcelcclbdbcdebeobbfjccdtfbchieccbegbbhdccddbdbdbcdkbedcgbbjdccfcbellmbgjbfeebbddeedcbbcbcidbcdhcefcbehdhdhdbdgcbgfccidcbccdfchbbbcbbdcddbgbbecdbbbbbbbbbfbdkbgqbdcecbgibcbbebqbceeegcbbedqbdfbcdehglbfccfeefggdidbbddmbdcibfccbbbdcfebccdkcdbjbdbcbcbccdedbddcddbemddgbebegblhdbdcgbbbfbmdccbebdhbbfbfcbdbechbdjbcddcdcbcddidibehebfdbecdhdeegncffcbbbbbcgcbfdbbbbcfbcdbeccbcdedfbfbjeegebbegdbebdebcbdgeebcbdddhccggdchbdeedbdcccbbfddbccgdibcbcfddfedddfgfggcdccbdgbccdedfcbgccfjcegfddcmdcbdbgbfebciktehkcdbbeedcbbhdcgbbbkcdebcdbecebbedbefegdhbccbcdddccdbcebceccecbbfblcecdjbcbbbbicfcbddcbbcfedefocbccceddbbdbgbbecbdgccbbdehfdbbcgbcfbcbbdbeddcjccccbjcbcdlbfeddjbicejecbcebcfgbccbejgbdcdbcbbbgdbgbcbdchgbbcmbcbccbbdoksibbpebbcbbedegbbcdhbbhbbeedcibbcdfeccdjbdhjfccfbccbccjbbbhbcibdbcjbcbbbdcbfhbfdhebbcbcgfbhebdbbbbebdfhdccddfdfhbcbfkbjbbbcjccddcdcbdcfffccgciidbbbdbcefdbbbbbdfchbebdbdcdccbicdcbgfccbiedbdbbgfbebccdcoifhncedbbdbcdffodcbdkcbbbdcddbgefdbbkdbbbcccfbicbdecibeedcjdbeljgxbgccdbbcfhcfdbcbcbdccbjdbbdbdbbbbgkeeebefbbeicdbdbgbicdcbffbbccggbbbfbcdcdgbfbddccdgddbgcbbedbfbebiciccbdbebchcdbcffhfbcbcfeebccbbdfbdcddfjfbbbbcdcbhfdeeibgcbfbbdbhgbelcfccecbdbehdbbebbjbeeelbbfdjccceebcfdbfcbegbceddbbiecbbbdcebbcdccbbcbcddcbecdddbbckbcbegbgbbbgdbdddbhsbfbjgbecfdkbfkbibbibibbdfbccbdffebbebbgcccedbbdbbcbffbbgcebciiidbffbbecbcecdbbbbdccfbfcechdebbfcbhebcblhflfcbjbbcgbddcegdencfgbccecfhbhbdnbgbjmfkdbcefcfbclbhcbdhbhkbkcdcfbbbgbccgfgbdcbdcjcbdgbdfceddedcecbcjccbbbgcfbbffbbebeddbbbccbdfdgodcdcdcbbbfccbdbefbdcbhdbgfdbebccbdbcdeebcldcbleccbbcbbbbbbcefbeecbcebeccdfejdbcdciccegbdbbbfobbdefbndbbcjbbbghcbelidcbcebbgebbebebehcbcbebcfegebbbecbebbdcbdicebcgcbibgdhkbgerhbejcbbeecbgeqbccecdfbcbbbcecdccbbggbcgicgdbchfmcbcbfbbebbjgbecbbcbccebbbdccidgbcbfebcdgdbbdcgdkbbbdbccbdfbcccnbdiccgcdlgbbcddbhcdjccdfbdbcdbcdbcbbcifjeeccdbbhbckcedcbfbgehbndcsfhdbcbcebebehededcbcccegcdbgdfbcdgfebbbqdhcdbbecdcgbcjblbdgcecegedebddheffbcbbdldbbcfebdcbddbfccbbcbcgebcbcdbdbdeedfficbddbdfbebbdfcbdfbcfbbcebebchbfbcdbbicbcbedbbdeccddbcbccecebjebbcbdcbhgebbddddbbgjbmeeggbbgedcefbbbkbeebcjgcbdegcicebefbbdgbdcbcdcbbcciicbbbcgcdbhebddcdeiceebccctbgcfbdbfeccffgccbeccbfbdddcccjdcjdbbfebdeccdbcedcbbdbbcehcfdggcefcbdfedfkbcdbbfdccibdhckbecbbbdcbbfnbgcdccgccbgbobbcbbcdbdgccedlchebfbbbdeebdfcbcdfcefbdcbdbncddbbgcddcbedfhfebcfeibddiebrdbbcceeddcccdbcfifbbeebbcbnbbgckhcfbgegcjdbefbbdbecebebkgbccdcfhgbdfbbbdegebdfccbfpbcdhedfbdefbhbdddbbdcdcbpidcgbdfcgcebdedbdcdddcbbgdcebblembcbbcbbbbieccebbdcfocbdfhdbbdcbcbbbeijeeckibldbebbdbfcgcebbcdecbghkcddfbcebejcbdbbdjbdbdbfcebebdiehbfcbeegdcefehbiddcbcdbgbcbchbcbbbdbdbcgcdbbfdbcbcccbeffbcebebbbeebbcdcdddbedbcddiccebjlcchdcdcecjcfcdheidbdbgddbigeccmfccdcfcdecefbbfbcbdnebccbbdddfcegbbeebddehcbefbedcednemdkclbcfbfffehbbdhbhgbcdbfcckcbddgcceeobhdbjbcccbbbcggcbhfckcibbbkbcbeecgbdgfdbddfccddbcejcdbcececdeebelibcdbbbhbbcbccccccedechegcbbbbbbbbjbddfcbcccbbhceccjhedcdcidccedddbcbddcbebbmccbbbicpcclhbeigcccbdhbccbgbcfechhmbdcfcecbbbebdebblcebhbcgccbecigbbcfbcbcbclhcbicdbbdfdfbdddbbledbgcdfbbcccccebrcbdbhccbccccgbdcbcdcbfjfbjjckbdidcccbbcdecggbefbbicbcbcbkecfddgdiecdblbhgdcbccbgcscebeldmhdccfcbcdbgegbcgcbbbikjfbbcicdcdbbccbdfdccbbkbecfhegdbfdfdbgbcbfbbbcecfblbcocbcbdfddfhcdcdbfbcbdeedbecedfdfhchdddccfccgcdlfggbecdjcfdddckfbeehdgbbcfdgccbhdukedeeedbbillbdegbjccbchcbeecdbhcbblebibcbddddcbecicbchcbicjbcbccedcbbghejcchcbcceccbdhccccebbjcmhkbmcbcdjecbfbbeeejfhbbbgcfbibbcbegccbfdddbbecebedbfpefdbbbcebeegdcecigmcbbemiechnceedbbcfbejdebbldiecbcbbbdjcbhfcbbbhfidggehbebcipecchcbcbccbhcbcbcbcbkbdifdddccgbbjceccbbcbebcbedcckcdccggicdddedfnbgccecdicfdicbbfcckddcbdkhbccdgcbiebecbgbgccggfbedbbdbebnbecdbbbdbgbbeddebbdfcgicfbfbbbbbfcdebbcfcbccfcccfdeigbfbbbddecdidcbmbdwcccedcdbbccdbfgfebdccbfbbbdhebbcbccfbcfbgbccccfbdbcbhbbbfbccdcbjbbbbidegfbebbcbbccgcgcdbddcnpejebbbbIjbfbcbggjbebfcdobfbecmcicecifdbecbdedbgbcedciccbbbbgfffdcddcdcbdebcedccbccbbdddlbbebdbcfbclbdceebbddbdjfedbcgtbddebbebdfcbbbbecbhfebbceeifbkegbbbeebecibdcecedebgfccgbcbfedbgddffbcdgcbbcecbdcedidbccibbcegddffdcccidhgbbbcidcbbbfhfepjcbbdbfmbbbeccccedbfdbbbbkbcgbblbckiiccfibekcebbbbbebdbeebbjjcgfdcpchbedfdceebcbcdcbdcebqdbkgcdhcebbbhdibbbgbdfffdbecbccdebebgdcbbbcbebhfcbfdjfddbdbccbbbcbibfcgbebdegcccbbbdefeccbibecdcdcfdccedddhbgcbcdbechbcccdbegbcbdfdcdcibebbccdbbddffebdjedfclcbkcbbecbbecccbbjbdbcbcbjbffbebbdbfeieeebffbccbbbbdehdbfetbccjbbbdiiedhdgibbbgedblbcgfdfcjdcjbdbhkccbhebbcdcbibfbkfmchhefeigbbbcbcbebcbcbfbfcdhdbdbcbdbiceeccbeddegidmggbccfdlkjdbechibbbgbbbebedfecicefddfdcbfdcedibbcdgbbdbbcncgbbfbcckcbcgdfffbbgfedechecbgbgbbnhddjfbbcdbbdbheejdcjcdcgcecenbbebjgbbhbccbbcdcbtbhdcbbbccfedcebbbbbdbbfcdidcbfddbbbbdcbecccebgbdfcffbdeffdddeebbhcbhdbgbjdgihbbeceebjbfibcecbfbebchfccbbeccbbccdbkfhejbbecebfbjbdbibiechjidebiicccbcdfceccfhoffbdpbhfdbfbbcbdbccbefcdeigfdbccdbmbcdbdcbcjlbcdddhjcdbfbcdbebbfbdbdjcebcgddfcbdjhjcfebbbcdcdbbibcbigfccebfeelbcedbbgbbjfdgbhchdccfdehhdiebdcdfccdedicdbccbcdbbdbmcejbbdbcbgfjcbecgehhcjfbcbcebcbdbcbcbffdbkfibcbcqebhbbecbdceccbbjcdjbecffdccebgdccdbbcdebbefdbccccbbbffgbbdcdfciebdedieeemjgfbdfdeebcfcdgfgdbebbefcdebddgcbheedbpcbdbdbdbbbbddcqofbfjbfmdbddccdpiifjbdegbhcifcebbcdbcbcgcbcbbdibfhbgddhccbibecbbfbfebcifgebigecbikcdcbfeegebfdecbcfbbeibccgdfccdidcddcibdkefdbbbndbbbcdgbcgcdbbgbebhcdbddfcbgedcdcbcceidebdcbbdbbgdcgdbcbgcbbcdbbeoepfceebbbdebdefcdbcgfdbfebccddebdbbgfhdbhbebhcbbcbddedcfdfebeehicbgbegjjcbgcibebebbecbgcccbdcfbccebcjecdcbbkogbcccghcbdbcbbjbdobfbbbfkjbfcieftoibfhbiebccebebbdchcfdbcheccbdefbbbcgiefebbbibgebbhfkdjbedccheccgcicdbeccbeibcedfjcceidbddccbfefbbbbbbidcebdcbbdbcbebgccbcdbdhfdkcddbcbcbcbbccdhbbcbdfdchecdcbbhbfbhfecbbdccffbdbgbcjlbbbdcbdbpdcebckbceccgdcgbccdbccmhbbdddfdcbfbceccbbbccdbccbdieebbbbbjegdbdedcdbdcehbbebdghccfbecbdgbbcbfdcebeedkdcbccfdcehfebdcbdfbibgfgcebgbbcgbbbbgfdcbbcbcbedcbgibbgfebbfbdcdbbcgdecbggdbmbcbdicjcbbfdddmccfbbfhhfbbbbbcbjbbfdccbbehbeccbdcjhbbccffbbebecbbbfbcbbdblfbbbfeecebggeglddbdcbcdhcbdbbcgbeccbbbddcbebdbecfcbgddbkebhbjhcbbbeciocdrbdcbliejbcbcbcdbedfdfjcgbbdcbdbddcbcbbbcbecehbkbbeibgbkiebffjbccbkccbgbghcbbbjhchbblbibbfeccccbecgcckibebbeebdbfccgbmhmbbbcbcfbbbhccdcebcbcfbcdfdbdcdcfebccbdcbecebbfbddbmddhebbbejfbbccbkhccgdbdbdfigdccdecdefickcfccbdhhcbikbedddccffebdbbbbbbgdbbebedbbberedcbbbbbecccicbdccbccebgbbcgebdfbfebcbdiebgibcfddegfcjfcbbcdckddcggdmbcbeecjbdbdbidcdcfbgbfbgbbbecbcgcgbbbbgcdbbcfcbcffejecccgccceccbbddfdgbdibbjcebfbbdbrbgcdbhdbfbbfcbhebcbdbcbdfdbdgcbrbbbcccbdhfbgebdkjccdbbgeecdmbbbbdbjbccefccdccbfdbegbebdfbfgfcbfbgbedccfdfcbbbedhddbebcgjhcbecdbicbbhbcdbeeebbffcbbnddddbgbcdfcbbbfbcbebdihdcgdcdecfbcbbdfdcffjieedcbbdbcbcbccbeddkdbdfbceccbdccfcbkcbbbgeibfcbjcccfdbbcbbccidbbbfbcbbdidbecbbbcdbfbecchicdcbdkdchmbhdbhccbefbddcdfccbcdbjbefgbfcbjhjepffkbgbbbbbhhbcbbddcjdcbbccecbiccbeecbdbbdlobdhfbbbbdccchbcdhfdfcbecbbbecbmcbecbbedbbccccfcgegbfbibcbcfdhbcebgbdjbecfbgbbchdbbbfbcgbcudcbdbdfbblbdbcbbhcdbebccgdfbbcdddfccdcbhbdfbbbcbebimbbdbjdhdbbbgbbbfdgbciegbbcegbbehcddcbbccebccgchbfdbebhbddbhkciidgcbhbbbjcdediccddghcqcfcebebdcbfdbdbgbcpbcdbbjcbgibdgdbfbbbcbbigcbcceeecbbgibccdcdcdegddfebbecfbdccbecbibcfhdbdgbbcjbebgbgjccedfdebbbbbbbcehhibdbddcdfebcdcpbbcbcdggdedbefdbccbcbfdcdbgbcfcfdccefcdedbfcgbccedcbbbbgbbcdbhdbfdbbbbdbcdcbdccgcbbcbdbeddbbcbdbecbccdfgdbcfclcicdbfbcfebbfccgcbbebbcdddfifbcccddcdekhbbckccbdbrcfgehbbdbchgggdbbdchddcdcbbbdiddbbcgbcbbbgcdbkbhcggebddbdegbhdebegcfcgchdeifebgcibdibdcjnbcbccbegbbfccfcbebfgbbegbcbkebdebbbbcbbkcfdedbhbbbccedcdbcbbbfbccfcccebbibcbbfebddielebbfbbecbmbdbhkbbcoiedceehedfcgbbbbjkbccbdfebbfcbbbidtbcgdcbhgilbfbdcgbbchcbccbclcdbgccegezgebddcejbbefdbbdeddbbccmbbbcbchjbfbgdfhkddebebbcfbbdbbbdfbbbfecbbcdbcbbkbbsibbebdbbdegjbbdcbgfbdehjfchdocbcbbdbcbdfcecgcebbfccchccgbbcbddbdbcbdmbhgmdbcbccdbecbedfbeikbeifbbbfjbdccidhcgjccfbhcdbbdcifecddfccbgbbedbfbcjedfbcbbfbcbcecbccccicececedcbcbgbbbdbegfdccefcbcckedbeidddbjbbibcbheeccbbbcbbidcccbcddcgedbbchdehgfbbcfcbhfgbbkeddecbcgcefkbbbebfgebcbgicfbdfccbbegdcbdbefdbmccfbbdcgbcddbcbcecjblcbfbdkebbbeecebbcbgcbbbheeecdddbibbbhcdecdbbdfeccdbbbdbbnbccjcdfbccbbjbbbbbdeefdgcfclcfcboecbhbbcbfibbcbdcbgbbgdhdgbbcbkdeibmdcbedccccdcbgcfocbdgjcjcbcficfcfcjcnebfdebfcbmebdghfbngbiebbfbhjcdcbcbccebficlccbfjbgebfbcfdfgbcdbegbdebciddffebeekdgbcfbdcefdcbibkccdbbcchccfbbccfdbbhbdbddcccigbdhebegcbcbgbbccgdbcfbdcbchgcdhbiddfcidddhejebbefdeceefbbbbboccdgcdbgcgibbfjcjeddicbcehebbdfdbbcbgbdcceqhbbbcbbbebbbbbfbbbdedbhbcibbcnicdeddecejbhbedleidggdecdbhbedcfbccddhcbddbjbdddbjebbccbbcbeccdbebccbcedmgggbcbhbbqfbbidbdfbddcdehcbedbdbebebcbiidcceggebgcjdhdbeecpfeccbjcfcfbcddfibbcbddcgcbebcdbcbfgbeedbbcceeicfbddhdcbcdbbceeccblbbhcbgmbdecbdbciddcbccdbfmckbhihiebceeccdecdbfbjdddcccbdbgbbbbcbbbciicdecbcdbbdcbfebdgddbbecdbebfbbcbefcembfbgbdgbcibdbcfdbkbdbcdbececfddbbcedfbegbjcecbeddueccccicbcibbibcbdecbchbffeckdcbcbfidccccbcnebbeiecbecfcjedfghebibcddeibfdieceddcbdkccebcecbmcbdjdhcbbbgcbbdfdihbcbibcdcbbbbegbbcdbebbcdecbcbeefbefbichcbccdcfgbddbbbiffkedbfbccddfnfccjbbbefbcegfcfgcdbhdefdcbcccdbddbbfdcebfedcebfebkbsdbibbdbcedbdbcccfebbchdecebbcfcbbbcbbfccigfcgebbbbdgjcbddccfjdbbbbcghcbgccggcgfbdbgdcdcbidccheedgbobfbbbebfcbdcdbgfbhccfgdfbgeckdibbddgbdelhebgbgcdbbjfccggbbeeccdbchcbbcgbcfdbcebnbcejlbdbcmhgbdbccdlbcicfbbcbfbbcnbmebbcccbbhfgdfedbbgcbbccdbcbpbcbebldcedbjbbbhbffekdedbcbbeecbhcbcfebecbcbdddbbodhbcbbddhfecbcbbbbcecbbbbgbgdcdfbebffdccbfbdfmbcedcbdbedccebecbbcfbbddebeffhbbbfdbbbpidfdddehojbebdbeeibbgbdbcbdbcbfepbcdfifbfbeiceihddbfbbccdbdecdbddegececdgkmclbbdecidedbbbiebgcbbcbbbbbhccbibbcbbfejefbddfckbbihgcbjbecbdbcdcbfcbebbeefgcddkfihkebbgfcfnbfbehedhfkbddcbcdcckijbcbchcddfcbgbcbbbdgbgbbbbcikcbecddbdbbblcbcdeicccdbddbccebbbgbbbdcckhecgldfckhdbqpddbiccbgddcehdfbfcfecbfdbdfcgbcecbccdbbbfbbbgcgbedhededdbddbebccfiebgefbccbdeecbdedijbdbbcdcfcbcgccbbehckddcbbbbjcbegbccmmbfgejgfghdbbbjcdbfebbhhbdcgccicbclccbbbbbddbfcbcdbbbbceecbdcwbbchdbcdddcbbbegkicpcdcbedfbedcebbcdeddbgidcebbcbbdbghbzcfjfighcdcccfdbfbhbhgcgbcfebmkcccgibdjccuibbbebbdfcebkgfbdqcbcboleefecbbcbgbgbcgfccbemencbbdbeghbchicbbbebebccbbbbeefdcbdcbjmddcdbcbdccfbdeedcbdcfhbbgdqdbcbfevcgeddjfgcbbfcbedbceccdgbbbehbcemedcecddjbbbbhbfebhcflgbcbbgchndblbecbhbbcdgcbbbbfbddebgcfbbdibdbgbgebegcbcdbhbbhbbbebgcibfbdjgdcddbcbdjbbefccbcciibdcjccgebcbdbbidecbejecdkbeeecicgbkchcgfghgebbbgecbnbcelecdgbeedbdbehfeffccecbhfkibbcbdbdbceebbcbjhlbbccecbidcbgcdgbcicclhcchdgdbngecbbeeeeoedddbcbbrbhecdcdbcddbkgdhefbfbbdbebgdcdcbchcbddblebdcbdcdbjcebgdefdcjefbbblimbbbfcelcbbcbcgbdcbcfecdceccmgbcfecbeeibbcbdchebbeedecbbbbbcbcbbfbccjcbccfcbcbbleeccgdfgdebclebcdbkcebbedfiefebcbbdecccbfcgdbeicdbcbdihnbbeccbgbbfdgccdcdheccdbbceccbbdefdbbbccbbgffbmbdcdbfhbcbcbdeebdbcejcecdcccbefcdbbfepicbdebddfcecbcdbcbbbcbfbcbcibgbcbchebbcebdccccbecbcccdcehdgbbbcbclcbdkbcebbbhddbfbcfbbjbcbhbcbkbedebecbfcegeibccdebbbbdfdfdbbmbbcddbefcgbdbhdebbcbebdbblihccceebfcbdbccebgddecebbeceblbbpbdedchceedbfkbhbcbbhhbecglkbecfbckldibchbbcbbdbbgbfcbcceedbdcbbigcbebdbgdcgcebedcbefjdecdddbgbbbhefblcdeeccggbcgbgbfdfdgeegbfdccccceeccbcedfdbicfcfncdcccdjbbqdhehbbcibdcdhdefcddechcifibbbcefmdbhemceccbjedefbbbbbbcdeebdkcecbchbefdebihbebbebbnebebecmbdjkcceccebdgbbdcdcbddbdedbcedccejbbccbbebbchedgdbcblciefddcebbcelpnebjefdgbebceebbbebdkbcdchcdfbbdcbbbeeedgcbfbfbcgcgebbddbffebcfgdbbcdbbddhcgdkbfcckhbbdbcbfmcfbdidbcbbmbdbdhijdfcdbcfbbcibbbdmeccgbjcbcbcgigdbcebbebfcbecdbccgbvdcldccdbqefdbbebbecbccccccbddbchcbgfgbfbcfbbfdecbjbdcdehcfhcdbbbbebfcbdcbbcjbddbbebdededfceececdfecbbfbncdjgbnbhcgbfddbbdgidbbidgccccbgidbbbhcmdheglebbcbnccbgibeodbbecfbebbeedbebdclcbbcjcbebffbcgdggbcdbcbbgdkdedbebcbfccdecbbbbbbhgbdbcecoefdbgdbfcfeegeedbcdcgbbefcmeeccebcbcbedbegcbkdbfdebebdebcbbbhgdgjcbengbcebebbkgddddbccbekghbdcbbeccdbbbhbbeddbeicjbbccddbddmbdccebdbbbefckbbcedhbbddebiddfcefbeeccdedbbhgcgkgdbehddbjbcbdicdegdehcbbchfdbcbfbdbbbhdcdbcddcbdfdbdbbdceicclbcedfkjbbbhbcibcgecebbdcbedbcccfebdkedccdbbddddicbccfddeckhbhbgdcccdgebfbbbcbbdccecbbbddccddfbdgbbbccdjccdbccbccgcdbvcbbbfddbfhebdebcddbbdemdibgbbcgbggbcdcbbbcccbbfbcbegbbbbfbbccbbcebkbecbccbddgbhbdddbddbecbehbdbfcbtiddbbbcbcchgghdccgdjhbdbglbdgddedcbgigbedbgebfbdbcddedcbdjecgbedjficbgcebbbgbcdcfbddboccbebbbecdfedbbcbcccbcbdfbbcbhbbcfefbfbdebcbcbddjbcbcbdcmbfbehhhbicdbmibcbbefedcbgcddgbccecfbbmbddebflciddkcjfbdbjbnbecegkbcddbfebbkbdedcbhbrgebbbedcbbebfbdigebjddcecfbfblcffbbdbbbsegcbdggebcbbdebbbbcdcckbdcefbbggfbcbcbbdbqdbfibeddgbbgjdcdehbgcbidfbbbcedbfbcqdbdcddhledbdhbeecehdbeeeffebciccbcgbbcdcbgeicfbcddccbhfbddcbfbbbbblfcbcgddcbcegdbbccembfpfgdbbehfchlbchgbgdblbbfccbbhbbfccdccbcebbcbecbdbedceghphbffeccbcgbbefdbdcgdcbgbbgbbbiecdclbccbebccelccbdffgdjeebfcfccbcgbcdbckdbbcffbhhhbfcdedccbqegbjbceebgbdhbcjdcccdckbccecebbbbiecehbbbbbbbcbbedcbbidfdcefdgcchdfbicgeeelinbdfgbcbebbfebediedbbbbdeijcbbcdbcgbdeecdccbcgdebddbfbbdbcccedcbhfecccbbdeebceenbbddcbdfeidccdccfdbebbdficflbcclcdfceeedgfibbcbgdbbdebjbcbdbcddecbdgbfbhegdcbccbfdcbbbcbkdbewgccgbcdbdbbchdpgeffbbbefbbfebgcbbmcbdbcebceddbdbcdbhbbebcgfedbccekcbbccfeeccbndececdbfeibdgbgckbbcgbhfbbbmbdbcfbjbbcjbecfbdbddbcccbbfcbbddgbgdhbfbcekgbbdcbhfjcdbchdebbgcebdfdeebecccdgebdhfcfbdfedecbbcddbbfdbgdfbiebejfccbeddccclebedhebbceedcgcddcbfgbcgbbcbccbebfbbfbhcbgdqhhjddecfhfbddccbbccbbcecegcdcgfbfcbdbbbdcdecddhcddnbbngbbhbgjmbibdcfekdfcbbibdgocfcegbdbcgdffgibfbbhcbecgddcbebdedihdbbebcdchbbbbghbjgedccededbkbegbbbbfdbcdecedgcfbcedcgdbbbccikfdcbicbicfgckbdfdhebddbcclcbdjdfbbccfdbdbehhbcccbedodfbcbccbfgbbcffbckbeebbccedbccbbcgcfebbbheceedcghcbccdcebdcbcjbcgbjbelbcfccgdbbbdcfeddgdcbdefbifbcclcdecdbflecbbhfdbqidcbbfbecfdceecccgfcgbcbbfbdbfccbgebcebdbdbccjcfebcbecfgbehfebbdifbcbfbbibbbibbfcbbfbdbbbdbccbidfcbcdefbbccckcdgbdhbhcgcbccbbdccfcbedbefbdccdfcgcgbefbdddfdjcbbbbdfffbhifbcbnjfcdbbbdcbbkbjebbbghbeebccbdeeedffbecbffgbcbbhccbdcceckbcbcbebebbmfdgbcccdebcefmbbbbdbcbbddbfdbfcbfhbefcbbecbdedccebdfdbbcbfbcchcbcbfbmddjcbcdcjcbdfcehdcecfibddbibbddfbcffkhbdbjgbbgbfdcbecbdbddsfbgggcdbelchgdefbbfehbdechecicbbbbbdcdebejgbefcbbccbcgfchcccbhfbdcccefdbcggbddbdecccfbddbfjefdbiedrbbmddhcehbebcdcccgdbbbeefdkffbdgdfnedbdgbdcffkbbceffedbbddbdbgdbcdgdbqbddbicbbbcebbdifdgdlbcbcfcbbbdgdeebbbgccdbbgdbccbdgdccebcbdhdhedicbebbbbdbbfecpcddcdcecbbbdcfcbbbgbcfcecbibbcbbbejdbdfccjcbbcefhcdbbcccebbdlbbfbdbbcdbgdcfdebmbcbfbcibidcicbccefecbbbgbebicbhbbcceibbfgdbekedfdbebbbbbbkbibcebbbccdghgidbbcbbbbeccdccgbbfcbcbbibbebcdcbcbbdbecikcdndebgdddbdcdbbebbecbebfddbbeihcbbbcdbdbibebcddbbbdfbccbhbbcbffbcxedcgbbfdbdcbhbebccefeedbfecbbgfbebehfbfdedbdeibcdbeffbdcbccgjbibgbbghdbbgccfddfcbedbdccggbcbbdbcbdfbbcbdbhfwgcbebecblecbjdbcbbbfgcccfcbcdbbcdddichcbcigdbhcbfbbfbeeebdcecgdbdkgdhdgcefdgcebfbdebhbcbekbbebdbjbgbfbbfbfjfbfbbdebccbbbkdbmfhbffjcbdebefbciccdbebgbdceddbfecdcjgecbbbghhebbbbdbdbhcdcecfdelcbccbbefbbebegecfbjbebbbbdclbecbgbbddbcbffcbqbcddcicbedgbecigbeidcbdbbbbdcbbcdbcbgdcdebbhfccifehdecbibbddbdddbfbhbihjfbfecbfcccbqcbbebdfcdbidbcbiecbchebkcccicbbcbccbddcbbcbfbdfbcbjhbkdccdhbeibdfbcdcdbbogbbbbfcedccdeibglbecbbebccgdbebbcfdbbfbhefbbbcccbcbcfcdbccelbeecddfbbgdjhbhbkccebnebbbcccchbecffccdbegbcbbbbbbdhhbbbdbbcceffbbcdbfdbdchbjccgcbgbbhchfjdcdhfcecdgebgcbdbbehedfcjcdbbdbddgbccbdbcbecbbhobdgeegclhcbebbebcbfcmbecmdfbcdccogbdbcccefbcedccddbbddbbbcdhbfbbhfdblihjqbgccenbgbbhbcdgggecgmbebbebcbedbebgfdgbcccdhficbdbfbehdcdbdchdbidlbhecbddfbdcjdfcbcbbifbdcbbblcbeebdibfbchbgccjbgbcbcebhgdcdbjcfcbgdhebbbdebddbggflhbhcddneobcdcfbdbbbbdckidcebecbdbcdbbbecddebccbffbebbcjcddbcggcbbbbbgcbbbebcgcbcekbbebdiicccdfgbbchbejbjcefbbbbdfbdegbcdbcccbfecccddcebbbbdeibbbdiiddecbhdchggfddebhdbvffbcnhecgbbndccdbkhdgbbbbbdbfbfhcdfeeebgefchddckdbbccbbbfbfbgbgddbbcbbbhcedcececbddfbchdccebbdcbbbgcifgibfcbbddccbbbbbjddbihhbbcbhdbohiddebjbfhbbdcbfbdgnibbfhbcbhcfdcdcdgcbkddbhgbbfbcbjeddhbfccbfcdgbdibbdbicbcbdbcccdebbbgfhfgpcnhebbeccbbbhbbbegfcecdccbfgcgdbbbbbdchcbblcckchcbbdbbcbcfcedbdbibcfhieghbdcdbwdhblbecebfcecddbdcjjfbghbbbgccebbkgbcedbdbbcbdbbdbjdbgebebbcbeebcgebdcbdbbkfdbecfcfdccbbfdbebceccbbbcckgbifdfbbcdmbdbbbdbcdfkbbfbdfjkecifdefdceqhdcdddcfdgcbgbfeglcfcbdbgdbbgdbebeebdfdcfgbcbdbbcgfgcdbbbcbcdbcdbbbffbcjwdhbbfcdbfbcbdbbbfmbieeigbjbdbhceefmchjekoekdedbckcbcdbcchdfcebbcbbddcddibbecbdgbbbddbbbecbbbfccdbhccdbcdheibdeccbbdbddhfffebidogeccbedgbbcbedkngedfdbefebccdhddgbeeejbcbbhdfcidbgcgbgcbcbjccbhccfbcmdgbkjcccnbbebbgeffcldchbdcbfgegbebebebbbccibecchbiccbcfebbcbbbebfbjcbdbdhceccdfebbfibebbdbmcbmicbbbbebbbbfkeildcccebcdcicfcdehlbgcebbbgdchfbdedbcdbfcdiebecbbdccccbdfbcnbcfeeccgddbbudbbbcdeebebfbbcdcbdeedcfghdeegbedehbbebbdbebedhcdjplbjbbedbchcebdfjbbbkjbcbbccdkbiccibgcdbfhcbhebbeebgecbicbfbdbbgbbcibfhjigieifiecbgfddddmhkbkcddcmbdccbcebfbbbfcbbcfccbedcchbbccbdghedeffbebeieedheebbcccmbbcbcbcfbcfbeobcffdcceecdcbgldfhcejcdocbbbcehcbebdhbbcbdbeffcdecikebfcccbbbjbbcbdiebeibfbifcbkbbdgffdcbfcggbccbfdbhddfbdmcbbhbbdblbdbgbbbccfbbbcbcbcndbedffdbffdffgbfqccbdccccciihfeblbehjfcbcbcccdcldcdebcedgdbbdebbdhnccdfbcbuejcdgbegpcbcdbbbbedbfjbbeddbbdebccbccbbhfbgccedbdbdcibebbbbhcbbncfifcjdcgcbebbhcfccbdbmbbdbchecbdebdccbeiccfbehdeqcfbbgcbfcdbbdbbbdecbdcbjdffeefkfbbbeccddehcbccbdccfdebfdbdfbbhccfebcccdcbhdfcuebccbfcbdbenlbdiefcbdcbcfbefffkbggbebeelehbbbcbbccggbfcbbbdbfcgccicccecfbjbdcdgdbbdcbbbblbmcbbgcdbbiphbdbddfcfndbbkccclbfbdcifecedbfcgbcbbbcjdcdfhfbgcbefdebkbcgbcfdefbecbbgbgdcdfcbgbbdfbccccldfbebechcbcbdccgdbeobbbffefdebbbdccbdhhbcdehebebbfceebfbcccidbbeefggdcejbbccdebbbgifiibbbcecccbccbdjcbhbbhececgbeebecbcbebbdbdbfckbibhbdbfbcbfebidbbdbbbieejbfdbbckhnfdkfcicdbfdgebgfbhdhhfbedddcbdfbbebbeebbcbcfbebfibfcbcbcceibfecqcdifgcdeehbdbccbbfcbbbcdmcddschfbbecbbbcbcdjdidekedcehiddjbdidgddcjccbcbhjbdcbodbfbgbccibbbbchdebbbbbdedcebheccedbedcdcbnffbbbdbbgcdecdbchdbgdbccbbbfbdbdcbbbkccbdfcdedmfcbccddbcfcblcfdbffcebbbcbdebndfjbfecbccbbcdeibbcbjcbcdelceggbgcfbcdgcccbdbinddbbfcbbfdbbccdbebdbfcgfbdbebcecdhcbdbefbfdbkfbdccbgbiqebbdbbgbcbcbcgcdfbbfhbbcddcbdbcebdbfdbbdedcbbffbidmbchcegcbdcdbcbfcmcerbeekbcbbiigbcmkdjbcbdcdcbdbhbciebebccdgfbdecebbcbbdcbghbcbceibbggblbhhcebcbhbbbbfegbeeebfbcidndgbdcibbcebbdgccbdebbdbgdbibeccfegbbcecbcbcfeebcddfbdbcbcbgpbbdbbegbefcebbbcbccfjeddcffbfdfdfecdbfgcbcbbfbbcgfbbbcfbdcbdefdebdcddhebbcdbiddfbddobbbgfbgbfcbhkqbbledbfibhbccccldbfbbcdecjhcdcjccheqeeblbbbcbjbedcefhibddbcbbbbbbhhfgldoddeefgebfebcbfbdcbbchbecbkcbbdebbbfbccccddjekdebigebbgblhdcdhfccbdeeebcbchdbfcembdjgdcbbfgddgecggobcebcbhdcgbbkbbcbbcfdhbbdgbffcebcebdbbbbjceccecjdecfbmcchcccccegdlddbddccbcjgbecbbgicebceghbdjbbbcbdeccbbbfbbchdcdbdmhdbldjgbdhdlecebcdfdbbdfbfcecfbdbfcbgeebpceedfcgddhcdchbkjbbeebcfebedggbcebebbecbjdcecbbdhbcddhdggbckcglbdcdkbcfilcbcbiecbeccobdbbdjbcdccbcbbegtbcdgbdebbbceccdddbbdcbebgbcdhbccbdcbfdbdobddecbbccebbcdbgbbmbddddddecbddechmgbdbbcccebbedcbhccbfbfckedbbeddgbdbcmbcccfbbcfbbehbbbbbbbfbbbbeccchfbbcnbdgefbbddcbcddefcbcdccfcjdbbccbbjcdbeccecbjbfbebcefgdgcdfcbbjlhcbfccbbfbcefeccdcdegbggbdcbgcbegbqdjbcbcccbiibbcbdebbehbjcdimbcbdedbdbbcdbbfbebcedheehecddcbbbidgbcbbblbfpbckdfbfbhcbbcbbcecbecdekeddcbddfbedcbiedhfbbckhcbedcecddgcbfbbbdedcfbcdbggbccbbcbccbgcbhdccdefhbdgebcccbdcgcldbbubgchdgbfcblbbfbebfbncedbddidebigcbcieccebrfgbcgebmbbdkecbbkcgbbgobebfihcgbfebcbbgibidhcbcccbbbbegjdefdbbdbbfbfbfbccfbbccgcdfidcbccbecgcbgebbegcgegebecbdbbcebdkdbbeccefbfbdffibcbjcbccebedfhbfflehbebefecbcdbgdgihcgbcebbidiccjccbfccbbbbdcbdfbdecbdhclceddedfcipfbbdfefdfbcgbbcfbbicgdfcbfcfbecfgbbbbcbbedbbdbbbcihbdjcfbfbccceebbcbdodbeeefehcedcbcegediebccbbfbcddhccdeebbbcfbdchffdbchbjgghegfbddcfeejibcchbfkcbeebfbdcddbjdkbbdbebdbhgccbbdbefdccgggcdecffcebecbdbbdfpbbcbebffdebbbbdbfcgcccekebchdccjbocdecicedkbcdbbbcecdebdebboecdbbccbcdcbeebbceddbdedebbgbkehbcbbdcbbbhbbbccdcbccdfbnkcdcdccdcgbbfeceebbbcbcbclbcccfbddcbbcbcbdgcbcbngdbhbbbedcbficbbbbchddhdebblfbbbbbbbbbfeembdceecdbedddbidbcbfbebgdfdcbbcgbedbbbcidfdcfdbibebhdcbebegbddededbbhciccbcbdcbcbeohhbpddbbbcebhgbghebfbcdbddhfbbdbgbceccefccjcfbcddcbfdbddbcbiddebbebfbchhebbbbbhccigbbgdccccbcfleefbccbbclbdfdbcccfbdfdiebbddcdcebbhgdbhdbecdtbbcfdbcccbfddbbbdcfbidbbfecddhcbbhdfbdidcfedbbibbkchcccebbgebgebboccckffcjcbebbfbjecebeefnfnfdcbecbgbbbfbbdbeghgjbgecdefecgohbckgebbddgdcbdgfcdbbdbbdidhcdbedbdbcjbbbgbdbbecbdbcdddbbifbbibdbedffebdclebebbecibcccbccgfdbcbefbjccbceebgdddcccddhdsdbglbebcehccbhefbcnehddebdgdjebbdbbicfbbecfcdcgbdgbcbdbbngbdibbfdgfcbdeebebcdekcfbficgcgddffebehbbbgfdbbbgdeddcmdcehdbbbccbcdbeijfbbdehecbedhbbflngecibbbhbfbbcbgcgceffbbbbcgbjcfbgbecbbdcbkfdrbdbbecfcmdbhbbbbiddbfbbbcbbbeckeecbckfbfbbbiccbkfcbgicbbfibhbdcfbeifbgkdeldkebbcdcefbchgdcdbhleevfcdebbccbbbddfcdcbdbccjccibecgccibckddcbdccfbdbddbdcbbbbbdfbbdcbjcddffcgbcibcedclcdccddebbfkbbcbccbmcbgbcdkhbbbbekbddbbcbpdfdfbgbcpcbbfbbfbbbeeckbibcdfjdcdcfcbgbbdbbfbbobcccdceffbccbddbbbmebfbgcgibfcebbbqdlbhcbmgbdicfbbgbcceeedfkdckbcdbfcbdfedibjfebcbdchdicbbekefccebdcchbchbcddbiddbdbdebbbccddbbdgcbceffobflccchgccgbdbcbbbcbbbcbcbibbhibjbebcccbblcbcdfbdgdcgbbfeecbgddejfcgcecdcbddccccbecfebecddfdfbeeccfdfbfclfbbbftdbdbcfebbjbbdbheefbmhfkbbbeebbcbbccejcdgdjbbbcfbdbdcjdeddbcddedebbfeclbfbbhncekeffcogbbbfdbdefbgcbbfcdbbebcchbbjbcbbecfbdcceeibbccbefbbdcbecggbgecgbcgibbblbccechgjbngelqchfddmbccfbbbcbdcehbbbecdccdcfeodbjlbdefedebfebegcbdkfgbcbbcdkrnbcfefbcefciddbcfbedbcgccbfbbmdcbcgcbccbecgbeecbkfdcieddfehbdceogjdceeccbdgcebdcbecdcbebifgbbidgdhcbfgqebjgdcbofhndbfbbbdbebfcccffcfddecebbbcegbcbdbbbgfcceecdccrefcbbcbebbfrefdkcbdjecbdbdcbdbgcgdegdchcdbcijhbddbbddddbeddfbcbbbcbbcdfebibebbocbbcbbjbbbbdbchcbhffbecemcbbebcdgdbdbbfbdcbefdkhbbccbdbbfbhbbbbcdbcfecgdccdbbbiccbchdbebbcbfccdemggbbbfcdccbdidbmcdiccghebbckgdbeddcebbbbcdcbbbbcecbbefbbidglfqgbbbfdbcbhcbcbbbbbdbcmgjefbbicgccccblcbbfjddbbbbifeihgeelgciebchclfocbebhbebhbchbefdcbbecebdbfbddcbeicbdcebdfecddbfdfcbccddbbdbfgbbgbddfckbbdkecfbgbcbcbdjbcbddgihccddcbbcbccbbhdgfbbciiddbbbbebbedbcbcfdifbebbfbbebhnbbcgdbgiddgbbchdebbeevddccdebbckecefdcdiedeiebeefbbbeeefbbbbbdbdbdggkdbcccbibecdcdbbcbcbbddbbbbbcfddkhidcccehbcdbbhgbkbfdichhfbmdbdfbegcdobdbcbdcdcggccbfbbchfccbfdfbbdbbgdccjbfbfbfcbbcecgkbbcdddcdcebbbebcchdbbmdchbddcbeidbbecbcchgbjccccfedgdcffbckcbgbdbedbgcckdbcccbfbbkcbiddhbccfbbbcdbebecbcdgbqmcbbcebccfkbcgcbbdhbcbcbdecdfbbbfcfibbbcccjbbcebbhefeifheiebeekfbcbbbdfcefdcfcbjddbbebcbcpbqfccjbfbdfgebbdgddbfbbecbgdebicecddebebbbdebebefbbeciccdcdcghfhdbbbebeejcfbcbebbbbbbhcncbeldbbcbcbdccibecdbjfbbcbbbbfbeebbdcdgleebbebdbmeccbbdccbddbbceedbdcbddbcdccddfdbbbdibgbbdfdbgcidgjcedbbfebbbsghgcdcbedbbhbckbbdedfedejcbbbcjddhbfcddmdbjdfbebbgjfjgccccdgccbibkdcbbbbjfbleebcleddbbceeddhbfdbddbdkebdibhdbddfbddbddchbdffeecccdhbeibccbbbibbbhbbbcjckbffgccebjebbbdedeedcbbdebcbdbfjclhkcbdcddhbhdfdbbbgebdfcgcbbgdbcbbbfbebeeighddfbdddecbgbcbgbbkcdecdddcbebgbebdbccbbebdcdehdbddiicfcbbbbbbedcvdkeeddcebcccbbcgmbbdgegcjeebbeddbiccbdefccbbbcbgcfdbggcfcdhdcdefbfbbbbcmbcdebhehgccfebbbebbgccigdebccbcecckfcbegdkclbecebecddgbchefddcibekbemgjcbfbddclckfbbibcfbbcbbdcbdecgccbbbccecbbcfcchgjcjjbbfecbfcbcbedebblcdficbgbbgfdbgbggbddbedbbddgdbfbbnbbdbebbcgbhbnibbddfgiidlbcbbhgbcbddhbgccdhcchbdciddbdbcgbekghbdecjddbbcbbibbcbbfbdbcdfecbedccebdcefdcdehcgbcddbhfeicfcccbfbdbfcccccfeccfbddcbcbgcigcdbcdbcbrbbbfcccefbbhcdcddbcbbebbbcfecdbecfbfobfcbecbbcdmcefebfcfbbbedfcdbbbedbbcbcbebccbibjbdgdeehebedbhhcbfejbeibdbccdcjcebbcbehgkbmcmbhccdcbbdcdgcchcbbfbbnibemccfbcicbbccfbjcbdibffcbcbebcebcccdcekbbfbifibdefddddcecbcebghbbmbgcebceebbbbcckceccccckidhcbbbbbddccbgbcgcdchlhffbebeibgdcbgfddgccciebccdcccdbjbmccfdcehlbcbdcedccbdddbbclbcdbbkecbbbbdbcrbchncjcccbghfhddcfccbbbibhhbfhbebdedbdbghbcgefbdcccidbbfebbbbjbbeeebbcgddgccebcfdcbbfhfgcbeddcbedekbbdbebbgcdbecjbdbcbdcfbebdbdehbcdbbecbebfdjcbbecbehghigbbcecfbbnbfcbccbebbhfgbdbcbfbcdcecbmddbcddbjbbklcbdfcbgbbdbbhbcbedbbcgbbbbcbccbbcicdbgecfjcbdmbcbbhbdbdebcbgebdfbcbccfbdccbjbbceckbbcbbfbhbfbjlcbdbfebbcbccfdbcblbbgcjdeedcclcbdcbdbebdbcfbedecccbfbdccmfcbbbbbcgcbbbcccfbdbefgiicffbbbbqmpgbcbccccbedchcdbdbbbghcfbcebddjcgdfecffqcbcccfbbebecdhecccdcbgcckbbfbhccdbgbbkcdbbbicdbcdbddbgdibflhbdccdbebfbbbbcdggbbdehbbbbccbdmccbechbbccdgcbbcccdccigecchbbbdcbcdbfccicbchbcibeccdkdcbcbchcejdcdbnbbcfdbdfbdhfdbbebbddbebhegodbbbbebjbcbdbfefbjicbbbbbddedbccdeedbcbdfdfcifdhfdgkejkfebebcdbcbdbebbbbfcebfgbbdfcccbkbeebhicbdgpcbcbcegjddcbbibcdhcgdehddclcbdbbdbndbdecclhdchfbcfebbbccbbcjhibbjdfeecbbcfjeddhgbcbdgfebgedddcgkbcbbdibefcdbceddbefbffbefjhddbdbbchdbbbbfcfbbbbdbcdjceebcdecccbcjccgcbcebbcbgbdhefkdehbcbbcbdccfbfdccgcbbbdbebdbccddgcdbbcddbebecbcbibgcececfdeclebcibbbbfbfcfgddkddbgbgbcddgdcdbdgcccceecdbbfccbdbbebcbcehccbbfjcbdccbdbcdccficcdebcchokckkeccbhglbcfcdfbdebgbfcdbhcbbccbgdcefbbeedcebfbbbbbcbfefgcbbelkdbbcfhbdbdecbbhcbbfhecgdfbcifeebbfbfgfcobbedcbbjcjeclhibceofdchchdecdcbhgefghbblbbhbdclbfdfdibcbddbbjkgeibibchgdfbcbcjdbcgdcbbebbbbccccefcfcbbbbbebbecbdhbedbbcccececdbgbfdcbdbdckbbcbbdcbbbfbcbdddbibbdfcdccbcbcchcdcccbfbbhdbbccfbdccgedccedbbdcccbcdbdbfbecgjbcdbebdcbecbccedbbidbdebfccbgbckembccceebbfbbbpdcfcbbcccbfdbbbbigbbeebbibchdbclbdbbeicfcebfbbccdbblhbdrbbfjbcbefbbccbfdcdfgbfbcdgebcbdeceblkccgbccbbbbdbbcbfbbdcccbcdbbbceccebdbeedbbbjebcgbdcegcbgddccbcdcdcbndbcebehcdbbgcigbcdehbbedecbdbfbegbhdgfbdcbdbicbbbdbjbbjjdcfbgddhgefbbcbdjdcidcgbcdebbbbcbceechedecgccbccfccebfhcdedbbcmbcgcbifcfibcijdbbcfedbceedgcgbdobffggdcbbddcbcdbfececbbcdbbbddbbqcbbfgebdbbbcefccfccfbfebgcbcefcbbdcbbgcgbbccbkbdccdgbbecjbccbfbgcbcghbbdcbcdkdcfbfgbcldcrdbjcccfbfgbkcdbceecebcbdfecbbbcceddcbcbcbcdbcdfcbdbdebdmbbdeblfdcbfdbbgiccchcebeedbenbfecccggedbcdelbwicdbcbddbdbgksbecefbbcgebbecbjdbcbmcheccbdkbdfecbgifbddbecbebdbcbbceddbjkfchbdbebbdebfdbbbbbcgdccccdbdddcbcbkbelefecgecbbjbccjdccbbfecehbbbebbbibfbjccdbclbcceceecbbejbcbhceebhcdebebbecbhbcfbddcebdbbcemcgdhceefdebfcggchdceebccbceebcbbddddbbbdeeecmddchbcfdebdcjcdebjblbcciddceecdbbbdbeebbdcdieedceebjfcjfbbbcbfceebbbebebhocfcfgijbddicbidchbelbenhgbicbebgecbcgbbdecbeekbfcbfeddcbidccbbdebbcefedebdkbbcdbckceggedcdecccgjbgebccddckcgdebgcdbebbjeeecccccbebhecbdhbhqfbdbgbeecdibchbcdebjbfdecbebibfecbdddbcecdfceddeddbbdcedbccjdbbbbcfbgdibcbbfdiccgdebjebbdcdcdbbbcecdedfbfecddcdfbdbcbcdcocbebckccbbeeccedffcdbecdfbbgcbcdcbcbfdbegcebddddbgbekcdbcbjbiibcbbcddfiebbcccjbgfcgbbecbbeedecfdgcfedmbbgbcbbcpdeecgbhcgodfbflbkbhlbcffcbhbeeedcbghbrbbcbcbcegehbiedcbjcbcbdbbbbcccbdgcdfdfecchdkegbeccgecbecedbbbbfbchjbdcdibfcbcjbebbdbbgcggcddbddddccdeeebbdbgqbbbdbjbfdbdbbcefdbcbfhbggdbdhbmbbcecBbhcbbdhfbbcbhjclcedccedelcdbbibhecdbfcchjdbcccccfbcfgeddchdccdbdbhefbdcnccdcibbgdbficbbdbbgdbgbdffkeicgcqdgbbfgbcdbdlbhfeebdbebdkbjbbdfbdbdegbbdchdbbcbdbbcbedgbkchfcfebdbbbccdbbcegjfbbcjbbblgdeccbcedbcffbecbcbcbcccbcbebbefcbfibcbgjebibdecbbdbcdebbbcbdbbccgcbdgbbfcdkbbbfbcblccdebrbeebbccbebbddbfcccgdbebddbebbcbbhcdldbdcccecdccbbfbccbbfdbdebcffhgbfdckbejkccigcdkfbbbebdddbcekebdebmdbbehcbcfigcdcbcbdpbjbbdebbdeccbbbcdcbcbidgibbeegbbdfffbbbcebfbebfcbdfcbbhecdebecebcbcdfedbbfgcebdbghegccbccbcdgdcecdbcbbfcbdbbcbbbcbbdbcbbcccmcehbcciembbbbfcciccbbidfbdbibblgiibcdebbbccdlbdcbccdbbbeebbidebccbcmbbcebbbcbedcfbcfgebbdbicbfdbhcbebbcdjbdcdbcbccbbdccbdfbdccbobmiedcbbbcdchbfbkdebbefcfdebhkdchdgdieecddbffhbbbccddebiecdbebgfbbjbcbdlbdeddhfgbbdbcebdcgddjbdcbbghgbddeibbcccfpefdkcdhqbgeecbcfbieedbcccbgejbbhgjgdefbjbkcmcbcebhbjcejfgcbgbcebdebeebbccdkebbbcbddbbjddcbilbhcbcbbgebkkbebclbdbbccbkgdcdbdcbcdbdehhnfeebbbbbcdcbecebcecdgcbcbedbcbbchbcchlghldccbgcbbigbfddbfeffdbhdefebbebggcbecbfckgnhcbbcbjcbccbdgdbccdfddbocbbfeehchgccbbfbeebgcbcchbedbbbbcbdccidbefbbdbchcbebbbjchddeebcfbbbbdccddgddcbcbcbhbbcfbcebdiedoecbfcbbchdbddjbbgbbcbccbcbuedeebiekcdbceecbdgcibdcdeefeccgcddbibdjccdbnbeccifnelehgcbkhqhbddbdbcdebbibgfdebcjcbccccbldpbebbfdgbbbiecfebfhjbcbcdfbbbiedecbcdebbbjkbfbiebbbkcbbhdbbbdrjbclhggfcibbdcbgdbgbhbcbebcechebgcfeccdbdjbgbbcdbbbfbdbccsdbgjbcjfbcdldcbnkgbfbbbbbbcbebcccbfgebobdcibcbcbbcekgekcbcgbbbbbfgbbbhibboecbccbcbcbelcdfedgbdbccdcckffgbdeeebcbiibdgfbfbfbbfcccfekkbbbbcbidclmcbffrecbcdcebbebebiecgbmbceccccfiebcjccdbcbdfbdeddbblfdecbcccfbbeddhbbbbceebcfbbicbeccgdbgcccccfbddcdfichfebedebbbcbeckcfbccbbgbbebbdfcfbfbbdffjeccdfbmhecddcicbcdcddfcefbbdbdfddbcbgbbhcbcgjddbccciccfbbfdffbcbcbdbbbdccjeebfcbclbceehbecgbbrccceddfcbgccebjedbcbgbdcffbfgcbbbgcbehdhjbjfbbhcbefdbfeccjbbccfgigdbbcfcecbeedbebcjcdfbdbdgefbdbbbbfbcebcecdtfbbdiccccegfcfbbfgdedhbbhbcdbfcbcbccccedddeibkhbqbecbdbjpcbfgcbbebbcbbbcfedbcfbjibbbebbcbfdeebcbhicccccebejgcchbjbddbefcfcjhdbffcgcbbbeibddckfbdbjcgchdgeibhbbefchjbbbccbbbfbeebcccbbccbbdbccghccbncbdbcmbeebdedccbddeddhcbbbbbdcchcifidbchkbcdcbbgbefbbjebbcfgbdcdfbbhfdbdccdndbcgebcfjedddcbbdbbfccnhbcbirbcgdcbdbfcdbfbccjcddeddhdcibfccebbcddldcccbbbcccjcbdcdebghcgfpcedcdccfbecebhbdcdbcddgcbbjbgdbdgeecbcehfdifbcbbfbbccbbeebdlebbceibcbbcbbcbccgbejcchddeccbdcfbdcbjdbdcbvcbjbddbfgfcjbbdfmbbscbbdebbbbdcdbfbgfedbeibebbdbocbfgbeefdifchtbbbbhefcdbqigbfddibbbdebjcdbhbcbhfbcccecbddfgcbbicfbdbbfhbcdcgbbcgcchgdbhfddkibcbdddbbdgcfbbbbcgcdbceefbbcchcdedbedcjbbbbdbchcbdedccdcdlcccccbcfbcdjbgbgdbcbebdbjecdbbbebhcqbcbfcedeeddgedoccgcbcjfbbdbhcbcfdbgkbecebbcecbfhcbcbehccbfdgbffbhcfhbbbbecbbgimcgcbebbhbbdffdbcebdbibfdcbibcqcbefbbbcbbbedbddbdcbcbbchbcblgbddddbfbbefebdbgdbbebcefceddebedbbbccdbecddkiccgfbbbbjgbedbdcbbcfbfodccdedfbbdbpccdcbqccebdfbefcbfccibeccbjbecjdcbdicbcmdeddbbjbhidqcbcbcecfbgekfmbcfdbjbbbeleecfhdbbbfmdgnbcgbbdbckhcedcefbcddbbccccfbbbddbdebcbchbbbbkhbdbbbbcfcbedbcbcebfbhbcbeemegfjbjbhdccbbdejdcbdlbqfcbbbbcddfcbibddbdgbijdbjbdicbdbbdfbebfbbcbcbbfhcbgpgfccebkbcbhkefbcbbbbecddbdgbcecbedbfedbfkdbjbfdicbeeebbcnidbbbdgdbbcbcdgibccihddccbegbddjbbeedghdjdccceccbfbebfcbcjbiccfecbeedbeiccdbbfbeedgbcdbdcccefcffbcddgfdfccbcojbfdbcbccdfcbbegelbcbcbgdbcbcbfbjdjbebbcbgbelbbbboedcbhecfkcbelbdnbcbccdibcdhcbeciisbcdcedhcceccgibgbbdbcgbgbbmbbgcfbfhcbdcbbdhcgbbbdebcbkfcbdbdbdghdbbbcdcddebbdccejbdcbcgbddcghbcdbceffbbbnbfegebcebcdcbfbbfhfccbbjdbclbhfgcebbcbibeeeecbfjbddckcbcgbcdhfhbbccchbccdhffgfbbbeefcdecbbcdcbbdecbcbdbbfbbbbcdbbdcbcdbdojcbedddiebfebccecefbbcddbccdldfdbdehchbbjlbcbbbgkdhcddbbiebeefbhlbfcedefbdhcedbifcbcebfcfbecbbbcchdcbcdcfggdfdbgfbdcfbccbcdgdbfbfebddbbccfdcfblbbeedciebdhbebdlgdbodbdhbhdddcbbbcbeeccbhdcgdebbcechcgbfcbbeiggbdbbbdgdcdeeebdbgcdefbebehdgebjcfcebdbdgbbbecpbbfbmcccngbcfbgccecgcbehecbccebccbfhbbdhgcbibcbdebcbicdefebbcbbbcgbbebbccbgccccmdccbbecbdebbcbbcbdebbfbeegcggbhbcdckcbcbcbbfbebbbdcbhghceeecbcbfbffelcbbbbeddjgfdcgdkbbdebbcecccdbecghpdbbgjdcbbfcffbdcdbfeednbggfchifibhbbbfcbccccbbfdbcbbdgbkbehbecfffddcdclebdcbebdccgfbhccdfebbfdbehbdecgdecbcbdbbbefichhebcfdbsbcccdjbedbdbccecdgbhgccthbdbbecfbdicccfbbckddbeidbfebceeccbdfdeebbbbbdcbehbbcbhfgdccbhchbceidcdjbmpcbbgbedfeddcbbceeccgdbjccehcbefdbebecdbjdbdccibbebcceccbjbfddbbcbbbddcefcbbbfcccccmdbhcbeeccbgbedbfkbebcbbdbhbbsccbcfdbbbcfdehcidbcbbbdbbhdbdbbceecbgbbfbbdddifbeccdbedfbbfbblddigecbbbbfbccbgcebbbfebbececcbdbcbcbbcbgbcfedbddbdbbbdbedcccfcdgqccbcbbgcbbfdcebknbdhcecbbcdcccbbegbecghdlcldbbbbbcbbcbclbbfbccbcbcccbcbdbeccbcbeelccbkffbbcdchbebdebbbdjbciceeblffchbgebbbcicbbdedfckcgbcdfbcdkedddcdejgdbddbbhbkgeebdcdebbbhhcbccbdbbbdgihddcckgcecddcbdbcbedebcfddgbdbcebgcbbbbddecfbcbebcebcgdhcjhbelbfgfoeedbcbcfcdecbcdgdgdcddgcecfbcgbgifcidbffbefebbccegdfecfhcfedbbchhcdfbdddldcbfecefgbfbbdbjffoccccbeeeeccfdbdkdbfedbbifbgpfcbbgcbbbedbcecbkgccbdbcbddbbeidcbdebekbedbeeccbbbdcecccbfdcfjgnefheddcecdcbiddddcedqggbcbgfbfbbgfcdbbbebcjccjcdbgffbkbcfbiepccdeboddkcccicbhbdjccfbfdbcbcfedgececgcdcdibdidbikeedbcefbbbceccccbhdedcbbddbjeccbmmbfofbccecbhcbdbbhbgdbefibhedbcbddhbfcgbbbgcdfebfdcecdcdbccbfcbbbbdbbbdckhbrkcbdnbfcccfbcbbddecddffidcscjccqcebcesbbdcddlcbgikbdbbffbbobbbcbflgcdcbbcbebdchbbccbbbebbcbecbqdcdeedebdfcdngbhdhcbbbfcbcbcbhbbbcbbfkhbfgcdlbgbbbkehbbdbbobchcbmdcbddbfcgfgdbccddideigfeceddebdbcchecbbcbfemcbcbbgdddidbbcdhdfgejbdcbblbbekdbhbbcdefdfcdcbkbfbddcecdedfccndebccebdbbdbdkgehffdbhgbecbscbdcbdgfcbcbkbcbdcbbldhhbbbcbdbgfccbcbbcfeblddbfeelbebbfefccebcfbfdcbdbehecccbehjbbbibdbgfecfbgdbccjbjfgddhgbdbhconcbhcedcdbbdbdcbechdgbhcebebedbcbbbcdcbkfbcgbnddicebhicbbdbbebdgbddebdcgfbctjijcggbdbbbccfcbhcbcbhccfhccbbbhbccgecfbbcbcbcbiidefbmcbgbbegbchcjbbeebbebbbbhlcehiddbddcbeedfcddgbccbcbcbcbdbecbfbcbcbbbbdengecddgdcdbihebbjcdhihfhddgbfednbbbcbbebdhbbcdcgbeblbhbebcbbbbbggcebebdcbjedbdbbfddbbifbifqbfedcfbbeefcekhbecbccbdedbchdibicebblcbgxdbcbefbfedbdbcbgdddgebficcdbfcebgbbedecfbcccegdfcbbcdbfdbbbbdbfbcbcbfdccbcgbbcebdcbdfcgfcbcbfcbbchcbbbdeqbjmceebecddcbgbbbdbbibcbdcebeiebfeebceebcgccibbccbgedlhlbbebgbkdefbddccjdbefccfbbbdccbbbecbbblbbbedbclcebmchbcbhgbcbbbdelbbieefbhdbmifcbdgbebfcbdchibeedjecobbcbfcchbdcdbcbbcfcchgclibbccceecbcgbgbbbbdejbdjebcbcfbdbdblcbbbhbhfcgececbchfeieccbcecdbiecbgcdcccbhgckbcebdbfbfebbdkgccdicdedgbeccmtbhncecbdfeehecbcggdhbbfbfdefbcbbfegbkfdjbcffobdbeccceddbbbbcbggbdcbcfcbfbeegjobfbbbefbjgdcbbeecgnicbbeidcbeeefhcbdcfbibbbibebcdcgdfbckedhcbiehcedgcdbbbbecbbfdbbfcfeebgccbebdcbbgbkcdcblcebbfcgbcdeccdcebdhcgbcbcbbeebbfcbbecdcebfbcdbcducdgieeebfdceddgeccbdddcbcfcddcbbkbcgdbpbbdcccdbbccngbbebjcccbcbbfbccbchdccdgbdbddcftddbeedbcdbwddddfhchbbkbfbhbbblbbdcbcccgdeciceeccdcpddfebhdeeccfbbjcelcbebbccdbbbddbhbcgcgebfecbbddibbbccbbefcedfbedddbgeefbbcfbfdfbbhccjbbbbbkdieedgebbebbfcgfcefbhhfffbebdfbbccdcjhcdddcccbccdbcgbcdfcecbbbbbbfcedddcdbcbbgbggmecbbdbdfeecbcbcdbgjifedccbcdbebfcfebcgbbbmbdccibbdbcbbcbbcbcjcbcccbcdcdbefbciededbbciedifhbjcccbcfefeedcgmdqebcbbekdcbdgegeffdbebheccccbbcfbbccbdhdjcbbbhbcbdfceejbdbbbcdchebbbdeclbgdebebdcdbbcbldeibbcgehbcjbbhfebbfedbbgbcfcchecedbdbfdbcebbkbgecbccefeddvbbcdmbdhlmdbcedbedcfgebcbdfccghddbbhelbbcddcbecgdibhgbbbdhctdbckcecefgbbbbfcfdibfbbcdeddgbbhbbckeccbhbbcdbdfhbfcddebgibddccceebfkcbbdddbfbccfddbfbfbbbcecccbcchfbbbbbdhdbfdkclbbcebfbebiidejdhcbfieubbbbbhqifedebbcgehdjdbbcficeebdcbebkbedbcbcfebgbddjdbbdfbbccbdbcbfdeoceffffffbbcbdbikgfbgbdkbcbgbbocdbfbcdedhcddbedbbbbcbdclchdebcbcccbenddebjebggdbcdehdjbfdcebdbcccgbgdbbffdcfecddbbccgbgcbcgebpbcdfcccbiecddhbebbbbeddfdcdbccbfgbcchebbhbfifedcbcbbbehibfbbdcdcbbfbbgcebceecbdpbbbgfjbhbbcdlbbedbdchkcjcebhcbbbfjbedfkmdbcdcbbcbbbcchcbfbgebcjdcdcnffcebcjedcbcgccfibfbbdbfececdfddcecccbbddedfbcdhbecfdcbckdccgfbbjcbbcclgcdfbdbcgccbccdebddhcbbflcbccbcjhcbgdbdeibbcdfbcdecicbcjbhcdrbccbebbbcfdhfebbbcbbfjbchcscdcddbcbddfececjkbfcgecfembbfbcdbbcegbccdeedldgbemccbbdbbccbhceceghdchbbgedfbccpdfcgbbfgbbebbddcdmcbbccbgcfbbcefhedgdcccbceebbfcbbebfccfjcdbcfbhpebbbcdbdbbcfeffbedebbhfbbchhbddefdfgccfbbcfdobdheibbedcbbgebbefgbcebbbicicbbdceeccfcgdbbdbcbmcebcfbcfccbfbhcebcbkcbgbdebgeccchcefdcgkfbiccbbbdbidebbbfbbhbbficbbjdccccfcfceccccdcgkfbbcbecffbehdbdccecdbldbfbjblgcddibjfebgfbfdefgccbceebbeeedbefcffcgdchgbfhdbdcfflbepcebkedehbgbfgbbeebbggfhfebbfecbcfccebebgcdcicdbhbbcbeebbbeiccbbhebdgbbdbcbcoeeebbcbkbfdfdcbebqibefhlfbfedddbdcbkbcbbebgddcbdbcebcedbbbbedbbbbbdbdkbjdbbbbcjgbckllhdcdcmhdecbecbjgebbbedmdebhbbfcflebffcdbecbbcblkhbbgicbcbfbcehcbbgfbdcheeccgcfbejegedebcbcbdbicfcbcgddbcdddbeidbbeebccbbebbbddbbbflbfkbbbccbdbdbhcdbfbbbedeececbddbhmdccecccbcbhbbbdbfcdbjcdcbdccbbggegbjbdnchdeceedccfbbcebbcblebbfbjgdbcbsfdbbdbdfbbbdcfcdibgcbgjdeeebgdfehbbbgfskcbddcbbcgbicedfeccdbdbcdbdnbbfjbbbccfhdbbbkbebfbbcebfobdccbcbcckibigfdbgfeicfcbcbcccecdfcbdggikeicbcffhddccehccbbcgbciceckceeifcddbhkebbcbcccbcbcbcbgbcbbdbbbbdegbdbgbbbbfbbfeccebhgbcfccchcbbcbedccghdbdbdcbbdgbbdcocdcchdbbdfdqcbcbfccbdfgbpgegkecbbcdjicgdbeegefbbeddedefcgfickcfeclgbecbddcfebbbchdcbccbddnjblcecbedfcbbgghlgcddfbdbcecbcecmcedddebcdgbfebdncbbecbfigbbceedbbfbgbebbjccbbgcdcobbbjbcbidccfhdhcbbgcehhceehgceeecefgmbbccdfbcichbdcbeecjlbidfcebhbdcgdedhdbcbfbdeeeeeebbcbebbcbfdffbfcedmoebbbddebebcbccdbhegbbecgbbbdbfebefheffcicbeddebebdcgefhfkfcdcbfhbiebbbefhghgddcbfefbbcfgdcbcccgbcdbeclbegchclcbgngibbbbdgbdccedjebebbbcebcecdebibbfcbiebcgcbddbhckebdecjfededdbcccbbgebebccfbcdcgeddhdegibkfdcggbdddibdfffbdecdcdecbbfedibbjfdbjcedfibdbcibbcscfekbibdbebbbcbfdbbkjcbdebcbcgckmccghbbgefdcdgccbcbcccbfbdbfbgbcbibhcbjcdfpbcbfhfffceceeegbbbcjdeckedcbbgcdcccdbdcbcedbehbecbdedebchcccdbbbbchbbbkdbcbckgbbcbfddlebbbchegcbggdedbbgcccbbdbccbehdgeddfbdfgbcdfjchebbegedbcddbddbggbcbbdbdlebdfbbbgcccbgbjbcicdbbdcdbefebccbccdlbgfgincebibmdbdfcebcfbfcbbbbcbdbdbchbigbcdjbcbbbcbcddbidccgeihjbcfcdbgdjbccdcdcfebdcfbibcbeidbecfdbibbegdbfdbbebfccbdgbcdcgcbecedbfebbgibbebgcbcdbeddededbbfdbccbcgdfceecdcbfcjccfbcbcmgbdbjghcddbghgccfbbegceecbbcgbdcbbbcbcegbhbdbbbbhedhhfbbejbeebchfbbbdbchdfgmcfdccgfeccbdfbbfbgbccbbbbdbemlpbccpcbgbicedfbfddbbhgbdhdbbdhbcbcgbccebbdcfbbbbebdbcecdcbdbffdbcdbdfbdhegbbdfgmbfbbibdefdbbbecdddgbcbbdbcdcdgegbfbhchcbbfgbcbbecibecbcbceebcdgcbbbbcbfccdlddfcdbgcckdbdjbbcccedebfccbcdbbbbddgcdgcgbbdbrcchdcdbcbdedbfbeebiccdclblbcbbhbiccblbbceflbcdgcbebceddjddbbcdeddcddfbecebbcedfdfeddbfbcbfcdjdbbfbbdgbddcbbehdckibbebbccccneiebfbbbbfdbbcbebebgddbcedbbheddbcdcbdbccbbcbdcbcbbebdbedbgbbdfdceebceddcbbecbbfddcgbblbcifdebdijbbbdcebgebgbbgbbfbccddcdjcffhcdgbfcbedjfedbfdcdgbdcbocccdcbcbddekibfdjbbcdebgecfcbdbgehccdebbefcbcbbfjedfbdbcbedbbebcfdcfccebdiwebbdcdccddedkehdbddbcdbdjeckbbbbbbcjbpcebhibdfbhdbbcgbbfbdcbcbbbebbeiodgccccfgcbbidbfbhfddbhddfbcgbdbccbcecgdcdbddhibcdfdbcdcegbeddfddfbcebbcbdbdfbcbdccfepbffbddddkbbhcedfbhbcebedddeibcdbcbdbdbcjdcbbfccefcfbbbicfefcchcgeccdidfcedgbccbelfebelhcccbfbgcbhhbbdbbbccbbcefecbpbckcebdbcfhbbhcbecgcbkcbbhddcebcdcbccdbdbbbebhhcbfhcbcbbbdcccbibgdbcoebdcbgbbblcbbbbfbcicdecdcbfdbcccjcbccebbccbbibbijncbcebcgcbjebfeflcbbebeddckbbbcebhibbebiiccpbdcgchfbcdcccbdcecbfecbdcjdchcbcbcegbeceebbdbbdbbffbcdgcffbdeecbdbbbedkbbhbdcdbigdbbbdbfdiebedbbfhbbdebebccedcgjbdbcdbcchbfbcdicfdedbidgidebdcccbcdgibhhhcbhbjbdbibbbijbcdejdbbcidecjfbekhdebqdcccebdeenbfccdbchbbcgcbbdfhmbbfbdccbdbjbiicjbfbddcccgbfgbcbeeecdebdcpbddbgbbcjjbccedbecifdbbggdebkecebcddghbcbbcbbeeddeccffbcccbgcbgbeeccbbgbbcecdbdbbdgfdhckijffhcjfbccbeiecccdbfbgcbdbbefbedgdhbfdddecgdbdcbbebjbbbjfgeibgfcbjbbejdbcdcccbgdddfbedbnfdcdbofdbbcbcdcdbbgbbddncdpdfcbfdcgeedccfbcbbcbhbbdgdbdcbedbcgccecbbfedcbdbcccicegidbbddgjbcbifcefbejddbfcccjhbehjibbicegbcbebbbcceebdkbfedcdbebicbbebbeccbdddbjbcbcchebhbbdbgcdfbbebbccdgdbcddcddlbdjfcieebdbihbodjcecbcddcefhcbffgggcggbcccdbcceeibddjeehbcddckbhdbgfffdcbgbfhfcfebbffdfgifcbbfbebbgbbedkecbcedfbcibcdeffdccbgdcbddbccbecdiibbdbcbcdfebgdcecgbjkbbbgcdnbbbgbccbcbddedbglbceecfcbedmcebchbbgfcdchgimbbcemlccbbhbbgbcebcdbddbbgccgdfbccbbccbdbbebbfbdcbcefdbeeccfbpbelkdgedefbdbddccbhbddcgbbbbcbcbbcfbcchedffcbdmbebccfcbcmbbheefbbdilbcgcbbdhbehbcbbdcfcfifbcbbbdfeegkhdebedbcjjdedfdbbdbdfbibebbfbbckcdffdihbebecbfgbcecbcchbdibbhgbbcbbcbhbcbhdhdcbdbcbhcccbebcfdcbjegcbbbbbbefcbgcbedddddfgbbckdccgbfeebcdcbkccddbeicchgbbdchjbcddbbfbbnbbbbjbegbffdicdbbfbecgecdhbdbbecbhbfdbbbebcbbbdbbjblfbgcmdkdgcbdcbcdfccffjdhebbcbbbgcgccfbcfcbcjdbdibgbceicbeeccgecckebgfckhdcbfcdbdbbjcbdibcfbbecbfcejdebbbbdebmeebbcfcbkcfjkbidbcgbbcbnbcccecbbdefhgfdecedbbecbdhegcdieebehccbbcbcdgcfccebebbcchhbebcjgefbgbdbdccecebdcfbdebmcdhebbbcjbdgebicgdcdbbbbbddbcjfbedbgcfcibbbcdbdeckcibbcebbbcedcccigcccbfbcecdbefdccgjdgdddcecccddcbcbffbdbcifhgccbbcgbbbccgbbbgcbcgcbbgdcfiibkcfemibbdcceecffdfcdbcmfbcbcebdbdgbbebcdhbcbcccpjedgbbcbegcccbmbpbbdbdgcdbbbbbggebccdfbcdjfbbbbbcudfjcecccceecbbebbbbddbdcbdbbbdiqjfddbedbbfcdbdechbbbckbcccecbbbebedcedddcbccbgdecddegbelbdbcdcbbedbbbgcgdefghbbfbdcgcbicibbcpdcbdejggbffddbhbbbgcdbhgbgbbbbcgdgdeeebdfdcbfobgdcgmcfdbbccgeehbbbcdffbcccdfbbdekbccbgbibcebemedhcddcdedcbdcdccbbccdmbbckcefbbcegbbibbfbgiedgmcbbbcdehcebfcegcbcbbbcbfbbbbbfeibegbfbbcegdbbchjcbbdfbcbdgdbbcoebbgbgefhitmkcbcbdcgcgdcffdbbfbbbgeccdbebendebebbbbccefbccpcbcccdbciciiccmedbddcfcicbceddbebebedhjjeebccdejccfibhbbbdcbofcbcbbdbbkddgbbfkfjbcbbcbbcedbecgbbcemcdhbbgcecdjbhbecfbfnhdcjkbbbcfcdbgbdeciebbbfebdbbbbccdfddfbbhdbbkccigbecdbckcbebfcdcbbhbdgbmbjbecedccrhedcgkdbbcdkbebcigheeccbcfbfbcbdcjlfcbdcdjbdbbbbibbbdfcdbpcddbbbbcbcfbbccdmfebebbdgfecgbcrfbddbdcgfdiicccdbkbbddbedceffgbkccbbdbfbdddhbebbbedcbfojccdccccddbbbhhbicgbcebkbbbebkgcbibbbjcebccfbdbdfdddcdibdcbhkbcbhbcgchlddcefbebfcfccbbnelbedbfdbnddbbcbbdibbdccbdbugbfbebbbekclccbjbdccfbbcsedeceebgbbebcggbbcnccdfgcbfbgcccebbfdibhlffbgbbgehcdjbecbeccdbdbcgdedcchbcdbgbccfccbbcdbebiecccbeblffbhebgbbbbdcbcehgbnbbgcdccjldfcebjgbbcbibbfccehcicbghmbddcbfbcbcbbehecbbecffejbdbbhbe']" + ] + }, + "execution_count": 115, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "text = ''\n", + "with open('100k_gemotric', 'r') as file:\n", + " text = file.read()\n", + "\n", + "print('unigram_entropy: ', unigram_entropy(text))\n", + "codec = HuffmanCodec.from_data(text)\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text[:3]).hex(),16)))\n", + "\n", + "codec = HuffmanCodec.from_data(text.split())\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text.split()[:3]).hex(),16)))\n", + "print('unigram_entropy words: ', unigram_entropy(text.split()))\n", + "\n", + "save_codec_to_files(text, 'on_chars/100k_gemotric_coded')\n", + "save_codec_to_files(text.split(), 'on_words/100k_gemotric_coded')\n", + "text.split([])\n" + ] + }, + { + "cell_type": "code", + "execution_count": 105, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "unigram_entropy: 0.9999978659644434\n", + "3 pierwsze znaki 01011000\n", + "3 pierwsze znaki 10000000\n", + "unigram_entropy words: -0.0\n" + ] + } + ], + "source": [ + "text = ''\n", + "with open('100k_dwupunkt_p_05', 'r') as file:\n", + " text = file.read()\n", + "\n", + "print('unigram_entropy: ', unigram_entropy(text))\n", + "codec = HuffmanCodec.from_data(text)\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text[:3]).hex(),16)))\n", + "\n", + "codec = HuffmanCodec.from_data(text.split())\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text.split()[:3]).hex(),16)))\n", + "print('unigram_entropy words: ', unigram_entropy(text.split()))\n", + "\n", + "save_codec_to_files(text, 'on_chars/100k_dwupunkt_p_05_coded')\n", + "save_codec_to_files(text.split(), 'on_words/100k_dwupunkt_p_05_coded')" + ] + }, + { + "cell_type": "code", + "execution_count": 104, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "unigram_entropy: 0.4689321918830734\n", + "3 pierwsze znaki 11100000\n", + "3 pierwsze znaki 10000000\n", + "unigram_entropy words: -0.0\n" + ] + } + ], + "source": [ + "text = ''\n", + "with open('100k_dwupunkt_p_09', 'r') as file:\n", + " text = file.read()\n", + "\n", + "print('unigram_entropy: ', unigram_entropy(text))\n", + "codec = HuffmanCodec.from_data(text)\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text[:3]).hex(),16)))\n", + "\n", + "codec = HuffmanCodec.from_data(text.split())\n", + "print('3 pierwsze znaki', \"{:08b}\".format(int(codec.encode(text.split()[:3]).hex(),16)))\n", + "print('unigram_entropy words: ', unigram_entropy(text.split()))\n", + "\n", + "save_codec_to_files(text, 'on_chars/100k_dwupunkt_p_09_coded')\n", + "save_codec_to_files(text.split(), 'on_words/100k_dwupunkt_p_09_coded')" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3.8.12 64-bit", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.12" + }, + "orig_nbformat": 4, + "vscode": { + "interpreter": { + "hash": "31f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6" + } + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}