Guest User

base8

a guest
Oct 24th, 2013
10
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 4733552314336243717776014410521023622120377215450566443742757265454012130260502254767575773133271630054462221451757345125355065117242111432716036770050177663050262656740206212424057604750745705645322243501360547631661714311423226636452517551206732174345157743264532746126551444344245232541247155637755374220756611275770236335167377051255376617203363637775660427176444515722305213655132373235315021725610262616622133100342265606046233217412154414374364346724326667162763277041735312631274671046452352411063213614060165572213324465033722701126335244103215437734252746331450021454766327634761043376021267611747607237410172313060162276216727205633420674030704374570371242750756110041132667005750767436776426401772031047102012733615640251611503652676125014645332166327701142231135301661512164135201536610313004523062663302075770400627027163574261556060454205557232225553616553727622370557577020514340731231614471134525016415523344117456264441227370050540133642312560506100626330655422326607521576130355301257351537516231465165054012240067505464562272652075352544050260675707251062112353627631123344546727555677576024542415433633362656131055755752257116713314235041032305606562562571274547543067242556554777427202537625057141034427064576767200052703120444543661567263725452567266271014723701357043212167725757174016045255750203172374045203277306055452722257701522631533273647734724742306266777132136500104052072300462102325355517646705553711370322365320371310215155056052673307420032114016506342675060204554334536274070656400011743071141452460007200141117113127523064144666547003163612110550677663046400732201620644656363004167535730377700501430236567270226734041212601405776202271103350041347752524401550551152755407215775142100542661705012703217103266574156074230767161506652523133400755273304271335103514671027422666255332363733755071515257127275413407060727667735077154370006023426466732652335763754211531343015473417403470562206145603316004524332503121766222250130650765360172013052724010555100454126360756613764312006167277475503411317216145536456537124005064006764342124035203176054225650462455066633170600442564123133274064360436414024166226632700767512250640535472705705575536547707750576073561417665604340544657321352644504452232744454445436040167235156560372532716104227161533055132231236426327570074577221575641121322435217774251141360600124502602420446762054044373554426714766471453006752456751102622742247143214724772221534137662463411704314406065651472015430551407666503746625377224607153113531747620041716171647055404725107255465145643456030364602076727463557352710404673165055561236572012771413626426560326445407301606533022530405130277544306011755606477655026051721360531541537561217123127202225162577277410127525245020026311234160250143764152512345512225777512776400510151071214647132477553736466022023701166117042535272466374362710107446662732377770600203370514567403736337100464401061201204113135477335647606351405174065531417551726224036020241006116504004012144106027251356222476663515014037732412464757504040077431512557125662104236455112611355544700743525667273571266627507527512330546312652601575657644411531454631542007655161645046176160334411025134376240152603626535403774446431467111235606113512244566360406032320436225636456013162166722615037653425162373134357260703636002132643662041014615732162076312133663666063647163375504027432072753214134326537114265001747402530333046253300340663320440241010247160015667514312164057674645076413465441642270632560774407541451262567453300400655022420730045426422423670504606106611332306502650516714572025324275015772262347147574074704117532561076514066714075132754757734543652641214642113022434355274103774757631462711305207735643352035101075426341763026264653354115467535023615611505323556315250076434702201570631653314563121264414734605067317075701237232524103222340017030213433214254530176502254345451574617344541746441030520515073035325734256574674032123562744665027652243344273616177522654705617765516345033636010017047626244057055235662366626540227263654531476603612617265643200112133630523573411644030723136710701237451132020057312517412617734407330703072413542515224160534260002671522016417037120477157317305267315600401642516607437365305546201652424320075055146245345600230207014007614322145445722232660106456717164021454115657760507243302767723501020024174101446763027027561004267075403321042503573542700734736756630655131365426142272576605134451671216406343711707217203661117262062727217531610444317002733133256434615112027513755442251003310513470510765752571051750161767221702405022101664442752622150122440443663311703163507300751246424311775750341012425213271723217114431765064473303774176577607704262610060560617420051724547122267002411345137233057550527246335203473340076356177632510173532227536470633366430141666363373336444755333414644421214162300774630124077213772615411213143607734637311156120137760561360316522100446664533740500633063235325144574115330016144177040335665714076276764252640622151750012272377526012160131160144321304224475322014516140437540170141604413056445420455545213543537762060354177770124100435472334307131063464270421666453132442624137433154167750320122670162543522146440406636434157011004426673412230331027117700357135430404576601572253266722312270517104150071755437607673265364644302712657516675264553660777323364476613333024007625034777330450431613252117425737501504017023313524662453047233405417546104570431627341660241445024333054677174202064203644303333721563362030000355435251150245075373726665041306352664615365475337376014640406522526370562154341533720113572041706316276365114347730175207262610705600172710763504032453256006373524341370366527701601452701317010254057302373056151222203022570617005757172700053704521420537040052100115161032474166652112174321274163362520615435150023735540120776233312220542064246532753341614731566733277371523641067206755426167167524260776500131662203474255725533050221533255356762540267377401171732721343014113205221462174315433570124051754324606347057537232071357205513257244410351745046011637545736267602650257136745127070241207524765074654426652412643553520240522751424762661612767300201734615257510351732236304005317451256716704212166473142251716346545563075154373520317030032547533363214105603253766614662666404216005701727766725204457344251106751041414122442560002107734240024167563227312607726275103100635274460371720473473155614735706236401377525606731303433037416551626657502473316607760405630656402104315033270452753445134306372512634032041740555552340042257616304656617740036034000330663775665542172450727742116232621222765340066603140730107532432012777362033321431550070145270130161336371532216736567216607344732772753503671666220173741043012335351466755172643201113361041020674404347531202134176542021553050222544171435726213376124745427560027216617557471500173160450271625550211371137117670531434722457237106265132340345440326171347224432062602063777224114445002554541361315654766360467042437367125032035564167150224441770042003626463412343452705717201374430565206252411532676734401034670027737075256574662260520564266037123114525426144404375447421557404556315061252060476616057367275075143135212741617647556701752442540221705501435360046643110646143530401563650052257636277345416564160057211652660540324454414244325506643675305032462006665727403230264314160614247265400123034402675641114251673311536411741534721003314261133766202652276253111522057572530455216703322646624421527634301271166472746024766013641204751541114653332135037500261406445345213155034211210030724667335611041461172177464677717741443451353074023734711724552313302433041746617370516621460603222716543677115411416712056267702777771112774570735405704631766115601067643534773207357417340227066224334235006652402522040444561412063616611141122654220651200231103061205165410365576431552473117603562020424112361103601612677620624377506046672531773604145522224765201310042135345445711615755124215704702231525451341217240702610454421030441254246311723551100635374071303620667243131561016444270174111242702223062005511751426201743300524531235625444023234246663011713161254045425504533237317020654043030336315537050132156330315661771300454274115307636002245266553416345502124044006256161402662246262341601043426601517120155361163347007251744620543525533260241323004327666016421542705057032503157433433661140322245470400143667001764661703106053077044577416776064264763500554600317741032404354145314221103103416347223507213134637306026117213154163046475716401526545220254553441074465500247022171723722710726454275360665317622337116347540231351157643002242021257466711371736563141402644153167716662472476237377162216322370140204155134230033357617401575135112543751564553743217521617652355076673635702123354344507565462034701347676627011257457675401655314547755035572007014275417773666403551346256226116641136047135737043236473441102204462367742313636416162622177503676063231660752372211346356024437401337376652041452223726121764102162117006633672371105006714644035656457157643336315324541307743075226511005560526311636773134750224371464443447236621671013143167767353613700074313723252433212027026544352667173724077320227501111363711326277126143131754476413557516353707632707604233765570137527450163542343534272736762264313275617410376633175754455705564765433202264721765100540157440746502501760625626371117370723615603373471456164217607735366753602345077075177113215170066763545155614232177130704702170535241134076645124414375157773447133272653120205723750413026670604064657771405102454314371502642225315454340074556041724547466140735721771113425507556520771354737773434475726766006633007667505214104233422765051776025417315750647706334204746460707326105744246701003063676245257175321516326376154374121311151340220637524617755121654051730252654342167123422234323462070344613544047575611350322672163416470467377235457722364340063153604140655333154672202414536736740756256572377363753013055003633315616027574327351131365100644422214414017505730627163745171325400202166274207532311220052406551063675002314624325176222177735723210352566355627605123476772056754663512400266145676667052253770414010112353370232017625473546336510664617714127745040762667556245631641465332167627443146774753355351705342073326135566676074724167132411251274201615224210107250427270164545373127777176233371763637500043455562712335401320502100252063711127333315340201662263514770636700771515220071770040575737051517313057165752144746736541626016721061357741445701153747221314743002701101366216470411550231237200211262734115503105163000416310443114627437103461452120176642217511372757115410065044705700537426733746535304510015541657705505560443054644320510164704265262322153740131527552374624444776703626162407454172422451100112014007652621010072176111552430056233027117405401300570272171543673767004337256454546502046310262160724555571623424160551313511655503205271544533712112612325427337350270370262444400677332035471533162067112537353034565171614136521113417374267465075575001334245512034070110177053552500000316225524743355200710350150075660247246625147550541720704353017043265305103640432441712612576600607042444667610750525024007263343476410170761436175151644174070663257746062656651617503773230431745204044135726673261300330324374743753333153242110707541270633332576200252277277005170137401172036130561724773721342300541224154015625604545411363607023744453453132751434240353502277177012701203656076276451312212425165425400730625256202064667213041570051745277075534142411102460464635304073376221146223276246272106720360020471453621420126655050171202250214734672236305036433447632300655762054053204727246262234075500003654466321617073277207174516566054247550626537303146223120173654525566212127675173232065270647237203710616236143247775364264235310711127111266127766310350577642375070160375757642021200657744125475176720076074751477567156275012650765527511645727625226774352075552461600776047753565344215244732256670644161412161067360720204741314745753114403155435270537736473136102643432227775755207576001341251476413011153164425420270323405535320320233102567222070600224760752725475071455055047423430467562621177635137337417077363224444370117700250775371033023163367600354162267100562022021742464120735145460743557565753422423254434740173701740024134532040731053513712354104304004364407524334572107044553000530271730040512756374011651465371607716506177003571745061343044565005137173403403414644344073247726422342741613031525620725616610563643042457451060253531432355256545255361620215022122046073024620055537661043067065033231776250704004476227032770623155640410074350636641350364343440165520156062025634564260033346031232565521540055315253556552563336212565227740425046302616116330344756606152275635074313473122750012771321177610340143436556216607124641733051543563442503551425335757410250413672551132441135201204224316514074237413626061404306151274731206223445641546553054453740405110512502472636541244174314711310026654433206752041061515517027745275266673675562146607211306010447304306761435540007003414514440022042351555426450541141623654732450350277633105431614204562206574025357322507030007546475624206306101437611610402717100345527267453342625276402767150251722112403527174600266513043556420764101626574632434437673547177575706631625635505543114520041403620673057611077227752177202356321115703704561307014371131710336024752253455046100270513657240532653447212660713044461141437123321501005076075734636704450510612474003771311537115570210506422041552672251720237426760052176373361553703127535412742516555143630103117606064344374462070204230676564276726543125672145302061740323074513631052166104222211353214004634567514167436067655612076770076477616477621343244271354010260177265473606662324370035724517132040043607174131223162652336400255103264164574775577721364725205377560250610322351766776604642306542442726313375753443445457647331377716753553254311037115204050073254145041732351464146421632207427421564446400100753654630305463217523510626375044107770511065432033645073162175342246233321130533004231647355122514056332355577115322316672050430763352200012212173342641670374443701661550257144045041302467054647362073555766012613124430715303513224505154005371377572242045452754743664141457573640367424253515432750151046145441632734054263106305636556630012603205522322250500416473666052316405426611037411250411211575642651066323311125465305646651364052235536361012776055466365331607357256661770410765432267434216355163260237156535625174632355367507632542746074237241173152737243014435117614503057676426362573567127573507403302154773411330172257402365175345203033600761264275340600611444215534551071525473142347147742760116431721772311103465475131765035443043514074342016726324132113432235647014051257154332720642103567016221123251320047554414420042160331616050677115212044104022105614701612742536403020670534756737157757654121205131016321206536233314527166343542242066555614656461207200270333314165622027733464136123764444327676241754065564554776041267267635170055754716540435302001624076133677636467606755306310406470130434354407273311426460710723600033332463414364750674254415150201615051530400071216367100373152602463733173334314732247753364540607267642215671546043653076131264651036163727772002414627636572507335445642317303737435541217763721176676767772021376261463121444646423031222016660274154305433646470367510612076634471736274241343170411604353300465731103376057676724347014601222421544340133536246475706207065743363175332015507032647702300441632322663316607124266302151037114050511575245367405506377313540453715350664455206115554104655073347651670754013143366237750243540435025555525113153060472564254026260262114350330072540760722125542634370115213036070627470567263452350240040450454535604171144226774623737316102627374534674470261635544431423612343534341061521313025545536270730063117341605173177050341201637155367564017244272452764763611031764464502125026675604507376006035207752542113513175330110106676257474765067750406313374622624030463043403116350050033270634127255065606141226014423032743400034740046744067262054355360553625261153120660334643415600672250626247075450031153363640035465713256771522034060556156742460333707264354054702407600721563047337731607124607412343247334067623445102073763404453033075145741566056332171504671312274503116241663274214677510422470133606576172744361702666032165673522454227200361353121661610044045660204435365411562010414555513023751443731425351674540227114074216734456647041304705325275660123300652130703305255421103241631501621570664233754310772427775427067333645250100363660425127066477514456200541246373103271636373546311763210314407537227335430757463041114565613654645552760614570111752341673403266072637511052162124670705706443175555630365136446503203341036510305434627251141200235344333301763220241510270744725465352543746222476235506465661247045225211231624765700335177046225221532222645052317414522644441101063276077764563646023142506475167220026422451346036070272342441571204073170175633032767440351216144656604152055601540276711541665522022302007255415151222363471670630104172037037262423114671771720416345060255511221316147157564773552343641160017624142230524643427103646000276222265457733052176126502764652011017126766761152136210461361731056374063736043374115176171566632511447720077635402314550101406364640004254532773306770314420661713152111004015643015523252173156010763500713511267056651044075147664164420476277176427736115165705451552417514311757133544322622335130264045671106512715224021504435572374313601277300167063201066440625710747636166772562613031712467611444673670772311272433676016453164063324121415775665632670245747033775230465415656232265222635441432561210222242566621126365054115264143534203422526255364767773657550335563321313704337447020705752053047061222111753256446316403547440476400655064152524011302571641512562055423005013253025560121051607303372256727203364677644522326161360760277420006254672231623733335453224354416671453271620654360670315577277253050002241401204170517747732077050353114006160671001325144416107245073212652414077417431174263767175374664166354354077420377115071536404362243433042616012007167250160206450303504415703652367131732065252704177244050415241016160512547556756120002577035104342756462200570032164531135325661646110403016151370055474455535360443656737512206253511032602275670170104177032227316546126646143112570330510715134152450211267311032310722265751545036647062146123145206524524551525234546713112234452120202612563320735707052054146635554436077543314620305617633165406732770755620140474412051445313654446141741567713467667555354206235762403152373537737644475160356521407264331324454210304225620407557243741015372013115636625026527101762351156501554367222361416555625601215002420262223322001703633043615201517163217521613651230510405425523675565042463613452730717471332634316070632247571773420550062011720072432276515550400271026650730617310656436755743066413256563503653625573646660627526523172525612152212400711662772155016146672032522046727361233635702364434325411047540500473632650174107114360200032027515356534531455610165557627135505346263204644371472644227017747566254746241714676426435117153447537174405246713327160026374742572262027743733405567770651272644251440735060767777135307431072565127104742060265617612474336522474643026425106474054632140646015114210161514107532037605303212751463432305233143046444037015714565254172021050232026731167441670710304221504147633247177556453027425215252246222057065326133024125114743364672354332472312501364552354475544317426537340255177313242444563712234671127423430415060064236016173156522214401041545450303471651435245675536534404411442401532235256200450251473112620373233030527105667050643560310260522516644222363750150636255566531474310377644467635657220505770352656156714066246763271436053674121264303745170042333064401225063026356074767175037657770555437616556021265473407154112020621261621143006242553016607474433261431212216505050410014614370537403013321454435063562612125723377233740271533605447733500322306551556127112515316216500276000751002211706660153016256172724007545320373753771363107427555266421311706436005636372027746533610710225100310620332726745272472660672654770270367045241244610532464131324632715327670141531574575461014716772353314716451647350377515557273044666347500507040233500372135453170112732136123761510215167151503034661171124001014111407304352570044051114752041736553417263505707243573373274174667250137437032745260404023430313270734715426607565556650244435717476640747243556441613544454652700342344763160745116123036123410775035471567421132404521065064123361002331556117553535416342777315416265055120773255402100507061575146735146134532773176143101347326172024572507020361277457401224051226464003012616100345326012313756776522016666166402667117135723431221300101115745577747741050332047443244444125736070606061511272373762520705660705732516002102422133543021423070671701400711750342263237062615722102124076254326330357512607047221364325615440561313141163430574614267535657025647366424775576602155452233562176011632460545663345512151641421761042242574550152511713015563212410146554132630076316732400625255555612120252646234755674132303143774045017167575511306243646123615212502360341362376136076544020674251734465707407271364740165037642233016035135640457367432465312635313016245771462473354507051241012065707725266057761042674430126602652065015253146706024245001605400004707507307274775342527665642533624665753232130234053136736537473170022410015234052112041771174035173562313553170413175354600024270173775067457167554043770516677452304420312063426224627114662277266000555721415744705462674531306055245560121117472350123640134421717421361554445062477426246501341354167264326340103205471345161312324213100543315713316335772515764142377110642020537330666050244537242642440247554754726063014020257254224465272655723207071115514422230045310414163016210251314162271322175465420744502574104424261275663122026330221100602575570631407422234400323361641113754041616245451354251672737724166174020015426033412055234215340261356055552305375764164507702330732414033326277616315221713064406432627300431063144754624736400532616735233043450621666702254513041561317512251363543334552567573431452034105316075767201624267637651126064262132105243670404304230214360560564200053425057357571601543233635203577554746410772005401640667415616165272677447167203431104056625274116731215635554031630136617020674744062125733627613752746570657753720172452436607324265312140552431223410624263640646132202145123521431316147024052605634064506170737404201310565234225553065024313064745625020017013465031257275170071446544355725322506003376210156323734211561021725015520642012172160316106370660661023767054176222103113002612673470174522065643400140401747073640604106567451441214730223065673126230212323723722302656117660060370071350271230604063600442436352177462510506037167271145763360577264006150617142332164646243106766132223553426551470631260121647360137770260343072551651505373761156312605172742761442412062222760252754767227522702014573104263402707743603721342020704526664167376072253457403333050075165544145277357325046371332314667050362212131106431162166660040367374777525076140735337015622461467026512137601247147053351513046211567471513241404733164513144145547232136662613157247341627646263444104030053275007222141114177667711563114613557707771440710724771763275710527563746533575647061732663301756522451004655027537130014130577354241773212260342301126133153730105700432352702442623400125012333245673575137512703623243763733643677536437312113122570430112520537674005461670725531170071100726076110622737240011715575425035574040216172543316012776463364012260215502103206064562225013625157672245034544300113675041433521501566632203017765617663224030540703673771415436753027454457517715737510451246473302741336057570572523720543722332055222031507467153026177447335400232172216307252353123735207602115234471152567601122723167552175201612441721200643701471423503575254732442707005276000451440377164604021336604261626734412621053654357413274627567151576224646176056303263764042336245423577020270052406534034015025200223450243111546776724033510732754152452313146332674052544160527360435661100464576204576317130501143430235331517727652512664153003770276165022624702361713465251120505062260756575145637503112400556515776550132055437572216457701636203037674025703640641002330157352674446006561201336523134372470447671254755060341337161434223130562715356771755550257030360112173150020471477742300446064212602367027476647123040064024470235552005727376744440215322202017063504753707011215175625431662364036604622670213651644333700646730764515132370256730210600400612307215403045265030052441620134546161660511352036205225677626426231511055761272256107141420253532740424647665032432234277527146413353523772730247577062626625022043531461411410204743057027015514713452274156162616016417141311624674231233401564427411754062054507700755613464471101042330150120045551575327177537375230427036767052456233460434642776704521243210067170363640213370011254157534175211357724766237630330535575262374121740266650300330072602004246705536512037304037471516713505736007723443271627514726730100371441113347627724710733267503146617643263715741424001143346475241571351153012454174742405100754114377237763063126763743220600551001366565043005754345157020065770306234055373564101066144336204700015742114400256402121354360723013076202370061113554261365425244433420370440721376346460215135667036473413266064476423651342354675451321444644516421141263635714642717262302103252624436644314523631530347442366524255325210461267323450224557643506717741171653624227304716550146674726605511556215707114212531522117454471006333202443555160004107242156020426774167070054400051727641063033005275237075353634420631761544576644741410375163655542410131140654131217376715337446263365271672442510242775354217340265512420143670075305647756303001417636102103622064522021732646024713267733776435254607554225126155244423416101415205523775316665254455272413156530600523456620531552036434332315470100125621163015066434256106006064412650053556536617232035414152053546372575057710160764035305475616025657741160650571043726506460671366215514763230475431237434032404144506531134030453620666105724025246412736735052335670214733371542241342625147371123073700550265704730364146742632756446361157117631717266550452672155174704253037335147035515765022054036602204516213674335564731307404540127521732537011332032634017406367520410710313514472172771072011304106640052337233211173720663241005547720261011264120644117554241623577037401072545726670134151766626150307151722345246341226707515330133344101630711201141276110027232466367477643222117572403456220372351456511661670650066661352303201046551047700600061324467757440113247226221444702422607723122037046524530557112143562124421753733007034314146520601427646416453436341353105560031035333045600357306434204667055113511605721231431412762217032343740034504104726261453241672650232426436130105601757443012363761371164153075573030475350452077643156756727667111305677545763270020030744624655710213466404407653030345520047511663152744520120370032375012144016001172625243647454705227601066564342115123605507555735251577172650321400314237625634301122543760123062370655212631200773764424450742662654333452252267142336076422360625073773021071305667724377041477735316326741146142312261311607111073064234354740546422431035077130535277101077443441402437412611016501461421771760256037131702474603454446325357264107455123147116757174031650477161406305620751076166246757727605077362035075634431052572464365727254305056223504456273405633624552651037424660023303101431670135711260004752362637217172126010066331136310417762212563007176014365626556670532302262030253473045477536124200766313350536756635710677172336650145766264312272210114474621123622424704416054031610176063020251427650265170745573026542405034757731146405520321321603407327700241101231226074450056477121133735367426035345622470414156115573237354760136026553524557426334612202040752120040552122623027571136701534637616232467347704316026104012124344063572314013652522335313124613137116506253064560750344001167117777765021331055732471045142102306266250367603654773377773344025066057747275646634263175772636127152063607261043041212030360402552413346124630014137113335430177132331342060244055556054717352174635445637176621413066646067713250445544362552706556050261054211301755203737710332257727223170707007304614200435367740630040414445133605673054227724071443377166405765160044313142014617207632766026266046712045473237724526621545217625033140022070274726374354004267332137006231211766166707004777145363533256304101527272546373366001415231347406734612163242416002636312463730400752240344016566142104715146521611626706356704443225436446756636160217704334664042660605573466255062673552431415033472112430235675370365117512266031426254132407455561702222227053077465134205142132732417251004232104524022317444040152005254673755753641116731737611475547162770460327705634671472720213202777751771366504164236706724502160007454524370507074711670504545417537755130062633144651055505236016271570025071707771664034343206341066061071774221536110143733575651653134063502405245535340736642002466142333323356021235352712415623473512206040266407654041502207533424503573311320736457213755031335307041200215044501115250065007333015123032571074457505762064133262131271614643014316454766274570702715207751367575673706323662007172503467007740361167660541055723404036557110002137160256222661033237140614156201505537141644122116407333674030555245561123763042742723552245372033674353064363777740620602345404461556034505354512752141126612217017322056405217324244573634424543536752741217542175571622557242716046242411425342020236527263166202146430451151407661640572064101012374750332533761260774310457521377032011234167151724331107263611677736333437654251505420050772672011012465276677102216564512220447611735661161016364020365224233246135750110540237663213675413540304327457443726335402326024276262442027776272306710307666515204415042740533423413522524574273445344752214762724312334765366724762501037057300436250067307662630664701755564714240336354717024507736475113723171242403312013642024262257544244561024026431344453450301236475723277173376021107621661573726224723466507015743121722016211420255442012526102640046340067345161743664055025456304757713276700352472311067317604570764013157776461641452426563242635511734600217512207704623571435267372340333121247705033121001137301134552033111155174564272323073155553032425754005164531500722522660133012043665133634252712102554253236434603530471251626525132530434747141175176541007320555337456733000530070125116570675044537563364041250631237566346245312443270241725566106720371074671051554532726270574501443104704032765062700150306450737342715766001421074215202310661356110645261035342260715504004740731121504012345656016777563757051657730275067412362127354151050424235744753520251063537010472331641474713065371340637516564137031234345212541454217752421437535741431360275037764375346055515433271667176742240677760251652733562512303665612427307543202147501134440452227646025075561130255610434670275310316367047204066516103370421106202024550630143135543565430571675526536272224251647451360116026416350072200756651673211422303341043336125722751570055337076232736747763637312305771616225124114331136536041153606351450653732536060122411506337231326072241626626046152753344537211730340172351055056635334634360273515625641220656613560735645422423125473067373503744627025066207345255426564445525135361601367620515044352646262056751061615144366657502544022471575101727200437122106314777656343352554512255427674362602515335747415130001507223453141151500077727323155133642627132744111574576316675745350026710320741112603402204011364556710567477707405707634041410316531474216414414750045306625725520540171700446056374513464577666367637225610616124443103733736005020453570342727304216453140707742023612457212365156675660051650235227025720326510447754312444414305347527167113660257565732367534676151655304521703305671211566251454173546232267675776520004622627607434762751430125256611361503540170274350215062031415603332515431466603005352415312316446506451075206775764211041401147514547017633135042313073116724106376044077511652024037152701033174547752565620500705674535570136767704341464175027564456660706106130570025466127114104521473131056105261063607417247501026317300605207751655210513704110333304473174422022066341074750105704270167203646423300355435371030672623351465217670546346152261042541076403453772627506315421431641123322707650247273571331773162467236667003343330246204465324023317075764140761146444631245164515623734732333533464153030017575546174014204377564114377152254072612214232000357120161224340204464646656534402010055365161607332153501622150013072452131270323134656017277305130333057470022042110365331322123767313145662704505770530321616056515736515632531350463433770513564204147061020006171317347013467433550467704001400112206766764251346441301411375301677722515201542317613506440230732333455070377065637640075232632272017533423133340134303442637247011547572344756355233034603075317711013173564105500120045137114457466741230740022527743364733305777775234622041556531712301322013052722777664160672273664242532460601303160540440155245064331462651602522427122065345576760176520405560162034301654171362703733603066637413676773000632404420446405005664501750114277741432664262374230456010244073567312774747171224044141027521454563364405122444647345715531357362373335175655561406402601172446575101262605155255314673373402247451745513327511156636771544053676501102457376550527725152225157612321777356245766531030035634176005266744604534310417270146160464770705311746352431511467340347541730207364711703207275365141317225562370116012756530571017750753671066221624225752220574353270033312156175301224727441272761425773544006611003136760275557566022451437061660655401241720047266064260556270070277224114045440671414373213174753640045632204712564551014247455627042751713207213126726254065641455172404131524563020430256030675467746641174027271303716117151143526467572154613557675720026640206574022320134334656025637512172262600354754723736451501711604151454371474616754706647554223244201340777134071072401656605046201431331256553166420367614577514663245666225462031016117216362421566353356023727671616216036641465653743341734351435524022133527722677157524507567541746511466170400256440035407430440653225345415717453343312722706417271533001621517123056300702151045027442315020756715003373276012550442731135530200341452003636107415161412305303522451063130176325276005501225370765607100577435227732341366544045043225376006022221277450320041653615352023151151100226324440477713365020464421214263640552016223212715050704740171416000415314522534416721154366522573546376647343742333135465340126163447262375564204432305670464457074422740256762357423316040005654406257220120471574464723264303753055043530072322571672743667747632567325106152555452106027476277313411214106572113737065231730531272012552560614575465630500210751664006450701441362517767436204570400141225611234200244743751125127474122315730405235327137035403114753640704567323123170016334566303171042035467501543762745216024575131276223507034501355125670726364204142057145411050417473246736720773675103172727550303060120120066054006257406662543505224435107031240446730277143513017741627036366674116056704437625747015417471341233022503251553112332771667013601325470237651564072323157035564322242744412204130272663646703347200573004426042402777671042703462426137650413766660224307420455473672154655160660261211454017365111566032127072540523333245355267733321670750067606652371602306364173334446742257352570523036045661042060126201640553237522714046451503446674334317064571315273004106777067630672400077012042451461244171740532074272033602607671570104017073277464231533607027676317676175054051770733626323044451731015703333422443355716353541401770346525577661032413461010024702742373461661073252644245616675325444077337311312356241520641733574353231075725033047406601173135405132654553742302162043603634664300516343733135565604133162020761576725514020201604512116403454354313324675554631345633507000044420531623703423323277022726251736474441201367135400557361247156746673647431037234110435651514412562157041410573610223601403577532565167413776453540316476314315370222525246004266762775612373343265774112261261744400632643141462453655050343306314523560266312401774736214776260155335176500452067217061505750045165125507124216755777503203120567032637302204324512377015265157033774211405474655720717057252232140421351445410257064704102612326013646050562516607267625723362720324232643123672051022374016161707734307051217626101250412634175215637372072234454165732732773172764172512165234075751502516434345115643371542767734746457356047462573366346016251220506067326776451656162616757445057366776214201504632210064661266517317345212354155466445337130230726043037505632541451356630243465373456544355026431607304562467444176044716572134327622242313076571221355216121217652626735377665530040477645545345514226005064131510053413166456315434027043734357544262546264632421456126732217546346201305747143700614274110722325362151020106670523131374232350362630340230773127460320105721775075732404075453112673633170237633671540615305052271556341436047110000573530113753423041010425543164417203576053757613714254316374630432560134634473325077754325164732244751151246727673634304147205130727145330554456454115171615425560074526165443141406003467776010115770061024465714143452134511401473754253616422313437732276434451222364741552246413251736014375416541746566377423342105646717707125776472443422041064575461372172567224417165344255624705652606233263675313354772675013571610131314322534043613711234166302027272323567771113334716115253245162553463767770212176565517203506326276443452212163227677321456765314321546507173662555762335733560322256513234464742201442732706173112562520146655351004231502217043370724446556442440221300471112274511275536366273162215367506243115064651503202603464274743055740452042464321055652335346773762556442475367106031350207273376360702250301135267412736125376522506007510137641671517225261270014324337015167604507163102216105262762742656133557326175510621216053763670355640610314272352124152261164506131000332566221010463060466072655451760420364273272212601210016705406630231764012643012454640365646556573724501237526276623756313005605623364546566017101717626360312214355252451714330335253342425123420662040014444625576506120452550037132261634673445353206666647112740062202142760771220725746542616470773323317647271527500331052463021377726465340514356433711253753030616157763773013440637317265377027133247043662011553463727661000706426616161276775176524567505661067045756553460254522765213164506630045174200404547361070133067116242310476203407675503110555450002776323133513757424740703502376346015062333045547755157666607432611133712465552344470176570361173035453173176444125010424225164027340426163357346567015242722235554674576451673040333411713630167024645662537610040641177031336503020700557233452507074076631552255577000071053313104377526345113015447373150173100634312421007705113117102237150655517400572221056752251617726617410701207310511674061623461102006050575557537307223552575466352551335117723671303140312620647157234630562443536067736333121234305310231521437564231030120166560443706134406456364414473473361505166035145136365147743653100652663051075346005234223012755743246236003556770300377553374331223215036626007534722677656216566766102124101713007230013514650011415252422357123203375715332202343316101177626367444512767035465272717742274123073413072550422107663633147404127034730105332111720336372423104323726200513626600025225272003024767413666667244370356721464643164773234732557177175166123032721414047704447664106255641204170130102331726161420467760624125674042432534741746374561417514107613414466077064216130716201765652112770200764016435552001302023553654174371014161517631714211123421362731721245175244212007464557021076145305150112043075222121145207404454404775017112166365256424114440227510460550263677223437636012571061517435321600271754540637663464525336016007605413304061271421150223742631070256032651423150372024437260433760221330744006033312425321254116137774375205363127432655342227755237435033771472724152633724730627550714456631162001373711325773716446544611242461513733503463560645614330160361064671560105715352565662653774555033271345706604232252546033616001245706670614037516554347773106576465736611463551263735007265157415475270507366560772642524434322677635412613036274320103706007111671371346726630231350031310435706074342526724217004666436057705732735037032214263704566342214332372612306426430707066644260475410724725421347576353173303624232244102175021210753545025253360607436117113554733673336200226673601673705246277614317604734501605777442556423016603551614562007330056160713333405303000564164237673126627134110003261510467361540435741644474621562217754327353431131210034665161565610343270427257400545250456625363011164211161626770707165144667750440506025760205105250457576350374307453036134341065605377037106005404147013217706311156152767737713253762011535514724444012311370131243306317510367157076220263160025556425574424614043652102647255236477603210764640126606046372606236603322160400041667176540042322424425750173446752436353701143054703662727174027744706022120345554450541072614032175020511213663640063762320606474717765025213276153301677253323334115321652514611767203002411446412066271735233136232614623322060630163406547467011316323703607113603720260535560045565751667131032545232050631376731220126255460164032254341211343137060671035717313110154142615273502653447762534326377340702002044102741007555361254035765311373547156137363621554441472250220565115310013754332604166163156402230341027146711774344612264272620723770434200457076710516067635747645742263114207374366100561706436533661722641613776624565512022460431603736726505570550777003262002414444034050755612105376073545405554722611354777073163702645046014642670131724647616140757752432405477757020473351702453034326701133125154136262772147632332261672143574461552564546721041642205354602474670634573141372155612074424401277300435705155147272674054567157577775523340505404311616631711522730725252227702472670364644133753762321164646630240325774151301606302725250254330005720521620724214020046736753671103316737100104105630534706122215075466715764635214767302707433611231536461573401332735417371700157567435271336643266312131155364526754710077370246075277056155265750670377257514604334727561042645737725056544056523370074546450351475204557327631333170504041464051721061055715401642527751006071446035560502530660374775255266572142077117325013467201273764517536611541365635474735427732525007747603760756117705134751242044503531775745404273264415113146523566403426224245230074562711677665330277577614026227140506074421005034273703355021370042133337223135101205507453360262237004415340257666337354414350352411325016355662064056465406135155671640747215711741032227534546150164563030636775210222605732457136543475575201412312656314736257436100307572022330744372170201504144130165165434445707202260703313643004764421073251153220653573661054174737616365737430130743473057262710153425653410166757447003606002526372564735417666671022703715240372010334010365731201406727200350647752274262473462056563404113177101425602237454047116523442051546727465017120111742676553205746226722374010406304700571730613342173611674464654065633554712076304015112024352361736606250255034726731007475743421607702102643561056735273557652014415766033523133407342000722320251543356275642374425563125600002732155241303511214365012262152542026352246520156445117661627102337056145222015312163307626336075370005560241362641712415000330415613076137745640634405660136440107150642600676653765142660316460302120116306313265702312130272442461156257575702067147675115525376574065042445015625476600065456607002615237315546346126525726266633704231362776137566527407574673017116716545562213422141153626135174003667113273753031540427056460606742743463656023510262250675525075374376752024715757657121117274537410361105020324776375477442107302457435160136302631125477115542654537335527765600047223321450113737411420722035573540055262021746563544000136745634576463452741723116604006153730732116162717327521606771043503631060447324530660527464535126220352145620117203765503442545615530256513101142305606123405661764117505752034106265664647246313273464747316372124321562556166523435262203661463102523325413136352606565654540435033446313274732315067223571456703643705237462453775604655540250737165034014114532522225067210556552324027456744277460015670306604072652141716364330512540003620114603445063063701527100360071221576671257464036477525242360003154057774632140236015674474546007476672221512623100303306321406340724113032577556514325671623151226152121243535614275114716235662435072640437147101235457765642352557320340727164703707165010662417575153000374557551325117776411316152517757631215027261244535711303753754156243107375203352353657013536767031463010625125052074014330721556617457372024040347346570064243421675203130114542524430120745660644663661437461773427720477415176672324116724736033347013265117405510752055644043636767112534724104046304260716535060666565476314200447114533072751414461704725336205537522160123402016517665532741455441345342611374466174655173706444475327516547323522136123367136140453435267514445231503731160124673174767136447271347651726355111356470456517447764464533674105671100506263351516614333026631444375631553407120112247533167033704767172752343502325745344613550613453141066567000027640221432101346254603234152235341606030076370225131713607673672245404675411225022022747404733423733134712720301270473746373401320335067726513224613020071620511736243344565003147061120625574357346370432107732754736463411722424047771025024424324143143364630323626650002446435752613731327207545511615663541707353031541426403735057366342735054224540430722617276671737407007023327323760604210257711610336342552040761054440142674254355376665437150755043075017066152440120150203501072232234747404370545415521333373162412742377247436564300055261224374571562175623217041763231460030365450310401301141110133157165550072532316154202707676466664332624214230420561663206436734532520266600245705003064047356321557134772001623716104472631460377350510442004514323205153033144003444762012524570121767574024611702627442763121743107440271260722235612747267327137364360463372121723445733007612116361531645771141764003560706552753021666742370572045200356302356340336442721513021113524760741711677310025635015074707514141666565321200076470442534632447720510710155450235557602657451125623271570415537052346645557415111114065026574542212227603044014544530727740273503251033254004522361655302575461415452243454653456706412203554133574052720762314777113644350731124047454053553004347363354732062166014460722670140410471373074714513377110415605533700136177205030103375116605230307361171415662523663410567021347136430424667123054400622520074543721050456113024453636202113571600001466202143231226451134345500516322147104537223645275044715632435136625745177765401473106076246322361350542671163437573112165641041243131424317752661101674765757700407167675514661237642660251551521604624342032764731041641144176406211223775167570116626572610071302152344577213705230041361122223330523231664157232366744703333142023747076745135025236165415440037025741713520541353600072653660417450665155741745600347224413737632624736357145467762047237774427667444162423570076161447525047373032665457232454656577616761575717321650336630006300650614030557222362776447356500173313735250135143250164140146363127157644216655511510236303463407621433763125105444715351406023321170051343021277275175203660462557133104426112310422253753014243073641015257405256111371332154527151075364267703742004603605674530026577306043070365675011300573202357702657531670367517572254150073630673705240176241331336510141455164562533142112425170660007440443601145212127622360527170147035610020263215253365276656461432612531316142372377655400273031333215367756305560114135641566053700145261717121444772321516565033027044635653554256335525060233236122747447415615711744501105546132103502451337206306356044434117337603224752127425001273061165166365760001763526121674654114251716052063575170103152774660445656437426051745025064725617657032222325345542637257071511336071675644567442723114023410224011674542371501026420345763660003177351732660636615275426526164337000055600135463312324204416562671735372404267521166155230560150705314524555535477762717223443016323210231005603251702075447153211031062755041613174271216136716116463326457541724713776344105176527560255726365571453657674110517405136200163537127177564076407677361250645552571735032151366070644625475046457470235420375550502424066216655315654322065656436623477230764414542601407136443021725534476635173046255674143022550542455277631406167660626007725365576370077372756575225542117567613546722550604336110343635527556516322301301505146647425527572454202152724144424200225763626526526011744021043541215534012454370647252130064640703434313231731036271752762440445774527715665765403677626405256562234567275220202523762226231322524121447360333600376025245766615733453361062741141110547157534655631763142157354237053661507002156476301020210323426753024714336643662444516730713660530507055161255540551423345375523321210122230352040315277071777572330106673141031200116771207676661220667313340153233750075140057373270477247175651435776150023065303606532216714101467102401202500505061540726345036534724656657610140010167610156556466253442647456754016472312065304605177433377261004065747622740154251633033322176173637073550221501332643267725574050541772347642744302327050072427313347460602070541276607106032675074507270040600351065431350562662150651647623572267251123707776544356427364470221517242414157607314737227330405132747254114407237016275340377241041422744401513655773044212116746045523767405634404343305646262735334600010356565443005727260504570412460670461326610323235304741572506071440262404147146440025155343316774662032661213515432742172160735064566202304515272323567125626502400062107162035553520142156311546212315713474750315422077715214635513701137225117577177507642141350757572232617274153363152417676440410006054165644636542203201534563116027704170021730230423342717617114750327641315702563744541327420452450435220061255420461410172734351006236651060321434270730472525403751734675642666624216127550453515450376662026316055320635644242251103120617220365307266660152706114507562123167115750550721237760532524661346462312274164041257535726537225321133725750041060171151752567465057060121760112264644405414324325413470072275623746746750446050540005020345175662157307406377664373737646752737370347451337501334153004415607556235266573650132160035142376100770450170012103157653417704342601430142745425511155402672264565413616150470156130673345334077160063542712133100053326036732366503734320541135625206460206473456145615131012205343331033574665151404101343113033474675375546545057202553764423332734207140440130207163654361745765655534625413233214301606562633456663012003637574550214554475655726433041406727206632043422000540310724371245660670044204022761424436454044713460466757104170540144326067665357424303122345502311656247452612057770052472057743570633263114775267325147074152460167065133463772700611524252521063252734566763177054001471647135304065155651426367513130351547337642241612115141550722467073720517754541743271706724134227542404436647412302562232413733041464436572415344775226077003361475452542555405751630354152743620347345254552313254011025164461042070132261465336342521602027334104600646327705353113603051645622613347501710520030304676255366336351442656007513303453150264532073612140160535320061046745150410116402567714502127452677753505207526776320452705751557313727172430466355366634750656700227411242746731364437150327551541176047730533251235631735376463140160243154016670172257201725540760576100341533113167624020324313454375402023222013732456060775524445215350126223670434732646740715116350605605472245364153465476315100775720465470221737646034452243614035526072440001672603445726355157627021160575420514716002532010157632060242110475075417045225612264470005616537707735072430553077503256353304170143370630155342357243442012377754473372305155723600562431614216016077111444404054070002234654610136736303515060750313573421006734572166277015261037660343062303104251541417500150722743053302466156613541164320077437233662433476670760271026075773326357617574026406516514213245563552010555350717042604413737055665272160434362743322144016434401001635302634576451324423035155002200012214300503724261120523335067633500153433364146174622512244472636544077216217345424313564462647705401243741634263145274666002162640457337102055207470463312670131544767327066565224533205705573215051362624113142672375140773026673647305517273407273157304637313457257560360536402040447537227275054007351311652125721640452144267470445327233754704644521507311225465017351667710136140155462721143232330246537021617603335632655461114362743135131420501413640603416652644040330214527117272127030123031164312173230060717154500333401106634417464155264355154111440456371032552463470123314307231602427214321213104061005057562311554177003662104447652525172522050552357322263501646361524235573141741215522417074560663007006475243147247026426104507350477207007534436132076323467067754140035713264146045164311652410651065727113067241753253750666170043330126434061453675130771514302616462437475245420643044563224674145160237127671705654073714046762421604712745342362677557354744672342231402560332750532303701020347307002040377671674404270634723672040650400473705162177443222620341657251354073025735214530033424657110037626525224754274540537776532223020535361647056213215571311313215464514211327257262643265446067543324710245723324175207741541054713255772257050021152276761533425646726733077741220773663637136412725252505050265420202073153240565174010362561632561241536653422005236210452362571227113665325317767176167212171674522473647720762564055364036131053601643617271451250601732115335217137316347467352753647753707037264353645401232602237741262561254527107441565165411202766274663427252770071223544116443421114671355435714005534254707637643016275353775466405256231360203216716635507573754600401166470333232642724067730630644625506073635144035072505737100073312746512207470657145453773677324677132365743471500131363706406257321470425216365121607327120375036125655157757550133777775500074244741121453303265100700525352065533716343362164136222034624474635166702056144302126020064153476322551033615314240444734526521351275427346757206161725207211454240032476762773730427340276451770670033401266070770544360554151766646550167142525703427115523017421470165743472107650052606312645712736430451746465115574157735722717243327572371512176450727457260264014735562123102307457767771332561441033373555735673140716603515342345264135606336005723664675456614263204212230632100276120644173113543726405323773665361210527531110167765614224200104017270170620745523757576167177405755270640426155466235227635633115165074460004755206315467727307757746131006541567513031317572357365024262762054772212750256051703044024533332233762417327366567361033055512753142427067374622404501223637776404256533245757337365426276265757244273273635560764733002313335121223300445165006262731132666351471514626534750623621102541077142030563741261477157100165751756424734460413547015631174141762650435030317616444765014737055315452110144202215131044450376653674416546140332130322365647526633425401644075102225526627333530317172505002340531117671214235652130577411123323427444657151571442160720117475647767253113340335251033127757401371361131144527120601244222334467475723417335275033036443443020560700117145605225632502351224257410765166017146701725225775327526730353447270305762061730606136315327055600321330350477417747722543165030375203246717201060246214215443510354064666404006053725540762521776035332765166671315621673654120742075663264164665725037530070571373776233652162636407676170703102227344404135161470427366026726644517315752630343123145123443462415600314225553115711312701153372420450537055231247312642176441100770414436302263320625146730275422525114154416073626351263600247457266730315612223413036516023665752155033125661462244237354131635746261545756753260230727757767472026120715662023524204045473334432170652350004771437170216317146646406247041403767677534714233721646723644452771263226731713025165556630377417422162700477324351460272517126160232074350746112465050412472542250031735007556145174467724162257113133125027013013014165666227604325355667155011204214236753631030714371060144363264707657762416606751641405222403142054630133411473262215734053441615334676065375073040100045546014752537427733141170567375321076533123214330457512716473424723071712272323572104747770627531217754747035022372424461765311417555247250651056400373566304107645470502654125466150130127122721715762432465253041230145062165441474444750543012276374643562263250603475006227577237626053417122014713560632017150012634230676555765742402053646423144053557331123013370400247300274150530127402537717650263473552417405023335635675407457136523716266676023163411753747330234756370257173504736612772760065747236757215305440104073147252173304221150012416007421457706511267106542544133327465563065630355341531433406517114355411623017311033476264253204470525652760067234472437755247305146103137754670556055535333560664715025620610105301403406563063736175047150045401553447316270756272306032504470557420651057620610340356142566563625501231411317377317141052251731323240713735016604025764746121747304703077502446032114452273300240643164062004453232401666374202404126515564243165514114247567673331242573670077520145313272062232641526036626172626210721537505773756551275217237546052346770144200470402566744547017765536777445026065405203166423612345121517336435736537677714055270560411742672722552610122532521106737752235410155674576747152637663212242333252034332047107360164214174441531434440572265320135323162312364503267156507003223061345071442617046637171060045021761345651433356507473171236675000655367505277651712305311335227073356543154420572344205343433602527672637365341715012603464252410250362114306254263502665624657731771100201425460104061013012725610000460376326531200062506760700726662317464574220522460610513571711463324650154321573653526651654771070400271552745724452210756766211035541064411034551575256650455670733415012721014115130247021006624631340335576310427061454133432015062664346117147115540775272471022145723732605662023130264047355001574144040560662122244422615622335766232162553130744221155102427557341451323737614122374347626546431436153206747032122222306574516215565447517557037215103724114531647341215111001124520775272445133512002737267136225150712376111074561524064021655001144770162363135041672307455641271003425603430706012000450551115503673330460604146665116165643327323255102443571043321610504140774727512251772407030571721627303003475051774153407356730103375246675542447437570040313022170143021052747502401355164155423307116441150677267417202230264733545503166146022201340226405564171114554466163565025451674317022257164503210011754043022236363662255677435601235237566754502713326512542047675347626505561115076340272512473700115274511573521276462660053557072660235003432003363435654205504046157557450077356253013467574302752260041272555517264401315431355454760462576610151640267220614742436631360756726374426620600366103675636254216026622675567227712020377734332672076110413271321722474634202016771037555631664126046522044333673426052351323307441702103646131532471705067655125731715717535251001577446771751453377205031451162700752523734070664262137755635703661655737772612063771454065512703173434454573157167432370731237060735541071740165353612022171176411116152574044613715074422706317236120022770142006466777516211474136762653014303161261237433160361770310327177667446264567046364707732445205512053606611434034044035542060537773413413204347322107670716125125275160063404705101305771313473440726467225510604442001435113220322115734172207201430573217462454757056023407776377150711542025271742540776216160253766752062042372211511017362073101503557017156102246062724467205535047373773221434261171457415237775202343127264130000332304213457346425720455344136365701352555154431304050317122616061732312063322404423237607200613332255545244103772236614346534031242757363707451236461162041656424204107650414145047211077113367006421163732027724632724515370265433244013300266667722402367504270430033064035056611261355513347202042132600723357240117431215427537753001433565112301207601671606535360114100113531414722465632157506030461674151066246370506705046610605072001251176605467417130160246154007446311630773176724751125214063143615465403503227063734116742032312505466505723360723464204505377353074361344623254244705636044710665427216243155066257310277117760263222726650754270154634023234635622367230470433746177402713060664010047726352536507633743704715637120557472464010472530576206625650563600763117342135704604253176034071733000544162773302445367516634430372736336137655570200605014753317724747200425300006065652566324650670320726224731223665746650237472741617300510711112107637350146305634041212010046017560134333067344767146435760427567611765212236547772014733520367457461521662451340751354213165011765024261327437033174753272173436261020752707335200027640270177074767731713361176533111527416326266450341051576211112236651751772450450542401706574171126443611571270047553645442357215147570434452753361502017566713712615605162273020027276720146623463473315661130442061501277035130327210464141537467454642037500534202613041523342414521245432566034334007102365414160350477340650455326673763714451052703402540262722432657303467772700207103231603776411347663362022551774104666044474770703504337752105311065666364230056740056467625141022532115652247222255111723676000431272324416173253361763456563440073334614562716160260514671004024257051446027057644433062300635551713244321173210341245306472276404430100520666307046521160660106362207461251353131643677104106055130451241560465535001416043624112356621155111061076601673201506274667422465034466626523074061706756544524476364711672504141154566661237510362254350734664612214414750337625436264442743043171114160211477214567510501267633041554637230571012357330733270631723654126135446224261521620264760204041177036650676500310342415357247400331626411470265066231163307162004214042115401501717277476470762055605520377365164637251076424372237437734221571626603120620407534023226543002347502761456057154421614403304623052276252257332042262361506700734472115060043002164756351667232176243162374061712563710166342464372111775547754067605223477642263673421534773763505427723457517762421136467145547346406547373163665500502166703772756352274734267007740247070406572705311201564437665073601725644017557071275316042752437346136047372607500415205150266532757520170633150340156461022753525450425107642156564150034017151625176064474215433454445357176672442202220475741306170327454127711327422344650202262627637530611705374263132605015064613507337300606103522266371537624044022066634465151416263045256204550524303132675236262422616521337123336004775213571212715003313655452050657366517234522377327474751647407762200100464357575522242677133343522343557552752651603506722665104346057345414714751045417777547476721126446353274322626103746266174034221211223247053440553605366003774305612265461270740257062037727063476515333255651513273275312676151766625766352226207057563776377746643414156066601233407457662137066030227740311267321710611452574242556005725537115422226367025574630373772754020014242614600403737474662237167324263041533427031361562637654605330265752421114105240625150326507773626416642711355030734355567223746227715612022617627401542535035077171333661630061427616667516042527455204203105003625062447720247061702326024362203241514416551227542657474662515033424010054655156712310220420215714625075317551060770645031177173310667765011436652531420133530075510165177646057464326647421024023005702703040405615324434351670076562661154701553753025143373304705450616046563133437421100322266613723362357073112040275703416407204403400435315574035415370413525533703420027270054600132011216266106123570647355144217701770343051146612437246401331207051450763253441646227651300435446742103663251130347773551134001327727261435602727515235440447147145213123671255475656246454756301733430150055040074571665456006616207033474732563616771021704533266353605332506435566656311603436534626106355541472730655512413574520422067562704647565766176535311735331323540775227716530026566074043632702754256315761551721264151364233047342276550747420756506300637250022260040321223221057212464235771561751041675216424534604076761102602423515052327373741363365604633154675432231007624043154004225522423705401063277140175554112372464075567011336643010663255475573235313615775222354465340744622657653117106600175631131766254732111435533567672100306112764702444441116114015565451755302742634665320365011043361142520003374500277063540060142162074314154066367546440247236717473160421521664446455376423205422617666142367032576341311537377035120231324456335234154246454530514117434133673221061077676372101502257112011445240261727772222545140234501360140553447753350314621347133230663521041022225226543670361252034605065104665052754601353472761206617171103165105415101006012027231703533644331471663546721311417003761500537476312370540631304055410045246777625655370270111547202267054361720430541307065335613752511732652675436611324766616324757630003764016772277517136360351034435717753107244342556024744516604362110770760565732712220205326053152241647701671673061052027757550623274674477620703254162000567730044234142551206657224320546100614417217564053760105331077370543252445054642716425232166772712151250266336627670001023111516724146540044574730234636212744655662450624205440452455064765612327023315102714446240061121216233127675775363143315610031770211416052622374474234575102336570646250426600317777723221131015650326100553043336630001617356076520403271333436522270403350371473546343747143134671762741033351233455655205222234064120416633271530273757307460232531554472671015466777147262250624501206323532765173365254617705635051311504745637704177636721560513331271131313233427645167523632406522310727336342405513116655424463131561537520262536621203031771645075446447060114570110133544170547111206251743745163771764440155173545446100653704041755261243562521315701132357314310726427520520334274232334525105106655441022623016653425676573364046457751510663471126610433715477605504423411372164507257770524505554524670231770402416677552454443047211461241143261721725704737355413630733146203255110024240211425037213266153356005633365025767223474112205376554473354025511057556115017717436204410235704606442631342345476232346121713530226303327173415361317323374324072624532416143204313014125536663305312712130451210236412434614162607777371630164552164075267544151565421152203664366247363641453312411035766305313670104140375216251254056053551473755146303150025572175715615324734042275515220277616644133347415104347667151015143217653533446166475004436306125130052130671062626034267056700643041445710424500400376561170357114122433027665516573501614516257243173213405600766317224542033657362061303126234205321563131150234063600262474372163430725660427005023715232353745040437664172137747267040022460314260610346455041066241013734003462523065015302241514046363071704706366563006106477344454004333723241571017733507005773305655465650553773346545633766410461204443166735153257466335745471520463266316745216626771122550052140173570533116474532171426550737724736103661346174506044012721414021201556056234270516310520260221725632440554173022276155541061217445067745055635717176422105605576233162327313510606226354047470075225772606035744645524560710127561747277257511565557607102546343635414165614002743114352577404524577476455216030276006265746225424643762240252540227113377302507301312743162275666060753035446532215737664134124266105373177756005706031542432021564232125206240331505047402760050454743133545564413146134732276214477307540542235241746766265413070354653210615042301510417154601204721250000134176565412271204436015133773156604077657746545646435340573110253123655542243306626201300167336516417510711701724115317373265620751334263057774542702743442100015633721041703714252074067757262465452157655437241366250354053547251600553217300120117072676757551463032561153404570732023577462670623714472423702410677544340442315461067123465363134352230061501675544017660350132113567040630043430343564772407775056063072714317422466744455133460325042231134422353343024357050720716460750524646371372026263231555240512407232131144477063634005051237666723271605156252713132505723677771400206001607444357647742065640536522477151513327430630154471623246371135611005641470252223226277637613230062007164154215306015156743325161206310620577131325504240125426656211711003150107224165776636753043037124003322717362000654303346103464314475661112263626523027600123153202307277044706723372337641171670725626257557332321276624416223627501172547305321357451517166313560412576531347360116363735464465573004642354675037427410526272340642333743640762723771427623201211513730573636720205072705122365350154317366546716045526377344034072454772516230575532140556600701475070262455354124076240517034440257721214764215275203554740744231656667301224743376776052636622225454447767472503743200524047775060323174575133311633560450367754273233140523342163040716376606020412031706451535151115424773722634120341370250716431631013261645521636011360571514152133036540673241310365612554243046025237314655535301644361363171555404614077166407533736363207456771256101617064415066060655216036273405412142373534376726153175346015261260201456427171257403754232765325143356733430717371272004736135705431231231053330124102763661447536236770441706176663635370044605115726451560724545533663336216127653772620167224636123411032514571503532155571444150512227306564370705253076120644530257573641620045335500421237355752405642033263570146213704175262027334122110351503533245134416131627713010521610503600137344566713333232512655523314755652061562560221320700173702020447077273416472316555055157160701526311202317061501733515200345044471454740046602724231557713356176065610666065333534444347464212050305255562562417335617267735157611274451451240241453676624326063550032471765372411763713441300173720706417474124054473772074076504020464223501616111733713243255142770446617431423567560105431205415762635230436510306454745715234434550544361534100672150003677304400034505656233533743342170204504456322556253010277763315717516657405436705024722032643443255010456707576567173153326320760301211407102376256457130657747375541526402277702506101304234627454627437337424623700074044043333351332124432757652516451437431401502107147024055074326466347050452622443563400222164317377656017475145250011176514553560573043426364733723374703434271331361277140313615671415522303703734060427263015347026117176145257046544257660202126212722665501624635140253266125005315452653100204720207164667321045064022677013566142105311264163465445571211375723420014636627132434100327550753342020505515315072504222701257163737461001016053702706540502015146234725220611606244623575756613447452763153414666565402256252302422356543136166203147270315611664055114662136261736325327201305263421035546713713270327061410337271527172660752534706365452116303335765715154160214722211205030611066754260336002345447553036740105172307441601310200274432045602741520034175505236623073561675053763333056710670554710071411175273747343031257616246161242415364363474167672327102041751373036152373752257712302330661073477055745345160214617243136320155744555435067500246334271406035762572375711102572476775042717720111143104450433214524215706050236246614135777103733763025511771601210151354331174747142540342424075314020100661411474355150404557556476242547564232442152214473536107553500164136377423661071521253161713121542566142160730307322551407024052140057100010235530764070575027505752254144064020157551361476615671643211533173375125700130016021700256557572362655101215570036774517336276441540173033022015342214141124051571764160260375267553700752370025227024225563420515366371076535323126455167525210512103614351601004273702730154633252114624121250723473210773125306150250076212451043025121232445117200014744304370407404531421172430203444477566650450474112263077305502635537004237042151145226647040567251645722612567043617415750702117270102026127260176121244512652224431611703040300074751746447027114703060354772666740370716612443012764464045120021212734071631704473511316017510271767163735762162561426110611615256515737743160452305326403402412140144721577545531340362022246571767344365116675200647307236605732111757246113745507036713454404032576232651210363411540402777663557165776424430152017130577330303745235000432551075740173455417355450502074175416265456305655024321772447074257007635072524677371457603347321277356666043661416372175635247126127617103213761245411243534702123104176600631707276764650764143523346044521365436767112450716352473675641014025153032406431233060534441120511336160451124164227374000246267736522245043437325370417546303156572601722052062267317115217166430542422416172661032652341303746370620050671300604605703761335324470127344006753431114147150202027603122367027056115454265461624332747067116037456206677314315467005001627403563644174743415651500045730755641567620666435672440204364736621153050777737207534737526731374230666226106701675656263442055364104511124210332221114106327325232415103574343147433142746150574311474757236347051741701000506551642155260451123300165576703230556514407166251022445207211274131750422226724214323244074240057323167061713454546746571172165251540764304225427321147177370032500451117312041225650006514372557741350615772410053321004137662364303663126407762134464720726454020327147134221141203235734364745614110632444272066437403346167455062614110215256054435334214072620025562064410010601543170050165023266104130576247300177525473147631321651330202531301646014515260457224100534407633615323646737277032334464360312663373443612622547653753077121454656134157650773420242545637631560122076251312032523176034250722674404537264634472262605527506435525776670673331752015762201640026077246260517443766046000247550625734101741211227727322763120140401676665374024676730606765772641172267047232101246103666324445064674045303161166636637647501105256326341430433402142735453443226412026554472557666166537501635665225042034305646371022262272744027102762473753525622143270533653031265445613476577567043616102765420172204403236340417372267657307217711232654255072512163367505172376757601231511675744670562406026635151420456741375441225032421113223662675620267274254120703343404436532620322624170755773300664105211222243140600724667156546312072075307071232520565620151330737220623044077774643215433244424060734360634474740417353555275220253253023744621334036176553263430715102150241052601037004327535740034477636106365751572655635252447073301407640665304012743364061200622503057256444450467451262764573043103477376140426240042037410746702420372330032130227576064365554246766713000634102503727310601550347406166116151325031312166777104574517070724335615177543775047210672701026750575517135570536456443673375240312322623711551202730365722337025634570434570172003652372422354022627246647674377765353772216113771135032461711652674542070240442636006737453344176374356421325700557156510715373364102711060776332170365277115437057663503117414366153407567304554015206163570617447062443143650736532334256562614150704505222565104026437645672535471332162326101235742253255200510713664071553070211027161346260360501336222520221152044065615166444001525102664705275150647011437133423231543747023622675015277452233012261070327166570144177623637631207513615706051421247560263746004132742506406110166751130054344652433102154230077404377214405016256274402460054016626075342630700454351665017221665332411567122407720740403443504444450631132602364730641754371623005705064235444575456507626346630622574173604203341515143270304654447123320425014773263346020326602126734416264363301063550003476630052002722653714657427444212207440533736004422452520533157166477761023604301441077260543133744572242271505747675015042370030375056275513216221341704753262571505734545062553655140243525014627067050601576057724250671765171704163277171601116652054531264451523716703510177163435736212327742533177532416743561007446775537413352261370743065140161021405707171413171757352242563301105254333636744746613405112677316314517374725762255545536256501760642364070367312433747343144255052355715073500745452310647746372764165542773452447015347131232101101063445635422677677145353776414333325147142175725673706655072241305111741131612557747761211512610207077627477631561621716615301107024746104666440102562101177606377032112446033274114212273346701077577534331076215632422713763764406045164234454432760106172131677224370441546236326523771525510264633711112551737627242272454651472114201220503442060120136026414545556674651776754161725353651757431365147557203270043756573757636756377256115140404722325713404436615722454470206760572454600735025756554464047466742024411073405242013106656175246130653156700150617737076245261005752443603542314173413360333163431220541373612745676161427713444566500543027320516776461636665413643024623576314656611510415070337741057651263566623561226017244707115104723146240115050531272206516705601703546750430025175301625763356167145144652213126434731765754633367212004357716520401567674353765420335137522660200324633474421341565067007067346515032720140072072254163255005357127420326741776532461302177117136231567435361623444603500366063371613060663650161730741515313130324251522004637146146241077146637377274276174234417343002072626527616316450763412473216644345134454565566260551630032773542636141232413341326012204511163507103626614715444055170412653442332112466366464236462672463512314625650143723330737151134463646714605062240523740253740264617327661563067174136346046137166322652350065635725276261606035226035535364553554265757207277042427073572055312657013014635410273246747515756735154046517306623175663362365215013607125272066011547724254255043055261605542306463033404551023375106364436374645212246724477425424500552177200505146500447575127261656552225571274677755212113745111625323614220574751754351242452762725166543252624533574661517117552744047223613377404031053772540532547463405137717633541736133657714450361111761337444154027673711111735705310140623715510533465623047245367462464047124210045145513013422037763304403427656047650127111122023051423321053434201150503320716377072727273121654424212041307123374104050274277757342641172533760031117512504663116372463656527462334415707320426127357066273637423550133665032565561676143034532046030315451457344603745262173773250642363153774433641461365016430615123346050054142443253617455300722746133724357226711346470467121137366612254312614370137345263171247440753455105425353111213053517503233651453730267313620452735326660531113326550255301377076052532570241360260742472641550001622102527046455300246316733606634451404056711677723611576360707160073563475514156617115666055543056703773161415720502643315353375001614072004532655210603171571274552757242710644203603461053254626441416113445772567045361461056205727153706276465276607200365171754325320142710302657275466500325537376271274262371622453441122447150755157273740553220553010544474302466411650045626322270135350541172542677024042022606224226161023170550077250667474625534024620252264007140175510664435702511647244106423070151114023167714025464747777424302567231027135564456473011547465465325500632602167653067361037570135254130762062656211503167455651742714163152222713162574050501555714736330231757010252103117567771342274607736504563006756121746610270224721577135270042061355653471004352565714151121474774237260375236052272547210062463704242116203400542506155265062366703520566634101545444326171571212274064425200253026705107324452260234100774217671403120672746563335047721543334317463701017535340460335206141461351317707746327133141627267725055126300606701675326654432351422330306477143527607763612716152216117614105773516361624127261147027054434635160016552431365667777152473341374372001275546053615005716031041263566663750376566623421545237060636161413737756573233323752030516175564546730653232555542701262146332305764434607126463273331602127554341413211060055242412436554514040610763747730617537206514546772323531442201031550333403631250656046355464306306314166127106617003551047660057705173702716226030726065317200056400705515135245070261673357335646762647313667161137376470466447730512411173270057410436445006746577737370323375666433300663370565013415733012040554757616576253040546443477155274305451161112500370164516454006021410134222242632367154701262570175544764725015037336106047727625752341654124676275544521413251007676651127232032466507215606320336261423037765056476057031733261144123714052400170743740223017051077114432740517515255566736700514002522642273157676624312405401225716134404327731101374747004756245114373521265425731651644447530721612204523017362604011653615332234267541412077246460373040411055437220352714170047052076443166043323400141242024370761062427737762313156273400733743331164061737144226516657433057511313424071670661405061641210131727453774717153334266601057665043014223051520561755747634001747710117272623752314317144471625741046054177026241067206232006104043700155200637665420307040767774756343776215673253455747643206466773501441054677536573454642152172613624400310140003526175124473255266561420275763264711726523650537661501400230432351352332561441341262663472236647374601705101656072171023532633262736124405471547073446334730345533522707107740242151230203344707145266413001346576556102250275417471405566144504106755642401427110012166460705014246511006344431652007521630220034757241312337103307300457071365350050704554426452450757266633247735670261420172505210213261001330207676726470407610126473450404520160664167005546775561013225115114014370206364733572553357176545512665412267507240157457523327301775050377124207751771655202377270344205671134577515047721742312465777756523372640057524271526571014277651567125656350132333520310755217576354143405554545423225271715243274172243346363635342114660524371711541670072203477006254037126031744303506310065237650561465155145451013354553375431014703174233345630331437276744536426406371566007652464715440631476320123664676521452675315010441775346576114164014432511073047512411667264032620062425663053152111012653655021726462615460464214026003552502004262726564547264622210250041152377736446432554576035504533106522152462603470211773345711676654721606156011702461231051215063761037712467447556671605030331546010351044137060573450444032052315274415325016332345150665720117704065430152407652023122652340746742632215347665502726231472610715573445400053074257624152500067505766421230352753345674076624011314567376343212657531062161320511774242556614545334601376313303203300167140276656075603537721300525153465410705637062104755231221130417700720072010432332260560751730465224424420627470710117265713551577325710320375163546072111356522470103003502510304300024260777433576175734741010051303426501306251612305147013136775662105025616401627455130052441063255424407336455157556361651312014371727533703225023272403423132751650640011530363264454657721642103230333056610171276040300074776540631530602126574561047677534604357036432675433276666237121550445270620221177312021462657503466406016333372023311743403671774633567675001364760042335340027053531415763165177244243033034626235647414600310333325005247426347545043201016726431635063240132044776256153033362265546420462753464327513122213173350035323005224053063512173230772361230515320057006307076302674327615641574102514027122561766430727407737665141757335620464750546556752711716713372314577465526206025467404641201731610513235743322303603114353577260333072103755522130562056572031677553156436436330426463307343257622302650253306466077007765766260115223631060731764411772611737523420036072067505442312733051030605370324110323420172153516233640727733726154700374776116201000530664164246050431545205717373600007134023452023026071063035164107374752452261205214370611222660670157160127712111641637174734034274724370026752417265164210332756131453340355356553430721557714010337144706724727636043143426664572763111324475530537551207156154520254744403116417241243451650657544373457607714477372574305531574511530733075701257305142315146221200515073527117532734442532544315404471547163735134005061550775105540351234376262404465226130425761343736710156476254665622022617676373142023452617436406726566576562354370312072765403610402302520741324522644035376666275001457202361661746206524211245714630474372620334661172217764140675205534227075420677363647721535330334055500147142371702241203656000354760734773501045575756001736613071710654744167321275676441070364044522621136504063435401652732377420640246304433414663206424142156476021657333717552556516554315210200013620034606512303717320261504125502236445267553161413523134115510700353046062632541205015564635225505353310147036573663334130214117063313654276264412443572461252352005324227376670357414772365170464453432222150652072445357147430625206263233146730024426517374776342604234376321212405777201502046517017220343465124243146242004170223701266007012457776174642341140765743702052267536521255146215210616247751430105536020741742511167603114617023464260447072722307740713175000162064220613557506002077253324530275125407457474202534307312464655652370733765637427531476424355330517115021233741616220277371673410752677177737650332036126764000115267465565510543607603142661561655465220067604402426732155756316103125153776334122564171632754132667346071024652157051770170241052300771736523265064227302144164632010222557003652556270512212556656770331771625057216356244332332746665167247060430445063705110174521477177004101577016277135770015263076726277325252406642777613056376716164112654342713236620443646400172535622717462467731025712056462176145502764004301475461111612471446461762030651670077072023322417550127374723571721440373737467636735041721451511324763316426201660512707742701473562720164616726610735435650317036773605354545720767143627660500337326472712355740730007634066175002417522337207663341756777741745207316040127334167536227001151543244425035023767541630504064472077356731510575570525564535727767472106643046430042224077613320005234171456476635273333757625523215231532237401535316135643157430114317534535407736163064432314467723735712006726656321012615332116524467620373710571306672104560535345740211673677564047374066627461122541244262370403372763352157072737541410206447043564233010150760147356155063305052564751612535324632771130302366525070415370406744151721326135101751347760143516363101373434657646344541470457046233771016240117564145621322015364142410705060634753012145331622722674675606303563453174707733213741634617701516237712471105267222535457777070212516460730423727057146634743542765032611050433001303630442570213006065660241507461720011557710576704745332531110650747466053114043560565513276453313603226711160451760402750155536325317537417604774567555356321427437776513154516733516350153643377346427461127117520704452000507126721333422675274771057201516162606122317357574267263003265670635562431756417770662403363411775122012441337776532371405342641037317473243536707210733056562246404735533663072220076077546277130774761460612264242356017051730510165007534336311330766477773043406417072307361307707444430555157235653471765732355625645017024045026635677405403710726535237327356150407616740430074544014762630002767352047177201017513431222346267334625364421130336047625544561336156371345354044144401124650666676207413573655763431624011270736612157551041642213530716317500757302530076012014275123105326144646333143206016515021702313653522011206227175762550274457566056534701253376201623757560262324572725311276237332517544361031530776074275230402340414175410407047527544262317767606602520071770112022700301502516220256402662312245135431612037752043660611734400475616667035330544171251453137354116003045055161057064443765062146244346522373022476522636231160120310500110025034035436725440243350057622145532755577530171551050230054401627720734675007405732333112257142777235072150677670661726063103613160364340621132446673164262276110403033162326721104753610031241235040723421562533740657236330136406153424643612677313111364361147431110634043537566113537750630541135727343435223573557270417540726341446375505413476433046343503565510677605762552406503075700663175171031236536502706224515564011615665712342547014030614333563436265033134031665373071123377471006215543132273166275216634737270164444707556364372642760027362060334553267252624373547046676630360020416306130301512707450067004360144367406147222757560641262422405303743032264174550656326773525505060212620051622532223553757460060047213163466750165431534775236464546271737537437012261547403073103037664066663405546463372425127421146256032615632401525535573772626002426211771676407344003370064751361132244063057015172344406022212525265724416564674670415441713524571243456347263424754432213637043425004261652273167615312721724137645773734143737025144754770264613057535155752641606560413255700211470003260430324254100350175462377777651461113537733310365631427662035157624117300375613221704747627762034027073410166465074643643531115423512320061727715525666527350124372000001043152133343700441552334102415375304575651743052331473637123166065536404611617211254323427625502015176667246023404520757056435100304252127626522706462345546443231436242716301416045610050115463554165015175747665523501173224046511473362705503352165475271503676515463243303550164240374634760213036110127462576260371342267026501767405523364377626740326665650643122431662176340637112661763054765147576504174170232266316607731440157640562551564550007775050102470717540556752726366437412555174114141422773574420607647320032020536302165104360755511553367025100027671773771756055703246417563305364063530462213411603007644303250120446542465463611750252537454031064001564107010476326554347020214653025732061332673227422475264416117255122366255406631351367364757104414071143602151401750756442612426655405114733705213030047553137765172574720434544123134311064576146513200625273404451147450045453253722406510074707267117745601753171404036510772670316633704022316033434320141125146423617122706424610021377355353033720327025011672574674164444113244631025027157307061724735035762717536766736452214051611635642423237077667421127117436625030572624633530501163125327646074457474452206220655004650312130320710413103461143715506716756716774254370173510606621267573610067327675234153152674243405044615224475465316343414730312513103465544233556270426571724210054747426403026226534745450360275300537625224510003065525275366454477167270206657571134713723667455642174275224037472367623302635342442117432452153234603064411473702213003575562457300307772203750230443371623321604362732053671210771533731160224447214425446137421016542010137114651225645304660372153602150234676734455771652470025631547446203761435547532676644235754332421306725056152540054047517216345457524237226134453735655067504474572216521201054160553326574607311730123104433416633526303031022406332024373167403225614024003232640577033467473713277050011436273246667612010404561760164132773306757124153541122521214240746126654435537106523036060573345345514726460657167071106544603712462760106443341057635101040633460303112220601131322644306257541116136517532506723557451120425136033066600120617113230722432102024457423513041616674676412636745341275562026221340572506634606721406331654123713435066404364002427171300267645301221557502072747640475320310611710363575127337220525216654320511077231703110371467272132327253726073536333061573076766423344140303513043450310451546425114176066024076642635307114775477230211410616420065420320504024565107126444032725767356325321731244720270313152210753062461042374262037255027565516573020026031460611775602261366351636032100347413105547400276570630366474454046437704464410441451200266544216305103323471754101227114266554767560632407515400051254564004764731712136734160574341140100637367723113523775765004554224442364452015200257424562724751372374112006232307413722357657063053741323364222452773673067073012461464241514266200762032621646520055013313420406773735615025456607326434473651203745372366757350463436721757634526504660705246646546366207523676045640554302633400216252137657207573022436726430204761754156355277747127001762326747200171331005147210341540625373367141227653324744624712337420671314011703147076625632350550632247055003666422541707632361632254556334074650162374427671141063204017400470620601265402374437365001647655266544071647344136362123520133353004001655753436446410115026650143330453027076037122575037652331233015731051706042125000223337475332726056722712763336250766005124247547307341256154233133277261660344756152267400074764736511503156212127761563262521312075062277224051312246733477665470612032722433565250674056313336610601764242072241270532444544464362542016616403544142425136616471254135556506245637041346124776646567274610044467544022047676164047524231305733524140176632723365330715334001453747273073435171702157612315210437132405000460767211354663204310251033423501655050252343731446071105136533464747332432103024115626474323446257001516000640405240352731326216744165710122171371100530026212076173205073254073662713030012457336647636734500476141625261500573030256606377434222624060355745411741604204320321451375021503645336216041217512061403055314742777234070510312111326557116454576340305360333374455573370413440046404655114652676720532060621541722153350010510050055241424617430172215061501232067422423202511442110153450170444137300762102303712146341366435703771442041347031000433774417614676601056455424737010501625113155446113362175143000307240507403101271212127765505735555700711745573106277743505512573373513736534520353034060166512000515673566130671614606256515554754212761430476740163530735047537252166370132012636401474435320766246445356635217602526364201771303322613732553237733524236126656246441715343521432543053237512163635247214423463163731311022423520036117626502547153426017363526252312243500715764702054543745566731322524277007376134571024242066424723334715427542401714220742660717760116036627204715352520354602402447062325627663061520077511471075061512414253466541653460766743245550153545442316175463503067131541421467353574154244566104124330167535665474323401756207541201513466764635455541254710021123661333372221003232561420010663015141626444344650632462722224473034320206372660154355230370012374503405422560614237013701526436350537644615075762240731601654421610220112554225065704142232575234053475141600055374053357353374001650445311432621366315021507765473052643132630641272133762153553155313554145327536240621746504745237175535756717336413544612677767703025337674013000620761326230653012675513014457241324431450360146454553503535654437661751215334551767734670613532720522256625476275572756144701312605667445264700223455616455463221117573171203477610044545662704132612053026056647704152542417054674701736757570536614326374125666756645032631713502627740242640706325173377220371031645070132077610650044710356705214640502070217703436672066674305633021251033104704563565745042747546517250325504653316360421076250501635747027024710215023501671517257724530514727230150757117316654011761507153476056516400041467745146127037715060205237162266374711523350271551541233563156255166441146442436766217225516476361517615574022340622604171157430555753150227405605726403410363521546567263253441001642520460360142630312441510776571630303210075600450222526065723501274151653543457503721075475531167613166340622303142142516114500115221432351344443030233572364163474747217466415013240220541307040206555446337323134174743051470333522710175767542167232015225313223142074705504033217670021357362556052045157466705354146427474651214704225534457064021613546756566454076723175717221375672267100235240776141517665625400275535213655371644222335767563066420726225053420654064665312152035651776010015242070700622703500501365767771003531224765511703655367047465275071554353151122241521337650441374236474453264461520205300705760261622027577255270131311707330623773660367551451006342750652433147124446367713703361632003424435755177754636540427472660406365057312416346065530674621032274443523641706270600140412271207444237270645542001404473127344772751010376575375151511250771304707547327260437024121061605073114236344101306066033314242354625275711255576067056201536031076206731065157537576747561447246745153031040664157535303356632660452355376236055022361272215540145127500042640752123721517307113011361343165523335030066372430270330174764661272167057602312217437226303522334510314551312217046745241542670170370043665213120713066577630667307664152753711265327561064642763047736273333112633020347415747356005547423215155172205536244731435500053506436010415010021057234011630331730372231515323253151114355103736251636354222437772423517132221063130145576637501710251372272662543205077146043335257723463010172666672310003232707110007157223207761214620463374705316317450072437136172301136622021405010455642010040755762370075272320462616003560672466066303504321366517104677441355527116771304602100131471770313024370544236535135264036304730500451133755225723244757531747201413507620347413045031317603655200627211302174236756513010003167110045713057406623075060772563614502600342365377775276614254455513500266114063621726752445416633620343755014375216331341075355545366472365000177114173537746657755073462350676730347106360406200322441541713237547352702242621034550072201346252625625734012572463760225133675034121763651771422366212573401030630021607422210635541067210414564155145412055267533561113133573143400620272064021521473571002745523056352443530303631677437602275622645034323672205706731500753075666367262044052370567303622763114671541635465336040070115467772755200061006322357304364774413260755260020213047337406431737622504356711127365773554654264624763533046106164516500040762460304730657162701413660335465471345202661351654143407433377122315402715334515440004503034166164220753502064720726171742716200763733101504566746032766310523021056314573205531274365640210467626440323500050237351703074045762750573355240400464431277304014245425240506626212044512771426627776526633344612177241047607154407366216256004267705373052406263714132027757266172450575723427074101276112714730331242043206020203606077624506672604401314634566203671005711773432544136423322373512006106603773401263570150560053203631343074072164105546155742425404455570644514532305155236501050071151547037750261070471656252776301434661173227342675742146164624621165207674310262633121422600346742733000516204532456526347671574403244342724014713150574113452760303065726201615643174414222515635220755201144651675366730214776436120375207246420443017336300067534531755705101627025041460334172252021277130707361652465266546723577221753641244137347563172074143432265721467540661770674046360055647576101152316467142076734164604112314167437233767331106254351177511753376406115377427427371062707326463733326661305231104737431517373151137217355755542717226635242005664360635647424133454421723761311113304721616560750373727102400133231742522115372737373731232104715520056405034646174117151752364557671612573104104243113277276001610403500111300162706542401323357174563347240716657503262371245231557741400736523516704157475666446765474024375711153757452426202742561660240312004726462542032725724752453172644116623722135001266321210763203612530057125641571624521102420614006025655030334500550026207200233345710473302007214616155652436560417155423661040644375454307541347471350022374245662025177616767065223343325471061001065034466440740442575254343437215730636573473230623726216505672151014060046071001236447151473046570263601342525270525062606317661333767052222654070064277703034014107143042524436461777720373445130330377124213724330615470770176565554653061001124417511674043113415624033051443031171267177067000225070430360651210066751364024116230176350442333437736337464515421561460626002463572363557326441602147603050505337772712744124033161133166175443561344112160115345337043153522115341127711227113747324616004463332626565121727136517065133207100602364717750750040711476250137173617734354333465346465761201310026234762001452024620736624017543014501032566365440053530200523160631215033353316644626416516142301074253113172650455522256550410625626056625544062324467577755351523755607336056422737320507656726412053602610366417572776442573211601242327252321472432207627102462722366413710555235600703740540306034266324277442711440724277672036153711067040571435044210220304051701435402345172374270464140065735010254616424504651065730355055543132360336461772744003313105767320407043335232200477347146040601163404311244247041272652733403617134341067322710514702173374073234715041455145102651456126101601052153307433704465761112552765562701550033504503012751707710205120410654335167654741245136224443732334207357334053344262471151277424630630643701402260354415465631346662357723617172052231621576502160152674540213732601123033625730221320427700750406112237153441136727225134624730305745605110652311146610356341641770077327227177410043316053053272345725070060102750722570256330453371050012057452107607630276254725233751355510161730602701771341032156474620776602503017320550717270605067136521475620012367703172726575320210731765074070727205452454356721310000242020752236711320222361467623220350442766403214126621644631621564755357644505625155647126166530345461323522653143641507076041541705712474435521200457124004513176011711625211165517761057006461052345757336513672656420654356350646321054100465455231650171677466622312725464002754432655163335034027762471044162130763667507307505513251312122354733674372037777625021401101353715230120630350077634466327303777615077335004106216615646471561577147532214302017336555115777365746027275051401212053403754447133501153026471251426424214431514371744112221562431315604270174076052512116444261077603047020513430624611433767520575515263404136215517341212423373276306657155644163147351077752470221620634376652650772620550476550543257557626366507221727172524116340607143373515511230530054770674400414414176311274715121275105555722447415714152414367767712532343765177412527616570567125524566743377346347661136063647560121447730212023312243041507062107036263021271511157465535366006302065661336206155011076702736432455173573337074112405406246777135012412734375457130531754615523371661561200305106232413256120141630160362043655475072011673006751774212667742211732323074574125617723267320114673163617445755124226523043016746032606477573471473351670353661005327635076572565241755742134423424254406611617627514365660241015643506631023652142342545542275262231141135105555117626165266104613324010745413531426337301333347442373521363100064474651536036267645433250422776367341646027127604011732450651536054074177763444043220066164562434522132107606476505570403133241002470745507121621701123223361667417740206211117613307111716361463215024717277106675507111202274500401120347335525052552250602472136674054656101212552606651004515761601125464603435630620030773665142737747011033362624762574244331267066540003075145426731617552236777053111460467277305027430505407153364647627606021277474667005337225766457360066250500052455141404307613006622032103533700601462677172300617232775735646574622276420023557660576516360026113262114135456713715543447653542400434114450624256244401375500132112253265435213755410634046060303225621756466634127572250527575763467344121141261635376572160420717242500532025117527553706302107251340476412734571303372030230223734703251201174775015057477200575643642407670700506121623410114645656757174441156763306270466043705060505101646345503043123123574270673701352273305754663323751033716612110633560664505502412355645055540475467737020722750700567714073755622011277721453322541574555473413447212266101601443435330713100533455651066344331055733361650253611626017344464670125663074120225725116216671734233445437313125422054173001073452210506262533443560632776600533560120440734152320566053523136465637745455562511375534513061105340426550727217477730611217540661571633567064101607206020573754323135654530275773334153512570727627367554347503415252413015015731003476430332157435222352254230270166353120304311741535335001742540461453174426745502656240453111046027734247653427126504116471160675723453234067371335245614213550211004560655111645206105273262550264407006032452762144600627275661240620134340632710122201724623711135735446113556355125600742173202007745334120501233553541570027747047752401050142147736244312063207732136536064222516266233347051456474710231146036277553265777750726605444505174361757110524544176246760156255476330634264756145353636723753562343774642471006426212103246454446017067355766443421523176410204665666122107665305533554371240613143373672021264364643021164430644267515225717257712313065217656364436403671556420656212757124751734063155665600556721217332372660231523663467225463000707430566410676165176226471531366421775727155777245232044454104067555000024017543111341544424621360055421706335533711740451641151372450452475415620175740354444061774306252061525625752660760507140070771575327102444177430061330273136665227742137200260300635544043746507605305272041033566616335765146536601217416242100746565227423723240115247017674657745550102445663227137127474002011132216245721617765505014400672374010027550577525631225761327014403721777151220166606571013516164727170511147645666750511505415655424402166603325130202271657270675267130560070067564633064756403502403126740035763403624210715125174507156132610746407751254356235714041536301602024470222613117012431345126373272036525215576325432351775432127506476606526204724344347135165310766410206045523265646231672172526173374170231756207151327532000761567312544426574106634201546212042554344201755344144002046123345312443174060031466604376253443731560045656022504274501102107372030573760534114463025142702050000256326377403253200353303556123204564216532226112225672443746752677467242731325003675035123011776071213271157265203646014111305371714106255625267375613232635615207615400216372220423312410617161041635554020541113537631242705350357642720402613136377563077771020500556564110315024766750532244021626467065434063463754062321125342727060773457344641056242246400571256705647427314144667626710447342513645625035000566016350340535414050663031233525455654706677271421026577473762654637657132726061175137167133172536411630631423076573416363411554045115673413660764132664613251441360755332635542677126447646420154315350302247143714140703073246250150230352047375407072153606662665001573306102706046302304177377567774727576054645121625470267043176104374441605271410342563561307713273062051023135656002042154033220427412326571775274444703500262662660032503121012055560340126225256551037766271740570576515442752522416272332670057141650020446237360274074041440645566731356223321774272302243537506404073266453606220454703676413604054056644506667703407361137074324354137311104535074572373140713043632313270734320277551240020467121022057023510303414520312523023525122023303466411504341565352656053146755141577626261662477742301641024400503471166733665263076173444676440071142777324101402671471006641215017507434630147775517100757024116102065236326737613171532173232522347541711473331710753732640176264272602172662646124153255453763601364616570260202407024323666547123724140707325740703742715407021433670046574527377335325152653031121412663723406616101257776615104355742470053406336357525732367534512416243377304067503014321626645463541052711023706372232336632155114224340166700700435762627201132554300176153654323047142341225650060742262262342126113146173472561647760131443022226572322214140021702500731153150324703155007347652343773162466111034262515642055612215161047133472525727267075402041333372750151060130651602571756242463347300102706503022166577213477604061056321671614737506430573443074305302104300717325433706573373236163322463155522154551730225764116260247634443735276541402031236603462632207417024267467224716017436734771230560257473641572621622164717645651312716222153246176474646360160451150341561331734144420003434473613400632441250356012273646726010653514157400060127077615154334215653436140156045133004276276105247654310564447347150017401541535163726620144736306701107513536352144123507415237450374050444235575633301031215503207664166515434014324121251441512577006752360251122530006265161645261572142615734053251503234421706415662741373160604772526105564171105112656427400762647214006715334554212516703337315126536003752060524523551066272477765131474725222677777217235441237717735602510034572337417415161371122016044424670416060706705606151723532310702123542243247714427657573074326466107255571032772202467434137270753535524677650245427176741147645616450301506371537574144440520233305277351555657735342765740466127253135505444771074116666100241623301735677761716657421200737337575646036172777113411373104254644272725736057473544436245630020023465612565650720313173244667716411670712673637375705462022470156670426627647100760545632356257333614166264124536451655730712521231036163472473126114203364504327040075653722766014111647662070654341371472245757003112026222545125430405134517105744563311447106433153460342312337021722774744623060425325544610472244433622037714234424646273740412623374600667707606060661432163107767015317705415177405010303562246131662301240353437522713625455066367110573217707677423361054147371405363774163741721611116415062611566373510636643424112413231117515552646534002473355104003407770541130763321657114245753114403077603747163707423711466274375134730043105207431142126243771470256041012274326437555467673147630073004700136455632716574626421410341075674543755370013130555353566304375150434216231407270014207337413771465566060106756330452156727467770336621210276107471521454472612211035756003576312312370256362776635454433704112472665620305500042367524136620175146726132236127564014341214566316021267154277212404166540646575133210505405762614322625521421053570224777312616212273541560645102065316611675757276113322756005062503727456300767501402363650057560346761363344257101517102102506361022174604754610412025322025320163670742434752001424643510303361743710612644237625665547740457344540675362147426114033454423423344524223567043073502510305431470066654505324531366130504254645032011272131117051452766232744000565523040546054377246421117362364466026207477525546677670630250226575704413344044610502761622347665600452555172274577235177132065215140071203114451246253121066410562534716077667406771377037037632377725543300054443356334151553716613245210252166735236363050121025307334027340365520535756122423601113216057541502236460010735710647671350464717445172525764131743226510717776727465045752323175406444232116476011630426422320763040521130331415557730545365645430735666766612542731526273371143353440101467546712725200543211505713010215635762573526652151631050437007562071051456323723151632463766706572770073570654745365671623423275337631334273650735036355666650246702000667014563742210332115774113607620642264122124472606000165141455436143525440545433401410405002066521345405700640337347024270663163271227522066604213200062470721764647352353042254335106617353263724300626630115536531277673177716657520567254423765312405235553307136047322147071340736771152603000771461077270134346024104537044211563742375562053353573544702041511720207300563602427353774154226137026332401034260335307767154664462422720602434401631457560537713435712315413506327413664760325551216347614204766723642071140221357673043526756271127301233234114170742623423020504012672735155624251231730010171276551127116574004460167655012516704722522707632376402753467363755617712044072662375067726567135651566531735756610604576304307070667720110154277527534327335422640767675316000143334414655760213503244130552023000437522056031270333653416377555335440632324301044673162306470656231273275764033203260236045021661776356512121264233406334654626050760735310667666255546136470657204520250560257527543770427511356654525023772257256403622707673171410731166102210512636603017171720660232127553605222057070226723504232771745016041562456547034621242562432117747246272345134226526747205021671760325722753266106467027745466160641235764544647772723571240551040447440035252014342107662401422545035447122166565273647767756214545247151400036520322165563625127404666236631421204504146720662602773657472544000050437003245126227213406362005362357003373541520031142255022743064521054413146044223752063770664536644703037534624013171455750122004410511252425216404370403725202052425653536523774400503443763161022743360453576337347351200442431040656636752172564074200615175242115565127351430632605313222733031611637367552461744725333306551101150046067651241622032167305054623461421667004117014541161133240203152431465241677522652675172470552742177000253621454315166067011134035555350672471152673561505071705610677301323221235606374561243712004751061375521464230652705523047652207235546320133062120462377733753552426160763701651174614623041133255335720630026720111367231510361021746774424046206056420672015203060727431003103602616351476532121225070530107371674417434761531740057405710316734147461761130133707546301556613406332730050276333270315702203455771656766016150730455216237166302430152007314017542105036504422007136372672170040413127237075512662167657556261233636705440404260743231723601504061732406363073475357467641242055774570446371123610322535014415477304177455054641135137635112415614501114431063071432246211664005040323256655461003630750273377501716640236060405575360500756452000103666726720300666570336475226435014473313041607251463321466734615551471760374740473524034602716563713230145445522007730024237557134150553371051700477671441417242524077355742301223715415320245242127454140626444503535214347061356107233555115214165516253373360743153602625060647762116237522137275771740463705753504270301745032024027005505230357334044154566666643503117424256001050611207227257633651657306216003056113307512671100460117347077231422367003057400313702050417547031740075274264203405133703751170705201542365706176354345365653034252050724662342364323723227427633363420206705131504616206024050273436660300614702563602167756250024773543526463020370104262041217227606037340076300426126214107003634415603721523071160027655210721773177271265253156437116263140256441701076535110563734055265456365245256175272073242720715201057146137662034237275055323223607050323620416034433056351750525250212617730572164650177411722404402547256623701430611116426451726150523325146774106276210053714010570076504352616562044432323265325703342625235463621704760140377446644733016210331147344617235615753723313100561271613106575715464077562607017476732014046642453535571766503235552224345535370314164377732324222240610044544015203500146410140315144303652626605353550401441611452534416524163041545004434155021372727252610302475765567404427073555607643363426076474221675251731064503213151475376203310635110430156147313061421043366054744336432277732734244510646123223122002215657605137451730176676316455322421072362464166723746431302102154421455032170355072476121254555760571226422006251317055340177044131366212064531236413015744122534442325415502337604511646624666532403523370474457650256525656233545775640105740725270457560122622455577110046342701710044461100024117121326540721734136152364167166654025173207205331204544274420526302502776250026624215361005134640732734513064642253103736022667736002331377006477707650367703224230745645652556626115645245622331551725467626153630247407745226306671762655544371005110557715410267367455770725272747516277070131325365314056061250030242725764311162622176023247221227430133752711722332776715443110615436755720002001244541006031743506133674035510515215417611661304324742227376457652737332615776275563031554670360435310466146466170312257671045117736711650466321704624626621361154246022344354075135357321145054072457161674572724724365474141023310676053253433640414646717767035072740427651507357454000774603727575501753762332744262623620671135523400507541531361027012041005474374125307610227652261372063771421420330436260704743411425602214345555062353565470301423740664272011474510743206646107725676477227357011053631255112636707006721504012435626267322057373740477210573667361140011131474011737372361013511151235434656000407417677514557515616514546444063063527342056165554501134152172261516655544412030315407603174155307570252020273507140413055607724022312307732603673013452402610123271602561505215171323147007227603370064720352260203720620632155144020400402732270250644502453240527311035536537571667175670075234667530064675270636040671637516246724224130537602027326006320607604660514051602341232745621535152764344015063174416357466751107057637531402576032513154746240126607115226223036274704321304032564471357400742566771566411140576756264637267445331066264774506636762270141606636662146706431157435733762562750176530517145252201135503330662702544477024365211437711134161441636000240014116112673420703345001660530563356347533225336357025307503570335472303777600322725073145140344555616607732711157422731320272021513370637032146260010126224001305075012312115261432471070474524250504206164156157533433354111536255373745452053164773061044027556725757147770610034226164724336600561045437352352432376106517647170510235054675116217203575234777657703127741344735137067132360565670664506367540500516337534023247147727562542162752301141067360120503554431670642351511076051153604054520714607211134217452720217141603713674424332201531675623066050662110210147112432146404173601767517021212516617377572515524273603755533453056270557047524162452740776455620734160225577300102767230505041154224656004650567512130050104063062602143372077573473173240357536013300273616133307162711434272137770730337717256702361037205345062011372720667613740345566313165614735755053516750672607411557030726753216776411143047427447353435427234507044454246154522734163135340513212104565545421171442011653175026207333105043555027257665251513250660605111040613751106121262621752557737715426224772225644364117176512351542147112726174076612556016020316545330431014717205014172164642177305700502317456370624652642323433401021331630400176471446140210530370315467532651211765715411366054004457761633411620506341277661442345062410462550657444560426476372647717174005473266104304565610452157645662204343366760005102577771654234515667550233651625734624707741602370777171426724543225740045502777221643614752622403421664632012435051172473447137227663142113726157037737054051202606624376215512235747737516730045535200043314453045271546731753261763644517436502603112533061247062277704304123461422026247362324627130611160251335175477417141625540400151451655026604262011036242144535035221755571364167011605001221314117565220517614312064371423560571471337423231604604021724412450244574372725560367175141443317370405626115352675660165125304573014116112014737575763277326017204505142747663162750212057714527372741565273201523123356722222414466453603754322166572044050117001224520421531007040452226261157171051750510022162614212753727627411100707772620071624716216027557642320402230040447453076041577005127034424726405472761123316136660140437500656166125725343305202455611760373443254235713604511026277421264126010501730271554223206027552613510137123012705654143520604642732676642737122302451045442154267303272706556632333310460700250323776676543370762545714631007764622415361614572061263533304700232623631434444536613555642517276202044300461675374321315053737621036306234355100007065247212302405474145132032362226265243631202065333224143133043664654401401501006567560653715046140400733471675310311041262553452476775674162453712201634766076425340215373621324011367205745757413176002274220532273217503501516047500255075671534023337037104203077331216462711136642536541024617122042730223764555546050201750656773716646515434603441651536041754420406451136605674320757511073363254136253233040731275361525073513406100426562144025603345745502561041374664402740324364372472232234340156550460565716014501744376525561757027017242250206553376171667543127310604565427775576471714241600313111061556667423364716626747426025420766677536443626204521146700005631360261065140343236444100671253276364771074456317312605160115265576164271365730125025504120323060440556044267336465607020002227312376644424602365404206703441731716414073216637162357544430356337527040725230056625467032750372650660606526175217575356031423463056147567233664746714757620605255743206020522356720273702043067540163016154224273227522401007301645737776325764025322610703633470244142107035002666375221546677420377502343432373336707661100145417571075726475712320006051346622720364645725266607324671220502517730011366016615556276333653714066401627051550442722032531772417735530540006726777426567313471075544207371724146315137605052671603270167341353067363516760376132067265072744764063443563072657275671400734224006705011555207174323244032423065625400446522354737341064206713456666602270754055474135056366010335732445377010464133024071133525054757576071674120237054612753566517260375075012454074476342370170550137562344124527127574440225332670755475403510526301301542161662207051640404457122204765120524741434242767611713225565762155313623745423532155105731545415151241402767726357606431726634622665615041033770416626367134437435374223336165474772326420267255445633604107270270367237302740175463254362237737761455434072652725547615037611265216256506251772007573417722221320366152057504340622667727342165612422236741756557200262071637617333472311150762307541547562651666227427346665671402222010145721502572661037714515316157360342015734225415505363176575077236264372526221630626656215542737231163012630535067145241372742355232712243042247662316613577530365563420226025616224744155402353346105440207742622225730305415105447116006307541365777030605231552221036431315000606152771072707007023607361646351411551541146565220004232506741471344307220155364504037036236623273143100705454547501451520303467452361274231665262425072630224623726716554677107313430365235422514567550503340030046426335404677572114535037534413074767702120363114263204100650740337343727007343067360532405463112013103401146453504443610741176723402644034351625435614352466043111563746505736527776602307247736446416104415030303017675304702055060403534261251667374772011724541713050034615157417731254715731456210724640063230176403711156665431722622110127555051620102623637512512063333210023262433746150352243754256115762306032774574477106455665710363432076372443151520143756161074314616034146754401504011356316423075733523234226730513455260405421003653200622373301106763136513532434143406503744003025160034161323214351701422135311221435155112260671255763723645346242252453747545776131601152332372754564425266654515076316547246304433043132650543476336562460637761177003111431250106772302156334670460632770340037520725110724353756345570355757652020237540472373275140677072766241227003033726041174713715200311525407420004220523423214403437302522216665326176577135120516377467126210136730501416567103267403121343722135635035767776664275442023161123105461111221260665063666710325142623515545372775721515055126570523442636372631162424413074046476736017523775212315437646306110525665266223707646634657263106363136145733325337615060175664036763273130212703602741256031140546067420205600114163532314010517404777165342206772161167310620343101025763207506445766646235225076743470606343726523665003734366067036041546663756702037417771626642144510300506227631766046370330720113110700522672741240020646220464357465031014214521445705112446457673235704775026657473073631065646510452065007511257473713365033047404763443011052406416253067154246341271026561312020604036556165553434525423616212751015673255061152703071534640645114525203560405542615065011327504215420403002627014543366753373533130241031020656252346364201261263601465370214610405211050147447151262147661572231050357672502560774727441723261021610157105120323447550004106472564513436702435134376130503026403277703610164541630266035153163715554553017455443021001554717026257204721222735253334334311113676537771744007036454402536422056357011435063126600347302657553256460535530334675676160574467234721427314071232736026742301463443022612600205341442046414344607036771713122174613660272460501303002276122735553442741167125335303307405612023005520777677436337416011127445013525562711470421240212223160770312630363432710437652122327676033121127140126556534450604702176452745273122001024020241165351722673434766576434377070120003633212104167354042754260376242127140012107373635502701762216315346356103252357503511122117032643570647260213224333557774331626270743051767533117547570311156452575007054327306371277073703570354710053122105737267070262744447502111450114526124614767703307562321166304020514737722665313760731221111272540566111144330621260415350714001703350000337454360105576464140534540704747724373576437113104744776715506031007553200523472757572277567365464617625003465475361503313200621730753652513360616265351370313406260453217611373331146156223450754332176451570510213365160026740245121444173312136333602357353073454032033627527516117737625161400563336036602446145146243716456010030307503370304302744155621173715045171540140254742070110073603020262427457717542543756026454030242606733635243374026154342266455456455752107422534732460337706136323013145257067364267220633451720011236457271023015371012150774136160226745236505162774465426716313761711750502200070120237672271353465136440576006167650662477266725505244115046141450435733431351120477510315765070752133451156771706213443264641556303507631770517364102174264357010256010230455727643335724411510532045717405737745331374360422732344722636766413575034071707502451651556051460715464750224624437765010162123476172612524351334516575314755253244465765514417550540454450312530072104700361211624356633465105056515322725270052011432567155602604504342404227525226731257410702000260427607143114507341160762536306772253060111565526632727567175205552200056333407460750677573375313205715402604204312055552623232523454511776032425346121733063443777517247174374543205072521347273137572350553717663345203367775663232743576163617641367407614022515451446646055635055026475666407610031355011144725026243467466472062155321332251161206677167605110031415313247760256513212474065063620503416217106454320307501757723523027410630125241744636430571155432577106436242261524761063553012772431175224727347056546324642235213445111632521541767477503726262737566220372157243014213270271106276512627627077602102240733735237731157125511413256351724164246700570773470716445733767561255436026202166024711370113706375110720555012241230127361650167564603013617243030746306522010000170462021644325226040206033471764525731515126717240365455041012307317631373426016156714323532154332473621131470472450440634675726100310724672136506437265463264122644175423526616005236463514205627703176161365776002136022556447607077564227563705063356563254106345145336201166022514303243763044033012316605763572523360527430127015550657151217143341060274671342753462345131074410570156016007347476505477227254524416341257546476700367220753040300756603055720032607062426652263457337400675146147536345221437550453760413722426576104321371473640326613434564737453253461545504041420330130204015702565301001755753235132467065362243727367233526451157521452434052244256502465542323113340372444314500276434537647340300245640053001342410560476277051573637414153317312654136757210073235060425035272547372435112647154640107147510103765232312654460610504664510661156526435614245243164374227225322352654626713021532651053671075471007306326576562022531273276430237544734730401171133225130414260106733276655317266033420457537101545417343476064734705565015604546741171177305655574010300465537057363427023171644546564110410105457707343276502036233473764567064072503313632506355312534541317201450706311611642216462255071217472754046066250275556202064565747214176621152466431506140722065027567566700503263631336775263516347557077515415336403104356634300140471321445173600114501376742454427225705206103051403226564356057744100347421410750772044551677407665101566766446211027661130570265104253221126706351717002405432262062272753643517135666241010212302027035624624264657544476516456600760244324274652217633031400230063227756144354350404112550164613127610420675514544072202072361547142566476222345152357545052437603426734744723027241272202135456247572612377302534263631312627371405064713477073352673420675600403740112476445247465506617435614007041150565174233272306300604613766601175301707146014670534324733026717541633615436540254631204510736305323750647540343072407131165460047202607310244212245201306650407130706664401667666520116106040671515231175500372232360727503152571535017703347304647110613370236722625256765624400705617126265453051641546504317337355135576166326361671567132113401047040020727463365303735024752536716377635170406725703317032227705377464611052101256615364734375553634171037137101063541154022705003335647163117636171256430436446644440001521042400055323300352046454765444275707224430132645354112055402013155001114116464256734261032427725505637317070412552661136755054534326604613536011562250531721360270423710702401416365257005573352116501376563061362260067527336767266755306051762346251130143075775104414133552225752540324337062614316716356460336715653465407651674565014613253360213322266607010260174064515116607754037522045633372737054502611714712323442330672543365571000154332411571545751145531411313176421242106173374270404047071035344501433553732264204203430117027033150635055057102762361170033506704537440412112026235065042664771712613535103246651027261461363124274535577662170722717221412452652312142622612200063377066611427101511543202723272262305474207612146013503552757521262762553563141521363262336606145704516313556755003417010344770614021206730753347631122371545232505606527607740705633317244272625235205004737324750017622034057603600673144223707427425001637637374031352526170402362341234704471161372113245071632026114210001242536124567717150226423615624312757044257105720513507223541331077505321012461327555636331640250247334764020001307663625155534114025461176701556400010304766324772342500411520266503455646731054117160011326741440245772705274075364426407171572543707543140434025617366474131402365636012057641344163241615750667132222214033751345555200000763361006733345121402761630126066047716735244636331571536445403101355134461743151302606137252653456743554110350700332371665150257767572005544404626746135315627666317107023214171116430000267241010320413105142532426435662376726200045017012467700551567575047052563613621300413507073744020565606276667662223566022315625237566243104420754530060635377506111470703715611472200665761656006560224052714425150301414760254525574201042106142534106237050167142634776370550254456505011273467151660277317340612367662302651114626627760375253033430463745063172070326272531641065462411317354777163565033060234256402732010666723765371722306432720022047437240160056406511632526616115373357603607411277240431716175626431442770674526223260706410512426472534576652457427664457740013646772774454413446226207362001602516372120672555674436763606715127001576376717340467263044743600133075732664750131404774010744230036763675356703621375330574643042241751757064363107124302457226374056327577761016603153443407310667144322374100260010141472376673434435640611535256117103656513345771354355063353263657075127651652232177113353256103430631274622141153105433173137655532401417601570320336017024347742165113267271631735311140451005054750142461205151051401761375631404250034073323437205760364456152272145212077603045446261600504234270717413302535626431006334735444456330573363470070544051655453057236132713336605565327157453062674165710620342364440013275674631520226052510612307011377767772604342625121644516331707433347107616752436404612007773773376162472030103341620745710133254237666326104312726471654554524144621114117427747315614153711226546121260775005567047450557672510102535064275435370535645777177077021363654307655165670253322054535130771527233770314321777204666440452546001364346337122561312051652757365605607656446452655374452141435145460472344104107224012114744152673163267274736215131546740041324627321606543040631244347261217027424724662440435251055400302324061035574441074624277502774574467277043650626352732350431642714207471122270201565522653676433670775550333370615642372566730043063014046621060466266412242252565716610422364372242567050027345610327272571166431550050750516171203473075306313545427004321334577144540247615027710710204605575500513167045437370520747310147742421046426324645356732613567461576742456436226351433463424277223441107170612635656465360253624073056003564445107562751670513416564736201204672350171214220340706365043336334371053072236167152261154702353554467503241076236646607105350462242356343464200702122240035667370777233322317153424550630523160241307412527655542235757443512425123022440734301731413010503226441542530214465057610402615021356254644267324547321360055106741376221254511114634746405250007116110612422642347334310733722431503705703354062116052572367414147277557630406771610754076640657333240501556566231174044107063537572472067312304311067060315114335062460141001441651364324412635125206421676305170375171256301635325135620403222442576125523106351431655505635164102204525373253501751135332161611563246564173107006571002623721102117213612035604250772660754756615605053313430661213564126616347247525451717125370643230572360013054425350402036702320211567064337464532423716204213736004222342726754546551253635716555557120327743654155047032414765645203147123710113402455713400366446253552666126033144227365642023543124326343271033002066565634240015725622472411147772214533064115716236350530773762317006335765731126527641772376316541662510306502153576376135415426461720570213667311127756136076635235033435312546626704574174130457071501544210270133102475116203041034160164336601231470574600206625212416721230671553243574456417267730773253416624547330125401576230162500345403142423660143623375724766306561645600263637610344316112171232110315300465510463646720543361302443306002723541320171312053745541702173127445414271457767677346642234001066330076205216203717732747166046445243667154025063332650072420404350734450357026637170212230311746176341174543604414074412103605723671202466600327567152343204545052701266223463264273100375213326671531072176561125356574253705760616374231324553460274361753107662606364000467330523140222311752157551443700206221322770210275772013320006107006444570064417131525777511502564136673622265754777374167013446106222627001477540436653130222563164060704230775653727422241713032316414520524150223223652170703445372427221622355351052361444205073517237716522516601031042523644234351647457617235553452706666355461635067547620744332747536037713621540320034521533616317410563223434446324361656730474340146407600073641552546406713601600207471566023043033446144652366647405735112014220774161643760200743616560020436723722642724061204632706403210323446021674572602063625227206510000162046064446647644413635263036662552763076534356701521335256651666015077336461740156731460012572657452313332423131357107116761641776253151132752102312243371640442527204013657537215764515005735424555112114642755655215570216460534433422740531561746307737715540753367632044540220567627037642422722571273626647432300314535105072663423540707116771147033752365142256574364477053511737211037132204322227331574774150526673540750203254420425032264716665343446501650617434654613726215651473465302541671037250704567153150231502377527105646765734714630462476353407102634177246742715575100737460457361775727155066367255301117171705717754040251637270136166074451007705725213530650252627626434727352273474424541676450672736425545271210072464060747666274635500033571642131672403141447623535373622547616012001207375162063623432651644660124532001353237437553076310375001715230214150234534363127773620160746634146520503072040063123420105046724010403341253320645340442024024254164346661513444322214615044025305512122664050103202374131460573611522516043743467217206765524663052465055733363661170054023314254230122443450220112466756006470750237041100702274771444304073722167012022247112553070301661734103711207055173673440404414673567757606626155051024230370662632674505013352544154007552575154740461661344177037036234405062164603120525375420457235115054726636765745174035406157007170347562635115604442750476352231174605621254222436544242003006261511374601666140652635107645670703427544613250207632204634341747201663434244016246431256352625202314244721605170573537731303027206522516637431122541464104602021560107630146307515303255657503173107626755510325475220673740405267142470000334530112222560401507242543716475541176540602050444603642177756127145257515637416652175467621311521153140411774032360423351210543570321471100676651506320433121730172732511644204573112712443415333601355336165274761313564314242156766043411714057027151110566740772412111366462427773713360443261417151424036255027062272372176631442451152100040546752464306070576746423647036300140221425043636015457572647747637643422053746603060605561275520277457314464245612523127076741503207170733764016054003027624231567333626346520636264223037431322631247254636766507766534420037532163011224100523621651374161701554602531352063144137254243256557000475313737274306747427637542247676050402633551664145377444353420215242375750037653506610375174557707710754262335335666075234217610512045301425746377747521734313244420264241423205117462707344371363500172005035373644107525357247521455261522327416742722673426034272426376527260126144342160012653277441220254573041571670110045041234135020030343335744162512657613720245015463173774761121242061103523061546432324720663552221056604234341632674623234556526347045055115367025755647203201671671630467560573222030242551431427506022257442277724321171647110004174257503510537505721675702502046755320564212542556076067213553336403605631776222561145431314000757257651776232643454230615203575636375675152051452551012135654635103371315746353134362574130240434654321450404143243671143703705650763521622360613267777676451661154150260023156105641776104754647124243730511161766701617343211521532172012544234642516075761214273521235434576545427556752203345160566210201002771257374747204071345465466607226503641646173072724573432611301746426017775544525557166366305316113277766010733076303102374516141732261676472121526155212675716553002435630212213626367141261657300763730776651477557762426226451105376731425735465514533605541150576047623476523606574172207316533643051760477575661443225230175436221210503264163414006567442734144551670176136000546533033366112642452724014553066446134756427677260670605303744606136741472166150051132007143302044233244103474462134113615335402047620550071472074231626015557616350314014244536364272302276164241464060324572205534132563272251056277647075774462163615604763371757166335441646300306053103624361606415217561671540055420436634350406634171722031651732403613671075304502550354140351260114263405575364533462701622116472424362660410212720501076043053555264477275476452150541315664504122324425772416734565412742324602647254757313577106526537665375320236271357775076706341054004170372270074325563376732753724760672672142275320166223657212556635237013450750204317312266136662636720445356335270567156652770010023153645017404760147174133465723217111547561046501676756732414366040455222424424034476062712616007465356433445711323470522370606611173006467012247433245437146720464775145425207743743040361261572743221031570045577617157456140613435153213240760356360054303050065332642615012322160064636675051774122154110707632006026307370023613362350323733767747565413463127762775410174413725353160064161612615546530356202611534740360550603010230552531656072704522011215537640464632101255047121610133045043704656610603064164005421436177626337654524235176405235342310336675107640334545266335030065056337575232616362041666327754356101472352152523752256331235315257066334714342041523443411643164561516042407275425566446621366321006603632516445230405351420006465431241312523312112427653257704016700625731530774520734751432701553522565272667117300021512064710637370053652715512576112613446723040013660072107541355604765457432062627640111422630233231076235535106607206626675076150533045414204752134315030532541720141573001647255030741737333266333707221267314622244504704504172254041074375774113467664216472733644324013512373374040364140630111226122225044377561701373005425651755136047300266447413606424464103605331434325401423366463357613374712522571447655171317165517670444502232316053311020265572564355103753576663031334335146717710163464015136612402167433146533121667357737646512326307005042617355123616017534241414001713633025763321462113026072127046455402066465425215064175344014444563250567777425355642254744644005266110723012311027222547745332072746554330234477203701575636531016067273310023472254510767455075022236064456204673441037733571331351373653102441317324672542463260627054531455200101270560436515023011467361103770655212501776455163045676622314644001646762105253406413116255660346304113745576514225736711036012724514661451654476022150545505016740650415056126316056106271426466754115733622223112527573254310624670567053603133063574624356454226751375671021256101072013310000705207050277376613000070534645437401635113456556720533047414674146175456101335005300573116654630123642225072540657714472162661766733013204433130504013561161762461372724113736624065032537656606347260645127620465636354025757527603065444167241660776651333122472240321310516117204760736325762011001672255657746316571035713434100730343520145750343056051664135660516704437141526444106061305455072533707404335541613117005245400365450536573156647621142506030653474121146767337746500644320055517022035527653657675441213056460613320607164434460340744176314617767307201356613743545601151124155312126012122120730206103737417251610105202662612075773055170326250516345713757663300446625314150073077726032220705572263352074213665766514033732022317217006277457060544114412752606511443727401146010251164652476145664532334601660622050664135423724144357775604461206306543001010132423441114077746124744363665045367736430241015574651661033731131723447171101061603734053573705131111615140611107133472710701462021341042642574572175761536731443044656347437006712232413225212071246606610641607512265302120642645511664274466341405627113605703423352633334462561300222560715520452647407212574730425223334101326476615370115713000226667017300524674030107343266743630001541341745606505457407757427234716170337352521301321537304132233703373631210061403500170245562034115100211716477601140660432761344073040040050645757701300654671572417053367734011456756104756014125374614151422275263445375506253333213525112155371306524600150466550321527437432417167475147053136541151202271001476067040433076336273722167777465544724777555657736525617726173716707364247516700547734720740617076771070736745114402333033321617066116162233202305645727173256376604717366752247330547321654167153660751662041637727727344171173461253553504351457300171253216130463176507360576643260270336224116173246517565463325032564104213420232535506724343070540160031427702264300431121221474003601211773145154613374273732752514123473532544523416254174527150407671525155654131755061350054116347130455752305477550524676702405437524526272702445142275025420156321333406425235577267741675764730504500634005377013451055302266540146316314724601023346616531040654514221140471503573541134644220764173422755336470000064270104424543306571103203623314104661514677661465030346112604030320504116726663073435361427636211772770741071704010067325032104222252262313007376551450752244616157642310005713033460664737172727770043653333724240702472110253771374254151121726304311542442175564225044212202127316571362505100216124205247042460250727551156520734502404070635704672304354262654505510733722163043577254370137764761532375145714471266535342624330615641622706337373367156770734174237016333065147104240134075372554656707560013322426530544511122406260424312623147167320330513554172335726460667745347366061662233611177325554445206066436711141236701703034101341776227600341555454654532671116654073675153030000213204672136315317577567433411234024115203011767322147670732241731255467330474231220701645741253563134443535045021570753273644265326055725566207532373360424505017447132532232203206056007522573513020206564423723676645130227433747745122106637407456101606124731455635637457500724170164042711070425255706110704637160200336075745536132064423067740653477643675732556015203526436561713701324001635375713151346333730705031320676173764061326327242157776251357610753741273640646131111144127557743172561302137724047201125402711417462101404142174716337041202277512477533755347043526403560175026731147752154354515461651106301575752302723442020274727534474047330167710020256400137606705176464137033666140753123002205504563131434440250660544357163562451056540462067775301414403771511060066211365205212056740127714613636755770130124317252674155031645714255157123664254742433570166624453114350230670137270460140500162640216266536013554621500371110264444147325526567100156365530177177210200216104234326610677213444710676202165426562370435026124613422345154550633320625376002763603505731075521425421330276361530376431423626273121222567723307507140615035511154015471560673706764023155123713336750506122304262521246241373747252206226663145554550727213611505617306163735167176333277662525250621017202342712765074321307125455653616265770124710022420110060736435636150415705004216213132565663115545212433156410616103162416124612311463702227600075076751246234574070360034651635026540413530227754326020465020650047602612040500517322251043431145531265736525603050535666204336004350324426254177704475636370330177204257506542216545236500517655467565621056371354546111062326360627062303652020513574500660117667441505661470120614563364255316771314302702017511637075776001552404431421131506053110525255707507615607342055212051022066656423734764635230450121423404266350715037156256000315175653461231370433127214447177745507006526356001241162652160203672773634712727040335040360634303527407104720732074330412763200430427564232565634303731417735206407722770661560142366523473213772341577271207127224254656142456647115046137200235414721342220437256731737137323151473766132431066670126217511441560714141217406651366451126620356700721007033015632210526466663551300751272217772210634240762665504021633710524065726665403550444001647265560071672472667507511775441650423224051024046612732735561642400044150053262737675323547076304542642601326026763007521144216536421205330564670252521054631753407747612167453702636201770741761306777454115436370157426011071250064262570352320634071711561536277547345321352465753125515565660010674063112210753071307415526511472201134246031300220664213605674241767110106255417443230042735173541067041064776052113665046737411310242676447423617510636554610157301602431540210207664062707562056304070614754767253061643462537061010731115005302650647323442565240612420151612473675604040422761170614663301062436730030336344604665652741561546321655117530543630021466561260036622633345025270701711136250235367165422014326506132153354702030515312211035773666422206177672062126404202215457016706236054736736641523133421330640200612714126622041532332425003136447236001072015614001643112600510456632253116414611644236564455447615050723642611030616457070362430535176476312170022360274104527340672224101166641427151134131756123101701342252627444600241245761160023113536733721202746542043472313574043052277523623111706310602641616576635032312662400776732470626456577746447750741027742443630535516152342450104353722414570120071437205133760052277622421334571414644576716030073171154253245631146230524355211527355110726775713046603562711763755250732303263205437644537673242715560142144344153744362061705410503336100137453666561661011661723324026427433553445270374421234136007607456431216113175762120702524507177743647161475373001176045143456157537736466226076700321304013611276351543514230425077311536764173415461055747145431701775032063714726443064024160111164757105600443436145252340767754435151551111103342441430557475035155324646372160531654031572103552461355010325251265550372232541067421557530425357722533263304615375675154100124325041040712242023222071535131345675351123213700346017723126545607263773007122232043410527767233103256354201610341610307754256250605473511233341457642027535136512172106054546233140545443643366745034354061666041766012162351420651672377570104542346017247116566316625156231405623536171660744306732513160602075200160033725071156601142056564146725572723365503475740562332023301077060731546403625627137301356606566570140110052710011756550047162144205072417501116225102606050006545442343014454220213104024543411754437025373034264007260015451723466327327563157666177062364134537173125337532513444141172303247634616344314556407467426133332532760371105230055172475624353531167262456634006234336533766730736214257316211334317550452657115103772611043167721142060137434272202063000177475431725330511053233150553633713200150164144167252271162556676151101055006464540333716233267053414455377512040175117204607343721246661274140143636215354623703621351620425352202536165224031561704352125261623176112355132720314270346146711306527253602477052044416064073201374040775606216531524426303575572203633447476176024250325053363541162774570114172523355733301404004601466275301057553044631334103237752064455322746312212033130440271341242453062417231315777645521644262716271644111625610534761446661744605044221566522054561560116304133706512416436763725557324130242327062226061030371043452456706762414324215616201760566116157511712426717414062252534055721724536366253620074350025057520401636474162427372070627731106755332556404343425614353054450535273657510637301640700401631514562730533677744501752037457155676420175161752773745407541224762077265352265433234626235354553307525670610004761652533072127423053173624216306247471647616555553430303577001172762047637113664673710214361317025645777406314155123751561636556372170356222242216452070151112705301414703632120531125331155150641266672355536705332572036174417714774442314447621551011705577257331520206500062202516366744441467020315356130632625750407627765146663301073471250756662574770452113301224541477123634701222225011115615227777225272532560763366262051452457435672477731575245236063366551306067715763665721453421340217655253756724733626003437076341013052253160530557572353657141652402677013510015165534062607726336123537547111254525116076473261673751704076036613156265176025365377622146731653174611137760635556666477644226060512751030055607166015641157321323141350666312137503234402574176176147047174555416206666401740676445566130702271303424553054410671573244772602244734641461314634707303107555313564474471140233511676716076246335321342571151305072272041300361427423257521221252725526340507644344110336474713200453037655120240610354726750623701004134064352051312627712746156660574763764507145350756207701533150514625175343351137166340245373506322352517051441274050630264644137432573173166424426373740325760213213775434250606102132331075741376006350724044160727054120543034711630655235004736704562002011255026156346526207272526621236344206636163421721467506463536457712434044740577374716343525457032514160376275706120062153327705157775552357301233725444570774036574422132713701001673557041063677735047473104156123732421236320242043765534717422545477612432401040054124747373347671747255515024721325653214154776050043365425745735622746727302153245351515321511663667750350342604663025360222150143353213535707577102615612724370506105535336046262272026775474357737131441666471703466161543532207364046005065502274661147450153565431711270544640513672571111012665140217154372251765236744055253023676271404463172743222601706617565645020651706467631353661147027162220725411607534336115423773112676135522236737325413146706533633373156677710412075607504765110056526422206231301176171311001214450635031636125330773362732351646016056316511342460162462311201667620027517440230402474621602237756020713762545403164244165773703677466614441036515576400146233304610637742126146644516245043574235106667234607435400565467477366401037467601516315226674171201103305717266350521633357005416247675356010557606657576140450046743524040316302726563601432024404017564437735010343175745261061533103544037045412006546162030340262007116547146143013143166546207200733504653760076432137741526751600214335451354152373340043421656123743460472131570366305111442215505254512704731126301461177353541677623501641247477325101646213721530656460447644225314013735645122705151021677114371120416726704636770644522357775760671643414277214044306210617022026545647562243051763342777076026660246233776651775541620742623537412633467134204437244444113573355150252506661517650317351534061477222317624013301531445236206060442254467046746046261051440265662116423453431223104212121462157235202510002173675011133221516024050325121512502654262650615512752001161562036644074600356153123723460220725466531172146063712542075722724723032616606404552664204064011473323645373432667770514274276774633113536304074372434334532460066042443121307341532636350415065310075626320272227127222446203640433043135450326765246715025472201256573651003530043006420662631265151256100164037007653475001632307364224553753036227445705430447201436015431015715056251412546634546301253463130020654365012324726745262247257471735763071667126402304551462153370503146645705755300721164200530322153304444635642373401073771672572547756007053260573130347321352057400475106552013617607043064665271123270634203637601064344313530120651555461735067066551753754224441741744721024550106464312436136013133643621616553440450117432212255605735754562277222054207571571563530226322567206351735060405302400160054561721437206174506455306116666124421426751554500615440435577523544271340272337135220613527501436756446623314641760347237153674501214352412706670107277306706730370114074066506634663040177677462215514271532524164604723307406477324255022115634315557376305470156310133761533642204534532640463110504623212203273033425075637712704671675473225726176725642665722644730076722147155317011441716300111645647251151106067437377674644257467143401152076126241110503423174261333643703345755120051625027760377276321054373646016324453765467514005645053073063664721761045515324230133207712623611140762365610224330574556107632126635352526553222600421547474175217122247337454556354441771765101706146243360642577165331113524737664301166246027671107320167603677530642314136350327671336723747755755735077772445023251070441052364446566437106157271134701446613210574366226372377740027547327411100355542300416426434037522351710167550201317412512047647522353644344716550752231057365216345440724753547124513736156075102566236261763405211021003537405225066203462311055705455414562044747632661005201057345665677502417267255403400367020132322616252305557154425447420732550025014626540014347472573727571260222201423054374422221575444435652332712605316606757711403733752142164024577654514760570017060474775205433577173302637435064740272727466422611155660511257606261256164445557516013336226236247262274612017242005113622034104534564550075017215560267202223314560261002417623467561245125570662225311600117523546162263221517122020124074622114512706577477362472753071042623453740236223177035225523345774023743274307357765342403645075544433653235343026263411037416060235663177163354056417731663065164651245150047354332571246610032421303271613167736400114350240630440371324273720350410164471372155227313100541341620617006737036704310013316751701713320131273360422465400356157501616613414155416521672157340023627525505165613531627076650140765656070034446405155641533160511150113443513356064760727452150716232732764573311300150737615356321433760503754107060635725413362731632467041267655327550017347545734467041474737435640273757134361312300233420434050626642061405445500563573676700354553550551632000155276056572615536707456153313772225746074240127230731224007261646173030572063471175266675443776475330373260066736040437672733204422060523420172550073723341475546755213731621113716653775747567406766475336101213461600252253433571105601267475030676275247535025576726023621443204665555474547600020730044402617566121506013004446317051515502300030601565465306051164650134342361052302525400676147311045440344273262773734604315663463415752433532536763755514123743760344066500415360505310412024116065672302571111012101230703130133772503173545627356472343422334042266717575201522441672463505243112253242250242002716751042526164745216133107106630740435742341013676034340623523374667271356520453342764263103324634343766322435217124616506710303755755260611253175274654512755746015455731547601724604636154704331266620000132275504706352714762475106146304613124332465325562037205027113066271031130454510763316446121530705467316051177605414515343457515422036523606454666715055071427563560664614671127164261054270617067746522435011322377773241372706421670600405206112556625401522255412204534062435551025276123062147121101657572156267055551465527466520200167440175510214261724433022740600054466052745763336157774006250514022362352012226433566653211762122542161642615613161166401476671642770476660157033545562571553713441034017022232432430633343340224014415624342204463113542532346055641302363055072652326361224152627064625302225567506633551677675670427062420632126112500563221554054164230511326071444721027302014005407725444762660606732335177105166112173626104507035651036603720237674147522160313515445224600141765427024270237336355143730521457455624033034271421435621543766630663610156050106346115504770211744066400515145232706000015535371401670145557522654116702072162025300513766032625060452420266553251502751615521117315517711064642051004265724006212254662770305000337345602036250577545527572512737176464763171656102151645377764261252003603417447724460764731102217512777373025165441061401441621327354307365343554670072233755040634110644512146275034701720770065402472657112763741556761452625130245504324304356002211617235554572155230564051750066643164041704665076750177216546345137470075456013207735237321320056631307573305614055666437413147120772500251015130171374733521634062041260774730620250131163706074562371150732637043061006053257377765767644067421156306221646242766521371464326655445234272730224072655576761206340605455153733267043044301171233702415701463351034205272676225675513244635652140013023316273505153365773377400046741226307006015553750550332605541615720306367145744454515727602166163716316402414771011770225002525453160315131012156646472253642044474067051374136001471715176442470450051631061711043335167006304512513353252500647743525721012160376032122731602270033037136030642005746614502760450101344251765527041042566443101666755337216217461457333165217662555555170144115150075446606736317317402031704450064033052307523504451525141354151071676257351166650051113657741471647657174141165174424406653067477600007217245017127635610441032401331573716203565163705255343012633743071624621775774323435150644417011345702234020134734347104013645076231457030265542666371116616654624526422423524123475313652744212535137515752551413247252450407073614177133735643365131126314341505653053727125456040647051147163130046544150066156317167313165355034006312074165416114135637520322067230337542153003430615453343320323260416607723003017652762432146352643657225731012210154022152245633307254657456647500614536643410123475327565004514450703533677153432166416654351475523137437100563512354752511215347023524761466310407540217642140404056670034106724621133556747625751202351605340673140504537742321670135157345320465673455316735324657523704222712727210537250760367166765056732553122700412326543225243674535764364563615423417026432575365227274755577613711607227256333003752370525500035533237126115015216557265533354476061363653035005731065003346257261273450507130754273701712010445146256711114707353757601123471554432354342415243706340512537603215100161466134513376257043732657517245071756622713765056137510352407031563214661357742600404747602552535730677171135406713221647241017706371037546142304221444076037246560572654634173453352742312572603637177225322575144211466742220640656547402052713603035740674550411422124366024772362522330023575264172114652215303016374502715330320705351113344400267144225032433667073432127773243144155401305046037212177467421361172700310275442154027435675746454074405614726121636212600616157445521512647236533467523660036102515641507126622562152747515716016560242114221636710660654702442452533355276670175322022314441060041547164441212631516022441237035647341740611314277153212012115330336006706400125721372521641404564163567743733257613633525602401433461432362560215656600112674017614210224225034554650613205334151066566212065577521504252705725373071361062170352747303675730535412036522516754530677504010042251222457414233272614276314353333341142043237240174647000750277630402764125540136625053404050367061347741026305300402720631624752254166101617422033442076073664273302463124367134526104433516775336337136241563127114255512011027611667245011624073563471531314155676055351072422655654477566024535316740027140374343645476500072223763647606657507244275774075461350470674222125110015660165371730162723045730217725116447675545757357304212621621422310466351707171700725537422546710601656044234070473372173733453047446510532572076624763340215150375305043731026062324544402130257034365331104227355126447663173407331456611507062131731326642503207045437376022177323565421505213557701074651757136736651644253457012165343562532474342744137751542632432142265231341751252323764423722060233515270711745624142101673301036074062040303545175570432175075621224275365657023671756013556503107445061677016735152473221256352236327363344666452561311562045113167225366366642732621221405674346071466201644706355207113347337502440215533067171645340355262220066716041023465141573740053564761706102222020702472016626476076142707125421513031112626176715042362541237761122374553536740474725353545342326570630570355532465675476467622345225551540355252620720302177124257766463107040554440351305625626261573540520733434720726611133474636244117117305623300431024450345733000131266410562044466753433450341456712104165453720454707605026404233510207422161501424173000253424356614564144701043630341206733513422120721100226463422367707416606037727174335140363262064746164342013443603661737174173757370465322475330515111572124472204675724611150324047017144222162224050635542163162767233561741552607276021554412050047373314127734252655402446426437622063517272622333274442700347366344130311771367072027441174345247617736604034175235100235351325766642611256341137511767222206454435434427435315301042041311677766300601640117602713443355717550600232322722047447245422123570717712105324006465770336441321453264401752520550007317037033656725233436356034645502165310543026053216543410403036760303442005046320375155564102752327175667750502365004774235602236402426731137264360645474551400363735235317440176234262126066515534217156413201614465523352454323704126233244736657026251575617421433402570317457072047571740160017214561745723557714423020277657137167732701770622235613751455620265517002577613334226341760273573513317174334447067333512036435203612125405045401526637545275332137675271237433761746174702151130610600730733524674034602737110505401426361227222016002052656245757043061422305672262472722044770062433274223511771355144633001135322072334365645664576211702735234557145656271340301601214064260701510577402410044320215546470272016162556606000760664562220450443761600617243454634373140653354736626061757671517325046211465067752773021426647471174265077100636601327562070206477347000036310563653012273141173655530504005047117570503112274057335427316151377516611231541127031364411504616246113625206236211177102276116163146574231432714143155054363056413114345456615322054115135076401001730423231271744725501405207713540543162552441721127173676211502610476420727433245411000410760151542652410416162726224621360771674421660175516632522202604034003666361404453222351672053770477516767515352616740110604015432430247244514434760053071557121261371706666310232416232455347730772131006325406107031322575773572630530256647425131517050576070066115611642335056103470372026064054257061201155754153112503161032046304546607062620212466415070646015000613342635712033207661670645000365043455416473561013313070056704363376656635370024645104310112477274403153146324125445701451522120306264770423136555633204447164503604327474643644033365005313574270413703531664563250417102333265530326756150722404741221540120255063261704166041535607625726432342026554164736150630150662404244526256230167625534444324211204112312717330035111156004462152120141343741411001467373272264122164147511252220126447347355373343540034464642062126242766100127723075646337144704307005272252236633660402023144123507551367651452701370405501566550671765233231615162546405253702244401231124026656661676751646404021131261231243605725075436511635765461535027432213757605164402135215232161672613640124333463235614403656021100714147244032655435372655372270144441106161655702630625400052160552254463635711123406454421275321037650053704153210606224166361365146131562675076750021040371334576066020025504411053010021110727413542624115150144230444606623652352575672116547327234654436035430355202374633716205225423302660633001573763634210245237436536376775620637610642620276231433066246765626377752422756537647015415743417725246017346437154166554724611423307163343074656146124117067705723514071716436315330125742211163550317216313010253545413553470653720367253706617540537666570631760472046621734325677117443177405705357345140012210117362702761432161702301633277104574021444057372067255210711307554214645031101720363072445623217417227733052774370004512154203457363722574077053604233656030453667142555630357037146713676252203743345220017416330434417770646334131206366515547147070030612335662141525744122221340240552277776120607644164514141730543254033541411001333516502461621514171003563157210201155750766556221013541737577766153217077001137726037541061233604070017537311465277642404726305645422716765325561763355203603564035604531603044212477303772302655246205215356600356517443313653224662743044025706233432513454011656245255470201351613770025650577653647631256262667403741022014372556300476232313735562325510304753763317467520611576174534624376254303374615700350431564702510671611676417307202367272501553603534206051420255751112405706244437130535027463257110234333154025173161555406577656033223507722607475423350357547437453005424034026257062222132533542472261620645773100451610566021163223314520221715060533123647030554022512000645661021677261070361504331775757416643252214116622350245016232570052452402041330770256634741045105254456174420640662103464614605652557047530506250751152645230702355146345772117024146170562153462764707400574166164521615532504310662061370331171726245326726150133221067506523262132471221630072610002276773774413415674534126105572151062030764775213077344366517364771555716726441072672072310063176516147023757644744525136137367501026432037467245027354256024400217200511246425425503206364476730454664223520321253471562457673075463747247770405274012037052161051506252360274730152267334211653176042405275670664635634336564745564051717172112132413455507334367670306434311764036544307161746216606040751224352076405166635243131304016402233361613446276354233347314716345652545077677055403576530717573536077667631424435110061533137641400550711114631221765267005762214367603152654526240502343442354603636362061167254142762416146132307205004577235056410570720113414705217671536375223662433434171046275133016701626762670170617011332340613360243313103234316364033332051475741326025611651771737650614733605531250031672031367577474716352601534540742646476555031602515220063255554200307415255413724231025517407701225552256572726007145074656305152525422251367206000114424151756014432170363353111015350504154501521701633664602170735514700610560156400544360711471075153332666021753403273630614064173032155575023744170362004347225110644506240606321055670612224405005732044576175211457665137250343003051261361450603053731451232424441024453351137750245767627167540531273553320305161021537152227527472022315431151303312470145402153106543000651730464263540300505162267236703002217464305617173436656076556534311322552202554503747715403664474072230662470645542560220765022202645640571542357055042002433620764353501726621625051056542743455220646717321314277013202671546222646112423763054350352437575455202154750413641233021612321265421142572423656447752016302000121115512554070472044070732207013464126740005102652322571013775602344033776016175555356514667630645755130550251177677651413335205112536334351676471267306325307556663252153535222447314105233041477367224420620604044557340461240221032227362167125762640150616657337625555047440565450343077415342253211647176107662473427553570022601012231217105107154706417616132351634471161215015704113241535444617624624062250057534320122206260435441573573221715126004476317760142107242621401166540134134344443644570144062467253332734673324366771221440415512221547042474362455045006704702317325577710310352432611212005151220617151671271070125405577336455410522052760301015705667040704733676535555621374072760625546050757107127030525156434371211167213273027061540144250532757051135307422622064722016200565727135600667642704637306476266270514647177153645171672720503336354756726166243170402341303126552555435573370377617627375624032215004460407411761630164535231765752023647160702233051644421737652166040771413502716561274561065477041216210456715417752170645315030131033134622046626004510150610512334444360610752261433441516311572446205147077530025444715367406425772134423125245545751434072014766314670737317707634226435023474504726167306653044413022764624321031052447215342420072754712716152775567365531227222562247247436623537665133224046215213061044423054203275222655305577602533727570500042352325645060016715456133262303553027312625467253472527535330622712216315431212412451637405034620767147576144240276447364441531536011563525751621560704015475733646446252016472730063573331300647663077056262014455340265125671510570576376276775143552243050214725710512350225653674350233342505162625731332171232141157164426771744451271220774523266574666420732645460524006717674575431473305577426427254237627703554734561125372414330227211436627700057230251151213514722664560002454516503622074323677507252325725163202665452202770377266512300342426226574463033575150452575076652627203504716114200324533653575476012606710170434362133545030206707426216473414701334654236674303330466330350336003472442050255623662005332232146741222551373471404230614623752501170126242212460376577563073525234420056703033457644406056124736071311065235331227027460511122777111073520115406120743712764374277020440243730400302006263715574462450512651500773503226637715544224505464766533011132767213434137524142060550622561442672551451527003211160615111212777414012405374267707774037332674645647026452674736347013740054702203712236646011526633164327202260001445673532245042152413315661160422761140024001551622403132064145166300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001
RAW Paste Data