344818989431404754711711770295061331728918263339091486613967713602561334888280836814122935374011885793153679794800497036101208156527791813982707197468463206854816264124518634368501657549556801840474339569562443490648856536917360579022977329662786993475677287195334363984599927139441170953480204724873431511763320694792304167552152966998467898965739526161357869153132262176565942129287321135250738245534552200571872109108515546991350038242819905941567476988344748329707500985371988411983648448518799244429906176149331316488376090540469398162754194339222972300668372922333876961114277295489089352954506476526983339321043053376466862079658862370612636905411409284915075668994817133092129474158042958526701967476526575913357552074347537243294491525997994584694476489675643918873159619078815220312146525349281059651798483201981101664367399926324856443680227803045325084666305968690561790219787438430163298831037632257268973783055224997455500657019247435842083802934224165393796529198406834909106388491803650554474493100748199846468231470262857278160747852141422542911641423020397543117175998792386843806029433427971457447597897854867206477443682437810516561310531585583828788663251632537619956223014331531241733004929682669584963343695167399326835034767958873661895672392393515581716523199474338862969912080205577492480796078237494851815444212443793980858315707549418292593625037908419176563697217155217348492976481269361403919353273674374643414292818973012336756244707620302624467392581744896716779607470964932672714488483475660754043018183557057181190484662258440285616236190292945847656798497161490260750822588870572151991676763236185963330285293818658322518849204251520208318639401944427246312556739686300541891183258487422919927343363579278920287663471138178646086872253559747126889756943838376637961764918218772286715249354148792795355605924509783435137804942911889950671902549210184398259601399451702495949052367397043709176685111794391723436035138178995991098216840632438636484561161051538470068395480878064762737892677534571774353063314746051552977706772021311752331995300520071499985417963705653416251614818215607508817346036746878183167293572451058742445810176626625967748049182246516218419758546231358235698648782660969601212969046492845609437252690141013311553473495231525494392822051797134210038621033361468935711881421548118227919971808404115244381790893924798441873418973123325745972595017332032478520781944196612412033927239390704415825659762161563824312547980988569273172649057585908735110773956414092019064869781187882371569861583451026952847384814299914173956056816498350444488321857353354534813654880118954393907954877731181945752946494742164654735382099087513233416086858876820818626881091189641662211880598494963303528976517774760053388705135870590693072907713768411429324698053311131882625336257998146321959203880571450150043293544953823426891503030642733442980172601070345767314534120219321290483159998846574541784213728823279693247466618307249993451939803657241151354333873863531153546551897142990387750956642912853023946806169342773375998038906168978610101540515392776186689374532201373444371642189725144604523453331258894540279145998281489716327315818477991583380376666753520824033957592420616507492886755532770970051484740353399878615605321974268193341404882322696388348904690975366136961137085414976446792186449162202250348830558177237155255444454141426194057389827085928179815831147162274238247073753896849134078044519795342581851869306153698206435059671848893027099418543688044759590080175170451346288332961337887607715598995166545962521697333333264316383436912876411411627389522954179287080314995316355363268570072434578895385363322121701611577940566909169641415943781882335505241968787364220933138498652933248534239197707710936683086924796474104570642578669056437712236622142063151640257732166203867037330648561914968501648488991408339844934710028791311991653246909750246236215200764396893702946601742754263825139797516583020808067286963388036258057526787254092745847616865571141466074662729635084316087696536622269569898510454439671795179871514260602945618465363994174114545326944846013946652916906505968582732901933962112977754657374886274474867560831840297535160968847400782436342970233990317305560349153659708663554772832213780814242588883032231774138731146919905184001164655759293719201940301624398017289968795440089786471277619802947740431757848536563420266600231850941283424728025487217768943742477310212139312040524300152382571604761221486684915515101107692859313064024753855249629514373978915728082561028167758448812691077474304827206777244287385161991954685774700598997843332596196494252207375582131693554816156743861341540801543723952598237636950725844742540677054233703215131865138964833456985548764444509622698637778530439148303796432441763749558448117556151245481322929935828431726138492988424789292222935685510499484756449649566543571288326825674493154011935379258014082666451594155320196189895488821208361211721909665843669511730140056392853499128924367510668284559166111742095833311413841869231778824361342618136197901325537879907123585571120172778776473938366108145790865565375942615601822777963326645870116359946994796117769921752634063075160436043747324718964716389745977799120761649215621049210007271238022333001812186865079982592375013734543366796981399346694479119761219373728439334953853975619760060481067927981135687854633433027606221007992921012927936231411882286321618628462317802865965666208417197341626568975979848586824357434869333329602423410295780987857913093903133344024253814885230348081554993241629139317841784760265457369458467283358898206344220912751997705911014818978526543443331580528622468185681699277911561641827361454113960367059498134482603234792423237029491836079301678745637482125901123392755760474978269160153114883115387843367370155030811183879