486142946289938429796059019837669048318626873523141755767990256883823618456962939182534458971995799055542033449833521191021782735696549443184907397202807567801141456747575153572654899787596535345029670922865612813667996162915591208257240163779243457149166820777843691032496840499676311137957485130435975566636787397928767147958713873204337805497888572171744182674752693551892334045203878795795625349936210912087838431852809884466680078684332728169274932044272838672774171383467847347362828754290034256692574532054113399891666381612157391502234109345563497624114795965408924171363261924733849776684751577722591347020683275535297151839897739183518394514879598718054896695074404623182972863760101721087250940263679697591445360069736960264115010818830274468033607457622492378730546627940892734815714240719094143988182526847146117173797407575663961273326178138929078387053551414312195723770367923426502918590965924114922373750812799096720567198698724551612397720395660768213847916881347164390272193465127576611424659198358835742692674411324521743356355684843852390984174734361887179411309819430029373215288899259575470639835317789332982225383915230798855185369763622153138537163590042001052469389616160798777667398970336092166633242728297284811305767932400528341979407154736175839488231616009417216965147486045779178859462264968014057065999624266567395317788363169880964364524695888127873219042649058208348953846986231863571237123263691909757323854301527993236862203957965144558876058228543125225491061385859583776727770174632796951622050372934884396057270349789325269660469364505373678976416396919284476541743487063487416018217164409250812752237564507070864410098386909307026918673741206521331088634642188163220891736542376758397242764150581205346992734646144031999678649211472719472585085866863627570294210638130413913412644035206987833928018495081209731486897365285572874201945006301310623976720314818498971523561258033902140793791957821154442372712566953455694128434915748273932194230771302750186383848930023458704718074624726872321645358484225145642264792182893923679253511419456668927427621376361939387353159144581432725452906190969395429730295809666952344549223149833824908693437197719219460489087298475076294912702642511666792324414488133411508289555115005996780277723528647342835817742921227481623517790915216141990109251861973568024770624271625996526928406589118563104932360792737691812155779539841975231606764841008046977273767298307779268552584414375440394673507110619330732446371873263581006108135333728730844219205591431539441581358815376470463431134534244924792271117590979687050937738072051810297499258954095969766996096346935323142666984953584114142741224975838341725045983275493269893685287783518289254708318619136165379972736450300468001211883942928587904366394626864522432757238752475343628078897175301580983553629834603075348544507454298919236391969495883141542428128791062177937621658783061246371457302282594263109903487694056526384371287273242687197181305221484753250577629581659967274745264564496115693669829031121994862213757062476952178421043961219198624865146883783362706310049198941282645311666537849760568297811875727470890559284034002672533087824573739197462646486663443178131008573981784852868484881176389938358382441269404550653151730872984266480223894796068267895509442810812600356436955028903837989970974087795584947274853439893170794565680323682042607737291376447318235338989458622374892724496606680372899976352680492637191755299311333713917751037443872021946352542613261630775232591044330256546178280411408584765029349792645949083550267948936221889780653659547762408976185817351951187426301938989044803926118003598916913743214657952207729843033376209290226525705666530346422799331136054341144038195383916284969767528608284454314655346185988956683388219993212555885644588272782721679077136683477859444635639817002576053375582247472215201300675751629728171385111604446043689461171548352900354196317596887972326861939959035137192942475820123130858191677334731329374860011044928257088794891118908078447737879611213425598151065213897798975644579271989437378241506183657848109311538346528501884517918591839127077012720114535619948240902879587105112641291768952786267962660748824697957155458955418778788359949965614768746173365518338149701149765767918888822723928522835982671647674223564347198144351105997793443783950689375772731494895821644833607190982134455146542057542091503594104898870273086819896886133057319124293499044105711511492806258488212661128734737655090206908345712556489335553251375541254592012491835566469511661788949245179751151826057169873188574652241282431853506650173889538993767255772434482888119592023762143491952859623542697834567760890855870844117116637804460129149715426233878768498608339161612981036195586476425153438368732456194866396556055527437140117777941951146805519715901771165359834290374388920393385947632801241857033463478022355508832304004222512941939534868609412702717499809654162669370493244748803846035536021020926182524761357471520812483988126340403419414691275206940421678937183638340275984174620715005632018633758167641841860284750445617138378179655713328082955322442258307035978328886080500063449068048381153004572763780847895690402441601842604209551262561616421843191526420192534382429461767566604584831758973863399095353165414862735080131556148062878966183377705784885965938566124347115981817527432696083951813077731917948660068257105555344809000303412502874118645276894294651703175600610207052258414296816346124757421613580278985446156770254572122454259794222156653796211054121237371468413615547860713454473553943600443514744123670479326796484288554736293182917934131490062877056542434554557430976235991436428654359937828182951068434907157098328865167101835202710219795591505652192104574358382251507520755711065978464835357308282321745880294489829174539958618320889789923561770975035560