580021643081143922049476090234655233200337480175156554400446911123619110458099006166046146607966842275882351527979140887618607949760821338489138917917790363276327416268642107971352451874500126764894684367791974042267535979508768015958582762751424706679786368183758723787328173617833153833252442958539560109239766014317114571730779065307655814460489762922353558105901255616933127563201790701964825425679265994272252439526119489635150289025741845141165728122711317664126293487168276579041140569282009428410881867232742839819485996406772599437120193835433954334351425547843818569616512337122752885701268820941877585503744610654912275346849391261255885926381522790130939905796574883992400585389663725076408922047729755858552794932205977758971847720023881050380826005677206539389822973698127101103343368948352843260169591222355566824439545818134916446238438978084723437317089206853959731572408797941099699478666234108161437468788395425438699688652114568101342798158970610551065898680246749649268733680697605923061857003531908152325166448564788955996935505090036000404275729013267488497025222386720102150611613568468614010234257531491627141579117525864639361431723316157890705383107486965700142954523062508553991974154512301798892553818194830557999817348842775130346556145185892817236747489849027111185791054810466846889953777531857978685068881876174934895749685291098342471945607703283067429335882331722914793999721171022942535317407844468267608024348273176901686273312677762307934834778653169756653386675298341979398317954617133555882668267532481319065079213049246802388121227297133659937591469524515803694037689779850519837017690681776717683987458545499465275428317915412893313419873772088825740468272382455693131713539398634927790716126424043339638814487625702268450616696371516140314473936467047586856415824487081998382107915378653016057248963168376582293635673413220914969888669249798122387252663565723283637430366744204734963545371557631851379793904635934924362785480135049333341710902090628318835629672482571144465528424928263316889428938778148680183515469535307170133381960553759911243125017179997133438775271332471035656544460622047549979075927783867783856640097977309366045748449169709231785361976386580823760540199258192612815871805702855594546526078262964095871177815056294029346041084284963841771457536026459657908592041035859449630002674849820265962702914642029300601840409152764755081733621155924088606891555718179268906191857239552944591281028897188772276948591856164278529956261499410038957499159489805399815617078488291042809890996144379521411359213512849235550043379509028485999782968864544495025472838630987345952214131950976920788745668555629785820199268066679182675854638098644968749302954954023522209261604960183770976123832425485120021573823315368707897085653579631514957824451271509613274711214436524035650040948019544360056893697234492876664478205092236427471719540530176375578992771946331681285967382588586186897741853844563840226939432918980892614868292756495565854062941624835410133929318422055358137132657608407372476791235217316490920843677385139841925982751751143632424603926274548474931085927899770077751615654724485605114529811994481133245843358724668898367519099182997579063881524702195688007456790033250939956330404646488514604743951422415648265328455748614976530296816959824873361748653685381845953827017924150611284897233843950217047071329580551465671027215993799805796151818461478287828438142885387157344003644245089872493925615332687592452014327964597946936766726483934792194549579229801061400965918061462052595735269246367649468515394493024188085976968673219198640498885772797037218281853566565475507840797499719763630297182316459613538884638841865895630230162179571749135981323415673497366763778183625714066450352415761039855150409651611316389200413215994602714143713849582194384620054843861433965924749227834027648698812565205339027035700516658350070738962967647414418808602859393309381982706007634917560004370997549811646271121596447935010116011881285411353425358871271941566471875975469793677148834518368945297999983779903269566688005018797076508497970953270357775652288416477473012418352784926257678393144358566090216538325038462563901904819571889980623361885551512172111682830360899464028744041316162839385814094829585451502229667091367921066337630290332716238310084624507898200054931503323318967059357292846679498392082099311978686233461488743969927958271673996826050828801572531968063523781665795208285777403268129472185906276881707668457268465263500660504818991244344666368208812479920805540648229755466694810367062441295497081749895516481646461236871643512316415201954740058799853778387608144947593318023580719706027136081239588570067961600149836189695624957317501491263304231468896917758222634591930775543121288760350634859334371142744641991955449921290919438743166315721636557188059230840852128365410298753905546021076785619836641745124474590249536123446136458714061542051596771036231195832311236647566682395687715643499865184296022812381844079251223709015454658394127801495915524173089255890133172711723011684268342852172276531052202627494393208193328683134799202878415836423513318898932866822346473283300397878360730883589451981237094526289275348049886070616219263512024665265085279539505740876454274637064534130539332144862120712058297915618684119653999386985619470616576570198818575290590168066832278206535915388521382074651584170975388218642760606907205780915014797794097169625800258147946621148863128321333579716104820218043329660969379742462282875748581163229646216579863549916266468205176005993463577955220300045104889728863898647502284618816889463866080287853326673271903308774507856206667096076632207252959722364491416044484731634661247645436012271337162598431114733978936169542747229478121616768017489086434862688148302528248687488659987399147685406808631618539607419052376331272946081943171686868330