大整数（任何数）的递归--java实现

import java.io.BufferedReader;
import java.util.Scanner;

public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String n = in.next();
String t = sub(n);

if (t!=null && t.equals("0")) System.out.println("0 的阶乘为：1");
else System.out.println(n + "的阶乘为:" + recursion(t));

}

//递归实现
public static String recursion(String n) {
try {
if (n.equals("1")) return "1";
else return mul(recursion(re(n)), n);
} catch (Exception e) {
System.out.println("系统内部错误：" + e.getMessage());
return null;
}

}
//去除小数点
public  static String sub(String n){
StringBuilder str = new StringBuilder(n);

if (str.charAt(0)=='+') str.delete(0,1);
//System.out.println(str);
for(int i = 0; i< str.length();i++){
if(str.charAt(0)=='-') {
System.out.println("很抱歉负数没有阶乘");
return null;
}
else if(!(str.charAt(i)>='0'&&str.charAt(i)<='9')) {
System.out.println("您的输入错误！只能输入数字：0-9");
return null;
}

}

for (int i = 0; i< str.length(); i++){
if (str.charAt(i)=='.') str.delete(i,str.length());
}
return str.toString();
}
// 大于等于1数字减一转化
public static String re(String s) {
StringBuilder str = new StringBuilder(s);
while(true) {
if (str.charAt(0)=='0') str.deleteCharAt(0);
else break;
}
if (str.length()==1) {
if (str.charAt(0)>'1') str.replace(0,1,(str.charAt(0)-'1')+"");
}else {
int i = str.length()-1;
try{
if (str.charAt(i)=='0') {
str.replace(i,i+1,"9");
int flag = i-1;
while(str.charAt(flag)=='0')
flag--;

str.replace(flag,flag+1,(str.charAt(flag)-'1')+"");

for (int t = flag+1;t <= i-1;t++) str.replace(t,t+1, "9");

}else {
str.replace(i,i+1,(str.charAt(i)-'1')+"");
}
}catch (Exception e){
System.out.println("所计算数值出错！内存超限："+e.getMessage());
}
}

if (str.charAt(0)=='0') str.deleteCharAt(0);
return str.toString();
}

//字符串相乘
public static String mul(String num1, String num2) {
String n1 = new StringBuilder(num1).reverse().toString();
String n2 = new StringBuilder(num2).reverse().toString();
int[] d = new int[num1.length() + num2.length()];
for (int i = 0; i < n1.length(); i++) {
for (int j = 0; j < n2.length(); j++) {
d[i + j] += (n1.charAt(i) - '0') * (n2.charAt(j) - '0');
}
}
StringBuilder sb = new StringBuilder();
try{
for (int i = 0; i < d.length; i++) {
int mod = d[i] % 10;
int carry = d[i] / 10;
if (i + 1 < d.length) {
d[i + 1] += carry;
}
sb.insert(0, mod);
}
}catch (Exception e){
System.out.println("所计算数值出错！内存超限："+e.getMessage());
}
while (sb.charAt(0) == '0' && sb.length() > 1) {
sb.deleteCharAt(0);
}
return sb.toString();
}

}


-3
-5
0
1
2
3
8
+8
qweqwr
qwe123124
3.14
230
456
1234
2145
4353
6789
7999

0 的阶乘为：1
1的阶乘为:1
2的阶乘为:2
3的阶乘为:6
8的阶乘为:40320
+8的阶乘为:40320

230的阶乘为:7758587304686725201813174298892781442413952130995533365303964524344944412641389739603152000644515957408814002319492032321234250506968028455594445689972313374305301019340949789291189972149450405025159624155827152329676580440959428615802893638146558163235483142136540783687811997927615346859658417205832954125915861983307177232587595821512723429698627780530255874167602077755356592824804966400000000000000000000000000000000000000000000000000000000
456的阶乘为:150777392777717065903328562798297482932764849966301315324902295697797980802999492049275470580840593582700556154654997912467653672836190567363944536581444396786039028419417159553169852939652733499484374432647121409002713034716885273557660568294514238651304204026421026217797122437474581042706674997505548774529387552185264469304745879944335896334980134727576771262477699704913814778801164976379963316514713032786305083016847394455111607701177156363125206697642497352441989049637406799105387152093299654856194446887474831405921359722324720996553956200165400519069670468845686118517860926559421327845227712982865242890852011587912148558934925229259778865164753102371910801614732061965104129730561590839408147446252948841011789641706225763887234100676084552005497753764496546383864694159909979495432469993306110242973486330432796522331628915418533758582252153753291412897349335363154308911927972242304805109760000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1234的阶乘为:51084981466469576881306176261004598750272741624636207875758364885679783886389114119904367398214909451616865959797190085595957216060201081790863562740711392408402606162284424347926444168293770306459877429620549980121621880068812119922825565603750036793657428476498577316887890689284884464423522469162924654419945496940052746066950867784084753581540148194316888303839694860870357008235525028115281402379270279446743097868896180567901452872031734195056432576568754346528258569883526859826727735838654082246721751819658052692396270611348013013786739320229706009940781025586038809493013992111030432473321532228589636150722621360366978607484692870955691740723349227220367512994355146567475980006373400215826077949494335370591623671142026957923937669224771617167959359650439966392673073180139376563073706562200771241291710828132078928672693377605280698340976512622686207175259108984253979970269330591951400265868944014001740606398220709859461709972092316953639707607509036387468655214963966625322700932867195641466506305265122238332824677892386098873045477946570475614470735681011537762930068333229753461311175690053190276217215938122229254011663319535668562288276814566536254139944327446923749675156838399258655227114181067181300031191298489076680172983118121156086627360397334232174932132686080901569496392129263706595509472541921027039947595787992209537069031379517112985804276412719491334730247762876260753560199012424360211862466047511184797159731714330368251192307852167757615200611669009575630075581632200897019110165738489288234845801413542090086926381756642228872729319587724120647133695447658709466047131787467521648967375146176025775545958018149895570817463048968329692812003996105944812538484291689075721849889797647554854834050132592317503861422078077932841396250772305892378304960421024845815047928229669342818218960243579473180986996883486164613586224677782405363675732940386436560159992961462550218529921214223556288943276860000631422449845365510986932611414112386178573447134236164502410346254516421812825350152383907925299199371093902393126317590337340371199288380603694517035662665827287352023563128756402516081749705325705196477769315311164029733067419282135214232605607889159739038923579732630816548135472123812968829466513428484683760888731900685205308016495533252055718190142644320009683032677163609744614629730631454898167462966265387871725580083514565623719270635683662268663333999029883429331462872848995229714115709023973771126468913873648061531223428749576267079084534656923514931496743842559669386638509884709307166187205161445819828263679270112614012378542273837296427044021252077863706963514486218183806491868791174785424506337810550453063897866281127060200866754011181906809870372032953354528699094096145120997842075109057859226120844176454175393781254004382091350994101959406590175402086698874583611581937347003423449521223245166665792257252160462357733000925232292157683100179557359793926298007588370474068230320921987459976042606283566005158202572800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2145的阶乘为:2598410779985768749414308088112497609962593695462309156983402282409637990557390152160761182615256016085287515441573694777137878584642489198319827216888927277631580733388975062491178198419650410619533090893221979632840039860991442011231114416946641427358454133984544998910594946841353011417628987479810899387892823182178450581749456421716941642586523026084962613898024297504768832540210010703396857559140794492927703963355830220939263952368015762907583688685937407947794568605260195696826362279501780500443327258385720760148278493634443736761579348705521217563228888467071692368874254149191096924251490791371614570181784025176061949935183787377765946918873338416919337268013237258981050135033049282601582994546694235414552785636203678535004581997590637850587043441103630605392794074710347899856718511150265459400003867117486488654693251234338689481965735094704444758217132088273428601230760391838638412444640928964285876628058613305242754512053883465493806116178486587918286712310461674321052489457486537391482700315722280275108984524700206485072922407588016529769772815290611240652169512710293898101542685030814030564948984970097211042389925201938929409009210893548816782326540695827763440686697899673882579997087292105747145950978483482591498181145941111255019473041689051534439707992665204785521988121755306789267224012184143134484846592216396450219751308598121083975407307036725885526727813834962262014745446143259732736721516897742231265211807747868309142440461329029036649061315482010036559163815580145396723297346683737786715126151704123720267937596606607261611349237337004912450892068443531554253601168082887312548865964273622249595101290836660623144709059460828369891716593448004225971691036771722724252125396571353996054708018170834924164014881522832350080725947893993298614967888078373365799695603865891168287166861503698872759854577367951155013451077955758914982942318346242427209640777542997867364449996255618259825490420530058200559445386527005222186725864638277842049886693656632444802678440818126178072315313488687400173825045456892830811186719371376397976951622019928635347373308798025255855451327640546855145775831563173399903598294457701685433917997793634662039837700660999057059444452334652016529848323196770521708157578138960881961559140268463293659942155481986798881550133252248089215232130581022626663109278098263968438708612878351862042577900318602548789253933764967901261977387773143186035247258593994947215052361901788164094579285721281095639595364869920147043524408041047541738954919187274299235821945457435552119898255682414076618917650964514174692267117018052552563864940389555366201321097606881606403698089719110241701008383896528728098216976689798428354292272008815653920377475674886100240806618196116635296270668862870353989842285329248144243528221464657474214689841374696493501901990314442453051205233594897384107956779782646481904314928978485840834154310049113630527227839415871399491800864237035310607822585916940298771117000074170580541036444457248811996200208021390082495845772696957447187090202457965286654016496741183316460951686130620336855098547571581358223517623060613074811380151485325235131520376015900879712512965060817436688542258364699813143777078893479190890223790871184676733361185164881087900177237931351355331335983498183529199405093970274999072657005337724548478416064172488553442037638709456973012353040128925349367380129292759293329315961750064436698400864774366746563386915205512828989939269163797041903861126320487100807245743114787995331492714168210790938503377790950610038050399118481565310633641480976995538111133113831866589264695673354972003608537302078105026619857076220334923317322585454972607018155574446150296934243351826897269070113797048271184747033128169423927177767913134805413563934178980025936607460792952754891386225312543253726554301147386595709984298109674082973337381761886291622681674023977274969439682910515429255899929869789441895517106352532676375109402181870990101241885975349460200650387420475056505903467896189823597005306909278258394706698129160595817933984204919343755359941906478642173161534722397266529564190877232280493547363880669938089288772208257100781178741174927128320399797220570495791925910681258951551336959371240043417991999891067274361360856548925691290397298831866512029779414977090661866425292752289989888131825731216543526482808357662773847823532069672307124940468080698667724951715817723960456370616311563781489950927817045677809602252165585386396530094465347323697301419922726670572971419289345511443049871371651364636706009586146381820179509413201499265495442603342387100839710547899003949850271393602879113267087808755920483418929337481824784913280342503405037854387598940774249898730522315905298123752345154792245876058957957856093446461071841384501869618919115856979530668994819402841947300464939956813639702027023215882015411766533994376048185578257189062381872413424215057337705707023909445981152975787249256874305816106824915276508030476890781433204568654161057341201884589585415710044098169283059743897852940555910252477864875943288205530177276189311036403462208641950094971351032270245246608166790098243123464609339649757923622411981710284768034817074924934104664002385849541808237620038690363600237387187532517704050617502453432164325400497215077479963369691382464003982533492171165744057642469395330288008769688917396081840411760117257928495335839572665120733758176324147255076449999852370587073495655988965945480354497178586455250652733579516450138453946972603199620325661081346576213489461760076923630355440227056955451371825309899380978417820546820917326845666415037694306726669576184522947338939953860758487599855949420581685473764523841637502729593268440958083530752000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
4353的阶乘为:24081359056709803505534661999855529836637504785001052004714525620560024048022312654077245035704993741607613583929733565166015410687260791708265601504160881562656742198049167901159277777715819390580249648277614286830362450741638274734809223643432264603084967473765931051870565920660257762299496506345875147747520401597209312046311282730938734952388890854562676684281444849778277127054558405449660743112263184198884284976694281711849065173020514189166695603284998557342552210702271315890925757578533088513866591409006069268983090461515842410877242826581573891309862907349431259190749597991855829480286242958057801134115052691406244634682541995166468844835561380955682820636575632135485652688870612088920840302643743398816254671139809063175651781973758174445064599903481485583128778474788162122140042442038287985259965310063777288763980295264765887892646840825631451334563091961095428835328425899109386092639060307725451572024235965704661937199454124853595684821925009227649583515155807967954259467604381886105767455917219851313671384607119255891762384551227683261108675203785264533210673711430289038649423948213098628178014714432679150955112229050317384190735210414067936301065153088602279977199166424154318073185309374110254955755933686322809293745886474689015040928995014108868852170492574543348021574985545383910019414426008212598806712417271307021294279834948017180327345185343699444888633709450706514714128644423195538812356509603038247453779582334168224687287218528792005931067736482020611277587411160495416785154618425775392167302046543361979318790114400780570014363258891999373119769670952498101281583112349823212601912974083901314949145918616257228904179522186193699992456883860121866898485224826423359917030024090409031248077423237953385703805216590823013120517589025038761885796105463871427282158295080654812117794344267189152466453216478522942166889248697705030113612958128679180474934534537766025113563875379923156165824446865382555939488048455616775800847700549687401547225133630129768925933256670551794263202873772036856711945944534559997316608031376379770939928250445557739923196002907692155320855168546051913164501509826457891464584948871852262127029029212733061239273967926649597438529592424935052740613119243845940572946811807536251599234571384173427160849645226104872728808071325782142632720372567246337844790476852633993774145146788757906430087426233666448173523128955718061260726490566737308475950029082058293400405949536859827986422711055685741898227324307229971295666014950422693418754945373671484750257471726351277442068665964793962545749511055469213808822871094030201413517885840050329952978016731102324418657013707222082439533999755126475607344048443660479035312083590212356987837457609876120007521359844779625927935280258950739919889232456375342315976551353654211068131215104330344385533523925216420770202099709532822106798483775455750002089711077223968575990325056434992075973645815416298625329613386750820324142461994864118544854373883525054793913980418591862533133518429197046308430138101346884435230542225216692804663689394218526450442355852809149773927681649122210538749968356737286770527339271988311184245592305591568636212073678323199605794469054452861114025568956943922404627813645925257061208244726699522598477464673666941520425677347451326609056223352690473982703197263948920647469603924126453042534228576046429745016227236054264738513660854044945248993384148251359327815791188430030995518557704745743255584254592023736684511153014085855941914823683232193077725890540667675592705254844861183821262828438924706608773119337502886496282279278722002512039964461198816463206883268520805535839727825609487826510904630256225278432045772336791582186792281277849164745962098739655302221869911413843250310078678576042990382006270482561778536536089954496052411157388052788779805468322582317477005786964880015206717639602320956596819604365086527109107170246922570666512218811148206354981356588501782224758033502618035670436424906859935940396527630614287056669558062653072398633973009300982450948992798905072009400781138555464070106548050829870036445238248610753986869101641886435216955125621364817413608928337340605865912674188943880716421749075631708897641485280767797738555844193819214904026019469649365756431023716577535655711451230377399248286229950536697842377434889125874870249751713939603509599750795957027909770101246834329663108536334301223205566628981562186135377732529568682100885242662600108761277643449632911760340893632757767013635330010203586627724006028291813849439071759991550947920872056399785912734221035226683106095419638461775100558194691623878344811013012311281600809798435687209928916334122867331415546578437960127792432155664923219528440528093473826236317813853205228229572851628502247682784066611923925684768121733539783779797958621349993011544949322169207122533392130106815115729100633958259120955576416861136050355635698927790516117672352921468246953135425215498693557051326429955410126318394265102436258977471137915706729259104314600285670166782611366698579918741130848430690941907052696515762724469338205586898486843989054614200745475168828259057943456787346951769741770973645560282818770098383644107754282215819972758891530281497394712352280721713683578982662074124090589353113864050015245657711555203965427127612460059187934138988513686692201492727063576530797093005636024237404397398902119010829386951733780605239489616570669079536777748879828170103109483960581194485078141002324390438966043627656291581568368078189284753811618584293353958213990942288160843527598972750644598685339220112671640093198871313097660232408529626738382288931332976559673137104719249724808044599684284593741243075280133712666174549421570663681569049101117241926231312505424259647929026789636833894617406357827163766224082116366963656704694053232348912938325076346260138042098586558090398797590509218222503675338456118614948452234317703087888362319896077242717324888804645832484419775713143187583181364535591611273830357093037779416364000522160288603882629349200252724345446352246813519410000865979499651719931260208119155407495438655061399834379736871660456732682025225032474910622750084910254199657586014618754849918753497062248060800794880133303396036230376089856652544588536198614945915090186219986501746075430982646370387803415803085820292926000185514507837126058036375089079354717585572748350987024481606325251396872852332509110570075142368625887713086129443224567293241015950135887257553695431659096238395329397609755919356810261720129989659900082047829540857037038745404184394971966447329900564046119084822153249195974919394795652316188455254057797373943447742728726704528361153845470539219277551684310923785019893065177467713150669818465149982469031417611578656806295287112807463133735670059979622562832215307796748638698448127333129004964292055534362499919640223177749300761930043542482465868531117563379141149191193543121313862535367495939191615424142890423837342592582334780835991706899191279064234851213188111405788944045559304090218241088673736386724445815283246256910091571480644351106268896295630174970419430717944202934884968757921767433274776806486014968195874903899089240166847002669565155446564467994029722932965513392104543670485833873403706994865319504330793756750529550972176373440632781242936529226792834952363089629529228578691650188551822885490103326422288916680665610626954044193771756939785566659324158592041956174222572761297058027845222692835419762980728791771575085920289095836672192644455211057002112609609023028325500090281702400042144289291183303764920137175192626981943116066198031917239733619940276867058634040426177446671017857850510427024689741780832758096553939192486703635527256375670171719576488187878805626890915334895628362727385223789544079992505761693591350736873605391106450898443282460060085637167410614429059701189989731644530822983412855764972817288152132628015364386520783282913171516484231675664423235673051557873829196978787048604621278943153295670390049652284436913938352702569570402502904101177989689382544530236495830309558098660705318940907952912180718048502132298401903740138294999925948697434525003513414869176352864462791179436672382289984988380544844220053412337271855929944883395063784426067368853285975525902378447536047643087118163750847494215595199801387966085012522161971867070405942903465777139190194135734691181769904866054822094995314764883400662058289622945486493641697718794608240539576773930205131179471586783473403362596688028423239501273723093980758527790187916991265716537917385342260557592668651080618057359308932419090233509149446079984624479723772004875206338623876496094494635495336359769986758713907245373156418240463145401573000401885807742907206737128911562028532563993406975811380574411093689274376721677450082043009443974801551885206342174977115011257554147217084171125513937216264549558162279656927150007847126554895731576082568838334173741942218871213097828723257064140182002177664958150870219041463136604542616011303073681501717686757333629337117436512857189332451144160800752334082837584935626081311925015543060201109468316613026678819344944970396076766903092720523927648544484471482671000503279869203105771772237473232080338106771517285476960385720814295212363772131382518356889582590521114726529534249269357886348431604064804424471026842216219479806325398546809426543970127446971310929590474583494643464894457928083147610093739492409480957614305301004860480816250309815134340561273871920088452433789014786857588040108807083224044330487053181386621669763545856007955519702996099808879501083193163939741901277079712109036251842674677587596576774255870878065302885636168537853812800844887639020176958197967999195042642210727926760191090571619323440066617034372492782907143770902815383426621099416170234588015640265141010232291691029970846086308981300849204901548570009550406358312287517082532155388074363268551051194193590046449281323997247345629853730785426671120845687904883020971679735430612340563903653696031785679194645225460193034446490165417687231450565619655654942967012782462789996474365601257490499844648985546097363929133994912302191220048434530698561573276968340299851627888388203097469386277638438189021438500382316942614797091430165949423973783995681724128300279535100057496364501615974767011752403581344661705026987238199858639734931948897547910905442411598839757818093889479366323565091993975906286722836891551554712502284465525512535372867493318817883583315122429033624128348368188325283739672953063442283614946206839633957803247985656698818629565512006341390089696242726102753205872956938863946846052570204276192537188796916450906994883799536560464682832667299270753514489108795412876480175090383409031265459892954901989466042865946941314640332440657931701330805764746918493808154639466786371420334053208902912194167889481981753529836852210694571876101974562268805177454971363238328178068992086432990610140769064191737571016706436788888990500459581905243515575064909156186779673571562662052828582329649856003793213336578981683833640999164331788491319112690036150411719307325768223770683278893800773865609131114509473625871789375230347515456719251589765321931275664648045771785244081151203880236954862143812563956037266601442239643812895561539467568108607171307771230383832283214306636886791115034884563258582168744552381758179794443449899712676953988407237878110134986446586405642486350428933621780061008562495166088483673736047603425863346796159227174442611850299363735071973667277162204511578844990323963380863517215189269883492596174672188791332563685916985022995452363503790829798471096988337242075825842838733527797473793174704915959837648606967594179238960840203745686125304935681887362513715883678058241928653478847248260569757512134859804404845214266916058828653206631794383869023150413847726258821150953561809114219219186488586674857303640810092693555098524050095207745390467066460773294029789167042849918801043460549152340747923331697661886309127493923421483414184262426877452523974261521955774841103406094602892491128928434796724492096175169607821620124916741108370512664406060207228191405044202000811658636743947090826256876289132876454520467319653484940783657232606103414358272369524883036713711904634801179376820283787172266474627660436737290824612003213551095259138666546401272640026927844621118207514815756960782630197343847376401870781418376887469421048605064529713237258074267500299124529392892847236611379194633599790845220374995289826095655399965305245031857878547403758111815433427287616983971894198146916830484338543066394032611924550120672311464751947669994267135245297595053529117834263040737332145776960742291456837773333388911247991923123084602761358926975016899007545811432249126560690125360552342422296748120829494898150926443714741011367192127046729869127158893142396190976552494282272626961381758788289507782256433534906704435032349651062292002332516503360019161049685758387161229603232455000121881395200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
6789的阶乘为:10456723360873339216381924180019119482036825044712832152758790173153709992164474883768863621746399032470314539817707781872545238020096842620598042236228123012483223911960733063635812966646488357607344168528741175866505212510299598041145478976594272606340414871834750610305861375840759502132888146022591865199636260907025293606163543244036250640094619657269719746014849533318921529750135708199243282420157767718149007255800843218932598155763112097441547898644656954415486051559607520775261762312180809449849231482246616011582929676011079663979561443653071882133718681207016983539403069983271730868264690910806218349390868336411675340577677421924144524525374775080687471786588517273872224509230537093441313312218878913753051034889115697434993139780333676126367052921142362927229486215773195586193016584576515076046689226763429949754693747410007419056402308819890155425764353274871594008146899746265028093109307441980803484916322112463483155579885849286962225790893025410444985405816112706530574442287512394824839155092783370064172171638026566132486779929067632323047069861057635311364824811086513177934859756992509026988644386468699219123299152871468466584938258604503159032595014696660470811655162958266529281292418619331242655580939233833243459372664988059797416395264192511209741983851105423237459853887568614843981547588150212202104215592383522446410913536084083559538582033635749385262537850998204864387556616011494495993456644556037203250193252471632595726461205998095579879040630453711199063582705720345266838090011760799512610070498808278264510339156585300149033265120843214855958317896617010455386906133030956468095159152239936264550816783259874936571279251520897955566932301816387528777429737908603401719378230157964235255099937042441051881829022010068645736792457518354445153081857506812151931025980315271345039205273917272748415145283418951340731455524601100881496480590031580620115216631628228660105619159858126401718184902997544602060188879551287836578264371330569773741819844182845147806188796195535020708988632659672241331323119129707867007713565148137686376198251383856745187656733503118329712393073453068851765545122542669855124981511080953936930080390918560716094503205775357157909121365718052197283515223946441801665690217919943751125218986994236706931303640705827745520870469814896475146358339210267531265797280464612317296060284425247390525250355820175811452662633688917734380686091438122448646163972655458142625219448449227055558981483389136148517567647910524443360220668142437272880687844687689919014196552420689261810913439641812936950029178772521480293678097693117042768194523936086753018667991750112315180508771236561276157964388418687056314790338344661786371989882140668968340013337974309420253601562845856982225685701425237569797246617606390552232638638124399339147278576942447666286765190109550475230783779311950019512350345612024567756767329153657491301030034067866625469824829832165718042891649198413068210812258117049444977134320131496461230786155452906698043991280774830720263007193052175879722101056998164048519479943133261415439744535888012784851056474819646306233970664223328732617477017466979409221297940737381884207476358170544602364376050241559548152983750627011320174419969513692286323825144701601846278042524730082289470828120865855702536095482691784743207436374701786178555540366066777430068868088315395060029660220734404860170370576860644807301369438829742111133962187069733149105545811334323383457057047340732116884746706025937280677637022201855788155445056316623528475303050452316692107091880834193004854123728420541311398122339098853950632723498837214830523589021106978251453352944265746732425388418679612217671998967405208677392291223210156241194173704280892931324430292760201889906176761809791676104530190416910446414126254822768838035989566761086976949979075444314079851198968547659834730327208086766985420300389135028239462653027220090587383008961087850397818912802264937784223922607984576977478314220887415081604116336107764442488995523023732493259031598344136291300736702929918319667368532924313233366387155232630456937444269851676055754607662635703919107134303743845110257501804643117162694993232854290466478292836812223604465400082703724303549105095520245452938642446531503956921957491921300216443293541605121191871044266335488958810462345994069212639323611665721460453084969512364968940529389966620651019789647868231059598658056036006825570282602998573433610045812805017589228303001742347457068458199102610830294560203922877238596872058717340544119211253447602609904363868246669680831389818690945610705445272857108864959611227787757728880770192162732701154844775412985818325232908336069848217244048686212005911730875206980656951120939326598139024441364449082968659746221361168998174345456300335608998638691447384756344772874487597816697958422046423718944093460412765550766751064538133702794989835685773650581551911915542878606440875893706248453278840295140088797832468203556294853234378969266427134692648455577711149150819416207624294527435077004539784969060892893434974126336818303462088680736360480025339920371651571217299872753515755402833962133187525544388845363252528170329838876784329582525950903096558341263182306409753723817306521179849511290613291284573307505184547449302653867963144916303068082420050497224549224321233419092903332704088315728844551045371647163938488916859223205620466261116591027650520094379987497200601821111406900036470615053240978968701915677499351753105987166327959510138139772655280330690542164907583780353148176255463449060904144963351892988137623245383196102327531987697199054662388293175943059652677947584915998806037868460922504311989072227175988953136188088638578077538686108519289638259202046570753613428977865119420723857222567453494743619620725120810889701386674241233270569162169856379386277357665855199942960152987790945615967907861067612406826301478917536241032953432337486800892664031477092979792140032984783666219830938177272377109903241255630442296532542658037070277712265489624088101350481351885054863782726333316485298482603503307607049168244068972422607929877411720140661809005129796152921324649449301794904351845798960405342197586676238396280517180838900847192911863698600630969129438785779062343585573264848806541624663678519347536325053002779409813535439282644241046787060763847394042876267777172652650527417749778960446050353858634163901638901964929812038783598852437439133374332341211053012713645358210089161882073445648597562867696931376496068180770035501379726679944145835138620143879169504288951840474779967161641009936629497649105646105366983992342683399100323900776403323042055022950878254225530823278321506191048108408858286159114691692368857050112299794497946751392344688117521881036212737487136217365548395002245149063098587592587147083845521321258523969749373818435720497443991344380841389410333935006034871821759426135649628858260004818929617094493727410746574825080251670291551608962004257513199053561659300684222982829914318407705701729519788932259548006156595841473163320284179773978080815075339621137221568495724645075695423293737875129699953885819308079838977868727782736366555721600954120247804714944544635332440101098786427666095983602325790983366201639551506328096816228461541409246836335144808205831385813005805041846476627846521210116579379746966048243124414230741312895630224390859544833500778400812233109056724441628491854066005560045348229436168452689218908763351634857898881498762058686304429120623027340178722825679558946567125671861669534243177069672085615026735452733541070226372466575980760302426375773679005147478177322455312743638920006582163887372830344381478705324897001885008638733153537370824345337847766834116147403711258712963269939646205091272497010292139939893128744605415850654807644934713539497407415831565292366146688056294357055686501677512753739981997717489768955838886149711341260464382840283434015831022080594232101650398402598659936192740476774034757952288696885935080169396138826983483851335145226560423002091872695278385283160817186899233073205105210788853037892087465241452799323867988968515240115599678635635279646698754117987435304287727020404295552268259264545103734953053941207441988210116208248702336987854972241791483691531672811780228807056671655865708990058376745815483663602276343599471894032463506780767141734183102789525769377731196231802265614905241460555269902650114217693332745554232030541616118926736359887743677133802522101864404907130989286098117238755152616839905280022505033492023175014445668294254638523502689453736588378020306949487569427357543158005453929789425634946965977407053221460846425353402619711374110955560841454760297333072949814074735493417242429933715028051501468052081011628574510935171330840574085680599936104963205793541709102189233459614975636280560604780502671153310811565927456269326552678692119362752739954293018190173587859538410256428601770607396887582099589761563085283989753603326346659931200417867284590076572767734546343729350487892144641336834364308743417895077294204806425963879413651182576719062056882212754162434814541290832563218446051965369453484426117343133895365843518602000260643932206604498519110967672876927607293248986391540412996263219109990584181786368172701078044678583772682116776914458338585089819066337434111383716767897147048040684062291596459134781327137332535615721937277545818244555424031732019992279891531542289301211483081743422004320688503426258375557977295640096849254215217206765478787275478261721748518232170520494838283531541905320310646396234397863018381662507684878914433414506549973634108211125422646068005789798969948190770198896505437915138289845879100899772353343511371572425311451980348083159486341604833295662104981129972819364388806145819391928789103913211837588958467315487586515142447009110612223050632541881123757618577410149319100790368193867847481939967505397827837832704818714876147692282095893510502400041527739282526991683862824217846111446320379534140517015665533213509940336101023595993968022201141603859144697103272606706902890900830049265984039400127926937247440031676008095433427739463537157872940534016530171434940147574317430959990557088978130053122068100467020974064229573675333987674620597209816953396879643877361011909147001357951194660138869243281460406046547668111177418843171792096131421092547414046159244699157679327434836405226398297490476059685906370643523247868282417158934154346240093396170423514002484464988724653579940138829777705291923784020016944538939391438375470004071712376577188884736444037422611637140823979689122389615644941133774120215403220010829335846054931688802690867543479946684983657345867073129085099299756607193139342766733981465528732301970070687435460854247234110829404394156613286570975743143370950163646649544394805548724789724600032164782436454457492739139460527676305542960710426902638393710176398442633986421107421167226426771464159678824234065660472598950637597188684413050612906377655757627222068232641432057381982961237508386016036398476968028885905572925525060219665217651130389253387636106101156744946758510343171738658778418594712516950033284850910637248341703322676427706184313089586873443806677237659494369865836833014060375711220298376128616377726213177759502132210356445739618126333198834458305909721155409159679211250627814014739942827150034210209000541817561213423691644030597816451449240361353245372662657960776869553672350171602659188524256174333870998937610295119183488504395030460157202864388780425163888832623916114741564337075065180103667800375300573499108880235347220852062677485702074848200408138560727036353743971245165981373349261347108439205662347884284091143752891821403204155736699274607586559885916926082712971999410317410838266602737832201888301521919399558396077804818847137344001931528639361925279810752618337565567401644410510485149569754692990971348692401234131228777004878799708220588198130559835609209064870770882287187026278468170979915585005049118139258605870025554310111112907056830253727213130893172897835511648101850916969247315226107283292914726784336161605256801125026200918175606563945382745116326319620495636844434401763759064406762868437150649412879687746383015840028276078238329135970646902194435386254758926178774522897554192153925379394098011371704500209461243273180044267108931729233433791497823866458370421118194030630762284195855042202214278152156540672173442725517183214574382170058895601122466916823799223897880598806443338110424145133463030593913895610343833949740175287687632253706149164061181394216676421800890518515366855368067090215589960626057482675108265524560319026544125557846820879591158241680794268928983119569205994154607999472780664740642835087766834751771180452993651779516015344397340130615850218136040608135863515849648320022110651965407750757300097407490074778826014914849979763981996443346562878369556887979713978794868841855468229735031163968973880240195308830417554349433109976186870212886556520141267056623973648652661791023821745894266747094428789909737391498461825373774491120728437856514414229244360669566018643004947325217898969217010866746958124116498643672936853129300353709062978378251090311603332693329198109207225280037221790034872516643763899338819132497731984289880551508584259134551584700676895570248574491951032779693214184414875714298712624607446223913205028203841209399666708685324930951446996350353516639284933275687265615230501409863227691996270180836405490458308039477997314519241242403476570453360302280744441836229020602994021917245901716122957022629354048696562608101869445964278021026784158796068458796456717696793156939975061764317484109692196577332589362140871596147198481187374426735821920221822760580012918856999982547510203992790779660752506385301172052861084830094777714639920404788872439547981467885153862885131017005775517609857727017068505711750902518083027943696645009521766601280304389612358888367352258836317595790785652408174800373648167497781343558639377765427514996936762250297338400803788350034506984473073627710137912031886578870733656563772128388925505868998865908762108922064913509509653932032818716152342545592471821594645773537970431475555453193788193202837049384278512975506823728438357204925576714907177257860790583833985143026276067667300509352352912977160076412683580503345322518352378578918464177019068619577575455235006515980364434403234606173605247665669745048569658202008691647194781320886978947713916449924770568841430087172346800022632786747980646866221221528467792183556927880235683220989665279963428165401632052628717961215786664983485926846177040182350840102536047536861627170155902681223800365205952948081864706238746614801114772807536378442761177297158976721013178044312617994455323966374046202936116069798177893468855021355850584041912263270445399633654111757921441054340134206181543122544546468436724002017421204583306928366704849167650312686461514453373327279418118527346864901244813149292725226624875353965597927645492161974070259225143459916480429746220404703266608409740065382818558254951595752376774712392625689080255977153843020752970653909963898143381691313918418489200590737280948720194220373477184446701666848681360159630899560727281741617063942776897739923956304435025302715473136481626902822329424552842926741311815342333516344311179513091679733128366381878542578208657164334752880713648597996288124248388049065781890249766441459080050886394773413733951377851738540713063796765524335585712778846453435047338790100408482713407973775572823134468558940617649788094611939012901502365721801059604893515821261267068869289744745750691741929217104519062347124186186986134200521477853952659933154244612951687242467875252412471831005412361720699878419359117189728124699623331926422781930726730095286596986605879404073322327333932323466316092395862951294660025414567141207614749138698047429078352739743060273634308305610915034439038363317093553261055502634389126514506305971048391020036027215975455339643159341750330185942418108631248423676213230889388161503217248037234394808063700227943758501130203691442925498453844727311092886505138469168213965361782276060364666433822621639028778052908077350918123706228075973141580491668507802360277027220206559992650766223532492607205235454813515958267828699594345964611851198177282858883203217035731676247233097439158182011476191852220413123114304477224241806416366811446459504200744892107773726932517883846797063468413618957107191832715219412063000161696021077427138713960765756728934289070338498112348055378884062698630715200667520460256637576448286191984499121693655465539307243797849093099021335297006020914790073512552401599060131392267200701224278538643187297538235167879392650116862375429457917688790566706279978956046155087297979877571265468663674485919456869409587909193391688331178938504907320226395172844827060837193213333068625366433005504586745669942281082501549550570899578848346903988788206511243011164583087971679888780031281486933508597205904228398906851660527117680479768522755489779983535666842788373652373845872290995872237442656200778881408138551013909647202835113644275609176274330342161656844054985461483212377556819758663474101944855039747496980986465784109247626355211365398884678865713280075109526662995578292899208474572956238114213352623625459994078835388138272423326084686405165215735439077051737579821624283454480607340558089395765513220453012125468837190331417507446927436614629389363607356783567434468286948963799158164233815219485883257142135285567042479819898830400628224183576235479814819236205001034654703143142993817795127781490251797750130227594822220316641507927889038392546131541279321891772820388951180784987132795261899058006547262219134598438879472585343389887348077215405780396326457263955019372962108948155067226579762586022748215102339549055501263438441012642707208259695011268880523129296320076754888523975614334997343416289939086762945771781896008540578141382764246111436354282729906253585499413681564210810292568374947839407433031003825579837645453391664312608563383839794825006823053144189908210668354142236067954924069704695038504000973977831620227298630310867542127856024606531078276390223465554128781042189065890747925866662779574928874573481664102046289845643989147705628252511480759743571055552955995378208123083360667053779873657251156661140722938435829832324939910407425388227479678841623507205600754781607658896931546334650953995249839988295211524859381820786836782018181766838378945830017726022690917266371336747212453633089793936369965463581495358666549270850620034718728259305645650382650708245197084206315086269735836631595693618267965931814435949787750513536416844619761047710727664161223913220482031534842302928499974198180762146610693402798569398191705608070085208321692805178061001786057864962551554374419569857297765393086734682816904544543897666060465403545645448275795399882001220664203428898726748195477716725435826480491049479956056237717702239709153912968352233891569306391654856004430178074798846066081412805708941070051370477183551048240226572425370014425936131272393515540663322495992523169210707625117816341434397235920382143681308661937379121970707344966850330419943338852837738665588632348391392375539366748176807265982651661471904901403339981028494843264514594469146546282819572051407960502289780427920924496471420597298354597669487816000396352060152374020604554286335992027053426663426964184889056893552835566429286894938548926761204139896081907672278863494602615549410842768650088120832576018876782409388187119935042024565964935313891050061527715433519956852821281277543391980118789886568802802638320558967986140469777643584402987722479017656875225332300660310281252496092610698442745888488869907462715451202254643303865828081955019542850142246815839198760683889011964446558076921748430488654558200348388244837449403591752208191433757363708865730468186309741413790247278541058189497993977516931986072836307445606890373878637116505146124559752477035676745711687961310371829998968102245382423519816134302599907708530003444699411567687080809303957247898546948441796521999846111709905210604025735582275495284390650884530866303831376958451489435096417905304378340518317342433691258992561071903446415701981895046438348065577058240451304841284312441191911200422905415606566907826390996978213000435772257879877870776765549773017095559122672665490133937595194881728361938004538587385124160015759833303952365719114336842992502682430887002856742646032624428792661903094066452554732093556193931902365694873885526324129857523121634584791613326995088993888497076965143995897141170832376103403208119479124150999180852613218089763376029627606884515729069975700350874444360376198382904250232368256195256272380921904944611327015280762064659256312904023677217332917356061157850353992766250005564437170715117525849178160695780652397123578637400036342294327092384396186499423944461191508570163027547572589665858946522259129764705155807559383314869869363989613171953703443767820368652296303775949771057610828108446943304129296014587188765242414424792689569374693851034300669466971319385376802122894338101280360950258486682741261651544387338155463959398178921707113252071845838878814767252801629280877161372906848112787818289247446686187842993682432504804002903597196778902142191328342456888683038643046345116603543523662295252418833506206269014027189213581767158086048886693529460721328683116823796374738013560364205744980978516799931919961996773445640053572368722536393550878383618175158181548121401765801153854963770639426553318695598859820308889600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
7999的阶乘为:64802263256010961747572747467846587320638756649210522133404514432442868441457577344458044309533481026965207839722928002614252944320450949582661888684129491813546006166816131722597160530527928868583563025943220203731087173828785013505700597297599177481671671655212769609788450643314873312068436605388516231334623555392422862569210063241711540421269722201494272674472490974616030997771305532113288303719945757691052717349291169917433522837733341860975770942674845130721861780390913442734471345903412248328637644474237674197269670279064541845232563260136440210657320978905707061077960810588739519989800051290404542842382721519385907768903481612250366120770792222684261391803302328421022567445220041496110852118490179578888711957708280710529418426184049920969490000745675278697026100432149907008565193944207663894440612249344843450404432688813227315405881884868562027777930339442979760243890222916267488438712473861089652860434424582264784112540262201255313686951409576880919705198026239235398545832453542937638447036856856923401808688106014093449554861046180809377391763876437667899115601196366041092951834883522146605516717769236973025633305669921647420546715562953646501976458979093047053474994182031740781851989792090104897577959019065574879099859566500081425595386300363105797127736176131860009384291254489468251697743924709904283078290714583276044857984732169359435639296122337927806600225593239047559179242280719847232172465120354542899466858787866720298740995596560913312415053186506657235538014365450076445133132418577741500023880614155899625264074764606162884128437231417026102653512307227596427266034957954535239967085356689501718805484112471711641875551436731385485673489933230926129926715357226991543809047731992514153073752096437865886170005280815606386832983314966512568067248059263303954047874545175733515436385991426194619147502933402461208373207380438456079874148194379048934574123700477247599648384915843191249071047333808300319174008198715613473288497054035365438578760076508299920549260920367582135607717700529825382250022159217165617381155303383675154222654928383111838900892352124074165578302761625020738420788066466743422463734469802491218308594970418446825732842027382839895350366847006415614389040584381400987440317981826684087620798210199685477905036340525427968250097201112665981939712995974365844949914773552476951120463134159834201668437980784544771582710648300006778440160761993054684328603601927094118349673422225499141538497217984317110800649588389553540626251048759514760627938731987678209735151923773885621102857222470601307654100151903156306743171381485950622950401324918423801946516843608999547642052522647990988564886367970733512043757853653087881192479223041686014247652754823795653121329539826915333645087814768184182188913549663310597065947628930051033717956684378861497479479946461109946030787471421952017713281801588716816945212331891573945284067945341716004640703813815292311952530894133175834205146488905878138949890891489909764987743275275362552575730212562767170455425066306178529032776018481898555371613815740868534709054391095345778327975411084376993821086747541309112156406989094069385843462384292089553681693127339404662208971302903483788526925855246063740396046686166783903588396707971325627512610954393922050319803160403959465552559666725564887614148146979163882021545364463320021633589440705169654380481572024143687037886475297809226152362258412745512530004029584092501252338627964845812415681465819221147732199862113528326257347702134292986899193742252835562764490839694775381423230058193933522751217025782903153760115049426979620517391759671872067557376774323396675135750964323581035241974622390982247312522060979707942669713038339870338699540482791053048618606994074144515175974615525542929224119896904281637377457891240544399672695015663405742234498266462752365343534464259351390704677959312448762136221396001452029645551656657648566595280827044736959638479417831434965285798862997466736184109600256554182090881766161135222210900460525799606032841171036051353651617341382394860493100349552793987411731850652518881518781925474115620779488122090135607702677166396810062423524840583154128356743942087989572822864968845976258936441030216345388332185401948908344692255628572054651969076717030108925964569248391836001284041659829431222675477615764703111238025074423507269355105987505182056178502519979662102200213625481976002999002050282372171372942188305824727574562349265907503098564608405283496229516692122755309775121881287567823353989454517941942490392000457579938229377063500348995009518731781921863103726187280921279262212699994933862474870925781031224182808558804978974664697170077206465066963043403812662245022774146906649161418316360550634792453407954760427788827641114169294745662629077548108907635286195734832567905085076512311084687082797434062433002962474298888861534958898487088795887129699799931005131297591210284959075306720456711024110952481645921252423334099853283314510687274326375760457303940285943245115300826098535064404284819500103524991717971525649077697611607176327509920599324087930669790724515565269010547391218115606278289109491644623380074283799098674515445326055654339355123680850155901534858350062928891911413663469893234578313491079428795525028176373568381511975719341209080637091918198801938347689748987650258944812586476750144381510779605034378327164361322422391524788546357918200749602657506589313312862136622638872018262284447073278275435436945618915204596107575543796775408110184485580919933599542079596620205990691066498966471041517375923088729239882140256919600174764214407567457063277811944717038745871692285450199360707268535775712975449892447872946090785794016665995839187649423092256466814239441035498215125270099250981772659076563925888202121277479518360265080836418671064230071213702696541592494685840814562908273061892949288635665536101233764123041821172769482197052449016100165729210344310320181513705045452952564541896358251856708824865877238200421976513354445124347214024950396754788113203498845024383731627234889253439853961366363442251267795390169946399586813372308764020539773658097512703639971073066128137529334269555032487723021253435785815638650767766784507595089428599179698364331015691447354001784328986790006380258423006999293841224136993517424242744251071425699984271348740597361898881070259985239493239563810826458403734341425186079455208128802298409104787169018672236524326398398284859747347409901375966719138937564153783496008534939835668697893575722394695291134116230115644320663730783822233413670521627311040678074891035057225786362007402678073184872256485017038381993524631621729897466212919000570698289568384256448760348999828809042045534471604420963075929331944486880123432813066809855769609609036484930376891952666108510055914913973649741318146153257040022451055868041758860599881067662122318963940146457762151122003564419448441320583511944730510155977297480890565262528408089721673463726611630902091770217222405601083974857896200450587758463540903233151073856529753418351779421384294195372404558732651999067054047735440975609856569613114483436541843759701950411751171455718546577410000033977478650933306935198350447025683667620759637684342848869839236183563087375171905256355067033240043006150254089118279123828619664305482572964855466474545926375545388145877701091401120018448681396973695302351007342797096816733710137447949457946270313778148175236524694331367569129232848121742601635367941123739530719954610575449115367772386229339730702933678453871265033036453333187944483750278756587612727653316075565227580155221873551617839866703779568174106859061203003171763497240537812044932132208289112585513205843772850429524106855579738683165037554005846107097495484499794510802653560340081681410860384433985075168048969689877166790826769880420445254676846134745248868155733893043863504260831420900288707267164982942542415111774521124005305405934960717451358909222458796841911046023870207462835444184280460590689605092771339193315933168896204161434729725304763739151469599365925504722510023150475075196425534217150112241145536752720100932532638302590199987614924003155497028266291614840506553837988577272417493335965102124178273722865162862899905474790050736532036924743575519357966381701507836846508651307609451160283753867344653375809241186312762890790707574517972728020094126380392589393265569795115511214384123025597472729399723509039733999949157361443432593513965914290560225888893849599270884178226796622583852983401405598872138415928151698659425896729925084013297588938463604031209040153475120490519655824669816949114136004558232601933341349428327018142247120294945027616473161896538624829539557965209623221499069762926008106388071934929428776418245374200161648456930169097781612823815990815303073990525694229322244445062057996269750688729400741746810306512717592590313123255029206021042157478410585686606399605803504608117440244541815111010885019756939463920542176546526060203784614551527704912378212593469030066462066583335777340703543802403326526781239014034004789433654398114877966927671831434714237461237821847310496487765366626525556683682742533970150688907081688609476820565615049088565829904096750688888782577193471106177675719805842268078136756527530442007230980224189043837728242989843479408704287160618766988898364946350442287059797297296928512904178298538837914689887655109974818091975972673508281153862174212822510760811498983092537717146595220589339207843268670490802871630572206672271959511360766445064435517154700757756984805201630538534890144372946175519264359110140466758053298484512850621658061501304818744559632487777343964943199961659358164731182334902135097384941623211643981832097117992906507676049247493789086455419029957858099453429260659893923929818330244564415723869007404063341165159279312705570890978541360725782144753205187525856236248970463773801436078480765428916544769679833779012832660028226864227469858020584170954943126752835498069618285653486107002085427827314637746791023837691837506140774851766146230896881063963084103664457676740285128744234742869851581604551782111712342701518439756721758307676213347648628938474342825716258652026157265135587674336074028790436962172417909003195935537141370465993784149320062124572698198128684437820862602938460555948004416622648385455219217475059485954698359702843261708621935171888335643297461493077647543061363990913415923039476592266634881382258688553873301774250604746753458555397203441441196762660850068474616557457002986551718033512996005509113944284899130070493865166364199345588378197401532448245168026128064820237526322045980796743698080347577460578262778774075537825812962535432426130941866007790137363177638152208326646357843314576245365008744214108379212987122733203847227662581214864987711415003413734943478756324617965684889464110643679954753838342383443341473882771538369625595976567507679934060864814814606411703147664456330230988728031014349376470492601931808929616897399995444713961934384338745120133561365588068844444307133727017415831562029212676998357156988352975194710922213793914630850697705892080769043598335200641075944840833090813571354937601731832069820311691444278302142510034308794745860319601087045110052075022852455113551331245452778280543500428719531677097594514912210823575426317365113093264295951664939673296066569105742271736885333994586231860307620459213520363538998882078742727379952690258345282504858241352581878593457749690408141427680502358841388352526850135525010876982297695833493638002294276887620545045154764970090974251012798089784802422993441263849988675175523398940399500899657037354527399104774080461791076773909398346399908063381935499403718998921211873941377877048659128187519200377655261162321252538800723044754902419275238280169047132694429949423871727008517840611561166716343507129631248876507163267992616115311337234299362187878905033969789375756056519756874286414777110694002164825902213588327240836822544575673098704288582662722352501979236567952695210871532259753251558797445376442204349412135256337450419961115771606817978363120678641504855910993329129443160854272904747999136134823981172599805160359415590375188941506478558705204313444610479863982856012452685092305980094031472103147398593358504179324728205846346496613046012734327846254282538215100526916742964251854973340693240797449764817414055351040199502248052570522799270000719493246341767614579853512445011694659869367169025659953481734361356582692442000618734458153800366017211213253617033082637507959083753008270243726624863834560107280438900961942233494170185518828695074074344458472546301864416904667138162262665275728126369994435245960314617774724452447627781123240504779051408821119689841926586522549508272457729078301449819435373004050367342676567922903726396331686996390731626795012803178174146404839758525522954290773546477575449400937559837205642714401359047567800357853195665375153684196378422406726842692009990565326873222569045261034008302391037725667092082560381686281723585570612265636884733111699529192221308849786398686302050234449503930038721055290444915263421472807257568196521911437074047730143355910816030196078923789790730089305237338792518897034095806944985878770479272474236932950649784040941323758110843256489102860978686835617874412469595195173291746513926862174624710887043527267158699719156152759269125693114631057322116904312118094356748396135453626860301287190487925342426431030682083160387521153061100661090657382387088558033663819457153572926624331522341138402408908330930391773709576480333526108875737609308712741378622130784821531370638274989122376845885174900780255997849711233949004887948440822590859817836653048037835434460689599536845902355771224368470189005786066468336627332581665025909219611923192944257988740098108307490789681159934061564446525265743855613032378338152543029546929299212419989234685313829765320902576529289713676809477840735066144272408885643619766328017125976867194886763409588565095146974834661069207944794473867746265386125014623582698612511171249528931702851344191188847444710595001743661725538180225291805122044736449519351492056932386669920428824689026846264840420219082963142483359684355159000640754858458264160875314528342890152003609189797253683469495461883763692751190550687486885611066161034305232389329288491173607319063575695926518497314611565675425926199028443343609643023058090623689943700624749028893896591230376901276460629827787878330070295814511634895516487026975015979501188988531150496191563307546449112498524402633657133536351425932113328695654350250166757448950119170187554798317268114018528063813395895024628609824339062216511808942009584589715990233863100858662281755993965419290053593277030574939183062472904720129902874177734300191886947724832121034459629997171702453367387591779675782642600858260865558596508929727114789634955563959569225639851484015227805759803765309043064548504004119713437922868885627671864495602415557055817174398728713895881697838195253802114579656837834970355567700765246779796779379109650829876888262834200466676514561784810550328237159159588879096017825795120702052184763196744976209188035232162112543561834250023082047474634804939674981202346069908926256970527383436480707303708802009881466657117795737178200177875473042476014783743716288135550524092381740452904824141744965061134458941946763537975238041930909770032365405560108771184808954699748330988834185569251580193123759986343582207830990180271279973859467788582518590176534895137199284194750943328965406717757980128906674348447733497055336982735742985477877875310985671053829780965322303322697373899183197213993076092696420602363624865956829118314595810235031354094168527092478869024108277890849235885628967279103636657271889533954612506638287459242931308081774902051098040169025002109735276357388870607301860023826854198978957644749732908902387444404787224887539101427712935864879977003900852251420942844422650862030998539894984042710741121953063369054284431825111195006010193634116630918185865628365271535411548553239314976832538517472467744368484855868608931304355356527143290449342063901691814628449383248578877371615850678477961792035295887204882835967700543680327385252825334295546143253262593155564513075505417065092026190609452801195805631040812724624959909995776193314160493065851159593068820956671695753436319218341647533339017981565462275398828420207192812962140254766957019318420604711892641880625339332205809885690584236438713192181846538576848190125509227784349360430560493503701824548125361100816753521572281894093288771513201834981877361843664241408967209325962047235267009323431996553926586494919211352013580997945630713238375848198137387024261204913644287744028401439119729866049398147199011981105190862833048585894697144278377238266639528877546233654798919462622411021425610928510681948773526058034483369121167616266139247552714039107172422962615241174982236494154319724422324576605104111016202527185035971025398471418747268910495719089283588519805175849158284488515806696942907229540236204178015867037543792521907016403899845652339424107767067166163996595062779793101254198726093089960277270287498424951238644238418469192901312099661808837698806525821323429867777010413267677744785681218954262366156227849007303513722604556310457811572954072918990287655214259215546644277487056424564380689986788688366226414033474757560947975882334179931964902481895960996064147583384999394473734540075461587341984081603051251847221746443757823470637158409832836647545809540419819484690913129382604287624543064784306861756841870831448098124717742940514809055351091467879541977889875144348430172751503828251463004464111358852412693130314866146890012946354924572815744387652024188821286798422043613315135189153996237087015932808005125103553777751987388771873461380033140029819304906704625577309037218283376605574116905476204462489688760382673282825038506945175016958324465478185082847623631862737898772229014979812139962734531517198124997675448825926452862719354948074005410121320290807449909877265988442249481226549351942519394389838776866107822777199934575166521714816073457080629097791327394665849194166717503195991768130794621549911813075930390712785420520379609823529928984969652153446896097651999827147326037850030331028581430032148701526194573026880027468570722278874894243044887924545486640416337841573642354188052009536739656275793101468017949572925487958059616731162895330869717612631328958879018798984570132502583395700750103629852416233475168265932565725187392805700900151257728353587587778049372409978197925135015773611561760297725913243066532674851600023630637457257690209664855183493845868372994254006807723922677145821760327224388035861425129730926794598251078951827283655060563540505919628586223370377672221939018384938134933129884911338686901068545179945014956416398543820405472889563200630593336004174447841591249364775651039301723957298649658934795890302860047168945836871190737693923330537094479826739646967334738901391399720936243803608406487377004380559230629968412893640149902515842776652253088624055504789717268867346606983243959680299503567522040275444935726924136038107123255283178241565845097434510215738277531009902331030756386489811391449333663227504967121484653558506621288827507073278248755374842863009470624736110955168403031198206749244931804926156483077502385300488857240620385416952735388840639014621133221569070415633977881966852487574819531813318979881245589440844611548067106333375237567107941771594147742137531757940197441261653011574170878485296990822484708635866314305740135484018877442954437706898576100462469957595299502474066788242442304414714359065994111204348821103836463299463722371102267798904047766940727191090211586312512080547094133865870700719637295240541430796437982036356765289416762445643980367450895869890737056927748949578917351799810733318916972316141889764608406538294404783319666363602809438833787643692875866710764598450028984883475346740110080694373041772463932457016843664632670049223185146080478262184846320504948086996891325272646927506016049592642680207792970723085051568460232984744721594865858979976877571261087463472708333930335018476785614300311486147897642501088076785910284453312468773329373287236857718532477191924261003595369420113204670162992941519056677038837840147483852396304981456114347923462018526912714699372739368639219790080615232037648967985309552872987700760515847260427480609498591635431898833668912052697918934479819037642477200897437963481427407269580556163122517082947472431010518747888406907496346449850877453225209415998347078783964580896778865854370235167095668968818585944389635201388302387940528135206964186445345913150697293861435660352653937944800150830678342894156989514816884862209002907721270902599456673942156446595147371252958333352698212728115969538492811851494196619470562154987362463713142722094297339716504018884134472175911934362115571523880222187178031069779996508670775612088507550274137952302367908041434303744364401464113470247203429749173619085571520098463644529025103411998045618466940461239759840982756578916120515472868290452975064101366281029014611522941888778046233246415591245722417130273346419013423917626424784704977420036245809878603265453286086589631119132584893446990555903032509585246238556222180299458867582844195311091269221900160901030571751267585647211379852969134586801137979247058370811158837603024781032054658592218503940365609175051955873666782817560853712308311032470940014194362809386464417008981328858785295150215635346965805341388054700874536562678482510444236060810829199779748579206718237686931735867004475899490863665861641615053322493087265890648723442690277561240079941945705804165728283024544714663143849695210809473768759176242651711005325404204851801571212463061029266036594550709019552288631754732650049834331924794308086387268044584528716846580742598533828873577798170000577341276800501302068114671377187357470930282091623614000556736578853884233892014195658157794438990793030953388827604156197750362192981105989057598870274676197793258651810758886447235774782549297214697914043292607957196469794237298630550343794454938174543103907093638604391801503665618912614167660578612215846533329777843054866445699661947034972388185257089805312365564200748147111934625433646246971122149656057041117958393635384215862130338611755501237761944538734735781609772321787541039727441561126154726597361686457791663564625267473872292992990046023374298167667121005020300584245632144418045328252650640756025758181526901928987782747285957787618120950251402057489750746065825538899295302417515615177305200448525249385833540134413691795724858453800512846944459179979821817315851111010650084938204733396401239505938223861059488513698181958488575605257913066893920856524127046240381499140559735811796540020879075321108722695232369916681825211463863546212388245479232545718642187495413618331151766581834805894896821463166981012152065816461002552912566465826346424368427223928670550539281611021195041463124260902781061554696713878561877743126121208475682424398156680948443167517420286053286710126812437836324553564139454483519909189770711801880246852809906397683165360370897534715942329084859460646109887262100264715175927215061981497168804826145781410290484347790554288068752838349029639058248606061394049170406901621099871512751350629234550732439315667372582625177014803000819496598647093360035217663830939921762722602487958258069097150640152435289984343642380013553995688986888257335095840863177705886988329770797787663084607841511408101167517713945934679479421557788899409477265496462393209112470205366152183956909020205639104731379774932098769688733342963751482249107540267161511303739282449088675933037297723622520321603900927814363394944643999203132040665820463240842322517642931925638083109533658738251853606838195981436046632453657842769421670182978365913473995493901072352574374026104150595946068692921883346091888092326978760566568904826917824312409522047338401571398536224121378308834534021854155370250197672962562093649513457251083674273336252896628697218318100687698643649921995164349432753120774038580179694039518169133188353713486956709048302927098580884962072212723773415501888648796431107252736986607873809575549133892387727967879407727862931714190900559157237227567653356189372289850622903983817511547612581924574832100157716055695359985227663638792008576657536885539492832590581759884634013678648271075314112040470008371354541842013838006946718343979567169243372509411004458112855474987456953394485558736147662110319074494259063328235985472865823885278467824782768195746798667058786659577249649946512782657891653413263160170109979549680859935537325575371170628735722599315669999832278599832602755943436235453627579182314297636776565989325830612191101593725907478928399390835832889553179633848696410038216736095995066521283390678834416678978299642196960659781040785688761211495828229192271581359229334824972040997282201304820956722698770862268613080258171189377458526121198895457222040090486154480386937849075135212687911737888125454399969256567659492613159260136599303518478666461682190906887800332197254244569342311384338891344861652842855320121547955630110491749017490095153846192560589811467016275732075291928506769812923182023262956498664286133827410496845544992095668833552461752373456051159477539851887197586344536630711025765943933234723698339757112316675256597509141271695275638583566286971894096690603698855456956842876126334151205372389506739967859455244490930018399998013479059919540925593405343297206311337426267527894726670289456409989736078178526133099458521912146086322046981536293636539845042944202786707536692605485574614923450471913998324988758215639713978075852466220642785031163418206519121800639205280088443232730033128891100381881026494640001717568094446587247559896511835254775036431153931041105261608398176247311072448181173256899671486696071785742395999662274229817948472754807406287657641441544441635503341568000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

Process finished with exit code 0



07-10 1457
03-23 1171
04-28 2333
06-01 1873
04-22 1419
06-27 2061
11-24 1253
08-24 1050