54364654223841937997118204478605530974640065762590303678387260343628880245729405372784851811350388793564633341079071524323317820258268125967446893821991481602966410027710753299545996982144371799165588545938931210422056608655116146868091245756538726561415531115460882099373161226355836715532769330297796682775603941917539892868763167732144179827582158837389768799195502727694479699649730821124256497429933681026925330519281131667441916770839032529648421134776663793910467940660564091546518017275989558576741151329717335304954630332181421114699264642877839915601438582333957538727624107203787492399525472644519216995664504481114826021756724878667773691894112854426502296656632023109392496364785158235025397879988723525747066218624104335606631254915147642494326862921772781053208856886843921069774578840474205988438820746776847246803756976461593798449855350874112909942786423456754844086307667494892719184178742893639867597491440636815845989378917547697984279770735585325777757444436188991093453217273199484845338807849982493151655532444917716186342372287743556687594849776422718106232947653314997638450582067785921619890275979681709721945412168773535297144541773100628585038316768343262475963421584742872830988640740226153257455042262629730910311302195292396685589336638885943743846768616917858218188256246526839735037409153169117270561384336835633170847060691795911360622867527451221961915732729477324463561782436936359455024327981820290028040237111694489687521805944920240729265878970472112441851268169187144296774263437672648407771293399051927492128254738560366866348726274693558598816994023372689902623989660448013032078250683718065305317241095535832058166286172465281021128341792686305887064859207224616393731939244861750158327625165696377076149303375199286214631596858571388261502910766985131013031996736338538372203260822297223316111899452889250382025759907606828381117465423155546920789602980942293968184869806563321615281963334870867592851393918764335303515676154675450125404295641836982335023420203181638004351642867647741324075808954619140097480567766227543931530191533526238518448714146757740516856094300888167663367415935157683512863924136523475382545318531217659381456574388524052633831529436548594355789385702641020478004113064313208410515732030387166364849347278532697528914752077448100362367298531757973663522181186607707244045073410353543812757716643969796798564292404018793796760724609955809478306713350953289198765065294038738879249886639445497571169871369447995714498189253927382629952047879361166294642457749776278007435797087734688592638572757323119171889066995302424393725808720554155901447739614912594772001167514041144567099965162475496292346203298306167491617021931828812898158427725907576162315318922693956377727812286617082344089016441110622072449666617037499177984441740949832276824570021339050922159841803987794864794551188993032302866882981597869394123777859369263583204760707795442655186658847563488930622159224345900888711602011597566268407195209676282690977160335827720720613124687471261387780417978823122242913135709897928974777113249868623782101673771216880367893818518692672521847210692063335108216214879152579037079881465649238405995952077003893769648931927549708912227119150941874593117724633955150629016442813879238915417887064021527453521468953318288658242619045212996196841241513653293149083212843259233277239196031920120203657340563829124880611955096784985450573473267857338047584520944735247263582313182183217156543251386119768697073473883009933652867064839448180930162956517771375337327299327800123718309947505101133718640808924278162446673602202804335336490798216637496459473676923190167138383933259726138370317692754545940484326921344985989001568179499278336828179923845148331417229832173229078814885763059149491186435518707440002587534542953774726834770549487715225657983954850258861119368941399922739261322592857463739434652951664345597926277529422629445859526459748473197624355557179209439733981051602270695626160747471850825692445739504758442411524090267537961553277517501754033412952793494799946978970851089401452773102797626290165934145558549775141378362222279340233047669200379111866250106021331927258057708484378162407822266397092976937588890336552301183142526134164476671640759417513251428974825273876663471814927768538582804876772632185256279531497845668616153689843122033175357224698843526346136827359183103900925928978046881861152735738110645651216107720084295226940181198136128507583531249283959842344355357743983403203665064838983990553646149495191236956877771962223977384656396246254942159321558415469399324220109129450353993812107085675340456123463722579637108801332790284382766841464373906496206367415192705850279885905154819816811315448793654102439784185003951638246566612866856885682333247669293860144563061421373259848997128671344567040122652314499684987599151178760396993689688765835229786410761307146792586561957247077684488653656292419298247366620387745247044347981848261021577794032734307084785896737847326957539955537969952519074421337382157551782335083707498356760813892189885943321002515171521491673593518378995718467257793304819953211671058446912224521050735599321292606772106178721452429965508480025228848796481169475951390249486786371301290186876909223815289081572296299532259131427466615310091933662568665338187386881742371394201386241454216566480052637002974683253121093145591182155115325138733638941388996449123571658762449706468069347326213818581200328777942371071476174834462547572306314005649591274796346019162443616374280953488854583636946183792813055188033705848744158200902816383542133757083291645876573034803637281510207724709875878573146294634940670432538598278957786286061327311929203600733636851048826826356533662378831673868562372712589248333382192594016931765735260155607646586595419853497840493873867977838811204018941715573061327100508613343358088418717985285