utils.adoc 428 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788
  1. :github-icon: pass:[<svg class="icon"><use href="#github-icon"/></svg>]
  2. :AccessControl: pass:normal[xref:access.adoc#AccessControl[`AccessControl`]]
  3. :xref-AccessControl: xref:access.adoc#AccessControl
  4. :AccessControl-onlyRole: pass:normal[xref:access.adoc#AccessControl-onlyRole-bytes32-[`AccessControl.onlyRole`]]
  5. :xref-AccessControl-onlyRole-bytes32-: xref:access.adoc#AccessControl-onlyRole-bytes32-
  6. :AccessControl-DEFAULT_ADMIN_ROLE: pass:normal[xref:access.adoc#AccessControl-DEFAULT_ADMIN_ROLE-bytes32[`AccessControl.DEFAULT_ADMIN_ROLE`]]
  7. :xref-AccessControl-DEFAULT_ADMIN_ROLE-bytes32: xref:access.adoc#AccessControl-DEFAULT_ADMIN_ROLE-bytes32
  8. :AccessControl-supportsInterface: pass:normal[xref:access.adoc#AccessControl-supportsInterface-bytes4-[`AccessControl.supportsInterface`]]
  9. :xref-AccessControl-supportsInterface-bytes4-: xref:access.adoc#AccessControl-supportsInterface-bytes4-
  10. :AccessControl-hasRole: pass:normal[xref:access.adoc#AccessControl-hasRole-bytes32-address-[`AccessControl.hasRole`]]
  11. :xref-AccessControl-hasRole-bytes32-address-: xref:access.adoc#AccessControl-hasRole-bytes32-address-
  12. :AccessControl-_checkRole: pass:normal[xref:access.adoc#AccessControl-_checkRole-bytes32-[`AccessControl._checkRole`]]
  13. :xref-AccessControl-_checkRole-bytes32-: xref:access.adoc#AccessControl-_checkRole-bytes32-
  14. :AccessControl-_checkRole: pass:normal[xref:access.adoc#AccessControl-_checkRole-bytes32-address-[`AccessControl._checkRole`]]
  15. :xref-AccessControl-_checkRole-bytes32-address-: xref:access.adoc#AccessControl-_checkRole-bytes32-address-
  16. :AccessControl-getRoleAdmin: pass:normal[xref:access.adoc#AccessControl-getRoleAdmin-bytes32-[`AccessControl.getRoleAdmin`]]
  17. :xref-AccessControl-getRoleAdmin-bytes32-: xref:access.adoc#AccessControl-getRoleAdmin-bytes32-
  18. :AccessControl-grantRole: pass:normal[xref:access.adoc#AccessControl-grantRole-bytes32-address-[`AccessControl.grantRole`]]
  19. :xref-AccessControl-grantRole-bytes32-address-: xref:access.adoc#AccessControl-grantRole-bytes32-address-
  20. :AccessControl-revokeRole: pass:normal[xref:access.adoc#AccessControl-revokeRole-bytes32-address-[`AccessControl.revokeRole`]]
  21. :xref-AccessControl-revokeRole-bytes32-address-: xref:access.adoc#AccessControl-revokeRole-bytes32-address-
  22. :AccessControl-renounceRole: pass:normal[xref:access.adoc#AccessControl-renounceRole-bytes32-address-[`AccessControl.renounceRole`]]
  23. :xref-AccessControl-renounceRole-bytes32-address-: xref:access.adoc#AccessControl-renounceRole-bytes32-address-
  24. :AccessControl-_setupRole: pass:normal[xref:access.adoc#AccessControl-_setupRole-bytes32-address-[`AccessControl._setupRole`]]
  25. :xref-AccessControl-_setupRole-bytes32-address-: xref:access.adoc#AccessControl-_setupRole-bytes32-address-
  26. :AccessControl-_setRoleAdmin: pass:normal[xref:access.adoc#AccessControl-_setRoleAdmin-bytes32-bytes32-[`AccessControl._setRoleAdmin`]]
  27. :xref-AccessControl-_setRoleAdmin-bytes32-bytes32-: xref:access.adoc#AccessControl-_setRoleAdmin-bytes32-bytes32-
  28. :AccessControl-_grantRole: pass:normal[xref:access.adoc#AccessControl-_grantRole-bytes32-address-[`AccessControl._grantRole`]]
  29. :xref-AccessControl-_grantRole-bytes32-address-: xref:access.adoc#AccessControl-_grantRole-bytes32-address-
  30. :AccessControl-_revokeRole: pass:normal[xref:access.adoc#AccessControl-_revokeRole-bytes32-address-[`AccessControl._revokeRole`]]
  31. :xref-AccessControl-_revokeRole-bytes32-address-: xref:access.adoc#AccessControl-_revokeRole-bytes32-address-
  32. :AccessControl-RoleData: pass:normal[xref:access.adoc#AccessControl-RoleData[`AccessControl.RoleData`]]
  33. :xref-AccessControl-RoleData: xref:access.adoc#AccessControl-RoleData
  34. :AccessControlCrossChain: pass:normal[xref:access.adoc#AccessControlCrossChain[`AccessControlCrossChain`]]
  35. :xref-AccessControlCrossChain: xref:access.adoc#AccessControlCrossChain
  36. :AccessControlCrossChain-CROSSCHAIN_ALIAS: pass:normal[xref:access.adoc#AccessControlCrossChain-CROSSCHAIN_ALIAS-bytes32[`AccessControlCrossChain.CROSSCHAIN_ALIAS`]]
  37. :xref-AccessControlCrossChain-CROSSCHAIN_ALIAS-bytes32: xref:access.adoc#AccessControlCrossChain-CROSSCHAIN_ALIAS-bytes32
  38. :AccessControlCrossChain-_checkRole: pass:normal[xref:access.adoc#AccessControlCrossChain-_checkRole-bytes32-[`AccessControlCrossChain._checkRole`]]
  39. :xref-AccessControlCrossChain-_checkRole-bytes32-: xref:access.adoc#AccessControlCrossChain-_checkRole-bytes32-
  40. :AccessControlCrossChain-_crossChainRoleAlias: pass:normal[xref:access.adoc#AccessControlCrossChain-_crossChainRoleAlias-bytes32-[`AccessControlCrossChain._crossChainRoleAlias`]]
  41. :xref-AccessControlCrossChain-_crossChainRoleAlias-bytes32-: xref:access.adoc#AccessControlCrossChain-_crossChainRoleAlias-bytes32-
  42. :AccessControlEnumerable: pass:normal[xref:access.adoc#AccessControlEnumerable[`AccessControlEnumerable`]]
  43. :xref-AccessControlEnumerable: xref:access.adoc#AccessControlEnumerable
  44. :AccessControlEnumerable-supportsInterface: pass:normal[xref:access.adoc#AccessControlEnumerable-supportsInterface-bytes4-[`AccessControlEnumerable.supportsInterface`]]
  45. :xref-AccessControlEnumerable-supportsInterface-bytes4-: xref:access.adoc#AccessControlEnumerable-supportsInterface-bytes4-
  46. :AccessControlEnumerable-getRoleMember: pass:normal[xref:access.adoc#AccessControlEnumerable-getRoleMember-bytes32-uint256-[`AccessControlEnumerable.getRoleMember`]]
  47. :xref-AccessControlEnumerable-getRoleMember-bytes32-uint256-: xref:access.adoc#AccessControlEnumerable-getRoleMember-bytes32-uint256-
  48. :AccessControlEnumerable-getRoleMemberCount: pass:normal[xref:access.adoc#AccessControlEnumerable-getRoleMemberCount-bytes32-[`AccessControlEnumerable.getRoleMemberCount`]]
  49. :xref-AccessControlEnumerable-getRoleMemberCount-bytes32-: xref:access.adoc#AccessControlEnumerable-getRoleMemberCount-bytes32-
  50. :AccessControlEnumerable-_grantRole: pass:normal[xref:access.adoc#AccessControlEnumerable-_grantRole-bytes32-address-[`AccessControlEnumerable._grantRole`]]
  51. :xref-AccessControlEnumerable-_grantRole-bytes32-address-: xref:access.adoc#AccessControlEnumerable-_grantRole-bytes32-address-
  52. :AccessControlEnumerable-_revokeRole: pass:normal[xref:access.adoc#AccessControlEnumerable-_revokeRole-bytes32-address-[`AccessControlEnumerable._revokeRole`]]
  53. :xref-AccessControlEnumerable-_revokeRole-bytes32-address-: xref:access.adoc#AccessControlEnumerable-_revokeRole-bytes32-address-
  54. :IAccessControl: pass:normal[xref:access.adoc#IAccessControl[`IAccessControl`]]
  55. :xref-IAccessControl: xref:access.adoc#IAccessControl
  56. :IAccessControl-hasRole: pass:normal[xref:access.adoc#IAccessControl-hasRole-bytes32-address-[`IAccessControl.hasRole`]]
  57. :xref-IAccessControl-hasRole-bytes32-address-: xref:access.adoc#IAccessControl-hasRole-bytes32-address-
  58. :IAccessControl-getRoleAdmin: pass:normal[xref:access.adoc#IAccessControl-getRoleAdmin-bytes32-[`IAccessControl.getRoleAdmin`]]
  59. :xref-IAccessControl-getRoleAdmin-bytes32-: xref:access.adoc#IAccessControl-getRoleAdmin-bytes32-
  60. :IAccessControl-grantRole: pass:normal[xref:access.adoc#IAccessControl-grantRole-bytes32-address-[`IAccessControl.grantRole`]]
  61. :xref-IAccessControl-grantRole-bytes32-address-: xref:access.adoc#IAccessControl-grantRole-bytes32-address-
  62. :IAccessControl-revokeRole: pass:normal[xref:access.adoc#IAccessControl-revokeRole-bytes32-address-[`IAccessControl.revokeRole`]]
  63. :xref-IAccessControl-revokeRole-bytes32-address-: xref:access.adoc#IAccessControl-revokeRole-bytes32-address-
  64. :IAccessControl-renounceRole: pass:normal[xref:access.adoc#IAccessControl-renounceRole-bytes32-address-[`IAccessControl.renounceRole`]]
  65. :xref-IAccessControl-renounceRole-bytes32-address-: xref:access.adoc#IAccessControl-renounceRole-bytes32-address-
  66. :IAccessControl-RoleAdminChanged: pass:normal[xref:access.adoc#IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-[`IAccessControl.RoleAdminChanged`]]
  67. :xref-IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-: xref:access.adoc#IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-
  68. :IAccessControl-RoleGranted: pass:normal[xref:access.adoc#IAccessControl-RoleGranted-bytes32-address-address-[`IAccessControl.RoleGranted`]]
  69. :xref-IAccessControl-RoleGranted-bytes32-address-address-: xref:access.adoc#IAccessControl-RoleGranted-bytes32-address-address-
  70. :IAccessControl-RoleRevoked: pass:normal[xref:access.adoc#IAccessControl-RoleRevoked-bytes32-address-address-[`IAccessControl.RoleRevoked`]]
  71. :xref-IAccessControl-RoleRevoked-bytes32-address-address-: xref:access.adoc#IAccessControl-RoleRevoked-bytes32-address-address-
  72. :IAccessControlEnumerable: pass:normal[xref:access.adoc#IAccessControlEnumerable[`IAccessControlEnumerable`]]
  73. :xref-IAccessControlEnumerable: xref:access.adoc#IAccessControlEnumerable
  74. :IAccessControlEnumerable-getRoleMember: pass:normal[xref:access.adoc#IAccessControlEnumerable-getRoleMember-bytes32-uint256-[`IAccessControlEnumerable.getRoleMember`]]
  75. :xref-IAccessControlEnumerable-getRoleMember-bytes32-uint256-: xref:access.adoc#IAccessControlEnumerable-getRoleMember-bytes32-uint256-
  76. :IAccessControlEnumerable-getRoleMemberCount: pass:normal[xref:access.adoc#IAccessControlEnumerable-getRoleMemberCount-bytes32-[`IAccessControlEnumerable.getRoleMemberCount`]]
  77. :xref-IAccessControlEnumerable-getRoleMemberCount-bytes32-: xref:access.adoc#IAccessControlEnumerable-getRoleMemberCount-bytes32-
  78. :Ownable: pass:normal[xref:access.adoc#Ownable[`Ownable`]]
  79. :xref-Ownable: xref:access.adoc#Ownable
  80. :Ownable-onlyOwner: pass:normal[xref:access.adoc#Ownable-onlyOwner--[`Ownable.onlyOwner`]]
  81. :xref-Ownable-onlyOwner--: xref:access.adoc#Ownable-onlyOwner--
  82. :Ownable-constructor: pass:normal[xref:access.adoc#Ownable-constructor--[`Ownable.constructor`]]
  83. :xref-Ownable-constructor--: xref:access.adoc#Ownable-constructor--
  84. :Ownable-owner: pass:normal[xref:access.adoc#Ownable-owner--[`Ownable.owner`]]
  85. :xref-Ownable-owner--: xref:access.adoc#Ownable-owner--
  86. :Ownable-_checkOwner: pass:normal[xref:access.adoc#Ownable-_checkOwner--[`Ownable._checkOwner`]]
  87. :xref-Ownable-_checkOwner--: xref:access.adoc#Ownable-_checkOwner--
  88. :Ownable-renounceOwnership: pass:normal[xref:access.adoc#Ownable-renounceOwnership--[`Ownable.renounceOwnership`]]
  89. :xref-Ownable-renounceOwnership--: xref:access.adoc#Ownable-renounceOwnership--
  90. :Ownable-transferOwnership: pass:normal[xref:access.adoc#Ownable-transferOwnership-address-[`Ownable.transferOwnership`]]
  91. :xref-Ownable-transferOwnership-address-: xref:access.adoc#Ownable-transferOwnership-address-
  92. :Ownable-_transferOwnership: pass:normal[xref:access.adoc#Ownable-_transferOwnership-address-[`Ownable._transferOwnership`]]
  93. :xref-Ownable-_transferOwnership-address-: xref:access.adoc#Ownable-_transferOwnership-address-
  94. :Ownable-OwnershipTransferred: pass:normal[xref:access.adoc#Ownable-OwnershipTransferred-address-address-[`Ownable.OwnershipTransferred`]]
  95. :xref-Ownable-OwnershipTransferred-address-address-: xref:access.adoc#Ownable-OwnershipTransferred-address-address-
  96. :CrossChainEnabled: pass:normal[xref:crosschain.adoc#CrossChainEnabled[`CrossChainEnabled`]]
  97. :xref-CrossChainEnabled: xref:crosschain.adoc#CrossChainEnabled
  98. :CrossChainEnabled-onlyCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabled-onlyCrossChain--[`CrossChainEnabled.onlyCrossChain`]]
  99. :xref-CrossChainEnabled-onlyCrossChain--: xref:crosschain.adoc#CrossChainEnabled-onlyCrossChain--
  100. :CrossChainEnabled-onlyCrossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabled-onlyCrossChainSender-address-[`CrossChainEnabled.onlyCrossChainSender`]]
  101. :xref-CrossChainEnabled-onlyCrossChainSender-address-: xref:crosschain.adoc#CrossChainEnabled-onlyCrossChainSender-address-
  102. :CrossChainEnabled-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabled-_isCrossChain--[`CrossChainEnabled._isCrossChain`]]
  103. :xref-CrossChainEnabled-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabled-_isCrossChain--
  104. :CrossChainEnabled-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabled-_crossChainSender--[`CrossChainEnabled._crossChainSender`]]
  105. :xref-CrossChainEnabled-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabled-_crossChainSender--
  106. :CrossChainEnabledAMB: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB[`CrossChainEnabledAMB`]]
  107. :xref-CrossChainEnabledAMB: xref:crosschain.adoc#CrossChainEnabledAMB
  108. :CrossChainEnabledAMB-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB-constructor-address-[`CrossChainEnabledAMB.constructor`]]
  109. :xref-CrossChainEnabledAMB-constructor-address-: xref:crosschain.adoc#CrossChainEnabledAMB-constructor-address-
  110. :CrossChainEnabledAMB-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB-_isCrossChain--[`CrossChainEnabledAMB._isCrossChain`]]
  111. :xref-CrossChainEnabledAMB-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledAMB-_isCrossChain--
  112. :CrossChainEnabledAMB-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB-_crossChainSender--[`CrossChainEnabledAMB._crossChainSender`]]
  113. :xref-CrossChainEnabledAMB-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledAMB-_crossChainSender--
  114. :LibAMB: pass:normal[xref:crosschain.adoc#LibAMB[`LibAMB`]]
  115. :xref-LibAMB: xref:crosschain.adoc#LibAMB
  116. :LibAMB-isCrossChain: pass:normal[xref:crosschain.adoc#LibAMB-isCrossChain-address-[`LibAMB.isCrossChain`]]
  117. :xref-LibAMB-isCrossChain-address-: xref:crosschain.adoc#LibAMB-isCrossChain-address-
  118. :LibAMB-crossChainSender: pass:normal[xref:crosschain.adoc#LibAMB-crossChainSender-address-[`LibAMB.crossChainSender`]]
  119. :xref-LibAMB-crossChainSender-address-: xref:crosschain.adoc#LibAMB-crossChainSender-address-
  120. :CrossChainEnabledArbitrumL1: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1[`CrossChainEnabledArbitrumL1`]]
  121. :xref-CrossChainEnabledArbitrumL1: xref:crosschain.adoc#CrossChainEnabledArbitrumL1
  122. :CrossChainEnabledArbitrumL1-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1-constructor-address-[`CrossChainEnabledArbitrumL1.constructor`]]
  123. :xref-CrossChainEnabledArbitrumL1-constructor-address-: xref:crosschain.adoc#CrossChainEnabledArbitrumL1-constructor-address-
  124. :CrossChainEnabledArbitrumL1-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_isCrossChain--[`CrossChainEnabledArbitrumL1._isCrossChain`]]
  125. :xref-CrossChainEnabledArbitrumL1-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_isCrossChain--
  126. :CrossChainEnabledArbitrumL1-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_crossChainSender--[`CrossChainEnabledArbitrumL1._crossChainSender`]]
  127. :xref-CrossChainEnabledArbitrumL1-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_crossChainSender--
  128. :CrossChainEnabledArbitrumL2: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL2[`CrossChainEnabledArbitrumL2`]]
  129. :xref-CrossChainEnabledArbitrumL2: xref:crosschain.adoc#CrossChainEnabledArbitrumL2
  130. :CrossChainEnabledArbitrumL2-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_isCrossChain--[`CrossChainEnabledArbitrumL2._isCrossChain`]]
  131. :xref-CrossChainEnabledArbitrumL2-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_isCrossChain--
  132. :CrossChainEnabledArbitrumL2-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_crossChainSender--[`CrossChainEnabledArbitrumL2._crossChainSender`]]
  133. :xref-CrossChainEnabledArbitrumL2-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_crossChainSender--
  134. :LibArbitrumL1: pass:normal[xref:crosschain.adoc#LibArbitrumL1[`LibArbitrumL1`]]
  135. :xref-LibArbitrumL1: xref:crosschain.adoc#LibArbitrumL1
  136. :LibArbitrumL1-isCrossChain: pass:normal[xref:crosschain.adoc#LibArbitrumL1-isCrossChain-address-[`LibArbitrumL1.isCrossChain`]]
  137. :xref-LibArbitrumL1-isCrossChain-address-: xref:crosschain.adoc#LibArbitrumL1-isCrossChain-address-
  138. :LibArbitrumL1-crossChainSender: pass:normal[xref:crosschain.adoc#LibArbitrumL1-crossChainSender-address-[`LibArbitrumL1.crossChainSender`]]
  139. :xref-LibArbitrumL1-crossChainSender-address-: xref:crosschain.adoc#LibArbitrumL1-crossChainSender-address-
  140. :LibArbitrumL2: pass:normal[xref:crosschain.adoc#LibArbitrumL2[`LibArbitrumL2`]]
  141. :xref-LibArbitrumL2: xref:crosschain.adoc#LibArbitrumL2
  142. :LibArbitrumL2-ARBSYS: pass:normal[xref:crosschain.adoc#LibArbitrumL2-ARBSYS-address[`LibArbitrumL2.ARBSYS`]]
  143. :xref-LibArbitrumL2-ARBSYS-address: xref:crosschain.adoc#LibArbitrumL2-ARBSYS-address
  144. :LibArbitrumL2-isCrossChain: pass:normal[xref:crosschain.adoc#LibArbitrumL2-isCrossChain-address-[`LibArbitrumL2.isCrossChain`]]
  145. :xref-LibArbitrumL2-isCrossChain-address-: xref:crosschain.adoc#LibArbitrumL2-isCrossChain-address-
  146. :LibArbitrumL2-crossChainSender: pass:normal[xref:crosschain.adoc#LibArbitrumL2-crossChainSender-address-[`LibArbitrumL2.crossChainSender`]]
  147. :xref-LibArbitrumL2-crossChainSender-address-: xref:crosschain.adoc#LibArbitrumL2-crossChainSender-address-
  148. :CrossChainEnabledOptimism: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism[`CrossChainEnabledOptimism`]]
  149. :xref-CrossChainEnabledOptimism: xref:crosschain.adoc#CrossChainEnabledOptimism
  150. :CrossChainEnabledOptimism-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism-constructor-address-[`CrossChainEnabledOptimism.constructor`]]
  151. :xref-CrossChainEnabledOptimism-constructor-address-: xref:crosschain.adoc#CrossChainEnabledOptimism-constructor-address-
  152. :CrossChainEnabledOptimism-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism-_isCrossChain--[`CrossChainEnabledOptimism._isCrossChain`]]
  153. :xref-CrossChainEnabledOptimism-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledOptimism-_isCrossChain--
  154. :CrossChainEnabledOptimism-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism-_crossChainSender--[`CrossChainEnabledOptimism._crossChainSender`]]
  155. :xref-CrossChainEnabledOptimism-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledOptimism-_crossChainSender--
  156. :LibOptimism: pass:normal[xref:crosschain.adoc#LibOptimism[`LibOptimism`]]
  157. :xref-LibOptimism: xref:crosschain.adoc#LibOptimism
  158. :LibOptimism-isCrossChain: pass:normal[xref:crosschain.adoc#LibOptimism-isCrossChain-address-[`LibOptimism.isCrossChain`]]
  159. :xref-LibOptimism-isCrossChain-address-: xref:crosschain.adoc#LibOptimism-isCrossChain-address-
  160. :LibOptimism-crossChainSender: pass:normal[xref:crosschain.adoc#LibOptimism-crossChainSender-address-[`LibOptimism.crossChainSender`]]
  161. :xref-LibOptimism-crossChainSender-address-: xref:crosschain.adoc#LibOptimism-crossChainSender-address-
  162. :CrossChainEnabledPolygonChild: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild[`CrossChainEnabledPolygonChild`]]
  163. :xref-CrossChainEnabledPolygonChild: xref:crosschain.adoc#CrossChainEnabledPolygonChild
  164. :CrossChainEnabledPolygonChild-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-constructor-address-[`CrossChainEnabledPolygonChild.constructor`]]
  165. :xref-CrossChainEnabledPolygonChild-constructor-address-: xref:crosschain.adoc#CrossChainEnabledPolygonChild-constructor-address-
  166. :CrossChainEnabledPolygonChild-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-_isCrossChain--[`CrossChainEnabledPolygonChild._isCrossChain`]]
  167. :xref-CrossChainEnabledPolygonChild-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledPolygonChild-_isCrossChain--
  168. :CrossChainEnabledPolygonChild-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-_crossChainSender--[`CrossChainEnabledPolygonChild._crossChainSender`]]
  169. :xref-CrossChainEnabledPolygonChild-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledPolygonChild-_crossChainSender--
  170. :CrossChainEnabledPolygonChild-processMessageFromRoot: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-processMessageFromRoot-uint256-address-bytes-[`CrossChainEnabledPolygonChild.processMessageFromRoot`]]
  171. :xref-CrossChainEnabledPolygonChild-processMessageFromRoot-uint256-address-bytes-: xref:crosschain.adoc#CrossChainEnabledPolygonChild-processMessageFromRoot-uint256-address-bytes-
  172. :PaymentSplitter: pass:normal[xref:finance.adoc#PaymentSplitter[`PaymentSplitter`]]
  173. :xref-PaymentSplitter: xref:finance.adoc#PaymentSplitter
  174. :PaymentSplitter-constructor: pass:normal[xref:finance.adoc#PaymentSplitter-constructor-address---uint256---[`PaymentSplitter.constructor`]]
  175. :xref-PaymentSplitter-constructor-address---uint256---: xref:finance.adoc#PaymentSplitter-constructor-address---uint256---
  176. :PaymentSplitter-receive: pass:normal[xref:finance.adoc#PaymentSplitter-receive--[`PaymentSplitter.receive`]]
  177. :xref-PaymentSplitter-receive--: xref:finance.adoc#PaymentSplitter-receive--
  178. :PaymentSplitter-totalShares: pass:normal[xref:finance.adoc#PaymentSplitter-totalShares--[`PaymentSplitter.totalShares`]]
  179. :xref-PaymentSplitter-totalShares--: xref:finance.adoc#PaymentSplitter-totalShares--
  180. :PaymentSplitter-totalReleased: pass:normal[xref:finance.adoc#PaymentSplitter-totalReleased--[`PaymentSplitter.totalReleased`]]
  181. :xref-PaymentSplitter-totalReleased--: xref:finance.adoc#PaymentSplitter-totalReleased--
  182. :PaymentSplitter-totalReleased: pass:normal[xref:finance.adoc#PaymentSplitter-totalReleased-contract-IERC20-[`PaymentSplitter.totalReleased`]]
  183. :xref-PaymentSplitter-totalReleased-contract-IERC20-: xref:finance.adoc#PaymentSplitter-totalReleased-contract-IERC20-
  184. :PaymentSplitter-shares: pass:normal[xref:finance.adoc#PaymentSplitter-shares-address-[`PaymentSplitter.shares`]]
  185. :xref-PaymentSplitter-shares-address-: xref:finance.adoc#PaymentSplitter-shares-address-
  186. :PaymentSplitter-released: pass:normal[xref:finance.adoc#PaymentSplitter-released-address-[`PaymentSplitter.released`]]
  187. :xref-PaymentSplitter-released-address-: xref:finance.adoc#PaymentSplitter-released-address-
  188. :PaymentSplitter-released: pass:normal[xref:finance.adoc#PaymentSplitter-released-contract-IERC20-address-[`PaymentSplitter.released`]]
  189. :xref-PaymentSplitter-released-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-released-contract-IERC20-address-
  190. :PaymentSplitter-payee: pass:normal[xref:finance.adoc#PaymentSplitter-payee-uint256-[`PaymentSplitter.payee`]]
  191. :xref-PaymentSplitter-payee-uint256-: xref:finance.adoc#PaymentSplitter-payee-uint256-
  192. :PaymentSplitter-releasable: pass:normal[xref:finance.adoc#PaymentSplitter-releasable-address-[`PaymentSplitter.releasable`]]
  193. :xref-PaymentSplitter-releasable-address-: xref:finance.adoc#PaymentSplitter-releasable-address-
  194. :PaymentSplitter-releasable: pass:normal[xref:finance.adoc#PaymentSplitter-releasable-contract-IERC20-address-[`PaymentSplitter.releasable`]]
  195. :xref-PaymentSplitter-releasable-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-releasable-contract-IERC20-address-
  196. :PaymentSplitter-release: pass:normal[xref:finance.adoc#PaymentSplitter-release-address-payable-[`PaymentSplitter.release`]]
  197. :xref-PaymentSplitter-release-address-payable-: xref:finance.adoc#PaymentSplitter-release-address-payable-
  198. :PaymentSplitter-release: pass:normal[xref:finance.adoc#PaymentSplitter-release-contract-IERC20-address-[`PaymentSplitter.release`]]
  199. :xref-PaymentSplitter-release-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-release-contract-IERC20-address-
  200. :PaymentSplitter-PayeeAdded: pass:normal[xref:finance.adoc#PaymentSplitter-PayeeAdded-address-uint256-[`PaymentSplitter.PayeeAdded`]]
  201. :xref-PaymentSplitter-PayeeAdded-address-uint256-: xref:finance.adoc#PaymentSplitter-PayeeAdded-address-uint256-
  202. :PaymentSplitter-PaymentReleased: pass:normal[xref:finance.adoc#PaymentSplitter-PaymentReleased-address-uint256-[`PaymentSplitter.PaymentReleased`]]
  203. :xref-PaymentSplitter-PaymentReleased-address-uint256-: xref:finance.adoc#PaymentSplitter-PaymentReleased-address-uint256-
  204. :PaymentSplitter-ERC20PaymentReleased: pass:normal[xref:finance.adoc#PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-[`PaymentSplitter.ERC20PaymentReleased`]]
  205. :xref-PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-: xref:finance.adoc#PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-
  206. :PaymentSplitter-PaymentReceived: pass:normal[xref:finance.adoc#PaymentSplitter-PaymentReceived-address-uint256-[`PaymentSplitter.PaymentReceived`]]
  207. :xref-PaymentSplitter-PaymentReceived-address-uint256-: xref:finance.adoc#PaymentSplitter-PaymentReceived-address-uint256-
  208. :VestingWallet: pass:normal[xref:finance.adoc#VestingWallet[`VestingWallet`]]
  209. :xref-VestingWallet: xref:finance.adoc#VestingWallet
  210. :VestingWallet-constructor: pass:normal[xref:finance.adoc#VestingWallet-constructor-address-uint64-uint64-[`VestingWallet.constructor`]]
  211. :xref-VestingWallet-constructor-address-uint64-uint64-: xref:finance.adoc#VestingWallet-constructor-address-uint64-uint64-
  212. :VestingWallet-receive: pass:normal[xref:finance.adoc#VestingWallet-receive--[`VestingWallet.receive`]]
  213. :xref-VestingWallet-receive--: xref:finance.adoc#VestingWallet-receive--
  214. :VestingWallet-beneficiary: pass:normal[xref:finance.adoc#VestingWallet-beneficiary--[`VestingWallet.beneficiary`]]
  215. :xref-VestingWallet-beneficiary--: xref:finance.adoc#VestingWallet-beneficiary--
  216. :VestingWallet-start: pass:normal[xref:finance.adoc#VestingWallet-start--[`VestingWallet.start`]]
  217. :xref-VestingWallet-start--: xref:finance.adoc#VestingWallet-start--
  218. :VestingWallet-duration: pass:normal[xref:finance.adoc#VestingWallet-duration--[`VestingWallet.duration`]]
  219. :xref-VestingWallet-duration--: xref:finance.adoc#VestingWallet-duration--
  220. :VestingWallet-released: pass:normal[xref:finance.adoc#VestingWallet-released--[`VestingWallet.released`]]
  221. :xref-VestingWallet-released--: xref:finance.adoc#VestingWallet-released--
  222. :VestingWallet-released: pass:normal[xref:finance.adoc#VestingWallet-released-address-[`VestingWallet.released`]]
  223. :xref-VestingWallet-released-address-: xref:finance.adoc#VestingWallet-released-address-
  224. :VestingWallet-release: pass:normal[xref:finance.adoc#VestingWallet-release--[`VestingWallet.release`]]
  225. :xref-VestingWallet-release--: xref:finance.adoc#VestingWallet-release--
  226. :VestingWallet-release: pass:normal[xref:finance.adoc#VestingWallet-release-address-[`VestingWallet.release`]]
  227. :xref-VestingWallet-release-address-: xref:finance.adoc#VestingWallet-release-address-
  228. :VestingWallet-vestedAmount: pass:normal[xref:finance.adoc#VestingWallet-vestedAmount-uint64-[`VestingWallet.vestedAmount`]]
  229. :xref-VestingWallet-vestedAmount-uint64-: xref:finance.adoc#VestingWallet-vestedAmount-uint64-
  230. :VestingWallet-vestedAmount: pass:normal[xref:finance.adoc#VestingWallet-vestedAmount-address-uint64-[`VestingWallet.vestedAmount`]]
  231. :xref-VestingWallet-vestedAmount-address-uint64-: xref:finance.adoc#VestingWallet-vestedAmount-address-uint64-
  232. :VestingWallet-_vestingSchedule: pass:normal[xref:finance.adoc#VestingWallet-_vestingSchedule-uint256-uint64-[`VestingWallet._vestingSchedule`]]
  233. :xref-VestingWallet-_vestingSchedule-uint256-uint64-: xref:finance.adoc#VestingWallet-_vestingSchedule-uint256-uint64-
  234. :VestingWallet-EtherReleased: pass:normal[xref:finance.adoc#VestingWallet-EtherReleased-uint256-[`VestingWallet.EtherReleased`]]
  235. :xref-VestingWallet-EtherReleased-uint256-: xref:finance.adoc#VestingWallet-EtherReleased-uint256-
  236. :VestingWallet-ERC20Released: pass:normal[xref:finance.adoc#VestingWallet-ERC20Released-address-uint256-[`VestingWallet.ERC20Released`]]
  237. :xref-VestingWallet-ERC20Released-address-uint256-: xref:finance.adoc#VestingWallet-ERC20Released-address-uint256-
  238. :Governor: pass:normal[xref:governance.adoc#Governor[`Governor`]]
  239. :xref-Governor: xref:governance.adoc#Governor
  240. :Governor-onlyGovernance: pass:normal[xref:governance.adoc#Governor-onlyGovernance--[`Governor.onlyGovernance`]]
  241. :xref-Governor-onlyGovernance--: xref:governance.adoc#Governor-onlyGovernance--
  242. :Governor-BALLOT_TYPEHASH: pass:normal[xref:governance.adoc#Governor-BALLOT_TYPEHASH-bytes32[`Governor.BALLOT_TYPEHASH`]]
  243. :xref-Governor-BALLOT_TYPEHASH-bytes32: xref:governance.adoc#Governor-BALLOT_TYPEHASH-bytes32
  244. :Governor-EXTENDED_BALLOT_TYPEHASH: pass:normal[xref:governance.adoc#Governor-EXTENDED_BALLOT_TYPEHASH-bytes32[`Governor.EXTENDED_BALLOT_TYPEHASH`]]
  245. :xref-Governor-EXTENDED_BALLOT_TYPEHASH-bytes32: xref:governance.adoc#Governor-EXTENDED_BALLOT_TYPEHASH-bytes32
  246. :Governor-constructor: pass:normal[xref:governance.adoc#Governor-constructor-string-[`Governor.constructor`]]
  247. :xref-Governor-constructor-string-: xref:governance.adoc#Governor-constructor-string-
  248. :Governor-receive: pass:normal[xref:governance.adoc#Governor-receive--[`Governor.receive`]]
  249. :xref-Governor-receive--: xref:governance.adoc#Governor-receive--
  250. :Governor-supportsInterface: pass:normal[xref:governance.adoc#Governor-supportsInterface-bytes4-[`Governor.supportsInterface`]]
  251. :xref-Governor-supportsInterface-bytes4-: xref:governance.adoc#Governor-supportsInterface-bytes4-
  252. :Governor-name: pass:normal[xref:governance.adoc#Governor-name--[`Governor.name`]]
  253. :xref-Governor-name--: xref:governance.adoc#Governor-name--
  254. :Governor-version: pass:normal[xref:governance.adoc#Governor-version--[`Governor.version`]]
  255. :xref-Governor-version--: xref:governance.adoc#Governor-version--
  256. :Governor-hashProposal: pass:normal[xref:governance.adoc#Governor-hashProposal-address---uint256---bytes---bytes32-[`Governor.hashProposal`]]
  257. :xref-Governor-hashProposal-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-hashProposal-address---uint256---bytes---bytes32-
  258. :Governor-state: pass:normal[xref:governance.adoc#Governor-state-uint256-[`Governor.state`]]
  259. :xref-Governor-state-uint256-: xref:governance.adoc#Governor-state-uint256-
  260. :Governor-proposalSnapshot: pass:normal[xref:governance.adoc#Governor-proposalSnapshot-uint256-[`Governor.proposalSnapshot`]]
  261. :xref-Governor-proposalSnapshot-uint256-: xref:governance.adoc#Governor-proposalSnapshot-uint256-
  262. :Governor-proposalDeadline: pass:normal[xref:governance.adoc#Governor-proposalDeadline-uint256-[`Governor.proposalDeadline`]]
  263. :xref-Governor-proposalDeadline-uint256-: xref:governance.adoc#Governor-proposalDeadline-uint256-
  264. :Governor-proposalThreshold: pass:normal[xref:governance.adoc#Governor-proposalThreshold--[`Governor.proposalThreshold`]]
  265. :xref-Governor-proposalThreshold--: xref:governance.adoc#Governor-proposalThreshold--
  266. :Governor-_quorumReached: pass:normal[xref:governance.adoc#Governor-_quorumReached-uint256-[`Governor._quorumReached`]]
  267. :xref-Governor-_quorumReached-uint256-: xref:governance.adoc#Governor-_quorumReached-uint256-
  268. :Governor-_voteSucceeded: pass:normal[xref:governance.adoc#Governor-_voteSucceeded-uint256-[`Governor._voteSucceeded`]]
  269. :xref-Governor-_voteSucceeded-uint256-: xref:governance.adoc#Governor-_voteSucceeded-uint256-
  270. :Governor-_getVotes: pass:normal[xref:governance.adoc#Governor-_getVotes-address-uint256-bytes-[`Governor._getVotes`]]
  271. :xref-Governor-_getVotes-address-uint256-bytes-: xref:governance.adoc#Governor-_getVotes-address-uint256-bytes-
  272. :Governor-_countVote: pass:normal[xref:governance.adoc#Governor-_countVote-uint256-address-uint8-uint256-bytes-[`Governor._countVote`]]
  273. :xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-: xref:governance.adoc#Governor-_countVote-uint256-address-uint8-uint256-bytes-
  274. :Governor-_defaultParams: pass:normal[xref:governance.adoc#Governor-_defaultParams--[`Governor._defaultParams`]]
  275. :xref-Governor-_defaultParams--: xref:governance.adoc#Governor-_defaultParams--
  276. :Governor-propose: pass:normal[xref:governance.adoc#Governor-propose-address---uint256---bytes---string-[`Governor.propose`]]
  277. :xref-Governor-propose-address---uint256---bytes---string-: xref:governance.adoc#Governor-propose-address---uint256---bytes---string-
  278. :Governor-execute: pass:normal[xref:governance.adoc#Governor-execute-address---uint256---bytes---bytes32-[`Governor.execute`]]
  279. :xref-Governor-execute-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-execute-address---uint256---bytes---bytes32-
  280. :Governor-_execute: pass:normal[xref:governance.adoc#Governor-_execute-uint256-address---uint256---bytes---bytes32-[`Governor._execute`]]
  281. :xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_execute-uint256-address---uint256---bytes---bytes32-
  282. :Governor-_beforeExecute: pass:normal[xref:governance.adoc#Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-[`Governor._beforeExecute`]]
  283. :xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-
  284. :Governor-_afterExecute: pass:normal[xref:governance.adoc#Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-[`Governor._afterExecute`]]
  285. :xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-
  286. :Governor-_cancel: pass:normal[xref:governance.adoc#Governor-_cancel-address---uint256---bytes---bytes32-[`Governor._cancel`]]
  287. :xref-Governor-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_cancel-address---uint256---bytes---bytes32-
  288. :Governor-getVotes: pass:normal[xref:governance.adoc#Governor-getVotes-address-uint256-[`Governor.getVotes`]]
  289. :xref-Governor-getVotes-address-uint256-: xref:governance.adoc#Governor-getVotes-address-uint256-
  290. :Governor-getVotesWithParams: pass:normal[xref:governance.adoc#Governor-getVotesWithParams-address-uint256-bytes-[`Governor.getVotesWithParams`]]
  291. :xref-Governor-getVotesWithParams-address-uint256-bytes-: xref:governance.adoc#Governor-getVotesWithParams-address-uint256-bytes-
  292. :Governor-castVote: pass:normal[xref:governance.adoc#Governor-castVote-uint256-uint8-[`Governor.castVote`]]
  293. :xref-Governor-castVote-uint256-uint8-: xref:governance.adoc#Governor-castVote-uint256-uint8-
  294. :Governor-castVoteWithReason: pass:normal[xref:governance.adoc#Governor-castVoteWithReason-uint256-uint8-string-[`Governor.castVoteWithReason`]]
  295. :xref-Governor-castVoteWithReason-uint256-uint8-string-: xref:governance.adoc#Governor-castVoteWithReason-uint256-uint8-string-
  296. :Governor-castVoteWithReasonAndParams: pass:normal[xref:governance.adoc#Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`Governor.castVoteWithReasonAndParams`]]
  297. :xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-: xref:governance.adoc#Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-
  298. :Governor-castVoteBySig: pass:normal[xref:governance.adoc#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`Governor.castVoteBySig`]]
  299. :xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-: xref:governance.adoc#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-
  300. :Governor-castVoteWithReasonAndParamsBySig: pass:normal[xref:governance.adoc#Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`Governor.castVoteWithReasonAndParamsBySig`]]
  301. :xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-: xref:governance.adoc#Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-
  302. :Governor-_castVote: pass:normal[xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-[`Governor._castVote`]]
  303. :xref-Governor-_castVote-uint256-address-uint8-string-: xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-
  304. :Governor-_castVote: pass:normal[xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-bytes-[`Governor._castVote`]]
  305. :xref-Governor-_castVote-uint256-address-uint8-string-bytes-: xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-bytes-
  306. :Governor-relay: pass:normal[xref:governance.adoc#Governor-relay-address-uint256-bytes-[`Governor.relay`]]
  307. :xref-Governor-relay-address-uint256-bytes-: xref:governance.adoc#Governor-relay-address-uint256-bytes-
  308. :Governor-_executor: pass:normal[xref:governance.adoc#Governor-_executor--[`Governor._executor`]]
  309. :xref-Governor-_executor--: xref:governance.adoc#Governor-_executor--
  310. :Governor-onERC721Received: pass:normal[xref:governance.adoc#Governor-onERC721Received-address-address-uint256-bytes-[`Governor.onERC721Received`]]
  311. :xref-Governor-onERC721Received-address-address-uint256-bytes-: xref:governance.adoc#Governor-onERC721Received-address-address-uint256-bytes-
  312. :Governor-onERC1155Received: pass:normal[xref:governance.adoc#Governor-onERC1155Received-address-address-uint256-uint256-bytes-[`Governor.onERC1155Received`]]
  313. :xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-: xref:governance.adoc#Governor-onERC1155Received-address-address-uint256-uint256-bytes-
  314. :Governor-onERC1155BatchReceived: pass:normal[xref:governance.adoc#Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`Governor.onERC1155BatchReceived`]]
  315. :xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:governance.adoc#Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  316. :Governor-ProposalCore: pass:normal[xref:governance.adoc#Governor-ProposalCore[`Governor.ProposalCore`]]
  317. :xref-Governor-ProposalCore: xref:governance.adoc#Governor-ProposalCore
  318. :IGovernor: pass:normal[xref:governance.adoc#IGovernor[`IGovernor`]]
  319. :xref-IGovernor: xref:governance.adoc#IGovernor
  320. :IGovernor-name: pass:normal[xref:governance.adoc#IGovernor-name--[`IGovernor.name`]]
  321. :xref-IGovernor-name--: xref:governance.adoc#IGovernor-name--
  322. :IGovernor-version: pass:normal[xref:governance.adoc#IGovernor-version--[`IGovernor.version`]]
  323. :xref-IGovernor-version--: xref:governance.adoc#IGovernor-version--
  324. :IGovernor-COUNTING_MODE: pass:normal[xref:governance.adoc#IGovernor-COUNTING_MODE--[`IGovernor.COUNTING_MODE`]]
  325. :xref-IGovernor-COUNTING_MODE--: xref:governance.adoc#IGovernor-COUNTING_MODE--
  326. :IGovernor-hashProposal: pass:normal[xref:governance.adoc#IGovernor-hashProposal-address---uint256---bytes---bytes32-[`IGovernor.hashProposal`]]
  327. :xref-IGovernor-hashProposal-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernor-hashProposal-address---uint256---bytes---bytes32-
  328. :IGovernor-state: pass:normal[xref:governance.adoc#IGovernor-state-uint256-[`IGovernor.state`]]
  329. :xref-IGovernor-state-uint256-: xref:governance.adoc#IGovernor-state-uint256-
  330. :IGovernor-proposalSnapshot: pass:normal[xref:governance.adoc#IGovernor-proposalSnapshot-uint256-[`IGovernor.proposalSnapshot`]]
  331. :xref-IGovernor-proposalSnapshot-uint256-: xref:governance.adoc#IGovernor-proposalSnapshot-uint256-
  332. :IGovernor-proposalDeadline: pass:normal[xref:governance.adoc#IGovernor-proposalDeadline-uint256-[`IGovernor.proposalDeadline`]]
  333. :xref-IGovernor-proposalDeadline-uint256-: xref:governance.adoc#IGovernor-proposalDeadline-uint256-
  334. :IGovernor-votingDelay: pass:normal[xref:governance.adoc#IGovernor-votingDelay--[`IGovernor.votingDelay`]]
  335. :xref-IGovernor-votingDelay--: xref:governance.adoc#IGovernor-votingDelay--
  336. :IGovernor-votingPeriod: pass:normal[xref:governance.adoc#IGovernor-votingPeriod--[`IGovernor.votingPeriod`]]
  337. :xref-IGovernor-votingPeriod--: xref:governance.adoc#IGovernor-votingPeriod--
  338. :IGovernor-quorum: pass:normal[xref:governance.adoc#IGovernor-quorum-uint256-[`IGovernor.quorum`]]
  339. :xref-IGovernor-quorum-uint256-: xref:governance.adoc#IGovernor-quorum-uint256-
  340. :IGovernor-getVotes: pass:normal[xref:governance.adoc#IGovernor-getVotes-address-uint256-[`IGovernor.getVotes`]]
  341. :xref-IGovernor-getVotes-address-uint256-: xref:governance.adoc#IGovernor-getVotes-address-uint256-
  342. :IGovernor-getVotesWithParams: pass:normal[xref:governance.adoc#IGovernor-getVotesWithParams-address-uint256-bytes-[`IGovernor.getVotesWithParams`]]
  343. :xref-IGovernor-getVotesWithParams-address-uint256-bytes-: xref:governance.adoc#IGovernor-getVotesWithParams-address-uint256-bytes-
  344. :IGovernor-hasVoted: pass:normal[xref:governance.adoc#IGovernor-hasVoted-uint256-address-[`IGovernor.hasVoted`]]
  345. :xref-IGovernor-hasVoted-uint256-address-: xref:governance.adoc#IGovernor-hasVoted-uint256-address-
  346. :IGovernor-propose: pass:normal[xref:governance.adoc#IGovernor-propose-address---uint256---bytes---string-[`IGovernor.propose`]]
  347. :xref-IGovernor-propose-address---uint256---bytes---string-: xref:governance.adoc#IGovernor-propose-address---uint256---bytes---string-
  348. :IGovernor-execute: pass:normal[xref:governance.adoc#IGovernor-execute-address---uint256---bytes---bytes32-[`IGovernor.execute`]]
  349. :xref-IGovernor-execute-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernor-execute-address---uint256---bytes---bytes32-
  350. :IGovernor-castVote: pass:normal[xref:governance.adoc#IGovernor-castVote-uint256-uint8-[`IGovernor.castVote`]]
  351. :xref-IGovernor-castVote-uint256-uint8-: xref:governance.adoc#IGovernor-castVote-uint256-uint8-
  352. :IGovernor-castVoteWithReason: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReason-uint256-uint8-string-[`IGovernor.castVoteWithReason`]]
  353. :xref-IGovernor-castVoteWithReason-uint256-uint8-string-: xref:governance.adoc#IGovernor-castVoteWithReason-uint256-uint8-string-
  354. :IGovernor-castVoteWithReasonAndParams: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`IGovernor.castVoteWithReasonAndParams`]]
  355. :xref-IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-: xref:governance.adoc#IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-
  356. :IGovernor-castVoteBySig: pass:normal[xref:governance.adoc#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`IGovernor.castVoteBySig`]]
  357. :xref-IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-: xref:governance.adoc#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-
  358. :IGovernor-castVoteWithReasonAndParamsBySig: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`IGovernor.castVoteWithReasonAndParamsBySig`]]
  359. :xref-IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-: xref:governance.adoc#IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-
  360. :IGovernor-ProposalCreated: pass:normal[xref:governance.adoc#IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-[`IGovernor.ProposalCreated`]]
  361. :xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-: xref:governance.adoc#IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-
  362. :IGovernor-ProposalCanceled: pass:normal[xref:governance.adoc#IGovernor-ProposalCanceled-uint256-[`IGovernor.ProposalCanceled`]]
  363. :xref-IGovernor-ProposalCanceled-uint256-: xref:governance.adoc#IGovernor-ProposalCanceled-uint256-
  364. :IGovernor-ProposalExecuted: pass:normal[xref:governance.adoc#IGovernor-ProposalExecuted-uint256-[`IGovernor.ProposalExecuted`]]
  365. :xref-IGovernor-ProposalExecuted-uint256-: xref:governance.adoc#IGovernor-ProposalExecuted-uint256-
  366. :IGovernor-VoteCast: pass:normal[xref:governance.adoc#IGovernor-VoteCast-address-uint256-uint8-uint256-string-[`IGovernor.VoteCast`]]
  367. :xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-: xref:governance.adoc#IGovernor-VoteCast-address-uint256-uint8-uint256-string-
  368. :IGovernor-VoteCastWithParams: pass:normal[xref:governance.adoc#IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-[`IGovernor.VoteCastWithParams`]]
  369. :xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-: xref:governance.adoc#IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-
  370. :IGovernor-ProposalState: pass:normal[xref:governance.adoc#IGovernor-ProposalState[`IGovernor.ProposalState`]]
  371. :xref-IGovernor-ProposalState: xref:governance.adoc#IGovernor-ProposalState
  372. :TimelockController: pass:normal[xref:governance.adoc#TimelockController[`TimelockController`]]
  373. :xref-TimelockController: xref:governance.adoc#TimelockController
  374. :TimelockController-onlyRoleOrOpenRole: pass:normal[xref:governance.adoc#TimelockController-onlyRoleOrOpenRole-bytes32-[`TimelockController.onlyRoleOrOpenRole`]]
  375. :xref-TimelockController-onlyRoleOrOpenRole-bytes32-: xref:governance.adoc#TimelockController-onlyRoleOrOpenRole-bytes32-
  376. :TimelockController-TIMELOCK_ADMIN_ROLE: pass:normal[xref:governance.adoc#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32[`TimelockController.TIMELOCK_ADMIN_ROLE`]]
  377. :xref-TimelockController-TIMELOCK_ADMIN_ROLE-bytes32: xref:governance.adoc#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32
  378. :TimelockController-PROPOSER_ROLE: pass:normal[xref:governance.adoc#TimelockController-PROPOSER_ROLE-bytes32[`TimelockController.PROPOSER_ROLE`]]
  379. :xref-TimelockController-PROPOSER_ROLE-bytes32: xref:governance.adoc#TimelockController-PROPOSER_ROLE-bytes32
  380. :TimelockController-EXECUTOR_ROLE: pass:normal[xref:governance.adoc#TimelockController-EXECUTOR_ROLE-bytes32[`TimelockController.EXECUTOR_ROLE`]]
  381. :xref-TimelockController-EXECUTOR_ROLE-bytes32: xref:governance.adoc#TimelockController-EXECUTOR_ROLE-bytes32
  382. :TimelockController-CANCELLER_ROLE: pass:normal[xref:governance.adoc#TimelockController-CANCELLER_ROLE-bytes32[`TimelockController.CANCELLER_ROLE`]]
  383. :xref-TimelockController-CANCELLER_ROLE-bytes32: xref:governance.adoc#TimelockController-CANCELLER_ROLE-bytes32
  384. :TimelockController-_DONE_TIMESTAMP: pass:normal[xref:governance.adoc#TimelockController-_DONE_TIMESTAMP-uint256[`TimelockController._DONE_TIMESTAMP`]]
  385. :xref-TimelockController-_DONE_TIMESTAMP-uint256: xref:governance.adoc#TimelockController-_DONE_TIMESTAMP-uint256
  386. :TimelockController-constructor: pass:normal[xref:governance.adoc#TimelockController-constructor-uint256-address---address---[`TimelockController.constructor`]]
  387. :xref-TimelockController-constructor-uint256-address---address---: xref:governance.adoc#TimelockController-constructor-uint256-address---address---
  388. :TimelockController-receive: pass:normal[xref:governance.adoc#TimelockController-receive--[`TimelockController.receive`]]
  389. :xref-TimelockController-receive--: xref:governance.adoc#TimelockController-receive--
  390. :TimelockController-supportsInterface: pass:normal[xref:governance.adoc#TimelockController-supportsInterface-bytes4-[`TimelockController.supportsInterface`]]
  391. :xref-TimelockController-supportsInterface-bytes4-: xref:governance.adoc#TimelockController-supportsInterface-bytes4-
  392. :TimelockController-isOperation: pass:normal[xref:governance.adoc#TimelockController-isOperation-bytes32-[`TimelockController.isOperation`]]
  393. :xref-TimelockController-isOperation-bytes32-: xref:governance.adoc#TimelockController-isOperation-bytes32-
  394. :TimelockController-isOperationPending: pass:normal[xref:governance.adoc#TimelockController-isOperationPending-bytes32-[`TimelockController.isOperationPending`]]
  395. :xref-TimelockController-isOperationPending-bytes32-: xref:governance.adoc#TimelockController-isOperationPending-bytes32-
  396. :TimelockController-isOperationReady: pass:normal[xref:governance.adoc#TimelockController-isOperationReady-bytes32-[`TimelockController.isOperationReady`]]
  397. :xref-TimelockController-isOperationReady-bytes32-: xref:governance.adoc#TimelockController-isOperationReady-bytes32-
  398. :TimelockController-isOperationDone: pass:normal[xref:governance.adoc#TimelockController-isOperationDone-bytes32-[`TimelockController.isOperationDone`]]
  399. :xref-TimelockController-isOperationDone-bytes32-: xref:governance.adoc#TimelockController-isOperationDone-bytes32-
  400. :TimelockController-getTimestamp: pass:normal[xref:governance.adoc#TimelockController-getTimestamp-bytes32-[`TimelockController.getTimestamp`]]
  401. :xref-TimelockController-getTimestamp-bytes32-: xref:governance.adoc#TimelockController-getTimestamp-bytes32-
  402. :TimelockController-getMinDelay: pass:normal[xref:governance.adoc#TimelockController-getMinDelay--[`TimelockController.getMinDelay`]]
  403. :xref-TimelockController-getMinDelay--: xref:governance.adoc#TimelockController-getMinDelay--
  404. :TimelockController-hashOperation: pass:normal[xref:governance.adoc#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-[`TimelockController.hashOperation`]]
  405. :xref-TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-: xref:governance.adoc#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-
  406. :TimelockController-hashOperationBatch: pass:normal[xref:governance.adoc#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-[`TimelockController.hashOperationBatch`]]
  407. :xref-TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-: xref:governance.adoc#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-
  408. :TimelockController-schedule: pass:normal[xref:governance.adoc#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-[`TimelockController.schedule`]]
  409. :xref-TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-: xref:governance.adoc#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-
  410. :TimelockController-scheduleBatch: pass:normal[xref:governance.adoc#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-[`TimelockController.scheduleBatch`]]
  411. :xref-TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-: xref:governance.adoc#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-
  412. :TimelockController-cancel: pass:normal[xref:governance.adoc#TimelockController-cancel-bytes32-[`TimelockController.cancel`]]
  413. :xref-TimelockController-cancel-bytes32-: xref:governance.adoc#TimelockController-cancel-bytes32-
  414. :TimelockController-execute: pass:normal[xref:governance.adoc#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-[`TimelockController.execute`]]
  415. :xref-TimelockController-execute-address-uint256-bytes-bytes32-bytes32-: xref:governance.adoc#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-
  416. :TimelockController-executeBatch: pass:normal[xref:governance.adoc#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-[`TimelockController.executeBatch`]]
  417. :xref-TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-: xref:governance.adoc#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-
  418. :TimelockController-_execute: pass:normal[xref:governance.adoc#TimelockController-_execute-address-uint256-bytes-[`TimelockController._execute`]]
  419. :xref-TimelockController-_execute-address-uint256-bytes-: xref:governance.adoc#TimelockController-_execute-address-uint256-bytes-
  420. :TimelockController-updateDelay: pass:normal[xref:governance.adoc#TimelockController-updateDelay-uint256-[`TimelockController.updateDelay`]]
  421. :xref-TimelockController-updateDelay-uint256-: xref:governance.adoc#TimelockController-updateDelay-uint256-
  422. :TimelockController-onERC721Received: pass:normal[xref:governance.adoc#TimelockController-onERC721Received-address-address-uint256-bytes-[`TimelockController.onERC721Received`]]
  423. :xref-TimelockController-onERC721Received-address-address-uint256-bytes-: xref:governance.adoc#TimelockController-onERC721Received-address-address-uint256-bytes-
  424. :TimelockController-onERC1155Received: pass:normal[xref:governance.adoc#TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-[`TimelockController.onERC1155Received`]]
  425. :xref-TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-: xref:governance.adoc#TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-
  426. :TimelockController-onERC1155BatchReceived: pass:normal[xref:governance.adoc#TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`TimelockController.onERC1155BatchReceived`]]
  427. :xref-TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:governance.adoc#TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  428. :TimelockController-CallScheduled: pass:normal[xref:governance.adoc#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-[`TimelockController.CallScheduled`]]
  429. :xref-TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-: xref:governance.adoc#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-
  430. :TimelockController-CallExecuted: pass:normal[xref:governance.adoc#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-[`TimelockController.CallExecuted`]]
  431. :xref-TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-: xref:governance.adoc#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-
  432. :TimelockController-Cancelled: pass:normal[xref:governance.adoc#TimelockController-Cancelled-bytes32-[`TimelockController.Cancelled`]]
  433. :xref-TimelockController-Cancelled-bytes32-: xref:governance.adoc#TimelockController-Cancelled-bytes32-
  434. :TimelockController-MinDelayChange: pass:normal[xref:governance.adoc#TimelockController-MinDelayChange-uint256-uint256-[`TimelockController.MinDelayChange`]]
  435. :xref-TimelockController-MinDelayChange-uint256-uint256-: xref:governance.adoc#TimelockController-MinDelayChange-uint256-uint256-
  436. :GovernorCompatibilityBravo: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo[`GovernorCompatibilityBravo`]]
  437. :xref-GovernorCompatibilityBravo: xref:governance.adoc#GovernorCompatibilityBravo
  438. :GovernorCompatibilityBravo-COUNTING_MODE: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-COUNTING_MODE--[`GovernorCompatibilityBravo.COUNTING_MODE`]]
  439. :xref-GovernorCompatibilityBravo-COUNTING_MODE--: xref:governance.adoc#GovernorCompatibilityBravo-COUNTING_MODE--
  440. :GovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-[`GovernorCompatibilityBravo.propose`]]
  441. :xref-GovernorCompatibilityBravo-propose-address---uint256---bytes---string-: xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-
  442. :GovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`GovernorCompatibilityBravo.propose`]]
  443. :xref-GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-: xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-
  444. :GovernorCompatibilityBravo-queue: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-queue-uint256-[`GovernorCompatibilityBravo.queue`]]
  445. :xref-GovernorCompatibilityBravo-queue-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-queue-uint256-
  446. :GovernorCompatibilityBravo-execute: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-execute-uint256-[`GovernorCompatibilityBravo.execute`]]
  447. :xref-GovernorCompatibilityBravo-execute-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-execute-uint256-
  448. :GovernorCompatibilityBravo-cancel: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-cancel-uint256-[`GovernorCompatibilityBravo.cancel`]]
  449. :xref-GovernorCompatibilityBravo-cancel-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-cancel-uint256-
  450. :GovernorCompatibilityBravo-proposals: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-proposals-uint256-[`GovernorCompatibilityBravo.proposals`]]
  451. :xref-GovernorCompatibilityBravo-proposals-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-proposals-uint256-
  452. :GovernorCompatibilityBravo-getActions: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-getActions-uint256-[`GovernorCompatibilityBravo.getActions`]]
  453. :xref-GovernorCompatibilityBravo-getActions-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-getActions-uint256-
  454. :GovernorCompatibilityBravo-getReceipt: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-getReceipt-uint256-address-[`GovernorCompatibilityBravo.getReceipt`]]
  455. :xref-GovernorCompatibilityBravo-getReceipt-uint256-address-: xref:governance.adoc#GovernorCompatibilityBravo-getReceipt-uint256-address-
  456. :GovernorCompatibilityBravo-quorumVotes: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-quorumVotes--[`GovernorCompatibilityBravo.quorumVotes`]]
  457. :xref-GovernorCompatibilityBravo-quorumVotes--: xref:governance.adoc#GovernorCompatibilityBravo-quorumVotes--
  458. :GovernorCompatibilityBravo-hasVoted: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-hasVoted-uint256-address-[`GovernorCompatibilityBravo.hasVoted`]]
  459. :xref-GovernorCompatibilityBravo-hasVoted-uint256-address-: xref:governance.adoc#GovernorCompatibilityBravo-hasVoted-uint256-address-
  460. :GovernorCompatibilityBravo-_quorumReached: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_quorumReached-uint256-[`GovernorCompatibilityBravo._quorumReached`]]
  461. :xref-GovernorCompatibilityBravo-_quorumReached-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-_quorumReached-uint256-
  462. :GovernorCompatibilityBravo-_voteSucceeded: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_voteSucceeded-uint256-[`GovernorCompatibilityBravo._voteSucceeded`]]
  463. :xref-GovernorCompatibilityBravo-_voteSucceeded-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-_voteSucceeded-uint256-
  464. :GovernorCompatibilityBravo-_countVote: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-[`GovernorCompatibilityBravo._countVote`]]
  465. :xref-GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-: xref:governance.adoc#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-
  466. :GovernorCompatibilityBravo-ProposalDetails: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-ProposalDetails[`GovernorCompatibilityBravo.ProposalDetails`]]
  467. :xref-GovernorCompatibilityBravo-ProposalDetails: xref:governance.adoc#GovernorCompatibilityBravo-ProposalDetails
  468. :GovernorCompatibilityBravo-VoteType: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-VoteType[`GovernorCompatibilityBravo.VoteType`]]
  469. :xref-GovernorCompatibilityBravo-VoteType: xref:governance.adoc#GovernorCompatibilityBravo-VoteType
  470. :IGovernorCompatibilityBravo: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo[`IGovernorCompatibilityBravo`]]
  471. :xref-IGovernorCompatibilityBravo: xref:governance.adoc#IGovernorCompatibilityBravo
  472. :IGovernorCompatibilityBravo-quorumVotes: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-quorumVotes--[`IGovernorCompatibilityBravo.quorumVotes`]]
  473. :xref-IGovernorCompatibilityBravo-quorumVotes--: xref:governance.adoc#IGovernorCompatibilityBravo-quorumVotes--
  474. :IGovernorCompatibilityBravo-proposals: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-proposals-uint256-[`IGovernorCompatibilityBravo.proposals`]]
  475. :xref-IGovernorCompatibilityBravo-proposals-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-proposals-uint256-
  476. :IGovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`IGovernorCompatibilityBravo.propose`]]
  477. :xref-IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-: xref:governance.adoc#IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-
  478. :IGovernorCompatibilityBravo-queue: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-queue-uint256-[`IGovernorCompatibilityBravo.queue`]]
  479. :xref-IGovernorCompatibilityBravo-queue-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-queue-uint256-
  480. :IGovernorCompatibilityBravo-execute: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-execute-uint256-[`IGovernorCompatibilityBravo.execute`]]
  481. :xref-IGovernorCompatibilityBravo-execute-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-execute-uint256-
  482. :IGovernorCompatibilityBravo-cancel: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-cancel-uint256-[`IGovernorCompatibilityBravo.cancel`]]
  483. :xref-IGovernorCompatibilityBravo-cancel-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-cancel-uint256-
  484. :IGovernorCompatibilityBravo-getActions: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-getActions-uint256-[`IGovernorCompatibilityBravo.getActions`]]
  485. :xref-IGovernorCompatibilityBravo-getActions-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-getActions-uint256-
  486. :IGovernorCompatibilityBravo-getReceipt: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-getReceipt-uint256-address-[`IGovernorCompatibilityBravo.getReceipt`]]
  487. :xref-IGovernorCompatibilityBravo-getReceipt-uint256-address-: xref:governance.adoc#IGovernorCompatibilityBravo-getReceipt-uint256-address-
  488. :IGovernorCompatibilityBravo-Proposal: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-Proposal[`IGovernorCompatibilityBravo.Proposal`]]
  489. :xref-IGovernorCompatibilityBravo-Proposal: xref:governance.adoc#IGovernorCompatibilityBravo-Proposal
  490. :IGovernorCompatibilityBravo-Receipt: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-Receipt[`IGovernorCompatibilityBravo.Receipt`]]
  491. :xref-IGovernorCompatibilityBravo-Receipt: xref:governance.adoc#IGovernorCompatibilityBravo-Receipt
  492. :GovernorCountingSimple: pass:normal[xref:governance.adoc#GovernorCountingSimple[`GovernorCountingSimple`]]
  493. :xref-GovernorCountingSimple: xref:governance.adoc#GovernorCountingSimple
  494. :GovernorCountingSimple-COUNTING_MODE: pass:normal[xref:governance.adoc#GovernorCountingSimple-COUNTING_MODE--[`GovernorCountingSimple.COUNTING_MODE`]]
  495. :xref-GovernorCountingSimple-COUNTING_MODE--: xref:governance.adoc#GovernorCountingSimple-COUNTING_MODE--
  496. :GovernorCountingSimple-hasVoted: pass:normal[xref:governance.adoc#GovernorCountingSimple-hasVoted-uint256-address-[`GovernorCountingSimple.hasVoted`]]
  497. :xref-GovernorCountingSimple-hasVoted-uint256-address-: xref:governance.adoc#GovernorCountingSimple-hasVoted-uint256-address-
  498. :GovernorCountingSimple-proposalVotes: pass:normal[xref:governance.adoc#GovernorCountingSimple-proposalVotes-uint256-[`GovernorCountingSimple.proposalVotes`]]
  499. :xref-GovernorCountingSimple-proposalVotes-uint256-: xref:governance.adoc#GovernorCountingSimple-proposalVotes-uint256-
  500. :GovernorCountingSimple-_quorumReached: pass:normal[xref:governance.adoc#GovernorCountingSimple-_quorumReached-uint256-[`GovernorCountingSimple._quorumReached`]]
  501. :xref-GovernorCountingSimple-_quorumReached-uint256-: xref:governance.adoc#GovernorCountingSimple-_quorumReached-uint256-
  502. :GovernorCountingSimple-_voteSucceeded: pass:normal[xref:governance.adoc#GovernorCountingSimple-_voteSucceeded-uint256-[`GovernorCountingSimple._voteSucceeded`]]
  503. :xref-GovernorCountingSimple-_voteSucceeded-uint256-: xref:governance.adoc#GovernorCountingSimple-_voteSucceeded-uint256-
  504. :GovernorCountingSimple-_countVote: pass:normal[xref:governance.adoc#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-[`GovernorCountingSimple._countVote`]]
  505. :xref-GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-: xref:governance.adoc#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-
  506. :GovernorCountingSimple-ProposalVote: pass:normal[xref:governance.adoc#GovernorCountingSimple-ProposalVote[`GovernorCountingSimple.ProposalVote`]]
  507. :xref-GovernorCountingSimple-ProposalVote: xref:governance.adoc#GovernorCountingSimple-ProposalVote
  508. :GovernorCountingSimple-VoteType: pass:normal[xref:governance.adoc#GovernorCountingSimple-VoteType[`GovernorCountingSimple.VoteType`]]
  509. :xref-GovernorCountingSimple-VoteType: xref:governance.adoc#GovernorCountingSimple-VoteType
  510. :GovernorPreventLateQuorum: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum[`GovernorPreventLateQuorum`]]
  511. :xref-GovernorPreventLateQuorum: xref:governance.adoc#GovernorPreventLateQuorum
  512. :GovernorPreventLateQuorum-constructor: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-constructor-uint64-[`GovernorPreventLateQuorum.constructor`]]
  513. :xref-GovernorPreventLateQuorum-constructor-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-constructor-uint64-
  514. :GovernorPreventLateQuorum-proposalDeadline: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-proposalDeadline-uint256-[`GovernorPreventLateQuorum.proposalDeadline`]]
  515. :xref-GovernorPreventLateQuorum-proposalDeadline-uint256-: xref:governance.adoc#GovernorPreventLateQuorum-proposalDeadline-uint256-
  516. :GovernorPreventLateQuorum-_castVote: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-[`GovernorPreventLateQuorum._castVote`]]
  517. :xref-GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-: xref:governance.adoc#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-
  518. :GovernorPreventLateQuorum-lateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-lateQuorumVoteExtension--[`GovernorPreventLateQuorum.lateQuorumVoteExtension`]]
  519. :xref-GovernorPreventLateQuorum-lateQuorumVoteExtension--: xref:governance.adoc#GovernorPreventLateQuorum-lateQuorumVoteExtension--
  520. :GovernorPreventLateQuorum-setLateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-[`GovernorPreventLateQuorum.setLateQuorumVoteExtension`]]
  521. :xref-GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-
  522. :GovernorPreventLateQuorum-_setLateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-[`GovernorPreventLateQuorum._setLateQuorumVoteExtension`]]
  523. :xref-GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-
  524. :GovernorPreventLateQuorum-ProposalExtended: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-[`GovernorPreventLateQuorum.ProposalExtended`]]
  525. :xref-GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-
  526. :GovernorPreventLateQuorum-LateQuorumVoteExtensionSet: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-[`GovernorPreventLateQuorum.LateQuorumVoteExtensionSet`]]
  527. :xref-GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-
  528. :GovernorProposalThreshold: pass:normal[xref:governance.adoc#GovernorProposalThreshold[`GovernorProposalThreshold`]]
  529. :xref-GovernorProposalThreshold: xref:governance.adoc#GovernorProposalThreshold
  530. :GovernorProposalThreshold-propose: pass:normal[xref:governance.adoc#GovernorProposalThreshold-propose-address---uint256---bytes---string-[`GovernorProposalThreshold.propose`]]
  531. :xref-GovernorProposalThreshold-propose-address---uint256---bytes---string-: xref:governance.adoc#GovernorProposalThreshold-propose-address---uint256---bytes---string-
  532. :GovernorSettings: pass:normal[xref:governance.adoc#GovernorSettings[`GovernorSettings`]]
  533. :xref-GovernorSettings: xref:governance.adoc#GovernorSettings
  534. :GovernorSettings-constructor: pass:normal[xref:governance.adoc#GovernorSettings-constructor-uint256-uint256-uint256-[`GovernorSettings.constructor`]]
  535. :xref-GovernorSettings-constructor-uint256-uint256-uint256-: xref:governance.adoc#GovernorSettings-constructor-uint256-uint256-uint256-
  536. :GovernorSettings-votingDelay: pass:normal[xref:governance.adoc#GovernorSettings-votingDelay--[`GovernorSettings.votingDelay`]]
  537. :xref-GovernorSettings-votingDelay--: xref:governance.adoc#GovernorSettings-votingDelay--
  538. :GovernorSettings-votingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-votingPeriod--[`GovernorSettings.votingPeriod`]]
  539. :xref-GovernorSettings-votingPeriod--: xref:governance.adoc#GovernorSettings-votingPeriod--
  540. :GovernorSettings-proposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-proposalThreshold--[`GovernorSettings.proposalThreshold`]]
  541. :xref-GovernorSettings-proposalThreshold--: xref:governance.adoc#GovernorSettings-proposalThreshold--
  542. :GovernorSettings-setVotingDelay: pass:normal[xref:governance.adoc#GovernorSettings-setVotingDelay-uint256-[`GovernorSettings.setVotingDelay`]]
  543. :xref-GovernorSettings-setVotingDelay-uint256-: xref:governance.adoc#GovernorSettings-setVotingDelay-uint256-
  544. :GovernorSettings-setVotingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-setVotingPeriod-uint256-[`GovernorSettings.setVotingPeriod`]]
  545. :xref-GovernorSettings-setVotingPeriod-uint256-: xref:governance.adoc#GovernorSettings-setVotingPeriod-uint256-
  546. :GovernorSettings-setProposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-setProposalThreshold-uint256-[`GovernorSettings.setProposalThreshold`]]
  547. :xref-GovernorSettings-setProposalThreshold-uint256-: xref:governance.adoc#GovernorSettings-setProposalThreshold-uint256-
  548. :GovernorSettings-_setVotingDelay: pass:normal[xref:governance.adoc#GovernorSettings-_setVotingDelay-uint256-[`GovernorSettings._setVotingDelay`]]
  549. :xref-GovernorSettings-_setVotingDelay-uint256-: xref:governance.adoc#GovernorSettings-_setVotingDelay-uint256-
  550. :GovernorSettings-_setVotingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-_setVotingPeriod-uint256-[`GovernorSettings._setVotingPeriod`]]
  551. :xref-GovernorSettings-_setVotingPeriod-uint256-: xref:governance.adoc#GovernorSettings-_setVotingPeriod-uint256-
  552. :GovernorSettings-_setProposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-_setProposalThreshold-uint256-[`GovernorSettings._setProposalThreshold`]]
  553. :xref-GovernorSettings-_setProposalThreshold-uint256-: xref:governance.adoc#GovernorSettings-_setProposalThreshold-uint256-
  554. :GovernorSettings-VotingDelaySet: pass:normal[xref:governance.adoc#GovernorSettings-VotingDelaySet-uint256-uint256-[`GovernorSettings.VotingDelaySet`]]
  555. :xref-GovernorSettings-VotingDelaySet-uint256-uint256-: xref:governance.adoc#GovernorSettings-VotingDelaySet-uint256-uint256-
  556. :GovernorSettings-VotingPeriodSet: pass:normal[xref:governance.adoc#GovernorSettings-VotingPeriodSet-uint256-uint256-[`GovernorSettings.VotingPeriodSet`]]
  557. :xref-GovernorSettings-VotingPeriodSet-uint256-uint256-: xref:governance.adoc#GovernorSettings-VotingPeriodSet-uint256-uint256-
  558. :GovernorSettings-ProposalThresholdSet: pass:normal[xref:governance.adoc#GovernorSettings-ProposalThresholdSet-uint256-uint256-[`GovernorSettings.ProposalThresholdSet`]]
  559. :xref-GovernorSettings-ProposalThresholdSet-uint256-uint256-: xref:governance.adoc#GovernorSettings-ProposalThresholdSet-uint256-uint256-
  560. :GovernorTimelockCompound: pass:normal[xref:governance.adoc#GovernorTimelockCompound[`GovernorTimelockCompound`]]
  561. :xref-GovernorTimelockCompound: xref:governance.adoc#GovernorTimelockCompound
  562. :GovernorTimelockCompound-constructor: pass:normal[xref:governance.adoc#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-[`GovernorTimelockCompound.constructor`]]
  563. :xref-GovernorTimelockCompound-constructor-contract-ICompoundTimelock-: xref:governance.adoc#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-
  564. :GovernorTimelockCompound-supportsInterface: pass:normal[xref:governance.adoc#GovernorTimelockCompound-supportsInterface-bytes4-[`GovernorTimelockCompound.supportsInterface`]]
  565. :xref-GovernorTimelockCompound-supportsInterface-bytes4-: xref:governance.adoc#GovernorTimelockCompound-supportsInterface-bytes4-
  566. :GovernorTimelockCompound-state: pass:normal[xref:governance.adoc#GovernorTimelockCompound-state-uint256-[`GovernorTimelockCompound.state`]]
  567. :xref-GovernorTimelockCompound-state-uint256-: xref:governance.adoc#GovernorTimelockCompound-state-uint256-
  568. :GovernorTimelockCompound-timelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-timelock--[`GovernorTimelockCompound.timelock`]]
  569. :xref-GovernorTimelockCompound-timelock--: xref:governance.adoc#GovernorTimelockCompound-timelock--
  570. :GovernorTimelockCompound-proposalEta: pass:normal[xref:governance.adoc#GovernorTimelockCompound-proposalEta-uint256-[`GovernorTimelockCompound.proposalEta`]]
  571. :xref-GovernorTimelockCompound-proposalEta-uint256-: xref:governance.adoc#GovernorTimelockCompound-proposalEta-uint256-
  572. :GovernorTimelockCompound-queue: pass:normal[xref:governance.adoc#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-[`GovernorTimelockCompound.queue`]]
  573. :xref-GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-
  574. :GovernorTimelockCompound-_execute: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-[`GovernorTimelockCompound._execute`]]
  575. :xref-GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-
  576. :GovernorTimelockCompound-_cancel: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-[`GovernorTimelockCompound._cancel`]]
  577. :xref-GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-
  578. :GovernorTimelockCompound-_executor: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_executor--[`GovernorTimelockCompound._executor`]]
  579. :xref-GovernorTimelockCompound-_executor--: xref:governance.adoc#GovernorTimelockCompound-_executor--
  580. :GovernorTimelockCompound-__acceptAdmin: pass:normal[xref:governance.adoc#GovernorTimelockCompound-__acceptAdmin--[`GovernorTimelockCompound.__acceptAdmin`]]
  581. :xref-GovernorTimelockCompound-__acceptAdmin--: xref:governance.adoc#GovernorTimelockCompound-__acceptAdmin--
  582. :GovernorTimelockCompound-updateTimelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-[`GovernorTimelockCompound.updateTimelock`]]
  583. :xref-GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-: xref:governance.adoc#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-
  584. :GovernorTimelockCompound-TimelockChange: pass:normal[xref:governance.adoc#GovernorTimelockCompound-TimelockChange-address-address-[`GovernorTimelockCompound.TimelockChange`]]
  585. :xref-GovernorTimelockCompound-TimelockChange-address-address-: xref:governance.adoc#GovernorTimelockCompound-TimelockChange-address-address-
  586. :GovernorTimelockCompound-ProposalTimelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-ProposalTimelock[`GovernorTimelockCompound.ProposalTimelock`]]
  587. :xref-GovernorTimelockCompound-ProposalTimelock: xref:governance.adoc#GovernorTimelockCompound-ProposalTimelock
  588. :GovernorTimelockControl: pass:normal[xref:governance.adoc#GovernorTimelockControl[`GovernorTimelockControl`]]
  589. :xref-GovernorTimelockControl: xref:governance.adoc#GovernorTimelockControl
  590. :GovernorTimelockControl-constructor: pass:normal[xref:governance.adoc#GovernorTimelockControl-constructor-contract-TimelockController-[`GovernorTimelockControl.constructor`]]
  591. :xref-GovernorTimelockControl-constructor-contract-TimelockController-: xref:governance.adoc#GovernorTimelockControl-constructor-contract-TimelockController-
  592. :GovernorTimelockControl-supportsInterface: pass:normal[xref:governance.adoc#GovernorTimelockControl-supportsInterface-bytes4-[`GovernorTimelockControl.supportsInterface`]]
  593. :xref-GovernorTimelockControl-supportsInterface-bytes4-: xref:governance.adoc#GovernorTimelockControl-supportsInterface-bytes4-
  594. :GovernorTimelockControl-state: pass:normal[xref:governance.adoc#GovernorTimelockControl-state-uint256-[`GovernorTimelockControl.state`]]
  595. :xref-GovernorTimelockControl-state-uint256-: xref:governance.adoc#GovernorTimelockControl-state-uint256-
  596. :GovernorTimelockControl-timelock: pass:normal[xref:governance.adoc#GovernorTimelockControl-timelock--[`GovernorTimelockControl.timelock`]]
  597. :xref-GovernorTimelockControl-timelock--: xref:governance.adoc#GovernorTimelockControl-timelock--
  598. :GovernorTimelockControl-proposalEta: pass:normal[xref:governance.adoc#GovernorTimelockControl-proposalEta-uint256-[`GovernorTimelockControl.proposalEta`]]
  599. :xref-GovernorTimelockControl-proposalEta-uint256-: xref:governance.adoc#GovernorTimelockControl-proposalEta-uint256-
  600. :GovernorTimelockControl-queue: pass:normal[xref:governance.adoc#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-[`GovernorTimelockControl.queue`]]
  601. :xref-GovernorTimelockControl-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-
  602. :GovernorTimelockControl-_execute: pass:normal[xref:governance.adoc#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-[`GovernorTimelockControl._execute`]]
  603. :xref-GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-
  604. :GovernorTimelockControl-_cancel: pass:normal[xref:governance.adoc#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-[`GovernorTimelockControl._cancel`]]
  605. :xref-GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-
  606. :GovernorTimelockControl-_executor: pass:normal[xref:governance.adoc#GovernorTimelockControl-_executor--[`GovernorTimelockControl._executor`]]
  607. :xref-GovernorTimelockControl-_executor--: xref:governance.adoc#GovernorTimelockControl-_executor--
  608. :GovernorTimelockControl-updateTimelock: pass:normal[xref:governance.adoc#GovernorTimelockControl-updateTimelock-contract-TimelockController-[`GovernorTimelockControl.updateTimelock`]]
  609. :xref-GovernorTimelockControl-updateTimelock-contract-TimelockController-: xref:governance.adoc#GovernorTimelockControl-updateTimelock-contract-TimelockController-
  610. :GovernorTimelockControl-TimelockChange: pass:normal[xref:governance.adoc#GovernorTimelockControl-TimelockChange-address-address-[`GovernorTimelockControl.TimelockChange`]]
  611. :xref-GovernorTimelockControl-TimelockChange-address-address-: xref:governance.adoc#GovernorTimelockControl-TimelockChange-address-address-
  612. :GovernorVotes: pass:normal[xref:governance.adoc#GovernorVotes[`GovernorVotes`]]
  613. :xref-GovernorVotes: xref:governance.adoc#GovernorVotes
  614. :GovernorVotes-token: pass:normal[xref:governance.adoc#GovernorVotes-token-contract-IVotes[`GovernorVotes.token`]]
  615. :xref-GovernorVotes-token-contract-IVotes: xref:governance.adoc#GovernorVotes-token-contract-IVotes
  616. :GovernorVotes-constructor: pass:normal[xref:governance.adoc#GovernorVotes-constructor-contract-IVotes-[`GovernorVotes.constructor`]]
  617. :xref-GovernorVotes-constructor-contract-IVotes-: xref:governance.adoc#GovernorVotes-constructor-contract-IVotes-
  618. :GovernorVotes-_getVotes: pass:normal[xref:governance.adoc#GovernorVotes-_getVotes-address-uint256-bytes-[`GovernorVotes._getVotes`]]
  619. :xref-GovernorVotes-_getVotes-address-uint256-bytes-: xref:governance.adoc#GovernorVotes-_getVotes-address-uint256-bytes-
  620. :GovernorVotesComp: pass:normal[xref:governance.adoc#GovernorVotesComp[`GovernorVotesComp`]]
  621. :xref-GovernorVotesComp: xref:governance.adoc#GovernorVotesComp
  622. :GovernorVotesComp-token: pass:normal[xref:governance.adoc#GovernorVotesComp-token-contract-ERC20VotesComp[`GovernorVotesComp.token`]]
  623. :xref-GovernorVotesComp-token-contract-ERC20VotesComp: xref:governance.adoc#GovernorVotesComp-token-contract-ERC20VotesComp
  624. :GovernorVotesComp-constructor: pass:normal[xref:governance.adoc#GovernorVotesComp-constructor-contract-ERC20VotesComp-[`GovernorVotesComp.constructor`]]
  625. :xref-GovernorVotesComp-constructor-contract-ERC20VotesComp-: xref:governance.adoc#GovernorVotesComp-constructor-contract-ERC20VotesComp-
  626. :GovernorVotesComp-_getVotes: pass:normal[xref:governance.adoc#GovernorVotesComp-_getVotes-address-uint256-bytes-[`GovernorVotesComp._getVotes`]]
  627. :xref-GovernorVotesComp-_getVotes-address-uint256-bytes-: xref:governance.adoc#GovernorVotesComp-_getVotes-address-uint256-bytes-
  628. :GovernorVotesQuorumFraction: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction[`GovernorVotesQuorumFraction`]]
  629. :xref-GovernorVotesQuorumFraction: xref:governance.adoc#GovernorVotesQuorumFraction
  630. :GovernorVotesQuorumFraction-constructor: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-constructor-uint256-[`GovernorVotesQuorumFraction.constructor`]]
  631. :xref-GovernorVotesQuorumFraction-constructor-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-constructor-uint256-
  632. :GovernorVotesQuorumFraction-quorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator--[`GovernorVotesQuorumFraction.quorumNumerator`]]
  633. :xref-GovernorVotesQuorumFraction-quorumNumerator--: xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator--
  634. :GovernorVotesQuorumFraction-quorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator-uint256-[`GovernorVotesQuorumFraction.quorumNumerator`]]
  635. :xref-GovernorVotesQuorumFraction-quorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator-uint256-
  636. :GovernorVotesQuorumFraction-quorumDenominator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumDenominator--[`GovernorVotesQuorumFraction.quorumDenominator`]]
  637. :xref-GovernorVotesQuorumFraction-quorumDenominator--: xref:governance.adoc#GovernorVotesQuorumFraction-quorumDenominator--
  638. :GovernorVotesQuorumFraction-quorum: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorum-uint256-[`GovernorVotesQuorumFraction.quorum`]]
  639. :xref-GovernorVotesQuorumFraction-quorum-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-quorum-uint256-
  640. :GovernorVotesQuorumFraction-updateQuorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-[`GovernorVotesQuorumFraction.updateQuorumNumerator`]]
  641. :xref-GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-
  642. :GovernorVotesQuorumFraction-_updateQuorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-[`GovernorVotesQuorumFraction._updateQuorumNumerator`]]
  643. :xref-GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-
  644. :GovernorVotesQuorumFraction-QuorumNumeratorUpdated: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-[`GovernorVotesQuorumFraction.QuorumNumeratorUpdated`]]
  645. :xref-GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-
  646. :IGovernorTimelock: pass:normal[xref:governance.adoc#IGovernorTimelock[`IGovernorTimelock`]]
  647. :xref-IGovernorTimelock: xref:governance.adoc#IGovernorTimelock
  648. :IGovernorTimelock-timelock: pass:normal[xref:governance.adoc#IGovernorTimelock-timelock--[`IGovernorTimelock.timelock`]]
  649. :xref-IGovernorTimelock-timelock--: xref:governance.adoc#IGovernorTimelock-timelock--
  650. :IGovernorTimelock-proposalEta: pass:normal[xref:governance.adoc#IGovernorTimelock-proposalEta-uint256-[`IGovernorTimelock.proposalEta`]]
  651. :xref-IGovernorTimelock-proposalEta-uint256-: xref:governance.adoc#IGovernorTimelock-proposalEta-uint256-
  652. :IGovernorTimelock-queue: pass:normal[xref:governance.adoc#IGovernorTimelock-queue-address---uint256---bytes---bytes32-[`IGovernorTimelock.queue`]]
  653. :xref-IGovernorTimelock-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernorTimelock-queue-address---uint256---bytes---bytes32-
  654. :IGovernorTimelock-ProposalQueued: pass:normal[xref:governance.adoc#IGovernorTimelock-ProposalQueued-uint256-uint256-[`IGovernorTimelock.ProposalQueued`]]
  655. :xref-IGovernorTimelock-ProposalQueued-uint256-uint256-: xref:governance.adoc#IGovernorTimelock-ProposalQueued-uint256-uint256-
  656. :IVotes: pass:normal[xref:governance.adoc#IVotes[`IVotes`]]
  657. :xref-IVotes: xref:governance.adoc#IVotes
  658. :IVotes-getVotes: pass:normal[xref:governance.adoc#IVotes-getVotes-address-[`IVotes.getVotes`]]
  659. :xref-IVotes-getVotes-address-: xref:governance.adoc#IVotes-getVotes-address-
  660. :IVotes-getPastVotes: pass:normal[xref:governance.adoc#IVotes-getPastVotes-address-uint256-[`IVotes.getPastVotes`]]
  661. :xref-IVotes-getPastVotes-address-uint256-: xref:governance.adoc#IVotes-getPastVotes-address-uint256-
  662. :IVotes-getPastTotalSupply: pass:normal[xref:governance.adoc#IVotes-getPastTotalSupply-uint256-[`IVotes.getPastTotalSupply`]]
  663. :xref-IVotes-getPastTotalSupply-uint256-: xref:governance.adoc#IVotes-getPastTotalSupply-uint256-
  664. :IVotes-delegates: pass:normal[xref:governance.adoc#IVotes-delegates-address-[`IVotes.delegates`]]
  665. :xref-IVotes-delegates-address-: xref:governance.adoc#IVotes-delegates-address-
  666. :IVotes-delegate: pass:normal[xref:governance.adoc#IVotes-delegate-address-[`IVotes.delegate`]]
  667. :xref-IVotes-delegate-address-: xref:governance.adoc#IVotes-delegate-address-
  668. :IVotes-delegateBySig: pass:normal[xref:governance.adoc#IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`IVotes.delegateBySig`]]
  669. :xref-IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:governance.adoc#IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  670. :IVotes-DelegateChanged: pass:normal[xref:governance.adoc#IVotes-DelegateChanged-address-address-address-[`IVotes.DelegateChanged`]]
  671. :xref-IVotes-DelegateChanged-address-address-address-: xref:governance.adoc#IVotes-DelegateChanged-address-address-address-
  672. :IVotes-DelegateVotesChanged: pass:normal[xref:governance.adoc#IVotes-DelegateVotesChanged-address-uint256-uint256-[`IVotes.DelegateVotesChanged`]]
  673. :xref-IVotes-DelegateVotesChanged-address-uint256-uint256-: xref:governance.adoc#IVotes-DelegateVotesChanged-address-uint256-uint256-
  674. :Votes: pass:normal[xref:governance.adoc#Votes[`Votes`]]
  675. :xref-Votes: xref:governance.adoc#Votes
  676. :Votes-getVotes: pass:normal[xref:governance.adoc#Votes-getVotes-address-[`Votes.getVotes`]]
  677. :xref-Votes-getVotes-address-: xref:governance.adoc#Votes-getVotes-address-
  678. :Votes-getPastVotes: pass:normal[xref:governance.adoc#Votes-getPastVotes-address-uint256-[`Votes.getPastVotes`]]
  679. :xref-Votes-getPastVotes-address-uint256-: xref:governance.adoc#Votes-getPastVotes-address-uint256-
  680. :Votes-getPastTotalSupply: pass:normal[xref:governance.adoc#Votes-getPastTotalSupply-uint256-[`Votes.getPastTotalSupply`]]
  681. :xref-Votes-getPastTotalSupply-uint256-: xref:governance.adoc#Votes-getPastTotalSupply-uint256-
  682. :Votes-_getTotalSupply: pass:normal[xref:governance.adoc#Votes-_getTotalSupply--[`Votes._getTotalSupply`]]
  683. :xref-Votes-_getTotalSupply--: xref:governance.adoc#Votes-_getTotalSupply--
  684. :Votes-delegates: pass:normal[xref:governance.adoc#Votes-delegates-address-[`Votes.delegates`]]
  685. :xref-Votes-delegates-address-: xref:governance.adoc#Votes-delegates-address-
  686. :Votes-delegate: pass:normal[xref:governance.adoc#Votes-delegate-address-[`Votes.delegate`]]
  687. :xref-Votes-delegate-address-: xref:governance.adoc#Votes-delegate-address-
  688. :Votes-delegateBySig: pass:normal[xref:governance.adoc#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`Votes.delegateBySig`]]
  689. :xref-Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:governance.adoc#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  690. :Votes-_delegate: pass:normal[xref:governance.adoc#Votes-_delegate-address-address-[`Votes._delegate`]]
  691. :xref-Votes-_delegate-address-address-: xref:governance.adoc#Votes-_delegate-address-address-
  692. :Votes-_transferVotingUnits: pass:normal[xref:governance.adoc#Votes-_transferVotingUnits-address-address-uint256-[`Votes._transferVotingUnits`]]
  693. :xref-Votes-_transferVotingUnits-address-address-uint256-: xref:governance.adoc#Votes-_transferVotingUnits-address-address-uint256-
  694. :Votes-_useNonce: pass:normal[xref:governance.adoc#Votes-_useNonce-address-[`Votes._useNonce`]]
  695. :xref-Votes-_useNonce-address-: xref:governance.adoc#Votes-_useNonce-address-
  696. :Votes-nonces: pass:normal[xref:governance.adoc#Votes-nonces-address-[`Votes.nonces`]]
  697. :xref-Votes-nonces-address-: xref:governance.adoc#Votes-nonces-address-
  698. :Votes-DOMAIN_SEPARATOR: pass:normal[xref:governance.adoc#Votes-DOMAIN_SEPARATOR--[`Votes.DOMAIN_SEPARATOR`]]
  699. :xref-Votes-DOMAIN_SEPARATOR--: xref:governance.adoc#Votes-DOMAIN_SEPARATOR--
  700. :Votes-_getVotingUnits: pass:normal[xref:governance.adoc#Votes-_getVotingUnits-address-[`Votes._getVotingUnits`]]
  701. :xref-Votes-_getVotingUnits-address-: xref:governance.adoc#Votes-_getVotingUnits-address-
  702. :IERC1271: pass:normal[xref:interfaces.adoc#IERC1271[`IERC1271`]]
  703. :xref-IERC1271: xref:interfaces.adoc#IERC1271
  704. :IERC1271-isValidSignature: pass:normal[xref:interfaces.adoc#IERC1271-isValidSignature-bytes32-bytes-[`IERC1271.isValidSignature`]]
  705. :xref-IERC1271-isValidSignature-bytes32-bytes-: xref:interfaces.adoc#IERC1271-isValidSignature-bytes32-bytes-
  706. :IERC1363: pass:normal[xref:interfaces.adoc#IERC1363[`IERC1363`]]
  707. :xref-IERC1363: xref:interfaces.adoc#IERC1363
  708. :IERC1363-transferAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-[`IERC1363.transferAndCall`]]
  709. :xref-IERC1363-transferAndCall-address-uint256-: xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-
  710. :IERC1363-transferAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-bytes-[`IERC1363.transferAndCall`]]
  711. :xref-IERC1363-transferAndCall-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-bytes-
  712. :IERC1363-transferFromAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-[`IERC1363.transferFromAndCall`]]
  713. :xref-IERC1363-transferFromAndCall-address-address-uint256-: xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-
  714. :IERC1363-transferFromAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-bytes-[`IERC1363.transferFromAndCall`]]
  715. :xref-IERC1363-transferFromAndCall-address-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-bytes-
  716. :IERC1363-approveAndCall: pass:normal[xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-[`IERC1363.approveAndCall`]]
  717. :xref-IERC1363-approveAndCall-address-uint256-: xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-
  718. :IERC1363-approveAndCall: pass:normal[xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-bytes-[`IERC1363.approveAndCall`]]
  719. :xref-IERC1363-approveAndCall-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-bytes-
  720. :IERC1363Receiver: pass:normal[xref:interfaces.adoc#IERC1363Receiver[`IERC1363Receiver`]]
  721. :xref-IERC1363Receiver: xref:interfaces.adoc#IERC1363Receiver
  722. :IERC1363Receiver-onTransferReceived: pass:normal[xref:interfaces.adoc#IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-[`IERC1363Receiver.onTransferReceived`]]
  723. :xref-IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-: xref:interfaces.adoc#IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-
  724. :IERC1363Spender: pass:normal[xref:interfaces.adoc#IERC1363Spender[`IERC1363Spender`]]
  725. :xref-IERC1363Spender: xref:interfaces.adoc#IERC1363Spender
  726. :IERC1363Spender-onApprovalReceived: pass:normal[xref:interfaces.adoc#IERC1363Spender-onApprovalReceived-address-uint256-bytes-[`IERC1363Spender.onApprovalReceived`]]
  727. :xref-IERC1363Spender-onApprovalReceived-address-uint256-bytes-: xref:interfaces.adoc#IERC1363Spender-onApprovalReceived-address-uint256-bytes-
  728. :IERC2981: pass:normal[xref:interfaces.adoc#IERC2981[`IERC2981`]]
  729. :xref-IERC2981: xref:interfaces.adoc#IERC2981
  730. :IERC2981-royaltyInfo: pass:normal[xref:interfaces.adoc#IERC2981-royaltyInfo-uint256-uint256-[`IERC2981.royaltyInfo`]]
  731. :xref-IERC2981-royaltyInfo-uint256-uint256-: xref:interfaces.adoc#IERC2981-royaltyInfo-uint256-uint256-
  732. :IERC3156FlashBorrower: pass:normal[xref:interfaces.adoc#IERC3156FlashBorrower[`IERC3156FlashBorrower`]]
  733. :xref-IERC3156FlashBorrower: xref:interfaces.adoc#IERC3156FlashBorrower
  734. :IERC3156FlashBorrower-onFlashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-[`IERC3156FlashBorrower.onFlashLoan`]]
  735. :xref-IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-: xref:interfaces.adoc#IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-
  736. :IERC3156FlashLender: pass:normal[xref:interfaces.adoc#IERC3156FlashLender[`IERC3156FlashLender`]]
  737. :xref-IERC3156FlashLender: xref:interfaces.adoc#IERC3156FlashLender
  738. :IERC3156FlashLender-maxFlashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-maxFlashLoan-address-[`IERC3156FlashLender.maxFlashLoan`]]
  739. :xref-IERC3156FlashLender-maxFlashLoan-address-: xref:interfaces.adoc#IERC3156FlashLender-maxFlashLoan-address-
  740. :IERC3156FlashLender-flashFee: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-flashFee-address-uint256-[`IERC3156FlashLender.flashFee`]]
  741. :xref-IERC3156FlashLender-flashFee-address-uint256-: xref:interfaces.adoc#IERC3156FlashLender-flashFee-address-uint256-
  742. :IERC3156FlashLender-flashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-[`IERC3156FlashLender.flashLoan`]]
  743. :xref-IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-: xref:interfaces.adoc#IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-
  744. :IERC4626: pass:normal[xref:interfaces.adoc#IERC4626[`IERC4626`]]
  745. :xref-IERC4626: xref:interfaces.adoc#IERC4626
  746. :IERC4626-asset: pass:normal[xref:interfaces.adoc#IERC4626-asset--[`IERC4626.asset`]]
  747. :xref-IERC4626-asset--: xref:interfaces.adoc#IERC4626-asset--
  748. :IERC4626-totalAssets: pass:normal[xref:interfaces.adoc#IERC4626-totalAssets--[`IERC4626.totalAssets`]]
  749. :xref-IERC4626-totalAssets--: xref:interfaces.adoc#IERC4626-totalAssets--
  750. :IERC4626-convertToShares: pass:normal[xref:interfaces.adoc#IERC4626-convertToShares-uint256-[`IERC4626.convertToShares`]]
  751. :xref-IERC4626-convertToShares-uint256-: xref:interfaces.adoc#IERC4626-convertToShares-uint256-
  752. :IERC4626-convertToAssets: pass:normal[xref:interfaces.adoc#IERC4626-convertToAssets-uint256-[`IERC4626.convertToAssets`]]
  753. :xref-IERC4626-convertToAssets-uint256-: xref:interfaces.adoc#IERC4626-convertToAssets-uint256-
  754. :IERC4626-maxDeposit: pass:normal[xref:interfaces.adoc#IERC4626-maxDeposit-address-[`IERC4626.maxDeposit`]]
  755. :xref-IERC4626-maxDeposit-address-: xref:interfaces.adoc#IERC4626-maxDeposit-address-
  756. :IERC4626-previewDeposit: pass:normal[xref:interfaces.adoc#IERC4626-previewDeposit-uint256-[`IERC4626.previewDeposit`]]
  757. :xref-IERC4626-previewDeposit-uint256-: xref:interfaces.adoc#IERC4626-previewDeposit-uint256-
  758. :IERC4626-deposit: pass:normal[xref:interfaces.adoc#IERC4626-deposit-uint256-address-[`IERC4626.deposit`]]
  759. :xref-IERC4626-deposit-uint256-address-: xref:interfaces.adoc#IERC4626-deposit-uint256-address-
  760. :IERC4626-maxMint: pass:normal[xref:interfaces.adoc#IERC4626-maxMint-address-[`IERC4626.maxMint`]]
  761. :xref-IERC4626-maxMint-address-: xref:interfaces.adoc#IERC4626-maxMint-address-
  762. :IERC4626-previewMint: pass:normal[xref:interfaces.adoc#IERC4626-previewMint-uint256-[`IERC4626.previewMint`]]
  763. :xref-IERC4626-previewMint-uint256-: xref:interfaces.adoc#IERC4626-previewMint-uint256-
  764. :IERC4626-mint: pass:normal[xref:interfaces.adoc#IERC4626-mint-uint256-address-[`IERC4626.mint`]]
  765. :xref-IERC4626-mint-uint256-address-: xref:interfaces.adoc#IERC4626-mint-uint256-address-
  766. :IERC4626-maxWithdraw: pass:normal[xref:interfaces.adoc#IERC4626-maxWithdraw-address-[`IERC4626.maxWithdraw`]]
  767. :xref-IERC4626-maxWithdraw-address-: xref:interfaces.adoc#IERC4626-maxWithdraw-address-
  768. :IERC4626-previewWithdraw: pass:normal[xref:interfaces.adoc#IERC4626-previewWithdraw-uint256-[`IERC4626.previewWithdraw`]]
  769. :xref-IERC4626-previewWithdraw-uint256-: xref:interfaces.adoc#IERC4626-previewWithdraw-uint256-
  770. :IERC4626-withdraw: pass:normal[xref:interfaces.adoc#IERC4626-withdraw-uint256-address-address-[`IERC4626.withdraw`]]
  771. :xref-IERC4626-withdraw-uint256-address-address-: xref:interfaces.adoc#IERC4626-withdraw-uint256-address-address-
  772. :IERC4626-maxRedeem: pass:normal[xref:interfaces.adoc#IERC4626-maxRedeem-address-[`IERC4626.maxRedeem`]]
  773. :xref-IERC4626-maxRedeem-address-: xref:interfaces.adoc#IERC4626-maxRedeem-address-
  774. :IERC4626-previewRedeem: pass:normal[xref:interfaces.adoc#IERC4626-previewRedeem-uint256-[`IERC4626.previewRedeem`]]
  775. :xref-IERC4626-previewRedeem-uint256-: xref:interfaces.adoc#IERC4626-previewRedeem-uint256-
  776. :IERC4626-redeem: pass:normal[xref:interfaces.adoc#IERC4626-redeem-uint256-address-address-[`IERC4626.redeem`]]
  777. :xref-IERC4626-redeem-uint256-address-address-: xref:interfaces.adoc#IERC4626-redeem-uint256-address-address-
  778. :IERC4626-Deposit: pass:normal[xref:interfaces.adoc#IERC4626-Deposit-address-address-uint256-uint256-[`IERC4626.Deposit`]]
  779. :xref-IERC4626-Deposit-address-address-uint256-uint256-: xref:interfaces.adoc#IERC4626-Deposit-address-address-uint256-uint256-
  780. :IERC4626-Withdraw: pass:normal[xref:interfaces.adoc#IERC4626-Withdraw-address-address-address-uint256-uint256-[`IERC4626.Withdraw`]]
  781. :xref-IERC4626-Withdraw-address-address-address-uint256-uint256-: xref:interfaces.adoc#IERC4626-Withdraw-address-address-address-uint256-uint256-
  782. :IERC1822Proxiable: pass:normal[xref:interfaces.adoc#IERC1822Proxiable[`IERC1822Proxiable`]]
  783. :xref-IERC1822Proxiable: xref:interfaces.adoc#IERC1822Proxiable
  784. :IERC1822Proxiable-proxiableUUID: pass:normal[xref:interfaces.adoc#IERC1822Proxiable-proxiableUUID--[`IERC1822Proxiable.proxiableUUID`]]
  785. :xref-IERC1822Proxiable-proxiableUUID--: xref:interfaces.adoc#IERC1822Proxiable-proxiableUUID--
  786. :IERC2612: pass:normal[xref:interfaces.adoc#IERC2612[`IERC2612`]]
  787. :xref-IERC2612: xref:interfaces.adoc#IERC2612
  788. :ERC2771Context: pass:normal[xref:metatx.adoc#ERC2771Context[`ERC2771Context`]]
  789. :xref-ERC2771Context: xref:metatx.adoc#ERC2771Context
  790. :ERC2771Context-constructor: pass:normal[xref:metatx.adoc#ERC2771Context-constructor-address-[`ERC2771Context.constructor`]]
  791. :xref-ERC2771Context-constructor-address-: xref:metatx.adoc#ERC2771Context-constructor-address-
  792. :ERC2771Context-isTrustedForwarder: pass:normal[xref:metatx.adoc#ERC2771Context-isTrustedForwarder-address-[`ERC2771Context.isTrustedForwarder`]]
  793. :xref-ERC2771Context-isTrustedForwarder-address-: xref:metatx.adoc#ERC2771Context-isTrustedForwarder-address-
  794. :ERC2771Context-_msgSender: pass:normal[xref:metatx.adoc#ERC2771Context-_msgSender--[`ERC2771Context._msgSender`]]
  795. :xref-ERC2771Context-_msgSender--: xref:metatx.adoc#ERC2771Context-_msgSender--
  796. :ERC2771Context-_msgData: pass:normal[xref:metatx.adoc#ERC2771Context-_msgData--[`ERC2771Context._msgData`]]
  797. :xref-ERC2771Context-_msgData--: xref:metatx.adoc#ERC2771Context-_msgData--
  798. :MinimalForwarder: pass:normal[xref:metatx.adoc#MinimalForwarder[`MinimalForwarder`]]
  799. :xref-MinimalForwarder: xref:metatx.adoc#MinimalForwarder
  800. :MinimalForwarder-getNonce: pass:normal[xref:metatx.adoc#MinimalForwarder-getNonce-address-[`MinimalForwarder.getNonce`]]
  801. :xref-MinimalForwarder-getNonce-address-: xref:metatx.adoc#MinimalForwarder-getNonce-address-
  802. :MinimalForwarder-verify: pass:normal[xref:metatx.adoc#MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-[`MinimalForwarder.verify`]]
  803. :xref-MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-: xref:metatx.adoc#MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-
  804. :MinimalForwarder-execute: pass:normal[xref:metatx.adoc#MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-[`MinimalForwarder.execute`]]
  805. :xref-MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-: xref:metatx.adoc#MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-
  806. :MinimalForwarder-ForwardRequest: pass:normal[xref:metatx.adoc#MinimalForwarder-ForwardRequest[`MinimalForwarder.ForwardRequest`]]
  807. :xref-MinimalForwarder-ForwardRequest: xref:metatx.adoc#MinimalForwarder-ForwardRequest
  808. :Clones: pass:normal[xref:proxy.adoc#Clones[`Clones`]]
  809. :xref-Clones: xref:proxy.adoc#Clones
  810. :Clones-clone: pass:normal[xref:proxy.adoc#Clones-clone-address-[`Clones.clone`]]
  811. :xref-Clones-clone-address-: xref:proxy.adoc#Clones-clone-address-
  812. :Clones-cloneDeterministic: pass:normal[xref:proxy.adoc#Clones-cloneDeterministic-address-bytes32-[`Clones.cloneDeterministic`]]
  813. :xref-Clones-cloneDeterministic-address-bytes32-: xref:proxy.adoc#Clones-cloneDeterministic-address-bytes32-
  814. :Clones-predictDeterministicAddress: pass:normal[xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-address-[`Clones.predictDeterministicAddress`]]
  815. :xref-Clones-predictDeterministicAddress-address-bytes32-address-: xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-address-
  816. :Clones-predictDeterministicAddress: pass:normal[xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-[`Clones.predictDeterministicAddress`]]
  817. :xref-Clones-predictDeterministicAddress-address-bytes32-: xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-
  818. :ERC1967Proxy: pass:normal[xref:proxy.adoc#ERC1967Proxy[`ERC1967Proxy`]]
  819. :xref-ERC1967Proxy: xref:proxy.adoc#ERC1967Proxy
  820. :ERC1967Proxy-constructor: pass:normal[xref:proxy.adoc#ERC1967Proxy-constructor-address-bytes-[`ERC1967Proxy.constructor`]]
  821. :xref-ERC1967Proxy-constructor-address-bytes-: xref:proxy.adoc#ERC1967Proxy-constructor-address-bytes-
  822. :ERC1967Proxy-_implementation: pass:normal[xref:proxy.adoc#ERC1967Proxy-_implementation--[`ERC1967Proxy._implementation`]]
  823. :xref-ERC1967Proxy-_implementation--: xref:proxy.adoc#ERC1967Proxy-_implementation--
  824. :ERC1967Upgrade: pass:normal[xref:proxy.adoc#ERC1967Upgrade[`ERC1967Upgrade`]]
  825. :xref-ERC1967Upgrade: xref:proxy.adoc#ERC1967Upgrade
  826. :ERC1967Upgrade-_IMPLEMENTATION_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32[`ERC1967Upgrade._IMPLEMENTATION_SLOT`]]
  827. :xref-ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32
  828. :ERC1967Upgrade-_ADMIN_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_ADMIN_SLOT-bytes32[`ERC1967Upgrade._ADMIN_SLOT`]]
  829. :xref-ERC1967Upgrade-_ADMIN_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_ADMIN_SLOT-bytes32
  830. :ERC1967Upgrade-_BEACON_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_BEACON_SLOT-bytes32[`ERC1967Upgrade._BEACON_SLOT`]]
  831. :xref-ERC1967Upgrade-_BEACON_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_BEACON_SLOT-bytes32
  832. :ERC1967Upgrade-_getImplementation: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getImplementation--[`ERC1967Upgrade._getImplementation`]]
  833. :xref-ERC1967Upgrade-_getImplementation--: xref:proxy.adoc#ERC1967Upgrade-_getImplementation--
  834. :ERC1967Upgrade-_upgradeTo: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeTo-address-[`ERC1967Upgrade._upgradeTo`]]
  835. :xref-ERC1967Upgrade-_upgradeTo-address-: xref:proxy.adoc#ERC1967Upgrade-_upgradeTo-address-
  836. :ERC1967Upgrade-_upgradeToAndCall: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-[`ERC1967Upgrade._upgradeToAndCall`]]
  837. :xref-ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-
  838. :ERC1967Upgrade-_upgradeToAndCallUUPS: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-[`ERC1967Upgrade._upgradeToAndCallUUPS`]]
  839. :xref-ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-
  840. :ERC1967Upgrade-_getAdmin: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getAdmin--[`ERC1967Upgrade._getAdmin`]]
  841. :xref-ERC1967Upgrade-_getAdmin--: xref:proxy.adoc#ERC1967Upgrade-_getAdmin--
  842. :ERC1967Upgrade-_changeAdmin: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_changeAdmin-address-[`ERC1967Upgrade._changeAdmin`]]
  843. :xref-ERC1967Upgrade-_changeAdmin-address-: xref:proxy.adoc#ERC1967Upgrade-_changeAdmin-address-
  844. :ERC1967Upgrade-_getBeacon: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getBeacon--[`ERC1967Upgrade._getBeacon`]]
  845. :xref-ERC1967Upgrade-_getBeacon--: xref:proxy.adoc#ERC1967Upgrade-_getBeacon--
  846. :ERC1967Upgrade-_upgradeBeaconToAndCall: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-[`ERC1967Upgrade._upgradeBeaconToAndCall`]]
  847. :xref-ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-
  848. :ERC1967Upgrade-Upgraded: pass:normal[xref:proxy.adoc#ERC1967Upgrade-Upgraded-address-[`ERC1967Upgrade.Upgraded`]]
  849. :xref-ERC1967Upgrade-Upgraded-address-: xref:proxy.adoc#ERC1967Upgrade-Upgraded-address-
  850. :ERC1967Upgrade-AdminChanged: pass:normal[xref:proxy.adoc#ERC1967Upgrade-AdminChanged-address-address-[`ERC1967Upgrade.AdminChanged`]]
  851. :xref-ERC1967Upgrade-AdminChanged-address-address-: xref:proxy.adoc#ERC1967Upgrade-AdminChanged-address-address-
  852. :ERC1967Upgrade-BeaconUpgraded: pass:normal[xref:proxy.adoc#ERC1967Upgrade-BeaconUpgraded-address-[`ERC1967Upgrade.BeaconUpgraded`]]
  853. :xref-ERC1967Upgrade-BeaconUpgraded-address-: xref:proxy.adoc#ERC1967Upgrade-BeaconUpgraded-address-
  854. :Proxy: pass:normal[xref:proxy.adoc#Proxy[`Proxy`]]
  855. :xref-Proxy: xref:proxy.adoc#Proxy
  856. :Proxy-_delegate: pass:normal[xref:proxy.adoc#Proxy-_delegate-address-[`Proxy._delegate`]]
  857. :xref-Proxy-_delegate-address-: xref:proxy.adoc#Proxy-_delegate-address-
  858. :Proxy-_implementation: pass:normal[xref:proxy.adoc#Proxy-_implementation--[`Proxy._implementation`]]
  859. :xref-Proxy-_implementation--: xref:proxy.adoc#Proxy-_implementation--
  860. :Proxy-_fallback: pass:normal[xref:proxy.adoc#Proxy-_fallback--[`Proxy._fallback`]]
  861. :xref-Proxy-_fallback--: xref:proxy.adoc#Proxy-_fallback--
  862. :Proxy-fallback: pass:normal[xref:proxy.adoc#Proxy-fallback--[`Proxy.fallback`]]
  863. :xref-Proxy-fallback--: xref:proxy.adoc#Proxy-fallback--
  864. :Proxy-receive: pass:normal[xref:proxy.adoc#Proxy-receive--[`Proxy.receive`]]
  865. :xref-Proxy-receive--: xref:proxy.adoc#Proxy-receive--
  866. :Proxy-_beforeFallback: pass:normal[xref:proxy.adoc#Proxy-_beforeFallback--[`Proxy._beforeFallback`]]
  867. :xref-Proxy-_beforeFallback--: xref:proxy.adoc#Proxy-_beforeFallback--
  868. :BeaconProxy: pass:normal[xref:proxy.adoc#BeaconProxy[`BeaconProxy`]]
  869. :xref-BeaconProxy: xref:proxy.adoc#BeaconProxy
  870. :BeaconProxy-constructor: pass:normal[xref:proxy.adoc#BeaconProxy-constructor-address-bytes-[`BeaconProxy.constructor`]]
  871. :xref-BeaconProxy-constructor-address-bytes-: xref:proxy.adoc#BeaconProxy-constructor-address-bytes-
  872. :BeaconProxy-_beacon: pass:normal[xref:proxy.adoc#BeaconProxy-_beacon--[`BeaconProxy._beacon`]]
  873. :xref-BeaconProxy-_beacon--: xref:proxy.adoc#BeaconProxy-_beacon--
  874. :BeaconProxy-_implementation: pass:normal[xref:proxy.adoc#BeaconProxy-_implementation--[`BeaconProxy._implementation`]]
  875. :xref-BeaconProxy-_implementation--: xref:proxy.adoc#BeaconProxy-_implementation--
  876. :BeaconProxy-_setBeacon: pass:normal[xref:proxy.adoc#BeaconProxy-_setBeacon-address-bytes-[`BeaconProxy._setBeacon`]]
  877. :xref-BeaconProxy-_setBeacon-address-bytes-: xref:proxy.adoc#BeaconProxy-_setBeacon-address-bytes-
  878. :IBeacon: pass:normal[xref:proxy.adoc#IBeacon[`IBeacon`]]
  879. :xref-IBeacon: xref:proxy.adoc#IBeacon
  880. :IBeacon-implementation: pass:normal[xref:proxy.adoc#IBeacon-implementation--[`IBeacon.implementation`]]
  881. :xref-IBeacon-implementation--: xref:proxy.adoc#IBeacon-implementation--
  882. :UpgradeableBeacon: pass:normal[xref:proxy.adoc#UpgradeableBeacon[`UpgradeableBeacon`]]
  883. :xref-UpgradeableBeacon: xref:proxy.adoc#UpgradeableBeacon
  884. :UpgradeableBeacon-constructor: pass:normal[xref:proxy.adoc#UpgradeableBeacon-constructor-address-[`UpgradeableBeacon.constructor`]]
  885. :xref-UpgradeableBeacon-constructor-address-: xref:proxy.adoc#UpgradeableBeacon-constructor-address-
  886. :UpgradeableBeacon-implementation: pass:normal[xref:proxy.adoc#UpgradeableBeacon-implementation--[`UpgradeableBeacon.implementation`]]
  887. :xref-UpgradeableBeacon-implementation--: xref:proxy.adoc#UpgradeableBeacon-implementation--
  888. :UpgradeableBeacon-upgradeTo: pass:normal[xref:proxy.adoc#UpgradeableBeacon-upgradeTo-address-[`UpgradeableBeacon.upgradeTo`]]
  889. :xref-UpgradeableBeacon-upgradeTo-address-: xref:proxy.adoc#UpgradeableBeacon-upgradeTo-address-
  890. :UpgradeableBeacon-Upgraded: pass:normal[xref:proxy.adoc#UpgradeableBeacon-Upgraded-address-[`UpgradeableBeacon.Upgraded`]]
  891. :xref-UpgradeableBeacon-Upgraded-address-: xref:proxy.adoc#UpgradeableBeacon-Upgraded-address-
  892. :ProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin[`ProxyAdmin`]]
  893. :xref-ProxyAdmin: xref:proxy.adoc#ProxyAdmin
  894. :ProxyAdmin-getProxyImplementation: pass:normal[xref:proxy.adoc#ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-[`ProxyAdmin.getProxyImplementation`]]
  895. :xref-ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-: xref:proxy.adoc#ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-
  896. :ProxyAdmin-getProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-[`ProxyAdmin.getProxyAdmin`]]
  897. :xref-ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-: xref:proxy.adoc#ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-
  898. :ProxyAdmin-changeProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-[`ProxyAdmin.changeProxyAdmin`]]
  899. :xref-ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-: xref:proxy.adoc#ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-
  900. :ProxyAdmin-upgrade: pass:normal[xref:proxy.adoc#ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-[`ProxyAdmin.upgrade`]]
  901. :xref-ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-: xref:proxy.adoc#ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-
  902. :ProxyAdmin-upgradeAndCall: pass:normal[xref:proxy.adoc#ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-[`ProxyAdmin.upgradeAndCall`]]
  903. :xref-ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-: xref:proxy.adoc#ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-
  904. :TransparentUpgradeableProxy: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy[`TransparentUpgradeableProxy`]]
  905. :xref-TransparentUpgradeableProxy: xref:proxy.adoc#TransparentUpgradeableProxy
  906. :TransparentUpgradeableProxy-ifAdmin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-ifAdmin--[`TransparentUpgradeableProxy.ifAdmin`]]
  907. :xref-TransparentUpgradeableProxy-ifAdmin--: xref:proxy.adoc#TransparentUpgradeableProxy-ifAdmin--
  908. :TransparentUpgradeableProxy-constructor: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-constructor-address-address-bytes-[`TransparentUpgradeableProxy.constructor`]]
  909. :xref-TransparentUpgradeableProxy-constructor-address-address-bytes-: xref:proxy.adoc#TransparentUpgradeableProxy-constructor-address-address-bytes-
  910. :TransparentUpgradeableProxy-admin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-admin--[`TransparentUpgradeableProxy.admin`]]
  911. :xref-TransparentUpgradeableProxy-admin--: xref:proxy.adoc#TransparentUpgradeableProxy-admin--
  912. :TransparentUpgradeableProxy-implementation: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-implementation--[`TransparentUpgradeableProxy.implementation`]]
  913. :xref-TransparentUpgradeableProxy-implementation--: xref:proxy.adoc#TransparentUpgradeableProxy-implementation--
  914. :TransparentUpgradeableProxy-changeAdmin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-changeAdmin-address-[`TransparentUpgradeableProxy.changeAdmin`]]
  915. :xref-TransparentUpgradeableProxy-changeAdmin-address-: xref:proxy.adoc#TransparentUpgradeableProxy-changeAdmin-address-
  916. :TransparentUpgradeableProxy-upgradeTo: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-upgradeTo-address-[`TransparentUpgradeableProxy.upgradeTo`]]
  917. :xref-TransparentUpgradeableProxy-upgradeTo-address-: xref:proxy.adoc#TransparentUpgradeableProxy-upgradeTo-address-
  918. :TransparentUpgradeableProxy-upgradeToAndCall: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-[`TransparentUpgradeableProxy.upgradeToAndCall`]]
  919. :xref-TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-: xref:proxy.adoc#TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-
  920. :TransparentUpgradeableProxy-_admin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-_admin--[`TransparentUpgradeableProxy._admin`]]
  921. :xref-TransparentUpgradeableProxy-_admin--: xref:proxy.adoc#TransparentUpgradeableProxy-_admin--
  922. :TransparentUpgradeableProxy-_beforeFallback: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-_beforeFallback--[`TransparentUpgradeableProxy._beforeFallback`]]
  923. :xref-TransparentUpgradeableProxy-_beforeFallback--: xref:proxy.adoc#TransparentUpgradeableProxy-_beforeFallback--
  924. :Initializable: pass:normal[xref:proxy.adoc#Initializable[`Initializable`]]
  925. :xref-Initializable: xref:proxy.adoc#Initializable
  926. :Initializable-initializer: pass:normal[xref:proxy.adoc#Initializable-initializer--[`Initializable.initializer`]]
  927. :xref-Initializable-initializer--: xref:proxy.adoc#Initializable-initializer--
  928. :Initializable-reinitializer: pass:normal[xref:proxy.adoc#Initializable-reinitializer-uint8-[`Initializable.reinitializer`]]
  929. :xref-Initializable-reinitializer-uint8-: xref:proxy.adoc#Initializable-reinitializer-uint8-
  930. :Initializable-onlyInitializing: pass:normal[xref:proxy.adoc#Initializable-onlyInitializing--[`Initializable.onlyInitializing`]]
  931. :xref-Initializable-onlyInitializing--: xref:proxy.adoc#Initializable-onlyInitializing--
  932. :Initializable-_disableInitializers: pass:normal[xref:proxy.adoc#Initializable-_disableInitializers--[`Initializable._disableInitializers`]]
  933. :xref-Initializable-_disableInitializers--: xref:proxy.adoc#Initializable-_disableInitializers--
  934. :Initializable-Initialized: pass:normal[xref:proxy.adoc#Initializable-Initialized-uint8-[`Initializable.Initialized`]]
  935. :xref-Initializable-Initialized-uint8-: xref:proxy.adoc#Initializable-Initialized-uint8-
  936. :UUPSUpgradeable: pass:normal[xref:proxy.adoc#UUPSUpgradeable[`UUPSUpgradeable`]]
  937. :xref-UUPSUpgradeable: xref:proxy.adoc#UUPSUpgradeable
  938. :UUPSUpgradeable-onlyProxy: pass:normal[xref:proxy.adoc#UUPSUpgradeable-onlyProxy--[`UUPSUpgradeable.onlyProxy`]]
  939. :xref-UUPSUpgradeable-onlyProxy--: xref:proxy.adoc#UUPSUpgradeable-onlyProxy--
  940. :UUPSUpgradeable-notDelegated: pass:normal[xref:proxy.adoc#UUPSUpgradeable-notDelegated--[`UUPSUpgradeable.notDelegated`]]
  941. :xref-UUPSUpgradeable-notDelegated--: xref:proxy.adoc#UUPSUpgradeable-notDelegated--
  942. :UUPSUpgradeable-proxiableUUID: pass:normal[xref:proxy.adoc#UUPSUpgradeable-proxiableUUID--[`UUPSUpgradeable.proxiableUUID`]]
  943. :xref-UUPSUpgradeable-proxiableUUID--: xref:proxy.adoc#UUPSUpgradeable-proxiableUUID--
  944. :UUPSUpgradeable-upgradeTo: pass:normal[xref:proxy.adoc#UUPSUpgradeable-upgradeTo-address-[`UUPSUpgradeable.upgradeTo`]]
  945. :xref-UUPSUpgradeable-upgradeTo-address-: xref:proxy.adoc#UUPSUpgradeable-upgradeTo-address-
  946. :UUPSUpgradeable-upgradeToAndCall: pass:normal[xref:proxy.adoc#UUPSUpgradeable-upgradeToAndCall-address-bytes-[`UUPSUpgradeable.upgradeToAndCall`]]
  947. :xref-UUPSUpgradeable-upgradeToAndCall-address-bytes-: xref:proxy.adoc#UUPSUpgradeable-upgradeToAndCall-address-bytes-
  948. :UUPSUpgradeable-_authorizeUpgrade: pass:normal[xref:proxy.adoc#UUPSUpgradeable-_authorizeUpgrade-address-[`UUPSUpgradeable._authorizeUpgrade`]]
  949. :xref-UUPSUpgradeable-_authorizeUpgrade-address-: xref:proxy.adoc#UUPSUpgradeable-_authorizeUpgrade-address-
  950. :Pausable: pass:normal[xref:security.adoc#Pausable[`Pausable`]]
  951. :xref-Pausable: xref:security.adoc#Pausable
  952. :Pausable-whenNotPaused: pass:normal[xref:security.adoc#Pausable-whenNotPaused--[`Pausable.whenNotPaused`]]
  953. :xref-Pausable-whenNotPaused--: xref:security.adoc#Pausable-whenNotPaused--
  954. :Pausable-whenPaused: pass:normal[xref:security.adoc#Pausable-whenPaused--[`Pausable.whenPaused`]]
  955. :xref-Pausable-whenPaused--: xref:security.adoc#Pausable-whenPaused--
  956. :Pausable-constructor: pass:normal[xref:security.adoc#Pausable-constructor--[`Pausable.constructor`]]
  957. :xref-Pausable-constructor--: xref:security.adoc#Pausable-constructor--
  958. :Pausable-paused: pass:normal[xref:security.adoc#Pausable-paused--[`Pausable.paused`]]
  959. :xref-Pausable-paused--: xref:security.adoc#Pausable-paused--
  960. :Pausable-_requireNotPaused: pass:normal[xref:security.adoc#Pausable-_requireNotPaused--[`Pausable._requireNotPaused`]]
  961. :xref-Pausable-_requireNotPaused--: xref:security.adoc#Pausable-_requireNotPaused--
  962. :Pausable-_requirePaused: pass:normal[xref:security.adoc#Pausable-_requirePaused--[`Pausable._requirePaused`]]
  963. :xref-Pausable-_requirePaused--: xref:security.adoc#Pausable-_requirePaused--
  964. :Pausable-_pause: pass:normal[xref:security.adoc#Pausable-_pause--[`Pausable._pause`]]
  965. :xref-Pausable-_pause--: xref:security.adoc#Pausable-_pause--
  966. :Pausable-_unpause: pass:normal[xref:security.adoc#Pausable-_unpause--[`Pausable._unpause`]]
  967. :xref-Pausable-_unpause--: xref:security.adoc#Pausable-_unpause--
  968. :Pausable-Paused: pass:normal[xref:security.adoc#Pausable-Paused-address-[`Pausable.Paused`]]
  969. :xref-Pausable-Paused-address-: xref:security.adoc#Pausable-Paused-address-
  970. :Pausable-Unpaused: pass:normal[xref:security.adoc#Pausable-Unpaused-address-[`Pausable.Unpaused`]]
  971. :xref-Pausable-Unpaused-address-: xref:security.adoc#Pausable-Unpaused-address-
  972. :PullPayment: pass:normal[xref:security.adoc#PullPayment[`PullPayment`]]
  973. :xref-PullPayment: xref:security.adoc#PullPayment
  974. :PullPayment-constructor: pass:normal[xref:security.adoc#PullPayment-constructor--[`PullPayment.constructor`]]
  975. :xref-PullPayment-constructor--: xref:security.adoc#PullPayment-constructor--
  976. :PullPayment-withdrawPayments: pass:normal[xref:security.adoc#PullPayment-withdrawPayments-address-payable-[`PullPayment.withdrawPayments`]]
  977. :xref-PullPayment-withdrawPayments-address-payable-: xref:security.adoc#PullPayment-withdrawPayments-address-payable-
  978. :PullPayment-payments: pass:normal[xref:security.adoc#PullPayment-payments-address-[`PullPayment.payments`]]
  979. :xref-PullPayment-payments-address-: xref:security.adoc#PullPayment-payments-address-
  980. :PullPayment-_asyncTransfer: pass:normal[xref:security.adoc#PullPayment-_asyncTransfer-address-uint256-[`PullPayment._asyncTransfer`]]
  981. :xref-PullPayment-_asyncTransfer-address-uint256-: xref:security.adoc#PullPayment-_asyncTransfer-address-uint256-
  982. :ReentrancyGuard: pass:normal[xref:security.adoc#ReentrancyGuard[`ReentrancyGuard`]]
  983. :xref-ReentrancyGuard: xref:security.adoc#ReentrancyGuard
  984. :ReentrancyGuard-nonReentrant: pass:normal[xref:security.adoc#ReentrancyGuard-nonReentrant--[`ReentrancyGuard.nonReentrant`]]
  985. :xref-ReentrancyGuard-nonReentrant--: xref:security.adoc#ReentrancyGuard-nonReentrant--
  986. :ReentrancyGuard-constructor: pass:normal[xref:security.adoc#ReentrancyGuard-constructor--[`ReentrancyGuard.constructor`]]
  987. :xref-ReentrancyGuard-constructor--: xref:security.adoc#ReentrancyGuard-constructor--
  988. :Address: pass:normal[xref:utils.adoc#Address[`Address`]]
  989. :xref-Address: xref:utils.adoc#Address
  990. :Address-isContract: pass:normal[xref:utils.adoc#Address-isContract-address-[`Address.isContract`]]
  991. :xref-Address-isContract-address-: xref:utils.adoc#Address-isContract-address-
  992. :Address-sendValue: pass:normal[xref:utils.adoc#Address-sendValue-address-payable-uint256-[`Address.sendValue`]]
  993. :xref-Address-sendValue-address-payable-uint256-: xref:utils.adoc#Address-sendValue-address-payable-uint256-
  994. :Address-functionCall: pass:normal[xref:utils.adoc#Address-functionCall-address-bytes-[`Address.functionCall`]]
  995. :xref-Address-functionCall-address-bytes-: xref:utils.adoc#Address-functionCall-address-bytes-
  996. :Address-functionCall: pass:normal[xref:utils.adoc#Address-functionCall-address-bytes-string-[`Address.functionCall`]]
  997. :xref-Address-functionCall-address-bytes-string-: xref:utils.adoc#Address-functionCall-address-bytes-string-
  998. :Address-functionCallWithValue: pass:normal[xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-[`Address.functionCallWithValue`]]
  999. :xref-Address-functionCallWithValue-address-bytes-uint256-: xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-
  1000. :Address-functionCallWithValue: pass:normal[xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-string-[`Address.functionCallWithValue`]]
  1001. :xref-Address-functionCallWithValue-address-bytes-uint256-string-: xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-string-
  1002. :Address-functionStaticCall: pass:normal[xref:utils.adoc#Address-functionStaticCall-address-bytes-[`Address.functionStaticCall`]]
  1003. :xref-Address-functionStaticCall-address-bytes-: xref:utils.adoc#Address-functionStaticCall-address-bytes-
  1004. :Address-functionStaticCall: pass:normal[xref:utils.adoc#Address-functionStaticCall-address-bytes-string-[`Address.functionStaticCall`]]
  1005. :xref-Address-functionStaticCall-address-bytes-string-: xref:utils.adoc#Address-functionStaticCall-address-bytes-string-
  1006. :Address-functionDelegateCall: pass:normal[xref:utils.adoc#Address-functionDelegateCall-address-bytes-[`Address.functionDelegateCall`]]
  1007. :xref-Address-functionDelegateCall-address-bytes-: xref:utils.adoc#Address-functionDelegateCall-address-bytes-
  1008. :Address-functionDelegateCall: pass:normal[xref:utils.adoc#Address-functionDelegateCall-address-bytes-string-[`Address.functionDelegateCall`]]
  1009. :xref-Address-functionDelegateCall-address-bytes-string-: xref:utils.adoc#Address-functionDelegateCall-address-bytes-string-
  1010. :Address-verifyCallResult: pass:normal[xref:utils.adoc#Address-verifyCallResult-bool-bytes-string-[`Address.verifyCallResult`]]
  1011. :xref-Address-verifyCallResult-bool-bytes-string-: xref:utils.adoc#Address-verifyCallResult-bool-bytes-string-
  1012. :Arrays: pass:normal[xref:utils.adoc#Arrays[`Arrays`]]
  1013. :xref-Arrays: xref:utils.adoc#Arrays
  1014. :Arrays-findUpperBound: pass:normal[xref:utils.adoc#Arrays-findUpperBound-uint256---uint256-[`Arrays.findUpperBound`]]
  1015. :xref-Arrays-findUpperBound-uint256---uint256-: xref:utils.adoc#Arrays-findUpperBound-uint256---uint256-
  1016. :Base64: pass:normal[xref:utils.adoc#Base64[`Base64`]]
  1017. :xref-Base64: xref:utils.adoc#Base64
  1018. :Base64-_TABLE: pass:normal[xref:utils.adoc#Base64-_TABLE-string[`Base64._TABLE`]]
  1019. :xref-Base64-_TABLE-string: xref:utils.adoc#Base64-_TABLE-string
  1020. :Base64-encode: pass:normal[xref:utils.adoc#Base64-encode-bytes-[`Base64.encode`]]
  1021. :xref-Base64-encode-bytes-: xref:utils.adoc#Base64-encode-bytes-
  1022. :Checkpoints: pass:normal[xref:utils.adoc#Checkpoints[`Checkpoints`]]
  1023. :xref-Checkpoints: xref:utils.adoc#Checkpoints
  1024. :Checkpoints-latest: pass:normal[xref:utils.adoc#Checkpoints-latest-struct-Checkpoints-History-[`Checkpoints.latest`]]
  1025. :xref-Checkpoints-latest-struct-Checkpoints-History-: xref:utils.adoc#Checkpoints-latest-struct-Checkpoints-History-
  1026. :Checkpoints-getAtBlock: pass:normal[xref:utils.adoc#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-[`Checkpoints.getAtBlock`]]
  1027. :xref-Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-: xref:utils.adoc#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-
  1028. :Checkpoints-push: pass:normal[xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-uint256-[`Checkpoints.push`]]
  1029. :xref-Checkpoints-push-struct-Checkpoints-History-uint256-: xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-uint256-
  1030. :Checkpoints-push: pass:normal[xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-[`Checkpoints.push`]]
  1031. :xref-Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-: xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-
  1032. :Checkpoints-Checkpoint: pass:normal[xref:utils.adoc#Checkpoints-Checkpoint[`Checkpoints.Checkpoint`]]
  1033. :xref-Checkpoints-Checkpoint: xref:utils.adoc#Checkpoints-Checkpoint
  1034. :Checkpoints-History: pass:normal[xref:utils.adoc#Checkpoints-History[`Checkpoints.History`]]
  1035. :xref-Checkpoints-History: xref:utils.adoc#Checkpoints-History
  1036. :Context: pass:normal[xref:utils.adoc#Context[`Context`]]
  1037. :xref-Context: xref:utils.adoc#Context
  1038. :Context-_msgSender: pass:normal[xref:utils.adoc#Context-_msgSender--[`Context._msgSender`]]
  1039. :xref-Context-_msgSender--: xref:utils.adoc#Context-_msgSender--
  1040. :Context-_msgData: pass:normal[xref:utils.adoc#Context-_msgData--[`Context._msgData`]]
  1041. :xref-Context-_msgData--: xref:utils.adoc#Context-_msgData--
  1042. :Counters: pass:normal[xref:utils.adoc#Counters[`Counters`]]
  1043. :xref-Counters: xref:utils.adoc#Counters
  1044. :Counters-current: pass:normal[xref:utils.adoc#Counters-current-struct-Counters-Counter-[`Counters.current`]]
  1045. :xref-Counters-current-struct-Counters-Counter-: xref:utils.adoc#Counters-current-struct-Counters-Counter-
  1046. :Counters-increment: pass:normal[xref:utils.adoc#Counters-increment-struct-Counters-Counter-[`Counters.increment`]]
  1047. :xref-Counters-increment-struct-Counters-Counter-: xref:utils.adoc#Counters-increment-struct-Counters-Counter-
  1048. :Counters-decrement: pass:normal[xref:utils.adoc#Counters-decrement-struct-Counters-Counter-[`Counters.decrement`]]
  1049. :xref-Counters-decrement-struct-Counters-Counter-: xref:utils.adoc#Counters-decrement-struct-Counters-Counter-
  1050. :Counters-reset: pass:normal[xref:utils.adoc#Counters-reset-struct-Counters-Counter-[`Counters.reset`]]
  1051. :xref-Counters-reset-struct-Counters-Counter-: xref:utils.adoc#Counters-reset-struct-Counters-Counter-
  1052. :Counters-Counter: pass:normal[xref:utils.adoc#Counters-Counter[`Counters.Counter`]]
  1053. :xref-Counters-Counter: xref:utils.adoc#Counters-Counter
  1054. :Create2: pass:normal[xref:utils.adoc#Create2[`Create2`]]
  1055. :xref-Create2: xref:utils.adoc#Create2
  1056. :Create2-deploy: pass:normal[xref:utils.adoc#Create2-deploy-uint256-bytes32-bytes-[`Create2.deploy`]]
  1057. :xref-Create2-deploy-uint256-bytes32-bytes-: xref:utils.adoc#Create2-deploy-uint256-bytes32-bytes-
  1058. :Create2-computeAddress: pass:normal[xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-[`Create2.computeAddress`]]
  1059. :xref-Create2-computeAddress-bytes32-bytes32-: xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-
  1060. :Create2-computeAddress: pass:normal[xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-address-[`Create2.computeAddress`]]
  1061. :xref-Create2-computeAddress-bytes32-bytes32-address-: xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-address-
  1062. :Multicall: pass:normal[xref:utils.adoc#Multicall[`Multicall`]]
  1063. :xref-Multicall: xref:utils.adoc#Multicall
  1064. :Multicall-multicall: pass:normal[xref:utils.adoc#Multicall-multicall-bytes---[`Multicall.multicall`]]
  1065. :xref-Multicall-multicall-bytes---: xref:utils.adoc#Multicall-multicall-bytes---
  1066. :StorageSlot: pass:normal[xref:utils.adoc#StorageSlot[`StorageSlot`]]
  1067. :xref-StorageSlot: xref:utils.adoc#StorageSlot
  1068. :StorageSlot-getAddressSlot: pass:normal[xref:utils.adoc#StorageSlot-getAddressSlot-bytes32-[`StorageSlot.getAddressSlot`]]
  1069. :xref-StorageSlot-getAddressSlot-bytes32-: xref:utils.adoc#StorageSlot-getAddressSlot-bytes32-
  1070. :StorageSlot-getBooleanSlot: pass:normal[xref:utils.adoc#StorageSlot-getBooleanSlot-bytes32-[`StorageSlot.getBooleanSlot`]]
  1071. :xref-StorageSlot-getBooleanSlot-bytes32-: xref:utils.adoc#StorageSlot-getBooleanSlot-bytes32-
  1072. :StorageSlot-getBytes32Slot: pass:normal[xref:utils.adoc#StorageSlot-getBytes32Slot-bytes32-[`StorageSlot.getBytes32Slot`]]
  1073. :xref-StorageSlot-getBytes32Slot-bytes32-: xref:utils.adoc#StorageSlot-getBytes32Slot-bytes32-
  1074. :StorageSlot-getUint256Slot: pass:normal[xref:utils.adoc#StorageSlot-getUint256Slot-bytes32-[`StorageSlot.getUint256Slot`]]
  1075. :xref-StorageSlot-getUint256Slot-bytes32-: xref:utils.adoc#StorageSlot-getUint256Slot-bytes32-
  1076. :StorageSlot-AddressSlot: pass:normal[xref:utils.adoc#StorageSlot-AddressSlot[`StorageSlot.AddressSlot`]]
  1077. :xref-StorageSlot-AddressSlot: xref:utils.adoc#StorageSlot-AddressSlot
  1078. :StorageSlot-BooleanSlot: pass:normal[xref:utils.adoc#StorageSlot-BooleanSlot[`StorageSlot.BooleanSlot`]]
  1079. :xref-StorageSlot-BooleanSlot: xref:utils.adoc#StorageSlot-BooleanSlot
  1080. :StorageSlot-Bytes32Slot: pass:normal[xref:utils.adoc#StorageSlot-Bytes32Slot[`StorageSlot.Bytes32Slot`]]
  1081. :xref-StorageSlot-Bytes32Slot: xref:utils.adoc#StorageSlot-Bytes32Slot
  1082. :StorageSlot-Uint256Slot: pass:normal[xref:utils.adoc#StorageSlot-Uint256Slot[`StorageSlot.Uint256Slot`]]
  1083. :xref-StorageSlot-Uint256Slot: xref:utils.adoc#StorageSlot-Uint256Slot
  1084. :Strings: pass:normal[xref:utils.adoc#Strings[`Strings`]]
  1085. :xref-Strings: xref:utils.adoc#Strings
  1086. :Strings-toString: pass:normal[xref:utils.adoc#Strings-toString-uint256-[`Strings.toString`]]
  1087. :xref-Strings-toString-uint256-: xref:utils.adoc#Strings-toString-uint256-
  1088. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-uint256-[`Strings.toHexString`]]
  1089. :xref-Strings-toHexString-uint256-: xref:utils.adoc#Strings-toHexString-uint256-
  1090. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-uint256-uint256-[`Strings.toHexString`]]
  1091. :xref-Strings-toHexString-uint256-uint256-: xref:utils.adoc#Strings-toHexString-uint256-uint256-
  1092. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-address-[`Strings.toHexString`]]
  1093. :xref-Strings-toHexString-address-: xref:utils.adoc#Strings-toHexString-address-
  1094. :Timers: pass:normal[xref:utils.adoc#Timers[`Timers`]]
  1095. :xref-Timers: xref:utils.adoc#Timers
  1096. :Timers-getDeadline: pass:normal[xref:utils.adoc#Timers-getDeadline-struct-Timers-Timestamp-[`Timers.getDeadline`]]
  1097. :xref-Timers-getDeadline-struct-Timers-Timestamp-: xref:utils.adoc#Timers-getDeadline-struct-Timers-Timestamp-
  1098. :Timers-setDeadline: pass:normal[xref:utils.adoc#Timers-setDeadline-struct-Timers-Timestamp-uint64-[`Timers.setDeadline`]]
  1099. :xref-Timers-setDeadline-struct-Timers-Timestamp-uint64-: xref:utils.adoc#Timers-setDeadline-struct-Timers-Timestamp-uint64-
  1100. :Timers-reset: pass:normal[xref:utils.adoc#Timers-reset-struct-Timers-Timestamp-[`Timers.reset`]]
  1101. :xref-Timers-reset-struct-Timers-Timestamp-: xref:utils.adoc#Timers-reset-struct-Timers-Timestamp-
  1102. :Timers-isUnset: pass:normal[xref:utils.adoc#Timers-isUnset-struct-Timers-Timestamp-[`Timers.isUnset`]]
  1103. :xref-Timers-isUnset-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isUnset-struct-Timers-Timestamp-
  1104. :Timers-isStarted: pass:normal[xref:utils.adoc#Timers-isStarted-struct-Timers-Timestamp-[`Timers.isStarted`]]
  1105. :xref-Timers-isStarted-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isStarted-struct-Timers-Timestamp-
  1106. :Timers-isPending: pass:normal[xref:utils.adoc#Timers-isPending-struct-Timers-Timestamp-[`Timers.isPending`]]
  1107. :xref-Timers-isPending-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isPending-struct-Timers-Timestamp-
  1108. :Timers-isExpired: pass:normal[xref:utils.adoc#Timers-isExpired-struct-Timers-Timestamp-[`Timers.isExpired`]]
  1109. :xref-Timers-isExpired-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isExpired-struct-Timers-Timestamp-
  1110. :Timers-getDeadline: pass:normal[xref:utils.adoc#Timers-getDeadline-struct-Timers-BlockNumber-[`Timers.getDeadline`]]
  1111. :xref-Timers-getDeadline-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-getDeadline-struct-Timers-BlockNumber-
  1112. :Timers-setDeadline: pass:normal[xref:utils.adoc#Timers-setDeadline-struct-Timers-BlockNumber-uint64-[`Timers.setDeadline`]]
  1113. :xref-Timers-setDeadline-struct-Timers-BlockNumber-uint64-: xref:utils.adoc#Timers-setDeadline-struct-Timers-BlockNumber-uint64-
  1114. :Timers-reset: pass:normal[xref:utils.adoc#Timers-reset-struct-Timers-BlockNumber-[`Timers.reset`]]
  1115. :xref-Timers-reset-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-reset-struct-Timers-BlockNumber-
  1116. :Timers-isUnset: pass:normal[xref:utils.adoc#Timers-isUnset-struct-Timers-BlockNumber-[`Timers.isUnset`]]
  1117. :xref-Timers-isUnset-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isUnset-struct-Timers-BlockNumber-
  1118. :Timers-isStarted: pass:normal[xref:utils.adoc#Timers-isStarted-struct-Timers-BlockNumber-[`Timers.isStarted`]]
  1119. :xref-Timers-isStarted-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isStarted-struct-Timers-BlockNumber-
  1120. :Timers-isPending: pass:normal[xref:utils.adoc#Timers-isPending-struct-Timers-BlockNumber-[`Timers.isPending`]]
  1121. :xref-Timers-isPending-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isPending-struct-Timers-BlockNumber-
  1122. :Timers-isExpired: pass:normal[xref:utils.adoc#Timers-isExpired-struct-Timers-BlockNumber-[`Timers.isExpired`]]
  1123. :xref-Timers-isExpired-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isExpired-struct-Timers-BlockNumber-
  1124. :Timers-Timestamp: pass:normal[xref:utils.adoc#Timers-Timestamp[`Timers.Timestamp`]]
  1125. :xref-Timers-Timestamp: xref:utils.adoc#Timers-Timestamp
  1126. :Timers-BlockNumber: pass:normal[xref:utils.adoc#Timers-BlockNumber[`Timers.BlockNumber`]]
  1127. :xref-Timers-BlockNumber: xref:utils.adoc#Timers-BlockNumber
  1128. :ECDSA: pass:normal[xref:utils.adoc#ECDSA[`ECDSA`]]
  1129. :xref-ECDSA: xref:utils.adoc#ECDSA
  1130. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes-[`ECDSA.tryRecover`]]
  1131. :xref-ECDSA-tryRecover-bytes32-bytes-: xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes-
  1132. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-bytes-[`ECDSA.recover`]]
  1133. :xref-ECDSA-recover-bytes32-bytes-: xref:utils.adoc#ECDSA-recover-bytes32-bytes-
  1134. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes32-bytes32-[`ECDSA.tryRecover`]]
  1135. :xref-ECDSA-tryRecover-bytes32-bytes32-bytes32-: xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes32-bytes32-
  1136. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-bytes32-bytes32-[`ECDSA.recover`]]
  1137. :xref-ECDSA-recover-bytes32-bytes32-bytes32-: xref:utils.adoc#ECDSA-recover-bytes32-bytes32-bytes32-
  1138. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-[`ECDSA.tryRecover`]]
  1139. :xref-ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-: xref:utils.adoc#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-
  1140. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-uint8-bytes32-bytes32-[`ECDSA.recover`]]
  1141. :xref-ECDSA-recover-bytes32-uint8-bytes32-bytes32-: xref:utils.adoc#ECDSA-recover-bytes32-uint8-bytes32-bytes32-
  1142. :ECDSA-toEthSignedMessageHash: pass:normal[xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes32-[`ECDSA.toEthSignedMessageHash`]]
  1143. :xref-ECDSA-toEthSignedMessageHash-bytes32-: xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes32-
  1144. :ECDSA-toEthSignedMessageHash: pass:normal[xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes-[`ECDSA.toEthSignedMessageHash`]]
  1145. :xref-ECDSA-toEthSignedMessageHash-bytes-: xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes-
  1146. :ECDSA-toTypedDataHash: pass:normal[xref:utils.adoc#ECDSA-toTypedDataHash-bytes32-bytes32-[`ECDSA.toTypedDataHash`]]
  1147. :xref-ECDSA-toTypedDataHash-bytes32-bytes32-: xref:utils.adoc#ECDSA-toTypedDataHash-bytes32-bytes32-
  1148. :ECDSA-RecoverError: pass:normal[xref:utils.adoc#ECDSA-RecoverError[`ECDSA.RecoverError`]]
  1149. :xref-ECDSA-RecoverError: xref:utils.adoc#ECDSA-RecoverError
  1150. :MerkleProof: pass:normal[xref:utils.adoc#MerkleProof[`MerkleProof`]]
  1151. :xref-MerkleProof: xref:utils.adoc#MerkleProof
  1152. :MerkleProof-verify: pass:normal[xref:utils.adoc#MerkleProof-verify-bytes32---bytes32-bytes32-[`MerkleProof.verify`]]
  1153. :xref-MerkleProof-verify-bytes32---bytes32-bytes32-: xref:utils.adoc#MerkleProof-verify-bytes32---bytes32-bytes32-
  1154. :MerkleProof-verifyCalldata: pass:normal[xref:utils.adoc#MerkleProof-verifyCalldata-bytes32---bytes32-bytes32-[`MerkleProof.verifyCalldata`]]
  1155. :xref-MerkleProof-verifyCalldata-bytes32---bytes32-bytes32-: xref:utils.adoc#MerkleProof-verifyCalldata-bytes32---bytes32-bytes32-
  1156. :MerkleProof-processProof: pass:normal[xref:utils.adoc#MerkleProof-processProof-bytes32---bytes32-[`MerkleProof.processProof`]]
  1157. :xref-MerkleProof-processProof-bytes32---bytes32-: xref:utils.adoc#MerkleProof-processProof-bytes32---bytes32-
  1158. :MerkleProof-processProofCalldata: pass:normal[xref:utils.adoc#MerkleProof-processProofCalldata-bytes32---bytes32-[`MerkleProof.processProofCalldata`]]
  1159. :xref-MerkleProof-processProofCalldata-bytes32---bytes32-: xref:utils.adoc#MerkleProof-processProofCalldata-bytes32---bytes32-
  1160. :MerkleProof-multiProofVerify: pass:normal[xref:utils.adoc#MerkleProof-multiProofVerify-bytes32---bool---bytes32-bytes32---[`MerkleProof.multiProofVerify`]]
  1161. :xref-MerkleProof-multiProofVerify-bytes32---bool---bytes32-bytes32---: xref:utils.adoc#MerkleProof-multiProofVerify-bytes32---bool---bytes32-bytes32---
  1162. :MerkleProof-multiProofVerifyCalldata: pass:normal[xref:utils.adoc#MerkleProof-multiProofVerifyCalldata-bytes32---bool---bytes32-bytes32---[`MerkleProof.multiProofVerifyCalldata`]]
  1163. :xref-MerkleProof-multiProofVerifyCalldata-bytes32---bool---bytes32-bytes32---: xref:utils.adoc#MerkleProof-multiProofVerifyCalldata-bytes32---bool---bytes32-bytes32---
  1164. :MerkleProof-processMultiProof: pass:normal[xref:utils.adoc#MerkleProof-processMultiProof-bytes32---bool---bytes32---[`MerkleProof.processMultiProof`]]
  1165. :xref-MerkleProof-processMultiProof-bytes32---bool---bytes32---: xref:utils.adoc#MerkleProof-processMultiProof-bytes32---bool---bytes32---
  1166. :MerkleProof-processMultiProofCalldata: pass:normal[xref:utils.adoc#MerkleProof-processMultiProofCalldata-bytes32---bool---bytes32---[`MerkleProof.processMultiProofCalldata`]]
  1167. :xref-MerkleProof-processMultiProofCalldata-bytes32---bool---bytes32---: xref:utils.adoc#MerkleProof-processMultiProofCalldata-bytes32---bool---bytes32---
  1168. :SignatureChecker: pass:normal[xref:utils.adoc#SignatureChecker[`SignatureChecker`]]
  1169. :xref-SignatureChecker: xref:utils.adoc#SignatureChecker
  1170. :SignatureChecker-isValidSignatureNow: pass:normal[xref:utils.adoc#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-[`SignatureChecker.isValidSignatureNow`]]
  1171. :xref-SignatureChecker-isValidSignatureNow-address-bytes32-bytes-: xref:utils.adoc#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-
  1172. :EIP712: pass:normal[xref:utils.adoc#EIP712[`EIP712`]]
  1173. :xref-EIP712: xref:utils.adoc#EIP712
  1174. :EIP712-constructor: pass:normal[xref:utils.adoc#EIP712-constructor-string-string-[`EIP712.constructor`]]
  1175. :xref-EIP712-constructor-string-string-: xref:utils.adoc#EIP712-constructor-string-string-
  1176. :EIP712-_domainSeparatorV4: pass:normal[xref:utils.adoc#EIP712-_domainSeparatorV4--[`EIP712._domainSeparatorV4`]]
  1177. :xref-EIP712-_domainSeparatorV4--: xref:utils.adoc#EIP712-_domainSeparatorV4--
  1178. :EIP712-_hashTypedDataV4: pass:normal[xref:utils.adoc#EIP712-_hashTypedDataV4-bytes32-[`EIP712._hashTypedDataV4`]]
  1179. :xref-EIP712-_hashTypedDataV4-bytes32-: xref:utils.adoc#EIP712-_hashTypedDataV4-bytes32-
  1180. :ConditionalEscrow: pass:normal[xref:utils.adoc#ConditionalEscrow[`ConditionalEscrow`]]
  1181. :xref-ConditionalEscrow: xref:utils.adoc#ConditionalEscrow
  1182. :ConditionalEscrow-withdrawalAllowed: pass:normal[xref:utils.adoc#ConditionalEscrow-withdrawalAllowed-address-[`ConditionalEscrow.withdrawalAllowed`]]
  1183. :xref-ConditionalEscrow-withdrawalAllowed-address-: xref:utils.adoc#ConditionalEscrow-withdrawalAllowed-address-
  1184. :ConditionalEscrow-withdraw: pass:normal[xref:utils.adoc#ConditionalEscrow-withdraw-address-payable-[`ConditionalEscrow.withdraw`]]
  1185. :xref-ConditionalEscrow-withdraw-address-payable-: xref:utils.adoc#ConditionalEscrow-withdraw-address-payable-
  1186. :Escrow: pass:normal[xref:utils.adoc#Escrow[`Escrow`]]
  1187. :xref-Escrow: xref:utils.adoc#Escrow
  1188. :Escrow-depositsOf: pass:normal[xref:utils.adoc#Escrow-depositsOf-address-[`Escrow.depositsOf`]]
  1189. :xref-Escrow-depositsOf-address-: xref:utils.adoc#Escrow-depositsOf-address-
  1190. :Escrow-deposit: pass:normal[xref:utils.adoc#Escrow-deposit-address-[`Escrow.deposit`]]
  1191. :xref-Escrow-deposit-address-: xref:utils.adoc#Escrow-deposit-address-
  1192. :Escrow-withdraw: pass:normal[xref:utils.adoc#Escrow-withdraw-address-payable-[`Escrow.withdraw`]]
  1193. :xref-Escrow-withdraw-address-payable-: xref:utils.adoc#Escrow-withdraw-address-payable-
  1194. :Escrow-Deposited: pass:normal[xref:utils.adoc#Escrow-Deposited-address-uint256-[`Escrow.Deposited`]]
  1195. :xref-Escrow-Deposited-address-uint256-: xref:utils.adoc#Escrow-Deposited-address-uint256-
  1196. :Escrow-Withdrawn: pass:normal[xref:utils.adoc#Escrow-Withdrawn-address-uint256-[`Escrow.Withdrawn`]]
  1197. :xref-Escrow-Withdrawn-address-uint256-: xref:utils.adoc#Escrow-Withdrawn-address-uint256-
  1198. :RefundEscrow: pass:normal[xref:utils.adoc#RefundEscrow[`RefundEscrow`]]
  1199. :xref-RefundEscrow: xref:utils.adoc#RefundEscrow
  1200. :RefundEscrow-constructor: pass:normal[xref:utils.adoc#RefundEscrow-constructor-address-payable-[`RefundEscrow.constructor`]]
  1201. :xref-RefundEscrow-constructor-address-payable-: xref:utils.adoc#RefundEscrow-constructor-address-payable-
  1202. :RefundEscrow-state: pass:normal[xref:utils.adoc#RefundEscrow-state--[`RefundEscrow.state`]]
  1203. :xref-RefundEscrow-state--: xref:utils.adoc#RefundEscrow-state--
  1204. :RefundEscrow-beneficiary: pass:normal[xref:utils.adoc#RefundEscrow-beneficiary--[`RefundEscrow.beneficiary`]]
  1205. :xref-RefundEscrow-beneficiary--: xref:utils.adoc#RefundEscrow-beneficiary--
  1206. :RefundEscrow-deposit: pass:normal[xref:utils.adoc#RefundEscrow-deposit-address-[`RefundEscrow.deposit`]]
  1207. :xref-RefundEscrow-deposit-address-: xref:utils.adoc#RefundEscrow-deposit-address-
  1208. :RefundEscrow-close: pass:normal[xref:utils.adoc#RefundEscrow-close--[`RefundEscrow.close`]]
  1209. :xref-RefundEscrow-close--: xref:utils.adoc#RefundEscrow-close--
  1210. :RefundEscrow-enableRefunds: pass:normal[xref:utils.adoc#RefundEscrow-enableRefunds--[`RefundEscrow.enableRefunds`]]
  1211. :xref-RefundEscrow-enableRefunds--: xref:utils.adoc#RefundEscrow-enableRefunds--
  1212. :RefundEscrow-beneficiaryWithdraw: pass:normal[xref:utils.adoc#RefundEscrow-beneficiaryWithdraw--[`RefundEscrow.beneficiaryWithdraw`]]
  1213. :xref-RefundEscrow-beneficiaryWithdraw--: xref:utils.adoc#RefundEscrow-beneficiaryWithdraw--
  1214. :RefundEscrow-withdrawalAllowed: pass:normal[xref:utils.adoc#RefundEscrow-withdrawalAllowed-address-[`RefundEscrow.withdrawalAllowed`]]
  1215. :xref-RefundEscrow-withdrawalAllowed-address-: xref:utils.adoc#RefundEscrow-withdrawalAllowed-address-
  1216. :RefundEscrow-RefundsClosed: pass:normal[xref:utils.adoc#RefundEscrow-RefundsClosed--[`RefundEscrow.RefundsClosed`]]
  1217. :xref-RefundEscrow-RefundsClosed--: xref:utils.adoc#RefundEscrow-RefundsClosed--
  1218. :RefundEscrow-RefundsEnabled: pass:normal[xref:utils.adoc#RefundEscrow-RefundsEnabled--[`RefundEscrow.RefundsEnabled`]]
  1219. :xref-RefundEscrow-RefundsEnabled--: xref:utils.adoc#RefundEscrow-RefundsEnabled--
  1220. :RefundEscrow-State: pass:normal[xref:utils.adoc#RefundEscrow-State[`RefundEscrow.State`]]
  1221. :xref-RefundEscrow-State: xref:utils.adoc#RefundEscrow-State
  1222. :ERC165: pass:normal[xref:utils.adoc#ERC165[`ERC165`]]
  1223. :xref-ERC165: xref:utils.adoc#ERC165
  1224. :ERC165-supportsInterface: pass:normal[xref:utils.adoc#ERC165-supportsInterface-bytes4-[`ERC165.supportsInterface`]]
  1225. :xref-ERC165-supportsInterface-bytes4-: xref:utils.adoc#ERC165-supportsInterface-bytes4-
  1226. :ERC165Checker: pass:normal[xref:utils.adoc#ERC165Checker[`ERC165Checker`]]
  1227. :xref-ERC165Checker: xref:utils.adoc#ERC165Checker
  1228. :ERC165Checker-supportsERC165: pass:normal[xref:utils.adoc#ERC165Checker-supportsERC165-address-[`ERC165Checker.supportsERC165`]]
  1229. :xref-ERC165Checker-supportsERC165-address-: xref:utils.adoc#ERC165Checker-supportsERC165-address-
  1230. :ERC165Checker-supportsInterface: pass:normal[xref:utils.adoc#ERC165Checker-supportsInterface-address-bytes4-[`ERC165Checker.supportsInterface`]]
  1231. :xref-ERC165Checker-supportsInterface-address-bytes4-: xref:utils.adoc#ERC165Checker-supportsInterface-address-bytes4-
  1232. :ERC165Checker-getSupportedInterfaces: pass:normal[xref:utils.adoc#ERC165Checker-getSupportedInterfaces-address-bytes4---[`ERC165Checker.getSupportedInterfaces`]]
  1233. :xref-ERC165Checker-getSupportedInterfaces-address-bytes4---: xref:utils.adoc#ERC165Checker-getSupportedInterfaces-address-bytes4---
  1234. :ERC165Checker-supportsAllInterfaces: pass:normal[xref:utils.adoc#ERC165Checker-supportsAllInterfaces-address-bytes4---[`ERC165Checker.supportsAllInterfaces`]]
  1235. :xref-ERC165Checker-supportsAllInterfaces-address-bytes4---: xref:utils.adoc#ERC165Checker-supportsAllInterfaces-address-bytes4---
  1236. :ERC165Storage: pass:normal[xref:utils.adoc#ERC165Storage[`ERC165Storage`]]
  1237. :xref-ERC165Storage: xref:utils.adoc#ERC165Storage
  1238. :ERC165Storage-supportsInterface: pass:normal[xref:utils.adoc#ERC165Storage-supportsInterface-bytes4-[`ERC165Storage.supportsInterface`]]
  1239. :xref-ERC165Storage-supportsInterface-bytes4-: xref:utils.adoc#ERC165Storage-supportsInterface-bytes4-
  1240. :ERC165Storage-_registerInterface: pass:normal[xref:utils.adoc#ERC165Storage-_registerInterface-bytes4-[`ERC165Storage._registerInterface`]]
  1241. :xref-ERC165Storage-_registerInterface-bytes4-: xref:utils.adoc#ERC165Storage-_registerInterface-bytes4-
  1242. :ERC1820Implementer: pass:normal[xref:utils.adoc#ERC1820Implementer[`ERC1820Implementer`]]
  1243. :xref-ERC1820Implementer: xref:utils.adoc#ERC1820Implementer
  1244. :ERC1820Implementer-canImplementInterfaceForAddress: pass:normal[xref:utils.adoc#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`ERC1820Implementer.canImplementInterfaceForAddress`]]
  1245. :xref-ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-: xref:utils.adoc#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-
  1246. :ERC1820Implementer-_registerInterfaceForAddress: pass:normal[xref:utils.adoc#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-[`ERC1820Implementer._registerInterfaceForAddress`]]
  1247. :xref-ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-: xref:utils.adoc#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-
  1248. :IERC165: pass:normal[xref:utils.adoc#IERC165[`IERC165`]]
  1249. :xref-IERC165: xref:utils.adoc#IERC165
  1250. :IERC165-supportsInterface: pass:normal[xref:utils.adoc#IERC165-supportsInterface-bytes4-[`IERC165.supportsInterface`]]
  1251. :xref-IERC165-supportsInterface-bytes4-: xref:utils.adoc#IERC165-supportsInterface-bytes4-
  1252. :IERC1820Implementer: pass:normal[xref:utils.adoc#IERC1820Implementer[`IERC1820Implementer`]]
  1253. :xref-IERC1820Implementer: xref:utils.adoc#IERC1820Implementer
  1254. :IERC1820Implementer-canImplementInterfaceForAddress: pass:normal[xref:utils.adoc#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`IERC1820Implementer.canImplementInterfaceForAddress`]]
  1255. :xref-IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-: xref:utils.adoc#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-
  1256. :IERC1820Registry: pass:normal[xref:utils.adoc#IERC1820Registry[`IERC1820Registry`]]
  1257. :xref-IERC1820Registry: xref:utils.adoc#IERC1820Registry
  1258. :IERC1820Registry-setManager: pass:normal[xref:utils.adoc#IERC1820Registry-setManager-address-address-[`IERC1820Registry.setManager`]]
  1259. :xref-IERC1820Registry-setManager-address-address-: xref:utils.adoc#IERC1820Registry-setManager-address-address-
  1260. :IERC1820Registry-getManager: pass:normal[xref:utils.adoc#IERC1820Registry-getManager-address-[`IERC1820Registry.getManager`]]
  1261. :xref-IERC1820Registry-getManager-address-: xref:utils.adoc#IERC1820Registry-getManager-address-
  1262. :IERC1820Registry-setInterfaceImplementer: pass:normal[xref:utils.adoc#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-[`IERC1820Registry.setInterfaceImplementer`]]
  1263. :xref-IERC1820Registry-setInterfaceImplementer-address-bytes32-address-: xref:utils.adoc#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-
  1264. :IERC1820Registry-getInterfaceImplementer: pass:normal[xref:utils.adoc#IERC1820Registry-getInterfaceImplementer-address-bytes32-[`IERC1820Registry.getInterfaceImplementer`]]
  1265. :xref-IERC1820Registry-getInterfaceImplementer-address-bytes32-: xref:utils.adoc#IERC1820Registry-getInterfaceImplementer-address-bytes32-
  1266. :IERC1820Registry-interfaceHash: pass:normal[xref:utils.adoc#IERC1820Registry-interfaceHash-string-[`IERC1820Registry.interfaceHash`]]
  1267. :xref-IERC1820Registry-interfaceHash-string-: xref:utils.adoc#IERC1820Registry-interfaceHash-string-
  1268. :IERC1820Registry-updateERC165Cache: pass:normal[xref:utils.adoc#IERC1820Registry-updateERC165Cache-address-bytes4-[`IERC1820Registry.updateERC165Cache`]]
  1269. :xref-IERC1820Registry-updateERC165Cache-address-bytes4-: xref:utils.adoc#IERC1820Registry-updateERC165Cache-address-bytes4-
  1270. :IERC1820Registry-implementsERC165Interface: pass:normal[xref:utils.adoc#IERC1820Registry-implementsERC165Interface-address-bytes4-[`IERC1820Registry.implementsERC165Interface`]]
  1271. :xref-IERC1820Registry-implementsERC165Interface-address-bytes4-: xref:utils.adoc#IERC1820Registry-implementsERC165Interface-address-bytes4-
  1272. :IERC1820Registry-implementsERC165InterfaceNoCache: pass:normal[xref:utils.adoc#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-[`IERC1820Registry.implementsERC165InterfaceNoCache`]]
  1273. :xref-IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-: xref:utils.adoc#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-
  1274. :IERC1820Registry-InterfaceImplementerSet: pass:normal[xref:utils.adoc#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-[`IERC1820Registry.InterfaceImplementerSet`]]
  1275. :xref-IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-: xref:utils.adoc#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-
  1276. :IERC1820Registry-ManagerChanged: pass:normal[xref:utils.adoc#IERC1820Registry-ManagerChanged-address-address-[`IERC1820Registry.ManagerChanged`]]
  1277. :xref-IERC1820Registry-ManagerChanged-address-address-: xref:utils.adoc#IERC1820Registry-ManagerChanged-address-address-
  1278. :Math: pass:normal[xref:utils.adoc#Math[`Math`]]
  1279. :xref-Math: xref:utils.adoc#Math
  1280. :Math-max: pass:normal[xref:utils.adoc#Math-max-uint256-uint256-[`Math.max`]]
  1281. :xref-Math-max-uint256-uint256-: xref:utils.adoc#Math-max-uint256-uint256-
  1282. :Math-min: pass:normal[xref:utils.adoc#Math-min-uint256-uint256-[`Math.min`]]
  1283. :xref-Math-min-uint256-uint256-: xref:utils.adoc#Math-min-uint256-uint256-
  1284. :Math-average: pass:normal[xref:utils.adoc#Math-average-uint256-uint256-[`Math.average`]]
  1285. :xref-Math-average-uint256-uint256-: xref:utils.adoc#Math-average-uint256-uint256-
  1286. :Math-ceilDiv: pass:normal[xref:utils.adoc#Math-ceilDiv-uint256-uint256-[`Math.ceilDiv`]]
  1287. :xref-Math-ceilDiv-uint256-uint256-: xref:utils.adoc#Math-ceilDiv-uint256-uint256-
  1288. :Math-mulDiv: pass:normal[xref:utils.adoc#Math-mulDiv-uint256-uint256-uint256-[`Math.mulDiv`]]
  1289. :xref-Math-mulDiv-uint256-uint256-uint256-: xref:utils.adoc#Math-mulDiv-uint256-uint256-uint256-
  1290. :Math-mulDiv: pass:normal[xref:utils.adoc#Math-mulDiv-uint256-uint256-uint256-enum-Math-Rounding-[`Math.mulDiv`]]
  1291. :xref-Math-mulDiv-uint256-uint256-uint256-enum-Math-Rounding-: xref:utils.adoc#Math-mulDiv-uint256-uint256-uint256-enum-Math-Rounding-
  1292. :Math-sqrt: pass:normal[xref:utils.adoc#Math-sqrt-uint256-[`Math.sqrt`]]
  1293. :xref-Math-sqrt-uint256-: xref:utils.adoc#Math-sqrt-uint256-
  1294. :Math-sqrt: pass:normal[xref:utils.adoc#Math-sqrt-uint256-enum-Math-Rounding-[`Math.sqrt`]]
  1295. :xref-Math-sqrt-uint256-enum-Math-Rounding-: xref:utils.adoc#Math-sqrt-uint256-enum-Math-Rounding-
  1296. :Math-Rounding: pass:normal[xref:utils.adoc#Math-Rounding[`Math.Rounding`]]
  1297. :xref-Math-Rounding: xref:utils.adoc#Math-Rounding
  1298. :SafeCast: pass:normal[xref:utils.adoc#SafeCast[`SafeCast`]]
  1299. :xref-SafeCast: xref:utils.adoc#SafeCast
  1300. :SafeCast-toUint248: pass:normal[xref:utils.adoc#SafeCast-toUint248-uint256-[`SafeCast.toUint248`]]
  1301. :xref-SafeCast-toUint248-uint256-: xref:utils.adoc#SafeCast-toUint248-uint256-
  1302. :SafeCast-toUint240: pass:normal[xref:utils.adoc#SafeCast-toUint240-uint256-[`SafeCast.toUint240`]]
  1303. :xref-SafeCast-toUint240-uint256-: xref:utils.adoc#SafeCast-toUint240-uint256-
  1304. :SafeCast-toUint232: pass:normal[xref:utils.adoc#SafeCast-toUint232-uint256-[`SafeCast.toUint232`]]
  1305. :xref-SafeCast-toUint232-uint256-: xref:utils.adoc#SafeCast-toUint232-uint256-
  1306. :SafeCast-toUint224: pass:normal[xref:utils.adoc#SafeCast-toUint224-uint256-[`SafeCast.toUint224`]]
  1307. :xref-SafeCast-toUint224-uint256-: xref:utils.adoc#SafeCast-toUint224-uint256-
  1308. :SafeCast-toUint216: pass:normal[xref:utils.adoc#SafeCast-toUint216-uint256-[`SafeCast.toUint216`]]
  1309. :xref-SafeCast-toUint216-uint256-: xref:utils.adoc#SafeCast-toUint216-uint256-
  1310. :SafeCast-toUint208: pass:normal[xref:utils.adoc#SafeCast-toUint208-uint256-[`SafeCast.toUint208`]]
  1311. :xref-SafeCast-toUint208-uint256-: xref:utils.adoc#SafeCast-toUint208-uint256-
  1312. :SafeCast-toUint200: pass:normal[xref:utils.adoc#SafeCast-toUint200-uint256-[`SafeCast.toUint200`]]
  1313. :xref-SafeCast-toUint200-uint256-: xref:utils.adoc#SafeCast-toUint200-uint256-
  1314. :SafeCast-toUint192: pass:normal[xref:utils.adoc#SafeCast-toUint192-uint256-[`SafeCast.toUint192`]]
  1315. :xref-SafeCast-toUint192-uint256-: xref:utils.adoc#SafeCast-toUint192-uint256-
  1316. :SafeCast-toUint184: pass:normal[xref:utils.adoc#SafeCast-toUint184-uint256-[`SafeCast.toUint184`]]
  1317. :xref-SafeCast-toUint184-uint256-: xref:utils.adoc#SafeCast-toUint184-uint256-
  1318. :SafeCast-toUint176: pass:normal[xref:utils.adoc#SafeCast-toUint176-uint256-[`SafeCast.toUint176`]]
  1319. :xref-SafeCast-toUint176-uint256-: xref:utils.adoc#SafeCast-toUint176-uint256-
  1320. :SafeCast-toUint168: pass:normal[xref:utils.adoc#SafeCast-toUint168-uint256-[`SafeCast.toUint168`]]
  1321. :xref-SafeCast-toUint168-uint256-: xref:utils.adoc#SafeCast-toUint168-uint256-
  1322. :SafeCast-toUint160: pass:normal[xref:utils.adoc#SafeCast-toUint160-uint256-[`SafeCast.toUint160`]]
  1323. :xref-SafeCast-toUint160-uint256-: xref:utils.adoc#SafeCast-toUint160-uint256-
  1324. :SafeCast-toUint152: pass:normal[xref:utils.adoc#SafeCast-toUint152-uint256-[`SafeCast.toUint152`]]
  1325. :xref-SafeCast-toUint152-uint256-: xref:utils.adoc#SafeCast-toUint152-uint256-
  1326. :SafeCast-toUint144: pass:normal[xref:utils.adoc#SafeCast-toUint144-uint256-[`SafeCast.toUint144`]]
  1327. :xref-SafeCast-toUint144-uint256-: xref:utils.adoc#SafeCast-toUint144-uint256-
  1328. :SafeCast-toUint136: pass:normal[xref:utils.adoc#SafeCast-toUint136-uint256-[`SafeCast.toUint136`]]
  1329. :xref-SafeCast-toUint136-uint256-: xref:utils.adoc#SafeCast-toUint136-uint256-
  1330. :SafeCast-toUint128: pass:normal[xref:utils.adoc#SafeCast-toUint128-uint256-[`SafeCast.toUint128`]]
  1331. :xref-SafeCast-toUint128-uint256-: xref:utils.adoc#SafeCast-toUint128-uint256-
  1332. :SafeCast-toUint120: pass:normal[xref:utils.adoc#SafeCast-toUint120-uint256-[`SafeCast.toUint120`]]
  1333. :xref-SafeCast-toUint120-uint256-: xref:utils.adoc#SafeCast-toUint120-uint256-
  1334. :SafeCast-toUint112: pass:normal[xref:utils.adoc#SafeCast-toUint112-uint256-[`SafeCast.toUint112`]]
  1335. :xref-SafeCast-toUint112-uint256-: xref:utils.adoc#SafeCast-toUint112-uint256-
  1336. :SafeCast-toUint104: pass:normal[xref:utils.adoc#SafeCast-toUint104-uint256-[`SafeCast.toUint104`]]
  1337. :xref-SafeCast-toUint104-uint256-: xref:utils.adoc#SafeCast-toUint104-uint256-
  1338. :SafeCast-toUint96: pass:normal[xref:utils.adoc#SafeCast-toUint96-uint256-[`SafeCast.toUint96`]]
  1339. :xref-SafeCast-toUint96-uint256-: xref:utils.adoc#SafeCast-toUint96-uint256-
  1340. :SafeCast-toUint88: pass:normal[xref:utils.adoc#SafeCast-toUint88-uint256-[`SafeCast.toUint88`]]
  1341. :xref-SafeCast-toUint88-uint256-: xref:utils.adoc#SafeCast-toUint88-uint256-
  1342. :SafeCast-toUint80: pass:normal[xref:utils.adoc#SafeCast-toUint80-uint256-[`SafeCast.toUint80`]]
  1343. :xref-SafeCast-toUint80-uint256-: xref:utils.adoc#SafeCast-toUint80-uint256-
  1344. :SafeCast-toUint72: pass:normal[xref:utils.adoc#SafeCast-toUint72-uint256-[`SafeCast.toUint72`]]
  1345. :xref-SafeCast-toUint72-uint256-: xref:utils.adoc#SafeCast-toUint72-uint256-
  1346. :SafeCast-toUint64: pass:normal[xref:utils.adoc#SafeCast-toUint64-uint256-[`SafeCast.toUint64`]]
  1347. :xref-SafeCast-toUint64-uint256-: xref:utils.adoc#SafeCast-toUint64-uint256-
  1348. :SafeCast-toUint56: pass:normal[xref:utils.adoc#SafeCast-toUint56-uint256-[`SafeCast.toUint56`]]
  1349. :xref-SafeCast-toUint56-uint256-: xref:utils.adoc#SafeCast-toUint56-uint256-
  1350. :SafeCast-toUint48: pass:normal[xref:utils.adoc#SafeCast-toUint48-uint256-[`SafeCast.toUint48`]]
  1351. :xref-SafeCast-toUint48-uint256-: xref:utils.adoc#SafeCast-toUint48-uint256-
  1352. :SafeCast-toUint40: pass:normal[xref:utils.adoc#SafeCast-toUint40-uint256-[`SafeCast.toUint40`]]
  1353. :xref-SafeCast-toUint40-uint256-: xref:utils.adoc#SafeCast-toUint40-uint256-
  1354. :SafeCast-toUint32: pass:normal[xref:utils.adoc#SafeCast-toUint32-uint256-[`SafeCast.toUint32`]]
  1355. :xref-SafeCast-toUint32-uint256-: xref:utils.adoc#SafeCast-toUint32-uint256-
  1356. :SafeCast-toUint24: pass:normal[xref:utils.adoc#SafeCast-toUint24-uint256-[`SafeCast.toUint24`]]
  1357. :xref-SafeCast-toUint24-uint256-: xref:utils.adoc#SafeCast-toUint24-uint256-
  1358. :SafeCast-toUint16: pass:normal[xref:utils.adoc#SafeCast-toUint16-uint256-[`SafeCast.toUint16`]]
  1359. :xref-SafeCast-toUint16-uint256-: xref:utils.adoc#SafeCast-toUint16-uint256-
  1360. :SafeCast-toUint8: pass:normal[xref:utils.adoc#SafeCast-toUint8-uint256-[`SafeCast.toUint8`]]
  1361. :xref-SafeCast-toUint8-uint256-: xref:utils.adoc#SafeCast-toUint8-uint256-
  1362. :SafeCast-toUint256: pass:normal[xref:utils.adoc#SafeCast-toUint256-int256-[`SafeCast.toUint256`]]
  1363. :xref-SafeCast-toUint256-int256-: xref:utils.adoc#SafeCast-toUint256-int256-
  1364. :SafeCast-toInt248: pass:normal[xref:utils.adoc#SafeCast-toInt248-int256-[`SafeCast.toInt248`]]
  1365. :xref-SafeCast-toInt248-int256-: xref:utils.adoc#SafeCast-toInt248-int256-
  1366. :SafeCast-toInt240: pass:normal[xref:utils.adoc#SafeCast-toInt240-int256-[`SafeCast.toInt240`]]
  1367. :xref-SafeCast-toInt240-int256-: xref:utils.adoc#SafeCast-toInt240-int256-
  1368. :SafeCast-toInt232: pass:normal[xref:utils.adoc#SafeCast-toInt232-int256-[`SafeCast.toInt232`]]
  1369. :xref-SafeCast-toInt232-int256-: xref:utils.adoc#SafeCast-toInt232-int256-
  1370. :SafeCast-toInt224: pass:normal[xref:utils.adoc#SafeCast-toInt224-int256-[`SafeCast.toInt224`]]
  1371. :xref-SafeCast-toInt224-int256-: xref:utils.adoc#SafeCast-toInt224-int256-
  1372. :SafeCast-toInt216: pass:normal[xref:utils.adoc#SafeCast-toInt216-int256-[`SafeCast.toInt216`]]
  1373. :xref-SafeCast-toInt216-int256-: xref:utils.adoc#SafeCast-toInt216-int256-
  1374. :SafeCast-toInt208: pass:normal[xref:utils.adoc#SafeCast-toInt208-int256-[`SafeCast.toInt208`]]
  1375. :xref-SafeCast-toInt208-int256-: xref:utils.adoc#SafeCast-toInt208-int256-
  1376. :SafeCast-toInt200: pass:normal[xref:utils.adoc#SafeCast-toInt200-int256-[`SafeCast.toInt200`]]
  1377. :xref-SafeCast-toInt200-int256-: xref:utils.adoc#SafeCast-toInt200-int256-
  1378. :SafeCast-toInt192: pass:normal[xref:utils.adoc#SafeCast-toInt192-int256-[`SafeCast.toInt192`]]
  1379. :xref-SafeCast-toInt192-int256-: xref:utils.adoc#SafeCast-toInt192-int256-
  1380. :SafeCast-toInt184: pass:normal[xref:utils.adoc#SafeCast-toInt184-int256-[`SafeCast.toInt184`]]
  1381. :xref-SafeCast-toInt184-int256-: xref:utils.adoc#SafeCast-toInt184-int256-
  1382. :SafeCast-toInt176: pass:normal[xref:utils.adoc#SafeCast-toInt176-int256-[`SafeCast.toInt176`]]
  1383. :xref-SafeCast-toInt176-int256-: xref:utils.adoc#SafeCast-toInt176-int256-
  1384. :SafeCast-toInt168: pass:normal[xref:utils.adoc#SafeCast-toInt168-int256-[`SafeCast.toInt168`]]
  1385. :xref-SafeCast-toInt168-int256-: xref:utils.adoc#SafeCast-toInt168-int256-
  1386. :SafeCast-toInt160: pass:normal[xref:utils.adoc#SafeCast-toInt160-int256-[`SafeCast.toInt160`]]
  1387. :xref-SafeCast-toInt160-int256-: xref:utils.adoc#SafeCast-toInt160-int256-
  1388. :SafeCast-toInt152: pass:normal[xref:utils.adoc#SafeCast-toInt152-int256-[`SafeCast.toInt152`]]
  1389. :xref-SafeCast-toInt152-int256-: xref:utils.adoc#SafeCast-toInt152-int256-
  1390. :SafeCast-toInt144: pass:normal[xref:utils.adoc#SafeCast-toInt144-int256-[`SafeCast.toInt144`]]
  1391. :xref-SafeCast-toInt144-int256-: xref:utils.adoc#SafeCast-toInt144-int256-
  1392. :SafeCast-toInt136: pass:normal[xref:utils.adoc#SafeCast-toInt136-int256-[`SafeCast.toInt136`]]
  1393. :xref-SafeCast-toInt136-int256-: xref:utils.adoc#SafeCast-toInt136-int256-
  1394. :SafeCast-toInt128: pass:normal[xref:utils.adoc#SafeCast-toInt128-int256-[`SafeCast.toInt128`]]
  1395. :xref-SafeCast-toInt128-int256-: xref:utils.adoc#SafeCast-toInt128-int256-
  1396. :SafeCast-toInt120: pass:normal[xref:utils.adoc#SafeCast-toInt120-int256-[`SafeCast.toInt120`]]
  1397. :xref-SafeCast-toInt120-int256-: xref:utils.adoc#SafeCast-toInt120-int256-
  1398. :SafeCast-toInt112: pass:normal[xref:utils.adoc#SafeCast-toInt112-int256-[`SafeCast.toInt112`]]
  1399. :xref-SafeCast-toInt112-int256-: xref:utils.adoc#SafeCast-toInt112-int256-
  1400. :SafeCast-toInt104: pass:normal[xref:utils.adoc#SafeCast-toInt104-int256-[`SafeCast.toInt104`]]
  1401. :xref-SafeCast-toInt104-int256-: xref:utils.adoc#SafeCast-toInt104-int256-
  1402. :SafeCast-toInt96: pass:normal[xref:utils.adoc#SafeCast-toInt96-int256-[`SafeCast.toInt96`]]
  1403. :xref-SafeCast-toInt96-int256-: xref:utils.adoc#SafeCast-toInt96-int256-
  1404. :SafeCast-toInt88: pass:normal[xref:utils.adoc#SafeCast-toInt88-int256-[`SafeCast.toInt88`]]
  1405. :xref-SafeCast-toInt88-int256-: xref:utils.adoc#SafeCast-toInt88-int256-
  1406. :SafeCast-toInt80: pass:normal[xref:utils.adoc#SafeCast-toInt80-int256-[`SafeCast.toInt80`]]
  1407. :xref-SafeCast-toInt80-int256-: xref:utils.adoc#SafeCast-toInt80-int256-
  1408. :SafeCast-toInt72: pass:normal[xref:utils.adoc#SafeCast-toInt72-int256-[`SafeCast.toInt72`]]
  1409. :xref-SafeCast-toInt72-int256-: xref:utils.adoc#SafeCast-toInt72-int256-
  1410. :SafeCast-toInt64: pass:normal[xref:utils.adoc#SafeCast-toInt64-int256-[`SafeCast.toInt64`]]
  1411. :xref-SafeCast-toInt64-int256-: xref:utils.adoc#SafeCast-toInt64-int256-
  1412. :SafeCast-toInt56: pass:normal[xref:utils.adoc#SafeCast-toInt56-int256-[`SafeCast.toInt56`]]
  1413. :xref-SafeCast-toInt56-int256-: xref:utils.adoc#SafeCast-toInt56-int256-
  1414. :SafeCast-toInt48: pass:normal[xref:utils.adoc#SafeCast-toInt48-int256-[`SafeCast.toInt48`]]
  1415. :xref-SafeCast-toInt48-int256-: xref:utils.adoc#SafeCast-toInt48-int256-
  1416. :SafeCast-toInt40: pass:normal[xref:utils.adoc#SafeCast-toInt40-int256-[`SafeCast.toInt40`]]
  1417. :xref-SafeCast-toInt40-int256-: xref:utils.adoc#SafeCast-toInt40-int256-
  1418. :SafeCast-toInt32: pass:normal[xref:utils.adoc#SafeCast-toInt32-int256-[`SafeCast.toInt32`]]
  1419. :xref-SafeCast-toInt32-int256-: xref:utils.adoc#SafeCast-toInt32-int256-
  1420. :SafeCast-toInt24: pass:normal[xref:utils.adoc#SafeCast-toInt24-int256-[`SafeCast.toInt24`]]
  1421. :xref-SafeCast-toInt24-int256-: xref:utils.adoc#SafeCast-toInt24-int256-
  1422. :SafeCast-toInt16: pass:normal[xref:utils.adoc#SafeCast-toInt16-int256-[`SafeCast.toInt16`]]
  1423. :xref-SafeCast-toInt16-int256-: xref:utils.adoc#SafeCast-toInt16-int256-
  1424. :SafeCast-toInt8: pass:normal[xref:utils.adoc#SafeCast-toInt8-int256-[`SafeCast.toInt8`]]
  1425. :xref-SafeCast-toInt8-int256-: xref:utils.adoc#SafeCast-toInt8-int256-
  1426. :SafeCast-toInt256: pass:normal[xref:utils.adoc#SafeCast-toInt256-uint256-[`SafeCast.toInt256`]]
  1427. :xref-SafeCast-toInt256-uint256-: xref:utils.adoc#SafeCast-toInt256-uint256-
  1428. :SafeMath: pass:normal[xref:utils.adoc#SafeMath[`SafeMath`]]
  1429. :xref-SafeMath: xref:utils.adoc#SafeMath
  1430. :SafeMath-tryAdd: pass:normal[xref:utils.adoc#SafeMath-tryAdd-uint256-uint256-[`SafeMath.tryAdd`]]
  1431. :xref-SafeMath-tryAdd-uint256-uint256-: xref:utils.adoc#SafeMath-tryAdd-uint256-uint256-
  1432. :SafeMath-trySub: pass:normal[xref:utils.adoc#SafeMath-trySub-uint256-uint256-[`SafeMath.trySub`]]
  1433. :xref-SafeMath-trySub-uint256-uint256-: xref:utils.adoc#SafeMath-trySub-uint256-uint256-
  1434. :SafeMath-tryMul: pass:normal[xref:utils.adoc#SafeMath-tryMul-uint256-uint256-[`SafeMath.tryMul`]]
  1435. :xref-SafeMath-tryMul-uint256-uint256-: xref:utils.adoc#SafeMath-tryMul-uint256-uint256-
  1436. :SafeMath-tryDiv: pass:normal[xref:utils.adoc#SafeMath-tryDiv-uint256-uint256-[`SafeMath.tryDiv`]]
  1437. :xref-SafeMath-tryDiv-uint256-uint256-: xref:utils.adoc#SafeMath-tryDiv-uint256-uint256-
  1438. :SafeMath-tryMod: pass:normal[xref:utils.adoc#SafeMath-tryMod-uint256-uint256-[`SafeMath.tryMod`]]
  1439. :xref-SafeMath-tryMod-uint256-uint256-: xref:utils.adoc#SafeMath-tryMod-uint256-uint256-
  1440. :SafeMath-add: pass:normal[xref:utils.adoc#SafeMath-add-uint256-uint256-[`SafeMath.add`]]
  1441. :xref-SafeMath-add-uint256-uint256-: xref:utils.adoc#SafeMath-add-uint256-uint256-
  1442. :SafeMath-sub: pass:normal[xref:utils.adoc#SafeMath-sub-uint256-uint256-[`SafeMath.sub`]]
  1443. :xref-SafeMath-sub-uint256-uint256-: xref:utils.adoc#SafeMath-sub-uint256-uint256-
  1444. :SafeMath-mul: pass:normal[xref:utils.adoc#SafeMath-mul-uint256-uint256-[`SafeMath.mul`]]
  1445. :xref-SafeMath-mul-uint256-uint256-: xref:utils.adoc#SafeMath-mul-uint256-uint256-
  1446. :SafeMath-div: pass:normal[xref:utils.adoc#SafeMath-div-uint256-uint256-[`SafeMath.div`]]
  1447. :xref-SafeMath-div-uint256-uint256-: xref:utils.adoc#SafeMath-div-uint256-uint256-
  1448. :SafeMath-mod: pass:normal[xref:utils.adoc#SafeMath-mod-uint256-uint256-[`SafeMath.mod`]]
  1449. :xref-SafeMath-mod-uint256-uint256-: xref:utils.adoc#SafeMath-mod-uint256-uint256-
  1450. :SafeMath-sub: pass:normal[xref:utils.adoc#SafeMath-sub-uint256-uint256-string-[`SafeMath.sub`]]
  1451. :xref-SafeMath-sub-uint256-uint256-string-: xref:utils.adoc#SafeMath-sub-uint256-uint256-string-
  1452. :SafeMath-div: pass:normal[xref:utils.adoc#SafeMath-div-uint256-uint256-string-[`SafeMath.div`]]
  1453. :xref-SafeMath-div-uint256-uint256-string-: xref:utils.adoc#SafeMath-div-uint256-uint256-string-
  1454. :SafeMath-mod: pass:normal[xref:utils.adoc#SafeMath-mod-uint256-uint256-string-[`SafeMath.mod`]]
  1455. :xref-SafeMath-mod-uint256-uint256-string-: xref:utils.adoc#SafeMath-mod-uint256-uint256-string-
  1456. :SignedMath: pass:normal[xref:utils.adoc#SignedMath[`SignedMath`]]
  1457. :xref-SignedMath: xref:utils.adoc#SignedMath
  1458. :SignedMath-max: pass:normal[xref:utils.adoc#SignedMath-max-int256-int256-[`SignedMath.max`]]
  1459. :xref-SignedMath-max-int256-int256-: xref:utils.adoc#SignedMath-max-int256-int256-
  1460. :SignedMath-min: pass:normal[xref:utils.adoc#SignedMath-min-int256-int256-[`SignedMath.min`]]
  1461. :xref-SignedMath-min-int256-int256-: xref:utils.adoc#SignedMath-min-int256-int256-
  1462. :SignedMath-average: pass:normal[xref:utils.adoc#SignedMath-average-int256-int256-[`SignedMath.average`]]
  1463. :xref-SignedMath-average-int256-int256-: xref:utils.adoc#SignedMath-average-int256-int256-
  1464. :SignedMath-abs: pass:normal[xref:utils.adoc#SignedMath-abs-int256-[`SignedMath.abs`]]
  1465. :xref-SignedMath-abs-int256-: xref:utils.adoc#SignedMath-abs-int256-
  1466. :SignedSafeMath: pass:normal[xref:utils.adoc#SignedSafeMath[`SignedSafeMath`]]
  1467. :xref-SignedSafeMath: xref:utils.adoc#SignedSafeMath
  1468. :SignedSafeMath-mul: pass:normal[xref:utils.adoc#SignedSafeMath-mul-int256-int256-[`SignedSafeMath.mul`]]
  1469. :xref-SignedSafeMath-mul-int256-int256-: xref:utils.adoc#SignedSafeMath-mul-int256-int256-
  1470. :SignedSafeMath-div: pass:normal[xref:utils.adoc#SignedSafeMath-div-int256-int256-[`SignedSafeMath.div`]]
  1471. :xref-SignedSafeMath-div-int256-int256-: xref:utils.adoc#SignedSafeMath-div-int256-int256-
  1472. :SignedSafeMath-sub: pass:normal[xref:utils.adoc#SignedSafeMath-sub-int256-int256-[`SignedSafeMath.sub`]]
  1473. :xref-SignedSafeMath-sub-int256-int256-: xref:utils.adoc#SignedSafeMath-sub-int256-int256-
  1474. :SignedSafeMath-add: pass:normal[xref:utils.adoc#SignedSafeMath-add-int256-int256-[`SignedSafeMath.add`]]
  1475. :xref-SignedSafeMath-add-int256-int256-: xref:utils.adoc#SignedSafeMath-add-int256-int256-
  1476. :BitMaps: pass:normal[xref:utils.adoc#BitMaps[`BitMaps`]]
  1477. :xref-BitMaps: xref:utils.adoc#BitMaps
  1478. :BitMaps-get: pass:normal[xref:utils.adoc#BitMaps-get-struct-BitMaps-BitMap-uint256-[`BitMaps.get`]]
  1479. :xref-BitMaps-get-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-get-struct-BitMaps-BitMap-uint256-
  1480. :BitMaps-setTo: pass:normal[xref:utils.adoc#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-[`BitMaps.setTo`]]
  1481. :xref-BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-: xref:utils.adoc#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-
  1482. :BitMaps-set: pass:normal[xref:utils.adoc#BitMaps-set-struct-BitMaps-BitMap-uint256-[`BitMaps.set`]]
  1483. :xref-BitMaps-set-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-set-struct-BitMaps-BitMap-uint256-
  1484. :BitMaps-unset: pass:normal[xref:utils.adoc#BitMaps-unset-struct-BitMaps-BitMap-uint256-[`BitMaps.unset`]]
  1485. :xref-BitMaps-unset-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-unset-struct-BitMaps-BitMap-uint256-
  1486. :BitMaps-BitMap: pass:normal[xref:utils.adoc#BitMaps-BitMap[`BitMaps.BitMap`]]
  1487. :xref-BitMaps-BitMap: xref:utils.adoc#BitMaps-BitMap
  1488. :DoubleEndedQueue: pass:normal[xref:utils.adoc#DoubleEndedQueue[`DoubleEndedQueue`]]
  1489. :xref-DoubleEndedQueue: xref:utils.adoc#DoubleEndedQueue
  1490. :DoubleEndedQueue-pushBack: pass:normal[xref:utils.adoc#DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-[`DoubleEndedQueue.pushBack`]]
  1491. :xref-DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-: xref:utils.adoc#DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-
  1492. :DoubleEndedQueue-popBack: pass:normal[xref:utils.adoc#DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.popBack`]]
  1493. :xref-DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-
  1494. :DoubleEndedQueue-pushFront: pass:normal[xref:utils.adoc#DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-[`DoubleEndedQueue.pushFront`]]
  1495. :xref-DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-: xref:utils.adoc#DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-
  1496. :DoubleEndedQueue-popFront: pass:normal[xref:utils.adoc#DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.popFront`]]
  1497. :xref-DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-
  1498. :DoubleEndedQueue-front: pass:normal[xref:utils.adoc#DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.front`]]
  1499. :xref-DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-
  1500. :DoubleEndedQueue-back: pass:normal[xref:utils.adoc#DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.back`]]
  1501. :xref-DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-
  1502. :DoubleEndedQueue-at: pass:normal[xref:utils.adoc#DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-[`DoubleEndedQueue.at`]]
  1503. :xref-DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-: xref:utils.adoc#DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-
  1504. :DoubleEndedQueue-clear: pass:normal[xref:utils.adoc#DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.clear`]]
  1505. :xref-DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-
  1506. :DoubleEndedQueue-length: pass:normal[xref:utils.adoc#DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.length`]]
  1507. :xref-DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-
  1508. :DoubleEndedQueue-empty: pass:normal[xref:utils.adoc#DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.empty`]]
  1509. :xref-DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-
  1510. :DoubleEndedQueue-Bytes32Deque: pass:normal[xref:utils.adoc#DoubleEndedQueue-Bytes32Deque[`DoubleEndedQueue.Bytes32Deque`]]
  1511. :xref-DoubleEndedQueue-Bytes32Deque: xref:utils.adoc#DoubleEndedQueue-Bytes32Deque
  1512. :EnumerableMap: pass:normal[xref:utils.adoc#EnumerableMap[`EnumerableMap`]]
  1513. :xref-EnumerableMap: xref:utils.adoc#EnumerableMap
  1514. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-[`EnumerableMap.set`]]
  1515. :xref-EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-
  1516. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.remove`]]
  1517. :xref-EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1518. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.contains`]]
  1519. :xref-EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1520. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-[`EnumerableMap.length`]]
  1521. :xref-EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-
  1522. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-[`EnumerableMap.at`]]
  1523. :xref-EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-
  1524. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.tryGet`]]
  1525. :xref-EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1526. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.get`]]
  1527. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1528. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-[`EnumerableMap.get`]]
  1529. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-
  1530. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToUintMap-uint256-uint256-[`EnumerableMap.set`]]
  1531. :xref-EnumerableMap-set-struct-EnumerableMap-UintToUintMap-uint256-uint256-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToUintMap-uint256-uint256-
  1532. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.remove`]]
  1533. :xref-EnumerableMap-remove-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToUintMap-uint256-
  1534. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.contains`]]
  1535. :xref-EnumerableMap-contains-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToUintMap-uint256-
  1536. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToUintMap-[`EnumerableMap.length`]]
  1537. :xref-EnumerableMap-length-struct-EnumerableMap-UintToUintMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToUintMap-
  1538. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.at`]]
  1539. :xref-EnumerableMap-at-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToUintMap-uint256-
  1540. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.tryGet`]]
  1541. :xref-EnumerableMap-tryGet-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToUintMap-uint256-
  1542. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.get`]]
  1543. :xref-EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-
  1544. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-string-[`EnumerableMap.get`]]
  1545. :xref-EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-string-
  1546. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-[`EnumerableMap.set`]]
  1547. :xref-EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-
  1548. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.remove`]]
  1549. :xref-EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-
  1550. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.contains`]]
  1551. :xref-EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-
  1552. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-[`EnumerableMap.length`]]
  1553. :xref-EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-
  1554. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.at`]]
  1555. :xref-EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-
  1556. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.tryGet`]]
  1557. :xref-EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-
  1558. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.get`]]
  1559. :xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-
  1560. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-[`EnumerableMap.get`]]
  1561. :xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-
  1562. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-[`EnumerableMap.set`]]
  1563. :xref-EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-
  1564. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.remove`]]
  1565. :xref-EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-
  1566. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.contains`]]
  1567. :xref-EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-
  1568. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-[`EnumerableMap.length`]]
  1569. :xref-EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-
  1570. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-[`EnumerableMap.at`]]
  1571. :xref-EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-
  1572. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.tryGet`]]
  1573. :xref-EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-
  1574. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.get`]]
  1575. :xref-EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-
  1576. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-[`EnumerableMap.get`]]
  1577. :xref-EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-
  1578. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToUintMap-bytes32-uint256-[`EnumerableMap.set`]]
  1579. :xref-EnumerableMap-set-struct-EnumerableMap-Bytes32ToUintMap-bytes32-uint256-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToUintMap-bytes32-uint256-
  1580. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`EnumerableMap.remove`]]
  1581. :xref-EnumerableMap-remove-struct-EnumerableMap-Bytes32ToUintMap-bytes32-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToUintMap-bytes32-
  1582. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`EnumerableMap.contains`]]
  1583. :xref-EnumerableMap-contains-struct-EnumerableMap-Bytes32ToUintMap-bytes32-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToUintMap-bytes32-
  1584. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToUintMap-[`EnumerableMap.length`]]
  1585. :xref-EnumerableMap-length-struct-EnumerableMap-Bytes32ToUintMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToUintMap-
  1586. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToUintMap-uint256-[`EnumerableMap.at`]]
  1587. :xref-EnumerableMap-at-struct-EnumerableMap-Bytes32ToUintMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToUintMap-uint256-
  1588. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`EnumerableMap.tryGet`]]
  1589. :xref-EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToUintMap-bytes32-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToUintMap-bytes32-
  1590. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`EnumerableMap.get`]]
  1591. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-
  1592. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-string-[`EnumerableMap.get`]]
  1593. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-string-
  1594. :EnumerableMap-Bytes32ToBytes32Map: pass:normal[xref:utils.adoc#EnumerableMap-Bytes32ToBytes32Map[`EnumerableMap.Bytes32ToBytes32Map`]]
  1595. :xref-EnumerableMap-Bytes32ToBytes32Map: xref:utils.adoc#EnumerableMap-Bytes32ToBytes32Map
  1596. :EnumerableMap-UintToUintMap: pass:normal[xref:utils.adoc#EnumerableMap-UintToUintMap[`EnumerableMap.UintToUintMap`]]
  1597. :xref-EnumerableMap-UintToUintMap: xref:utils.adoc#EnumerableMap-UintToUintMap
  1598. :EnumerableMap-UintToAddressMap: pass:normal[xref:utils.adoc#EnumerableMap-UintToAddressMap[`EnumerableMap.UintToAddressMap`]]
  1599. :xref-EnumerableMap-UintToAddressMap: xref:utils.adoc#EnumerableMap-UintToAddressMap
  1600. :EnumerableMap-AddressToUintMap: pass:normal[xref:utils.adoc#EnumerableMap-AddressToUintMap[`EnumerableMap.AddressToUintMap`]]
  1601. :xref-EnumerableMap-AddressToUintMap: xref:utils.adoc#EnumerableMap-AddressToUintMap
  1602. :EnumerableMap-Bytes32ToUintMap: pass:normal[xref:utils.adoc#EnumerableMap-Bytes32ToUintMap[`EnumerableMap.Bytes32ToUintMap`]]
  1603. :xref-EnumerableMap-Bytes32ToUintMap: xref:utils.adoc#EnumerableMap-Bytes32ToUintMap
  1604. :EnumerableSet: pass:normal[xref:utils.adoc#EnumerableSet[`EnumerableSet`]]
  1605. :xref-EnumerableSet: xref:utils.adoc#EnumerableSet
  1606. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.add`]]
  1607. :xref-EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-
  1608. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.remove`]]
  1609. :xref-EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-
  1610. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.contains`]]
  1611. :xref-EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-
  1612. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-[`EnumerableSet.length`]]
  1613. :xref-EnumerableSet-length-struct-EnumerableSet-Bytes32Set-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-
  1614. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-[`EnumerableSet.at`]]
  1615. :xref-EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-
  1616. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-[`EnumerableSet.values`]]
  1617. :xref-EnumerableSet-values-struct-EnumerableSet-Bytes32Set-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-
  1618. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.add`]]
  1619. :xref-EnumerableSet-add-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-
  1620. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.remove`]]
  1621. :xref-EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-
  1622. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.contains`]]
  1623. :xref-EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-
  1624. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-AddressSet-[`EnumerableSet.length`]]
  1625. :xref-EnumerableSet-length-struct-EnumerableSet-AddressSet-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-AddressSet-
  1626. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-[`EnumerableSet.at`]]
  1627. :xref-EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-
  1628. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-AddressSet-[`EnumerableSet.values`]]
  1629. :xref-EnumerableSet-values-struct-EnumerableSet-AddressSet-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-AddressSet-
  1630. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.add`]]
  1631. :xref-EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-
  1632. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.remove`]]
  1633. :xref-EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-
  1634. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.contains`]]
  1635. :xref-EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-
  1636. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-UintSet-[`EnumerableSet.length`]]
  1637. :xref-EnumerableSet-length-struct-EnumerableSet-UintSet-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-UintSet-
  1638. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.at`]]
  1639. :xref-EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-
  1640. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-UintSet-[`EnumerableSet.values`]]
  1641. :xref-EnumerableSet-values-struct-EnumerableSet-UintSet-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-UintSet-
  1642. :EnumerableSet-Set: pass:normal[xref:utils.adoc#EnumerableSet-Set[`EnumerableSet.Set`]]
  1643. :xref-EnumerableSet-Set: xref:utils.adoc#EnumerableSet-Set
  1644. :EnumerableSet-Bytes32Set: pass:normal[xref:utils.adoc#EnumerableSet-Bytes32Set[`EnumerableSet.Bytes32Set`]]
  1645. :xref-EnumerableSet-Bytes32Set: xref:utils.adoc#EnumerableSet-Bytes32Set
  1646. :EnumerableSet-AddressSet: pass:normal[xref:utils.adoc#EnumerableSet-AddressSet[`EnumerableSet.AddressSet`]]
  1647. :xref-EnumerableSet-AddressSet: xref:utils.adoc#EnumerableSet-AddressSet
  1648. :EnumerableSet-UintSet: pass:normal[xref:utils.adoc#EnumerableSet-UintSet[`EnumerableSet.UintSet`]]
  1649. :xref-EnumerableSet-UintSet: xref:utils.adoc#EnumerableSet-UintSet
  1650. :ERC1155: pass:normal[xref:token/ERC1155.adoc#ERC1155[`ERC1155`]]
  1651. :xref-ERC1155: xref:token/ERC1155.adoc#ERC1155
  1652. :ERC1155-constructor: pass:normal[xref:token/ERC1155.adoc#ERC1155-constructor-string-[`ERC1155.constructor`]]
  1653. :xref-ERC1155-constructor-string-: xref:token/ERC1155.adoc#ERC1155-constructor-string-
  1654. :ERC1155-supportsInterface: pass:normal[xref:token/ERC1155.adoc#ERC1155-supportsInterface-bytes4-[`ERC1155.supportsInterface`]]
  1655. :xref-ERC1155-supportsInterface-bytes4-: xref:token/ERC1155.adoc#ERC1155-supportsInterface-bytes4-
  1656. :ERC1155-uri: pass:normal[xref:token/ERC1155.adoc#ERC1155-uri-uint256-[`ERC1155.uri`]]
  1657. :xref-ERC1155-uri-uint256-: xref:token/ERC1155.adoc#ERC1155-uri-uint256-
  1658. :ERC1155-balanceOf: pass:normal[xref:token/ERC1155.adoc#ERC1155-balanceOf-address-uint256-[`ERC1155.balanceOf`]]
  1659. :xref-ERC1155-balanceOf-address-uint256-: xref:token/ERC1155.adoc#ERC1155-balanceOf-address-uint256-
  1660. :ERC1155-balanceOfBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-balanceOfBatch-address---uint256---[`ERC1155.balanceOfBatch`]]
  1661. :xref-ERC1155-balanceOfBatch-address---uint256---: xref:token/ERC1155.adoc#ERC1155-balanceOfBatch-address---uint256---
  1662. :ERC1155-setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-setApprovalForAll-address-bool-[`ERC1155.setApprovalForAll`]]
  1663. :xref-ERC1155-setApprovalForAll-address-bool-: xref:token/ERC1155.adoc#ERC1155-setApprovalForAll-address-bool-
  1664. :ERC1155-isApprovedForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-isApprovedForAll-address-address-[`ERC1155.isApprovedForAll`]]
  1665. :xref-ERC1155-isApprovedForAll-address-address-: xref:token/ERC1155.adoc#ERC1155-isApprovedForAll-address-address-
  1666. :ERC1155-safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-[`ERC1155.safeTransferFrom`]]
  1667. :xref-ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-
  1668. :ERC1155-safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`ERC1155.safeBatchTransferFrom`]]
  1669. :xref-ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1670. :ERC1155-_safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-[`ERC1155._safeTransferFrom`]]
  1671. :xref-ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-
  1672. :ERC1155-_safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`ERC1155._safeBatchTransferFrom`]]
  1673. :xref-ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1674. :ERC1155-_setURI: pass:normal[xref:token/ERC1155.adoc#ERC1155-_setURI-string-[`ERC1155._setURI`]]
  1675. :xref-ERC1155-_setURI-string-: xref:token/ERC1155.adoc#ERC1155-_setURI-string-
  1676. :ERC1155-_mint: pass:normal[xref:token/ERC1155.adoc#ERC1155-_mint-address-uint256-uint256-bytes-[`ERC1155._mint`]]
  1677. :xref-ERC1155-_mint-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-_mint-address-uint256-uint256-bytes-
  1678. :ERC1155-_mintBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-_mintBatch-address-uint256---uint256---bytes-[`ERC1155._mintBatch`]]
  1679. :xref-ERC1155-_mintBatch-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_mintBatch-address-uint256---uint256---bytes-
  1680. :ERC1155-_burn: pass:normal[xref:token/ERC1155.adoc#ERC1155-_burn-address-uint256-uint256-[`ERC1155._burn`]]
  1681. :xref-ERC1155-_burn-address-uint256-uint256-: xref:token/ERC1155.adoc#ERC1155-_burn-address-uint256-uint256-
  1682. :ERC1155-_burnBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-_burnBatch-address-uint256---uint256---[`ERC1155._burnBatch`]]
  1683. :xref-ERC1155-_burnBatch-address-uint256---uint256---: xref:token/ERC1155.adoc#ERC1155-_burnBatch-address-uint256---uint256---
  1684. :ERC1155-_setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-_setApprovalForAll-address-address-bool-[`ERC1155._setApprovalForAll`]]
  1685. :xref-ERC1155-_setApprovalForAll-address-address-bool-: xref:token/ERC1155.adoc#ERC1155-_setApprovalForAll-address-address-bool-
  1686. :ERC1155-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155._beforeTokenTransfer`]]
  1687. :xref-ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1688. :ERC1155-_afterTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155-_afterTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155._afterTokenTransfer`]]
  1689. :xref-ERC1155-_afterTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_afterTokenTransfer-address-address-address-uint256---uint256---bytes-
  1690. :IERC1155: pass:normal[xref:token/ERC1155.adoc#IERC1155[`IERC1155`]]
  1691. :xref-IERC1155: xref:token/ERC1155.adoc#IERC1155
  1692. :IERC1155-balanceOf: pass:normal[xref:token/ERC1155.adoc#IERC1155-balanceOf-address-uint256-[`IERC1155.balanceOf`]]
  1693. :xref-IERC1155-balanceOf-address-uint256-: xref:token/ERC1155.adoc#IERC1155-balanceOf-address-uint256-
  1694. :IERC1155-balanceOfBatch: pass:normal[xref:token/ERC1155.adoc#IERC1155-balanceOfBatch-address---uint256---[`IERC1155.balanceOfBatch`]]
  1695. :xref-IERC1155-balanceOfBatch-address---uint256---: xref:token/ERC1155.adoc#IERC1155-balanceOfBatch-address---uint256---
  1696. :IERC1155-setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-setApprovalForAll-address-bool-[`IERC1155.setApprovalForAll`]]
  1697. :xref-IERC1155-setApprovalForAll-address-bool-: xref:token/ERC1155.adoc#IERC1155-setApprovalForAll-address-bool-
  1698. :IERC1155-isApprovedForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-isApprovedForAll-address-address-[`IERC1155.isApprovedForAll`]]
  1699. :xref-IERC1155-isApprovedForAll-address-address-: xref:token/ERC1155.adoc#IERC1155-isApprovedForAll-address-address-
  1700. :IERC1155-safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-[`IERC1155.safeTransferFrom`]]
  1701. :xref-IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-
  1702. :IERC1155-safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`IERC1155.safeBatchTransferFrom`]]
  1703. :xref-IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1704. :IERC1155-TransferSingle: pass:normal[xref:token/ERC1155.adoc#IERC1155-TransferSingle-address-address-address-uint256-uint256-[`IERC1155.TransferSingle`]]
  1705. :xref-IERC1155-TransferSingle-address-address-address-uint256-uint256-: xref:token/ERC1155.adoc#IERC1155-TransferSingle-address-address-address-uint256-uint256-
  1706. :IERC1155-TransferBatch: pass:normal[xref:token/ERC1155.adoc#IERC1155-TransferBatch-address-address-address-uint256---uint256---[`IERC1155.TransferBatch`]]
  1707. :xref-IERC1155-TransferBatch-address-address-address-uint256---uint256---: xref:token/ERC1155.adoc#IERC1155-TransferBatch-address-address-address-uint256---uint256---
  1708. :IERC1155-ApprovalForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-ApprovalForAll-address-address-bool-[`IERC1155.ApprovalForAll`]]
  1709. :xref-IERC1155-ApprovalForAll-address-address-bool-: xref:token/ERC1155.adoc#IERC1155-ApprovalForAll-address-address-bool-
  1710. :IERC1155-URI: pass:normal[xref:token/ERC1155.adoc#IERC1155-URI-string-uint256-[`IERC1155.URI`]]
  1711. :xref-IERC1155-URI-string-uint256-: xref:token/ERC1155.adoc#IERC1155-URI-string-uint256-
  1712. :IERC1155Receiver: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver[`IERC1155Receiver`]]
  1713. :xref-IERC1155Receiver: xref:token/ERC1155.adoc#IERC1155Receiver
  1714. :IERC1155Receiver-onERC1155Received: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-[`IERC1155Receiver.onERC1155Received`]]
  1715. :xref-IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-
  1716. :IERC1155Receiver-onERC1155BatchReceived: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`IERC1155Receiver.onERC1155BatchReceived`]]
  1717. :xref-IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  1718. :ERC1155Burnable: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable[`ERC1155Burnable`]]
  1719. :xref-ERC1155Burnable: xref:token/ERC1155.adoc#ERC1155Burnable
  1720. :ERC1155Burnable-burn: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable-burn-address-uint256-uint256-[`ERC1155Burnable.burn`]]
  1721. :xref-ERC1155Burnable-burn-address-uint256-uint256-: xref:token/ERC1155.adoc#ERC1155Burnable-burn-address-uint256-uint256-
  1722. :ERC1155Burnable-burnBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable-burnBatch-address-uint256---uint256---[`ERC1155Burnable.burnBatch`]]
  1723. :xref-ERC1155Burnable-burnBatch-address-uint256---uint256---: xref:token/ERC1155.adoc#ERC1155Burnable-burnBatch-address-uint256---uint256---
  1724. :ERC1155Pausable: pass:normal[xref:token/ERC1155.adoc#ERC1155Pausable[`ERC1155Pausable`]]
  1725. :xref-ERC1155Pausable: xref:token/ERC1155.adoc#ERC1155Pausable
  1726. :ERC1155Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155Pausable._beforeTokenTransfer`]]
  1727. :xref-ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1728. :ERC1155Supply: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply[`ERC1155Supply`]]
  1729. :xref-ERC1155Supply: xref:token/ERC1155.adoc#ERC1155Supply
  1730. :ERC1155Supply-totalSupply: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-totalSupply-uint256-[`ERC1155Supply.totalSupply`]]
  1731. :xref-ERC1155Supply-totalSupply-uint256-: xref:token/ERC1155.adoc#ERC1155Supply-totalSupply-uint256-
  1732. :ERC1155Supply-exists: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-exists-uint256-[`ERC1155Supply.exists`]]
  1733. :xref-ERC1155Supply-exists-uint256-: xref:token/ERC1155.adoc#ERC1155Supply-exists-uint256-
  1734. :ERC1155Supply-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155Supply._beforeTokenTransfer`]]
  1735. :xref-ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1736. :ERC1155URIStorage: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage[`ERC1155URIStorage`]]
  1737. :xref-ERC1155URIStorage: xref:token/ERC1155.adoc#ERC1155URIStorage
  1738. :ERC1155URIStorage-uri: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage-uri-uint256-[`ERC1155URIStorage.uri`]]
  1739. :xref-ERC1155URIStorage-uri-uint256-: xref:token/ERC1155.adoc#ERC1155URIStorage-uri-uint256-
  1740. :ERC1155URIStorage-_setURI: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage-_setURI-uint256-string-[`ERC1155URIStorage._setURI`]]
  1741. :xref-ERC1155URIStorage-_setURI-uint256-string-: xref:token/ERC1155.adoc#ERC1155URIStorage-_setURI-uint256-string-
  1742. :ERC1155URIStorage-_setBaseURI: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage-_setBaseURI-string-[`ERC1155URIStorage._setBaseURI`]]
  1743. :xref-ERC1155URIStorage-_setBaseURI-string-: xref:token/ERC1155.adoc#ERC1155URIStorage-_setBaseURI-string-
  1744. :IERC1155MetadataURI: pass:normal[xref:token/ERC1155.adoc#IERC1155MetadataURI[`IERC1155MetadataURI`]]
  1745. :xref-IERC1155MetadataURI: xref:token/ERC1155.adoc#IERC1155MetadataURI
  1746. :IERC1155MetadataURI-uri: pass:normal[xref:token/ERC1155.adoc#IERC1155MetadataURI-uri-uint256-[`IERC1155MetadataURI.uri`]]
  1747. :xref-IERC1155MetadataURI-uri-uint256-: xref:token/ERC1155.adoc#IERC1155MetadataURI-uri-uint256-
  1748. :ERC1155Holder: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder[`ERC1155Holder`]]
  1749. :xref-ERC1155Holder: xref:token/ERC1155.adoc#ERC1155Holder
  1750. :ERC1155Holder-onERC1155Received: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-[`ERC1155Holder.onERC1155Received`]]
  1751. :xref-ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-
  1752. :ERC1155Holder-onERC1155BatchReceived: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`ERC1155Holder.onERC1155BatchReceived`]]
  1753. :xref-ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  1754. :ERC1155Receiver: pass:normal[xref:token/ERC1155.adoc#ERC1155Receiver[`ERC1155Receiver`]]
  1755. :xref-ERC1155Receiver: xref:token/ERC1155.adoc#ERC1155Receiver
  1756. :ERC1155Receiver-supportsInterface: pass:normal[xref:token/ERC1155.adoc#ERC1155Receiver-supportsInterface-bytes4-[`ERC1155Receiver.supportsInterface`]]
  1757. :xref-ERC1155Receiver-supportsInterface-bytes4-: xref:token/ERC1155.adoc#ERC1155Receiver-supportsInterface-bytes4-
  1758. :ERC20: pass:normal[xref:token/ERC20.adoc#ERC20[`ERC20`]]
  1759. :xref-ERC20: xref:token/ERC20.adoc#ERC20
  1760. :ERC20-constructor: pass:normal[xref:token/ERC20.adoc#ERC20-constructor-string-string-[`ERC20.constructor`]]
  1761. :xref-ERC20-constructor-string-string-: xref:token/ERC20.adoc#ERC20-constructor-string-string-
  1762. :ERC20-name: pass:normal[xref:token/ERC20.adoc#ERC20-name--[`ERC20.name`]]
  1763. :xref-ERC20-name--: xref:token/ERC20.adoc#ERC20-name--
  1764. :ERC20-symbol: pass:normal[xref:token/ERC20.adoc#ERC20-symbol--[`ERC20.symbol`]]
  1765. :xref-ERC20-symbol--: xref:token/ERC20.adoc#ERC20-symbol--
  1766. :ERC20-decimals: pass:normal[xref:token/ERC20.adoc#ERC20-decimals--[`ERC20.decimals`]]
  1767. :xref-ERC20-decimals--: xref:token/ERC20.adoc#ERC20-decimals--
  1768. :ERC20-totalSupply: pass:normal[xref:token/ERC20.adoc#ERC20-totalSupply--[`ERC20.totalSupply`]]
  1769. :xref-ERC20-totalSupply--: xref:token/ERC20.adoc#ERC20-totalSupply--
  1770. :ERC20-balanceOf: pass:normal[xref:token/ERC20.adoc#ERC20-balanceOf-address-[`ERC20.balanceOf`]]
  1771. :xref-ERC20-balanceOf-address-: xref:token/ERC20.adoc#ERC20-balanceOf-address-
  1772. :ERC20-transfer: pass:normal[xref:token/ERC20.adoc#ERC20-transfer-address-uint256-[`ERC20.transfer`]]
  1773. :xref-ERC20-transfer-address-uint256-: xref:token/ERC20.adoc#ERC20-transfer-address-uint256-
  1774. :ERC20-allowance: pass:normal[xref:token/ERC20.adoc#ERC20-allowance-address-address-[`ERC20.allowance`]]
  1775. :xref-ERC20-allowance-address-address-: xref:token/ERC20.adoc#ERC20-allowance-address-address-
  1776. :ERC20-approve: pass:normal[xref:token/ERC20.adoc#ERC20-approve-address-uint256-[`ERC20.approve`]]
  1777. :xref-ERC20-approve-address-uint256-: xref:token/ERC20.adoc#ERC20-approve-address-uint256-
  1778. :ERC20-transferFrom: pass:normal[xref:token/ERC20.adoc#ERC20-transferFrom-address-address-uint256-[`ERC20.transferFrom`]]
  1779. :xref-ERC20-transferFrom-address-address-uint256-: xref:token/ERC20.adoc#ERC20-transferFrom-address-address-uint256-
  1780. :ERC20-increaseAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-increaseAllowance-address-uint256-[`ERC20.increaseAllowance`]]
  1781. :xref-ERC20-increaseAllowance-address-uint256-: xref:token/ERC20.adoc#ERC20-increaseAllowance-address-uint256-
  1782. :ERC20-decreaseAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-decreaseAllowance-address-uint256-[`ERC20.decreaseAllowance`]]
  1783. :xref-ERC20-decreaseAllowance-address-uint256-: xref:token/ERC20.adoc#ERC20-decreaseAllowance-address-uint256-
  1784. :ERC20-_transfer: pass:normal[xref:token/ERC20.adoc#ERC20-_transfer-address-address-uint256-[`ERC20._transfer`]]
  1785. :xref-ERC20-_transfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_transfer-address-address-uint256-
  1786. :ERC20-_mint: pass:normal[xref:token/ERC20.adoc#ERC20-_mint-address-uint256-[`ERC20._mint`]]
  1787. :xref-ERC20-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20-_mint-address-uint256-
  1788. :ERC20-_burn: pass:normal[xref:token/ERC20.adoc#ERC20-_burn-address-uint256-[`ERC20._burn`]]
  1789. :xref-ERC20-_burn-address-uint256-: xref:token/ERC20.adoc#ERC20-_burn-address-uint256-
  1790. :ERC20-_approve: pass:normal[xref:token/ERC20.adoc#ERC20-_approve-address-address-uint256-[`ERC20._approve`]]
  1791. :xref-ERC20-_approve-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_approve-address-address-uint256-
  1792. :ERC20-_spendAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-_spendAllowance-address-address-uint256-[`ERC20._spendAllowance`]]
  1793. :xref-ERC20-_spendAllowance-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_spendAllowance-address-address-uint256-
  1794. :ERC20-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20-_beforeTokenTransfer-address-address-uint256-[`ERC20._beforeTokenTransfer`]]
  1795. :xref-ERC20-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_beforeTokenTransfer-address-address-uint256-
  1796. :ERC20-_afterTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20-_afterTokenTransfer-address-address-uint256-[`ERC20._afterTokenTransfer`]]
  1797. :xref-ERC20-_afterTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_afterTokenTransfer-address-address-uint256-
  1798. :IERC20: pass:normal[xref:token/ERC20.adoc#IERC20[`IERC20`]]
  1799. :xref-IERC20: xref:token/ERC20.adoc#IERC20
  1800. :IERC20-totalSupply: pass:normal[xref:token/ERC20.adoc#IERC20-totalSupply--[`IERC20.totalSupply`]]
  1801. :xref-IERC20-totalSupply--: xref:token/ERC20.adoc#IERC20-totalSupply--
  1802. :IERC20-balanceOf: pass:normal[xref:token/ERC20.adoc#IERC20-balanceOf-address-[`IERC20.balanceOf`]]
  1803. :xref-IERC20-balanceOf-address-: xref:token/ERC20.adoc#IERC20-balanceOf-address-
  1804. :IERC20-transfer: pass:normal[xref:token/ERC20.adoc#IERC20-transfer-address-uint256-[`IERC20.transfer`]]
  1805. :xref-IERC20-transfer-address-uint256-: xref:token/ERC20.adoc#IERC20-transfer-address-uint256-
  1806. :IERC20-allowance: pass:normal[xref:token/ERC20.adoc#IERC20-allowance-address-address-[`IERC20.allowance`]]
  1807. :xref-IERC20-allowance-address-address-: xref:token/ERC20.adoc#IERC20-allowance-address-address-
  1808. :IERC20-approve: pass:normal[xref:token/ERC20.adoc#IERC20-approve-address-uint256-[`IERC20.approve`]]
  1809. :xref-IERC20-approve-address-uint256-: xref:token/ERC20.adoc#IERC20-approve-address-uint256-
  1810. :IERC20-transferFrom: pass:normal[xref:token/ERC20.adoc#IERC20-transferFrom-address-address-uint256-[`IERC20.transferFrom`]]
  1811. :xref-IERC20-transferFrom-address-address-uint256-: xref:token/ERC20.adoc#IERC20-transferFrom-address-address-uint256-
  1812. :IERC20-Transfer: pass:normal[xref:token/ERC20.adoc#IERC20-Transfer-address-address-uint256-[`IERC20.Transfer`]]
  1813. :xref-IERC20-Transfer-address-address-uint256-: xref:token/ERC20.adoc#IERC20-Transfer-address-address-uint256-
  1814. :IERC20-Approval: pass:normal[xref:token/ERC20.adoc#IERC20-Approval-address-address-uint256-[`IERC20.Approval`]]
  1815. :xref-IERC20-Approval-address-address-uint256-: xref:token/ERC20.adoc#IERC20-Approval-address-address-uint256-
  1816. :ERC20Burnable: pass:normal[xref:token/ERC20.adoc#ERC20Burnable[`ERC20Burnable`]]
  1817. :xref-ERC20Burnable: xref:token/ERC20.adoc#ERC20Burnable
  1818. :ERC20Burnable-burn: pass:normal[xref:token/ERC20.adoc#ERC20Burnable-burn-uint256-[`ERC20Burnable.burn`]]
  1819. :xref-ERC20Burnable-burn-uint256-: xref:token/ERC20.adoc#ERC20Burnable-burn-uint256-
  1820. :ERC20Burnable-burnFrom: pass:normal[xref:token/ERC20.adoc#ERC20Burnable-burnFrom-address-uint256-[`ERC20Burnable.burnFrom`]]
  1821. :xref-ERC20Burnable-burnFrom-address-uint256-: xref:token/ERC20.adoc#ERC20Burnable-burnFrom-address-uint256-
  1822. :ERC20Capped: pass:normal[xref:token/ERC20.adoc#ERC20Capped[`ERC20Capped`]]
  1823. :xref-ERC20Capped: xref:token/ERC20.adoc#ERC20Capped
  1824. :ERC20Capped-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Capped-constructor-uint256-[`ERC20Capped.constructor`]]
  1825. :xref-ERC20Capped-constructor-uint256-: xref:token/ERC20.adoc#ERC20Capped-constructor-uint256-
  1826. :ERC20Capped-cap: pass:normal[xref:token/ERC20.adoc#ERC20Capped-cap--[`ERC20Capped.cap`]]
  1827. :xref-ERC20Capped-cap--: xref:token/ERC20.adoc#ERC20Capped-cap--
  1828. :ERC20Capped-_mint: pass:normal[xref:token/ERC20.adoc#ERC20Capped-_mint-address-uint256-[`ERC20Capped._mint`]]
  1829. :xref-ERC20Capped-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20Capped-_mint-address-uint256-
  1830. :ERC20FlashMint: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint[`ERC20FlashMint`]]
  1831. :xref-ERC20FlashMint: xref:token/ERC20.adoc#ERC20FlashMint
  1832. :ERC20FlashMint-maxFlashLoan: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-maxFlashLoan-address-[`ERC20FlashMint.maxFlashLoan`]]
  1833. :xref-ERC20FlashMint-maxFlashLoan-address-: xref:token/ERC20.adoc#ERC20FlashMint-maxFlashLoan-address-
  1834. :ERC20FlashMint-flashFee: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-flashFee-address-uint256-[`ERC20FlashMint.flashFee`]]
  1835. :xref-ERC20FlashMint-flashFee-address-uint256-: xref:token/ERC20.adoc#ERC20FlashMint-flashFee-address-uint256-
  1836. :ERC20FlashMint-_flashFeeReceiver: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-_flashFeeReceiver--[`ERC20FlashMint._flashFeeReceiver`]]
  1837. :xref-ERC20FlashMint-_flashFeeReceiver--: xref:token/ERC20.adoc#ERC20FlashMint-_flashFeeReceiver--
  1838. :ERC20FlashMint-flashLoan: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-[`ERC20FlashMint.flashLoan`]]
  1839. :xref-ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-: xref:token/ERC20.adoc#ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-
  1840. :ERC20Pausable: pass:normal[xref:token/ERC20.adoc#ERC20Pausable[`ERC20Pausable`]]
  1841. :xref-ERC20Pausable: xref:token/ERC20.adoc#ERC20Pausable
  1842. :ERC20Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Pausable-_beforeTokenTransfer-address-address-uint256-[`ERC20Pausable._beforeTokenTransfer`]]
  1843. :xref-ERC20Pausable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Pausable-_beforeTokenTransfer-address-address-uint256-
  1844. :ERC20Snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot[`ERC20Snapshot`]]
  1845. :xref-ERC20Snapshot: xref:token/ERC20.adoc#ERC20Snapshot
  1846. :ERC20Snapshot-_snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_snapshot--[`ERC20Snapshot._snapshot`]]
  1847. :xref-ERC20Snapshot-_snapshot--: xref:token/ERC20.adoc#ERC20Snapshot-_snapshot--
  1848. :ERC20Snapshot-_getCurrentSnapshotId: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_getCurrentSnapshotId--[`ERC20Snapshot._getCurrentSnapshotId`]]
  1849. :xref-ERC20Snapshot-_getCurrentSnapshotId--: xref:token/ERC20.adoc#ERC20Snapshot-_getCurrentSnapshotId--
  1850. :ERC20Snapshot-balanceOfAt: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-balanceOfAt-address-uint256-[`ERC20Snapshot.balanceOfAt`]]
  1851. :xref-ERC20Snapshot-balanceOfAt-address-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-balanceOfAt-address-uint256-
  1852. :ERC20Snapshot-totalSupplyAt: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-totalSupplyAt-uint256-[`ERC20Snapshot.totalSupplyAt`]]
  1853. :xref-ERC20Snapshot-totalSupplyAt-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-totalSupplyAt-uint256-
  1854. :ERC20Snapshot-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-[`ERC20Snapshot._beforeTokenTransfer`]]
  1855. :xref-ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-
  1856. :ERC20Snapshot-Snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-Snapshot-uint256-[`ERC20Snapshot.Snapshot`]]
  1857. :xref-ERC20Snapshot-Snapshot-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-Snapshot-uint256-
  1858. :ERC20Snapshot-Snapshots: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-Snapshots[`ERC20Snapshot.Snapshots`]]
  1859. :xref-ERC20Snapshot-Snapshots: xref:token/ERC20.adoc#ERC20Snapshot-Snapshots
  1860. :ERC20Votes: pass:normal[xref:token/ERC20.adoc#ERC20Votes[`ERC20Votes`]]
  1861. :xref-ERC20Votes: xref:token/ERC20.adoc#ERC20Votes
  1862. :ERC20Votes-checkpoints: pass:normal[xref:token/ERC20.adoc#ERC20Votes-checkpoints-address-uint32-[`ERC20Votes.checkpoints`]]
  1863. :xref-ERC20Votes-checkpoints-address-uint32-: xref:token/ERC20.adoc#ERC20Votes-checkpoints-address-uint32-
  1864. :ERC20Votes-numCheckpoints: pass:normal[xref:token/ERC20.adoc#ERC20Votes-numCheckpoints-address-[`ERC20Votes.numCheckpoints`]]
  1865. :xref-ERC20Votes-numCheckpoints-address-: xref:token/ERC20.adoc#ERC20Votes-numCheckpoints-address-
  1866. :ERC20Votes-delegates: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegates-address-[`ERC20Votes.delegates`]]
  1867. :xref-ERC20Votes-delegates-address-: xref:token/ERC20.adoc#ERC20Votes-delegates-address-
  1868. :ERC20Votes-getVotes: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getVotes-address-[`ERC20Votes.getVotes`]]
  1869. :xref-ERC20Votes-getVotes-address-: xref:token/ERC20.adoc#ERC20Votes-getVotes-address-
  1870. :ERC20Votes-getPastVotes: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getPastVotes-address-uint256-[`ERC20Votes.getPastVotes`]]
  1871. :xref-ERC20Votes-getPastVotes-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-getPastVotes-address-uint256-
  1872. :ERC20Votes-getPastTotalSupply: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getPastTotalSupply-uint256-[`ERC20Votes.getPastTotalSupply`]]
  1873. :xref-ERC20Votes-getPastTotalSupply-uint256-: xref:token/ERC20.adoc#ERC20Votes-getPastTotalSupply-uint256-
  1874. :ERC20Votes-delegate: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegate-address-[`ERC20Votes.delegate`]]
  1875. :xref-ERC20Votes-delegate-address-: xref:token/ERC20.adoc#ERC20Votes-delegate-address-
  1876. :ERC20Votes-delegateBySig: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`ERC20Votes.delegateBySig`]]
  1877. :xref-ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  1878. :ERC20Votes-_maxSupply: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_maxSupply--[`ERC20Votes._maxSupply`]]
  1879. :xref-ERC20Votes-_maxSupply--: xref:token/ERC20.adoc#ERC20Votes-_maxSupply--
  1880. :ERC20Votes-_mint: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_mint-address-uint256-[`ERC20Votes._mint`]]
  1881. :xref-ERC20Votes-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_mint-address-uint256-
  1882. :ERC20Votes-_burn: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_burn-address-uint256-[`ERC20Votes._burn`]]
  1883. :xref-ERC20Votes-_burn-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_burn-address-uint256-
  1884. :ERC20Votes-_afterTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_afterTokenTransfer-address-address-uint256-[`ERC20Votes._afterTokenTransfer`]]
  1885. :xref-ERC20Votes-_afterTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_afterTokenTransfer-address-address-uint256-
  1886. :ERC20Votes-_delegate: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_delegate-address-address-[`ERC20Votes._delegate`]]
  1887. :xref-ERC20Votes-_delegate-address-address-: xref:token/ERC20.adoc#ERC20Votes-_delegate-address-address-
  1888. :ERC20Votes-Checkpoint: pass:normal[xref:token/ERC20.adoc#ERC20Votes-Checkpoint[`ERC20Votes.Checkpoint`]]
  1889. :xref-ERC20Votes-Checkpoint: xref:token/ERC20.adoc#ERC20Votes-Checkpoint
  1890. :ERC20VotesComp: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp[`ERC20VotesComp`]]
  1891. :xref-ERC20VotesComp: xref:token/ERC20.adoc#ERC20VotesComp
  1892. :ERC20VotesComp-getCurrentVotes: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-getCurrentVotes-address-[`ERC20VotesComp.getCurrentVotes`]]
  1893. :xref-ERC20VotesComp-getCurrentVotes-address-: xref:token/ERC20.adoc#ERC20VotesComp-getCurrentVotes-address-
  1894. :ERC20VotesComp-getPriorVotes: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-getPriorVotes-address-uint256-[`ERC20VotesComp.getPriorVotes`]]
  1895. :xref-ERC20VotesComp-getPriorVotes-address-uint256-: xref:token/ERC20.adoc#ERC20VotesComp-getPriorVotes-address-uint256-
  1896. :ERC20VotesComp-_maxSupply: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-_maxSupply--[`ERC20VotesComp._maxSupply`]]
  1897. :xref-ERC20VotesComp-_maxSupply--: xref:token/ERC20.adoc#ERC20VotesComp-_maxSupply--
  1898. :ERC20Wrapper: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper[`ERC20Wrapper`]]
  1899. :xref-ERC20Wrapper: xref:token/ERC20.adoc#ERC20Wrapper
  1900. :ERC20Wrapper-underlying: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-underlying-contract-IERC20[`ERC20Wrapper.underlying`]]
  1901. :xref-ERC20Wrapper-underlying-contract-IERC20: xref:token/ERC20.adoc#ERC20Wrapper-underlying-contract-IERC20
  1902. :ERC20Wrapper-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-constructor-contract-IERC20-[`ERC20Wrapper.constructor`]]
  1903. :xref-ERC20Wrapper-constructor-contract-IERC20-: xref:token/ERC20.adoc#ERC20Wrapper-constructor-contract-IERC20-
  1904. :ERC20Wrapper-decimals: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-decimals--[`ERC20Wrapper.decimals`]]
  1905. :xref-ERC20Wrapper-decimals--: xref:token/ERC20.adoc#ERC20Wrapper-decimals--
  1906. :ERC20Wrapper-depositFor: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-depositFor-address-uint256-[`ERC20Wrapper.depositFor`]]
  1907. :xref-ERC20Wrapper-depositFor-address-uint256-: xref:token/ERC20.adoc#ERC20Wrapper-depositFor-address-uint256-
  1908. :ERC20Wrapper-withdrawTo: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-withdrawTo-address-uint256-[`ERC20Wrapper.withdrawTo`]]
  1909. :xref-ERC20Wrapper-withdrawTo-address-uint256-: xref:token/ERC20.adoc#ERC20Wrapper-withdrawTo-address-uint256-
  1910. :ERC20Wrapper-_recover: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-_recover-address-[`ERC20Wrapper._recover`]]
  1911. :xref-ERC20Wrapper-_recover-address-: xref:token/ERC20.adoc#ERC20Wrapper-_recover-address-
  1912. :ERC4626: pass:normal[xref:token/ERC20.adoc#ERC4626[`ERC4626`]]
  1913. :xref-ERC4626: xref:token/ERC20.adoc#ERC4626
  1914. :ERC4626-constructor: pass:normal[xref:token/ERC20.adoc#ERC4626-constructor-contract-IERC20Metadata-[`ERC4626.constructor`]]
  1915. :xref-ERC4626-constructor-contract-IERC20Metadata-: xref:token/ERC20.adoc#ERC4626-constructor-contract-IERC20Metadata-
  1916. :ERC4626-asset: pass:normal[xref:token/ERC20.adoc#ERC4626-asset--[`ERC4626.asset`]]
  1917. :xref-ERC4626-asset--: xref:token/ERC20.adoc#ERC4626-asset--
  1918. :ERC4626-totalAssets: pass:normal[xref:token/ERC20.adoc#ERC4626-totalAssets--[`ERC4626.totalAssets`]]
  1919. :xref-ERC4626-totalAssets--: xref:token/ERC20.adoc#ERC4626-totalAssets--
  1920. :ERC4626-convertToShares: pass:normal[xref:token/ERC20.adoc#ERC4626-convertToShares-uint256-[`ERC4626.convertToShares`]]
  1921. :xref-ERC4626-convertToShares-uint256-: xref:token/ERC20.adoc#ERC4626-convertToShares-uint256-
  1922. :ERC4626-convertToAssets: pass:normal[xref:token/ERC20.adoc#ERC4626-convertToAssets-uint256-[`ERC4626.convertToAssets`]]
  1923. :xref-ERC4626-convertToAssets-uint256-: xref:token/ERC20.adoc#ERC4626-convertToAssets-uint256-
  1924. :ERC4626-maxDeposit: pass:normal[xref:token/ERC20.adoc#ERC4626-maxDeposit-address-[`ERC4626.maxDeposit`]]
  1925. :xref-ERC4626-maxDeposit-address-: xref:token/ERC20.adoc#ERC4626-maxDeposit-address-
  1926. :ERC4626-maxMint: pass:normal[xref:token/ERC20.adoc#ERC4626-maxMint-address-[`ERC4626.maxMint`]]
  1927. :xref-ERC4626-maxMint-address-: xref:token/ERC20.adoc#ERC4626-maxMint-address-
  1928. :ERC4626-maxWithdraw: pass:normal[xref:token/ERC20.adoc#ERC4626-maxWithdraw-address-[`ERC4626.maxWithdraw`]]
  1929. :xref-ERC4626-maxWithdraw-address-: xref:token/ERC20.adoc#ERC4626-maxWithdraw-address-
  1930. :ERC4626-maxRedeem: pass:normal[xref:token/ERC20.adoc#ERC4626-maxRedeem-address-[`ERC4626.maxRedeem`]]
  1931. :xref-ERC4626-maxRedeem-address-: xref:token/ERC20.adoc#ERC4626-maxRedeem-address-
  1932. :ERC4626-previewDeposit: pass:normal[xref:token/ERC20.adoc#ERC4626-previewDeposit-uint256-[`ERC4626.previewDeposit`]]
  1933. :xref-ERC4626-previewDeposit-uint256-: xref:token/ERC20.adoc#ERC4626-previewDeposit-uint256-
  1934. :ERC4626-previewMint: pass:normal[xref:token/ERC20.adoc#ERC4626-previewMint-uint256-[`ERC4626.previewMint`]]
  1935. :xref-ERC4626-previewMint-uint256-: xref:token/ERC20.adoc#ERC4626-previewMint-uint256-
  1936. :ERC4626-previewWithdraw: pass:normal[xref:token/ERC20.adoc#ERC4626-previewWithdraw-uint256-[`ERC4626.previewWithdraw`]]
  1937. :xref-ERC4626-previewWithdraw-uint256-: xref:token/ERC20.adoc#ERC4626-previewWithdraw-uint256-
  1938. :ERC4626-previewRedeem: pass:normal[xref:token/ERC20.adoc#ERC4626-previewRedeem-uint256-[`ERC4626.previewRedeem`]]
  1939. :xref-ERC4626-previewRedeem-uint256-: xref:token/ERC20.adoc#ERC4626-previewRedeem-uint256-
  1940. :ERC4626-deposit: pass:normal[xref:token/ERC20.adoc#ERC4626-deposit-uint256-address-[`ERC4626.deposit`]]
  1941. :xref-ERC4626-deposit-uint256-address-: xref:token/ERC20.adoc#ERC4626-deposit-uint256-address-
  1942. :ERC4626-mint: pass:normal[xref:token/ERC20.adoc#ERC4626-mint-uint256-address-[`ERC4626.mint`]]
  1943. :xref-ERC4626-mint-uint256-address-: xref:token/ERC20.adoc#ERC4626-mint-uint256-address-
  1944. :ERC4626-withdraw: pass:normal[xref:token/ERC20.adoc#ERC4626-withdraw-uint256-address-address-[`ERC4626.withdraw`]]
  1945. :xref-ERC4626-withdraw-uint256-address-address-: xref:token/ERC20.adoc#ERC4626-withdraw-uint256-address-address-
  1946. :ERC4626-redeem: pass:normal[xref:token/ERC20.adoc#ERC4626-redeem-uint256-address-address-[`ERC4626.redeem`]]
  1947. :xref-ERC4626-redeem-uint256-address-address-: xref:token/ERC20.adoc#ERC4626-redeem-uint256-address-address-
  1948. :ERC4626-_convertToShares: pass:normal[xref:token/ERC20.adoc#ERC4626-_convertToShares-uint256-enum-Math-Rounding-[`ERC4626._convertToShares`]]
  1949. :xref-ERC4626-_convertToShares-uint256-enum-Math-Rounding-: xref:token/ERC20.adoc#ERC4626-_convertToShares-uint256-enum-Math-Rounding-
  1950. :ERC4626-_convertToAssets: pass:normal[xref:token/ERC20.adoc#ERC4626-_convertToAssets-uint256-enum-Math-Rounding-[`ERC4626._convertToAssets`]]
  1951. :xref-ERC4626-_convertToAssets-uint256-enum-Math-Rounding-: xref:token/ERC20.adoc#ERC4626-_convertToAssets-uint256-enum-Math-Rounding-
  1952. :ERC4626-_deposit: pass:normal[xref:token/ERC20.adoc#ERC4626-_deposit-address-address-uint256-uint256-[`ERC4626._deposit`]]
  1953. :xref-ERC4626-_deposit-address-address-uint256-uint256-: xref:token/ERC20.adoc#ERC4626-_deposit-address-address-uint256-uint256-
  1954. :ERC4626-_withdraw: pass:normal[xref:token/ERC20.adoc#ERC4626-_withdraw-address-address-address-uint256-uint256-[`ERC4626._withdraw`]]
  1955. :xref-ERC4626-_withdraw-address-address-address-uint256-uint256-: xref:token/ERC20.adoc#ERC4626-_withdraw-address-address-address-uint256-uint256-
  1956. :IERC20Metadata: pass:normal[xref:token/ERC20.adoc#IERC20Metadata[`IERC20Metadata`]]
  1957. :xref-IERC20Metadata: xref:token/ERC20.adoc#IERC20Metadata
  1958. :IERC20Metadata-name: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-name--[`IERC20Metadata.name`]]
  1959. :xref-IERC20Metadata-name--: xref:token/ERC20.adoc#IERC20Metadata-name--
  1960. :IERC20Metadata-symbol: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-symbol--[`IERC20Metadata.symbol`]]
  1961. :xref-IERC20Metadata-symbol--: xref:token/ERC20.adoc#IERC20Metadata-symbol--
  1962. :IERC20Metadata-decimals: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-decimals--[`IERC20Metadata.decimals`]]
  1963. :xref-IERC20Metadata-decimals--: xref:token/ERC20.adoc#IERC20Metadata-decimals--
  1964. :ERC20Permit: pass:normal[xref:token/ERC20.adoc#ERC20Permit[`ERC20Permit`]]
  1965. :xref-ERC20Permit: xref:token/ERC20.adoc#ERC20Permit
  1966. :ERC20Permit-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Permit-constructor-string-[`ERC20Permit.constructor`]]
  1967. :xref-ERC20Permit-constructor-string-: xref:token/ERC20.adoc#ERC20Permit-constructor-string-
  1968. :ERC20Permit-permit: pass:normal[xref:token/ERC20.adoc#ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`ERC20Permit.permit`]]
  1969. :xref-ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1970. :ERC20Permit-nonces: pass:normal[xref:token/ERC20.adoc#ERC20Permit-nonces-address-[`ERC20Permit.nonces`]]
  1971. :xref-ERC20Permit-nonces-address-: xref:token/ERC20.adoc#ERC20Permit-nonces-address-
  1972. :ERC20Permit-DOMAIN_SEPARATOR: pass:normal[xref:token/ERC20.adoc#ERC20Permit-DOMAIN_SEPARATOR--[`ERC20Permit.DOMAIN_SEPARATOR`]]
  1973. :xref-ERC20Permit-DOMAIN_SEPARATOR--: xref:token/ERC20.adoc#ERC20Permit-DOMAIN_SEPARATOR--
  1974. :ERC20Permit-_useNonce: pass:normal[xref:token/ERC20.adoc#ERC20Permit-_useNonce-address-[`ERC20Permit._useNonce`]]
  1975. :xref-ERC20Permit-_useNonce-address-: xref:token/ERC20.adoc#ERC20Permit-_useNonce-address-
  1976. :IERC20Permit: pass:normal[xref:token/ERC20.adoc#IERC20Permit[`IERC20Permit`]]
  1977. :xref-IERC20Permit: xref:token/ERC20.adoc#IERC20Permit
  1978. :IERC20Permit-permit: pass:normal[xref:token/ERC20.adoc#IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`IERC20Permit.permit`]]
  1979. :xref-IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1980. :IERC20Permit-nonces: pass:normal[xref:token/ERC20.adoc#IERC20Permit-nonces-address-[`IERC20Permit.nonces`]]
  1981. :xref-IERC20Permit-nonces-address-: xref:token/ERC20.adoc#IERC20Permit-nonces-address-
  1982. :IERC20Permit-DOMAIN_SEPARATOR: pass:normal[xref:token/ERC20.adoc#IERC20Permit-DOMAIN_SEPARATOR--[`IERC20Permit.DOMAIN_SEPARATOR`]]
  1983. :xref-IERC20Permit-DOMAIN_SEPARATOR--: xref:token/ERC20.adoc#IERC20Permit-DOMAIN_SEPARATOR--
  1984. :SafeERC20: pass:normal[xref:token/ERC20.adoc#SafeERC20[`SafeERC20`]]
  1985. :xref-SafeERC20: xref:token/ERC20.adoc#SafeERC20
  1986. :SafeERC20-safeTransfer: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeTransfer-contract-IERC20-address-uint256-[`SafeERC20.safeTransfer`]]
  1987. :xref-SafeERC20-safeTransfer-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeTransfer-contract-IERC20-address-uint256-
  1988. :SafeERC20-safeTransferFrom: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-[`SafeERC20.safeTransferFrom`]]
  1989. :xref-SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-
  1990. :SafeERC20-safeApprove: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeApprove-contract-IERC20-address-uint256-[`SafeERC20.safeApprove`]]
  1991. :xref-SafeERC20-safeApprove-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeApprove-contract-IERC20-address-uint256-
  1992. :SafeERC20-safeIncreaseAllowance: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-[`SafeERC20.safeIncreaseAllowance`]]
  1993. :xref-SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-
  1994. :SafeERC20-safeDecreaseAllowance: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-[`SafeERC20.safeDecreaseAllowance`]]
  1995. :xref-SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-
  1996. :SafeERC20-safePermit: pass:normal[xref:token/ERC20.adoc#SafeERC20-safePermit-contract-IERC20Permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`SafeERC20.safePermit`]]
  1997. :xref-SafeERC20-safePermit-contract-IERC20Permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#SafeERC20-safePermit-contract-IERC20Permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1998. :TokenTimelock: pass:normal[xref:token/ERC20.adoc#TokenTimelock[`TokenTimelock`]]
  1999. :xref-TokenTimelock: xref:token/ERC20.adoc#TokenTimelock
  2000. :TokenTimelock-constructor: pass:normal[xref:token/ERC20.adoc#TokenTimelock-constructor-contract-IERC20-address-uint256-[`TokenTimelock.constructor`]]
  2001. :xref-TokenTimelock-constructor-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#TokenTimelock-constructor-contract-IERC20-address-uint256-
  2002. :TokenTimelock-token: pass:normal[xref:token/ERC20.adoc#TokenTimelock-token--[`TokenTimelock.token`]]
  2003. :xref-TokenTimelock-token--: xref:token/ERC20.adoc#TokenTimelock-token--
  2004. :TokenTimelock-beneficiary: pass:normal[xref:token/ERC20.adoc#TokenTimelock-beneficiary--[`TokenTimelock.beneficiary`]]
  2005. :xref-TokenTimelock-beneficiary--: xref:token/ERC20.adoc#TokenTimelock-beneficiary--
  2006. :TokenTimelock-releaseTime: pass:normal[xref:token/ERC20.adoc#TokenTimelock-releaseTime--[`TokenTimelock.releaseTime`]]
  2007. :xref-TokenTimelock-releaseTime--: xref:token/ERC20.adoc#TokenTimelock-releaseTime--
  2008. :TokenTimelock-release: pass:normal[xref:token/ERC20.adoc#TokenTimelock-release--[`TokenTimelock.release`]]
  2009. :xref-TokenTimelock-release--: xref:token/ERC20.adoc#TokenTimelock-release--
  2010. :ERC721: pass:normal[xref:token/ERC721.adoc#ERC721[`ERC721`]]
  2011. :xref-ERC721: xref:token/ERC721.adoc#ERC721
  2012. :ERC721-constructor: pass:normal[xref:token/ERC721.adoc#ERC721-constructor-string-string-[`ERC721.constructor`]]
  2013. :xref-ERC721-constructor-string-string-: xref:token/ERC721.adoc#ERC721-constructor-string-string-
  2014. :ERC721-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721-supportsInterface-bytes4-[`ERC721.supportsInterface`]]
  2015. :xref-ERC721-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721-supportsInterface-bytes4-
  2016. :ERC721-balanceOf: pass:normal[xref:token/ERC721.adoc#ERC721-balanceOf-address-[`ERC721.balanceOf`]]
  2017. :xref-ERC721-balanceOf-address-: xref:token/ERC721.adoc#ERC721-balanceOf-address-
  2018. :ERC721-ownerOf: pass:normal[xref:token/ERC721.adoc#ERC721-ownerOf-uint256-[`ERC721.ownerOf`]]
  2019. :xref-ERC721-ownerOf-uint256-: xref:token/ERC721.adoc#ERC721-ownerOf-uint256-
  2020. :ERC721-name: pass:normal[xref:token/ERC721.adoc#ERC721-name--[`ERC721.name`]]
  2021. :xref-ERC721-name--: xref:token/ERC721.adoc#ERC721-name--
  2022. :ERC721-symbol: pass:normal[xref:token/ERC721.adoc#ERC721-symbol--[`ERC721.symbol`]]
  2023. :xref-ERC721-symbol--: xref:token/ERC721.adoc#ERC721-symbol--
  2024. :ERC721-tokenURI: pass:normal[xref:token/ERC721.adoc#ERC721-tokenURI-uint256-[`ERC721.tokenURI`]]
  2025. :xref-ERC721-tokenURI-uint256-: xref:token/ERC721.adoc#ERC721-tokenURI-uint256-
  2026. :ERC721-_baseURI: pass:normal[xref:token/ERC721.adoc#ERC721-_baseURI--[`ERC721._baseURI`]]
  2027. :xref-ERC721-_baseURI--: xref:token/ERC721.adoc#ERC721-_baseURI--
  2028. :ERC721-approve: pass:normal[xref:token/ERC721.adoc#ERC721-approve-address-uint256-[`ERC721.approve`]]
  2029. :xref-ERC721-approve-address-uint256-: xref:token/ERC721.adoc#ERC721-approve-address-uint256-
  2030. :ERC721-getApproved: pass:normal[xref:token/ERC721.adoc#ERC721-getApproved-uint256-[`ERC721.getApproved`]]
  2031. :xref-ERC721-getApproved-uint256-: xref:token/ERC721.adoc#ERC721-getApproved-uint256-
  2032. :ERC721-setApprovalForAll: pass:normal[xref:token/ERC721.adoc#ERC721-setApprovalForAll-address-bool-[`ERC721.setApprovalForAll`]]
  2033. :xref-ERC721-setApprovalForAll-address-bool-: xref:token/ERC721.adoc#ERC721-setApprovalForAll-address-bool-
  2034. :ERC721-isApprovedForAll: pass:normal[xref:token/ERC721.adoc#ERC721-isApprovedForAll-address-address-[`ERC721.isApprovedForAll`]]
  2035. :xref-ERC721-isApprovedForAll-address-address-: xref:token/ERC721.adoc#ERC721-isApprovedForAll-address-address-
  2036. :ERC721-transferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-transferFrom-address-address-uint256-[`ERC721.transferFrom`]]
  2037. :xref-ERC721-transferFrom-address-address-uint256-: xref:token/ERC721.adoc#ERC721-transferFrom-address-address-uint256-
  2038. :ERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-[`ERC721.safeTransferFrom`]]
  2039. :xref-ERC721-safeTransferFrom-address-address-uint256-: xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-
  2040. :ERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-bytes-[`ERC721.safeTransferFrom`]]
  2041. :xref-ERC721-safeTransferFrom-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-bytes-
  2042. :ERC721-_safeTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_safeTransfer-address-address-uint256-bytes-[`ERC721._safeTransfer`]]
  2043. :xref-ERC721-_safeTransfer-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-_safeTransfer-address-address-uint256-bytes-
  2044. :ERC721-_exists: pass:normal[xref:token/ERC721.adoc#ERC721-_exists-uint256-[`ERC721._exists`]]
  2045. :xref-ERC721-_exists-uint256-: xref:token/ERC721.adoc#ERC721-_exists-uint256-
  2046. :ERC721-_isApprovedOrOwner: pass:normal[xref:token/ERC721.adoc#ERC721-_isApprovedOrOwner-address-uint256-[`ERC721._isApprovedOrOwner`]]
  2047. :xref-ERC721-_isApprovedOrOwner-address-uint256-: xref:token/ERC721.adoc#ERC721-_isApprovedOrOwner-address-uint256-
  2048. :ERC721-_safeMint: pass:normal[xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-[`ERC721._safeMint`]]
  2049. :xref-ERC721-_safeMint-address-uint256-: xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-
  2050. :ERC721-_safeMint: pass:normal[xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-bytes-[`ERC721._safeMint`]]
  2051. :xref-ERC721-_safeMint-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-bytes-
  2052. :ERC721-_mint: pass:normal[xref:token/ERC721.adoc#ERC721-_mint-address-uint256-[`ERC721._mint`]]
  2053. :xref-ERC721-_mint-address-uint256-: xref:token/ERC721.adoc#ERC721-_mint-address-uint256-
  2054. :ERC721-_burn: pass:normal[xref:token/ERC721.adoc#ERC721-_burn-uint256-[`ERC721._burn`]]
  2055. :xref-ERC721-_burn-uint256-: xref:token/ERC721.adoc#ERC721-_burn-uint256-
  2056. :ERC721-_transfer: pass:normal[xref:token/ERC721.adoc#ERC721-_transfer-address-address-uint256-[`ERC721._transfer`]]
  2057. :xref-ERC721-_transfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_transfer-address-address-uint256-
  2058. :ERC721-_approve: pass:normal[xref:token/ERC721.adoc#ERC721-_approve-address-uint256-[`ERC721._approve`]]
  2059. :xref-ERC721-_approve-address-uint256-: xref:token/ERC721.adoc#ERC721-_approve-address-uint256-
  2060. :ERC721-_setApprovalForAll: pass:normal[xref:token/ERC721.adoc#ERC721-_setApprovalForAll-address-address-bool-[`ERC721._setApprovalForAll`]]
  2061. :xref-ERC721-_setApprovalForAll-address-address-bool-: xref:token/ERC721.adoc#ERC721-_setApprovalForAll-address-address-bool-
  2062. :ERC721-_requireMinted: pass:normal[xref:token/ERC721.adoc#ERC721-_requireMinted-uint256-[`ERC721._requireMinted`]]
  2063. :xref-ERC721-_requireMinted-uint256-: xref:token/ERC721.adoc#ERC721-_requireMinted-uint256-
  2064. :ERC721-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_beforeTokenTransfer-address-address-uint256-[`ERC721._beforeTokenTransfer`]]
  2065. :xref-ERC721-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_beforeTokenTransfer-address-address-uint256-
  2066. :ERC721-_afterTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_afterTokenTransfer-address-address-uint256-[`ERC721._afterTokenTransfer`]]
  2067. :xref-ERC721-_afterTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_afterTokenTransfer-address-address-uint256-
  2068. :IERC721: pass:normal[xref:token/ERC721.adoc#IERC721[`IERC721`]]
  2069. :xref-IERC721: xref:token/ERC721.adoc#IERC721
  2070. :IERC721-balanceOf: pass:normal[xref:token/ERC721.adoc#IERC721-balanceOf-address-[`IERC721.balanceOf`]]
  2071. :xref-IERC721-balanceOf-address-: xref:token/ERC721.adoc#IERC721-balanceOf-address-
  2072. :IERC721-ownerOf: pass:normal[xref:token/ERC721.adoc#IERC721-ownerOf-uint256-[`IERC721.ownerOf`]]
  2073. :xref-IERC721-ownerOf-uint256-: xref:token/ERC721.adoc#IERC721-ownerOf-uint256-
  2074. :IERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-bytes-[`IERC721.safeTransferFrom`]]
  2075. :xref-IERC721-safeTransferFrom-address-address-uint256-bytes-: xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-bytes-
  2076. :IERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-[`IERC721.safeTransferFrom`]]
  2077. :xref-IERC721-safeTransferFrom-address-address-uint256-: xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-
  2078. :IERC721-transferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-transferFrom-address-address-uint256-[`IERC721.transferFrom`]]
  2079. :xref-IERC721-transferFrom-address-address-uint256-: xref:token/ERC721.adoc#IERC721-transferFrom-address-address-uint256-
  2080. :IERC721-approve: pass:normal[xref:token/ERC721.adoc#IERC721-approve-address-uint256-[`IERC721.approve`]]
  2081. :xref-IERC721-approve-address-uint256-: xref:token/ERC721.adoc#IERC721-approve-address-uint256-
  2082. :IERC721-setApprovalForAll: pass:normal[xref:token/ERC721.adoc#IERC721-setApprovalForAll-address-bool-[`IERC721.setApprovalForAll`]]
  2083. :xref-IERC721-setApprovalForAll-address-bool-: xref:token/ERC721.adoc#IERC721-setApprovalForAll-address-bool-
  2084. :IERC721-getApproved: pass:normal[xref:token/ERC721.adoc#IERC721-getApproved-uint256-[`IERC721.getApproved`]]
  2085. :xref-IERC721-getApproved-uint256-: xref:token/ERC721.adoc#IERC721-getApproved-uint256-
  2086. :IERC721-isApprovedForAll: pass:normal[xref:token/ERC721.adoc#IERC721-isApprovedForAll-address-address-[`IERC721.isApprovedForAll`]]
  2087. :xref-IERC721-isApprovedForAll-address-address-: xref:token/ERC721.adoc#IERC721-isApprovedForAll-address-address-
  2088. :IERC721-Transfer: pass:normal[xref:token/ERC721.adoc#IERC721-Transfer-address-address-uint256-[`IERC721.Transfer`]]
  2089. :xref-IERC721-Transfer-address-address-uint256-: xref:token/ERC721.adoc#IERC721-Transfer-address-address-uint256-
  2090. :IERC721-Approval: pass:normal[xref:token/ERC721.adoc#IERC721-Approval-address-address-uint256-[`IERC721.Approval`]]
  2091. :xref-IERC721-Approval-address-address-uint256-: xref:token/ERC721.adoc#IERC721-Approval-address-address-uint256-
  2092. :IERC721-ApprovalForAll: pass:normal[xref:token/ERC721.adoc#IERC721-ApprovalForAll-address-address-bool-[`IERC721.ApprovalForAll`]]
  2093. :xref-IERC721-ApprovalForAll-address-address-bool-: xref:token/ERC721.adoc#IERC721-ApprovalForAll-address-address-bool-
  2094. :IERC721Receiver: pass:normal[xref:token/ERC721.adoc#IERC721Receiver[`IERC721Receiver`]]
  2095. :xref-IERC721Receiver: xref:token/ERC721.adoc#IERC721Receiver
  2096. :IERC721Receiver-onERC721Received: pass:normal[xref:token/ERC721.adoc#IERC721Receiver-onERC721Received-address-address-uint256-bytes-[`IERC721Receiver.onERC721Received`]]
  2097. :xref-IERC721Receiver-onERC721Received-address-address-uint256-bytes-: xref:token/ERC721.adoc#IERC721Receiver-onERC721Received-address-address-uint256-bytes-
  2098. :ERC721Burnable: pass:normal[xref:token/ERC721.adoc#ERC721Burnable[`ERC721Burnable`]]
  2099. :xref-ERC721Burnable: xref:token/ERC721.adoc#ERC721Burnable
  2100. :ERC721Burnable-burn: pass:normal[xref:token/ERC721.adoc#ERC721Burnable-burn-uint256-[`ERC721Burnable.burn`]]
  2101. :xref-ERC721Burnable-burn-uint256-: xref:token/ERC721.adoc#ERC721Burnable-burn-uint256-
  2102. :ERC721Enumerable: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable[`ERC721Enumerable`]]
  2103. :xref-ERC721Enumerable: xref:token/ERC721.adoc#ERC721Enumerable
  2104. :ERC721Enumerable-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-supportsInterface-bytes4-[`ERC721Enumerable.supportsInterface`]]
  2105. :xref-ERC721Enumerable-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721Enumerable-supportsInterface-bytes4-
  2106. :ERC721Enumerable-tokenOfOwnerByIndex: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-[`ERC721Enumerable.tokenOfOwnerByIndex`]]
  2107. :xref-ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-
  2108. :ERC721Enumerable-totalSupply: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-totalSupply--[`ERC721Enumerable.totalSupply`]]
  2109. :xref-ERC721Enumerable-totalSupply--: xref:token/ERC721.adoc#ERC721Enumerable-totalSupply--
  2110. :ERC721Enumerable-tokenByIndex: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-tokenByIndex-uint256-[`ERC721Enumerable.tokenByIndex`]]
  2111. :xref-ERC721Enumerable-tokenByIndex-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-tokenByIndex-uint256-
  2112. :ERC721Enumerable-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-[`ERC721Enumerable._beforeTokenTransfer`]]
  2113. :xref-ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-
  2114. :ERC721Pausable: pass:normal[xref:token/ERC721.adoc#ERC721Pausable[`ERC721Pausable`]]
  2115. :xref-ERC721Pausable: xref:token/ERC721.adoc#ERC721Pausable
  2116. :ERC721Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Pausable-_beforeTokenTransfer-address-address-uint256-[`ERC721Pausable._beforeTokenTransfer`]]
  2117. :xref-ERC721Pausable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Pausable-_beforeTokenTransfer-address-address-uint256-
  2118. :ERC721Royalty: pass:normal[xref:token/ERC721.adoc#ERC721Royalty[`ERC721Royalty`]]
  2119. :xref-ERC721Royalty: xref:token/ERC721.adoc#ERC721Royalty
  2120. :ERC721Royalty-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721Royalty-supportsInterface-bytes4-[`ERC721Royalty.supportsInterface`]]
  2121. :xref-ERC721Royalty-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721Royalty-supportsInterface-bytes4-
  2122. :ERC721Royalty-_burn: pass:normal[xref:token/ERC721.adoc#ERC721Royalty-_burn-uint256-[`ERC721Royalty._burn`]]
  2123. :xref-ERC721Royalty-_burn-uint256-: xref:token/ERC721.adoc#ERC721Royalty-_burn-uint256-
  2124. :ERC721URIStorage: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage[`ERC721URIStorage`]]
  2125. :xref-ERC721URIStorage: xref:token/ERC721.adoc#ERC721URIStorage
  2126. :ERC721URIStorage-tokenURI: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-tokenURI-uint256-[`ERC721URIStorage.tokenURI`]]
  2127. :xref-ERC721URIStorage-tokenURI-uint256-: xref:token/ERC721.adoc#ERC721URIStorage-tokenURI-uint256-
  2128. :ERC721URIStorage-_setTokenURI: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-_setTokenURI-uint256-string-[`ERC721URIStorage._setTokenURI`]]
  2129. :xref-ERC721URIStorage-_setTokenURI-uint256-string-: xref:token/ERC721.adoc#ERC721URIStorage-_setTokenURI-uint256-string-
  2130. :ERC721URIStorage-_burn: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-_burn-uint256-[`ERC721URIStorage._burn`]]
  2131. :xref-ERC721URIStorage-_burn-uint256-: xref:token/ERC721.adoc#ERC721URIStorage-_burn-uint256-
  2132. :IERC721Enumerable: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable[`IERC721Enumerable`]]
  2133. :xref-IERC721Enumerable: xref:token/ERC721.adoc#IERC721Enumerable
  2134. :IERC721Enumerable-totalSupply: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-totalSupply--[`IERC721Enumerable.totalSupply`]]
  2135. :xref-IERC721Enumerable-totalSupply--: xref:token/ERC721.adoc#IERC721Enumerable-totalSupply--
  2136. :IERC721Enumerable-tokenOfOwnerByIndex: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-[`IERC721Enumerable.tokenOfOwnerByIndex`]]
  2137. :xref-IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-: xref:token/ERC721.adoc#IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-
  2138. :IERC721Enumerable-tokenByIndex: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-tokenByIndex-uint256-[`IERC721Enumerable.tokenByIndex`]]
  2139. :xref-IERC721Enumerable-tokenByIndex-uint256-: xref:token/ERC721.adoc#IERC721Enumerable-tokenByIndex-uint256-
  2140. :IERC721Metadata: pass:normal[xref:token/ERC721.adoc#IERC721Metadata[`IERC721Metadata`]]
  2141. :xref-IERC721Metadata: xref:token/ERC721.adoc#IERC721Metadata
  2142. :IERC721Metadata-name: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-name--[`IERC721Metadata.name`]]
  2143. :xref-IERC721Metadata-name--: xref:token/ERC721.adoc#IERC721Metadata-name--
  2144. :IERC721Metadata-symbol: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-symbol--[`IERC721Metadata.symbol`]]
  2145. :xref-IERC721Metadata-symbol--: xref:token/ERC721.adoc#IERC721Metadata-symbol--
  2146. :IERC721Metadata-tokenURI: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-tokenURI-uint256-[`IERC721Metadata.tokenURI`]]
  2147. :xref-IERC721Metadata-tokenURI-uint256-: xref:token/ERC721.adoc#IERC721Metadata-tokenURI-uint256-
  2148. :ERC721Votes: pass:normal[xref:token/ERC721.adoc#ERC721Votes[`ERC721Votes`]]
  2149. :xref-ERC721Votes: xref:token/ERC721.adoc#ERC721Votes
  2150. :ERC721Votes-_afterTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Votes-_afterTokenTransfer-address-address-uint256-[`ERC721Votes._afterTokenTransfer`]]
  2151. :xref-ERC721Votes-_afterTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Votes-_afterTokenTransfer-address-address-uint256-
  2152. :ERC721Votes-_getVotingUnits: pass:normal[xref:token/ERC721.adoc#ERC721Votes-_getVotingUnits-address-[`ERC721Votes._getVotingUnits`]]
  2153. :xref-ERC721Votes-_getVotingUnits-address-: xref:token/ERC721.adoc#ERC721Votes-_getVotingUnits-address-
  2154. :ERC721Holder: pass:normal[xref:token/ERC721.adoc#ERC721Holder[`ERC721Holder`]]
  2155. :xref-ERC721Holder: xref:token/ERC721.adoc#ERC721Holder
  2156. :ERC721Holder-onERC721Received: pass:normal[xref:token/ERC721.adoc#ERC721Holder-onERC721Received-address-address-uint256-bytes-[`ERC721Holder.onERC721Received`]]
  2157. :xref-ERC721Holder-onERC721Received-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721Holder-onERC721Received-address-address-uint256-bytes-
  2158. :ERC777: pass:normal[xref:token/ERC777.adoc#ERC777[`ERC777`]]
  2159. :xref-ERC777: xref:token/ERC777.adoc#ERC777
  2160. :ERC777-_ERC1820_REGISTRY: pass:normal[xref:token/ERC777.adoc#ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry[`ERC777._ERC1820_REGISTRY`]]
  2161. :xref-ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry: xref:token/ERC777.adoc#ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry
  2162. :ERC777-constructor: pass:normal[xref:token/ERC777.adoc#ERC777-constructor-string-string-address---[`ERC777.constructor`]]
  2163. :xref-ERC777-constructor-string-string-address---: xref:token/ERC777.adoc#ERC777-constructor-string-string-address---
  2164. :ERC777-name: pass:normal[xref:token/ERC777.adoc#ERC777-name--[`ERC777.name`]]
  2165. :xref-ERC777-name--: xref:token/ERC777.adoc#ERC777-name--
  2166. :ERC777-symbol: pass:normal[xref:token/ERC777.adoc#ERC777-symbol--[`ERC777.symbol`]]
  2167. :xref-ERC777-symbol--: xref:token/ERC777.adoc#ERC777-symbol--
  2168. :ERC777-decimals: pass:normal[xref:token/ERC777.adoc#ERC777-decimals--[`ERC777.decimals`]]
  2169. :xref-ERC777-decimals--: xref:token/ERC777.adoc#ERC777-decimals--
  2170. :ERC777-granularity: pass:normal[xref:token/ERC777.adoc#ERC777-granularity--[`ERC777.granularity`]]
  2171. :xref-ERC777-granularity--: xref:token/ERC777.adoc#ERC777-granularity--
  2172. :ERC777-totalSupply: pass:normal[xref:token/ERC777.adoc#ERC777-totalSupply--[`ERC777.totalSupply`]]
  2173. :xref-ERC777-totalSupply--: xref:token/ERC777.adoc#ERC777-totalSupply--
  2174. :ERC777-balanceOf: pass:normal[xref:token/ERC777.adoc#ERC777-balanceOf-address-[`ERC777.balanceOf`]]
  2175. :xref-ERC777-balanceOf-address-: xref:token/ERC777.adoc#ERC777-balanceOf-address-
  2176. :ERC777-send: pass:normal[xref:token/ERC777.adoc#ERC777-send-address-uint256-bytes-[`ERC777.send`]]
  2177. :xref-ERC777-send-address-uint256-bytes-: xref:token/ERC777.adoc#ERC777-send-address-uint256-bytes-
  2178. :ERC777-transfer: pass:normal[xref:token/ERC777.adoc#ERC777-transfer-address-uint256-[`ERC777.transfer`]]
  2179. :xref-ERC777-transfer-address-uint256-: xref:token/ERC777.adoc#ERC777-transfer-address-uint256-
  2180. :ERC777-burn: pass:normal[xref:token/ERC777.adoc#ERC777-burn-uint256-bytes-[`ERC777.burn`]]
  2181. :xref-ERC777-burn-uint256-bytes-: xref:token/ERC777.adoc#ERC777-burn-uint256-bytes-
  2182. :ERC777-isOperatorFor: pass:normal[xref:token/ERC777.adoc#ERC777-isOperatorFor-address-address-[`ERC777.isOperatorFor`]]
  2183. :xref-ERC777-isOperatorFor-address-address-: xref:token/ERC777.adoc#ERC777-isOperatorFor-address-address-
  2184. :ERC777-authorizeOperator: pass:normal[xref:token/ERC777.adoc#ERC777-authorizeOperator-address-[`ERC777.authorizeOperator`]]
  2185. :xref-ERC777-authorizeOperator-address-: xref:token/ERC777.adoc#ERC777-authorizeOperator-address-
  2186. :ERC777-revokeOperator: pass:normal[xref:token/ERC777.adoc#ERC777-revokeOperator-address-[`ERC777.revokeOperator`]]
  2187. :xref-ERC777-revokeOperator-address-: xref:token/ERC777.adoc#ERC777-revokeOperator-address-
  2188. :ERC777-defaultOperators: pass:normal[xref:token/ERC777.adoc#ERC777-defaultOperators--[`ERC777.defaultOperators`]]
  2189. :xref-ERC777-defaultOperators--: xref:token/ERC777.adoc#ERC777-defaultOperators--
  2190. :ERC777-operatorSend: pass:normal[xref:token/ERC777.adoc#ERC777-operatorSend-address-address-uint256-bytes-bytes-[`ERC777.operatorSend`]]
  2191. :xref-ERC777-operatorSend-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-operatorSend-address-address-uint256-bytes-bytes-
  2192. :ERC777-operatorBurn: pass:normal[xref:token/ERC777.adoc#ERC777-operatorBurn-address-uint256-bytes-bytes-[`ERC777.operatorBurn`]]
  2193. :xref-ERC777-operatorBurn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-operatorBurn-address-uint256-bytes-bytes-
  2194. :ERC777-allowance: pass:normal[xref:token/ERC777.adoc#ERC777-allowance-address-address-[`ERC777.allowance`]]
  2195. :xref-ERC777-allowance-address-address-: xref:token/ERC777.adoc#ERC777-allowance-address-address-
  2196. :ERC777-approve: pass:normal[xref:token/ERC777.adoc#ERC777-approve-address-uint256-[`ERC777.approve`]]
  2197. :xref-ERC777-approve-address-uint256-: xref:token/ERC777.adoc#ERC777-approve-address-uint256-
  2198. :ERC777-transferFrom: pass:normal[xref:token/ERC777.adoc#ERC777-transferFrom-address-address-uint256-[`ERC777.transferFrom`]]
  2199. :xref-ERC777-transferFrom-address-address-uint256-: xref:token/ERC777.adoc#ERC777-transferFrom-address-address-uint256-
  2200. :ERC777-_mint: pass:normal[xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-[`ERC777._mint`]]
  2201. :xref-ERC777-_mint-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-
  2202. :ERC777-_mint: pass:normal[xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-bool-[`ERC777._mint`]]
  2203. :xref-ERC777-_mint-address-uint256-bytes-bytes-bool-: xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-bool-
  2204. :ERC777-_send: pass:normal[xref:token/ERC777.adoc#ERC777-_send-address-address-uint256-bytes-bytes-bool-[`ERC777._send`]]
  2205. :xref-ERC777-_send-address-address-uint256-bytes-bytes-bool-: xref:token/ERC777.adoc#ERC777-_send-address-address-uint256-bytes-bytes-bool-
  2206. :ERC777-_burn: pass:normal[xref:token/ERC777.adoc#ERC777-_burn-address-uint256-bytes-bytes-[`ERC777._burn`]]
  2207. :xref-ERC777-_burn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-_burn-address-uint256-bytes-bytes-
  2208. :ERC777-_approve: pass:normal[xref:token/ERC777.adoc#ERC777-_approve-address-address-uint256-[`ERC777._approve`]]
  2209. :xref-ERC777-_approve-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_approve-address-address-uint256-
  2210. :ERC777-_spendAllowance: pass:normal[xref:token/ERC777.adoc#ERC777-_spendAllowance-address-address-uint256-[`ERC777._spendAllowance`]]
  2211. :xref-ERC777-_spendAllowance-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_spendAllowance-address-address-uint256-
  2212. :ERC777-_beforeTokenTransfer: pass:normal[xref:token/ERC777.adoc#ERC777-_beforeTokenTransfer-address-address-address-uint256-[`ERC777._beforeTokenTransfer`]]
  2213. :xref-ERC777-_beforeTokenTransfer-address-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_beforeTokenTransfer-address-address-address-uint256-
  2214. :IERC777: pass:normal[xref:token/ERC777.adoc#IERC777[`IERC777`]]
  2215. :xref-IERC777: xref:token/ERC777.adoc#IERC777
  2216. :IERC777-name: pass:normal[xref:token/ERC777.adoc#IERC777-name--[`IERC777.name`]]
  2217. :xref-IERC777-name--: xref:token/ERC777.adoc#IERC777-name--
  2218. :IERC777-symbol: pass:normal[xref:token/ERC777.adoc#IERC777-symbol--[`IERC777.symbol`]]
  2219. :xref-IERC777-symbol--: xref:token/ERC777.adoc#IERC777-symbol--
  2220. :IERC777-granularity: pass:normal[xref:token/ERC777.adoc#IERC777-granularity--[`IERC777.granularity`]]
  2221. :xref-IERC777-granularity--: xref:token/ERC777.adoc#IERC777-granularity--
  2222. :IERC777-totalSupply: pass:normal[xref:token/ERC777.adoc#IERC777-totalSupply--[`IERC777.totalSupply`]]
  2223. :xref-IERC777-totalSupply--: xref:token/ERC777.adoc#IERC777-totalSupply--
  2224. :IERC777-balanceOf: pass:normal[xref:token/ERC777.adoc#IERC777-balanceOf-address-[`IERC777.balanceOf`]]
  2225. :xref-IERC777-balanceOf-address-: xref:token/ERC777.adoc#IERC777-balanceOf-address-
  2226. :IERC777-send: pass:normal[xref:token/ERC777.adoc#IERC777-send-address-uint256-bytes-[`IERC777.send`]]
  2227. :xref-IERC777-send-address-uint256-bytes-: xref:token/ERC777.adoc#IERC777-send-address-uint256-bytes-
  2228. :IERC777-burn: pass:normal[xref:token/ERC777.adoc#IERC777-burn-uint256-bytes-[`IERC777.burn`]]
  2229. :xref-IERC777-burn-uint256-bytes-: xref:token/ERC777.adoc#IERC777-burn-uint256-bytes-
  2230. :IERC777-isOperatorFor: pass:normal[xref:token/ERC777.adoc#IERC777-isOperatorFor-address-address-[`IERC777.isOperatorFor`]]
  2231. :xref-IERC777-isOperatorFor-address-address-: xref:token/ERC777.adoc#IERC777-isOperatorFor-address-address-
  2232. :IERC777-authorizeOperator: pass:normal[xref:token/ERC777.adoc#IERC777-authorizeOperator-address-[`IERC777.authorizeOperator`]]
  2233. :xref-IERC777-authorizeOperator-address-: xref:token/ERC777.adoc#IERC777-authorizeOperator-address-
  2234. :IERC777-revokeOperator: pass:normal[xref:token/ERC777.adoc#IERC777-revokeOperator-address-[`IERC777.revokeOperator`]]
  2235. :xref-IERC777-revokeOperator-address-: xref:token/ERC777.adoc#IERC777-revokeOperator-address-
  2236. :IERC777-defaultOperators: pass:normal[xref:token/ERC777.adoc#IERC777-defaultOperators--[`IERC777.defaultOperators`]]
  2237. :xref-IERC777-defaultOperators--: xref:token/ERC777.adoc#IERC777-defaultOperators--
  2238. :IERC777-operatorSend: pass:normal[xref:token/ERC777.adoc#IERC777-operatorSend-address-address-uint256-bytes-bytes-[`IERC777.operatorSend`]]
  2239. :xref-IERC777-operatorSend-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-operatorSend-address-address-uint256-bytes-bytes-
  2240. :IERC777-operatorBurn: pass:normal[xref:token/ERC777.adoc#IERC777-operatorBurn-address-uint256-bytes-bytes-[`IERC777.operatorBurn`]]
  2241. :xref-IERC777-operatorBurn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-operatorBurn-address-uint256-bytes-bytes-
  2242. :IERC777-Minted: pass:normal[xref:token/ERC777.adoc#IERC777-Minted-address-address-uint256-bytes-bytes-[`IERC777.Minted`]]
  2243. :xref-IERC777-Minted-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Minted-address-address-uint256-bytes-bytes-
  2244. :IERC777-Burned: pass:normal[xref:token/ERC777.adoc#IERC777-Burned-address-address-uint256-bytes-bytes-[`IERC777.Burned`]]
  2245. :xref-IERC777-Burned-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Burned-address-address-uint256-bytes-bytes-
  2246. :IERC777-AuthorizedOperator: pass:normal[xref:token/ERC777.adoc#IERC777-AuthorizedOperator-address-address-[`IERC777.AuthorizedOperator`]]
  2247. :xref-IERC777-AuthorizedOperator-address-address-: xref:token/ERC777.adoc#IERC777-AuthorizedOperator-address-address-
  2248. :IERC777-RevokedOperator: pass:normal[xref:token/ERC777.adoc#IERC777-RevokedOperator-address-address-[`IERC777.RevokedOperator`]]
  2249. :xref-IERC777-RevokedOperator-address-address-: xref:token/ERC777.adoc#IERC777-RevokedOperator-address-address-
  2250. :IERC777-Sent: pass:normal[xref:token/ERC777.adoc#IERC777-Sent-address-address-address-uint256-bytes-bytes-[`IERC777.Sent`]]
  2251. :xref-IERC777-Sent-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Sent-address-address-address-uint256-bytes-bytes-
  2252. :IERC777Recipient: pass:normal[xref:token/ERC777.adoc#IERC777Recipient[`IERC777Recipient`]]
  2253. :xref-IERC777Recipient: xref:token/ERC777.adoc#IERC777Recipient
  2254. :IERC777Recipient-tokensReceived: pass:normal[xref:token/ERC777.adoc#IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-[`IERC777Recipient.tokensReceived`]]
  2255. :xref-IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-
  2256. :IERC777Sender: pass:normal[xref:token/ERC777.adoc#IERC777Sender[`IERC777Sender`]]
  2257. :xref-IERC777Sender: xref:token/ERC777.adoc#IERC777Sender
  2258. :IERC777Sender-tokensToSend: pass:normal[xref:token/ERC777.adoc#IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-[`IERC777Sender.tokensToSend`]]
  2259. :xref-IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-
  2260. :ERC777PresetFixedSupply: pass:normal[xref:token/ERC777.adoc#ERC777PresetFixedSupply[`ERC777PresetFixedSupply`]]
  2261. :xref-ERC777PresetFixedSupply: xref:token/ERC777.adoc#ERC777PresetFixedSupply
  2262. :ERC777PresetFixedSupply-constructor: pass:normal[xref:token/ERC777.adoc#ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-[`ERC777PresetFixedSupply.constructor`]]
  2263. :xref-ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-: xref:token/ERC777.adoc#ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-
  2264. :ERC2981: pass:normal[xref:token/common.adoc#ERC2981[`ERC2981`]]
  2265. :xref-ERC2981: xref:token/common.adoc#ERC2981
  2266. :ERC2981-supportsInterface: pass:normal[xref:token/common.adoc#ERC2981-supportsInterface-bytes4-[`ERC2981.supportsInterface`]]
  2267. :xref-ERC2981-supportsInterface-bytes4-: xref:token/common.adoc#ERC2981-supportsInterface-bytes4-
  2268. :ERC2981-royaltyInfo: pass:normal[xref:token/common.adoc#ERC2981-royaltyInfo-uint256-uint256-[`ERC2981.royaltyInfo`]]
  2269. :xref-ERC2981-royaltyInfo-uint256-uint256-: xref:token/common.adoc#ERC2981-royaltyInfo-uint256-uint256-
  2270. :ERC2981-_feeDenominator: pass:normal[xref:token/common.adoc#ERC2981-_feeDenominator--[`ERC2981._feeDenominator`]]
  2271. :xref-ERC2981-_feeDenominator--: xref:token/common.adoc#ERC2981-_feeDenominator--
  2272. :ERC2981-_setDefaultRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_setDefaultRoyalty-address-uint96-[`ERC2981._setDefaultRoyalty`]]
  2273. :xref-ERC2981-_setDefaultRoyalty-address-uint96-: xref:token/common.adoc#ERC2981-_setDefaultRoyalty-address-uint96-
  2274. :ERC2981-_deleteDefaultRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_deleteDefaultRoyalty--[`ERC2981._deleteDefaultRoyalty`]]
  2275. :xref-ERC2981-_deleteDefaultRoyalty--: xref:token/common.adoc#ERC2981-_deleteDefaultRoyalty--
  2276. :ERC2981-_setTokenRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_setTokenRoyalty-uint256-address-uint96-[`ERC2981._setTokenRoyalty`]]
  2277. :xref-ERC2981-_setTokenRoyalty-uint256-address-uint96-: xref:token/common.adoc#ERC2981-_setTokenRoyalty-uint256-address-uint96-
  2278. :ERC2981-_resetTokenRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_resetTokenRoyalty-uint256-[`ERC2981._resetTokenRoyalty`]]
  2279. :xref-ERC2981-_resetTokenRoyalty-uint256-: xref:token/common.adoc#ERC2981-_resetTokenRoyalty-uint256-
  2280. :ERC2981-RoyaltyInfo: pass:normal[xref:token/common.adoc#ERC2981-RoyaltyInfo[`ERC2981.RoyaltyInfo`]]
  2281. :xref-ERC2981-RoyaltyInfo: xref:token/common.adoc#ERC2981-RoyaltyInfo
  2282. :ERC1155PresetMinterPauser: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser[`ERC1155PresetMinterPauser`]]
  2283. :xref-ERC1155PresetMinterPauser: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser
  2284. :ERC1155PresetMinterPauser-MINTER_ROLE: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-MINTER_ROLE-bytes32[`ERC1155PresetMinterPauser.MINTER_ROLE`]]
  2285. :xref-ERC1155PresetMinterPauser-MINTER_ROLE-bytes32: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-MINTER_ROLE-bytes32
  2286. :ERC1155PresetMinterPauser-PAUSER_ROLE: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32[`ERC1155PresetMinterPauser.PAUSER_ROLE`]]
  2287. :xref-ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32
  2288. :ERC1155PresetMinterPauser-constructor: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-constructor-string-[`ERC1155PresetMinterPauser.constructor`]]
  2289. :xref-ERC1155PresetMinterPauser-constructor-string-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-constructor-string-
  2290. :ERC1155PresetMinterPauser-mint: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-[`ERC1155PresetMinterPauser.mint`]]
  2291. :xref-ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-
  2292. :ERC1155PresetMinterPauser-mintBatch: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-[`ERC1155PresetMinterPauser.mintBatch`]]
  2293. :xref-ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-
  2294. :ERC1155PresetMinterPauser-pause: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-pause--[`ERC1155PresetMinterPauser.pause`]]
  2295. :xref-ERC1155PresetMinterPauser-pause--: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-pause--
  2296. :ERC1155PresetMinterPauser-unpause: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-unpause--[`ERC1155PresetMinterPauser.unpause`]]
  2297. :xref-ERC1155PresetMinterPauser-unpause--: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-unpause--
  2298. :ERC1155PresetMinterPauser-supportsInterface: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-supportsInterface-bytes4-[`ERC1155PresetMinterPauser.supportsInterface`]]
  2299. :xref-ERC1155PresetMinterPauser-supportsInterface-bytes4-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-supportsInterface-bytes4-
  2300. :ERC1155PresetMinterPauser-_beforeTokenTransfer: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155PresetMinterPauser._beforeTokenTransfer`]]
  2301. :xref-ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  2302. :ERC20PresetFixedSupply: pass:normal[xref:token/ERC20/presets.md#ERC20PresetFixedSupply[`ERC20PresetFixedSupply`]]
  2303. :xref-ERC20PresetFixedSupply: xref:token/ERC20/presets.md#ERC20PresetFixedSupply
  2304. :ERC20PresetFixedSupply-constructor: pass:normal[xref:token/ERC20/presets.md#ERC20PresetFixedSupply-constructor-string-string-uint256-address-[`ERC20PresetFixedSupply.constructor`]]
  2305. :xref-ERC20PresetFixedSupply-constructor-string-string-uint256-address-: xref:token/ERC20/presets.md#ERC20PresetFixedSupply-constructor-string-string-uint256-address-
  2306. :ERC20PresetMinterPauser: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser[`ERC20PresetMinterPauser`]]
  2307. :xref-ERC20PresetMinterPauser: xref:token/ERC20/presets.md#ERC20PresetMinterPauser
  2308. :ERC20PresetMinterPauser-MINTER_ROLE: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-MINTER_ROLE-bytes32[`ERC20PresetMinterPauser.MINTER_ROLE`]]
  2309. :xref-ERC20PresetMinterPauser-MINTER_ROLE-bytes32: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-MINTER_ROLE-bytes32
  2310. :ERC20PresetMinterPauser-PAUSER_ROLE: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-PAUSER_ROLE-bytes32[`ERC20PresetMinterPauser.PAUSER_ROLE`]]
  2311. :xref-ERC20PresetMinterPauser-PAUSER_ROLE-bytes32: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-PAUSER_ROLE-bytes32
  2312. :ERC20PresetMinterPauser-constructor: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-constructor-string-string-[`ERC20PresetMinterPauser.constructor`]]
  2313. :xref-ERC20PresetMinterPauser-constructor-string-string-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-constructor-string-string-
  2314. :ERC20PresetMinterPauser-mint: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-mint-address-uint256-[`ERC20PresetMinterPauser.mint`]]
  2315. :xref-ERC20PresetMinterPauser-mint-address-uint256-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-mint-address-uint256-
  2316. :ERC20PresetMinterPauser-pause: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-pause--[`ERC20PresetMinterPauser.pause`]]
  2317. :xref-ERC20PresetMinterPauser-pause--: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-pause--
  2318. :ERC20PresetMinterPauser-unpause: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-unpause--[`ERC20PresetMinterPauser.unpause`]]
  2319. :xref-ERC20PresetMinterPauser-unpause--: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-unpause--
  2320. :ERC20PresetMinterPauser-_beforeTokenTransfer: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-[`ERC20PresetMinterPauser._beforeTokenTransfer`]]
  2321. :xref-ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-
  2322. :ERC721PresetMinterPauserAutoId: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId[`ERC721PresetMinterPauserAutoId`]]
  2323. :xref-ERC721PresetMinterPauserAutoId: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId
  2324. :ERC721PresetMinterPauserAutoId-MINTER_ROLE: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32[`ERC721PresetMinterPauserAutoId.MINTER_ROLE`]]
  2325. :xref-ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32
  2326. :ERC721PresetMinterPauserAutoId-PAUSER_ROLE: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32[`ERC721PresetMinterPauserAutoId.PAUSER_ROLE`]]
  2327. :xref-ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32
  2328. :ERC721PresetMinterPauserAutoId-constructor: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-constructor-string-string-string-[`ERC721PresetMinterPauserAutoId.constructor`]]
  2329. :xref-ERC721PresetMinterPauserAutoId-constructor-string-string-string-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-constructor-string-string-string-
  2330. :ERC721PresetMinterPauserAutoId-_baseURI: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_baseURI--[`ERC721PresetMinterPauserAutoId._baseURI`]]
  2331. :xref-ERC721PresetMinterPauserAutoId-_baseURI--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_baseURI--
  2332. :ERC721PresetMinterPauserAutoId-mint: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-mint-address-[`ERC721PresetMinterPauserAutoId.mint`]]
  2333. :xref-ERC721PresetMinterPauserAutoId-mint-address-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-mint-address-
  2334. :ERC721PresetMinterPauserAutoId-pause: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-pause--[`ERC721PresetMinterPauserAutoId.pause`]]
  2335. :xref-ERC721PresetMinterPauserAutoId-pause--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-pause--
  2336. :ERC721PresetMinterPauserAutoId-unpause: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-unpause--[`ERC721PresetMinterPauserAutoId.unpause`]]
  2337. :xref-ERC721PresetMinterPauserAutoId-unpause--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-unpause--
  2338. :ERC721PresetMinterPauserAutoId-_beforeTokenTransfer: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-[`ERC721PresetMinterPauserAutoId._beforeTokenTransfer`]]
  2339. :xref-ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-
  2340. :ERC721PresetMinterPauserAutoId-supportsInterface: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-[`ERC721PresetMinterPauserAutoId.supportsInterface`]]
  2341. :xref-ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-
  2342. = Utilities
  2343. [.readme-notice]
  2344. NOTE: This document is better viewed at https://docs.openzeppelin.com/contracts/api/utils
  2345. Miscellaneous contracts and libraries containing utility functions you can use to improve security, work with new data types, or safely use low-level primitives.
  2346. The {Address}, {Arrays}, {Base64} and {Strings} libraries provide more operations related to these native data types, while {SafeCast} adds ways to safely convert between the different signed and unsigned numeric types.
  2347. {Multicall} provides a function to batch together multiple calls in a single external call.
  2348. For new data types:
  2349. * {Counters}: a simple way to get a counter that can only be incremented, decremented or reset. Very useful for ID generation, counting contract activity, among others.
  2350. * {EnumerableMap}: like Solidity's https://solidity.readthedocs.io/en/latest/types.html#mapping-types[`mapping`] type, but with key-value _enumeration_: this will let you know how many entries a mapping has, and iterate over them (which is not possible with `mapping`).
  2351. * {EnumerableSet}: like {EnumerableMap}, but for https://en.wikipedia.org/wiki/Set_(abstract_data_type)[sets]. Can be used to store privileged accounts, issued IDs, etc.
  2352. [NOTE]
  2353. ====
  2354. Because Solidity does not support generic types, {EnumerableMap} and {EnumerableSet} are specialized to a limited number of key-value types.
  2355. As of v3.0, {EnumerableMap} supports `uint256 -> address` (`UintToAddressMap`), and {EnumerableSet} supports `address` and `uint256` (`AddressSet` and `UintSet`).
  2356. ====
  2357. Finally, {Create2} contains all necessary utilities to safely use the https://blog.openzeppelin.com/getting-the-most-out-of-create2/[`CREATE2` EVM opcode], without having to deal with low-level assembly.
  2358. == Math
  2359. :Math: pass:normal[xref:#Math[`++Math++`]]
  2360. :max: pass:normal[xref:#Math-max-uint256-uint256-[`++max++`]]
  2361. :min: pass:normal[xref:#Math-min-uint256-uint256-[`++min++`]]
  2362. :average: pass:normal[xref:#Math-average-uint256-uint256-[`++average++`]]
  2363. :ceilDiv: pass:normal[xref:#Math-ceilDiv-uint256-uint256-[`++ceilDiv++`]]
  2364. :mulDiv: pass:normal[xref:#Math-mulDiv-uint256-uint256-uint256-[`++mulDiv++`]]
  2365. :mulDiv: pass:normal[xref:#Math-mulDiv-uint256-uint256-uint256-enum-Math-Rounding-[`++mulDiv++`]]
  2366. :sqrt: pass:normal[xref:#Math-sqrt-uint256-[`++sqrt++`]]
  2367. :sqrt: pass:normal[xref:#Math-sqrt-uint256-enum-Math-Rounding-[`++sqrt++`]]
  2368. :Rounding: pass:normal[xref:#Math-Rounding[`++Rounding++`]]
  2369. [.contract]
  2370. [[Math]]
  2371. === `++Math++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/math/Math.sol[{github-icon},role=heading-link]
  2372. [.hljs-theme-light.nopadding]
  2373. ```solidity
  2374. import "@openzeppelin/contracts/utils/math/Math.sol";
  2375. ```
  2376. Standard math utilities missing in the Solidity language.
  2377. [.contract-index]
  2378. .Functions
  2379. --
  2380. * {xref-Math-max-uint256-uint256-}[`++max(a, b)++`]
  2381. * {xref-Math-min-uint256-uint256-}[`++min(a, b)++`]
  2382. * {xref-Math-average-uint256-uint256-}[`++average(a, b)++`]
  2383. * {xref-Math-ceilDiv-uint256-uint256-}[`++ceilDiv(a, b)++`]
  2384. * {xref-Math-mulDiv-uint256-uint256-uint256-}[`++mulDiv(x, y, denominator)++`]
  2385. * {xref-Math-mulDiv-uint256-uint256-uint256-enum-Math-Rounding-}[`++mulDiv(x, y, denominator, rounding)++`]
  2386. * {xref-Math-sqrt-uint256-}[`++sqrt(a)++`]
  2387. * {xref-Math-sqrt-uint256-enum-Math-Rounding-}[`++sqrt(a, rounding)++`]
  2388. --
  2389. [.contract-item]
  2390. [[Math-max-uint256-uint256-]]
  2391. ==== `[.contract-item-name]#++max++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  2392. Returns the largest of two numbers.
  2393. [.contract-item]
  2394. [[Math-min-uint256-uint256-]]
  2395. ==== `[.contract-item-name]#++min++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  2396. Returns the smallest of two numbers.
  2397. [.contract-item]
  2398. [[Math-average-uint256-uint256-]]
  2399. ==== `[.contract-item-name]#++average++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  2400. Returns the average of two numbers. The result is rounded towards
  2401. zero.
  2402. [.contract-item]
  2403. [[Math-ceilDiv-uint256-uint256-]]
  2404. ==== `[.contract-item-name]#++ceilDiv++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  2405. Returns the ceiling of the division of two numbers.
  2406. This differs from standard division with `/` in that it rounds up instead
  2407. of rounding down.
  2408. [.contract-item]
  2409. [[Math-mulDiv-uint256-uint256-uint256-]]
  2410. ==== `[.contract-item-name]#++mulDiv++#++(uint256 x, uint256 y, uint256 denominator) → uint256 result++` [.item-kind]#internal#
  2411. Original credit to Remco Bloemen under MIT license (https://xn--2-umb.com/21/muldiv)
  2412. with further edits by Uniswap Labs also under MIT license.
  2413. [.contract-item]
  2414. [[Math-mulDiv-uint256-uint256-uint256-enum-Math-Rounding-]]
  2415. ==== `[.contract-item-name]#++mulDiv++#++(uint256 x, uint256 y, uint256 denominator, enum Math.Rounding rounding) → uint256++` [.item-kind]#internal#
  2416. [.contract-item]
  2417. [[Math-sqrt-uint256-]]
  2418. ==== `[.contract-item-name]#++sqrt++#++(uint256 a) → uint256++` [.item-kind]#internal#
  2419. Returns the square root of a number. It the number is not a perfect square, the value is rounded down.
  2420. Inspired by Henry S. Warren, Jr.'s "Hacker's Delight" (Chapter 11).
  2421. [.contract-item]
  2422. [[Math-sqrt-uint256-enum-Math-Rounding-]]
  2423. ==== `[.contract-item-name]#++sqrt++#++(uint256 a, enum Math.Rounding rounding) → uint256++` [.item-kind]#internal#
  2424. :SignedMath: pass:normal[xref:#SignedMath[`++SignedMath++`]]
  2425. :max: pass:normal[xref:#SignedMath-max-int256-int256-[`++max++`]]
  2426. :min: pass:normal[xref:#SignedMath-min-int256-int256-[`++min++`]]
  2427. :average: pass:normal[xref:#SignedMath-average-int256-int256-[`++average++`]]
  2428. :abs: pass:normal[xref:#SignedMath-abs-int256-[`++abs++`]]
  2429. [.contract]
  2430. [[SignedMath]]
  2431. === `++SignedMath++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/math/SignedMath.sol[{github-icon},role=heading-link]
  2432. [.hljs-theme-light.nopadding]
  2433. ```solidity
  2434. import "@openzeppelin/contracts/utils/math/SignedMath.sol";
  2435. ```
  2436. Standard signed math utilities missing in the Solidity language.
  2437. [.contract-index]
  2438. .Functions
  2439. --
  2440. * {xref-SignedMath-max-int256-int256-}[`++max(a, b)++`]
  2441. * {xref-SignedMath-min-int256-int256-}[`++min(a, b)++`]
  2442. * {xref-SignedMath-average-int256-int256-}[`++average(a, b)++`]
  2443. * {xref-SignedMath-abs-int256-}[`++abs(n)++`]
  2444. --
  2445. [.contract-item]
  2446. [[SignedMath-max-int256-int256-]]
  2447. ==== `[.contract-item-name]#++max++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  2448. Returns the largest of two signed numbers.
  2449. [.contract-item]
  2450. [[SignedMath-min-int256-int256-]]
  2451. ==== `[.contract-item-name]#++min++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  2452. Returns the smallest of two signed numbers.
  2453. [.contract-item]
  2454. [[SignedMath-average-int256-int256-]]
  2455. ==== `[.contract-item-name]#++average++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  2456. Returns the average of two signed numbers without overflow.
  2457. The result is rounded towards zero.
  2458. [.contract-item]
  2459. [[SignedMath-abs-int256-]]
  2460. ==== `[.contract-item-name]#++abs++#++(int256 n) → uint256++` [.item-kind]#internal#
  2461. Returns the absolute unsigned value of a signed value.
  2462. :SafeCast: pass:normal[xref:#SafeCast[`++SafeCast++`]]
  2463. :toUint248: pass:normal[xref:#SafeCast-toUint248-uint256-[`++toUint248++`]]
  2464. :toUint240: pass:normal[xref:#SafeCast-toUint240-uint256-[`++toUint240++`]]
  2465. :toUint232: pass:normal[xref:#SafeCast-toUint232-uint256-[`++toUint232++`]]
  2466. :toUint224: pass:normal[xref:#SafeCast-toUint224-uint256-[`++toUint224++`]]
  2467. :toUint216: pass:normal[xref:#SafeCast-toUint216-uint256-[`++toUint216++`]]
  2468. :toUint208: pass:normal[xref:#SafeCast-toUint208-uint256-[`++toUint208++`]]
  2469. :toUint200: pass:normal[xref:#SafeCast-toUint200-uint256-[`++toUint200++`]]
  2470. :toUint192: pass:normal[xref:#SafeCast-toUint192-uint256-[`++toUint192++`]]
  2471. :toUint184: pass:normal[xref:#SafeCast-toUint184-uint256-[`++toUint184++`]]
  2472. :toUint176: pass:normal[xref:#SafeCast-toUint176-uint256-[`++toUint176++`]]
  2473. :toUint168: pass:normal[xref:#SafeCast-toUint168-uint256-[`++toUint168++`]]
  2474. :toUint160: pass:normal[xref:#SafeCast-toUint160-uint256-[`++toUint160++`]]
  2475. :toUint152: pass:normal[xref:#SafeCast-toUint152-uint256-[`++toUint152++`]]
  2476. :toUint144: pass:normal[xref:#SafeCast-toUint144-uint256-[`++toUint144++`]]
  2477. :toUint136: pass:normal[xref:#SafeCast-toUint136-uint256-[`++toUint136++`]]
  2478. :toUint128: pass:normal[xref:#SafeCast-toUint128-uint256-[`++toUint128++`]]
  2479. :toUint120: pass:normal[xref:#SafeCast-toUint120-uint256-[`++toUint120++`]]
  2480. :toUint112: pass:normal[xref:#SafeCast-toUint112-uint256-[`++toUint112++`]]
  2481. :toUint104: pass:normal[xref:#SafeCast-toUint104-uint256-[`++toUint104++`]]
  2482. :toUint96: pass:normal[xref:#SafeCast-toUint96-uint256-[`++toUint96++`]]
  2483. :toUint88: pass:normal[xref:#SafeCast-toUint88-uint256-[`++toUint88++`]]
  2484. :toUint80: pass:normal[xref:#SafeCast-toUint80-uint256-[`++toUint80++`]]
  2485. :toUint72: pass:normal[xref:#SafeCast-toUint72-uint256-[`++toUint72++`]]
  2486. :toUint64: pass:normal[xref:#SafeCast-toUint64-uint256-[`++toUint64++`]]
  2487. :toUint56: pass:normal[xref:#SafeCast-toUint56-uint256-[`++toUint56++`]]
  2488. :toUint48: pass:normal[xref:#SafeCast-toUint48-uint256-[`++toUint48++`]]
  2489. :toUint40: pass:normal[xref:#SafeCast-toUint40-uint256-[`++toUint40++`]]
  2490. :toUint32: pass:normal[xref:#SafeCast-toUint32-uint256-[`++toUint32++`]]
  2491. :toUint24: pass:normal[xref:#SafeCast-toUint24-uint256-[`++toUint24++`]]
  2492. :toUint16: pass:normal[xref:#SafeCast-toUint16-uint256-[`++toUint16++`]]
  2493. :toUint8: pass:normal[xref:#SafeCast-toUint8-uint256-[`++toUint8++`]]
  2494. :toUint256: pass:normal[xref:#SafeCast-toUint256-int256-[`++toUint256++`]]
  2495. :toInt248: pass:normal[xref:#SafeCast-toInt248-int256-[`++toInt248++`]]
  2496. :toInt240: pass:normal[xref:#SafeCast-toInt240-int256-[`++toInt240++`]]
  2497. :toInt232: pass:normal[xref:#SafeCast-toInt232-int256-[`++toInt232++`]]
  2498. :toInt224: pass:normal[xref:#SafeCast-toInt224-int256-[`++toInt224++`]]
  2499. :toInt216: pass:normal[xref:#SafeCast-toInt216-int256-[`++toInt216++`]]
  2500. :toInt208: pass:normal[xref:#SafeCast-toInt208-int256-[`++toInt208++`]]
  2501. :toInt200: pass:normal[xref:#SafeCast-toInt200-int256-[`++toInt200++`]]
  2502. :toInt192: pass:normal[xref:#SafeCast-toInt192-int256-[`++toInt192++`]]
  2503. :toInt184: pass:normal[xref:#SafeCast-toInt184-int256-[`++toInt184++`]]
  2504. :toInt176: pass:normal[xref:#SafeCast-toInt176-int256-[`++toInt176++`]]
  2505. :toInt168: pass:normal[xref:#SafeCast-toInt168-int256-[`++toInt168++`]]
  2506. :toInt160: pass:normal[xref:#SafeCast-toInt160-int256-[`++toInt160++`]]
  2507. :toInt152: pass:normal[xref:#SafeCast-toInt152-int256-[`++toInt152++`]]
  2508. :toInt144: pass:normal[xref:#SafeCast-toInt144-int256-[`++toInt144++`]]
  2509. :toInt136: pass:normal[xref:#SafeCast-toInt136-int256-[`++toInt136++`]]
  2510. :toInt128: pass:normal[xref:#SafeCast-toInt128-int256-[`++toInt128++`]]
  2511. :toInt120: pass:normal[xref:#SafeCast-toInt120-int256-[`++toInt120++`]]
  2512. :toInt112: pass:normal[xref:#SafeCast-toInt112-int256-[`++toInt112++`]]
  2513. :toInt104: pass:normal[xref:#SafeCast-toInt104-int256-[`++toInt104++`]]
  2514. :toInt96: pass:normal[xref:#SafeCast-toInt96-int256-[`++toInt96++`]]
  2515. :toInt88: pass:normal[xref:#SafeCast-toInt88-int256-[`++toInt88++`]]
  2516. :toInt80: pass:normal[xref:#SafeCast-toInt80-int256-[`++toInt80++`]]
  2517. :toInt72: pass:normal[xref:#SafeCast-toInt72-int256-[`++toInt72++`]]
  2518. :toInt64: pass:normal[xref:#SafeCast-toInt64-int256-[`++toInt64++`]]
  2519. :toInt56: pass:normal[xref:#SafeCast-toInt56-int256-[`++toInt56++`]]
  2520. :toInt48: pass:normal[xref:#SafeCast-toInt48-int256-[`++toInt48++`]]
  2521. :toInt40: pass:normal[xref:#SafeCast-toInt40-int256-[`++toInt40++`]]
  2522. :toInt32: pass:normal[xref:#SafeCast-toInt32-int256-[`++toInt32++`]]
  2523. :toInt24: pass:normal[xref:#SafeCast-toInt24-int256-[`++toInt24++`]]
  2524. :toInt16: pass:normal[xref:#SafeCast-toInt16-int256-[`++toInt16++`]]
  2525. :toInt8: pass:normal[xref:#SafeCast-toInt8-int256-[`++toInt8++`]]
  2526. :toInt256: pass:normal[xref:#SafeCast-toInt256-uint256-[`++toInt256++`]]
  2527. [.contract]
  2528. [[SafeCast]]
  2529. === `++SafeCast++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/math/SafeCast.sol[{github-icon},role=heading-link]
  2530. [.hljs-theme-light.nopadding]
  2531. ```solidity
  2532. import "@openzeppelin/contracts/utils/math/SafeCast.sol";
  2533. ```
  2534. Wrappers over Solidity's uintXX/intXX casting operators with added overflow
  2535. checks.
  2536. Downcasting from uint256/int256 in Solidity does not revert on overflow. This can
  2537. easily result in undesired exploitation or bugs, since developers usually
  2538. assume that overflows raise errors. `SafeCast` restores this intuition by
  2539. reverting the transaction when such an operation overflows.
  2540. Using this library instead of the unchecked operations eliminates an entire
  2541. class of bugs, so it's recommended to use it always.
  2542. Can be combined with {SafeMath} and {SignedSafeMath} to extend it to smaller types, by performing
  2543. all math on `uint256` and `int256` and then downcasting.
  2544. [.contract-index]
  2545. .Functions
  2546. --
  2547. * {xref-SafeCast-toUint248-uint256-}[`++toUint248(value)++`]
  2548. * {xref-SafeCast-toUint240-uint256-}[`++toUint240(value)++`]
  2549. * {xref-SafeCast-toUint232-uint256-}[`++toUint232(value)++`]
  2550. * {xref-SafeCast-toUint224-uint256-}[`++toUint224(value)++`]
  2551. * {xref-SafeCast-toUint216-uint256-}[`++toUint216(value)++`]
  2552. * {xref-SafeCast-toUint208-uint256-}[`++toUint208(value)++`]
  2553. * {xref-SafeCast-toUint200-uint256-}[`++toUint200(value)++`]
  2554. * {xref-SafeCast-toUint192-uint256-}[`++toUint192(value)++`]
  2555. * {xref-SafeCast-toUint184-uint256-}[`++toUint184(value)++`]
  2556. * {xref-SafeCast-toUint176-uint256-}[`++toUint176(value)++`]
  2557. * {xref-SafeCast-toUint168-uint256-}[`++toUint168(value)++`]
  2558. * {xref-SafeCast-toUint160-uint256-}[`++toUint160(value)++`]
  2559. * {xref-SafeCast-toUint152-uint256-}[`++toUint152(value)++`]
  2560. * {xref-SafeCast-toUint144-uint256-}[`++toUint144(value)++`]
  2561. * {xref-SafeCast-toUint136-uint256-}[`++toUint136(value)++`]
  2562. * {xref-SafeCast-toUint128-uint256-}[`++toUint128(value)++`]
  2563. * {xref-SafeCast-toUint120-uint256-}[`++toUint120(value)++`]
  2564. * {xref-SafeCast-toUint112-uint256-}[`++toUint112(value)++`]
  2565. * {xref-SafeCast-toUint104-uint256-}[`++toUint104(value)++`]
  2566. * {xref-SafeCast-toUint96-uint256-}[`++toUint96(value)++`]
  2567. * {xref-SafeCast-toUint88-uint256-}[`++toUint88(value)++`]
  2568. * {xref-SafeCast-toUint80-uint256-}[`++toUint80(value)++`]
  2569. * {xref-SafeCast-toUint72-uint256-}[`++toUint72(value)++`]
  2570. * {xref-SafeCast-toUint64-uint256-}[`++toUint64(value)++`]
  2571. * {xref-SafeCast-toUint56-uint256-}[`++toUint56(value)++`]
  2572. * {xref-SafeCast-toUint48-uint256-}[`++toUint48(value)++`]
  2573. * {xref-SafeCast-toUint40-uint256-}[`++toUint40(value)++`]
  2574. * {xref-SafeCast-toUint32-uint256-}[`++toUint32(value)++`]
  2575. * {xref-SafeCast-toUint24-uint256-}[`++toUint24(value)++`]
  2576. * {xref-SafeCast-toUint16-uint256-}[`++toUint16(value)++`]
  2577. * {xref-SafeCast-toUint8-uint256-}[`++toUint8(value)++`]
  2578. * {xref-SafeCast-toUint256-int256-}[`++toUint256(value)++`]
  2579. * {xref-SafeCast-toInt248-int256-}[`++toInt248(value)++`]
  2580. * {xref-SafeCast-toInt240-int256-}[`++toInt240(value)++`]
  2581. * {xref-SafeCast-toInt232-int256-}[`++toInt232(value)++`]
  2582. * {xref-SafeCast-toInt224-int256-}[`++toInt224(value)++`]
  2583. * {xref-SafeCast-toInt216-int256-}[`++toInt216(value)++`]
  2584. * {xref-SafeCast-toInt208-int256-}[`++toInt208(value)++`]
  2585. * {xref-SafeCast-toInt200-int256-}[`++toInt200(value)++`]
  2586. * {xref-SafeCast-toInt192-int256-}[`++toInt192(value)++`]
  2587. * {xref-SafeCast-toInt184-int256-}[`++toInt184(value)++`]
  2588. * {xref-SafeCast-toInt176-int256-}[`++toInt176(value)++`]
  2589. * {xref-SafeCast-toInt168-int256-}[`++toInt168(value)++`]
  2590. * {xref-SafeCast-toInt160-int256-}[`++toInt160(value)++`]
  2591. * {xref-SafeCast-toInt152-int256-}[`++toInt152(value)++`]
  2592. * {xref-SafeCast-toInt144-int256-}[`++toInt144(value)++`]
  2593. * {xref-SafeCast-toInt136-int256-}[`++toInt136(value)++`]
  2594. * {xref-SafeCast-toInt128-int256-}[`++toInt128(value)++`]
  2595. * {xref-SafeCast-toInt120-int256-}[`++toInt120(value)++`]
  2596. * {xref-SafeCast-toInt112-int256-}[`++toInt112(value)++`]
  2597. * {xref-SafeCast-toInt104-int256-}[`++toInt104(value)++`]
  2598. * {xref-SafeCast-toInt96-int256-}[`++toInt96(value)++`]
  2599. * {xref-SafeCast-toInt88-int256-}[`++toInt88(value)++`]
  2600. * {xref-SafeCast-toInt80-int256-}[`++toInt80(value)++`]
  2601. * {xref-SafeCast-toInt72-int256-}[`++toInt72(value)++`]
  2602. * {xref-SafeCast-toInt64-int256-}[`++toInt64(value)++`]
  2603. * {xref-SafeCast-toInt56-int256-}[`++toInt56(value)++`]
  2604. * {xref-SafeCast-toInt48-int256-}[`++toInt48(value)++`]
  2605. * {xref-SafeCast-toInt40-int256-}[`++toInt40(value)++`]
  2606. * {xref-SafeCast-toInt32-int256-}[`++toInt32(value)++`]
  2607. * {xref-SafeCast-toInt24-int256-}[`++toInt24(value)++`]
  2608. * {xref-SafeCast-toInt16-int256-}[`++toInt16(value)++`]
  2609. * {xref-SafeCast-toInt8-int256-}[`++toInt8(value)++`]
  2610. * {xref-SafeCast-toInt256-uint256-}[`++toInt256(value)++`]
  2611. --
  2612. [.contract-item]
  2613. [[SafeCast-toUint248-uint256-]]
  2614. ==== `[.contract-item-name]#++toUint248++#++(uint256 value) → uint248++` [.item-kind]#internal#
  2615. Returns the downcasted uint248 from uint256, reverting on
  2616. overflow (when the input is greater than largest uint248).
  2617. Counterpart to Solidity's `uint248` operator.
  2618. Requirements:
  2619. - input must fit into 248 bits
  2620. _Available since v4.7._
  2621. [.contract-item]
  2622. [[SafeCast-toUint240-uint256-]]
  2623. ==== `[.contract-item-name]#++toUint240++#++(uint256 value) → uint240++` [.item-kind]#internal#
  2624. Returns the downcasted uint240 from uint256, reverting on
  2625. overflow (when the input is greater than largest uint240).
  2626. Counterpart to Solidity's `uint240` operator.
  2627. Requirements:
  2628. - input must fit into 240 bits
  2629. _Available since v4.7._
  2630. [.contract-item]
  2631. [[SafeCast-toUint232-uint256-]]
  2632. ==== `[.contract-item-name]#++toUint232++#++(uint256 value) → uint232++` [.item-kind]#internal#
  2633. Returns the downcasted uint232 from uint256, reverting on
  2634. overflow (when the input is greater than largest uint232).
  2635. Counterpart to Solidity's `uint232` operator.
  2636. Requirements:
  2637. - input must fit into 232 bits
  2638. _Available since v4.7._
  2639. [.contract-item]
  2640. [[SafeCast-toUint224-uint256-]]
  2641. ==== `[.contract-item-name]#++toUint224++#++(uint256 value) → uint224++` [.item-kind]#internal#
  2642. Returns the downcasted uint224 from uint256, reverting on
  2643. overflow (when the input is greater than largest uint224).
  2644. Counterpart to Solidity's `uint224` operator.
  2645. Requirements:
  2646. - input must fit into 224 bits
  2647. _Available since v4.2._
  2648. [.contract-item]
  2649. [[SafeCast-toUint216-uint256-]]
  2650. ==== `[.contract-item-name]#++toUint216++#++(uint256 value) → uint216++` [.item-kind]#internal#
  2651. Returns the downcasted uint216 from uint256, reverting on
  2652. overflow (when the input is greater than largest uint216).
  2653. Counterpart to Solidity's `uint216` operator.
  2654. Requirements:
  2655. - input must fit into 216 bits
  2656. _Available since v4.7._
  2657. [.contract-item]
  2658. [[SafeCast-toUint208-uint256-]]
  2659. ==== `[.contract-item-name]#++toUint208++#++(uint256 value) → uint208++` [.item-kind]#internal#
  2660. Returns the downcasted uint208 from uint256, reverting on
  2661. overflow (when the input is greater than largest uint208).
  2662. Counterpart to Solidity's `uint208` operator.
  2663. Requirements:
  2664. - input must fit into 208 bits
  2665. _Available since v4.7._
  2666. [.contract-item]
  2667. [[SafeCast-toUint200-uint256-]]
  2668. ==== `[.contract-item-name]#++toUint200++#++(uint256 value) → uint200++` [.item-kind]#internal#
  2669. Returns the downcasted uint200 from uint256, reverting on
  2670. overflow (when the input is greater than largest uint200).
  2671. Counterpart to Solidity's `uint200` operator.
  2672. Requirements:
  2673. - input must fit into 200 bits
  2674. _Available since v4.7._
  2675. [.contract-item]
  2676. [[SafeCast-toUint192-uint256-]]
  2677. ==== `[.contract-item-name]#++toUint192++#++(uint256 value) → uint192++` [.item-kind]#internal#
  2678. Returns the downcasted uint192 from uint256, reverting on
  2679. overflow (when the input is greater than largest uint192).
  2680. Counterpart to Solidity's `uint192` operator.
  2681. Requirements:
  2682. - input must fit into 192 bits
  2683. _Available since v4.7._
  2684. [.contract-item]
  2685. [[SafeCast-toUint184-uint256-]]
  2686. ==== `[.contract-item-name]#++toUint184++#++(uint256 value) → uint184++` [.item-kind]#internal#
  2687. Returns the downcasted uint184 from uint256, reverting on
  2688. overflow (when the input is greater than largest uint184).
  2689. Counterpart to Solidity's `uint184` operator.
  2690. Requirements:
  2691. - input must fit into 184 bits
  2692. _Available since v4.7._
  2693. [.contract-item]
  2694. [[SafeCast-toUint176-uint256-]]
  2695. ==== `[.contract-item-name]#++toUint176++#++(uint256 value) → uint176++` [.item-kind]#internal#
  2696. Returns the downcasted uint176 from uint256, reverting on
  2697. overflow (when the input is greater than largest uint176).
  2698. Counterpart to Solidity's `uint176` operator.
  2699. Requirements:
  2700. - input must fit into 176 bits
  2701. _Available since v4.7._
  2702. [.contract-item]
  2703. [[SafeCast-toUint168-uint256-]]
  2704. ==== `[.contract-item-name]#++toUint168++#++(uint256 value) → uint168++` [.item-kind]#internal#
  2705. Returns the downcasted uint168 from uint256, reverting on
  2706. overflow (when the input is greater than largest uint168).
  2707. Counterpart to Solidity's `uint168` operator.
  2708. Requirements:
  2709. - input must fit into 168 bits
  2710. _Available since v4.7._
  2711. [.contract-item]
  2712. [[SafeCast-toUint160-uint256-]]
  2713. ==== `[.contract-item-name]#++toUint160++#++(uint256 value) → uint160++` [.item-kind]#internal#
  2714. Returns the downcasted uint160 from uint256, reverting on
  2715. overflow (when the input is greater than largest uint160).
  2716. Counterpart to Solidity's `uint160` operator.
  2717. Requirements:
  2718. - input must fit into 160 bits
  2719. _Available since v4.7._
  2720. [.contract-item]
  2721. [[SafeCast-toUint152-uint256-]]
  2722. ==== `[.contract-item-name]#++toUint152++#++(uint256 value) → uint152++` [.item-kind]#internal#
  2723. Returns the downcasted uint152 from uint256, reverting on
  2724. overflow (when the input is greater than largest uint152).
  2725. Counterpart to Solidity's `uint152` operator.
  2726. Requirements:
  2727. - input must fit into 152 bits
  2728. _Available since v4.7._
  2729. [.contract-item]
  2730. [[SafeCast-toUint144-uint256-]]
  2731. ==== `[.contract-item-name]#++toUint144++#++(uint256 value) → uint144++` [.item-kind]#internal#
  2732. Returns the downcasted uint144 from uint256, reverting on
  2733. overflow (when the input is greater than largest uint144).
  2734. Counterpart to Solidity's `uint144` operator.
  2735. Requirements:
  2736. - input must fit into 144 bits
  2737. _Available since v4.7._
  2738. [.contract-item]
  2739. [[SafeCast-toUint136-uint256-]]
  2740. ==== `[.contract-item-name]#++toUint136++#++(uint256 value) → uint136++` [.item-kind]#internal#
  2741. Returns the downcasted uint136 from uint256, reverting on
  2742. overflow (when the input is greater than largest uint136).
  2743. Counterpart to Solidity's `uint136` operator.
  2744. Requirements:
  2745. - input must fit into 136 bits
  2746. _Available since v4.7._
  2747. [.contract-item]
  2748. [[SafeCast-toUint128-uint256-]]
  2749. ==== `[.contract-item-name]#++toUint128++#++(uint256 value) → uint128++` [.item-kind]#internal#
  2750. Returns the downcasted uint128 from uint256, reverting on
  2751. overflow (when the input is greater than largest uint128).
  2752. Counterpart to Solidity's `uint128` operator.
  2753. Requirements:
  2754. - input must fit into 128 bits
  2755. _Available since v2.5._
  2756. [.contract-item]
  2757. [[SafeCast-toUint120-uint256-]]
  2758. ==== `[.contract-item-name]#++toUint120++#++(uint256 value) → uint120++` [.item-kind]#internal#
  2759. Returns the downcasted uint120 from uint256, reverting on
  2760. overflow (when the input is greater than largest uint120).
  2761. Counterpart to Solidity's `uint120` operator.
  2762. Requirements:
  2763. - input must fit into 120 bits
  2764. _Available since v4.7._
  2765. [.contract-item]
  2766. [[SafeCast-toUint112-uint256-]]
  2767. ==== `[.contract-item-name]#++toUint112++#++(uint256 value) → uint112++` [.item-kind]#internal#
  2768. Returns the downcasted uint112 from uint256, reverting on
  2769. overflow (when the input is greater than largest uint112).
  2770. Counterpart to Solidity's `uint112` operator.
  2771. Requirements:
  2772. - input must fit into 112 bits
  2773. _Available since v4.7._
  2774. [.contract-item]
  2775. [[SafeCast-toUint104-uint256-]]
  2776. ==== `[.contract-item-name]#++toUint104++#++(uint256 value) → uint104++` [.item-kind]#internal#
  2777. Returns the downcasted uint104 from uint256, reverting on
  2778. overflow (when the input is greater than largest uint104).
  2779. Counterpart to Solidity's `uint104` operator.
  2780. Requirements:
  2781. - input must fit into 104 bits
  2782. _Available since v4.7._
  2783. [.contract-item]
  2784. [[SafeCast-toUint96-uint256-]]
  2785. ==== `[.contract-item-name]#++toUint96++#++(uint256 value) → uint96++` [.item-kind]#internal#
  2786. Returns the downcasted uint96 from uint256, reverting on
  2787. overflow (when the input is greater than largest uint96).
  2788. Counterpart to Solidity's `uint96` operator.
  2789. Requirements:
  2790. - input must fit into 96 bits
  2791. _Available since v4.2._
  2792. [.contract-item]
  2793. [[SafeCast-toUint88-uint256-]]
  2794. ==== `[.contract-item-name]#++toUint88++#++(uint256 value) → uint88++` [.item-kind]#internal#
  2795. Returns the downcasted uint88 from uint256, reverting on
  2796. overflow (when the input is greater than largest uint88).
  2797. Counterpart to Solidity's `uint88` operator.
  2798. Requirements:
  2799. - input must fit into 88 bits
  2800. _Available since v4.7._
  2801. [.contract-item]
  2802. [[SafeCast-toUint80-uint256-]]
  2803. ==== `[.contract-item-name]#++toUint80++#++(uint256 value) → uint80++` [.item-kind]#internal#
  2804. Returns the downcasted uint80 from uint256, reverting on
  2805. overflow (when the input is greater than largest uint80).
  2806. Counterpart to Solidity's `uint80` operator.
  2807. Requirements:
  2808. - input must fit into 80 bits
  2809. _Available since v4.7._
  2810. [.contract-item]
  2811. [[SafeCast-toUint72-uint256-]]
  2812. ==== `[.contract-item-name]#++toUint72++#++(uint256 value) → uint72++` [.item-kind]#internal#
  2813. Returns the downcasted uint72 from uint256, reverting on
  2814. overflow (when the input is greater than largest uint72).
  2815. Counterpart to Solidity's `uint72` operator.
  2816. Requirements:
  2817. - input must fit into 72 bits
  2818. _Available since v4.7._
  2819. [.contract-item]
  2820. [[SafeCast-toUint64-uint256-]]
  2821. ==== `[.contract-item-name]#++toUint64++#++(uint256 value) → uint64++` [.item-kind]#internal#
  2822. Returns the downcasted uint64 from uint256, reverting on
  2823. overflow (when the input is greater than largest uint64).
  2824. Counterpart to Solidity's `uint64` operator.
  2825. Requirements:
  2826. - input must fit into 64 bits
  2827. _Available since v2.5._
  2828. [.contract-item]
  2829. [[SafeCast-toUint56-uint256-]]
  2830. ==== `[.contract-item-name]#++toUint56++#++(uint256 value) → uint56++` [.item-kind]#internal#
  2831. Returns the downcasted uint56 from uint256, reverting on
  2832. overflow (when the input is greater than largest uint56).
  2833. Counterpart to Solidity's `uint56` operator.
  2834. Requirements:
  2835. - input must fit into 56 bits
  2836. _Available since v4.7._
  2837. [.contract-item]
  2838. [[SafeCast-toUint48-uint256-]]
  2839. ==== `[.contract-item-name]#++toUint48++#++(uint256 value) → uint48++` [.item-kind]#internal#
  2840. Returns the downcasted uint48 from uint256, reverting on
  2841. overflow (when the input is greater than largest uint48).
  2842. Counterpart to Solidity's `uint48` operator.
  2843. Requirements:
  2844. - input must fit into 48 bits
  2845. _Available since v4.7._
  2846. [.contract-item]
  2847. [[SafeCast-toUint40-uint256-]]
  2848. ==== `[.contract-item-name]#++toUint40++#++(uint256 value) → uint40++` [.item-kind]#internal#
  2849. Returns the downcasted uint40 from uint256, reverting on
  2850. overflow (when the input is greater than largest uint40).
  2851. Counterpart to Solidity's `uint40` operator.
  2852. Requirements:
  2853. - input must fit into 40 bits
  2854. _Available since v4.7._
  2855. [.contract-item]
  2856. [[SafeCast-toUint32-uint256-]]
  2857. ==== `[.contract-item-name]#++toUint32++#++(uint256 value) → uint32++` [.item-kind]#internal#
  2858. Returns the downcasted uint32 from uint256, reverting on
  2859. overflow (when the input is greater than largest uint32).
  2860. Counterpart to Solidity's `uint32` operator.
  2861. Requirements:
  2862. - input must fit into 32 bits
  2863. _Available since v2.5._
  2864. [.contract-item]
  2865. [[SafeCast-toUint24-uint256-]]
  2866. ==== `[.contract-item-name]#++toUint24++#++(uint256 value) → uint24++` [.item-kind]#internal#
  2867. Returns the downcasted uint24 from uint256, reverting on
  2868. overflow (when the input is greater than largest uint24).
  2869. Counterpart to Solidity's `uint24` operator.
  2870. Requirements:
  2871. - input must fit into 24 bits
  2872. _Available since v4.7._
  2873. [.contract-item]
  2874. [[SafeCast-toUint16-uint256-]]
  2875. ==== `[.contract-item-name]#++toUint16++#++(uint256 value) → uint16++` [.item-kind]#internal#
  2876. Returns the downcasted uint16 from uint256, reverting on
  2877. overflow (when the input is greater than largest uint16).
  2878. Counterpart to Solidity's `uint16` operator.
  2879. Requirements:
  2880. - input must fit into 16 bits
  2881. _Available since v2.5._
  2882. [.contract-item]
  2883. [[SafeCast-toUint8-uint256-]]
  2884. ==== `[.contract-item-name]#++toUint8++#++(uint256 value) → uint8++` [.item-kind]#internal#
  2885. Returns the downcasted uint8 from uint256, reverting on
  2886. overflow (when the input is greater than largest uint8).
  2887. Counterpart to Solidity's `uint8` operator.
  2888. Requirements:
  2889. - input must fit into 8 bits
  2890. _Available since v2.5._
  2891. [.contract-item]
  2892. [[SafeCast-toUint256-int256-]]
  2893. ==== `[.contract-item-name]#++toUint256++#++(int256 value) → uint256++` [.item-kind]#internal#
  2894. Converts a signed int256 into an unsigned uint256.
  2895. Requirements:
  2896. - input must be greater than or equal to 0.
  2897. _Available since v3.0._
  2898. [.contract-item]
  2899. [[SafeCast-toInt248-int256-]]
  2900. ==== `[.contract-item-name]#++toInt248++#++(int256 value) → int248++` [.item-kind]#internal#
  2901. Returns the downcasted int248 from int256, reverting on
  2902. overflow (when the input is less than smallest int248 or
  2903. greater than largest int248).
  2904. Counterpart to Solidity's `int248` operator.
  2905. Requirements:
  2906. - input must fit into 248 bits
  2907. _Available since v4.7._
  2908. [.contract-item]
  2909. [[SafeCast-toInt240-int256-]]
  2910. ==== `[.contract-item-name]#++toInt240++#++(int256 value) → int240++` [.item-kind]#internal#
  2911. Returns the downcasted int240 from int256, reverting on
  2912. overflow (when the input is less than smallest int240 or
  2913. greater than largest int240).
  2914. Counterpart to Solidity's `int240` operator.
  2915. Requirements:
  2916. - input must fit into 240 bits
  2917. _Available since v4.7._
  2918. [.contract-item]
  2919. [[SafeCast-toInt232-int256-]]
  2920. ==== `[.contract-item-name]#++toInt232++#++(int256 value) → int232++` [.item-kind]#internal#
  2921. Returns the downcasted int232 from int256, reverting on
  2922. overflow (when the input is less than smallest int232 or
  2923. greater than largest int232).
  2924. Counterpart to Solidity's `int232` operator.
  2925. Requirements:
  2926. - input must fit into 232 bits
  2927. _Available since v4.7._
  2928. [.contract-item]
  2929. [[SafeCast-toInt224-int256-]]
  2930. ==== `[.contract-item-name]#++toInt224++#++(int256 value) → int224++` [.item-kind]#internal#
  2931. Returns the downcasted int224 from int256, reverting on
  2932. overflow (when the input is less than smallest int224 or
  2933. greater than largest int224).
  2934. Counterpart to Solidity's `int224` operator.
  2935. Requirements:
  2936. - input must fit into 224 bits
  2937. _Available since v4.7._
  2938. [.contract-item]
  2939. [[SafeCast-toInt216-int256-]]
  2940. ==== `[.contract-item-name]#++toInt216++#++(int256 value) → int216++` [.item-kind]#internal#
  2941. Returns the downcasted int216 from int256, reverting on
  2942. overflow (when the input is less than smallest int216 or
  2943. greater than largest int216).
  2944. Counterpart to Solidity's `int216` operator.
  2945. Requirements:
  2946. - input must fit into 216 bits
  2947. _Available since v4.7._
  2948. [.contract-item]
  2949. [[SafeCast-toInt208-int256-]]
  2950. ==== `[.contract-item-name]#++toInt208++#++(int256 value) → int208++` [.item-kind]#internal#
  2951. Returns the downcasted int208 from int256, reverting on
  2952. overflow (when the input is less than smallest int208 or
  2953. greater than largest int208).
  2954. Counterpart to Solidity's `int208` operator.
  2955. Requirements:
  2956. - input must fit into 208 bits
  2957. _Available since v4.7._
  2958. [.contract-item]
  2959. [[SafeCast-toInt200-int256-]]
  2960. ==== `[.contract-item-name]#++toInt200++#++(int256 value) → int200++` [.item-kind]#internal#
  2961. Returns the downcasted int200 from int256, reverting on
  2962. overflow (when the input is less than smallest int200 or
  2963. greater than largest int200).
  2964. Counterpart to Solidity's `int200` operator.
  2965. Requirements:
  2966. - input must fit into 200 bits
  2967. _Available since v4.7._
  2968. [.contract-item]
  2969. [[SafeCast-toInt192-int256-]]
  2970. ==== `[.contract-item-name]#++toInt192++#++(int256 value) → int192++` [.item-kind]#internal#
  2971. Returns the downcasted int192 from int256, reverting on
  2972. overflow (when the input is less than smallest int192 or
  2973. greater than largest int192).
  2974. Counterpart to Solidity's `int192` operator.
  2975. Requirements:
  2976. - input must fit into 192 bits
  2977. _Available since v4.7._
  2978. [.contract-item]
  2979. [[SafeCast-toInt184-int256-]]
  2980. ==== `[.contract-item-name]#++toInt184++#++(int256 value) → int184++` [.item-kind]#internal#
  2981. Returns the downcasted int184 from int256, reverting on
  2982. overflow (when the input is less than smallest int184 or
  2983. greater than largest int184).
  2984. Counterpart to Solidity's `int184` operator.
  2985. Requirements:
  2986. - input must fit into 184 bits
  2987. _Available since v4.7._
  2988. [.contract-item]
  2989. [[SafeCast-toInt176-int256-]]
  2990. ==== `[.contract-item-name]#++toInt176++#++(int256 value) → int176++` [.item-kind]#internal#
  2991. Returns the downcasted int176 from int256, reverting on
  2992. overflow (when the input is less than smallest int176 or
  2993. greater than largest int176).
  2994. Counterpart to Solidity's `int176` operator.
  2995. Requirements:
  2996. - input must fit into 176 bits
  2997. _Available since v4.7._
  2998. [.contract-item]
  2999. [[SafeCast-toInt168-int256-]]
  3000. ==== `[.contract-item-name]#++toInt168++#++(int256 value) → int168++` [.item-kind]#internal#
  3001. Returns the downcasted int168 from int256, reverting on
  3002. overflow (when the input is less than smallest int168 or
  3003. greater than largest int168).
  3004. Counterpart to Solidity's `int168` operator.
  3005. Requirements:
  3006. - input must fit into 168 bits
  3007. _Available since v4.7._
  3008. [.contract-item]
  3009. [[SafeCast-toInt160-int256-]]
  3010. ==== `[.contract-item-name]#++toInt160++#++(int256 value) → int160++` [.item-kind]#internal#
  3011. Returns the downcasted int160 from int256, reverting on
  3012. overflow (when the input is less than smallest int160 or
  3013. greater than largest int160).
  3014. Counterpart to Solidity's `int160` operator.
  3015. Requirements:
  3016. - input must fit into 160 bits
  3017. _Available since v4.7._
  3018. [.contract-item]
  3019. [[SafeCast-toInt152-int256-]]
  3020. ==== `[.contract-item-name]#++toInt152++#++(int256 value) → int152++` [.item-kind]#internal#
  3021. Returns the downcasted int152 from int256, reverting on
  3022. overflow (when the input is less than smallest int152 or
  3023. greater than largest int152).
  3024. Counterpart to Solidity's `int152` operator.
  3025. Requirements:
  3026. - input must fit into 152 bits
  3027. _Available since v4.7._
  3028. [.contract-item]
  3029. [[SafeCast-toInt144-int256-]]
  3030. ==== `[.contract-item-name]#++toInt144++#++(int256 value) → int144++` [.item-kind]#internal#
  3031. Returns the downcasted int144 from int256, reverting on
  3032. overflow (when the input is less than smallest int144 or
  3033. greater than largest int144).
  3034. Counterpart to Solidity's `int144` operator.
  3035. Requirements:
  3036. - input must fit into 144 bits
  3037. _Available since v4.7._
  3038. [.contract-item]
  3039. [[SafeCast-toInt136-int256-]]
  3040. ==== `[.contract-item-name]#++toInt136++#++(int256 value) → int136++` [.item-kind]#internal#
  3041. Returns the downcasted int136 from int256, reverting on
  3042. overflow (when the input is less than smallest int136 or
  3043. greater than largest int136).
  3044. Counterpart to Solidity's `int136` operator.
  3045. Requirements:
  3046. - input must fit into 136 bits
  3047. _Available since v4.7._
  3048. [.contract-item]
  3049. [[SafeCast-toInt128-int256-]]
  3050. ==== `[.contract-item-name]#++toInt128++#++(int256 value) → int128++` [.item-kind]#internal#
  3051. Returns the downcasted int128 from int256, reverting on
  3052. overflow (when the input is less than smallest int128 or
  3053. greater than largest int128).
  3054. Counterpart to Solidity's `int128` operator.
  3055. Requirements:
  3056. - input must fit into 128 bits
  3057. _Available since v3.1._
  3058. [.contract-item]
  3059. [[SafeCast-toInt120-int256-]]
  3060. ==== `[.contract-item-name]#++toInt120++#++(int256 value) → int120++` [.item-kind]#internal#
  3061. Returns the downcasted int120 from int256, reverting on
  3062. overflow (when the input is less than smallest int120 or
  3063. greater than largest int120).
  3064. Counterpart to Solidity's `int120` operator.
  3065. Requirements:
  3066. - input must fit into 120 bits
  3067. _Available since v4.7._
  3068. [.contract-item]
  3069. [[SafeCast-toInt112-int256-]]
  3070. ==== `[.contract-item-name]#++toInt112++#++(int256 value) → int112++` [.item-kind]#internal#
  3071. Returns the downcasted int112 from int256, reverting on
  3072. overflow (when the input is less than smallest int112 or
  3073. greater than largest int112).
  3074. Counterpart to Solidity's `int112` operator.
  3075. Requirements:
  3076. - input must fit into 112 bits
  3077. _Available since v4.7._
  3078. [.contract-item]
  3079. [[SafeCast-toInt104-int256-]]
  3080. ==== `[.contract-item-name]#++toInt104++#++(int256 value) → int104++` [.item-kind]#internal#
  3081. Returns the downcasted int104 from int256, reverting on
  3082. overflow (when the input is less than smallest int104 or
  3083. greater than largest int104).
  3084. Counterpart to Solidity's `int104` operator.
  3085. Requirements:
  3086. - input must fit into 104 bits
  3087. _Available since v4.7._
  3088. [.contract-item]
  3089. [[SafeCast-toInt96-int256-]]
  3090. ==== `[.contract-item-name]#++toInt96++#++(int256 value) → int96++` [.item-kind]#internal#
  3091. Returns the downcasted int96 from int256, reverting on
  3092. overflow (when the input is less than smallest int96 or
  3093. greater than largest int96).
  3094. Counterpart to Solidity's `int96` operator.
  3095. Requirements:
  3096. - input must fit into 96 bits
  3097. _Available since v4.7._
  3098. [.contract-item]
  3099. [[SafeCast-toInt88-int256-]]
  3100. ==== `[.contract-item-name]#++toInt88++#++(int256 value) → int88++` [.item-kind]#internal#
  3101. Returns the downcasted int88 from int256, reverting on
  3102. overflow (when the input is less than smallest int88 or
  3103. greater than largest int88).
  3104. Counterpart to Solidity's `int88` operator.
  3105. Requirements:
  3106. - input must fit into 88 bits
  3107. _Available since v4.7._
  3108. [.contract-item]
  3109. [[SafeCast-toInt80-int256-]]
  3110. ==== `[.contract-item-name]#++toInt80++#++(int256 value) → int80++` [.item-kind]#internal#
  3111. Returns the downcasted int80 from int256, reverting on
  3112. overflow (when the input is less than smallest int80 or
  3113. greater than largest int80).
  3114. Counterpart to Solidity's `int80` operator.
  3115. Requirements:
  3116. - input must fit into 80 bits
  3117. _Available since v4.7._
  3118. [.contract-item]
  3119. [[SafeCast-toInt72-int256-]]
  3120. ==== `[.contract-item-name]#++toInt72++#++(int256 value) → int72++` [.item-kind]#internal#
  3121. Returns the downcasted int72 from int256, reverting on
  3122. overflow (when the input is less than smallest int72 or
  3123. greater than largest int72).
  3124. Counterpart to Solidity's `int72` operator.
  3125. Requirements:
  3126. - input must fit into 72 bits
  3127. _Available since v4.7._
  3128. [.contract-item]
  3129. [[SafeCast-toInt64-int256-]]
  3130. ==== `[.contract-item-name]#++toInt64++#++(int256 value) → int64++` [.item-kind]#internal#
  3131. Returns the downcasted int64 from int256, reverting on
  3132. overflow (when the input is less than smallest int64 or
  3133. greater than largest int64).
  3134. Counterpart to Solidity's `int64` operator.
  3135. Requirements:
  3136. - input must fit into 64 bits
  3137. _Available since v3.1._
  3138. [.contract-item]
  3139. [[SafeCast-toInt56-int256-]]
  3140. ==== `[.contract-item-name]#++toInt56++#++(int256 value) → int56++` [.item-kind]#internal#
  3141. Returns the downcasted int56 from int256, reverting on
  3142. overflow (when the input is less than smallest int56 or
  3143. greater than largest int56).
  3144. Counterpart to Solidity's `int56` operator.
  3145. Requirements:
  3146. - input must fit into 56 bits
  3147. _Available since v4.7._
  3148. [.contract-item]
  3149. [[SafeCast-toInt48-int256-]]
  3150. ==== `[.contract-item-name]#++toInt48++#++(int256 value) → int48++` [.item-kind]#internal#
  3151. Returns the downcasted int48 from int256, reverting on
  3152. overflow (when the input is less than smallest int48 or
  3153. greater than largest int48).
  3154. Counterpart to Solidity's `int48` operator.
  3155. Requirements:
  3156. - input must fit into 48 bits
  3157. _Available since v4.7._
  3158. [.contract-item]
  3159. [[SafeCast-toInt40-int256-]]
  3160. ==== `[.contract-item-name]#++toInt40++#++(int256 value) → int40++` [.item-kind]#internal#
  3161. Returns the downcasted int40 from int256, reverting on
  3162. overflow (when the input is less than smallest int40 or
  3163. greater than largest int40).
  3164. Counterpart to Solidity's `int40` operator.
  3165. Requirements:
  3166. - input must fit into 40 bits
  3167. _Available since v4.7._
  3168. [.contract-item]
  3169. [[SafeCast-toInt32-int256-]]
  3170. ==== `[.contract-item-name]#++toInt32++#++(int256 value) → int32++` [.item-kind]#internal#
  3171. Returns the downcasted int32 from int256, reverting on
  3172. overflow (when the input is less than smallest int32 or
  3173. greater than largest int32).
  3174. Counterpart to Solidity's `int32` operator.
  3175. Requirements:
  3176. - input must fit into 32 bits
  3177. _Available since v3.1._
  3178. [.contract-item]
  3179. [[SafeCast-toInt24-int256-]]
  3180. ==== `[.contract-item-name]#++toInt24++#++(int256 value) → int24++` [.item-kind]#internal#
  3181. Returns the downcasted int24 from int256, reverting on
  3182. overflow (when the input is less than smallest int24 or
  3183. greater than largest int24).
  3184. Counterpart to Solidity's `int24` operator.
  3185. Requirements:
  3186. - input must fit into 24 bits
  3187. _Available since v4.7._
  3188. [.contract-item]
  3189. [[SafeCast-toInt16-int256-]]
  3190. ==== `[.contract-item-name]#++toInt16++#++(int256 value) → int16++` [.item-kind]#internal#
  3191. Returns the downcasted int16 from int256, reverting on
  3192. overflow (when the input is less than smallest int16 or
  3193. greater than largest int16).
  3194. Counterpart to Solidity's `int16` operator.
  3195. Requirements:
  3196. - input must fit into 16 bits
  3197. _Available since v3.1._
  3198. [.contract-item]
  3199. [[SafeCast-toInt8-int256-]]
  3200. ==== `[.contract-item-name]#++toInt8++#++(int256 value) → int8++` [.item-kind]#internal#
  3201. Returns the downcasted int8 from int256, reverting on
  3202. overflow (when the input is less than smallest int8 or
  3203. greater than largest int8).
  3204. Counterpart to Solidity's `int8` operator.
  3205. Requirements:
  3206. - input must fit into 8 bits
  3207. _Available since v3.1._
  3208. [.contract-item]
  3209. [[SafeCast-toInt256-uint256-]]
  3210. ==== `[.contract-item-name]#++toInt256++#++(uint256 value) → int256++` [.item-kind]#internal#
  3211. Converts an unsigned uint256 into a signed int256.
  3212. Requirements:
  3213. - input must be less than or equal to maxInt256.
  3214. _Available since v3.0._
  3215. :SafeMath: pass:normal[xref:#SafeMath[`++SafeMath++`]]
  3216. :tryAdd: pass:normal[xref:#SafeMath-tryAdd-uint256-uint256-[`++tryAdd++`]]
  3217. :trySub: pass:normal[xref:#SafeMath-trySub-uint256-uint256-[`++trySub++`]]
  3218. :tryMul: pass:normal[xref:#SafeMath-tryMul-uint256-uint256-[`++tryMul++`]]
  3219. :tryDiv: pass:normal[xref:#SafeMath-tryDiv-uint256-uint256-[`++tryDiv++`]]
  3220. :tryMod: pass:normal[xref:#SafeMath-tryMod-uint256-uint256-[`++tryMod++`]]
  3221. :add: pass:normal[xref:#SafeMath-add-uint256-uint256-[`++add++`]]
  3222. :sub: pass:normal[xref:#SafeMath-sub-uint256-uint256-[`++sub++`]]
  3223. :mul: pass:normal[xref:#SafeMath-mul-uint256-uint256-[`++mul++`]]
  3224. :div: pass:normal[xref:#SafeMath-div-uint256-uint256-[`++div++`]]
  3225. :mod: pass:normal[xref:#SafeMath-mod-uint256-uint256-[`++mod++`]]
  3226. :sub: pass:normal[xref:#SafeMath-sub-uint256-uint256-string-[`++sub++`]]
  3227. :div: pass:normal[xref:#SafeMath-div-uint256-uint256-string-[`++div++`]]
  3228. :mod: pass:normal[xref:#SafeMath-mod-uint256-uint256-string-[`++mod++`]]
  3229. [.contract]
  3230. [[SafeMath]]
  3231. === `++SafeMath++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/math/SafeMath.sol[{github-icon},role=heading-link]
  3232. [.hljs-theme-light.nopadding]
  3233. ```solidity
  3234. import "@openzeppelin/contracts/utils/math/SafeMath.sol";
  3235. ```
  3236. Wrappers over Solidity's arithmetic operations.
  3237. NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler
  3238. now has built in overflow checking.
  3239. [.contract-index]
  3240. .Functions
  3241. --
  3242. * {xref-SafeMath-tryAdd-uint256-uint256-}[`++tryAdd(a, b)++`]
  3243. * {xref-SafeMath-trySub-uint256-uint256-}[`++trySub(a, b)++`]
  3244. * {xref-SafeMath-tryMul-uint256-uint256-}[`++tryMul(a, b)++`]
  3245. * {xref-SafeMath-tryDiv-uint256-uint256-}[`++tryDiv(a, b)++`]
  3246. * {xref-SafeMath-tryMod-uint256-uint256-}[`++tryMod(a, b)++`]
  3247. * {xref-SafeMath-add-uint256-uint256-}[`++add(a, b)++`]
  3248. * {xref-SafeMath-sub-uint256-uint256-}[`++sub(a, b)++`]
  3249. * {xref-SafeMath-mul-uint256-uint256-}[`++mul(a, b)++`]
  3250. * {xref-SafeMath-div-uint256-uint256-}[`++div(a, b)++`]
  3251. * {xref-SafeMath-mod-uint256-uint256-}[`++mod(a, b)++`]
  3252. * {xref-SafeMath-sub-uint256-uint256-string-}[`++sub(a, b, errorMessage)++`]
  3253. * {xref-SafeMath-div-uint256-uint256-string-}[`++div(a, b, errorMessage)++`]
  3254. * {xref-SafeMath-mod-uint256-uint256-string-}[`++mod(a, b, errorMessage)++`]
  3255. --
  3256. [.contract-item]
  3257. [[SafeMath-tryAdd-uint256-uint256-]]
  3258. ==== `[.contract-item-name]#++tryAdd++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  3259. Returns the addition of two unsigned integers, with an overflow flag.
  3260. _Available since v3.4._
  3261. [.contract-item]
  3262. [[SafeMath-trySub-uint256-uint256-]]
  3263. ==== `[.contract-item-name]#++trySub++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  3264. Returns the subtraction of two unsigned integers, with an overflow flag.
  3265. _Available since v3.4._
  3266. [.contract-item]
  3267. [[SafeMath-tryMul-uint256-uint256-]]
  3268. ==== `[.contract-item-name]#++tryMul++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  3269. Returns the multiplication of two unsigned integers, with an overflow flag.
  3270. _Available since v3.4._
  3271. [.contract-item]
  3272. [[SafeMath-tryDiv-uint256-uint256-]]
  3273. ==== `[.contract-item-name]#++tryDiv++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  3274. Returns the division of two unsigned integers, with a division by zero flag.
  3275. _Available since v3.4._
  3276. [.contract-item]
  3277. [[SafeMath-tryMod-uint256-uint256-]]
  3278. ==== `[.contract-item-name]#++tryMod++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  3279. Returns the remainder of dividing two unsigned integers, with a division by zero flag.
  3280. _Available since v3.4._
  3281. [.contract-item]
  3282. [[SafeMath-add-uint256-uint256-]]
  3283. ==== `[.contract-item-name]#++add++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  3284. Returns the addition of two unsigned integers, reverting on
  3285. overflow.
  3286. Counterpart to Solidity's `+` operator.
  3287. Requirements:
  3288. - Addition cannot overflow.
  3289. [.contract-item]
  3290. [[SafeMath-sub-uint256-uint256-]]
  3291. ==== `[.contract-item-name]#++sub++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  3292. Returns the subtraction of two unsigned integers, reverting on
  3293. overflow (when the result is negative).
  3294. Counterpart to Solidity's `-` operator.
  3295. Requirements:
  3296. - Subtraction cannot overflow.
  3297. [.contract-item]
  3298. [[SafeMath-mul-uint256-uint256-]]
  3299. ==== `[.contract-item-name]#++mul++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  3300. Returns the multiplication of two unsigned integers, reverting on
  3301. overflow.
  3302. Counterpart to Solidity's `*` operator.
  3303. Requirements:
  3304. - Multiplication cannot overflow.
  3305. [.contract-item]
  3306. [[SafeMath-div-uint256-uint256-]]
  3307. ==== `[.contract-item-name]#++div++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  3308. Returns the integer division of two unsigned integers, reverting on
  3309. division by zero. The result is rounded towards zero.
  3310. Counterpart to Solidity's `/` operator.
  3311. Requirements:
  3312. - The divisor cannot be zero.
  3313. [.contract-item]
  3314. [[SafeMath-mod-uint256-uint256-]]
  3315. ==== `[.contract-item-name]#++mod++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  3316. Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
  3317. reverting when dividing by zero.
  3318. Counterpart to Solidity's `%` operator. This function uses a `revert`
  3319. opcode (which leaves remaining gas untouched) while Solidity uses an
  3320. invalid opcode to revert (consuming all remaining gas).
  3321. Requirements:
  3322. - The divisor cannot be zero.
  3323. [.contract-item]
  3324. [[SafeMath-sub-uint256-uint256-string-]]
  3325. ==== `[.contract-item-name]#++sub++#++(uint256 a, uint256 b, string errorMessage) → uint256++` [.item-kind]#internal#
  3326. Returns the subtraction of two unsigned integers, reverting with custom message on
  3327. overflow (when the result is negative).
  3328. CAUTION: This function is deprecated because it requires allocating memory for the error
  3329. message unnecessarily. For custom revert reasons use {trySub}.
  3330. Counterpart to Solidity's `-` operator.
  3331. Requirements:
  3332. - Subtraction cannot overflow.
  3333. [.contract-item]
  3334. [[SafeMath-div-uint256-uint256-string-]]
  3335. ==== `[.contract-item-name]#++div++#++(uint256 a, uint256 b, string errorMessage) → uint256++` [.item-kind]#internal#
  3336. Returns the integer division of two unsigned integers, reverting with custom message on
  3337. division by zero. The result is rounded towards zero.
  3338. Counterpart to Solidity's `/` operator. Note: this function uses a
  3339. `revert` opcode (which leaves remaining gas untouched) while Solidity
  3340. uses an invalid opcode to revert (consuming all remaining gas).
  3341. Requirements:
  3342. - The divisor cannot be zero.
  3343. [.contract-item]
  3344. [[SafeMath-mod-uint256-uint256-string-]]
  3345. ==== `[.contract-item-name]#++mod++#++(uint256 a, uint256 b, string errorMessage) → uint256++` [.item-kind]#internal#
  3346. Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
  3347. reverting with custom message when dividing by zero.
  3348. CAUTION: This function is deprecated because it requires allocating memory for the error
  3349. message unnecessarily. For custom revert reasons use {tryMod}.
  3350. Counterpart to Solidity's `%` operator. This function uses a `revert`
  3351. opcode (which leaves remaining gas untouched) while Solidity uses an
  3352. invalid opcode to revert (consuming all remaining gas).
  3353. Requirements:
  3354. - The divisor cannot be zero.
  3355. :SignedSafeMath: pass:normal[xref:#SignedSafeMath[`++SignedSafeMath++`]]
  3356. :mul: pass:normal[xref:#SignedSafeMath-mul-int256-int256-[`++mul++`]]
  3357. :div: pass:normal[xref:#SignedSafeMath-div-int256-int256-[`++div++`]]
  3358. :sub: pass:normal[xref:#SignedSafeMath-sub-int256-int256-[`++sub++`]]
  3359. :add: pass:normal[xref:#SignedSafeMath-add-int256-int256-[`++add++`]]
  3360. [.contract]
  3361. [[SignedSafeMath]]
  3362. === `++SignedSafeMath++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/math/SignedSafeMath.sol[{github-icon},role=heading-link]
  3363. [.hljs-theme-light.nopadding]
  3364. ```solidity
  3365. import "@openzeppelin/contracts/utils/math/SignedSafeMath.sol";
  3366. ```
  3367. Wrappers over Solidity's arithmetic operations.
  3368. NOTE: `SignedSafeMath` is no longer needed starting with Solidity 0.8. The compiler
  3369. now has built in overflow checking.
  3370. [.contract-index]
  3371. .Functions
  3372. --
  3373. * {xref-SignedSafeMath-mul-int256-int256-}[`++mul(a, b)++`]
  3374. * {xref-SignedSafeMath-div-int256-int256-}[`++div(a, b)++`]
  3375. * {xref-SignedSafeMath-sub-int256-int256-}[`++sub(a, b)++`]
  3376. * {xref-SignedSafeMath-add-int256-int256-}[`++add(a, b)++`]
  3377. --
  3378. [.contract-item]
  3379. [[SignedSafeMath-mul-int256-int256-]]
  3380. ==== `[.contract-item-name]#++mul++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  3381. Returns the multiplication of two signed integers, reverting on
  3382. overflow.
  3383. Counterpart to Solidity's `*` operator.
  3384. Requirements:
  3385. - Multiplication cannot overflow.
  3386. [.contract-item]
  3387. [[SignedSafeMath-div-int256-int256-]]
  3388. ==== `[.contract-item-name]#++div++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  3389. Returns the integer division of two signed integers. Reverts on
  3390. division by zero. The result is rounded towards zero.
  3391. Counterpart to Solidity's `/` operator.
  3392. Requirements:
  3393. - The divisor cannot be zero.
  3394. [.contract-item]
  3395. [[SignedSafeMath-sub-int256-int256-]]
  3396. ==== `[.contract-item-name]#++sub++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  3397. Returns the subtraction of two signed integers, reverting on
  3398. overflow.
  3399. Counterpart to Solidity's `-` operator.
  3400. Requirements:
  3401. - Subtraction cannot overflow.
  3402. [.contract-item]
  3403. [[SignedSafeMath-add-int256-int256-]]
  3404. ==== `[.contract-item-name]#++add++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  3405. Returns the addition of two signed integers, reverting on
  3406. overflow.
  3407. Counterpart to Solidity's `+` operator.
  3408. Requirements:
  3409. - Addition cannot overflow.
  3410. == Cryptography
  3411. :ECDSA: pass:normal[xref:#ECDSA[`++ECDSA++`]]
  3412. :tryRecover: pass:normal[xref:#ECDSA-tryRecover-bytes32-bytes-[`++tryRecover++`]]
  3413. :recover: pass:normal[xref:#ECDSA-recover-bytes32-bytes-[`++recover++`]]
  3414. :tryRecover: pass:normal[xref:#ECDSA-tryRecover-bytes32-bytes32-bytes32-[`++tryRecover++`]]
  3415. :recover: pass:normal[xref:#ECDSA-recover-bytes32-bytes32-bytes32-[`++recover++`]]
  3416. :tryRecover: pass:normal[xref:#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-[`++tryRecover++`]]
  3417. :recover: pass:normal[xref:#ECDSA-recover-bytes32-uint8-bytes32-bytes32-[`++recover++`]]
  3418. :toEthSignedMessageHash: pass:normal[xref:#ECDSA-toEthSignedMessageHash-bytes32-[`++toEthSignedMessageHash++`]]
  3419. :toEthSignedMessageHash: pass:normal[xref:#ECDSA-toEthSignedMessageHash-bytes-[`++toEthSignedMessageHash++`]]
  3420. :toTypedDataHash: pass:normal[xref:#ECDSA-toTypedDataHash-bytes32-bytes32-[`++toTypedDataHash++`]]
  3421. :RecoverError: pass:normal[xref:#ECDSA-RecoverError[`++RecoverError++`]]
  3422. [.contract]
  3423. [[ECDSA]]
  3424. === `++ECDSA++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/cryptography/ECDSA.sol[{github-icon},role=heading-link]
  3425. [.hljs-theme-light.nopadding]
  3426. ```solidity
  3427. import "@openzeppelin/contracts/utils/cryptography/ECDSA.sol";
  3428. ```
  3429. Elliptic Curve Digital Signature Algorithm (ECDSA) operations.
  3430. These functions can be used to verify that a message was signed by the holder
  3431. of the private keys of a given address.
  3432. [.contract-index]
  3433. .Functions
  3434. --
  3435. * {xref-ECDSA-tryRecover-bytes32-bytes-}[`++tryRecover(hash, signature)++`]
  3436. * {xref-ECDSA-recover-bytes32-bytes-}[`++recover(hash, signature)++`]
  3437. * {xref-ECDSA-tryRecover-bytes32-bytes32-bytes32-}[`++tryRecover(hash, r, vs)++`]
  3438. * {xref-ECDSA-recover-bytes32-bytes32-bytes32-}[`++recover(hash, r, vs)++`]
  3439. * {xref-ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-}[`++tryRecover(hash, v, r, s)++`]
  3440. * {xref-ECDSA-recover-bytes32-uint8-bytes32-bytes32-}[`++recover(hash, v, r, s)++`]
  3441. * {xref-ECDSA-toEthSignedMessageHash-bytes32-}[`++toEthSignedMessageHash(hash)++`]
  3442. * {xref-ECDSA-toEthSignedMessageHash-bytes-}[`++toEthSignedMessageHash(s)++`]
  3443. * {xref-ECDSA-toTypedDataHash-bytes32-bytes32-}[`++toTypedDataHash(domainSeparator, structHash)++`]
  3444. --
  3445. [.contract-item]
  3446. [[ECDSA-tryRecover-bytes32-bytes-]]
  3447. ==== `[.contract-item-name]#++tryRecover++#++(bytes32 hash, bytes signature) → address, enum ECDSA.RecoverError++` [.item-kind]#internal#
  3448. Returns the address that signed a hashed message (`hash`) with
  3449. `signature` or error string. This address can then be used for verification purposes.
  3450. The `ecrecover` EVM opcode allows for malleable (non-unique) signatures:
  3451. this function rejects them by requiring the `s` value to be in the lower
  3452. half order, and the `v` value to be either 27 or 28.
  3453. IMPORTANT: `hash` _must_ be the result of a hash operation for the
  3454. verification to be secure: it is possible to craft signatures that
  3455. recover to arbitrary addresses for non-hashed data. A safe way to ensure
  3456. this is by receiving a hash of the original message (which may otherwise
  3457. be too long), and then calling {toEthSignedMessageHash} on it.
  3458. Documentation for signature generation:
  3459. - with https://web3js.readthedocs.io/en/v1.3.4/web3-eth-accounts.html#sign[Web3.js]
  3460. - with https://docs.ethers.io/v5/api/signer/#Signer-signMessage[ethers]
  3461. _Available since v4.3._
  3462. [.contract-item]
  3463. [[ECDSA-recover-bytes32-bytes-]]
  3464. ==== `[.contract-item-name]#++recover++#++(bytes32 hash, bytes signature) → address++` [.item-kind]#internal#
  3465. Returns the address that signed a hashed message (`hash`) with
  3466. `signature`. This address can then be used for verification purposes.
  3467. The `ecrecover` EVM opcode allows for malleable (non-unique) signatures:
  3468. this function rejects them by requiring the `s` value to be in the lower
  3469. half order, and the `v` value to be either 27 or 28.
  3470. IMPORTANT: `hash` _must_ be the result of a hash operation for the
  3471. verification to be secure: it is possible to craft signatures that
  3472. recover to arbitrary addresses for non-hashed data. A safe way to ensure
  3473. this is by receiving a hash of the original message (which may otherwise
  3474. be too long), and then calling {toEthSignedMessageHash} on it.
  3475. [.contract-item]
  3476. [[ECDSA-tryRecover-bytes32-bytes32-bytes32-]]
  3477. ==== `[.contract-item-name]#++tryRecover++#++(bytes32 hash, bytes32 r, bytes32 vs) → address, enum ECDSA.RecoverError++` [.item-kind]#internal#
  3478. Overload of {ECDSA-tryRecover} that receives the `r` and `vs` short-signature fields separately.
  3479. See https://eips.ethereum.org/EIPS/eip-2098[EIP-2098 short signatures]
  3480. _Available since v4.3._
  3481. [.contract-item]
  3482. [[ECDSA-recover-bytes32-bytes32-bytes32-]]
  3483. ==== `[.contract-item-name]#++recover++#++(bytes32 hash, bytes32 r, bytes32 vs) → address++` [.item-kind]#internal#
  3484. Overload of {ECDSA-recover} that receives the `r and `vs` short-signature fields separately.
  3485. _Available since v4.2._
  3486. [.contract-item]
  3487. [[ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-]]
  3488. ==== `[.contract-item-name]#++tryRecover++#++(bytes32 hash, uint8 v, bytes32 r, bytes32 s) → address, enum ECDSA.RecoverError++` [.item-kind]#internal#
  3489. Overload of {ECDSA-tryRecover} that receives the `v`,
  3490. `r` and `s` signature fields separately.
  3491. _Available since v4.3._
  3492. [.contract-item]
  3493. [[ECDSA-recover-bytes32-uint8-bytes32-bytes32-]]
  3494. ==== `[.contract-item-name]#++recover++#++(bytes32 hash, uint8 v, bytes32 r, bytes32 s) → address++` [.item-kind]#internal#
  3495. Overload of {ECDSA-recover} that receives the `v`,
  3496. `r` and `s` signature fields separately.
  3497. /
  3498. [.contract-item]
  3499. [[ECDSA-toEthSignedMessageHash-bytes32-]]
  3500. ==== `[.contract-item-name]#++toEthSignedMessageHash++#++(bytes32 hash) → bytes32++` [.item-kind]#internal#
  3501. Returns an Ethereum Signed Message, created from a `hash`. This
  3502. produces hash corresponding to the one signed with the
  3503. https://eth.wiki/json-rpc/API#eth_sign[`eth_sign`]
  3504. JSON-RPC method as part of EIP-191.
  3505. See {recover}.
  3506. /
  3507. [.contract-item]
  3508. [[ECDSA-toEthSignedMessageHash-bytes-]]
  3509. ==== `[.contract-item-name]#++toEthSignedMessageHash++#++(bytes s) → bytes32++` [.item-kind]#internal#
  3510. Returns an Ethereum Signed Message, created from `s`. This
  3511. produces hash corresponding to the one signed with the
  3512. https://eth.wiki/json-rpc/API#eth_sign[`eth_sign`]
  3513. JSON-RPC method as part of EIP-191.
  3514. See {recover}.
  3515. /
  3516. [.contract-item]
  3517. [[ECDSA-toTypedDataHash-bytes32-bytes32-]]
  3518. ==== `[.contract-item-name]#++toTypedDataHash++#++(bytes32 domainSeparator, bytes32 structHash) → bytes32++` [.item-kind]#internal#
  3519. Returns an Ethereum Signed Typed Data, created from a
  3520. `domainSeparator` and a `structHash`. This produces hash corresponding
  3521. to the one signed with the
  3522. https://eips.ethereum.org/EIPS/eip-712[`eth_signTypedData`]
  3523. JSON-RPC method as part of EIP-712.
  3524. See {recover}.
  3525. /
  3526. :SignatureChecker: pass:normal[xref:#SignatureChecker[`++SignatureChecker++`]]
  3527. :isValidSignatureNow: pass:normal[xref:#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-[`++isValidSignatureNow++`]]
  3528. [.contract]
  3529. [[SignatureChecker]]
  3530. === `++SignatureChecker++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/cryptography/SignatureChecker.sol[{github-icon},role=heading-link]
  3531. [.hljs-theme-light.nopadding]
  3532. ```solidity
  3533. import "@openzeppelin/contracts/utils/cryptography/SignatureChecker.sol";
  3534. ```
  3535. Signature verification helper that can be used instead of `ECDSA.recover` to seamlessly support both ECDSA
  3536. signatures from externally owned accounts (EOAs) as well as ERC1271 signatures from smart contract wallets like
  3537. Argent and Gnosis Safe.
  3538. _Available since v4.1._
  3539. [.contract-index]
  3540. .Functions
  3541. --
  3542. * {xref-SignatureChecker-isValidSignatureNow-address-bytes32-bytes-}[`++isValidSignatureNow(signer, hash, signature)++`]
  3543. --
  3544. [.contract-item]
  3545. [[SignatureChecker-isValidSignatureNow-address-bytes32-bytes-]]
  3546. ==== `[.contract-item-name]#++isValidSignatureNow++#++(address signer, bytes32 hash, bytes signature) → bool++` [.item-kind]#internal#
  3547. Checks if a signature is valid for a given signer and data hash. If the signer is a smart contract, the
  3548. signature is validated against that smart contract using ERC1271, otherwise it's validated using `ECDSA.recover`.
  3549. NOTE: Unlike ECDSA signatures, contract signatures are revocable, and the outcome of this function can thus
  3550. change through time. It could return true at block N and false at block N+1 (or the opposite).
  3551. :MerkleProof: pass:normal[xref:#MerkleProof[`++MerkleProof++`]]
  3552. :verify: pass:normal[xref:#MerkleProof-verify-bytes32---bytes32-bytes32-[`++verify++`]]
  3553. :verifyCalldata: pass:normal[xref:#MerkleProof-verifyCalldata-bytes32---bytes32-bytes32-[`++verifyCalldata++`]]
  3554. :processProof: pass:normal[xref:#MerkleProof-processProof-bytes32---bytes32-[`++processProof++`]]
  3555. :processProofCalldata: pass:normal[xref:#MerkleProof-processProofCalldata-bytes32---bytes32-[`++processProofCalldata++`]]
  3556. :multiProofVerify: pass:normal[xref:#MerkleProof-multiProofVerify-bytes32---bool---bytes32-bytes32---[`++multiProofVerify++`]]
  3557. :multiProofVerifyCalldata: pass:normal[xref:#MerkleProof-multiProofVerifyCalldata-bytes32---bool---bytes32-bytes32---[`++multiProofVerifyCalldata++`]]
  3558. :processMultiProof: pass:normal[xref:#MerkleProof-processMultiProof-bytes32---bool---bytes32---[`++processMultiProof++`]]
  3559. :processMultiProofCalldata: pass:normal[xref:#MerkleProof-processMultiProofCalldata-bytes32---bool---bytes32---[`++processMultiProofCalldata++`]]
  3560. [.contract]
  3561. [[MerkleProof]]
  3562. === `++MerkleProof++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/cryptography/MerkleProof.sol[{github-icon},role=heading-link]
  3563. [.hljs-theme-light.nopadding]
  3564. ```solidity
  3565. import "@openzeppelin/contracts/utils/cryptography/MerkleProof.sol";
  3566. ```
  3567. These functions deal with verification of Merkle Tree proofs.
  3568. The proofs can be generated using the JavaScript library
  3569. https://github.com/miguelmota/merkletreejs[merkletreejs].
  3570. Note: the hashing algorithm should be keccak256 and pair sorting should be enabled.
  3571. See `test/utils/cryptography/MerkleProof.test.js` for some examples.
  3572. WARNING: You should avoid using leaf values that are 64 bytes long prior to
  3573. hashing, or use a hash function other than keccak256 for hashing leaves.
  3574. This is because the concatenation of a sorted pair of internal nodes in
  3575. the merkle tree could be reinterpreted as a leaf value.
  3576. [.contract-index]
  3577. .Functions
  3578. --
  3579. * {xref-MerkleProof-verify-bytes32---bytes32-bytes32-}[`++verify(proof, root, leaf)++`]
  3580. * {xref-MerkleProof-verifyCalldata-bytes32---bytes32-bytes32-}[`++verifyCalldata(proof, root, leaf)++`]
  3581. * {xref-MerkleProof-processProof-bytes32---bytes32-}[`++processProof(proof, leaf)++`]
  3582. * {xref-MerkleProof-processProofCalldata-bytes32---bytes32-}[`++processProofCalldata(proof, leaf)++`]
  3583. * {xref-MerkleProof-multiProofVerify-bytes32---bool---bytes32-bytes32---}[`++multiProofVerify(proof, proofFlags, root, leaves)++`]
  3584. * {xref-MerkleProof-multiProofVerifyCalldata-bytes32---bool---bytes32-bytes32---}[`++multiProofVerifyCalldata(proof, proofFlags, root, leaves)++`]
  3585. * {xref-MerkleProof-processMultiProof-bytes32---bool---bytes32---}[`++processMultiProof(proof, proofFlags, leaves)++`]
  3586. * {xref-MerkleProof-processMultiProofCalldata-bytes32---bool---bytes32---}[`++processMultiProofCalldata(proof, proofFlags, leaves)++`]
  3587. --
  3588. [.contract-item]
  3589. [[MerkleProof-verify-bytes32---bytes32-bytes32-]]
  3590. ==== `[.contract-item-name]#++verify++#++(bytes32[] proof, bytes32 root, bytes32 leaf) → bool++` [.item-kind]#internal#
  3591. Returns true if a `leaf` can be proved to be a part of a Merkle tree
  3592. defined by `root`. For this, a `proof` must be provided, containing
  3593. sibling hashes on the branch from the leaf to the root of the tree. Each
  3594. pair of leaves and each pair of pre-images are assumed to be sorted.
  3595. [.contract-item]
  3596. [[MerkleProof-verifyCalldata-bytes32---bytes32-bytes32-]]
  3597. ==== `[.contract-item-name]#++verifyCalldata++#++(bytes32[] proof, bytes32 root, bytes32 leaf) → bool++` [.item-kind]#internal#
  3598. Calldata version of {verify}
  3599. _Available since v4.7._
  3600. [.contract-item]
  3601. [[MerkleProof-processProof-bytes32---bytes32-]]
  3602. ==== `[.contract-item-name]#++processProof++#++(bytes32[] proof, bytes32 leaf) → bytes32++` [.item-kind]#internal#
  3603. Returns the rebuilt hash obtained by traversing a Merkle tree up
  3604. from `leaf` using `proof`. A `proof` is valid if and only if the rebuilt
  3605. hash matches the root of the tree. When processing the proof, the pairs
  3606. of leafs & pre-images are assumed to be sorted.
  3607. _Available since v4.4._
  3608. [.contract-item]
  3609. [[MerkleProof-processProofCalldata-bytes32---bytes32-]]
  3610. ==== `[.contract-item-name]#++processProofCalldata++#++(bytes32[] proof, bytes32 leaf) → bytes32++` [.item-kind]#internal#
  3611. Calldata version of {processProof}
  3612. _Available since v4.7._
  3613. [.contract-item]
  3614. [[MerkleProof-multiProofVerify-bytes32---bool---bytes32-bytes32---]]
  3615. ==== `[.contract-item-name]#++multiProofVerify++#++(bytes32[] proof, bool[] proofFlags, bytes32 root, bytes32[] leaves) → bool++` [.item-kind]#internal#
  3616. Returns true if the `leaves` can be proved to be a part of a Merkle tree defined by
  3617. `root`, according to `proof` and `proofFlags` as described in {processMultiProof}.
  3618. _Available since v4.7._
  3619. [.contract-item]
  3620. [[MerkleProof-multiProofVerifyCalldata-bytes32---bool---bytes32-bytes32---]]
  3621. ==== `[.contract-item-name]#++multiProofVerifyCalldata++#++(bytes32[] proof, bool[] proofFlags, bytes32 root, bytes32[] leaves) → bool++` [.item-kind]#internal#
  3622. Calldata version of {multiProofVerify}
  3623. _Available since v4.7._
  3624. [.contract-item]
  3625. [[MerkleProof-processMultiProof-bytes32---bool---bytes32---]]
  3626. ==== `[.contract-item-name]#++processMultiProof++#++(bytes32[] proof, bool[] proofFlags, bytes32[] leaves) → bytes32 merkleRoot++` [.item-kind]#internal#
  3627. Returns the root of a tree reconstructed from `leaves` and the sibling nodes in `proof`,
  3628. consuming from one or the other at each step according to the instructions given by
  3629. `proofFlags`.
  3630. _Available since v4.7._
  3631. [.contract-item]
  3632. [[MerkleProof-processMultiProofCalldata-bytes32---bool---bytes32---]]
  3633. ==== `[.contract-item-name]#++processMultiProofCalldata++#++(bytes32[] proof, bool[] proofFlags, bytes32[] leaves) → bytes32 merkleRoot++` [.item-kind]#internal#
  3634. Calldata version of {processMultiProof}
  3635. _Available since v4.7._
  3636. :EIP712: pass:normal[xref:#EIP712[`++EIP712++`]]
  3637. :constructor: pass:normal[xref:#EIP712-constructor-string-string-[`++constructor++`]]
  3638. :_domainSeparatorV4: pass:normal[xref:#EIP712-_domainSeparatorV4--[`++_domainSeparatorV4++`]]
  3639. :_hashTypedDataV4: pass:normal[xref:#EIP712-_hashTypedDataV4-bytes32-[`++_hashTypedDataV4++`]]
  3640. [.contract]
  3641. [[EIP712]]
  3642. === `++EIP712++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/cryptography/draft-EIP712.sol[{github-icon},role=heading-link]
  3643. [.hljs-theme-light.nopadding]
  3644. ```solidity
  3645. import "@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol";
  3646. ```
  3647. https://eips.ethereum.org/EIPS/eip-712[EIP 712] is a standard for hashing and signing of typed structured data.
  3648. The encoding specified in the EIP is very generic, and such a generic implementation in Solidity is not feasible,
  3649. thus this contract does not implement the encoding itself. Protocols need to implement the type-specific encoding
  3650. they need in their contracts using a combination of `abi.encode` and `keccak256`.
  3651. This contract implements the EIP 712 domain separator ({_domainSeparatorV4}) that is used as part of the encoding
  3652. scheme, and the final step of the encoding to obtain the message digest that is then signed via ECDSA
  3653. ({_hashTypedDataV4}).
  3654. The implementation of the domain separator was designed to be as efficient as possible while still properly updating
  3655. the chain id to protect against replay attacks on an eventual fork of the chain.
  3656. NOTE: This contract implements the version of the encoding known as "v4", as implemented by the JSON RPC method
  3657. https://docs.metamask.io/guide/signing-data.html[`eth_signTypedDataV4` in MetaMask].
  3658. _Available since v3.4._
  3659. [.contract-index]
  3660. .Functions
  3661. --
  3662. * {xref-EIP712-constructor-string-string-}[`++constructor(name, version)++`]
  3663. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3664. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3665. --
  3666. [.contract-item]
  3667. [[EIP712-constructor-string-string-]]
  3668. ==== `[.contract-item-name]#++constructor++#++(string name, string version)++` [.item-kind]#internal#
  3669. Initializes the domain separator and parameter caches.
  3670. The meaning of `name` and `version` is specified in
  3671. https://eips.ethereum.org/EIPS/eip-712#definition-of-domainseparator[EIP 712]:
  3672. - `name`: the user readable name of the signing domain, i.e. the name of the DApp or the protocol.
  3673. - `version`: the current major version of the signing domain.
  3674. NOTE: These parameters cannot be changed except through a xref:learn::upgrading-smart-contracts.adoc[smart
  3675. contract upgrade].
  3676. [.contract-item]
  3677. [[EIP712-_domainSeparatorV4--]]
  3678. ==== `[.contract-item-name]#++_domainSeparatorV4++#++() → bytes32++` [.item-kind]#internal#
  3679. Returns the domain separator for the current chain.
  3680. [.contract-item]
  3681. [[EIP712-_hashTypedDataV4-bytes32-]]
  3682. ==== `[.contract-item-name]#++_hashTypedDataV4++#++(bytes32 structHash) → bytes32++` [.item-kind]#internal#
  3683. Given an already https://eips.ethereum.org/EIPS/eip-712#definition-of-hashstruct[hashed struct], this
  3684. function returns the hash of the fully encoded EIP712 message for this domain.
  3685. This hash can be used together with {ECDSA-recover} to obtain the signer of a message. For example:
  3686. ```solidity
  3687. bytes32 digest = _hashTypedDataV4(keccak256(abi.encode(
  3688. keccak256("Mail(address to,string contents)"),
  3689. mailTo,
  3690. keccak256(bytes(mailContents))
  3691. )));
  3692. address signer = ECDSA.recover(digest, signature);
  3693. ```
  3694. == Escrow
  3695. :ConditionalEscrow: pass:normal[xref:#ConditionalEscrow[`++ConditionalEscrow++`]]
  3696. :withdrawalAllowed: pass:normal[xref:#ConditionalEscrow-withdrawalAllowed-address-[`++withdrawalAllowed++`]]
  3697. :withdraw: pass:normal[xref:#ConditionalEscrow-withdraw-address-payable-[`++withdraw++`]]
  3698. [.contract]
  3699. [[ConditionalEscrow]]
  3700. === `++ConditionalEscrow++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/escrow/ConditionalEscrow.sol[{github-icon},role=heading-link]
  3701. [.hljs-theme-light.nopadding]
  3702. ```solidity
  3703. import "@openzeppelin/contracts/utils/escrow/ConditionalEscrow.sol";
  3704. ```
  3705. Base abstract escrow to only allow withdrawal if a condition is met.
  3706. Intended usage: See {Escrow}. Same usage guidelines apply here.
  3707. [.contract-index]
  3708. .Functions
  3709. --
  3710. * {xref-ConditionalEscrow-withdrawalAllowed-address-}[`++withdrawalAllowed(payee)++`]
  3711. * {xref-ConditionalEscrow-withdraw-address-payable-}[`++withdraw(payee)++`]
  3712. [.contract-subindex-inherited]
  3713. .Escrow
  3714. * {xref-Escrow-depositsOf-address-}[`++depositsOf(payee)++`]
  3715. * {xref-Escrow-deposit-address-}[`++deposit(payee)++`]
  3716. [.contract-subindex-inherited]
  3717. .Ownable
  3718. * {xref-Ownable-constructor--}[`++constructor()++`]
  3719. * {xref-Ownable-owner--}[`++owner()++`]
  3720. * {xref-Ownable-_checkOwner--}[`++_checkOwner()++`]
  3721. * {xref-Ownable-renounceOwnership--}[`++renounceOwnership()++`]
  3722. * {xref-Ownable-transferOwnership-address-}[`++transferOwnership(newOwner)++`]
  3723. * {xref-Ownable-_transferOwnership-address-}[`++_transferOwnership(newOwner)++`]
  3724. --
  3725. [.contract-index]
  3726. .Events
  3727. --
  3728. [.contract-subindex-inherited]
  3729. .Escrow
  3730. * {xref-Escrow-Deposited-address-uint256-}[`++Deposited(payee, weiAmount)++`]
  3731. * {xref-Escrow-Withdrawn-address-uint256-}[`++Withdrawn(payee, weiAmount)++`]
  3732. [.contract-subindex-inherited]
  3733. .Ownable
  3734. * {xref-Ownable-OwnershipTransferred-address-address-}[`++OwnershipTransferred(previousOwner, newOwner)++`]
  3735. [.contract-subindex-inherited]
  3736. .Context
  3737. --
  3738. [.contract-item]
  3739. [[ConditionalEscrow-withdrawalAllowed-address-]]
  3740. ==== `[.contract-item-name]#++withdrawalAllowed++#++(address payee) → bool++` [.item-kind]#public#
  3741. Returns whether an address is allowed to withdraw their funds. To be
  3742. implemented by derived contracts.
  3743. [.contract-item]
  3744. [[ConditionalEscrow-withdraw-address-payable-]]
  3745. ==== `[.contract-item-name]#++withdraw++#++(address payable payee)++` [.item-kind]#public#
  3746. :Escrow: pass:normal[xref:#Escrow[`++Escrow++`]]
  3747. :depositsOf: pass:normal[xref:#Escrow-depositsOf-address-[`++depositsOf++`]]
  3748. :deposit: pass:normal[xref:#Escrow-deposit-address-[`++deposit++`]]
  3749. :withdraw: pass:normal[xref:#Escrow-withdraw-address-payable-[`++withdraw++`]]
  3750. :Deposited: pass:normal[xref:#Escrow-Deposited-address-uint256-[`++Deposited++`]]
  3751. :Withdrawn: pass:normal[xref:#Escrow-Withdrawn-address-uint256-[`++Withdrawn++`]]
  3752. [.contract]
  3753. [[Escrow]]
  3754. === `++Escrow++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/escrow/Escrow.sol[{github-icon},role=heading-link]
  3755. [.hljs-theme-light.nopadding]
  3756. ```solidity
  3757. import "@openzeppelin/contracts/utils/escrow/Escrow.sol";
  3758. ```
  3759. Base escrow contract, holds funds designated for a payee until they
  3760. withdraw them.
  3761. Intended usage: This contract (and derived escrow contracts) should be a
  3762. standalone contract, that only interacts with the contract that instantiated
  3763. it. That way, it is guaranteed that all Ether will be handled according to
  3764. the `Escrow` rules, and there is no need to check for payable functions or
  3765. transfers in the inheritance tree. The contract that uses the escrow as its
  3766. payment method should be its owner, and provide public methods redirecting
  3767. to the escrow's deposit and withdraw.
  3768. [.contract-index]
  3769. .Functions
  3770. --
  3771. * {xref-Escrow-depositsOf-address-}[`++depositsOf(payee)++`]
  3772. * {xref-Escrow-deposit-address-}[`++deposit(payee)++`]
  3773. * {xref-Escrow-withdraw-address-payable-}[`++withdraw(payee)++`]
  3774. [.contract-subindex-inherited]
  3775. .Ownable
  3776. * {xref-Ownable-constructor--}[`++constructor()++`]
  3777. * {xref-Ownable-owner--}[`++owner()++`]
  3778. * {xref-Ownable-_checkOwner--}[`++_checkOwner()++`]
  3779. * {xref-Ownable-renounceOwnership--}[`++renounceOwnership()++`]
  3780. * {xref-Ownable-transferOwnership-address-}[`++transferOwnership(newOwner)++`]
  3781. * {xref-Ownable-_transferOwnership-address-}[`++_transferOwnership(newOwner)++`]
  3782. --
  3783. [.contract-index]
  3784. .Events
  3785. --
  3786. * {xref-Escrow-Deposited-address-uint256-}[`++Deposited(payee, weiAmount)++`]
  3787. * {xref-Escrow-Withdrawn-address-uint256-}[`++Withdrawn(payee, weiAmount)++`]
  3788. [.contract-subindex-inherited]
  3789. .Ownable
  3790. * {xref-Ownable-OwnershipTransferred-address-address-}[`++OwnershipTransferred(previousOwner, newOwner)++`]
  3791. [.contract-subindex-inherited]
  3792. .Context
  3793. --
  3794. [.contract-item]
  3795. [[Escrow-depositsOf-address-]]
  3796. ==== `[.contract-item-name]#++depositsOf++#++(address payee) → uint256++` [.item-kind]#public#
  3797. [.contract-item]
  3798. [[Escrow-deposit-address-]]
  3799. ==== `[.contract-item-name]#++deposit++#++(address payee)++` [.item-kind]#public#
  3800. Stores the sent amount as credit to be withdrawn.
  3801. [.contract-item]
  3802. [[Escrow-withdraw-address-payable-]]
  3803. ==== `[.contract-item-name]#++withdraw++#++(address payable payee)++` [.item-kind]#public#
  3804. Withdraw accumulated balance for a payee, forwarding all gas to the
  3805. recipient.
  3806. WARNING: Forwarding all gas opens the door to reentrancy vulnerabilities.
  3807. Make sure you trust the recipient, or are either following the
  3808. checks-effects-interactions pattern or using {ReentrancyGuard}.
  3809. [.contract-item]
  3810. [[Escrow-Deposited-address-uint256-]]
  3811. ==== `[.contract-item-name]#++Deposited++#++(address payee, uint256 weiAmount)++` [.item-kind]#event#
  3812. [.contract-item]
  3813. [[Escrow-Withdrawn-address-uint256-]]
  3814. ==== `[.contract-item-name]#++Withdrawn++#++(address payee, uint256 weiAmount)++` [.item-kind]#event#
  3815. :RefundEscrow: pass:normal[xref:#RefundEscrow[`++RefundEscrow++`]]
  3816. :constructor: pass:normal[xref:#RefundEscrow-constructor-address-payable-[`++constructor++`]]
  3817. :state: pass:normal[xref:#RefundEscrow-state--[`++state++`]]
  3818. :beneficiary: pass:normal[xref:#RefundEscrow-beneficiary--[`++beneficiary++`]]
  3819. :deposit: pass:normal[xref:#RefundEscrow-deposit-address-[`++deposit++`]]
  3820. :close: pass:normal[xref:#RefundEscrow-close--[`++close++`]]
  3821. :enableRefunds: pass:normal[xref:#RefundEscrow-enableRefunds--[`++enableRefunds++`]]
  3822. :beneficiaryWithdraw: pass:normal[xref:#RefundEscrow-beneficiaryWithdraw--[`++beneficiaryWithdraw++`]]
  3823. :withdrawalAllowed: pass:normal[xref:#RefundEscrow-withdrawalAllowed-address-[`++withdrawalAllowed++`]]
  3824. :RefundsClosed: pass:normal[xref:#RefundEscrow-RefundsClosed--[`++RefundsClosed++`]]
  3825. :RefundsEnabled: pass:normal[xref:#RefundEscrow-RefundsEnabled--[`++RefundsEnabled++`]]
  3826. :State: pass:normal[xref:#RefundEscrow-State[`++State++`]]
  3827. [.contract]
  3828. [[RefundEscrow]]
  3829. === `++RefundEscrow++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/escrow/RefundEscrow.sol[{github-icon},role=heading-link]
  3830. [.hljs-theme-light.nopadding]
  3831. ```solidity
  3832. import "@openzeppelin/contracts/utils/escrow/RefundEscrow.sol";
  3833. ```
  3834. Escrow that holds funds for a beneficiary, deposited from multiple
  3835. parties.
  3836. Intended usage: See {Escrow}. Same usage guidelines apply here.
  3837. The owner account (that is, the contract that instantiates this
  3838. contract) may deposit, close the deposit period, and allow for either
  3839. withdrawal by the beneficiary, or refunds to the depositors. All interactions
  3840. with `RefundEscrow` will be made through the owner contract.
  3841. [.contract-index]
  3842. .Functions
  3843. --
  3844. * {xref-RefundEscrow-constructor-address-payable-}[`++constructor(beneficiary_)++`]
  3845. * {xref-RefundEscrow-state--}[`++state()++`]
  3846. * {xref-RefundEscrow-beneficiary--}[`++beneficiary()++`]
  3847. * {xref-RefundEscrow-deposit-address-}[`++deposit(refundee)++`]
  3848. * {xref-RefundEscrow-close--}[`++close()++`]
  3849. * {xref-RefundEscrow-enableRefunds--}[`++enableRefunds()++`]
  3850. * {xref-RefundEscrow-beneficiaryWithdraw--}[`++beneficiaryWithdraw()++`]
  3851. * {xref-RefundEscrow-withdrawalAllowed-address-}[`++withdrawalAllowed(_)++`]
  3852. [.contract-subindex-inherited]
  3853. .ConditionalEscrow
  3854. * {xref-ConditionalEscrow-withdraw-address-payable-}[`++withdraw(payee)++`]
  3855. [.contract-subindex-inherited]
  3856. .Escrow
  3857. * {xref-Escrow-depositsOf-address-}[`++depositsOf(payee)++`]
  3858. [.contract-subindex-inherited]
  3859. .Ownable
  3860. * {xref-Ownable-owner--}[`++owner()++`]
  3861. * {xref-Ownable-_checkOwner--}[`++_checkOwner()++`]
  3862. * {xref-Ownable-renounceOwnership--}[`++renounceOwnership()++`]
  3863. * {xref-Ownable-transferOwnership-address-}[`++transferOwnership(newOwner)++`]
  3864. * {xref-Ownable-_transferOwnership-address-}[`++_transferOwnership(newOwner)++`]
  3865. --
  3866. [.contract-index]
  3867. .Events
  3868. --
  3869. * {xref-RefundEscrow-RefundsClosed--}[`++RefundsClosed()++`]
  3870. * {xref-RefundEscrow-RefundsEnabled--}[`++RefundsEnabled()++`]
  3871. [.contract-subindex-inherited]
  3872. .ConditionalEscrow
  3873. [.contract-subindex-inherited]
  3874. .Escrow
  3875. * {xref-Escrow-Deposited-address-uint256-}[`++Deposited(payee, weiAmount)++`]
  3876. * {xref-Escrow-Withdrawn-address-uint256-}[`++Withdrawn(payee, weiAmount)++`]
  3877. [.contract-subindex-inherited]
  3878. .Ownable
  3879. * {xref-Ownable-OwnershipTransferred-address-address-}[`++OwnershipTransferred(previousOwner, newOwner)++`]
  3880. [.contract-subindex-inherited]
  3881. .Context
  3882. --
  3883. [.contract-item]
  3884. [[RefundEscrow-constructor-address-payable-]]
  3885. ==== `[.contract-item-name]#++constructor++#++(address payable beneficiary_)++` [.item-kind]#public#
  3886. Constructor.
  3887. [.contract-item]
  3888. [[RefundEscrow-state--]]
  3889. ==== `[.contract-item-name]#++state++#++() → enum RefundEscrow.State++` [.item-kind]#public#
  3890. [.contract-item]
  3891. [[RefundEscrow-beneficiary--]]
  3892. ==== `[.contract-item-name]#++beneficiary++#++() → address payable++` [.item-kind]#public#
  3893. [.contract-item]
  3894. [[RefundEscrow-deposit-address-]]
  3895. ==== `[.contract-item-name]#++deposit++#++(address refundee)++` [.item-kind]#public#
  3896. Stores funds that may later be refunded.
  3897. [.contract-item]
  3898. [[RefundEscrow-close--]]
  3899. ==== `[.contract-item-name]#++close++#++()++` [.item-kind]#public#
  3900. Allows for the beneficiary to withdraw their funds, rejecting
  3901. further deposits.
  3902. [.contract-item]
  3903. [[RefundEscrow-enableRefunds--]]
  3904. ==== `[.contract-item-name]#++enableRefunds++#++()++` [.item-kind]#public#
  3905. Allows for refunds to take place, rejecting further deposits.
  3906. [.contract-item]
  3907. [[RefundEscrow-beneficiaryWithdraw--]]
  3908. ==== `[.contract-item-name]#++beneficiaryWithdraw++#++()++` [.item-kind]#public#
  3909. Withdraws the beneficiary's funds.
  3910. [.contract-item]
  3911. [[RefundEscrow-withdrawalAllowed-address-]]
  3912. ==== `[.contract-item-name]#++withdrawalAllowed++#++(address) → bool++` [.item-kind]#public#
  3913. Returns whether refundees can withdraw their deposits (be refunded). The overridden function receives a
  3914. 'payee' argument, but we ignore it here since the condition is global, not per-payee.
  3915. [.contract-item]
  3916. [[RefundEscrow-RefundsClosed--]]
  3917. ==== `[.contract-item-name]#++RefundsClosed++#++()++` [.item-kind]#event#
  3918. [.contract-item]
  3919. [[RefundEscrow-RefundsEnabled--]]
  3920. ==== `[.contract-item-name]#++RefundsEnabled++#++()++` [.item-kind]#event#
  3921. == Introspection
  3922. This set of interfaces and contracts deal with https://en.wikipedia.org/wiki/Type_introspection[type introspection] of contracts, that is, examining which functions can be called on them. This is usually referred to as a contract's _interface_.
  3923. Ethereum contracts have no native concept of an interface, so applications must usually simply trust they are not making an incorrect call. For trusted setups this is a non-issue, but often unknown and untrusted third-party addresses need to be interacted with. There may even not be any direct calls to them! (e.g. `ERC20` tokens may be sent to a contract that lacks a way to transfer them out of it, locking them forever). In these cases, a contract _declaring_ its interface can be very helpful in preventing errors.
  3924. There are two main ways to approach this.
  3925. * Locally, where a contract implements `IERC165` and declares an interface, and a second one queries it directly via `ERC165Checker`.
  3926. * Globally, where a global and unique registry (`IERC1820Registry`) is used to register implementers of a certain interface (`IERC1820Implementer`). It is then the registry that is queried, which allows for more complex setups, like contracts implementing interfaces for externally-owned accounts.
  3927. Note that, in all cases, accounts simply _declare_ their interfaces, but they are not required to actually implement them. This mechanism can therefore be used to both prevent errors and allow for complex interactions (see `ERC777`), but it must not be relied on for security.
  3928. :IERC165: pass:normal[xref:#IERC165[`++IERC165++`]]
  3929. :supportsInterface: pass:normal[xref:#IERC165-supportsInterface-bytes4-[`++supportsInterface++`]]
  3930. [.contract]
  3931. [[IERC165]]
  3932. === `++IERC165++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/introspection/IERC165.sol[{github-icon},role=heading-link]
  3933. [.hljs-theme-light.nopadding]
  3934. ```solidity
  3935. import "@openzeppelin/contracts/utils/introspection/IERC165.sol";
  3936. ```
  3937. Interface of the ERC165 standard, as defined in the
  3938. https://eips.ethereum.org/EIPS/eip-165[EIP].
  3939. Implementers can declare support of contract interfaces, which can then be
  3940. queried by others ({ERC165Checker}).
  3941. For an implementation, see {ERC165}.
  3942. [.contract-index]
  3943. .Functions
  3944. --
  3945. * {xref-IERC165-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3946. --
  3947. [.contract-item]
  3948. [[IERC165-supportsInterface-bytes4-]]
  3949. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#external#
  3950. Returns true if this contract implements the interface defined by
  3951. `interfaceId`. See the corresponding
  3952. https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]
  3953. to learn more about how these ids are created.
  3954. This function call must use less than 30 000 gas.
  3955. :ERC165: pass:normal[xref:#ERC165[`++ERC165++`]]
  3956. :supportsInterface: pass:normal[xref:#ERC165-supportsInterface-bytes4-[`++supportsInterface++`]]
  3957. [.contract]
  3958. [[ERC165]]
  3959. === `++ERC165++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/introspection/ERC165.sol[{github-icon},role=heading-link]
  3960. [.hljs-theme-light.nopadding]
  3961. ```solidity
  3962. import "@openzeppelin/contracts/utils/introspection/ERC165.sol";
  3963. ```
  3964. Implementation of the {IERC165} interface.
  3965. Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check
  3966. for the additional interface id that will be supported. For example:
  3967. ```solidity
  3968. function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
  3969. return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);
  3970. }
  3971. ```
  3972. Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.
  3973. [.contract-index]
  3974. .Functions
  3975. --
  3976. * {xref-ERC165-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3977. [.contract-subindex-inherited]
  3978. .IERC165
  3979. --
  3980. [.contract-item]
  3981. [[ERC165-supportsInterface-bytes4-]]
  3982. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  3983. See {IERC165-supportsInterface}.
  3984. :ERC165Storage: pass:normal[xref:#ERC165Storage[`++ERC165Storage++`]]
  3985. :supportsInterface: pass:normal[xref:#ERC165Storage-supportsInterface-bytes4-[`++supportsInterface++`]]
  3986. :_registerInterface: pass:normal[xref:#ERC165Storage-_registerInterface-bytes4-[`++_registerInterface++`]]
  3987. [.contract]
  3988. [[ERC165Storage]]
  3989. === `++ERC165Storage++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/introspection/ERC165Storage.sol[{github-icon},role=heading-link]
  3990. [.hljs-theme-light.nopadding]
  3991. ```solidity
  3992. import "@openzeppelin/contracts/utils/introspection/ERC165Storage.sol";
  3993. ```
  3994. Storage based implementation of the {IERC165} interface.
  3995. Contracts may inherit from this and call {_registerInterface} to declare
  3996. their support of an interface.
  3997. [.contract-index]
  3998. .Functions
  3999. --
  4000. * {xref-ERC165Storage-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  4001. * {xref-ERC165Storage-_registerInterface-bytes4-}[`++_registerInterface(interfaceId)++`]
  4002. [.contract-subindex-inherited]
  4003. .ERC165
  4004. [.contract-subindex-inherited]
  4005. .IERC165
  4006. --
  4007. [.contract-item]
  4008. [[ERC165Storage-supportsInterface-bytes4-]]
  4009. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  4010. See {IERC165-supportsInterface}.
  4011. [.contract-item]
  4012. [[ERC165Storage-_registerInterface-bytes4-]]
  4013. ==== `[.contract-item-name]#++_registerInterface++#++(bytes4 interfaceId)++` [.item-kind]#internal#
  4014. Registers the contract as an implementer of the interface defined by
  4015. `interfaceId`. Support of the actual ERC165 interface is automatic and
  4016. registering its interface id is not required.
  4017. See {IERC165-supportsInterface}.
  4018. Requirements:
  4019. - `interfaceId` cannot be the ERC165 invalid interface (`0xffffffff`).
  4020. :ERC165Checker: pass:normal[xref:#ERC165Checker[`++ERC165Checker++`]]
  4021. :supportsERC165: pass:normal[xref:#ERC165Checker-supportsERC165-address-[`++supportsERC165++`]]
  4022. :supportsInterface: pass:normal[xref:#ERC165Checker-supportsInterface-address-bytes4-[`++supportsInterface++`]]
  4023. :getSupportedInterfaces: pass:normal[xref:#ERC165Checker-getSupportedInterfaces-address-bytes4---[`++getSupportedInterfaces++`]]
  4024. :supportsAllInterfaces: pass:normal[xref:#ERC165Checker-supportsAllInterfaces-address-bytes4---[`++supportsAllInterfaces++`]]
  4025. [.contract]
  4026. [[ERC165Checker]]
  4027. === `++ERC165Checker++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/introspection/ERC165Checker.sol[{github-icon},role=heading-link]
  4028. [.hljs-theme-light.nopadding]
  4029. ```solidity
  4030. import "@openzeppelin/contracts/utils/introspection/ERC165Checker.sol";
  4031. ```
  4032. Library used to query support of an interface declared via {IERC165}.
  4033. Note that these functions return the actual result of the query: they do not
  4034. `revert` if an interface is not supported. It is up to the caller to decide
  4035. what to do in these cases.
  4036. [.contract-index]
  4037. .Functions
  4038. --
  4039. * {xref-ERC165Checker-supportsERC165-address-}[`++supportsERC165(account)++`]
  4040. * {xref-ERC165Checker-supportsInterface-address-bytes4-}[`++supportsInterface(account, interfaceId)++`]
  4041. * {xref-ERC165Checker-getSupportedInterfaces-address-bytes4---}[`++getSupportedInterfaces(account, interfaceIds)++`]
  4042. * {xref-ERC165Checker-supportsAllInterfaces-address-bytes4---}[`++supportsAllInterfaces(account, interfaceIds)++`]
  4043. --
  4044. [.contract-item]
  4045. [[ERC165Checker-supportsERC165-address-]]
  4046. ==== `[.contract-item-name]#++supportsERC165++#++(address account) → bool++` [.item-kind]#internal#
  4047. Returns true if `account` supports the {IERC165} interface,
  4048. [.contract-item]
  4049. [[ERC165Checker-supportsInterface-address-bytes4-]]
  4050. ==== `[.contract-item-name]#++supportsInterface++#++(address account, bytes4 interfaceId) → bool++` [.item-kind]#internal#
  4051. Returns true if `account` supports the interface defined by
  4052. `interfaceId`. Support for {IERC165} itself is queried automatically.
  4053. See {IERC165-supportsInterface}.
  4054. [.contract-item]
  4055. [[ERC165Checker-getSupportedInterfaces-address-bytes4---]]
  4056. ==== `[.contract-item-name]#++getSupportedInterfaces++#++(address account, bytes4[] interfaceIds) → bool[]++` [.item-kind]#internal#
  4057. Returns a boolean array where each value corresponds to the
  4058. interfaces passed in and whether they're supported or not. This allows
  4059. you to batch check interfaces for a contract where your expectation
  4060. is that some interfaces may not be supported.
  4061. See {IERC165-supportsInterface}.
  4062. _Available since v3.4._
  4063. [.contract-item]
  4064. [[ERC165Checker-supportsAllInterfaces-address-bytes4---]]
  4065. ==== `[.contract-item-name]#++supportsAllInterfaces++#++(address account, bytes4[] interfaceIds) → bool++` [.item-kind]#internal#
  4066. Returns true if `account` supports all the interfaces defined in
  4067. `interfaceIds`. Support for {IERC165} itself is queried automatically.
  4068. Batch-querying can lead to gas savings by skipping repeated checks for
  4069. {IERC165} support.
  4070. See {IERC165-supportsInterface}.
  4071. :IERC1820Registry: pass:normal[xref:#IERC1820Registry[`++IERC1820Registry++`]]
  4072. :setManager: pass:normal[xref:#IERC1820Registry-setManager-address-address-[`++setManager++`]]
  4073. :getManager: pass:normal[xref:#IERC1820Registry-getManager-address-[`++getManager++`]]
  4074. :setInterfaceImplementer: pass:normal[xref:#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-[`++setInterfaceImplementer++`]]
  4075. :getInterfaceImplementer: pass:normal[xref:#IERC1820Registry-getInterfaceImplementer-address-bytes32-[`++getInterfaceImplementer++`]]
  4076. :interfaceHash: pass:normal[xref:#IERC1820Registry-interfaceHash-string-[`++interfaceHash++`]]
  4077. :updateERC165Cache: pass:normal[xref:#IERC1820Registry-updateERC165Cache-address-bytes4-[`++updateERC165Cache++`]]
  4078. :implementsERC165Interface: pass:normal[xref:#IERC1820Registry-implementsERC165Interface-address-bytes4-[`++implementsERC165Interface++`]]
  4079. :implementsERC165InterfaceNoCache: pass:normal[xref:#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-[`++implementsERC165InterfaceNoCache++`]]
  4080. :InterfaceImplementerSet: pass:normal[xref:#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-[`++InterfaceImplementerSet++`]]
  4081. :ManagerChanged: pass:normal[xref:#IERC1820Registry-ManagerChanged-address-address-[`++ManagerChanged++`]]
  4082. [.contract]
  4083. [[IERC1820Registry]]
  4084. === `++IERC1820Registry++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/introspection/IERC1820Registry.sol[{github-icon},role=heading-link]
  4085. [.hljs-theme-light.nopadding]
  4086. ```solidity
  4087. import "@openzeppelin/contracts/utils/introspection/IERC1820Registry.sol";
  4088. ```
  4089. Interface of the global ERC1820 Registry, as defined in the
  4090. https://eips.ethereum.org/EIPS/eip-1820[EIP]. Accounts may register
  4091. implementers for interfaces in this registry, as well as query support.
  4092. Implementers may be shared by multiple accounts, and can also implement more
  4093. than a single interface for each account. Contracts can implement interfaces
  4094. for themselves, but externally-owned accounts (EOA) must delegate this to a
  4095. contract.
  4096. {IERC165} interfaces can also be queried via the registry.
  4097. For an in-depth explanation and source code analysis, see the EIP text.
  4098. [.contract-index]
  4099. .Functions
  4100. --
  4101. * {xref-IERC1820Registry-setManager-address-address-}[`++setManager(account, newManager)++`]
  4102. * {xref-IERC1820Registry-getManager-address-}[`++getManager(account)++`]
  4103. * {xref-IERC1820Registry-setInterfaceImplementer-address-bytes32-address-}[`++setInterfaceImplementer(account, _interfaceHash, implementer)++`]
  4104. * {xref-IERC1820Registry-getInterfaceImplementer-address-bytes32-}[`++getInterfaceImplementer(account, _interfaceHash)++`]
  4105. * {xref-IERC1820Registry-interfaceHash-string-}[`++interfaceHash(interfaceName)++`]
  4106. * {xref-IERC1820Registry-updateERC165Cache-address-bytes4-}[`++updateERC165Cache(account, interfaceId)++`]
  4107. * {xref-IERC1820Registry-implementsERC165Interface-address-bytes4-}[`++implementsERC165Interface(account, interfaceId)++`]
  4108. * {xref-IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-}[`++implementsERC165InterfaceNoCache(account, interfaceId)++`]
  4109. --
  4110. [.contract-index]
  4111. .Events
  4112. --
  4113. * {xref-IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-}[`++InterfaceImplementerSet(account, interfaceHash, implementer)++`]
  4114. * {xref-IERC1820Registry-ManagerChanged-address-address-}[`++ManagerChanged(account, newManager)++`]
  4115. --
  4116. [.contract-item]
  4117. [[IERC1820Registry-setManager-address-address-]]
  4118. ==== `[.contract-item-name]#++setManager++#++(address account, address newManager)++` [.item-kind]#external#
  4119. Sets `newManager` as the manager for `account`. A manager of an
  4120. account is able to set interface implementers for it.
  4121. By default, each account is its own manager. Passing a value of `0x0` in
  4122. `newManager` will reset the manager to this initial state.
  4123. Emits a {ManagerChanged} event.
  4124. Requirements:
  4125. - the caller must be the current manager for `account`.
  4126. [.contract-item]
  4127. [[IERC1820Registry-getManager-address-]]
  4128. ==== `[.contract-item-name]#++getManager++#++(address account) → address++` [.item-kind]#external#
  4129. Returns the manager for `account`.
  4130. See {setManager}.
  4131. [.contract-item]
  4132. [[IERC1820Registry-setInterfaceImplementer-address-bytes32-address-]]
  4133. ==== `[.contract-item-name]#++setInterfaceImplementer++#++(address account, bytes32 _interfaceHash, address implementer)++` [.item-kind]#external#
  4134. Sets the `implementer` contract as ``account``'s implementer for
  4135. `interfaceHash`.
  4136. `account` being the zero address is an alias for the caller's address.
  4137. The zero address can also be used in `implementer` to remove an old one.
  4138. See {interfaceHash} to learn how these are created.
  4139. Emits an {InterfaceImplementerSet} event.
  4140. Requirements:
  4141. - the caller must be the current manager for `account`.
  4142. - `interfaceHash` must not be an {IERC165} interface id (i.e. it must not
  4143. end in 28 zeroes).
  4144. - `implementer` must implement {IERC1820Implementer} and return true when
  4145. queried for support, unless `implementer` is the caller. See
  4146. {IERC1820Implementer-canImplementInterfaceForAddress}.
  4147. [.contract-item]
  4148. [[IERC1820Registry-getInterfaceImplementer-address-bytes32-]]
  4149. ==== `[.contract-item-name]#++getInterfaceImplementer++#++(address account, bytes32 _interfaceHash) → address++` [.item-kind]#external#
  4150. Returns the implementer of `interfaceHash` for `account`. If no such
  4151. implementer is registered, returns the zero address.
  4152. If `interfaceHash` is an {IERC165} interface id (i.e. it ends with 28
  4153. zeroes), `account` will be queried for support of it.
  4154. `account` being the zero address is an alias for the caller's address.
  4155. [.contract-item]
  4156. [[IERC1820Registry-interfaceHash-string-]]
  4157. ==== `[.contract-item-name]#++interfaceHash++#++(string interfaceName) → bytes32++` [.item-kind]#external#
  4158. Returns the interface hash for an `interfaceName`, as defined in the
  4159. corresponding
  4160. https://eips.ethereum.org/EIPS/eip-1820#interface-name[section of the EIP].
  4161. [.contract-item]
  4162. [[IERC1820Registry-updateERC165Cache-address-bytes4-]]
  4163. ==== `[.contract-item-name]#++updateERC165Cache++#++(address account, bytes4 interfaceId)++` [.item-kind]#external#
  4164. [.contract-item]
  4165. [[IERC1820Registry-implementsERC165Interface-address-bytes4-]]
  4166. ==== `[.contract-item-name]#++implementsERC165Interface++#++(address account, bytes4 interfaceId) → bool++` [.item-kind]#external#
  4167. [.contract-item]
  4168. [[IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-]]
  4169. ==== `[.contract-item-name]#++implementsERC165InterfaceNoCache++#++(address account, bytes4 interfaceId) → bool++` [.item-kind]#external#
  4170. [.contract-item]
  4171. [[IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-]]
  4172. ==== `[.contract-item-name]#++InterfaceImplementerSet++#++(address account, bytes32 interfaceHash, address implementer)++` [.item-kind]#event#
  4173. [.contract-item]
  4174. [[IERC1820Registry-ManagerChanged-address-address-]]
  4175. ==== `[.contract-item-name]#++ManagerChanged++#++(address account, address newManager)++` [.item-kind]#event#
  4176. :IERC1820Implementer: pass:normal[xref:#IERC1820Implementer[`++IERC1820Implementer++`]]
  4177. :canImplementInterfaceForAddress: pass:normal[xref:#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`++canImplementInterfaceForAddress++`]]
  4178. [.contract]
  4179. [[IERC1820Implementer]]
  4180. === `++IERC1820Implementer++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/introspection/IERC1820Implementer.sol[{github-icon},role=heading-link]
  4181. [.hljs-theme-light.nopadding]
  4182. ```solidity
  4183. import "@openzeppelin/contracts/utils/introspection/IERC1820Implementer.sol";
  4184. ```
  4185. Interface for an ERC1820 implementer, as defined in the
  4186. https://eips.ethereum.org/EIPS/eip-1820#interface-implementation-erc1820implementerinterface[EIP].
  4187. Used by contracts that will be registered as implementers in the
  4188. {IERC1820Registry}.
  4189. [.contract-index]
  4190. .Functions
  4191. --
  4192. * {xref-IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-}[`++canImplementInterfaceForAddress(interfaceHash, account)++`]
  4193. --
  4194. [.contract-item]
  4195. [[IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-]]
  4196. ==== `[.contract-item-name]#++canImplementInterfaceForAddress++#++(bytes32 interfaceHash, address account) → bytes32++` [.item-kind]#external#
  4197. Returns a special value (`ERC1820_ACCEPT_MAGIC`) if this contract
  4198. implements `interfaceHash` for `account`.
  4199. See {IERC1820Registry-setInterfaceImplementer}.
  4200. :ERC1820Implementer: pass:normal[xref:#ERC1820Implementer[`++ERC1820Implementer++`]]
  4201. :canImplementInterfaceForAddress: pass:normal[xref:#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`++canImplementInterfaceForAddress++`]]
  4202. :_registerInterfaceForAddress: pass:normal[xref:#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-[`++_registerInterfaceForAddress++`]]
  4203. [.contract]
  4204. [[ERC1820Implementer]]
  4205. === `++ERC1820Implementer++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/introspection/ERC1820Implementer.sol[{github-icon},role=heading-link]
  4206. [.hljs-theme-light.nopadding]
  4207. ```solidity
  4208. import "@openzeppelin/contracts/utils/introspection/ERC1820Implementer.sol";
  4209. ```
  4210. Implementation of the {IERC1820Implementer} interface.
  4211. Contracts may inherit from this and call {_registerInterfaceForAddress} to
  4212. declare their willingness to be implementers.
  4213. {IERC1820Registry-setInterfaceImplementer} should then be called for the
  4214. registration to be complete.
  4215. [.contract-index]
  4216. .Functions
  4217. --
  4218. * {xref-ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-}[`++canImplementInterfaceForAddress(interfaceHash, account)++`]
  4219. * {xref-ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-}[`++_registerInterfaceForAddress(interfaceHash, account)++`]
  4220. [.contract-subindex-inherited]
  4221. .IERC1820Implementer
  4222. --
  4223. [.contract-item]
  4224. [[ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-]]
  4225. ==== `[.contract-item-name]#++canImplementInterfaceForAddress++#++(bytes32 interfaceHash, address account) → bytes32++` [.item-kind]#public#
  4226. See {IERC1820Implementer-canImplementInterfaceForAddress}.
  4227. [.contract-item]
  4228. [[ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-]]
  4229. ==== `[.contract-item-name]#++_registerInterfaceForAddress++#++(bytes32 interfaceHash, address account)++` [.item-kind]#internal#
  4230. Declares the contract as willing to be an implementer of
  4231. `interfaceHash` for `account`.
  4232. See {IERC1820Registry-setInterfaceImplementer} and
  4233. {IERC1820Registry-interfaceHash}.
  4234. == Data Structures
  4235. :BitMaps: pass:normal[xref:#BitMaps[`++BitMaps++`]]
  4236. :get: pass:normal[xref:#BitMaps-get-struct-BitMaps-BitMap-uint256-[`++get++`]]
  4237. :setTo: pass:normal[xref:#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-[`++setTo++`]]
  4238. :set: pass:normal[xref:#BitMaps-set-struct-BitMaps-BitMap-uint256-[`++set++`]]
  4239. :unset: pass:normal[xref:#BitMaps-unset-struct-BitMaps-BitMap-uint256-[`++unset++`]]
  4240. :BitMap: pass:normal[xref:#BitMaps-BitMap[`++BitMap++`]]
  4241. [.contract]
  4242. [[BitMaps]]
  4243. === `++BitMaps++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/structs/BitMaps.sol[{github-icon},role=heading-link]
  4244. [.hljs-theme-light.nopadding]
  4245. ```solidity
  4246. import "@openzeppelin/contracts/utils/structs/BitMaps.sol";
  4247. ```
  4248. Library for managing uint256 to bool mapping in a compact and efficient way, providing the keys are sequential.
  4249. Largelly inspired by Uniswap's https://github.com/Uniswap/merkle-distributor/blob/master/contracts/MerkleDistributor.sol[merkle-distributor].
  4250. [.contract-index]
  4251. .Functions
  4252. --
  4253. * {xref-BitMaps-get-struct-BitMaps-BitMap-uint256-}[`++get(bitmap, index)++`]
  4254. * {xref-BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-}[`++setTo(bitmap, index, value)++`]
  4255. * {xref-BitMaps-set-struct-BitMaps-BitMap-uint256-}[`++set(bitmap, index)++`]
  4256. * {xref-BitMaps-unset-struct-BitMaps-BitMap-uint256-}[`++unset(bitmap, index)++`]
  4257. --
  4258. [.contract-item]
  4259. [[BitMaps-get-struct-BitMaps-BitMap-uint256-]]
  4260. ==== `[.contract-item-name]#++get++#++(struct BitMaps.BitMap bitmap, uint256 index) → bool++` [.item-kind]#internal#
  4261. Returns whether the bit at `index` is set.
  4262. [.contract-item]
  4263. [[BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-]]
  4264. ==== `[.contract-item-name]#++setTo++#++(struct BitMaps.BitMap bitmap, uint256 index, bool value)++` [.item-kind]#internal#
  4265. Sets the bit at `index` to the boolean `value`.
  4266. [.contract-item]
  4267. [[BitMaps-set-struct-BitMaps-BitMap-uint256-]]
  4268. ==== `[.contract-item-name]#++set++#++(struct BitMaps.BitMap bitmap, uint256 index)++` [.item-kind]#internal#
  4269. Sets the bit at `index`.
  4270. [.contract-item]
  4271. [[BitMaps-unset-struct-BitMaps-BitMap-uint256-]]
  4272. ==== `[.contract-item-name]#++unset++#++(struct BitMaps.BitMap bitmap, uint256 index)++` [.item-kind]#internal#
  4273. Unsets the bit at `index`.
  4274. :EnumerableMap: pass:normal[xref:#EnumerableMap[`++EnumerableMap++`]]
  4275. :set: pass:normal[xref:#EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-[`++set++`]]
  4276. :remove: pass:normal[xref:#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`++remove++`]]
  4277. :contains: pass:normal[xref:#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`++contains++`]]
  4278. :length: pass:normal[xref:#EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-[`++length++`]]
  4279. :at: pass:normal[xref:#EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-[`++at++`]]
  4280. :tryGet: pass:normal[xref:#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`++tryGet++`]]
  4281. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`++get++`]]
  4282. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-[`++get++`]]
  4283. :set: pass:normal[xref:#EnumerableMap-set-struct-EnumerableMap-UintToUintMap-uint256-uint256-[`++set++`]]
  4284. :remove: pass:normal[xref:#EnumerableMap-remove-struct-EnumerableMap-UintToUintMap-uint256-[`++remove++`]]
  4285. :contains: pass:normal[xref:#EnumerableMap-contains-struct-EnumerableMap-UintToUintMap-uint256-[`++contains++`]]
  4286. :length: pass:normal[xref:#EnumerableMap-length-struct-EnumerableMap-UintToUintMap-[`++length++`]]
  4287. :at: pass:normal[xref:#EnumerableMap-at-struct-EnumerableMap-UintToUintMap-uint256-[`++at++`]]
  4288. :tryGet: pass:normal[xref:#EnumerableMap-tryGet-struct-EnumerableMap-UintToUintMap-uint256-[`++tryGet++`]]
  4289. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-[`++get++`]]
  4290. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-string-[`++get++`]]
  4291. :set: pass:normal[xref:#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-[`++set++`]]
  4292. :remove: pass:normal[xref:#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-[`++remove++`]]
  4293. :contains: pass:normal[xref:#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-[`++contains++`]]
  4294. :length: pass:normal[xref:#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-[`++length++`]]
  4295. :at: pass:normal[xref:#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-[`++at++`]]
  4296. :tryGet: pass:normal[xref:#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-[`++tryGet++`]]
  4297. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-[`++get++`]]
  4298. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-[`++get++`]]
  4299. :set: pass:normal[xref:#EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-[`++set++`]]
  4300. :remove: pass:normal[xref:#EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-[`++remove++`]]
  4301. :contains: pass:normal[xref:#EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-[`++contains++`]]
  4302. :length: pass:normal[xref:#EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-[`++length++`]]
  4303. :at: pass:normal[xref:#EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-[`++at++`]]
  4304. :tryGet: pass:normal[xref:#EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-[`++tryGet++`]]
  4305. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-[`++get++`]]
  4306. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-[`++get++`]]
  4307. :set: pass:normal[xref:#EnumerableMap-set-struct-EnumerableMap-Bytes32ToUintMap-bytes32-uint256-[`++set++`]]
  4308. :remove: pass:normal[xref:#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`++remove++`]]
  4309. :contains: pass:normal[xref:#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`++contains++`]]
  4310. :length: pass:normal[xref:#EnumerableMap-length-struct-EnumerableMap-Bytes32ToUintMap-[`++length++`]]
  4311. :at: pass:normal[xref:#EnumerableMap-at-struct-EnumerableMap-Bytes32ToUintMap-uint256-[`++at++`]]
  4312. :tryGet: pass:normal[xref:#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`++tryGet++`]]
  4313. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`++get++`]]
  4314. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-string-[`++get++`]]
  4315. :Bytes32ToBytes32Map: pass:normal[xref:#EnumerableMap-Bytes32ToBytes32Map[`++Bytes32ToBytes32Map++`]]
  4316. :UintToUintMap: pass:normal[xref:#EnumerableMap-UintToUintMap[`++UintToUintMap++`]]
  4317. :UintToAddressMap: pass:normal[xref:#EnumerableMap-UintToAddressMap[`++UintToAddressMap++`]]
  4318. :AddressToUintMap: pass:normal[xref:#EnumerableMap-AddressToUintMap[`++AddressToUintMap++`]]
  4319. :Bytes32ToUintMap: pass:normal[xref:#EnumerableMap-Bytes32ToUintMap[`++Bytes32ToUintMap++`]]
  4320. [.contract]
  4321. [[EnumerableMap]]
  4322. === `++EnumerableMap++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/structs/EnumerableMap.sol[{github-icon},role=heading-link]
  4323. [.hljs-theme-light.nopadding]
  4324. ```solidity
  4325. import "@openzeppelin/contracts/utils/structs/EnumerableMap.sol";
  4326. ```
  4327. Library for managing an enumerable variant of Solidity's
  4328. https://solidity.readthedocs.io/en/latest/types.html#mapping-types[`mapping`]
  4329. type.
  4330. Maps have the following properties:
  4331. - Entries are added, removed, and checked for existence in constant time
  4332. (O(1)).
  4333. - Entries are enumerated in O(n). No guarantees are made on the ordering.
  4334. ```
  4335. contract Example {
  4336. // Add the library methods
  4337. using EnumerableMap for EnumerableMap.UintToAddressMap;
  4338. // Declare a set state variable
  4339. EnumerableMap.UintToAddressMap private myMap;
  4340. }
  4341. ```
  4342. The following map types are supported:
  4343. - `uint256 -> address` (`UintToAddressMap`) since v3.0.0
  4344. - `address -> uint256` (`AddressToUintMap`) since v4.6.0
  4345. - `bytes32 -> bytes32` (`Bytes32ToBytes32`) since v4.6.0
  4346. - `uint256 -> uint256` (`UintToUintMap`) since v4.7.0
  4347. - `bytes32 -> uint256` (`Bytes32ToUintMap`) since v4.7.0
  4348. [WARNING]
  4349. ====
  4350. Trying to delete such a structure from storage will likely result in data corruption, rendering the structure
  4351. unusable.
  4352. See https://github.com/ethereum/solidity/pull/11843[ethereum/solidity#11843] for more info.
  4353. In order to clean an EnumerableMap, you can either remove all elements one by one or create a fresh instance using an
  4354. array of EnumerableMap.
  4355. ====
  4356. [.contract-index]
  4357. .Functions
  4358. --
  4359. * {xref-EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-}[`++set(map, key, value)++`]
  4360. * {xref-EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-}[`++remove(map, key)++`]
  4361. * {xref-EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-}[`++contains(map, key)++`]
  4362. * {xref-EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-}[`++length(map)++`]
  4363. * {xref-EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-}[`++at(map, index)++`]
  4364. * {xref-EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-}[`++tryGet(map, key)++`]
  4365. * {xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-}[`++get(map, key)++`]
  4366. * {xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-}[`++get(map, key, errorMessage)++`]
  4367. * {xref-EnumerableMap-set-struct-EnumerableMap-UintToUintMap-uint256-uint256-}[`++set(map, key, value)++`]
  4368. * {xref-EnumerableMap-remove-struct-EnumerableMap-UintToUintMap-uint256-}[`++remove(map, key)++`]
  4369. * {xref-EnumerableMap-contains-struct-EnumerableMap-UintToUintMap-uint256-}[`++contains(map, key)++`]
  4370. * {xref-EnumerableMap-length-struct-EnumerableMap-UintToUintMap-}[`++length(map)++`]
  4371. * {xref-EnumerableMap-at-struct-EnumerableMap-UintToUintMap-uint256-}[`++at(map, index)++`]
  4372. * {xref-EnumerableMap-tryGet-struct-EnumerableMap-UintToUintMap-uint256-}[`++tryGet(map, key)++`]
  4373. * {xref-EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-}[`++get(map, key)++`]
  4374. * {xref-EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-string-}[`++get(map, key, errorMessage)++`]
  4375. * {xref-EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-}[`++set(map, key, value)++`]
  4376. * {xref-EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-}[`++remove(map, key)++`]
  4377. * {xref-EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-}[`++contains(map, key)++`]
  4378. * {xref-EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-}[`++length(map)++`]
  4379. * {xref-EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-}[`++at(map, index)++`]
  4380. * {xref-EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-}[`++tryGet(map, key)++`]
  4381. * {xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-}[`++get(map, key)++`]
  4382. * {xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-}[`++get(map, key, errorMessage)++`]
  4383. * {xref-EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-}[`++set(map, key, value)++`]
  4384. * {xref-EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-}[`++remove(map, key)++`]
  4385. * {xref-EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-}[`++contains(map, key)++`]
  4386. * {xref-EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-}[`++length(map)++`]
  4387. * {xref-EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-}[`++at(map, index)++`]
  4388. * {xref-EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-}[`++tryGet(map, key)++`]
  4389. * {xref-EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-}[`++get(map, key)++`]
  4390. * {xref-EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-}[`++get(map, key, errorMessage)++`]
  4391. * {xref-EnumerableMap-set-struct-EnumerableMap-Bytes32ToUintMap-bytes32-uint256-}[`++set(map, key, value)++`]
  4392. * {xref-EnumerableMap-remove-struct-EnumerableMap-Bytes32ToUintMap-bytes32-}[`++remove(map, key)++`]
  4393. * {xref-EnumerableMap-contains-struct-EnumerableMap-Bytes32ToUintMap-bytes32-}[`++contains(map, key)++`]
  4394. * {xref-EnumerableMap-length-struct-EnumerableMap-Bytes32ToUintMap-}[`++length(map)++`]
  4395. * {xref-EnumerableMap-at-struct-EnumerableMap-Bytes32ToUintMap-uint256-}[`++at(map, index)++`]
  4396. * {xref-EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToUintMap-bytes32-}[`++tryGet(map, key)++`]
  4397. * {xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-}[`++get(map, key)++`]
  4398. * {xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-string-}[`++get(map, key, errorMessage)++`]
  4399. --
  4400. [.contract-item]
  4401. [[EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-]]
  4402. ==== `[.contract-item-name]#++set++#++(struct EnumerableMap.Bytes32ToBytes32Map map, bytes32 key, bytes32 value) → bool++` [.item-kind]#internal#
  4403. Adds a key-value pair to a map, or updates the value for an existing
  4404. key. O(1).
  4405. Returns true if the key was added to the map, that is if it was not
  4406. already present.
  4407. [.contract-item]
  4408. [[EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-]]
  4409. ==== `[.contract-item-name]#++remove++#++(struct EnumerableMap.Bytes32ToBytes32Map map, bytes32 key) → bool++` [.item-kind]#internal#
  4410. Removes a key-value pair from a map. O(1).
  4411. Returns true if the key was removed from the map, that is if it was present.
  4412. [.contract-item]
  4413. [[EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-]]
  4414. ==== `[.contract-item-name]#++contains++#++(struct EnumerableMap.Bytes32ToBytes32Map map, bytes32 key) → bool++` [.item-kind]#internal#
  4415. Returns true if the key is in the map. O(1).
  4416. [.contract-item]
  4417. [[EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-]]
  4418. ==== `[.contract-item-name]#++length++#++(struct EnumerableMap.Bytes32ToBytes32Map map) → uint256++` [.item-kind]#internal#
  4419. Returns the number of key-value pairs in the map. O(1).
  4420. [.contract-item]
  4421. [[EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-]]
  4422. ==== `[.contract-item-name]#++at++#++(struct EnumerableMap.Bytes32ToBytes32Map map, uint256 index) → bytes32, bytes32++` [.item-kind]#internal#
  4423. Returns the key-value pair stored at position `index` in the map. O(1).
  4424. Note that there are no guarantees on the ordering of entries inside the
  4425. array, and it may change when more entries are added or removed.
  4426. Requirements:
  4427. - `index` must be strictly less than {length}.
  4428. [.contract-item]
  4429. [[EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-]]
  4430. ==== `[.contract-item-name]#++tryGet++#++(struct EnumerableMap.Bytes32ToBytes32Map map, bytes32 key) → bool, bytes32++` [.item-kind]#internal#
  4431. Tries to returns the value associated with `key`. O(1).
  4432. Does not revert if `key` is not in the map.
  4433. [.contract-item]
  4434. [[EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-]]
  4435. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.Bytes32ToBytes32Map map, bytes32 key) → bytes32++` [.item-kind]#internal#
  4436. Returns the value associated with `key`. O(1).
  4437. Requirements:
  4438. - `key` must be in the map.
  4439. [.contract-item]
  4440. [[EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-]]
  4441. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.Bytes32ToBytes32Map map, bytes32 key, string errorMessage) → bytes32++` [.item-kind]#internal#
  4442. Same as {_get}, with a custom error message when `key` is not in the map.
  4443. CAUTION: This function is deprecated because it requires allocating memory for the error
  4444. message unnecessarily. For custom revert reasons use {_tryGet}.
  4445. [.contract-item]
  4446. [[EnumerableMap-set-struct-EnumerableMap-UintToUintMap-uint256-uint256-]]
  4447. ==== `[.contract-item-name]#++set++#++(struct EnumerableMap.UintToUintMap map, uint256 key, uint256 value) → bool++` [.item-kind]#internal#
  4448. Adds a key-value pair to a map, or updates the value for an existing
  4449. key. O(1).
  4450. Returns true if the key was added to the map, that is if it was not
  4451. already present.
  4452. [.contract-item]
  4453. [[EnumerableMap-remove-struct-EnumerableMap-UintToUintMap-uint256-]]
  4454. ==== `[.contract-item-name]#++remove++#++(struct EnumerableMap.UintToUintMap map, uint256 key) → bool++` [.item-kind]#internal#
  4455. Removes a value from a set. O(1).
  4456. Returns true if the key was removed from the map, that is if it was present.
  4457. [.contract-item]
  4458. [[EnumerableMap-contains-struct-EnumerableMap-UintToUintMap-uint256-]]
  4459. ==== `[.contract-item-name]#++contains++#++(struct EnumerableMap.UintToUintMap map, uint256 key) → bool++` [.item-kind]#internal#
  4460. Returns true if the key is in the map. O(1).
  4461. [.contract-item]
  4462. [[EnumerableMap-length-struct-EnumerableMap-UintToUintMap-]]
  4463. ==== `[.contract-item-name]#++length++#++(struct EnumerableMap.UintToUintMap map) → uint256++` [.item-kind]#internal#
  4464. Returns the number of elements in the map. O(1).
  4465. [.contract-item]
  4466. [[EnumerableMap-at-struct-EnumerableMap-UintToUintMap-uint256-]]
  4467. ==== `[.contract-item-name]#++at++#++(struct EnumerableMap.UintToUintMap map, uint256 index) → uint256, uint256++` [.item-kind]#internal#
  4468. Returns the element stored at position `index` in the set. O(1).
  4469. Note that there are no guarantees on the ordering of values inside the
  4470. array, and it may change when more values are added or removed.
  4471. Requirements:
  4472. - `index` must be strictly less than {length}.
  4473. [.contract-item]
  4474. [[EnumerableMap-tryGet-struct-EnumerableMap-UintToUintMap-uint256-]]
  4475. ==== `[.contract-item-name]#++tryGet++#++(struct EnumerableMap.UintToUintMap map, uint256 key) → bool, uint256++` [.item-kind]#internal#
  4476. Tries to returns the value associated with `key`. O(1).
  4477. Does not revert if `key` is not in the map.
  4478. [.contract-item]
  4479. [[EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-]]
  4480. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.UintToUintMap map, uint256 key) → uint256++` [.item-kind]#internal#
  4481. Returns the value associated with `key`. O(1).
  4482. Requirements:
  4483. - `key` must be in the map.
  4484. [.contract-item]
  4485. [[EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-string-]]
  4486. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.UintToUintMap map, uint256 key, string errorMessage) → uint256++` [.item-kind]#internal#
  4487. Same as {get}, with a custom error message when `key` is not in the map.
  4488. CAUTION: This function is deprecated because it requires allocating memory for the error
  4489. message unnecessarily. For custom revert reasons use {tryGet}.
  4490. [.contract-item]
  4491. [[EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-]]
  4492. ==== `[.contract-item-name]#++set++#++(struct EnumerableMap.UintToAddressMap map, uint256 key, address value) → bool++` [.item-kind]#internal#
  4493. Adds a key-value pair to a map, or updates the value for an existing
  4494. key. O(1).
  4495. Returns true if the key was added to the map, that is if it was not
  4496. already present.
  4497. [.contract-item]
  4498. [[EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-]]
  4499. ==== `[.contract-item-name]#++remove++#++(struct EnumerableMap.UintToAddressMap map, uint256 key) → bool++` [.item-kind]#internal#
  4500. Removes a value from a set. O(1).
  4501. Returns true if the key was removed from the map, that is if it was present.
  4502. [.contract-item]
  4503. [[EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-]]
  4504. ==== `[.contract-item-name]#++contains++#++(struct EnumerableMap.UintToAddressMap map, uint256 key) → bool++` [.item-kind]#internal#
  4505. Returns true if the key is in the map. O(1).
  4506. [.contract-item]
  4507. [[EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-]]
  4508. ==== `[.contract-item-name]#++length++#++(struct EnumerableMap.UintToAddressMap map) → uint256++` [.item-kind]#internal#
  4509. Returns the number of elements in the map. O(1).
  4510. [.contract-item]
  4511. [[EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-]]
  4512. ==== `[.contract-item-name]#++at++#++(struct EnumerableMap.UintToAddressMap map, uint256 index) → uint256, address++` [.item-kind]#internal#
  4513. Returns the element stored at position `index` in the set. O(1).
  4514. Note that there are no guarantees on the ordering of values inside the
  4515. array, and it may change when more values are added or removed.
  4516. Requirements:
  4517. - `index` must be strictly less than {length}.
  4518. [.contract-item]
  4519. [[EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-]]
  4520. ==== `[.contract-item-name]#++tryGet++#++(struct EnumerableMap.UintToAddressMap map, uint256 key) → bool, address++` [.item-kind]#internal#
  4521. Tries to returns the value associated with `key`. O(1).
  4522. Does not revert if `key` is not in the map.
  4523. _Available since v3.4._
  4524. [.contract-item]
  4525. [[EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-]]
  4526. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.UintToAddressMap map, uint256 key) → address++` [.item-kind]#internal#
  4527. Returns the value associated with `key`. O(1).
  4528. Requirements:
  4529. - `key` must be in the map.
  4530. [.contract-item]
  4531. [[EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-]]
  4532. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.UintToAddressMap map, uint256 key, string errorMessage) → address++` [.item-kind]#internal#
  4533. Same as {get}, with a custom error message when `key` is not in the map.
  4534. CAUTION: This function is deprecated because it requires allocating memory for the error
  4535. message unnecessarily. For custom revert reasons use {tryGet}.
  4536. [.contract-item]
  4537. [[EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-]]
  4538. ==== `[.contract-item-name]#++set++#++(struct EnumerableMap.AddressToUintMap map, address key, uint256 value) → bool++` [.item-kind]#internal#
  4539. Adds a key-value pair to a map, or updates the value for an existing
  4540. key. O(1).
  4541. Returns true if the key was added to the map, that is if it was not
  4542. already present.
  4543. [.contract-item]
  4544. [[EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-]]
  4545. ==== `[.contract-item-name]#++remove++#++(struct EnumerableMap.AddressToUintMap map, address key) → bool++` [.item-kind]#internal#
  4546. Removes a value from a set. O(1).
  4547. Returns true if the key was removed from the map, that is if it was present.
  4548. [.contract-item]
  4549. [[EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-]]
  4550. ==== `[.contract-item-name]#++contains++#++(struct EnumerableMap.AddressToUintMap map, address key) → bool++` [.item-kind]#internal#
  4551. Returns true if the key is in the map. O(1).
  4552. [.contract-item]
  4553. [[EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-]]
  4554. ==== `[.contract-item-name]#++length++#++(struct EnumerableMap.AddressToUintMap map) → uint256++` [.item-kind]#internal#
  4555. Returns the number of elements in the map. O(1).
  4556. [.contract-item]
  4557. [[EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-]]
  4558. ==== `[.contract-item-name]#++at++#++(struct EnumerableMap.AddressToUintMap map, uint256 index) → address, uint256++` [.item-kind]#internal#
  4559. Returns the element stored at position `index` in the set. O(1).
  4560. Note that there are no guarantees on the ordering of values inside the
  4561. array, and it may change when more values are added or removed.
  4562. Requirements:
  4563. - `index` must be strictly less than {length}.
  4564. [.contract-item]
  4565. [[EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-]]
  4566. ==== `[.contract-item-name]#++tryGet++#++(struct EnumerableMap.AddressToUintMap map, address key) → bool, uint256++` [.item-kind]#internal#
  4567. Tries to returns the value associated with `key`. O(1).
  4568. Does not revert if `key` is not in the map.
  4569. [.contract-item]
  4570. [[EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-]]
  4571. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.AddressToUintMap map, address key) → uint256++` [.item-kind]#internal#
  4572. Returns the value associated with `key`. O(1).
  4573. Requirements:
  4574. - `key` must be in the map.
  4575. [.contract-item]
  4576. [[EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-]]
  4577. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.AddressToUintMap map, address key, string errorMessage) → uint256++` [.item-kind]#internal#
  4578. Same as {get}, with a custom error message when `key` is not in the map.
  4579. CAUTION: This function is deprecated because it requires allocating memory for the error
  4580. message unnecessarily. For custom revert reasons use {tryGet}.
  4581. [.contract-item]
  4582. [[EnumerableMap-set-struct-EnumerableMap-Bytes32ToUintMap-bytes32-uint256-]]
  4583. ==== `[.contract-item-name]#++set++#++(struct EnumerableMap.Bytes32ToUintMap map, bytes32 key, uint256 value) → bool++` [.item-kind]#internal#
  4584. Adds a key-value pair to a map, or updates the value for an existing
  4585. key. O(1).
  4586. Returns true if the key was added to the map, that is if it was not
  4587. already present.
  4588. [.contract-item]
  4589. [[EnumerableMap-remove-struct-EnumerableMap-Bytes32ToUintMap-bytes32-]]
  4590. ==== `[.contract-item-name]#++remove++#++(struct EnumerableMap.Bytes32ToUintMap map, bytes32 key) → bool++` [.item-kind]#internal#
  4591. Removes a value from a set. O(1).
  4592. Returns true if the key was removed from the map, that is if it was present.
  4593. [.contract-item]
  4594. [[EnumerableMap-contains-struct-EnumerableMap-Bytes32ToUintMap-bytes32-]]
  4595. ==== `[.contract-item-name]#++contains++#++(struct EnumerableMap.Bytes32ToUintMap map, bytes32 key) → bool++` [.item-kind]#internal#
  4596. Returns true if the key is in the map. O(1).
  4597. [.contract-item]
  4598. [[EnumerableMap-length-struct-EnumerableMap-Bytes32ToUintMap-]]
  4599. ==== `[.contract-item-name]#++length++#++(struct EnumerableMap.Bytes32ToUintMap map) → uint256++` [.item-kind]#internal#
  4600. Returns the number of elements in the map. O(1).
  4601. [.contract-item]
  4602. [[EnumerableMap-at-struct-EnumerableMap-Bytes32ToUintMap-uint256-]]
  4603. ==== `[.contract-item-name]#++at++#++(struct EnumerableMap.Bytes32ToUintMap map, uint256 index) → bytes32, uint256++` [.item-kind]#internal#
  4604. Returns the element stored at position `index` in the set. O(1).
  4605. Note that there are no guarantees on the ordering of values inside the
  4606. array, and it may change when more values are added or removed.
  4607. Requirements:
  4608. - `index` must be strictly less than {length}.
  4609. [.contract-item]
  4610. [[EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToUintMap-bytes32-]]
  4611. ==== `[.contract-item-name]#++tryGet++#++(struct EnumerableMap.Bytes32ToUintMap map, bytes32 key) → bool, uint256++` [.item-kind]#internal#
  4612. Tries to returns the value associated with `key`. O(1).
  4613. Does not revert if `key` is not in the map.
  4614. [.contract-item]
  4615. [[EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-]]
  4616. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.Bytes32ToUintMap map, bytes32 key) → uint256++` [.item-kind]#internal#
  4617. Returns the value associated with `key`. O(1).
  4618. Requirements:
  4619. - `key` must be in the map.
  4620. [.contract-item]
  4621. [[EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-string-]]
  4622. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.Bytes32ToUintMap map, bytes32 key, string errorMessage) → uint256++` [.item-kind]#internal#
  4623. Same as {get}, with a custom error message when `key` is not in the map.
  4624. CAUTION: This function is deprecated because it requires allocating memory for the error
  4625. message unnecessarily. For custom revert reasons use {tryGet}.
  4626. :EnumerableSet: pass:normal[xref:#EnumerableSet[`++EnumerableSet++`]]
  4627. :add: pass:normal[xref:#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-[`++add++`]]
  4628. :remove: pass:normal[xref:#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-[`++remove++`]]
  4629. :contains: pass:normal[xref:#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-[`++contains++`]]
  4630. :length: pass:normal[xref:#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-[`++length++`]]
  4631. :at: pass:normal[xref:#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-[`++at++`]]
  4632. :values: pass:normal[xref:#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-[`++values++`]]
  4633. :add: pass:normal[xref:#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-[`++add++`]]
  4634. :remove: pass:normal[xref:#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-[`++remove++`]]
  4635. :contains: pass:normal[xref:#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-[`++contains++`]]
  4636. :length: pass:normal[xref:#EnumerableSet-length-struct-EnumerableSet-AddressSet-[`++length++`]]
  4637. :at: pass:normal[xref:#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-[`++at++`]]
  4638. :values: pass:normal[xref:#EnumerableSet-values-struct-EnumerableSet-AddressSet-[`++values++`]]
  4639. :add: pass:normal[xref:#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-[`++add++`]]
  4640. :remove: pass:normal[xref:#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-[`++remove++`]]
  4641. :contains: pass:normal[xref:#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-[`++contains++`]]
  4642. :length: pass:normal[xref:#EnumerableSet-length-struct-EnumerableSet-UintSet-[`++length++`]]
  4643. :at: pass:normal[xref:#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-[`++at++`]]
  4644. :values: pass:normal[xref:#EnumerableSet-values-struct-EnumerableSet-UintSet-[`++values++`]]
  4645. :Set: pass:normal[xref:#EnumerableSet-Set[`++Set++`]]
  4646. :Bytes32Set: pass:normal[xref:#EnumerableSet-Bytes32Set[`++Bytes32Set++`]]
  4647. :AddressSet: pass:normal[xref:#EnumerableSet-AddressSet[`++AddressSet++`]]
  4648. :UintSet: pass:normal[xref:#EnumerableSet-UintSet[`++UintSet++`]]
  4649. [.contract]
  4650. [[EnumerableSet]]
  4651. === `++EnumerableSet++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/structs/EnumerableSet.sol[{github-icon},role=heading-link]
  4652. [.hljs-theme-light.nopadding]
  4653. ```solidity
  4654. import "@openzeppelin/contracts/utils/structs/EnumerableSet.sol";
  4655. ```
  4656. Library for managing
  4657. https://en.wikipedia.org/wiki/Set_(abstract_data_type)[sets] of primitive
  4658. types.
  4659. Sets have the following properties:
  4660. - Elements are added, removed, and checked for existence in constant time
  4661. (O(1)).
  4662. - Elements are enumerated in O(n). No guarantees are made on the ordering.
  4663. ```
  4664. contract Example {
  4665. // Add the library methods
  4666. using EnumerableSet for EnumerableSet.AddressSet;
  4667. // Declare a set state variable
  4668. EnumerableSet.AddressSet private mySet;
  4669. }
  4670. ```
  4671. As of v3.3.0, sets of type `bytes32` (`Bytes32Set`), `address` (`AddressSet`)
  4672. and `uint256` (`UintSet`) are supported.
  4673. [WARNING]
  4674. ====
  4675. Trying to delete such a structure from storage will likely result in data corruption, rendering the structure
  4676. unusable.
  4677. See https://github.com/ethereum/solidity/pull/11843[ethereum/solidity#11843] for more info.
  4678. In order to clean an EnumerableSet, you can either remove all elements one by one or create a fresh instance using an
  4679. array of EnumerableSet.
  4680. ====
  4681. [.contract-index]
  4682. .Functions
  4683. --
  4684. * {xref-EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-}[`++add(set, value)++`]
  4685. * {xref-EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-}[`++remove(set, value)++`]
  4686. * {xref-EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-}[`++contains(set, value)++`]
  4687. * {xref-EnumerableSet-length-struct-EnumerableSet-Bytes32Set-}[`++length(set)++`]
  4688. * {xref-EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-}[`++at(set, index)++`]
  4689. * {xref-EnumerableSet-values-struct-EnumerableSet-Bytes32Set-}[`++values(set)++`]
  4690. * {xref-EnumerableSet-add-struct-EnumerableSet-AddressSet-address-}[`++add(set, value)++`]
  4691. * {xref-EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-}[`++remove(set, value)++`]
  4692. * {xref-EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-}[`++contains(set, value)++`]
  4693. * {xref-EnumerableSet-length-struct-EnumerableSet-AddressSet-}[`++length(set)++`]
  4694. * {xref-EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-}[`++at(set, index)++`]
  4695. * {xref-EnumerableSet-values-struct-EnumerableSet-AddressSet-}[`++values(set)++`]
  4696. * {xref-EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-}[`++add(set, value)++`]
  4697. * {xref-EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-}[`++remove(set, value)++`]
  4698. * {xref-EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-}[`++contains(set, value)++`]
  4699. * {xref-EnumerableSet-length-struct-EnumerableSet-UintSet-}[`++length(set)++`]
  4700. * {xref-EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-}[`++at(set, index)++`]
  4701. * {xref-EnumerableSet-values-struct-EnumerableSet-UintSet-}[`++values(set)++`]
  4702. --
  4703. [.contract-item]
  4704. [[EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-]]
  4705. ==== `[.contract-item-name]#++add++#++(struct EnumerableSet.Bytes32Set set, bytes32 value) → bool++` [.item-kind]#internal#
  4706. Add a value to a set. O(1).
  4707. Returns true if the value was added to the set, that is if it was not
  4708. already present.
  4709. [.contract-item]
  4710. [[EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-]]
  4711. ==== `[.contract-item-name]#++remove++#++(struct EnumerableSet.Bytes32Set set, bytes32 value) → bool++` [.item-kind]#internal#
  4712. Removes a value from a set. O(1).
  4713. Returns true if the value was removed from the set, that is if it was
  4714. present.
  4715. [.contract-item]
  4716. [[EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-]]
  4717. ==== `[.contract-item-name]#++contains++#++(struct EnumerableSet.Bytes32Set set, bytes32 value) → bool++` [.item-kind]#internal#
  4718. Returns true if the value is in the set. O(1).
  4719. [.contract-item]
  4720. [[EnumerableSet-length-struct-EnumerableSet-Bytes32Set-]]
  4721. ==== `[.contract-item-name]#++length++#++(struct EnumerableSet.Bytes32Set set) → uint256++` [.item-kind]#internal#
  4722. Returns the number of values in the set. O(1).
  4723. [.contract-item]
  4724. [[EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-]]
  4725. ==== `[.contract-item-name]#++at++#++(struct EnumerableSet.Bytes32Set set, uint256 index) → bytes32++` [.item-kind]#internal#
  4726. Returns the value stored at position `index` in the set. O(1).
  4727. Note that there are no guarantees on the ordering of values inside the
  4728. array, and it may change when more values are added or removed.
  4729. Requirements:
  4730. - `index` must be strictly less than {length}.
  4731. [.contract-item]
  4732. [[EnumerableSet-values-struct-EnumerableSet-Bytes32Set-]]
  4733. ==== `[.contract-item-name]#++values++#++(struct EnumerableSet.Bytes32Set set) → bytes32[]++` [.item-kind]#internal#
  4734. Return the entire set in an array
  4735. WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
  4736. to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
  4737. this function has an unbounded cost, and using it as part of a state-changing function may render the function
  4738. uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
  4739. [.contract-item]
  4740. [[EnumerableSet-add-struct-EnumerableSet-AddressSet-address-]]
  4741. ==== `[.contract-item-name]#++add++#++(struct EnumerableSet.AddressSet set, address value) → bool++` [.item-kind]#internal#
  4742. Add a value to a set. O(1).
  4743. Returns true if the value was added to the set, that is if it was not
  4744. already present.
  4745. [.contract-item]
  4746. [[EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-]]
  4747. ==== `[.contract-item-name]#++remove++#++(struct EnumerableSet.AddressSet set, address value) → bool++` [.item-kind]#internal#
  4748. Removes a value from a set. O(1).
  4749. Returns true if the value was removed from the set, that is if it was
  4750. present.
  4751. [.contract-item]
  4752. [[EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-]]
  4753. ==== `[.contract-item-name]#++contains++#++(struct EnumerableSet.AddressSet set, address value) → bool++` [.item-kind]#internal#
  4754. Returns true if the value is in the set. O(1).
  4755. [.contract-item]
  4756. [[EnumerableSet-length-struct-EnumerableSet-AddressSet-]]
  4757. ==== `[.contract-item-name]#++length++#++(struct EnumerableSet.AddressSet set) → uint256++` [.item-kind]#internal#
  4758. Returns the number of values in the set. O(1).
  4759. [.contract-item]
  4760. [[EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-]]
  4761. ==== `[.contract-item-name]#++at++#++(struct EnumerableSet.AddressSet set, uint256 index) → address++` [.item-kind]#internal#
  4762. Returns the value stored at position `index` in the set. O(1).
  4763. Note that there are no guarantees on the ordering of values inside the
  4764. array, and it may change when more values are added or removed.
  4765. Requirements:
  4766. - `index` must be strictly less than {length}.
  4767. [.contract-item]
  4768. [[EnumerableSet-values-struct-EnumerableSet-AddressSet-]]
  4769. ==== `[.contract-item-name]#++values++#++(struct EnumerableSet.AddressSet set) → address[]++` [.item-kind]#internal#
  4770. Return the entire set in an array
  4771. WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
  4772. to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
  4773. this function has an unbounded cost, and using it as part of a state-changing function may render the function
  4774. uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
  4775. [.contract-item]
  4776. [[EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-]]
  4777. ==== `[.contract-item-name]#++add++#++(struct EnumerableSet.UintSet set, uint256 value) → bool++` [.item-kind]#internal#
  4778. Add a value to a set. O(1).
  4779. Returns true if the value was added to the set, that is if it was not
  4780. already present.
  4781. [.contract-item]
  4782. [[EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-]]
  4783. ==== `[.contract-item-name]#++remove++#++(struct EnumerableSet.UintSet set, uint256 value) → bool++` [.item-kind]#internal#
  4784. Removes a value from a set. O(1).
  4785. Returns true if the value was removed from the set, that is if it was
  4786. present.
  4787. [.contract-item]
  4788. [[EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-]]
  4789. ==== `[.contract-item-name]#++contains++#++(struct EnumerableSet.UintSet set, uint256 value) → bool++` [.item-kind]#internal#
  4790. Returns true if the value is in the set. O(1).
  4791. [.contract-item]
  4792. [[EnumerableSet-length-struct-EnumerableSet-UintSet-]]
  4793. ==== `[.contract-item-name]#++length++#++(struct EnumerableSet.UintSet set) → uint256++` [.item-kind]#internal#
  4794. Returns the number of values on the set. O(1).
  4795. [.contract-item]
  4796. [[EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-]]
  4797. ==== `[.contract-item-name]#++at++#++(struct EnumerableSet.UintSet set, uint256 index) → uint256++` [.item-kind]#internal#
  4798. Returns the value stored at position `index` in the set. O(1).
  4799. Note that there are no guarantees on the ordering of values inside the
  4800. array, and it may change when more values are added or removed.
  4801. Requirements:
  4802. - `index` must be strictly less than {length}.
  4803. [.contract-item]
  4804. [[EnumerableSet-values-struct-EnumerableSet-UintSet-]]
  4805. ==== `[.contract-item-name]#++values++#++(struct EnumerableSet.UintSet set) → uint256[]++` [.item-kind]#internal#
  4806. Return the entire set in an array
  4807. WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
  4808. to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
  4809. this function has an unbounded cost, and using it as part of a state-changing function may render the function
  4810. uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
  4811. :DoubleEndedQueue: pass:normal[xref:#DoubleEndedQueue[`++DoubleEndedQueue++`]]
  4812. :pushBack: pass:normal[xref:#DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-[`++pushBack++`]]
  4813. :popBack: pass:normal[xref:#DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-[`++popBack++`]]
  4814. :pushFront: pass:normal[xref:#DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-[`++pushFront++`]]
  4815. :popFront: pass:normal[xref:#DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-[`++popFront++`]]
  4816. :front: pass:normal[xref:#DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-[`++front++`]]
  4817. :back: pass:normal[xref:#DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-[`++back++`]]
  4818. :at: pass:normal[xref:#DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-[`++at++`]]
  4819. :clear: pass:normal[xref:#DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-[`++clear++`]]
  4820. :length: pass:normal[xref:#DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-[`++length++`]]
  4821. :empty: pass:normal[xref:#DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-[`++empty++`]]
  4822. :Bytes32Deque: pass:normal[xref:#DoubleEndedQueue-Bytes32Deque[`++Bytes32Deque++`]]
  4823. [.contract]
  4824. [[DoubleEndedQueue]]
  4825. === `++DoubleEndedQueue++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/structs/DoubleEndedQueue.sol[{github-icon},role=heading-link]
  4826. [.hljs-theme-light.nopadding]
  4827. ```solidity
  4828. import "@openzeppelin/contracts/utils/structs/DoubleEndedQueue.sol";
  4829. ```
  4830. A sequence of items with the ability to efficiently push and pop items (i.e. insert and remove) on both ends of
  4831. the sequence (called front and back). Among other access patterns, it can be used to implement efficient LIFO and
  4832. FIFO queues. Storage use is optimized, and all operations are O(1) constant time. This includes {clear}, given that
  4833. the existing queue contents are left in storage.
  4834. The struct is called `Bytes32Deque`. Other types can be cast to and from `bytes32`. This data structure can only be
  4835. used in storage, and not in memory.
  4836. ```
  4837. DoubleEndedQueue.Bytes32Deque queue;
  4838. ```
  4839. _Available since v4.6._
  4840. [.contract-index]
  4841. .Functions
  4842. --
  4843. * {xref-DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-}[`++pushBack(deque, value)++`]
  4844. * {xref-DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-}[`++popBack(deque)++`]
  4845. * {xref-DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-}[`++pushFront(deque, value)++`]
  4846. * {xref-DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-}[`++popFront(deque)++`]
  4847. * {xref-DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-}[`++front(deque)++`]
  4848. * {xref-DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-}[`++back(deque)++`]
  4849. * {xref-DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-}[`++at(deque, index)++`]
  4850. * {xref-DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-}[`++clear(deque)++`]
  4851. * {xref-DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-}[`++length(deque)++`]
  4852. * {xref-DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-}[`++empty(deque)++`]
  4853. --
  4854. [.contract-item]
  4855. [[DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-]]
  4856. ==== `[.contract-item-name]#++pushBack++#++(struct DoubleEndedQueue.Bytes32Deque deque, bytes32 value)++` [.item-kind]#internal#
  4857. Inserts an item at the end of the queue.
  4858. [.contract-item]
  4859. [[DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-]]
  4860. ==== `[.contract-item-name]#++popBack++#++(struct DoubleEndedQueue.Bytes32Deque deque) → bytes32 value++` [.item-kind]#internal#
  4861. Removes the item at the end of the queue and returns it.
  4862. Reverts with `Empty` if the queue is empty.
  4863. [.contract-item]
  4864. [[DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-]]
  4865. ==== `[.contract-item-name]#++pushFront++#++(struct DoubleEndedQueue.Bytes32Deque deque, bytes32 value)++` [.item-kind]#internal#
  4866. Inserts an item at the beginning of the queue.
  4867. [.contract-item]
  4868. [[DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-]]
  4869. ==== `[.contract-item-name]#++popFront++#++(struct DoubleEndedQueue.Bytes32Deque deque) → bytes32 value++` [.item-kind]#internal#
  4870. Removes the item at the beginning of the queue and returns it.
  4871. Reverts with `Empty` if the queue is empty.
  4872. [.contract-item]
  4873. [[DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-]]
  4874. ==== `[.contract-item-name]#++front++#++(struct DoubleEndedQueue.Bytes32Deque deque) → bytes32 value++` [.item-kind]#internal#
  4875. Returns the item at the beginning of the queue.
  4876. Reverts with `Empty` if the queue is empty.
  4877. [.contract-item]
  4878. [[DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-]]
  4879. ==== `[.contract-item-name]#++back++#++(struct DoubleEndedQueue.Bytes32Deque deque) → bytes32 value++` [.item-kind]#internal#
  4880. Returns the item at the end of the queue.
  4881. Reverts with `Empty` if the queue is empty.
  4882. [.contract-item]
  4883. [[DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-]]
  4884. ==== `[.contract-item-name]#++at++#++(struct DoubleEndedQueue.Bytes32Deque deque, uint256 index) → bytes32 value++` [.item-kind]#internal#
  4885. Return the item at a position in the queue given by `index`, with the first item at 0 and last item at
  4886. `length(deque) - 1`.
  4887. Reverts with `OutOfBounds` if the index is out of bounds.
  4888. [.contract-item]
  4889. [[DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-]]
  4890. ==== `[.contract-item-name]#++clear++#++(struct DoubleEndedQueue.Bytes32Deque deque)++` [.item-kind]#internal#
  4891. Resets the queue back to being empty.
  4892. NOTE: The current items are left behind in storage. This does not affect the functioning of the queue, but misses
  4893. out on potential gas refunds.
  4894. [.contract-item]
  4895. [[DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-]]
  4896. ==== `[.contract-item-name]#++length++#++(struct DoubleEndedQueue.Bytes32Deque deque) → uint256++` [.item-kind]#internal#
  4897. Returns the number of items in the queue.
  4898. [.contract-item]
  4899. [[DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-]]
  4900. ==== `[.contract-item-name]#++empty++#++(struct DoubleEndedQueue.Bytes32Deque deque) → bool++` [.item-kind]#internal#
  4901. Returns true if the queue is empty.
  4902. :Checkpoints: pass:normal[xref:#Checkpoints[`++Checkpoints++`]]
  4903. :latest: pass:normal[xref:#Checkpoints-latest-struct-Checkpoints-History-[`++latest++`]]
  4904. :getAtBlock: pass:normal[xref:#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-[`++getAtBlock++`]]
  4905. :push: pass:normal[xref:#Checkpoints-push-struct-Checkpoints-History-uint256-[`++push++`]]
  4906. :push: pass:normal[xref:#Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-[`++push++`]]
  4907. :Checkpoint: pass:normal[xref:#Checkpoints-Checkpoint[`++Checkpoint++`]]
  4908. :History: pass:normal[xref:#Checkpoints-History[`++History++`]]
  4909. [.contract]
  4910. [[Checkpoints]]
  4911. === `++Checkpoints++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/Checkpoints.sol[{github-icon},role=heading-link]
  4912. [.hljs-theme-light.nopadding]
  4913. ```solidity
  4914. import "@openzeppelin/contracts/utils/Checkpoints.sol";
  4915. ```
  4916. This library defines the `History` struct, for checkpointing values as they change at different points in
  4917. time, and later looking up past values by block number. See {Votes} as an example.
  4918. To create a history of checkpoints define a variable type `Checkpoints.History` in your contract, and store a new
  4919. checkpoint for the current transaction block using the {push} function.
  4920. _Available since v4.5._
  4921. [.contract-index]
  4922. .Functions
  4923. --
  4924. * {xref-Checkpoints-latest-struct-Checkpoints-History-}[`++latest(self)++`]
  4925. * {xref-Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-}[`++getAtBlock(self, blockNumber)++`]
  4926. * {xref-Checkpoints-push-struct-Checkpoints-History-uint256-}[`++push(self, value)++`]
  4927. * {xref-Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-}[`++push(self, op, delta)++`]
  4928. --
  4929. [.contract-item]
  4930. [[Checkpoints-latest-struct-Checkpoints-History-]]
  4931. ==== `[.contract-item-name]#++latest++#++(struct Checkpoints.History self) → uint256++` [.item-kind]#internal#
  4932. Returns the value in the latest checkpoint, or zero if there are no checkpoints.
  4933. [.contract-item]
  4934. [[Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-]]
  4935. ==== `[.contract-item-name]#++getAtBlock++#++(struct Checkpoints.History self, uint256 blockNumber) → uint256++` [.item-kind]#internal#
  4936. Returns the value at a given block number. If a checkpoint is not available at that block, the closest one
  4937. before it is returned, or zero otherwise.
  4938. [.contract-item]
  4939. [[Checkpoints-push-struct-Checkpoints-History-uint256-]]
  4940. ==== `[.contract-item-name]#++push++#++(struct Checkpoints.History self, uint256 value) → uint256, uint256++` [.item-kind]#internal#
  4941. Pushes a value onto a History so that it is stored as the checkpoint for the current block.
  4942. Returns previous value and new value.
  4943. [.contract-item]
  4944. [[Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-]]
  4945. ==== `[.contract-item-name]#++push++#++(struct Checkpoints.History self, function (uint256,uint256) view returns (uint256) op, uint256 delta) → uint256, uint256++` [.item-kind]#internal#
  4946. Pushes a value onto a History, by updating the latest value using binary operation `op`. The new value will
  4947. be set to `op(latest, delta)`.
  4948. Returns previous value and new value.
  4949. == Libraries
  4950. :Create2: pass:normal[xref:#Create2[`++Create2++`]]
  4951. :deploy: pass:normal[xref:#Create2-deploy-uint256-bytes32-bytes-[`++deploy++`]]
  4952. :computeAddress: pass:normal[xref:#Create2-computeAddress-bytes32-bytes32-[`++computeAddress++`]]
  4953. :computeAddress: pass:normal[xref:#Create2-computeAddress-bytes32-bytes32-address-[`++computeAddress++`]]
  4954. [.contract]
  4955. [[Create2]]
  4956. === `++Create2++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/Create2.sol[{github-icon},role=heading-link]
  4957. [.hljs-theme-light.nopadding]
  4958. ```solidity
  4959. import "@openzeppelin/contracts/utils/Create2.sol";
  4960. ```
  4961. Helper to make usage of the `CREATE2` EVM opcode easier and safer.
  4962. `CREATE2` can be used to compute in advance the address where a smart
  4963. contract will be deployed, which allows for interesting new mechanisms known
  4964. as 'counterfactual interactions'.
  4965. See the https://eips.ethereum.org/EIPS/eip-1014#motivation[EIP] for more
  4966. information.
  4967. [.contract-index]
  4968. .Functions
  4969. --
  4970. * {xref-Create2-deploy-uint256-bytes32-bytes-}[`++deploy(amount, salt, bytecode)++`]
  4971. * {xref-Create2-computeAddress-bytes32-bytes32-}[`++computeAddress(salt, bytecodeHash)++`]
  4972. * {xref-Create2-computeAddress-bytes32-bytes32-address-}[`++computeAddress(salt, bytecodeHash, deployer)++`]
  4973. --
  4974. [.contract-item]
  4975. [[Create2-deploy-uint256-bytes32-bytes-]]
  4976. ==== `[.contract-item-name]#++deploy++#++(uint256 amount, bytes32 salt, bytes bytecode) → address++` [.item-kind]#internal#
  4977. Deploys a contract using `CREATE2`. The address where the contract
  4978. will be deployed can be known in advance via {computeAddress}.
  4979. The bytecode for a contract can be obtained from Solidity with
  4980. `type(contractName).creationCode`.
  4981. Requirements:
  4982. - `bytecode` must not be empty.
  4983. - `salt` must have not been used for `bytecode` already.
  4984. - the factory must have a balance of at least `amount`.
  4985. - if `amount` is non-zero, `bytecode` must have a `payable` constructor.
  4986. [.contract-item]
  4987. [[Create2-computeAddress-bytes32-bytes32-]]
  4988. ==== `[.contract-item-name]#++computeAddress++#++(bytes32 salt, bytes32 bytecodeHash) → address++` [.item-kind]#internal#
  4989. Returns the address where a contract will be stored if deployed via {deploy}. Any change in the
  4990. `bytecodeHash` or `salt` will result in a new destination address.
  4991. [.contract-item]
  4992. [[Create2-computeAddress-bytes32-bytes32-address-]]
  4993. ==== `[.contract-item-name]#++computeAddress++#++(bytes32 salt, bytes32 bytecodeHash, address deployer) → address++` [.item-kind]#internal#
  4994. Returns the address where a contract will be stored if deployed via {deploy} from a contract located at
  4995. `deployer`. If `deployer` is this contract's address, returns the same value as {computeAddress}.
  4996. :Address: pass:normal[xref:#Address[`++Address++`]]
  4997. :isContract: pass:normal[xref:#Address-isContract-address-[`++isContract++`]]
  4998. :sendValue: pass:normal[xref:#Address-sendValue-address-payable-uint256-[`++sendValue++`]]
  4999. :functionCall: pass:normal[xref:#Address-functionCall-address-bytes-[`++functionCall++`]]
  5000. :functionCall: pass:normal[xref:#Address-functionCall-address-bytes-string-[`++functionCall++`]]
  5001. :functionCallWithValue: pass:normal[xref:#Address-functionCallWithValue-address-bytes-uint256-[`++functionCallWithValue++`]]
  5002. :functionCallWithValue: pass:normal[xref:#Address-functionCallWithValue-address-bytes-uint256-string-[`++functionCallWithValue++`]]
  5003. :functionStaticCall: pass:normal[xref:#Address-functionStaticCall-address-bytes-[`++functionStaticCall++`]]
  5004. :functionStaticCall: pass:normal[xref:#Address-functionStaticCall-address-bytes-string-[`++functionStaticCall++`]]
  5005. :functionDelegateCall: pass:normal[xref:#Address-functionDelegateCall-address-bytes-[`++functionDelegateCall++`]]
  5006. :functionDelegateCall: pass:normal[xref:#Address-functionDelegateCall-address-bytes-string-[`++functionDelegateCall++`]]
  5007. :verifyCallResult: pass:normal[xref:#Address-verifyCallResult-bool-bytes-string-[`++verifyCallResult++`]]
  5008. [.contract]
  5009. [[Address]]
  5010. === `++Address++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/Address.sol[{github-icon},role=heading-link]
  5011. [.hljs-theme-light.nopadding]
  5012. ```solidity
  5013. import "@openzeppelin/contracts/utils/Address.sol";
  5014. ```
  5015. Collection of functions related to the address type
  5016. [.contract-index]
  5017. .Functions
  5018. --
  5019. * {xref-Address-isContract-address-}[`++isContract(account)++`]
  5020. * {xref-Address-sendValue-address-payable-uint256-}[`++sendValue(recipient, amount)++`]
  5021. * {xref-Address-functionCall-address-bytes-}[`++functionCall(target, data)++`]
  5022. * {xref-Address-functionCall-address-bytes-string-}[`++functionCall(target, data, errorMessage)++`]
  5023. * {xref-Address-functionCallWithValue-address-bytes-uint256-}[`++functionCallWithValue(target, data, value)++`]
  5024. * {xref-Address-functionCallWithValue-address-bytes-uint256-string-}[`++functionCallWithValue(target, data, value, errorMessage)++`]
  5025. * {xref-Address-functionStaticCall-address-bytes-}[`++functionStaticCall(target, data)++`]
  5026. * {xref-Address-functionStaticCall-address-bytes-string-}[`++functionStaticCall(target, data, errorMessage)++`]
  5027. * {xref-Address-functionDelegateCall-address-bytes-}[`++functionDelegateCall(target, data)++`]
  5028. * {xref-Address-functionDelegateCall-address-bytes-string-}[`++functionDelegateCall(target, data, errorMessage)++`]
  5029. * {xref-Address-verifyCallResult-bool-bytes-string-}[`++verifyCallResult(success, returndata, errorMessage)++`]
  5030. --
  5031. [.contract-item]
  5032. [[Address-isContract-address-]]
  5033. ==== `[.contract-item-name]#++isContract++#++(address account) → bool++` [.item-kind]#internal#
  5034. Returns true if `account` is a contract.
  5035. [IMPORTANT]
  5036. ====
  5037. It is unsafe to assume that an address for which this function returns
  5038. false is an externally-owned account (EOA) and not a contract.
  5039. Among others, `isContract` will return false for the following
  5040. types of addresses:
  5041. - an externally-owned account
  5042. - a contract in construction
  5043. - an address where a contract will be created
  5044. - an address where a contract lived, but was destroyed
  5045. ====
  5046. [IMPORTANT]
  5047. ====
  5048. You shouldn't rely on `isContract` to protect against flash loan attacks!
  5049. Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets
  5050. like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract
  5051. constructor.
  5052. ====
  5053. [.contract-item]
  5054. [[Address-sendValue-address-payable-uint256-]]
  5055. ==== `[.contract-item-name]#++sendValue++#++(address payable recipient, uint256 amount)++` [.item-kind]#internal#
  5056. Replacement for Solidity's `transfer`: sends `amount` wei to
  5057. `recipient`, forwarding all available gas and reverting on errors.
  5058. https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
  5059. of certain opcodes, possibly making contracts go over the 2300 gas limit
  5060. imposed by `transfer`, making them unable to receive funds via
  5061. `transfer`. {sendValue} removes this limitation.
  5062. https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].
  5063. IMPORTANT: because control is transferred to `recipient`, care must be
  5064. taken to not create reentrancy vulnerabilities. Consider using
  5065. {ReentrancyGuard} or the
  5066. https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
  5067. [.contract-item]
  5068. [[Address-functionCall-address-bytes-]]
  5069. ==== `[.contract-item-name]#++functionCall++#++(address target, bytes data) → bytes++` [.item-kind]#internal#
  5070. Performs a Solidity function call using a low level `call`. A
  5071. plain `call` is an unsafe replacement for a function call: use this
  5072. function instead.
  5073. If `target` reverts with a revert reason, it is bubbled up by this
  5074. function (like regular Solidity function calls).
  5075. Returns the raw returned data. To convert to the expected return value,
  5076. use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].
  5077. Requirements:
  5078. - `target` must be a contract.
  5079. - calling `target` with `data` must not revert.
  5080. _Available since v3.1._
  5081. [.contract-item]
  5082. [[Address-functionCall-address-bytes-string-]]
  5083. ==== `[.contract-item-name]#++functionCall++#++(address target, bytes data, string errorMessage) → bytes++` [.item-kind]#internal#
  5084. Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with
  5085. `errorMessage` as a fallback revert reason when `target` reverts.
  5086. _Available since v3.1._
  5087. [.contract-item]
  5088. [[Address-functionCallWithValue-address-bytes-uint256-]]
  5089. ==== `[.contract-item-name]#++functionCallWithValue++#++(address target, bytes data, uint256 value) → bytes++` [.item-kind]#internal#
  5090. Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
  5091. but also transferring `value` wei to `target`.
  5092. Requirements:
  5093. - the calling contract must have an ETH balance of at least `value`.
  5094. - the called Solidity function must be `payable`.
  5095. _Available since v3.1._
  5096. [.contract-item]
  5097. [[Address-functionCallWithValue-address-bytes-uint256-string-]]
  5098. ==== `[.contract-item-name]#++functionCallWithValue++#++(address target, bytes data, uint256 value, string errorMessage) → bytes++` [.item-kind]#internal#
  5099. Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but
  5100. with `errorMessage` as a fallback revert reason when `target` reverts.
  5101. _Available since v3.1._
  5102. [.contract-item]
  5103. [[Address-functionStaticCall-address-bytes-]]
  5104. ==== `[.contract-item-name]#++functionStaticCall++#++(address target, bytes data) → bytes++` [.item-kind]#internal#
  5105. Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
  5106. but performing a static call.
  5107. _Available since v3.3._
  5108. [.contract-item]
  5109. [[Address-functionStaticCall-address-bytes-string-]]
  5110. ==== `[.contract-item-name]#++functionStaticCall++#++(address target, bytes data, string errorMessage) → bytes++` [.item-kind]#internal#
  5111. Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
  5112. but performing a static call.
  5113. _Available since v3.3._
  5114. [.contract-item]
  5115. [[Address-functionDelegateCall-address-bytes-]]
  5116. ==== `[.contract-item-name]#++functionDelegateCall++#++(address target, bytes data) → bytes++` [.item-kind]#internal#
  5117. Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
  5118. but performing a delegate call.
  5119. _Available since v3.4._
  5120. [.contract-item]
  5121. [[Address-functionDelegateCall-address-bytes-string-]]
  5122. ==== `[.contract-item-name]#++functionDelegateCall++#++(address target, bytes data, string errorMessage) → bytes++` [.item-kind]#internal#
  5123. Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
  5124. but performing a delegate call.
  5125. _Available since v3.4._
  5126. [.contract-item]
  5127. [[Address-verifyCallResult-bool-bytes-string-]]
  5128. ==== `[.contract-item-name]#++verifyCallResult++#++(bool success, bytes returndata, string errorMessage) → bytes++` [.item-kind]#internal#
  5129. Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the
  5130. revert reason using the provided one.
  5131. _Available since v4.3._
  5132. :Arrays: pass:normal[xref:#Arrays[`++Arrays++`]]
  5133. :findUpperBound: pass:normal[xref:#Arrays-findUpperBound-uint256---uint256-[`++findUpperBound++`]]
  5134. [.contract]
  5135. [[Arrays]]
  5136. === `++Arrays++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/Arrays.sol[{github-icon},role=heading-link]
  5137. [.hljs-theme-light.nopadding]
  5138. ```solidity
  5139. import "@openzeppelin/contracts/utils/Arrays.sol";
  5140. ```
  5141. Collection of functions related to array types.
  5142. [.contract-index]
  5143. .Functions
  5144. --
  5145. * {xref-Arrays-findUpperBound-uint256---uint256-}[`++findUpperBound(array, element)++`]
  5146. --
  5147. [.contract-item]
  5148. [[Arrays-findUpperBound-uint256---uint256-]]
  5149. ==== `[.contract-item-name]#++findUpperBound++#++(uint256[] array, uint256 element) → uint256++` [.item-kind]#internal#
  5150. Searches a sorted `array` and returns the first index that contains
  5151. a value greater or equal to `element`. If no such index exists (i.e. all
  5152. values in the array are strictly less than `element`), the array length is
  5153. returned. Time complexity O(log n).
  5154. `array` is expected to be sorted in ascending order, and to contain no
  5155. repeated elements.
  5156. :Base64: pass:normal[xref:#Base64[`++Base64++`]]
  5157. :_TABLE: pass:normal[xref:#Base64-_TABLE-string[`++_TABLE++`]]
  5158. :encode: pass:normal[xref:#Base64-encode-bytes-[`++encode++`]]
  5159. [.contract]
  5160. [[Base64]]
  5161. === `++Base64++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/Base64.sol[{github-icon},role=heading-link]
  5162. [.hljs-theme-light.nopadding]
  5163. ```solidity
  5164. import "@openzeppelin/contracts/utils/Base64.sol";
  5165. ```
  5166. Provides a set of functions to operate with Base64 strings.
  5167. _Available since v4.5._
  5168. [.contract-index]
  5169. .Functions
  5170. --
  5171. * {xref-Base64-encode-bytes-}[`++encode(data)++`]
  5172. --
  5173. [.contract-item]
  5174. [[Base64-encode-bytes-]]
  5175. ==== `[.contract-item-name]#++encode++#++(bytes data) → string++` [.item-kind]#internal#
  5176. Converts a `bytes` to its Bytes64 `string` representation.
  5177. :Counters: pass:normal[xref:#Counters[`++Counters++`]]
  5178. :current: pass:normal[xref:#Counters-current-struct-Counters-Counter-[`++current++`]]
  5179. :increment: pass:normal[xref:#Counters-increment-struct-Counters-Counter-[`++increment++`]]
  5180. :decrement: pass:normal[xref:#Counters-decrement-struct-Counters-Counter-[`++decrement++`]]
  5181. :reset: pass:normal[xref:#Counters-reset-struct-Counters-Counter-[`++reset++`]]
  5182. :Counter: pass:normal[xref:#Counters-Counter[`++Counter++`]]
  5183. [.contract]
  5184. [[Counters]]
  5185. === `++Counters++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/Counters.sol[{github-icon},role=heading-link]
  5186. [.hljs-theme-light.nopadding]
  5187. ```solidity
  5188. import "@openzeppelin/contracts/utils/Counters.sol";
  5189. ```
  5190. Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number
  5191. of elements in a mapping, issuing ERC721 ids, or counting request ids.
  5192. Include with `using Counters for Counters.Counter;`
  5193. [.contract-index]
  5194. .Functions
  5195. --
  5196. * {xref-Counters-current-struct-Counters-Counter-}[`++current(counter)++`]
  5197. * {xref-Counters-increment-struct-Counters-Counter-}[`++increment(counter)++`]
  5198. * {xref-Counters-decrement-struct-Counters-Counter-}[`++decrement(counter)++`]
  5199. * {xref-Counters-reset-struct-Counters-Counter-}[`++reset(counter)++`]
  5200. --
  5201. [.contract-item]
  5202. [[Counters-current-struct-Counters-Counter-]]
  5203. ==== `[.contract-item-name]#++current++#++(struct Counters.Counter counter) → uint256++` [.item-kind]#internal#
  5204. [.contract-item]
  5205. [[Counters-increment-struct-Counters-Counter-]]
  5206. ==== `[.contract-item-name]#++increment++#++(struct Counters.Counter counter)++` [.item-kind]#internal#
  5207. [.contract-item]
  5208. [[Counters-decrement-struct-Counters-Counter-]]
  5209. ==== `[.contract-item-name]#++decrement++#++(struct Counters.Counter counter)++` [.item-kind]#internal#
  5210. [.contract-item]
  5211. [[Counters-reset-struct-Counters-Counter-]]
  5212. ==== `[.contract-item-name]#++reset++#++(struct Counters.Counter counter)++` [.item-kind]#internal#
  5213. :Strings: pass:normal[xref:#Strings[`++Strings++`]]
  5214. :toString: pass:normal[xref:#Strings-toString-uint256-[`++toString++`]]
  5215. :toHexString: pass:normal[xref:#Strings-toHexString-uint256-[`++toHexString++`]]
  5216. :toHexString: pass:normal[xref:#Strings-toHexString-uint256-uint256-[`++toHexString++`]]
  5217. :toHexString: pass:normal[xref:#Strings-toHexString-address-[`++toHexString++`]]
  5218. [.contract]
  5219. [[Strings]]
  5220. === `++Strings++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/Strings.sol[{github-icon},role=heading-link]
  5221. [.hljs-theme-light.nopadding]
  5222. ```solidity
  5223. import "@openzeppelin/contracts/utils/Strings.sol";
  5224. ```
  5225. String operations.
  5226. [.contract-index]
  5227. .Functions
  5228. --
  5229. * {xref-Strings-toString-uint256-}[`++toString(value)++`]
  5230. * {xref-Strings-toHexString-uint256-}[`++toHexString(value)++`]
  5231. * {xref-Strings-toHexString-uint256-uint256-}[`++toHexString(value, length)++`]
  5232. * {xref-Strings-toHexString-address-}[`++toHexString(addr)++`]
  5233. --
  5234. [.contract-item]
  5235. [[Strings-toString-uint256-]]
  5236. ==== `[.contract-item-name]#++toString++#++(uint256 value) → string++` [.item-kind]#internal#
  5237. Converts a `uint256` to its ASCII `string` decimal representation.
  5238. [.contract-item]
  5239. [[Strings-toHexString-uint256-]]
  5240. ==== `[.contract-item-name]#++toHexString++#++(uint256 value) → string++` [.item-kind]#internal#
  5241. Converts a `uint256` to its ASCII `string` hexadecimal representation.
  5242. [.contract-item]
  5243. [[Strings-toHexString-uint256-uint256-]]
  5244. ==== `[.contract-item-name]#++toHexString++#++(uint256 value, uint256 length) → string++` [.item-kind]#internal#
  5245. Converts a `uint256` to its ASCII `string` hexadecimal representation with fixed length.
  5246. [.contract-item]
  5247. [[Strings-toHexString-address-]]
  5248. ==== `[.contract-item-name]#++toHexString++#++(address addr) → string++` [.item-kind]#internal#
  5249. Converts an `address` with fixed length of 20 bytes to its not checksummed ASCII `string` hexadecimal representation.
  5250. :StorageSlot: pass:normal[xref:#StorageSlot[`++StorageSlot++`]]
  5251. :getAddressSlot: pass:normal[xref:#StorageSlot-getAddressSlot-bytes32-[`++getAddressSlot++`]]
  5252. :getBooleanSlot: pass:normal[xref:#StorageSlot-getBooleanSlot-bytes32-[`++getBooleanSlot++`]]
  5253. :getBytes32Slot: pass:normal[xref:#StorageSlot-getBytes32Slot-bytes32-[`++getBytes32Slot++`]]
  5254. :getUint256Slot: pass:normal[xref:#StorageSlot-getUint256Slot-bytes32-[`++getUint256Slot++`]]
  5255. :AddressSlot: pass:normal[xref:#StorageSlot-AddressSlot[`++AddressSlot++`]]
  5256. :BooleanSlot: pass:normal[xref:#StorageSlot-BooleanSlot[`++BooleanSlot++`]]
  5257. :Bytes32Slot: pass:normal[xref:#StorageSlot-Bytes32Slot[`++Bytes32Slot++`]]
  5258. :Uint256Slot: pass:normal[xref:#StorageSlot-Uint256Slot[`++Uint256Slot++`]]
  5259. [.contract]
  5260. [[StorageSlot]]
  5261. === `++StorageSlot++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/StorageSlot.sol[{github-icon},role=heading-link]
  5262. [.hljs-theme-light.nopadding]
  5263. ```solidity
  5264. import "@openzeppelin/contracts/utils/StorageSlot.sol";
  5265. ```
  5266. Library for reading and writing primitive types to specific storage slots.
  5267. Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts.
  5268. This library helps with reading and writing to such slots without the need for inline assembly.
  5269. The functions in this library return Slot structs that contain a `value` member that can be used to read or write.
  5270. Example usage to set ERC1967 implementation slot:
  5271. ```
  5272. contract ERC1967 {
  5273. bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;
  5274. function _getImplementation() internal view returns (address) {
  5275. return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;
  5276. }
  5277. function _setImplementation(address newImplementation) internal {
  5278. require(Address.isContract(newImplementation), "ERC1967: new implementation is not a contract");
  5279. StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation;
  5280. }
  5281. }
  5282. ```
  5283. _Available since v4.1 for `address`, `bool`, `bytes32`, and `uint256`._
  5284. [.contract-index]
  5285. .Functions
  5286. --
  5287. * {xref-StorageSlot-getAddressSlot-bytes32-}[`++getAddressSlot(slot)++`]
  5288. * {xref-StorageSlot-getBooleanSlot-bytes32-}[`++getBooleanSlot(slot)++`]
  5289. * {xref-StorageSlot-getBytes32Slot-bytes32-}[`++getBytes32Slot(slot)++`]
  5290. * {xref-StorageSlot-getUint256Slot-bytes32-}[`++getUint256Slot(slot)++`]
  5291. --
  5292. [.contract-item]
  5293. [[StorageSlot-getAddressSlot-bytes32-]]
  5294. ==== `[.contract-item-name]#++getAddressSlot++#++(bytes32 slot) → struct StorageSlot.AddressSlot r++` [.item-kind]#internal#
  5295. Returns an `AddressSlot` with member `value` located at `slot`.
  5296. [.contract-item]
  5297. [[StorageSlot-getBooleanSlot-bytes32-]]
  5298. ==== `[.contract-item-name]#++getBooleanSlot++#++(bytes32 slot) → struct StorageSlot.BooleanSlot r++` [.item-kind]#internal#
  5299. Returns an `BooleanSlot` with member `value` located at `slot`.
  5300. [.contract-item]
  5301. [[StorageSlot-getBytes32Slot-bytes32-]]
  5302. ==== `[.contract-item-name]#++getBytes32Slot++#++(bytes32 slot) → struct StorageSlot.Bytes32Slot r++` [.item-kind]#internal#
  5303. Returns an `Bytes32Slot` with member `value` located at `slot`.
  5304. [.contract-item]
  5305. [[StorageSlot-getUint256Slot-bytes32-]]
  5306. ==== `[.contract-item-name]#++getUint256Slot++#++(bytes32 slot) → struct StorageSlot.Uint256Slot r++` [.item-kind]#internal#
  5307. Returns an `Uint256Slot` with member `value` located at `slot`.
  5308. :Multicall: pass:normal[xref:#Multicall[`++Multicall++`]]
  5309. :multicall: pass:normal[xref:#Multicall-multicall-bytes---[`++multicall++`]]
  5310. [.contract]
  5311. [[Multicall]]
  5312. === `++Multicall++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.3/contracts/utils/Multicall.sol[{github-icon},role=heading-link]
  5313. [.hljs-theme-light.nopadding]
  5314. ```solidity
  5315. import "@openzeppelin/contracts/utils/Multicall.sol";
  5316. ```
  5317. Provides a function to batch together multiple calls in a single external call.
  5318. _Available since v4.1._
  5319. [.contract-index]
  5320. .Functions
  5321. --
  5322. * {xref-Multicall-multicall-bytes---}[`++multicall(data)++`]
  5323. --
  5324. [.contract-item]
  5325. [[Multicall-multicall-bytes---]]
  5326. ==== `[.contract-item-name]#++multicall++#++(bytes[] data) → bytes[] results++` [.item-kind]#external#
  5327. Receives and executes a batch of function calls on this contract.