103659611481247497674893442821922205616498636472637961263599735865522563423756042039191299943226910714637242879744179428339963929166885354997992193688769650359441695555447960015143357422549783385294513263023192599034312505148989952856482187672406853479042612530256337208671950919743155770137710968446127453411773434779613992036341278741193341443965881385410718070618342552230227958913363231463091488622283323511977336827115401793329254942402101878128904084141088157492581123314747797089756257326236805663444252256228262193638687317828955928983598447497257362444859560721811919436546469963556313794498390532086762638934630534949700761492349702587792616796978266053032457770767926718281612846961684657083936458790486175694560748996293027885118920931289512813196715390517156093705291259821700978266168763194453366899974776147118007350761927516002953822478746323512578596032579697627557772239839474893623282229321964526603008522107449208490457094085972140930593636858940936529118196212601304126619848758820033669669424933655626947486372834792181549537409737269370299658023244357256835282522554022634569484816749382997418001556532961488702855056558306612976159898699864029900742731826623869389994856637568811801307596639779539166721309477928424855395590016221484789571622238678852717702565704732804768203596171848716412649130786795916589464972880136968551299251562521946158904404327744803879994644227072494754188792613673877221952670294368569742943251411144571121272729062094527591763686809764639376344574857840437434691126849214791943148368407536528537557112864388933875260850072031555697647537054337480013968875490200134008977310147392655592811147218656920619731881078193507773421216281507663503873280297021458340534196102619778355238713893498011784295405246382443100262794199860781637059919833554390456345983360828532281359725139470825428989451734222611683615034815181429340671340995582747683831027710523492544893532317353301655825646751184220648986350449526834537100151663508572476340935294663766195965537766157862326143743333137759836480627915915390984381508580409536298103555741289000222617237339783151045485927820631205639723163206053601771118411028732115193672742285338095168163880049144394776074219065194866514802682720128608332981110341722881343511764834485358679519138741551379255865157378039729466668674985894397155485572551135805722571828121696765414820382475362288344108149238271419822963617051735554230581747571619543445178539035577794820291211788128053059799845871914227196184975253815382475683994331569165538933537011534125459356273193589291783327263766232192105225535327824222734362482482599426572056504681456015785816969638877787464070681024468775371369956598291489034037709729697434326815910005698592166318363824103661531961221292513664806537378563191577941918980360935063216119834778384871598109914536953852988299457039011659346432516948329002432457232171511604017394155951331706381284828977838383653637014307228925115178380135544873163172656424093663623733848617225301258311164699422554727346477943067501676894563286223254825098979782314802751438546970878478092791101457747504671920012737440251952205699113776497997424797267587438319826927115636889842752028197733645019196585188803152137124883485337179618554962544536313929764387351181168697173971671716857457472998492791376484704547232061827611462728968413927152597959306794931121192252589404636566068224446569942707909128371339658235426780106865953626983704868652245113808400449699461911723839682561666539313247201631256998536756038859158540832497033792857318573795755105806807013926732609292323191833663511757999087346057357522332918628925930464335870867473651864397259949862348023748805652717232578350986774641534763277251992799796984535125772429717651604325908138992989942594139489748723464806819434688766942595583866473451074395179916646507943243101385126838895575594133067637200819938017422862949363375531132781169673402942447466456881174348244371789612124978588772801932567896148340682397574931616824825069486360021036120812447877741338431447597996883936261796111971361464490578028241354625435844905441462379337173713023913132504048555222652730108541486966532643646474496067963468322189670702444175027775906861451072788533912087166936448258094629067637072664069274459813027644384725991236061576686268551326514429184982047712844787079537880371819185420954140302268747629038237806959324651478195584495840106182593198235354225699503342984682548987974611131882649765374948189372833982922067919066094323030645536351354016573523367617461915826595933917241333391310563048252714759220734292704731315436402091169798385861515491552609119582411606477415723553160076189706401969339999165505475831442920332821959334178523535313716454982712069303113796367542053878194658585265913729241836030239677609769699434323910825820257320527991725742111882032471139427627096100281304108738658218762937556738728820363583882907946223030792027996628628657946235154514578225035742063098912378318064952868727101389529362259430987960533022280265562998553458429019232494831906287841112824106564683202513951884786551613788391175791339542266829954262591916451446964584684289399845869682023353831729689670797534180693058059541416168288713194071650865325483615411334991763159575562465993259772183026066291188526127437479811665656032488613005461997969648506797522975847930606759931082915751146947446927344560501117881498486868083269996728151042237933537151371953580783989556189711547073329719451200192626763303692427743599407057584388170990313706376530864785818878954644741841260536529157787539512546739524972950676871459111546843549412848623997543689749754549208644191414666874178834404989102447806462315667743578115526116474170978462313355090662979673847169432455339576234391688592034166714582263921331643925393142665875681862744917053215278717683969438054193389650142676851617531865323917994496379145957