64022449721180132303852356410073768575213459378517599886415896783859118669237827589002401542995916517579584935277387174472097611933520268231428888115959630469179215439846468202789296921533125594413939602565815215169780606244273079768075372446173730537241419607842824647761878491929581330583867906837631661138579697137511262762225011579117397925655366655331872643348710796646637538958256049143946014978926533496579923127314377430973581768108712794137794325212877842633126189901833105657293993579286985692861984798544589666662457695790821717896241270671394659477735631545824887646356646802063983897525254732845068686910446008345997974394392631507471699113083989874440483436744367717317967762363220780317937869655259441846883891683937712884704471224137498855119707982395185299288081714049077492566035145781386330476478348548055150516585515007788244103413936545591159975810485714295534745453283349790237168876639212532368028502131542438889274269459355738738664060993215424765126228217166998579365727875793251504779739561994383302675147782768432796055958529837810162682560964670082700122823896456182534581517385812178522723512775091552945514833135954583546646031494734093257108680777714148240752258874825763592447867214565197756659321322503133474742955151561675552176272245182429219341148312956936391972811765053849389907962259820415142958068216466981586666690160971192575930355086316461044202693338718826589718252279575825928660770663969772712426711263414832036326659855763443505213912921247258287961634328201639625786839396972133097553755146287877871147111744903663015616548621984731908096425942520557227622237842872455344522823321778476497279783227266064283742688170555085046391336004474367458036958633239688301480993918881485740721029283200485099397140267551833410712055487200645292120524089851090582482531128566213247182458016122557934690955163201779846846205033857727559554274064695389818649109743530618136434950514526113212113113164552200623122712486712899203629830881264837672971571583175413076493715171575778099694730424265108201395572673364675814917370042047938151589471368767250689734177888886266957418824972414592474674162495398079643205684243604949384767921082618867257045432674132427601886111861024502658449510433023075421131884259424363182678776278724259293609460883056828511632654532755701463970681186801008467356042303848766039855247486230698678160851022196141992814156244712063149752883249429920738265426644444642281163494138086924190488141261992389549122686819720196062691363113974632023343139440451601403167021943642177307236117977929811234427488218528306131601901478812856998847549302079472196813931100616556222643867294279775443669774803524091894172328992950218976686994113530893854977986313077815628245777155286839102240921541257731493146449635295323640926512376050149334771033893195022221594845189289473285362790014192003891492847178084300715167831869476823851263796442367433688616267231646749777298870695168798301130955655373995444554130641841373157262514794517382911115301832189320858165553192742674876352868019491934506767305353165886456501321970207878830262661034891985936121216569183019328348561548998386216747484158379220928936895512022792190186648697151778494477041475754775068653237967869529956631698241433712739404187583317652570684287224653341660096334689631392534634733334562778645737346775546428481755410095122793712627985126917268667663257643067971037622975662214194811381407859385573806628239153613407194687876725188802617454266931982924015400818053566240851554960938100831202952896363970412091622617446343174936702086027039178576935732385684255944177067932241652845291629380729976675733680853245272281579322879211859193892775062591773274189805670109049332206134839104909846415557184724810914043273426163141246232293992575701912263936315784134750356459727695014544992769271675826754720832217655791809407334849722944204899431804896074857037668937664557618895367271014503184989206482366107448638918585080463448245316314349018469581988617094091587977272193797638633114668269378327621941124913919883524140649470908897850348431138801823731198901547826763603875091942743381721324309657246009303957230683213292149253296880780386765664649946276809273654477879777137774042267935177087295840910712059830550081912871399414052267338197384854890058109571969970175291384760072507682454919262214316056647392392666049350715939601237273135856314652154855416558281202488228949929992727960639356470957489760454562399850969172888614596828759566150804416537634949692173720318813814350726622262258415874994479158111798269394384035771748941587490506075149656553865107774989294498610051564685319119317531602358132749384951706049667382337924081166425065277095471899503631830449922421276494838951422236349304972422254129644844658534717873269484131763514061055712667044328683259721633636665703243117505709752163625219735671623205192382763117228164844741390196814367487527271162452865468172921919800647513887656517221811146354151809407123245722631518409864413179673310082303413698086111478012814334752886965092781860129245428778128518499168876887947967583284689683780526768165054345300506435989349296054472271265765134846223120753751616686929251697714737293427786815123741319348913404581313754998853236715825920359899862959556450534766480163962496872704945725455155171903608211966961784519579932049926321111131913208945979389364884595841745577294292619621531355130150431188312298767647642531282645485752079036393621999667176728229706674717908774785579884505660892314167612808156556197955625585372303291116624441111032413599453857288763644103474312748917602711233652181918451261996964277445442931583319680151808345789818188054772588923082363664460878450912710235960573530013178936426515348453732984574697300884129514465722961483281985911190093266142119091535376456820889657766191320493702890568585046271397438271048225295343905485254377394261446903708