271394213913993063489593486381445140336997556714648589323678550969725557549699874517093488773098437230447234372924449453518513393626599288413570296320904110637532194153042503413523208539684982149250707864930484688592446425314376829744196959161518234119582592543770853353447474643775685997750647358718178575398447197416791624388829045156795271698587724189186783375686471887516542297733361485277765507562949775173844492231250289293166800127836135869782764088948801968622421435760034946787711579413926740105830273856848604820902626091585554097163101280761491337932981806852787123269870186994005278117633468241537456107583840268375540212116127879067217895318473723495016880323950531238700858520065317408865394310317041872278721721949555489647146454882433025319016472725106059491484887837237110448376092281381114524388393923069531863278488670467666309786608353928148463938635969750356659667808737975869846705274319565763662961338590323473749784414543319469701660501380578269422607108395752861931962743956356256303254344720659529439579183234181364366936251602336952168739928503324811473334780575598981327042566625393482469345937932718269450370682477465987891351765219273873163141922281896314286886330331258791529105462336700456892446008624895320958020117761328245721729066249554538454778779368848151109896807370225845235601950245841300338458752474580431998858321994845922929427903606919264661966382728294140872192365031939512366641496488855562930213323050908593197943070204607393963641571328367373989499649046356748219179059714767652274371510672269348736725059678036093567489234989795192202854202408506532368676356310924301339138453669848806538064292425247774275218687104834478754817446123114488105489961634214855167536854647288688252443115888565829034091798037497211748398791676536968724377911263718116053351308483730409779247828282462874343556338796113951156113707799579594265843719455804428066703683889533728971005728025971775562635104860857164456603981546608717267152981726192431815527288625665348857430982246345518727131809854777799798955424481252841531744253322453635602924457791483410953233063961681382673530694234597391086607677090714783384442218447884643918139292118153045290296744665415583591754455516228947517786258373199807795366048583585416378696391158203523449507403524677909428341341214042450273370693867313884313331509795080913341545098295503287646976456237896146356257749093034047190587738789734315791172982865726925966971360544404000493585073628309332883942853240266272715312945433564346017510551624317632367027625491422355120916677790732333361418799099243820178011529454135181935141399243614357677539498809096781683451679496690874801898933366398173997156832498902274957546219390658969806845162696425429194061563737850581791699232689018986831039687499393794796586854081637060118025733262876258380889582412527818573591083351245316521193331030668108462592177033287774782421415475473750527743483533012832934769048162944675698857522148215512457640784612207262853273595578715395367689944712846018933219959749775141268506831817596348558893027469045204219638240588779138317438397952216892933281523317413415907767624419616993400381853123551746546214561990643820214928486891725073213512926093799330395272183782317265898763870418436832545815119020031909510142367263573797909751813452707825750394135784038805474833404187150847850604766408377862227310535024597130142077875192625311247032166116033446671966251818349363119161740749983761724400953903926532873766398855370468469590661882957092524896952366156429643412115782761983936693969137624785714897435150895097132518140899023797186153749564977563472293475841567123701340453131752917602883179862081453948623343513499482297550258692622781975536064742959978377751347692018956292660944962776997057171212228815754690087262604852038152909643823695014798756040996161917385753060347714738484282846088304867604049013512898059131202169657591770895271482325163279552018885235559409545549318779981349994159806816360641534946828151286616745294585245518865731634116982134549615637383271342848851146371797629543391857302573651663717249485457479195905131646521351251538792638511611196999786316076343382018386576675262686963299074709111372026638636317586196852357777725799020069445191137129886313487083876562413520189519726166512224387546141732290684547569806266517091846686388023308280865877364861684582551573329955138426469885527732511813695129358335051484568791537921428548144651859257965607295282333899932395455350058816448353996689545699946812363219785546220778236493291401292691932855370249886253020187518519179475694659814476419441097265881375417958419294958632853907429570578407025751172998411290872575308338120656141784880867987646774730074169943755944824667282255023967316519906687333744918142683060172514362353198911818109224410553141919917699300369032319457791998118878298165568558405232761751359388829949673141734773682899094317451453149689277114421774845861848863813234341477730363891111589371593549819554121329152307127195863457947175539172766305298697203863462441346708191668847778759960247477223613793246917159349285217025284481163126598778434318679502183066733348683038649345384102257314717858405288627922584647777394224931104786703723955836399620497752652503647370748038183289366458795225722223180639636880361685566458269583733435875969331580147247407523970828048016199620212857322378121625695315127526538277713284548064306677605928478009127817367074751041182208559092871688390490580416766613447223525724518863384308167791658055411398753735569647945745559617433774692575863066166367997493377471360681306660582656056895960496603364496033722181643776285508374448007402711704594988857049848386816846071787049398986785415387131565798465346675064035602608688007114305129678641632545444439248679253056200428023561707510925128986611398715303638311551718881151653661680054240764844069148189