Debug: a = 950530137216618089651057517232763402347139152413800715778750464006648466967210472871751372112279520370066267355467799894797087467525578677916197031311317445274879348412081967801669314993164159266959045967526196888936611215318230780973145616062556618990800896874518461117735843698276514146879045543115103810182781857902951563218565093684417375670971467496108778301332366063862831804267104612887839549498154826238785165041337715828900120203687631912041710376973135682365658519422530204395005387302847871749952167733828178193333819942520013634505111936578472350804195722630461281590821439009681529141103991024226096816052810749519201457072599905778882171388184800041341594102820200632936131538897775724336852780683543008734121908648755823075517751834408964322191207716283383699100593557364472067678561076266540766128473709003626214461434263943694192773330312794641846725072278556195808644477837823448707913339532578399243827853712796200029073401134814684666729080175451849643793219104720164367291967446, b = 552429258598015419331833305381838992694783594795261307418610551273305111404503934322703973108203004990431562074508501107226870338852229555868544702219541656570935536388898714959978646691250793365592915900075049885412552202551876202623428237458742968715244914230231047798110255951129213629878976270562023930336710830469008120458990144112681711567812529021143772378146942067733011552280377854962037746433515351324398788928918938675769456710519374320049311776007783659421115635118158141445946447588154405288762748564191937927612288664951055663330721444933462085920490838147259743270158290159004960783803624708073198254104234403176417595676413568418951655513789000096803367346329838980232802793898975197655815163545351041909808256206958191069646078418995860701391453536025853032826226196958388621841028176151355190812512010338479272309223444586587396018719685426618958700399799550134574019794389357312517702189309771183391735784635361151837701696703162909015246123076527153950227627970222692935154941517 525100658977646195130452101103517776341760862359557522774499793155948473104400966820059019784965743929017850717328718128993554567132349547664337775806508889918573042501788341718568389638161110245160537318498922339288661755049578874622070816437889858443902471666134316685237308712815766294720535383887814115889756743586849336299771148987190979057057569645408585919197483362149701801618254277470600336164280111098858716880338599552443877026024177172579923123122636029900879380487082373117114561525940012224859067773980555784559132915768430023641628666934647485584738298870283937007802794825143280247569502773731819227837794450219344618979480545740525885312019773178996503923133422919702454478737070560239790785689297287656048343573573193743497350798829135293938610868980225356645152284114590059240486019659299673871025692056343188814567630686268792462407440140808165375898376288337757787572251796155516661560257801663235262901882233329848824225351963624219117608738204789644961642602269223672235985053480630857165039969885945046993224832261835024205111828520090239232930891662284958398274124607280389732942832048951437087380143407525467339695130362122297384888494073897900545732337720525460262859018230794239424873173723063426650508778837961985231713785237557971160611053120069263131843603861228943114997868795972099536461033137156981736948707937091606976748713411392742620592854704328919392109972486697003266740085171805203111438044831357299558495470906064612412481529119913945035806601065357943867285705313224525229801225290906385230686919780119903482948690014388193502424881193756289990777258393824870499562419575039898764705429438485947722785340545563200929401565287279903101797326063332124915838300815207209996522426212013468642994094963512987532070993346625384915371609219603811919723695272689545105853662132142944991843185196659688459671272425066652991132010634226895936777653510952478399335499700730196502244864066860919581080439498997417035320822095416011216753406072454980031756627997855582