617339528462854947809699577460563586300718389357272064933989489129283757850593342147578140792529497774893785557840895825913040422224519671678435824821268019070844469361475347377787867816589229895149671199245928542932932074009183979416227075101761211590910456616791595601022540641868935034476414913717148848290597796566419013937626956428268731611235606433024598726862188177218683406537499570687582934966631923951551348529289412811156970744131332196238019992815481488773123170885146015088384332587220485420987618593041109244192923549157585894699806678879869798332550840967519792890410474721470445663371548127525413973735915327312750745068204295380645839955294449978691362912293691374883046399627353172788456586513446766186867206334549164855007796385737363808196017954177595916232619988242183839822147801273636694583503936131737086496513930326613447475441460658355872311894410144467487720398461887235843919885006363246402577339123898345840346868835321554927731446446295402445366094118146338899912550331876505194349635980919077380348127083608060643398588132812891825737343165336760347328318369576147233926489876087695693076724458498257867063426191148199446323034704315162796956495217271436887510677459622036003903435483056862777451429356863277887453840408742149713880834667837475466062283208573084614611192271876349721977640546818497559158653102383686930723813821263968651565440903303770763008792516619563539583464990194421219919267105470563137695499537862148637283030236956998232954043256605587929996336669545105488276596323295962688671253687977968212578942795038294611801376857152848753308555958439485923373067282113622079521890394014579555147176865049066640892355365258937171149010674857494491197191544514208452973457410598821148080484146996988176582753041576397029791280077524672927862334923322188280942315172105900423259097382283435287642202843506628196983436877366126585578123272027160171854993295647652786843104822931282695211783822121419512885454559417966795129045049094519293325542880390083841983728071271111146421365349001721890720136714835480393525756989952497679465798752165306067934591917932742721437169443827633164091065954166198325033983376238107858492326168871687118951401511742981701535700198533327128362918966745363535630578011482206167322312251323421562333768121876898674281848432336063984567490774445382338943286420261836882233495384511152133321414123285818276229456257229864174329679488000475811693067161096953001715315355767264594295238571765227813829385385659182442734116834414527189989490373205192877631891504298921778820726243158136826966477335547692151833649523187499930562089515933447396460733826294191164748663491392133561645634141499365922687915545645340251615759717264955257424533519860273391841964770625485515534174093383567650576121791229234666242839436108706602455677654675845097271851622156576726197738173248409747247732906659675066912813502438657977887745949932367634524825883562282174143935260536641709302323605068527779485769061893712826323138181354002080395232256348956551923951652527423209957208947356038515704747424739788792267865918471276734157298486556922197758119052137479989887516131641374689776302477523976865634193489488216747456594558041334903488662575736016681528961936332742647921895084963571418993039736240642639791270495156538366048752429616467549866587791836970964666393055553638983494960278914866306678610712750960366754157470862084255615195475462401460641356613316379942106058969312671241303907921126804579964311072141269515181236203357102302245879274019421899266287432311032127306283485452583322468941191360791951694731596571346439746701636111421987906379772673775882304581002264970021441827875386845261986463014529743442651865116993283053705626716168365842903363289775739813750286603636712561598428589013981428277811472176079139240557830969745155322333960202347103336661899411944494312968377345482175811364402623914130748857288346724384792569956538345195817812515808787822915684890858547569115627345983840143746320124762624829651983793614115429238335263568333166673367073933468756743480638954009439944563235459245383781073661692207292279352359302759524665441652848737645467035388551080976623885159749816102397052312118259525663274329857179499657272041933183893503427118465974182384675517284712917855486328384484789782265784866724761227499802544399959214298447667739859798222012562865984682444513921322328021945728932347950781365521774478426985778566887340109851308663140241599511379019543064037437487848791980535070887749400629363215695353227312679860422840491295561600851161588751268194555329051241869061166534178865113778368445817025327290788714095695446102527816525654462148450909438262944086183830932899953348477352320240090515872982257338132413650217391343014698278636811217255973897481386875331465525625428622873563109243788497753580149272243232453879256002500627824106250846284726125946482745368752679818297792828211660327894444246447201598065117276304656866195840733612934230234887586738994755988475290144639568168565180836379431382188132426630296151987812742389278797933861719163993823635434536774418084194912717154493495858112207934101978022311458285621245735724532279650720519169334456195919790396456493485863763398483956588171437597631965600654529913124131930369385994328899317516837543645569806873350247426551505673369327322549101086936228323666151865627879711507208964509071814627285931596254954764056889870345564210362571139730813330852187934882540462482306195872079561153393034987392971834693132158212425883245820583046525977406452565153347463462483335872781771064494316898309143727432852269634536785871475296009844861656183156185877336034820273109512186130421038374013693122635236266339520654543476965430860977140980117927661515971819250944758197288818168247566083381670671617689245971299253568676738655952756671232979314956506844039920327623083779639596946038766085