utils.adoc 320 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845
  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-address-[`AccessControl._checkRole`]]
  13. :xref-AccessControl-_checkRole-bytes32-address-: xref:access.adoc#AccessControl-_checkRole-bytes32-address-
  14. :AccessControl-getRoleAdmin: pass:normal[xref:access.adoc#AccessControl-getRoleAdmin-bytes32-[`AccessControl.getRoleAdmin`]]
  15. :xref-AccessControl-getRoleAdmin-bytes32-: xref:access.adoc#AccessControl-getRoleAdmin-bytes32-
  16. :AccessControl-grantRole: pass:normal[xref:access.adoc#AccessControl-grantRole-bytes32-address-[`AccessControl.grantRole`]]
  17. :xref-AccessControl-grantRole-bytes32-address-: xref:access.adoc#AccessControl-grantRole-bytes32-address-
  18. :AccessControl-revokeRole: pass:normal[xref:access.adoc#AccessControl-revokeRole-bytes32-address-[`AccessControl.revokeRole`]]
  19. :xref-AccessControl-revokeRole-bytes32-address-: xref:access.adoc#AccessControl-revokeRole-bytes32-address-
  20. :AccessControl-renounceRole: pass:normal[xref:access.adoc#AccessControl-renounceRole-bytes32-address-[`AccessControl.renounceRole`]]
  21. :xref-AccessControl-renounceRole-bytes32-address-: xref:access.adoc#AccessControl-renounceRole-bytes32-address-
  22. :AccessControl-_setupRole: pass:normal[xref:access.adoc#AccessControl-_setupRole-bytes32-address-[`AccessControl._setupRole`]]
  23. :xref-AccessControl-_setupRole-bytes32-address-: xref:access.adoc#AccessControl-_setupRole-bytes32-address-
  24. :AccessControl-_setRoleAdmin: pass:normal[xref:access.adoc#AccessControl-_setRoleAdmin-bytes32-bytes32-[`AccessControl._setRoleAdmin`]]
  25. :xref-AccessControl-_setRoleAdmin-bytes32-bytes32-: xref:access.adoc#AccessControl-_setRoleAdmin-bytes32-bytes32-
  26. :AccessControl-_grantRole: pass:normal[xref:access.adoc#AccessControl-_grantRole-bytes32-address-[`AccessControl._grantRole`]]
  27. :xref-AccessControl-_grantRole-bytes32-address-: xref:access.adoc#AccessControl-_grantRole-bytes32-address-
  28. :AccessControl-_revokeRole: pass:normal[xref:access.adoc#AccessControl-_revokeRole-bytes32-address-[`AccessControl._revokeRole`]]
  29. :xref-AccessControl-_revokeRole-bytes32-address-: xref:access.adoc#AccessControl-_revokeRole-bytes32-address-
  30. :AccessControl-RoleData: pass:normal[xref:access.adoc#AccessControl-RoleData[`AccessControl.RoleData`]]
  31. :xref-AccessControl-RoleData: xref:access.adoc#AccessControl-RoleData
  32. :AccessControlEnumerable: pass:normal[xref:access.adoc#AccessControlEnumerable[`AccessControlEnumerable`]]
  33. :xref-AccessControlEnumerable: xref:access.adoc#AccessControlEnumerable
  34. :AccessControlEnumerable-supportsInterface: pass:normal[xref:access.adoc#AccessControlEnumerable-supportsInterface-bytes4-[`AccessControlEnumerable.supportsInterface`]]
  35. :xref-AccessControlEnumerable-supportsInterface-bytes4-: xref:access.adoc#AccessControlEnumerable-supportsInterface-bytes4-
  36. :AccessControlEnumerable-getRoleMember: pass:normal[xref:access.adoc#AccessControlEnumerable-getRoleMember-bytes32-uint256-[`AccessControlEnumerable.getRoleMember`]]
  37. :xref-AccessControlEnumerable-getRoleMember-bytes32-uint256-: xref:access.adoc#AccessControlEnumerable-getRoleMember-bytes32-uint256-
  38. :AccessControlEnumerable-getRoleMemberCount: pass:normal[xref:access.adoc#AccessControlEnumerable-getRoleMemberCount-bytes32-[`AccessControlEnumerable.getRoleMemberCount`]]
  39. :xref-AccessControlEnumerable-getRoleMemberCount-bytes32-: xref:access.adoc#AccessControlEnumerable-getRoleMemberCount-bytes32-
  40. :AccessControlEnumerable-_grantRole: pass:normal[xref:access.adoc#AccessControlEnumerable-_grantRole-bytes32-address-[`AccessControlEnumerable._grantRole`]]
  41. :xref-AccessControlEnumerable-_grantRole-bytes32-address-: xref:access.adoc#AccessControlEnumerable-_grantRole-bytes32-address-
  42. :AccessControlEnumerable-_revokeRole: pass:normal[xref:access.adoc#AccessControlEnumerable-_revokeRole-bytes32-address-[`AccessControlEnumerable._revokeRole`]]
  43. :xref-AccessControlEnumerable-_revokeRole-bytes32-address-: xref:access.adoc#AccessControlEnumerable-_revokeRole-bytes32-address-
  44. :IAccessControl: pass:normal[xref:access.adoc#IAccessControl[`IAccessControl`]]
  45. :xref-IAccessControl: xref:access.adoc#IAccessControl
  46. :IAccessControl-hasRole: pass:normal[xref:access.adoc#IAccessControl-hasRole-bytes32-address-[`IAccessControl.hasRole`]]
  47. :xref-IAccessControl-hasRole-bytes32-address-: xref:access.adoc#IAccessControl-hasRole-bytes32-address-
  48. :IAccessControl-getRoleAdmin: pass:normal[xref:access.adoc#IAccessControl-getRoleAdmin-bytes32-[`IAccessControl.getRoleAdmin`]]
  49. :xref-IAccessControl-getRoleAdmin-bytes32-: xref:access.adoc#IAccessControl-getRoleAdmin-bytes32-
  50. :IAccessControl-grantRole: pass:normal[xref:access.adoc#IAccessControl-grantRole-bytes32-address-[`IAccessControl.grantRole`]]
  51. :xref-IAccessControl-grantRole-bytes32-address-: xref:access.adoc#IAccessControl-grantRole-bytes32-address-
  52. :IAccessControl-revokeRole: pass:normal[xref:access.adoc#IAccessControl-revokeRole-bytes32-address-[`IAccessControl.revokeRole`]]
  53. :xref-IAccessControl-revokeRole-bytes32-address-: xref:access.adoc#IAccessControl-revokeRole-bytes32-address-
  54. :IAccessControl-renounceRole: pass:normal[xref:access.adoc#IAccessControl-renounceRole-bytes32-address-[`IAccessControl.renounceRole`]]
  55. :xref-IAccessControl-renounceRole-bytes32-address-: xref:access.adoc#IAccessControl-renounceRole-bytes32-address-
  56. :IAccessControl-RoleAdminChanged: pass:normal[xref:access.adoc#IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-[`IAccessControl.RoleAdminChanged`]]
  57. :xref-IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-: xref:access.adoc#IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-
  58. :IAccessControl-RoleGranted: pass:normal[xref:access.adoc#IAccessControl-RoleGranted-bytes32-address-address-[`IAccessControl.RoleGranted`]]
  59. :xref-IAccessControl-RoleGranted-bytes32-address-address-: xref:access.adoc#IAccessControl-RoleGranted-bytes32-address-address-
  60. :IAccessControl-RoleRevoked: pass:normal[xref:access.adoc#IAccessControl-RoleRevoked-bytes32-address-address-[`IAccessControl.RoleRevoked`]]
  61. :xref-IAccessControl-RoleRevoked-bytes32-address-address-: xref:access.adoc#IAccessControl-RoleRevoked-bytes32-address-address-
  62. :IAccessControlEnumerable: pass:normal[xref:access.adoc#IAccessControlEnumerable[`IAccessControlEnumerable`]]
  63. :xref-IAccessControlEnumerable: xref:access.adoc#IAccessControlEnumerable
  64. :IAccessControlEnumerable-getRoleMember: pass:normal[xref:access.adoc#IAccessControlEnumerable-getRoleMember-bytes32-uint256-[`IAccessControlEnumerable.getRoleMember`]]
  65. :xref-IAccessControlEnumerable-getRoleMember-bytes32-uint256-: xref:access.adoc#IAccessControlEnumerable-getRoleMember-bytes32-uint256-
  66. :IAccessControlEnumerable-getRoleMemberCount: pass:normal[xref:access.adoc#IAccessControlEnumerable-getRoleMemberCount-bytes32-[`IAccessControlEnumerable.getRoleMemberCount`]]
  67. :xref-IAccessControlEnumerable-getRoleMemberCount-bytes32-: xref:access.adoc#IAccessControlEnumerable-getRoleMemberCount-bytes32-
  68. :Ownable: pass:normal[xref:access.adoc#Ownable[`Ownable`]]
  69. :xref-Ownable: xref:access.adoc#Ownable
  70. :Ownable-onlyOwner: pass:normal[xref:access.adoc#Ownable-onlyOwner--[`Ownable.onlyOwner`]]
  71. :xref-Ownable-onlyOwner--: xref:access.adoc#Ownable-onlyOwner--
  72. :Ownable-constructor: pass:normal[xref:access.adoc#Ownable-constructor--[`Ownable.constructor`]]
  73. :xref-Ownable-constructor--: xref:access.adoc#Ownable-constructor--
  74. :Ownable-owner: pass:normal[xref:access.adoc#Ownable-owner--[`Ownable.owner`]]
  75. :xref-Ownable-owner--: xref:access.adoc#Ownable-owner--
  76. :Ownable-renounceOwnership: pass:normal[xref:access.adoc#Ownable-renounceOwnership--[`Ownable.renounceOwnership`]]
  77. :xref-Ownable-renounceOwnership--: xref:access.adoc#Ownable-renounceOwnership--
  78. :Ownable-transferOwnership: pass:normal[xref:access.adoc#Ownable-transferOwnership-address-[`Ownable.transferOwnership`]]
  79. :xref-Ownable-transferOwnership-address-: xref:access.adoc#Ownable-transferOwnership-address-
  80. :Ownable-_transferOwnership: pass:normal[xref:access.adoc#Ownable-_transferOwnership-address-[`Ownable._transferOwnership`]]
  81. :xref-Ownable-_transferOwnership-address-: xref:access.adoc#Ownable-_transferOwnership-address-
  82. :Ownable-OwnershipTransferred: pass:normal[xref:access.adoc#Ownable-OwnershipTransferred-address-address-[`Ownable.OwnershipTransferred`]]
  83. :xref-Ownable-OwnershipTransferred-address-address-: xref:access.adoc#Ownable-OwnershipTransferred-address-address-
  84. :PaymentSplitter: pass:normal[xref:finance.adoc#PaymentSplitter[`PaymentSplitter`]]
  85. :xref-PaymentSplitter: xref:finance.adoc#PaymentSplitter
  86. :PaymentSplitter-constructor: pass:normal[xref:finance.adoc#PaymentSplitter-constructor-address---uint256---[`PaymentSplitter.constructor`]]
  87. :xref-PaymentSplitter-constructor-address---uint256---: xref:finance.adoc#PaymentSplitter-constructor-address---uint256---
  88. :PaymentSplitter-receive: pass:normal[xref:finance.adoc#PaymentSplitter-receive--[`PaymentSplitter.receive`]]
  89. :xref-PaymentSplitter-receive--: xref:finance.adoc#PaymentSplitter-receive--
  90. :PaymentSplitter-totalShares: pass:normal[xref:finance.adoc#PaymentSplitter-totalShares--[`PaymentSplitter.totalShares`]]
  91. :xref-PaymentSplitter-totalShares--: xref:finance.adoc#PaymentSplitter-totalShares--
  92. :PaymentSplitter-totalReleased: pass:normal[xref:finance.adoc#PaymentSplitter-totalReleased--[`PaymentSplitter.totalReleased`]]
  93. :xref-PaymentSplitter-totalReleased--: xref:finance.adoc#PaymentSplitter-totalReleased--
  94. :PaymentSplitter-totalReleased: pass:normal[xref:finance.adoc#PaymentSplitter-totalReleased-contract-IERC20-[`PaymentSplitter.totalReleased`]]
  95. :xref-PaymentSplitter-totalReleased-contract-IERC20-: xref:finance.adoc#PaymentSplitter-totalReleased-contract-IERC20-
  96. :PaymentSplitter-shares: pass:normal[xref:finance.adoc#PaymentSplitter-shares-address-[`PaymentSplitter.shares`]]
  97. :xref-PaymentSplitter-shares-address-: xref:finance.adoc#PaymentSplitter-shares-address-
  98. :PaymentSplitter-released: pass:normal[xref:finance.adoc#PaymentSplitter-released-address-[`PaymentSplitter.released`]]
  99. :xref-PaymentSplitter-released-address-: xref:finance.adoc#PaymentSplitter-released-address-
  100. :PaymentSplitter-released: pass:normal[xref:finance.adoc#PaymentSplitter-released-contract-IERC20-address-[`PaymentSplitter.released`]]
  101. :xref-PaymentSplitter-released-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-released-contract-IERC20-address-
  102. :PaymentSplitter-payee: pass:normal[xref:finance.adoc#PaymentSplitter-payee-uint256-[`PaymentSplitter.payee`]]
  103. :xref-PaymentSplitter-payee-uint256-: xref:finance.adoc#PaymentSplitter-payee-uint256-
  104. :PaymentSplitter-release: pass:normal[xref:finance.adoc#PaymentSplitter-release-address-payable-[`PaymentSplitter.release`]]
  105. :xref-PaymentSplitter-release-address-payable-: xref:finance.adoc#PaymentSplitter-release-address-payable-
  106. :PaymentSplitter-release: pass:normal[xref:finance.adoc#PaymentSplitter-release-contract-IERC20-address-[`PaymentSplitter.release`]]
  107. :xref-PaymentSplitter-release-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-release-contract-IERC20-address-
  108. :PaymentSplitter-PayeeAdded: pass:normal[xref:finance.adoc#PaymentSplitter-PayeeAdded-address-uint256-[`PaymentSplitter.PayeeAdded`]]
  109. :xref-PaymentSplitter-PayeeAdded-address-uint256-: xref:finance.adoc#PaymentSplitter-PayeeAdded-address-uint256-
  110. :PaymentSplitter-PaymentReleased: pass:normal[xref:finance.adoc#PaymentSplitter-PaymentReleased-address-uint256-[`PaymentSplitter.PaymentReleased`]]
  111. :xref-PaymentSplitter-PaymentReleased-address-uint256-: xref:finance.adoc#PaymentSplitter-PaymentReleased-address-uint256-
  112. :PaymentSplitter-ERC20PaymentReleased: pass:normal[xref:finance.adoc#PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-[`PaymentSplitter.ERC20PaymentReleased`]]
  113. :xref-PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-: xref:finance.adoc#PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-
  114. :PaymentSplitter-PaymentReceived: pass:normal[xref:finance.adoc#PaymentSplitter-PaymentReceived-address-uint256-[`PaymentSplitter.PaymentReceived`]]
  115. :xref-PaymentSplitter-PaymentReceived-address-uint256-: xref:finance.adoc#PaymentSplitter-PaymentReceived-address-uint256-
  116. :VestingWallet: pass:normal[xref:finance.adoc#VestingWallet[`VestingWallet`]]
  117. :xref-VestingWallet: xref:finance.adoc#VestingWallet
  118. :VestingWallet-constructor: pass:normal[xref:finance.adoc#VestingWallet-constructor-address-uint64-uint64-[`VestingWallet.constructor`]]
  119. :xref-VestingWallet-constructor-address-uint64-uint64-: xref:finance.adoc#VestingWallet-constructor-address-uint64-uint64-
  120. :VestingWallet-receive: pass:normal[xref:finance.adoc#VestingWallet-receive--[`VestingWallet.receive`]]
  121. :xref-VestingWallet-receive--: xref:finance.adoc#VestingWallet-receive--
  122. :VestingWallet-beneficiary: pass:normal[xref:finance.adoc#VestingWallet-beneficiary--[`VestingWallet.beneficiary`]]
  123. :xref-VestingWallet-beneficiary--: xref:finance.adoc#VestingWallet-beneficiary--
  124. :VestingWallet-start: pass:normal[xref:finance.adoc#VestingWallet-start--[`VestingWallet.start`]]
  125. :xref-VestingWallet-start--: xref:finance.adoc#VestingWallet-start--
  126. :VestingWallet-duration: pass:normal[xref:finance.adoc#VestingWallet-duration--[`VestingWallet.duration`]]
  127. :xref-VestingWallet-duration--: xref:finance.adoc#VestingWallet-duration--
  128. :VestingWallet-released: pass:normal[xref:finance.adoc#VestingWallet-released--[`VestingWallet.released`]]
  129. :xref-VestingWallet-released--: xref:finance.adoc#VestingWallet-released--
  130. :VestingWallet-released: pass:normal[xref:finance.adoc#VestingWallet-released-address-[`VestingWallet.released`]]
  131. :xref-VestingWallet-released-address-: xref:finance.adoc#VestingWallet-released-address-
  132. :VestingWallet-release: pass:normal[xref:finance.adoc#VestingWallet-release--[`VestingWallet.release`]]
  133. :xref-VestingWallet-release--: xref:finance.adoc#VestingWallet-release--
  134. :VestingWallet-release: pass:normal[xref:finance.adoc#VestingWallet-release-address-[`VestingWallet.release`]]
  135. :xref-VestingWallet-release-address-: xref:finance.adoc#VestingWallet-release-address-
  136. :VestingWallet-vestedAmount: pass:normal[xref:finance.adoc#VestingWallet-vestedAmount-uint64-[`VestingWallet.vestedAmount`]]
  137. :xref-VestingWallet-vestedAmount-uint64-: xref:finance.adoc#VestingWallet-vestedAmount-uint64-
  138. :VestingWallet-vestedAmount: pass:normal[xref:finance.adoc#VestingWallet-vestedAmount-address-uint64-[`VestingWallet.vestedAmount`]]
  139. :xref-VestingWallet-vestedAmount-address-uint64-: xref:finance.adoc#VestingWallet-vestedAmount-address-uint64-
  140. :VestingWallet-_vestingSchedule: pass:normal[xref:finance.adoc#VestingWallet-_vestingSchedule-uint256-uint64-[`VestingWallet._vestingSchedule`]]
  141. :xref-VestingWallet-_vestingSchedule-uint256-uint64-: xref:finance.adoc#VestingWallet-_vestingSchedule-uint256-uint64-
  142. :VestingWallet-EtherReleased: pass:normal[xref:finance.adoc#VestingWallet-EtherReleased-uint256-[`VestingWallet.EtherReleased`]]
  143. :xref-VestingWallet-EtherReleased-uint256-: xref:finance.adoc#VestingWallet-EtherReleased-uint256-
  144. :VestingWallet-ERC20Released: pass:normal[xref:finance.adoc#VestingWallet-ERC20Released-address-uint256-[`VestingWallet.ERC20Released`]]
  145. :xref-VestingWallet-ERC20Released-address-uint256-: xref:finance.adoc#VestingWallet-ERC20Released-address-uint256-
  146. :Governor: pass:normal[xref:governance.adoc#Governor[`Governor`]]
  147. :xref-Governor: xref:governance.adoc#Governor
  148. :Governor-onlyGovernance: pass:normal[xref:governance.adoc#Governor-onlyGovernance--[`Governor.onlyGovernance`]]
  149. :xref-Governor-onlyGovernance--: xref:governance.adoc#Governor-onlyGovernance--
  150. :Governor-BALLOT_TYPEHASH: pass:normal[xref:governance.adoc#Governor-BALLOT_TYPEHASH-bytes32[`Governor.BALLOT_TYPEHASH`]]
  151. :xref-Governor-BALLOT_TYPEHASH-bytes32: xref:governance.adoc#Governor-BALLOT_TYPEHASH-bytes32
  152. :Governor-constructor: pass:normal[xref:governance.adoc#Governor-constructor-string-[`Governor.constructor`]]
  153. :xref-Governor-constructor-string-: xref:governance.adoc#Governor-constructor-string-
  154. :Governor-receive: pass:normal[xref:governance.adoc#Governor-receive--[`Governor.receive`]]
  155. :xref-Governor-receive--: xref:governance.adoc#Governor-receive--
  156. :Governor-supportsInterface: pass:normal[xref:governance.adoc#Governor-supportsInterface-bytes4-[`Governor.supportsInterface`]]
  157. :xref-Governor-supportsInterface-bytes4-: xref:governance.adoc#Governor-supportsInterface-bytes4-
  158. :Governor-name: pass:normal[xref:governance.adoc#Governor-name--[`Governor.name`]]
  159. :xref-Governor-name--: xref:governance.adoc#Governor-name--
  160. :Governor-version: pass:normal[xref:governance.adoc#Governor-version--[`Governor.version`]]
  161. :xref-Governor-version--: xref:governance.adoc#Governor-version--
  162. :Governor-hashProposal: pass:normal[xref:governance.adoc#Governor-hashProposal-address---uint256---bytes---bytes32-[`Governor.hashProposal`]]
  163. :xref-Governor-hashProposal-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-hashProposal-address---uint256---bytes---bytes32-
  164. :Governor-state: pass:normal[xref:governance.adoc#Governor-state-uint256-[`Governor.state`]]
  165. :xref-Governor-state-uint256-: xref:governance.adoc#Governor-state-uint256-
  166. :Governor-proposalSnapshot: pass:normal[xref:governance.adoc#Governor-proposalSnapshot-uint256-[`Governor.proposalSnapshot`]]
  167. :xref-Governor-proposalSnapshot-uint256-: xref:governance.adoc#Governor-proposalSnapshot-uint256-
  168. :Governor-proposalDeadline: pass:normal[xref:governance.adoc#Governor-proposalDeadline-uint256-[`Governor.proposalDeadline`]]
  169. :xref-Governor-proposalDeadline-uint256-: xref:governance.adoc#Governor-proposalDeadline-uint256-
  170. :Governor-proposalThreshold: pass:normal[xref:governance.adoc#Governor-proposalThreshold--[`Governor.proposalThreshold`]]
  171. :xref-Governor-proposalThreshold--: xref:governance.adoc#Governor-proposalThreshold--
  172. :Governor-_quorumReached: pass:normal[xref:governance.adoc#Governor-_quorumReached-uint256-[`Governor._quorumReached`]]
  173. :xref-Governor-_quorumReached-uint256-: xref:governance.adoc#Governor-_quorumReached-uint256-
  174. :Governor-_voteSucceeded: pass:normal[xref:governance.adoc#Governor-_voteSucceeded-uint256-[`Governor._voteSucceeded`]]
  175. :xref-Governor-_voteSucceeded-uint256-: xref:governance.adoc#Governor-_voteSucceeded-uint256-
  176. :Governor-_countVote: pass:normal[xref:governance.adoc#Governor-_countVote-uint256-address-uint8-uint256-[`Governor._countVote`]]
  177. :xref-Governor-_countVote-uint256-address-uint8-uint256-: xref:governance.adoc#Governor-_countVote-uint256-address-uint8-uint256-
  178. :Governor-propose: pass:normal[xref:governance.adoc#Governor-propose-address---uint256---bytes---string-[`Governor.propose`]]
  179. :xref-Governor-propose-address---uint256---bytes---string-: xref:governance.adoc#Governor-propose-address---uint256---bytes---string-
  180. :Governor-execute: pass:normal[xref:governance.adoc#Governor-execute-address---uint256---bytes---bytes32-[`Governor.execute`]]
  181. :xref-Governor-execute-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-execute-address---uint256---bytes---bytes32-
  182. :Governor-_execute: pass:normal[xref:governance.adoc#Governor-_execute-uint256-address---uint256---bytes---bytes32-[`Governor._execute`]]
  183. :xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_execute-uint256-address---uint256---bytes---bytes32-
  184. :Governor-_cancel: pass:normal[xref:governance.adoc#Governor-_cancel-address---uint256---bytes---bytes32-[`Governor._cancel`]]
  185. :xref-Governor-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_cancel-address---uint256---bytes---bytes32-
  186. :Governor-castVote: pass:normal[xref:governance.adoc#Governor-castVote-uint256-uint8-[`Governor.castVote`]]
  187. :xref-Governor-castVote-uint256-uint8-: xref:governance.adoc#Governor-castVote-uint256-uint8-
  188. :Governor-castVoteWithReason: pass:normal[xref:governance.adoc#Governor-castVoteWithReason-uint256-uint8-string-[`Governor.castVoteWithReason`]]
  189. :xref-Governor-castVoteWithReason-uint256-uint8-string-: xref:governance.adoc#Governor-castVoteWithReason-uint256-uint8-string-
  190. :Governor-castVoteBySig: pass:normal[xref:governance.adoc#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`Governor.castVoteBySig`]]
  191. :xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-: xref:governance.adoc#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-
  192. :Governor-_castVote: pass:normal[xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-[`Governor._castVote`]]
  193. :xref-Governor-_castVote-uint256-address-uint8-string-: xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-
  194. :Governor-relay: pass:normal[xref:governance.adoc#Governor-relay-address-uint256-bytes-[`Governor.relay`]]
  195. :xref-Governor-relay-address-uint256-bytes-: xref:governance.adoc#Governor-relay-address-uint256-bytes-
  196. :Governor-_executor: pass:normal[xref:governance.adoc#Governor-_executor--[`Governor._executor`]]
  197. :xref-Governor-_executor--: xref:governance.adoc#Governor-_executor--
  198. :Governor-ProposalCore: pass:normal[xref:governance.adoc#Governor-ProposalCore[`Governor.ProposalCore`]]
  199. :xref-Governor-ProposalCore: xref:governance.adoc#Governor-ProposalCore
  200. :IGovernor: pass:normal[xref:governance.adoc#IGovernor[`IGovernor`]]
  201. :xref-IGovernor: xref:governance.adoc#IGovernor
  202. :IGovernor-name: pass:normal[xref:governance.adoc#IGovernor-name--[`IGovernor.name`]]
  203. :xref-IGovernor-name--: xref:governance.adoc#IGovernor-name--
  204. :IGovernor-version: pass:normal[xref:governance.adoc#IGovernor-version--[`IGovernor.version`]]
  205. :xref-IGovernor-version--: xref:governance.adoc#IGovernor-version--
  206. :IGovernor-COUNTING_MODE: pass:normal[xref:governance.adoc#IGovernor-COUNTING_MODE--[`IGovernor.COUNTING_MODE`]]
  207. :xref-IGovernor-COUNTING_MODE--: xref:governance.adoc#IGovernor-COUNTING_MODE--
  208. :IGovernor-hashProposal: pass:normal[xref:governance.adoc#IGovernor-hashProposal-address---uint256---bytes---bytes32-[`IGovernor.hashProposal`]]
  209. :xref-IGovernor-hashProposal-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernor-hashProposal-address---uint256---bytes---bytes32-
  210. :IGovernor-state: pass:normal[xref:governance.adoc#IGovernor-state-uint256-[`IGovernor.state`]]
  211. :xref-IGovernor-state-uint256-: xref:governance.adoc#IGovernor-state-uint256-
  212. :IGovernor-proposalSnapshot: pass:normal[xref:governance.adoc#IGovernor-proposalSnapshot-uint256-[`IGovernor.proposalSnapshot`]]
  213. :xref-IGovernor-proposalSnapshot-uint256-: xref:governance.adoc#IGovernor-proposalSnapshot-uint256-
  214. :IGovernor-proposalDeadline: pass:normal[xref:governance.adoc#IGovernor-proposalDeadline-uint256-[`IGovernor.proposalDeadline`]]
  215. :xref-IGovernor-proposalDeadline-uint256-: xref:governance.adoc#IGovernor-proposalDeadline-uint256-
  216. :IGovernor-votingDelay: pass:normal[xref:governance.adoc#IGovernor-votingDelay--[`IGovernor.votingDelay`]]
  217. :xref-IGovernor-votingDelay--: xref:governance.adoc#IGovernor-votingDelay--
  218. :IGovernor-votingPeriod: pass:normal[xref:governance.adoc#IGovernor-votingPeriod--[`IGovernor.votingPeriod`]]
  219. :xref-IGovernor-votingPeriod--: xref:governance.adoc#IGovernor-votingPeriod--
  220. :IGovernor-quorum: pass:normal[xref:governance.adoc#IGovernor-quorum-uint256-[`IGovernor.quorum`]]
  221. :xref-IGovernor-quorum-uint256-: xref:governance.adoc#IGovernor-quorum-uint256-
  222. :IGovernor-getVotes: pass:normal[xref:governance.adoc#IGovernor-getVotes-address-uint256-[`IGovernor.getVotes`]]
  223. :xref-IGovernor-getVotes-address-uint256-: xref:governance.adoc#IGovernor-getVotes-address-uint256-
  224. :IGovernor-hasVoted: pass:normal[xref:governance.adoc#IGovernor-hasVoted-uint256-address-[`IGovernor.hasVoted`]]
  225. :xref-IGovernor-hasVoted-uint256-address-: xref:governance.adoc#IGovernor-hasVoted-uint256-address-
  226. :IGovernor-propose: pass:normal[xref:governance.adoc#IGovernor-propose-address---uint256---bytes---string-[`IGovernor.propose`]]
  227. :xref-IGovernor-propose-address---uint256---bytes---string-: xref:governance.adoc#IGovernor-propose-address---uint256---bytes---string-
  228. :IGovernor-execute: pass:normal[xref:governance.adoc#IGovernor-execute-address---uint256---bytes---bytes32-[`IGovernor.execute`]]
  229. :xref-IGovernor-execute-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernor-execute-address---uint256---bytes---bytes32-
  230. :IGovernor-castVote: pass:normal[xref:governance.adoc#IGovernor-castVote-uint256-uint8-[`IGovernor.castVote`]]
  231. :xref-IGovernor-castVote-uint256-uint8-: xref:governance.adoc#IGovernor-castVote-uint256-uint8-
  232. :IGovernor-castVoteWithReason: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReason-uint256-uint8-string-[`IGovernor.castVoteWithReason`]]
  233. :xref-IGovernor-castVoteWithReason-uint256-uint8-string-: xref:governance.adoc#IGovernor-castVoteWithReason-uint256-uint8-string-
  234. :IGovernor-castVoteBySig: pass:normal[xref:governance.adoc#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`IGovernor.castVoteBySig`]]
  235. :xref-IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-: xref:governance.adoc#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-
  236. :IGovernor-ProposalCreated: pass:normal[xref:governance.adoc#IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-[`IGovernor.ProposalCreated`]]
  237. :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-
  238. :IGovernor-ProposalCanceled: pass:normal[xref:governance.adoc#IGovernor-ProposalCanceled-uint256-[`IGovernor.ProposalCanceled`]]
  239. :xref-IGovernor-ProposalCanceled-uint256-: xref:governance.adoc#IGovernor-ProposalCanceled-uint256-
  240. :IGovernor-ProposalExecuted: pass:normal[xref:governance.adoc#IGovernor-ProposalExecuted-uint256-[`IGovernor.ProposalExecuted`]]
  241. :xref-IGovernor-ProposalExecuted-uint256-: xref:governance.adoc#IGovernor-ProposalExecuted-uint256-
  242. :IGovernor-VoteCast: pass:normal[xref:governance.adoc#IGovernor-VoteCast-address-uint256-uint8-uint256-string-[`IGovernor.VoteCast`]]
  243. :xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-: xref:governance.adoc#IGovernor-VoteCast-address-uint256-uint8-uint256-string-
  244. :IGovernor-ProposalState: pass:normal[xref:governance.adoc#IGovernor-ProposalState[`IGovernor.ProposalState`]]
  245. :xref-IGovernor-ProposalState: xref:governance.adoc#IGovernor-ProposalState
  246. :TimelockController: pass:normal[xref:governance.adoc#TimelockController[`TimelockController`]]
  247. :xref-TimelockController: xref:governance.adoc#TimelockController
  248. :TimelockController-onlyRoleOrOpenRole: pass:normal[xref:governance.adoc#TimelockController-onlyRoleOrOpenRole-bytes32-[`TimelockController.onlyRoleOrOpenRole`]]
  249. :xref-TimelockController-onlyRoleOrOpenRole-bytes32-: xref:governance.adoc#TimelockController-onlyRoleOrOpenRole-bytes32-
  250. :TimelockController-TIMELOCK_ADMIN_ROLE: pass:normal[xref:governance.adoc#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32[`TimelockController.TIMELOCK_ADMIN_ROLE`]]
  251. :xref-TimelockController-TIMELOCK_ADMIN_ROLE-bytes32: xref:governance.adoc#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32
  252. :TimelockController-PROPOSER_ROLE: pass:normal[xref:governance.adoc#TimelockController-PROPOSER_ROLE-bytes32[`TimelockController.PROPOSER_ROLE`]]
  253. :xref-TimelockController-PROPOSER_ROLE-bytes32: xref:governance.adoc#TimelockController-PROPOSER_ROLE-bytes32
  254. :TimelockController-EXECUTOR_ROLE: pass:normal[xref:governance.adoc#TimelockController-EXECUTOR_ROLE-bytes32[`TimelockController.EXECUTOR_ROLE`]]
  255. :xref-TimelockController-EXECUTOR_ROLE-bytes32: xref:governance.adoc#TimelockController-EXECUTOR_ROLE-bytes32
  256. :TimelockController-_DONE_TIMESTAMP: pass:normal[xref:governance.adoc#TimelockController-_DONE_TIMESTAMP-uint256[`TimelockController._DONE_TIMESTAMP`]]
  257. :xref-TimelockController-_DONE_TIMESTAMP-uint256: xref:governance.adoc#TimelockController-_DONE_TIMESTAMP-uint256
  258. :TimelockController-constructor: pass:normal[xref:governance.adoc#TimelockController-constructor-uint256-address---address---[`TimelockController.constructor`]]
  259. :xref-TimelockController-constructor-uint256-address---address---: xref:governance.adoc#TimelockController-constructor-uint256-address---address---
  260. :TimelockController-receive: pass:normal[xref:governance.adoc#TimelockController-receive--[`TimelockController.receive`]]
  261. :xref-TimelockController-receive--: xref:governance.adoc#TimelockController-receive--
  262. :TimelockController-isOperation: pass:normal[xref:governance.adoc#TimelockController-isOperation-bytes32-[`TimelockController.isOperation`]]
  263. :xref-TimelockController-isOperation-bytes32-: xref:governance.adoc#TimelockController-isOperation-bytes32-
  264. :TimelockController-isOperationPending: pass:normal[xref:governance.adoc#TimelockController-isOperationPending-bytes32-[`TimelockController.isOperationPending`]]
  265. :xref-TimelockController-isOperationPending-bytes32-: xref:governance.adoc#TimelockController-isOperationPending-bytes32-
  266. :TimelockController-isOperationReady: pass:normal[xref:governance.adoc#TimelockController-isOperationReady-bytes32-[`TimelockController.isOperationReady`]]
  267. :xref-TimelockController-isOperationReady-bytes32-: xref:governance.adoc#TimelockController-isOperationReady-bytes32-
  268. :TimelockController-isOperationDone: pass:normal[xref:governance.adoc#TimelockController-isOperationDone-bytes32-[`TimelockController.isOperationDone`]]
  269. :xref-TimelockController-isOperationDone-bytes32-: xref:governance.adoc#TimelockController-isOperationDone-bytes32-
  270. :TimelockController-getTimestamp: pass:normal[xref:governance.adoc#TimelockController-getTimestamp-bytes32-[`TimelockController.getTimestamp`]]
  271. :xref-TimelockController-getTimestamp-bytes32-: xref:governance.adoc#TimelockController-getTimestamp-bytes32-
  272. :TimelockController-getMinDelay: pass:normal[xref:governance.adoc#TimelockController-getMinDelay--[`TimelockController.getMinDelay`]]
  273. :xref-TimelockController-getMinDelay--: xref:governance.adoc#TimelockController-getMinDelay--
  274. :TimelockController-hashOperation: pass:normal[xref:governance.adoc#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-[`TimelockController.hashOperation`]]
  275. :xref-TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-: xref:governance.adoc#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-
  276. :TimelockController-hashOperationBatch: pass:normal[xref:governance.adoc#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-[`TimelockController.hashOperationBatch`]]
  277. :xref-TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-: xref:governance.adoc#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-
  278. :TimelockController-schedule: pass:normal[xref:governance.adoc#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-[`TimelockController.schedule`]]
  279. :xref-TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-: xref:governance.adoc#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-
  280. :TimelockController-scheduleBatch: pass:normal[xref:governance.adoc#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-[`TimelockController.scheduleBatch`]]
  281. :xref-TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-: xref:governance.adoc#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-
  282. :TimelockController-cancel: pass:normal[xref:governance.adoc#TimelockController-cancel-bytes32-[`TimelockController.cancel`]]
  283. :xref-TimelockController-cancel-bytes32-: xref:governance.adoc#TimelockController-cancel-bytes32-
  284. :TimelockController-execute: pass:normal[xref:governance.adoc#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-[`TimelockController.execute`]]
  285. :xref-TimelockController-execute-address-uint256-bytes-bytes32-bytes32-: xref:governance.adoc#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-
  286. :TimelockController-executeBatch: pass:normal[xref:governance.adoc#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-[`TimelockController.executeBatch`]]
  287. :xref-TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-: xref:governance.adoc#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-
  288. :TimelockController-updateDelay: pass:normal[xref:governance.adoc#TimelockController-updateDelay-uint256-[`TimelockController.updateDelay`]]
  289. :xref-TimelockController-updateDelay-uint256-: xref:governance.adoc#TimelockController-updateDelay-uint256-
  290. :TimelockController-CallScheduled: pass:normal[xref:governance.adoc#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-[`TimelockController.CallScheduled`]]
  291. :xref-TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-: xref:governance.adoc#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-
  292. :TimelockController-CallExecuted: pass:normal[xref:governance.adoc#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-[`TimelockController.CallExecuted`]]
  293. :xref-TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-: xref:governance.adoc#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-
  294. :TimelockController-Cancelled: pass:normal[xref:governance.adoc#TimelockController-Cancelled-bytes32-[`TimelockController.Cancelled`]]
  295. :xref-TimelockController-Cancelled-bytes32-: xref:governance.adoc#TimelockController-Cancelled-bytes32-
  296. :TimelockController-MinDelayChange: pass:normal[xref:governance.adoc#TimelockController-MinDelayChange-uint256-uint256-[`TimelockController.MinDelayChange`]]
  297. :xref-TimelockController-MinDelayChange-uint256-uint256-: xref:governance.adoc#TimelockController-MinDelayChange-uint256-uint256-
  298. :GovernorCompatibilityBravo: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo[`GovernorCompatibilityBravo`]]
  299. :xref-GovernorCompatibilityBravo: xref:governance.adoc#GovernorCompatibilityBravo
  300. :GovernorCompatibilityBravo-COUNTING_MODE: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-COUNTING_MODE--[`GovernorCompatibilityBravo.COUNTING_MODE`]]
  301. :xref-GovernorCompatibilityBravo-COUNTING_MODE--: xref:governance.adoc#GovernorCompatibilityBravo-COUNTING_MODE--
  302. :GovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-[`GovernorCompatibilityBravo.propose`]]
  303. :xref-GovernorCompatibilityBravo-propose-address---uint256---bytes---string-: xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-
  304. :GovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`GovernorCompatibilityBravo.propose`]]
  305. :xref-GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-: xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-
  306. :GovernorCompatibilityBravo-queue: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-queue-uint256-[`GovernorCompatibilityBravo.queue`]]
  307. :xref-GovernorCompatibilityBravo-queue-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-queue-uint256-
  308. :GovernorCompatibilityBravo-execute: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-execute-uint256-[`GovernorCompatibilityBravo.execute`]]
  309. :xref-GovernorCompatibilityBravo-execute-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-execute-uint256-
  310. :GovernorCompatibilityBravo-cancel: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-cancel-uint256-[`GovernorCompatibilityBravo.cancel`]]
  311. :xref-GovernorCompatibilityBravo-cancel-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-cancel-uint256-
  312. :GovernorCompatibilityBravo-proposals: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-proposals-uint256-[`GovernorCompatibilityBravo.proposals`]]
  313. :xref-GovernorCompatibilityBravo-proposals-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-proposals-uint256-
  314. :GovernorCompatibilityBravo-getActions: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-getActions-uint256-[`GovernorCompatibilityBravo.getActions`]]
  315. :xref-GovernorCompatibilityBravo-getActions-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-getActions-uint256-
  316. :GovernorCompatibilityBravo-getReceipt: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-getReceipt-uint256-address-[`GovernorCompatibilityBravo.getReceipt`]]
  317. :xref-GovernorCompatibilityBravo-getReceipt-uint256-address-: xref:governance.adoc#GovernorCompatibilityBravo-getReceipt-uint256-address-
  318. :GovernorCompatibilityBravo-quorumVotes: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-quorumVotes--[`GovernorCompatibilityBravo.quorumVotes`]]
  319. :xref-GovernorCompatibilityBravo-quorumVotes--: xref:governance.adoc#GovernorCompatibilityBravo-quorumVotes--
  320. :GovernorCompatibilityBravo-hasVoted: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-hasVoted-uint256-address-[`GovernorCompatibilityBravo.hasVoted`]]
  321. :xref-GovernorCompatibilityBravo-hasVoted-uint256-address-: xref:governance.adoc#GovernorCompatibilityBravo-hasVoted-uint256-address-
  322. :GovernorCompatibilityBravo-_quorumReached: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_quorumReached-uint256-[`GovernorCompatibilityBravo._quorumReached`]]
  323. :xref-GovernorCompatibilityBravo-_quorumReached-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-_quorumReached-uint256-
  324. :GovernorCompatibilityBravo-_voteSucceeded: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_voteSucceeded-uint256-[`GovernorCompatibilityBravo._voteSucceeded`]]
  325. :xref-GovernorCompatibilityBravo-_voteSucceeded-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-_voteSucceeded-uint256-
  326. :GovernorCompatibilityBravo-_countVote: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-[`GovernorCompatibilityBravo._countVote`]]
  327. :xref-GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-
  328. :GovernorCompatibilityBravo-ProposalDetails: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-ProposalDetails[`GovernorCompatibilityBravo.ProposalDetails`]]
  329. :xref-GovernorCompatibilityBravo-ProposalDetails: xref:governance.adoc#GovernorCompatibilityBravo-ProposalDetails
  330. :GovernorCompatibilityBravo-VoteType: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-VoteType[`GovernorCompatibilityBravo.VoteType`]]
  331. :xref-GovernorCompatibilityBravo-VoteType: xref:governance.adoc#GovernorCompatibilityBravo-VoteType
  332. :IGovernorCompatibilityBravo: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo[`IGovernorCompatibilityBravo`]]
  333. :xref-IGovernorCompatibilityBravo: xref:governance.adoc#IGovernorCompatibilityBravo
  334. :IGovernorCompatibilityBravo-quorumVotes: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-quorumVotes--[`IGovernorCompatibilityBravo.quorumVotes`]]
  335. :xref-IGovernorCompatibilityBravo-quorumVotes--: xref:governance.adoc#IGovernorCompatibilityBravo-quorumVotes--
  336. :IGovernorCompatibilityBravo-proposals: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-proposals-uint256-[`IGovernorCompatibilityBravo.proposals`]]
  337. :xref-IGovernorCompatibilityBravo-proposals-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-proposals-uint256-
  338. :IGovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`IGovernorCompatibilityBravo.propose`]]
  339. :xref-IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-: xref:governance.adoc#IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-
  340. :IGovernorCompatibilityBravo-queue: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-queue-uint256-[`IGovernorCompatibilityBravo.queue`]]
  341. :xref-IGovernorCompatibilityBravo-queue-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-queue-uint256-
  342. :IGovernorCompatibilityBravo-execute: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-execute-uint256-[`IGovernorCompatibilityBravo.execute`]]
  343. :xref-IGovernorCompatibilityBravo-execute-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-execute-uint256-
  344. :IGovernorCompatibilityBravo-cancel: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-cancel-uint256-[`IGovernorCompatibilityBravo.cancel`]]
  345. :xref-IGovernorCompatibilityBravo-cancel-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-cancel-uint256-
  346. :IGovernorCompatibilityBravo-getActions: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-getActions-uint256-[`IGovernorCompatibilityBravo.getActions`]]
  347. :xref-IGovernorCompatibilityBravo-getActions-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-getActions-uint256-
  348. :IGovernorCompatibilityBravo-getReceipt: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-getReceipt-uint256-address-[`IGovernorCompatibilityBravo.getReceipt`]]
  349. :xref-IGovernorCompatibilityBravo-getReceipt-uint256-address-: xref:governance.adoc#IGovernorCompatibilityBravo-getReceipt-uint256-address-
  350. :IGovernorCompatibilityBravo-Proposal: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-Proposal[`IGovernorCompatibilityBravo.Proposal`]]
  351. :xref-IGovernorCompatibilityBravo-Proposal: xref:governance.adoc#IGovernorCompatibilityBravo-Proposal
  352. :IGovernorCompatibilityBravo-Receipt: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-Receipt[`IGovernorCompatibilityBravo.Receipt`]]
  353. :xref-IGovernorCompatibilityBravo-Receipt: xref:governance.adoc#IGovernorCompatibilityBravo-Receipt
  354. :GovernorCountingSimple: pass:normal[xref:governance.adoc#GovernorCountingSimple[`GovernorCountingSimple`]]
  355. :xref-GovernorCountingSimple: xref:governance.adoc#GovernorCountingSimple
  356. :GovernorCountingSimple-COUNTING_MODE: pass:normal[xref:governance.adoc#GovernorCountingSimple-COUNTING_MODE--[`GovernorCountingSimple.COUNTING_MODE`]]
  357. :xref-GovernorCountingSimple-COUNTING_MODE--: xref:governance.adoc#GovernorCountingSimple-COUNTING_MODE--
  358. :GovernorCountingSimple-hasVoted: pass:normal[xref:governance.adoc#GovernorCountingSimple-hasVoted-uint256-address-[`GovernorCountingSimple.hasVoted`]]
  359. :xref-GovernorCountingSimple-hasVoted-uint256-address-: xref:governance.adoc#GovernorCountingSimple-hasVoted-uint256-address-
  360. :GovernorCountingSimple-proposalVotes: pass:normal[xref:governance.adoc#GovernorCountingSimple-proposalVotes-uint256-[`GovernorCountingSimple.proposalVotes`]]
  361. :xref-GovernorCountingSimple-proposalVotes-uint256-: xref:governance.adoc#GovernorCountingSimple-proposalVotes-uint256-
  362. :GovernorCountingSimple-_quorumReached: pass:normal[xref:governance.adoc#GovernorCountingSimple-_quorumReached-uint256-[`GovernorCountingSimple._quorumReached`]]
  363. :xref-GovernorCountingSimple-_quorumReached-uint256-: xref:governance.adoc#GovernorCountingSimple-_quorumReached-uint256-
  364. :GovernorCountingSimple-_voteSucceeded: pass:normal[xref:governance.adoc#GovernorCountingSimple-_voteSucceeded-uint256-[`GovernorCountingSimple._voteSucceeded`]]
  365. :xref-GovernorCountingSimple-_voteSucceeded-uint256-: xref:governance.adoc#GovernorCountingSimple-_voteSucceeded-uint256-
  366. :GovernorCountingSimple-_countVote: pass:normal[xref:governance.adoc#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-[`GovernorCountingSimple._countVote`]]
  367. :xref-GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-: xref:governance.adoc#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-
  368. :GovernorCountingSimple-ProposalVote: pass:normal[xref:governance.adoc#GovernorCountingSimple-ProposalVote[`GovernorCountingSimple.ProposalVote`]]
  369. :xref-GovernorCountingSimple-ProposalVote: xref:governance.adoc#GovernorCountingSimple-ProposalVote
  370. :GovernorCountingSimple-VoteType: pass:normal[xref:governance.adoc#GovernorCountingSimple-VoteType[`GovernorCountingSimple.VoteType`]]
  371. :xref-GovernorCountingSimple-VoteType: xref:governance.adoc#GovernorCountingSimple-VoteType
  372. :GovernorPreventLateQuorum: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum[`GovernorPreventLateQuorum`]]
  373. :xref-GovernorPreventLateQuorum: xref:governance.adoc#GovernorPreventLateQuorum
  374. :GovernorPreventLateQuorum-constructor: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-constructor-uint64-[`GovernorPreventLateQuorum.constructor`]]
  375. :xref-GovernorPreventLateQuorum-constructor-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-constructor-uint64-
  376. :GovernorPreventLateQuorum-proposalDeadline: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-proposalDeadline-uint256-[`GovernorPreventLateQuorum.proposalDeadline`]]
  377. :xref-GovernorPreventLateQuorum-proposalDeadline-uint256-: xref:governance.adoc#GovernorPreventLateQuorum-proposalDeadline-uint256-
  378. :GovernorPreventLateQuorum-_castVote: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-[`GovernorPreventLateQuorum._castVote`]]
  379. :xref-GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-: xref:governance.adoc#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-
  380. :GovernorPreventLateQuorum-lateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-lateQuorumVoteExtension--[`GovernorPreventLateQuorum.lateQuorumVoteExtension`]]
  381. :xref-GovernorPreventLateQuorum-lateQuorumVoteExtension--: xref:governance.adoc#GovernorPreventLateQuorum-lateQuorumVoteExtension--
  382. :GovernorPreventLateQuorum-setLateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-[`GovernorPreventLateQuorum.setLateQuorumVoteExtension`]]
  383. :xref-GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-
  384. :GovernorPreventLateQuorum-_setLateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-[`GovernorPreventLateQuorum._setLateQuorumVoteExtension`]]
  385. :xref-GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-
  386. :GovernorPreventLateQuorum-ProposalExtended: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-[`GovernorPreventLateQuorum.ProposalExtended`]]
  387. :xref-GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-
  388. :GovernorPreventLateQuorum-LateQuorumVoteExtensionSet: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-[`GovernorPreventLateQuorum.LateQuorumVoteExtensionSet`]]
  389. :xref-GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-
  390. :GovernorProposalThreshold: pass:normal[xref:governance.adoc#GovernorProposalThreshold[`GovernorProposalThreshold`]]
  391. :xref-GovernorProposalThreshold: xref:governance.adoc#GovernorProposalThreshold
  392. :GovernorProposalThreshold-propose: pass:normal[xref:governance.adoc#GovernorProposalThreshold-propose-address---uint256---bytes---string-[`GovernorProposalThreshold.propose`]]
  393. :xref-GovernorProposalThreshold-propose-address---uint256---bytes---string-: xref:governance.adoc#GovernorProposalThreshold-propose-address---uint256---bytes---string-
  394. :GovernorSettings: pass:normal[xref:governance.adoc#GovernorSettings[`GovernorSettings`]]
  395. :xref-GovernorSettings: xref:governance.adoc#GovernorSettings
  396. :GovernorSettings-constructor: pass:normal[xref:governance.adoc#GovernorSettings-constructor-uint256-uint256-uint256-[`GovernorSettings.constructor`]]
  397. :xref-GovernorSettings-constructor-uint256-uint256-uint256-: xref:governance.adoc#GovernorSettings-constructor-uint256-uint256-uint256-
  398. :GovernorSettings-votingDelay: pass:normal[xref:governance.adoc#GovernorSettings-votingDelay--[`GovernorSettings.votingDelay`]]
  399. :xref-GovernorSettings-votingDelay--: xref:governance.adoc#GovernorSettings-votingDelay--
  400. :GovernorSettings-votingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-votingPeriod--[`GovernorSettings.votingPeriod`]]
  401. :xref-GovernorSettings-votingPeriod--: xref:governance.adoc#GovernorSettings-votingPeriod--
  402. :GovernorSettings-proposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-proposalThreshold--[`GovernorSettings.proposalThreshold`]]
  403. :xref-GovernorSettings-proposalThreshold--: xref:governance.adoc#GovernorSettings-proposalThreshold--
  404. :GovernorSettings-setVotingDelay: pass:normal[xref:governance.adoc#GovernorSettings-setVotingDelay-uint256-[`GovernorSettings.setVotingDelay`]]
  405. :xref-GovernorSettings-setVotingDelay-uint256-: xref:governance.adoc#GovernorSettings-setVotingDelay-uint256-
  406. :GovernorSettings-setVotingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-setVotingPeriod-uint256-[`GovernorSettings.setVotingPeriod`]]
  407. :xref-GovernorSettings-setVotingPeriod-uint256-: xref:governance.adoc#GovernorSettings-setVotingPeriod-uint256-
  408. :GovernorSettings-setProposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-setProposalThreshold-uint256-[`GovernorSettings.setProposalThreshold`]]
  409. :xref-GovernorSettings-setProposalThreshold-uint256-: xref:governance.adoc#GovernorSettings-setProposalThreshold-uint256-
  410. :GovernorSettings-_setVotingDelay: pass:normal[xref:governance.adoc#GovernorSettings-_setVotingDelay-uint256-[`GovernorSettings._setVotingDelay`]]
  411. :xref-GovernorSettings-_setVotingDelay-uint256-: xref:governance.adoc#GovernorSettings-_setVotingDelay-uint256-
  412. :GovernorSettings-_setVotingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-_setVotingPeriod-uint256-[`GovernorSettings._setVotingPeriod`]]
  413. :xref-GovernorSettings-_setVotingPeriod-uint256-: xref:governance.adoc#GovernorSettings-_setVotingPeriod-uint256-
  414. :GovernorSettings-_setProposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-_setProposalThreshold-uint256-[`GovernorSettings._setProposalThreshold`]]
  415. :xref-GovernorSettings-_setProposalThreshold-uint256-: xref:governance.adoc#GovernorSettings-_setProposalThreshold-uint256-
  416. :GovernorSettings-VotingDelaySet: pass:normal[xref:governance.adoc#GovernorSettings-VotingDelaySet-uint256-uint256-[`GovernorSettings.VotingDelaySet`]]
  417. :xref-GovernorSettings-VotingDelaySet-uint256-uint256-: xref:governance.adoc#GovernorSettings-VotingDelaySet-uint256-uint256-
  418. :GovernorSettings-VotingPeriodSet: pass:normal[xref:governance.adoc#GovernorSettings-VotingPeriodSet-uint256-uint256-[`GovernorSettings.VotingPeriodSet`]]
  419. :xref-GovernorSettings-VotingPeriodSet-uint256-uint256-: xref:governance.adoc#GovernorSettings-VotingPeriodSet-uint256-uint256-
  420. :GovernorSettings-ProposalThresholdSet: pass:normal[xref:governance.adoc#GovernorSettings-ProposalThresholdSet-uint256-uint256-[`GovernorSettings.ProposalThresholdSet`]]
  421. :xref-GovernorSettings-ProposalThresholdSet-uint256-uint256-: xref:governance.adoc#GovernorSettings-ProposalThresholdSet-uint256-uint256-
  422. :ICompoundTimelock: pass:normal[xref:governance.adoc#ICompoundTimelock[`ICompoundTimelock`]]
  423. :xref-ICompoundTimelock: xref:governance.adoc#ICompoundTimelock
  424. :ICompoundTimelock-receive: pass:normal[xref:governance.adoc#ICompoundTimelock-receive--[`ICompoundTimelock.receive`]]
  425. :xref-ICompoundTimelock-receive--: xref:governance.adoc#ICompoundTimelock-receive--
  426. :ICompoundTimelock-GRACE_PERIOD: pass:normal[xref:governance.adoc#ICompoundTimelock-GRACE_PERIOD--[`ICompoundTimelock.GRACE_PERIOD`]]
  427. :xref-ICompoundTimelock-GRACE_PERIOD--: xref:governance.adoc#ICompoundTimelock-GRACE_PERIOD--
  428. :ICompoundTimelock-MINIMUM_DELAY: pass:normal[xref:governance.adoc#ICompoundTimelock-MINIMUM_DELAY--[`ICompoundTimelock.MINIMUM_DELAY`]]
  429. :xref-ICompoundTimelock-MINIMUM_DELAY--: xref:governance.adoc#ICompoundTimelock-MINIMUM_DELAY--
  430. :ICompoundTimelock-MAXIMUM_DELAY: pass:normal[xref:governance.adoc#ICompoundTimelock-MAXIMUM_DELAY--[`ICompoundTimelock.MAXIMUM_DELAY`]]
  431. :xref-ICompoundTimelock-MAXIMUM_DELAY--: xref:governance.adoc#ICompoundTimelock-MAXIMUM_DELAY--
  432. :ICompoundTimelock-admin: pass:normal[xref:governance.adoc#ICompoundTimelock-admin--[`ICompoundTimelock.admin`]]
  433. :xref-ICompoundTimelock-admin--: xref:governance.adoc#ICompoundTimelock-admin--
  434. :ICompoundTimelock-pendingAdmin: pass:normal[xref:governance.adoc#ICompoundTimelock-pendingAdmin--[`ICompoundTimelock.pendingAdmin`]]
  435. :xref-ICompoundTimelock-pendingAdmin--: xref:governance.adoc#ICompoundTimelock-pendingAdmin--
  436. :ICompoundTimelock-delay: pass:normal[xref:governance.adoc#ICompoundTimelock-delay--[`ICompoundTimelock.delay`]]
  437. :xref-ICompoundTimelock-delay--: xref:governance.adoc#ICompoundTimelock-delay--
  438. :ICompoundTimelock-queuedTransactions: pass:normal[xref:governance.adoc#ICompoundTimelock-queuedTransactions-bytes32-[`ICompoundTimelock.queuedTransactions`]]
  439. :xref-ICompoundTimelock-queuedTransactions-bytes32-: xref:governance.adoc#ICompoundTimelock-queuedTransactions-bytes32-
  440. :ICompoundTimelock-setDelay: pass:normal[xref:governance.adoc#ICompoundTimelock-setDelay-uint256-[`ICompoundTimelock.setDelay`]]
  441. :xref-ICompoundTimelock-setDelay-uint256-: xref:governance.adoc#ICompoundTimelock-setDelay-uint256-
  442. :ICompoundTimelock-acceptAdmin: pass:normal[xref:governance.adoc#ICompoundTimelock-acceptAdmin--[`ICompoundTimelock.acceptAdmin`]]
  443. :xref-ICompoundTimelock-acceptAdmin--: xref:governance.adoc#ICompoundTimelock-acceptAdmin--
  444. :ICompoundTimelock-setPendingAdmin: pass:normal[xref:governance.adoc#ICompoundTimelock-setPendingAdmin-address-[`ICompoundTimelock.setPendingAdmin`]]
  445. :xref-ICompoundTimelock-setPendingAdmin-address-: xref:governance.adoc#ICompoundTimelock-setPendingAdmin-address-
  446. :ICompoundTimelock-queueTransaction: pass:normal[xref:governance.adoc#ICompoundTimelock-queueTransaction-address-uint256-string-bytes-uint256-[`ICompoundTimelock.queueTransaction`]]
  447. :xref-ICompoundTimelock-queueTransaction-address-uint256-string-bytes-uint256-: xref:governance.adoc#ICompoundTimelock-queueTransaction-address-uint256-string-bytes-uint256-
  448. :ICompoundTimelock-cancelTransaction: pass:normal[xref:governance.adoc#ICompoundTimelock-cancelTransaction-address-uint256-string-bytes-uint256-[`ICompoundTimelock.cancelTransaction`]]
  449. :xref-ICompoundTimelock-cancelTransaction-address-uint256-string-bytes-uint256-: xref:governance.adoc#ICompoundTimelock-cancelTransaction-address-uint256-string-bytes-uint256-
  450. :ICompoundTimelock-executeTransaction: pass:normal[xref:governance.adoc#ICompoundTimelock-executeTransaction-address-uint256-string-bytes-uint256-[`ICompoundTimelock.executeTransaction`]]
  451. :xref-ICompoundTimelock-executeTransaction-address-uint256-string-bytes-uint256-: xref:governance.adoc#ICompoundTimelock-executeTransaction-address-uint256-string-bytes-uint256-
  452. :GovernorTimelockCompound: pass:normal[xref:governance.adoc#GovernorTimelockCompound[`GovernorTimelockCompound`]]
  453. :xref-GovernorTimelockCompound: xref:governance.adoc#GovernorTimelockCompound
  454. :GovernorTimelockCompound-constructor: pass:normal[xref:governance.adoc#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-[`GovernorTimelockCompound.constructor`]]
  455. :xref-GovernorTimelockCompound-constructor-contract-ICompoundTimelock-: xref:governance.adoc#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-
  456. :GovernorTimelockCompound-supportsInterface: pass:normal[xref:governance.adoc#GovernorTimelockCompound-supportsInterface-bytes4-[`GovernorTimelockCompound.supportsInterface`]]
  457. :xref-GovernorTimelockCompound-supportsInterface-bytes4-: xref:governance.adoc#GovernorTimelockCompound-supportsInterface-bytes4-
  458. :GovernorTimelockCompound-state: pass:normal[xref:governance.adoc#GovernorTimelockCompound-state-uint256-[`GovernorTimelockCompound.state`]]
  459. :xref-GovernorTimelockCompound-state-uint256-: xref:governance.adoc#GovernorTimelockCompound-state-uint256-
  460. :GovernorTimelockCompound-timelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-timelock--[`GovernorTimelockCompound.timelock`]]
  461. :xref-GovernorTimelockCompound-timelock--: xref:governance.adoc#GovernorTimelockCompound-timelock--
  462. :GovernorTimelockCompound-proposalEta: pass:normal[xref:governance.adoc#GovernorTimelockCompound-proposalEta-uint256-[`GovernorTimelockCompound.proposalEta`]]
  463. :xref-GovernorTimelockCompound-proposalEta-uint256-: xref:governance.adoc#GovernorTimelockCompound-proposalEta-uint256-
  464. :GovernorTimelockCompound-queue: pass:normal[xref:governance.adoc#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-[`GovernorTimelockCompound.queue`]]
  465. :xref-GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-
  466. :GovernorTimelockCompound-_execute: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-[`GovernorTimelockCompound._execute`]]
  467. :xref-GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-
  468. :GovernorTimelockCompound-_cancel: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-[`GovernorTimelockCompound._cancel`]]
  469. :xref-GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-
  470. :GovernorTimelockCompound-_executor: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_executor--[`GovernorTimelockCompound._executor`]]
  471. :xref-GovernorTimelockCompound-_executor--: xref:governance.adoc#GovernorTimelockCompound-_executor--
  472. :GovernorTimelockCompound-__acceptAdmin: pass:normal[xref:governance.adoc#GovernorTimelockCompound-__acceptAdmin--[`GovernorTimelockCompound.__acceptAdmin`]]
  473. :xref-GovernorTimelockCompound-__acceptAdmin--: xref:governance.adoc#GovernorTimelockCompound-__acceptAdmin--
  474. :GovernorTimelockCompound-updateTimelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-[`GovernorTimelockCompound.updateTimelock`]]
  475. :xref-GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-: xref:governance.adoc#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-
  476. :GovernorTimelockCompound-TimelockChange: pass:normal[xref:governance.adoc#GovernorTimelockCompound-TimelockChange-address-address-[`GovernorTimelockCompound.TimelockChange`]]
  477. :xref-GovernorTimelockCompound-TimelockChange-address-address-: xref:governance.adoc#GovernorTimelockCompound-TimelockChange-address-address-
  478. :GovernorTimelockCompound-ProposalTimelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-ProposalTimelock[`GovernorTimelockCompound.ProposalTimelock`]]
  479. :xref-GovernorTimelockCompound-ProposalTimelock: xref:governance.adoc#GovernorTimelockCompound-ProposalTimelock
  480. :GovernorTimelockControl: pass:normal[xref:governance.adoc#GovernorTimelockControl[`GovernorTimelockControl`]]
  481. :xref-GovernorTimelockControl: xref:governance.adoc#GovernorTimelockControl
  482. :GovernorTimelockControl-constructor: pass:normal[xref:governance.adoc#GovernorTimelockControl-constructor-contract-TimelockController-[`GovernorTimelockControl.constructor`]]
  483. :xref-GovernorTimelockControl-constructor-contract-TimelockController-: xref:governance.adoc#GovernorTimelockControl-constructor-contract-TimelockController-
  484. :GovernorTimelockControl-supportsInterface: pass:normal[xref:governance.adoc#GovernorTimelockControl-supportsInterface-bytes4-[`GovernorTimelockControl.supportsInterface`]]
  485. :xref-GovernorTimelockControl-supportsInterface-bytes4-: xref:governance.adoc#GovernorTimelockControl-supportsInterface-bytes4-
  486. :GovernorTimelockControl-state: pass:normal[xref:governance.adoc#GovernorTimelockControl-state-uint256-[`GovernorTimelockControl.state`]]
  487. :xref-GovernorTimelockControl-state-uint256-: xref:governance.adoc#GovernorTimelockControl-state-uint256-
  488. :GovernorTimelockControl-timelock: pass:normal[xref:governance.adoc#GovernorTimelockControl-timelock--[`GovernorTimelockControl.timelock`]]
  489. :xref-GovernorTimelockControl-timelock--: xref:governance.adoc#GovernorTimelockControl-timelock--
  490. :GovernorTimelockControl-proposalEta: pass:normal[xref:governance.adoc#GovernorTimelockControl-proposalEta-uint256-[`GovernorTimelockControl.proposalEta`]]
  491. :xref-GovernorTimelockControl-proposalEta-uint256-: xref:governance.adoc#GovernorTimelockControl-proposalEta-uint256-
  492. :GovernorTimelockControl-queue: pass:normal[xref:governance.adoc#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-[`GovernorTimelockControl.queue`]]
  493. :xref-GovernorTimelockControl-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-
  494. :GovernorTimelockControl-_execute: pass:normal[xref:governance.adoc#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-[`GovernorTimelockControl._execute`]]
  495. :xref-GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-
  496. :GovernorTimelockControl-_cancel: pass:normal[xref:governance.adoc#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-[`GovernorTimelockControl._cancel`]]
  497. :xref-GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-
  498. :GovernorTimelockControl-_executor: pass:normal[xref:governance.adoc#GovernorTimelockControl-_executor--[`GovernorTimelockControl._executor`]]
  499. :xref-GovernorTimelockControl-_executor--: xref:governance.adoc#GovernorTimelockControl-_executor--
  500. :GovernorTimelockControl-updateTimelock: pass:normal[xref:governance.adoc#GovernorTimelockControl-updateTimelock-contract-TimelockController-[`GovernorTimelockControl.updateTimelock`]]
  501. :xref-GovernorTimelockControl-updateTimelock-contract-TimelockController-: xref:governance.adoc#GovernorTimelockControl-updateTimelock-contract-TimelockController-
  502. :GovernorTimelockControl-TimelockChange: pass:normal[xref:governance.adoc#GovernorTimelockControl-TimelockChange-address-address-[`GovernorTimelockControl.TimelockChange`]]
  503. :xref-GovernorTimelockControl-TimelockChange-address-address-: xref:governance.adoc#GovernorTimelockControl-TimelockChange-address-address-
  504. :GovernorVotes: pass:normal[xref:governance.adoc#GovernorVotes[`GovernorVotes`]]
  505. :xref-GovernorVotes: xref:governance.adoc#GovernorVotes
  506. :GovernorVotes-token: pass:normal[xref:governance.adoc#GovernorVotes-token-contract-IVotes[`GovernorVotes.token`]]
  507. :xref-GovernorVotes-token-contract-IVotes: xref:governance.adoc#GovernorVotes-token-contract-IVotes
  508. :GovernorVotes-constructor: pass:normal[xref:governance.adoc#GovernorVotes-constructor-contract-IVotes-[`GovernorVotes.constructor`]]
  509. :xref-GovernorVotes-constructor-contract-IVotes-: xref:governance.adoc#GovernorVotes-constructor-contract-IVotes-
  510. :GovernorVotes-getVotes: pass:normal[xref:governance.adoc#GovernorVotes-getVotes-address-uint256-[`GovernorVotes.getVotes`]]
  511. :xref-GovernorVotes-getVotes-address-uint256-: xref:governance.adoc#GovernorVotes-getVotes-address-uint256-
  512. :GovernorVotesComp: pass:normal[xref:governance.adoc#GovernorVotesComp[`GovernorVotesComp`]]
  513. :xref-GovernorVotesComp: xref:governance.adoc#GovernorVotesComp
  514. :GovernorVotesComp-token: pass:normal[xref:governance.adoc#GovernorVotesComp-token-contract-ERC20VotesComp[`GovernorVotesComp.token`]]
  515. :xref-GovernorVotesComp-token-contract-ERC20VotesComp: xref:governance.adoc#GovernorVotesComp-token-contract-ERC20VotesComp
  516. :GovernorVotesComp-constructor: pass:normal[xref:governance.adoc#GovernorVotesComp-constructor-contract-ERC20VotesComp-[`GovernorVotesComp.constructor`]]
  517. :xref-GovernorVotesComp-constructor-contract-ERC20VotesComp-: xref:governance.adoc#GovernorVotesComp-constructor-contract-ERC20VotesComp-
  518. :GovernorVotesComp-getVotes: pass:normal[xref:governance.adoc#GovernorVotesComp-getVotes-address-uint256-[`GovernorVotesComp.getVotes`]]
  519. :xref-GovernorVotesComp-getVotes-address-uint256-: xref:governance.adoc#GovernorVotesComp-getVotes-address-uint256-
  520. :GovernorVotesQuorumFraction: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction[`GovernorVotesQuorumFraction`]]
  521. :xref-GovernorVotesQuorumFraction: xref:governance.adoc#GovernorVotesQuorumFraction
  522. :GovernorVotesQuorumFraction-constructor: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-constructor-uint256-[`GovernorVotesQuorumFraction.constructor`]]
  523. :xref-GovernorVotesQuorumFraction-constructor-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-constructor-uint256-
  524. :GovernorVotesQuorumFraction-quorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator--[`GovernorVotesQuorumFraction.quorumNumerator`]]
  525. :xref-GovernorVotesQuorumFraction-quorumNumerator--: xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator--
  526. :GovernorVotesQuorumFraction-quorumDenominator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumDenominator--[`GovernorVotesQuorumFraction.quorumDenominator`]]
  527. :xref-GovernorVotesQuorumFraction-quorumDenominator--: xref:governance.adoc#GovernorVotesQuorumFraction-quorumDenominator--
  528. :GovernorVotesQuorumFraction-quorum: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorum-uint256-[`GovernorVotesQuorumFraction.quorum`]]
  529. :xref-GovernorVotesQuorumFraction-quorum-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-quorum-uint256-
  530. :GovernorVotesQuorumFraction-updateQuorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-[`GovernorVotesQuorumFraction.updateQuorumNumerator`]]
  531. :xref-GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-
  532. :GovernorVotesQuorumFraction-_updateQuorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-[`GovernorVotesQuorumFraction._updateQuorumNumerator`]]
  533. :xref-GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-
  534. :GovernorVotesQuorumFraction-QuorumNumeratorUpdated: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-[`GovernorVotesQuorumFraction.QuorumNumeratorUpdated`]]
  535. :xref-GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-
  536. :IGovernorTimelock: pass:normal[xref:governance.adoc#IGovernorTimelock[`IGovernorTimelock`]]
  537. :xref-IGovernorTimelock: xref:governance.adoc#IGovernorTimelock
  538. :IGovernorTimelock-timelock: pass:normal[xref:governance.adoc#IGovernorTimelock-timelock--[`IGovernorTimelock.timelock`]]
  539. :xref-IGovernorTimelock-timelock--: xref:governance.adoc#IGovernorTimelock-timelock--
  540. :IGovernorTimelock-proposalEta: pass:normal[xref:governance.adoc#IGovernorTimelock-proposalEta-uint256-[`IGovernorTimelock.proposalEta`]]
  541. :xref-IGovernorTimelock-proposalEta-uint256-: xref:governance.adoc#IGovernorTimelock-proposalEta-uint256-
  542. :IGovernorTimelock-queue: pass:normal[xref:governance.adoc#IGovernorTimelock-queue-address---uint256---bytes---bytes32-[`IGovernorTimelock.queue`]]
  543. :xref-IGovernorTimelock-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernorTimelock-queue-address---uint256---bytes---bytes32-
  544. :IGovernorTimelock-ProposalQueued: pass:normal[xref:governance.adoc#IGovernorTimelock-ProposalQueued-uint256-uint256-[`IGovernorTimelock.ProposalQueued`]]
  545. :xref-IGovernorTimelock-ProposalQueued-uint256-uint256-: xref:governance.adoc#IGovernorTimelock-ProposalQueued-uint256-uint256-
  546. :IVotes: pass:normal[xref:governance.adoc#IVotes[`IVotes`]]
  547. :xref-IVotes: xref:governance.adoc#IVotes
  548. :IVotes-getVotes: pass:normal[xref:governance.adoc#IVotes-getVotes-address-[`IVotes.getVotes`]]
  549. :xref-IVotes-getVotes-address-: xref:governance.adoc#IVotes-getVotes-address-
  550. :IVotes-getPastVotes: pass:normal[xref:governance.adoc#IVotes-getPastVotes-address-uint256-[`IVotes.getPastVotes`]]
  551. :xref-IVotes-getPastVotes-address-uint256-: xref:governance.adoc#IVotes-getPastVotes-address-uint256-
  552. :IVotes-getPastTotalSupply: pass:normal[xref:governance.adoc#IVotes-getPastTotalSupply-uint256-[`IVotes.getPastTotalSupply`]]
  553. :xref-IVotes-getPastTotalSupply-uint256-: xref:governance.adoc#IVotes-getPastTotalSupply-uint256-
  554. :IVotes-delegates: pass:normal[xref:governance.adoc#IVotes-delegates-address-[`IVotes.delegates`]]
  555. :xref-IVotes-delegates-address-: xref:governance.adoc#IVotes-delegates-address-
  556. :IVotes-delegate: pass:normal[xref:governance.adoc#IVotes-delegate-address-[`IVotes.delegate`]]
  557. :xref-IVotes-delegate-address-: xref:governance.adoc#IVotes-delegate-address-
  558. :IVotes-delegateBySig: pass:normal[xref:governance.adoc#IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`IVotes.delegateBySig`]]
  559. :xref-IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:governance.adoc#IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  560. :IVotes-DelegateChanged: pass:normal[xref:governance.adoc#IVotes-DelegateChanged-address-address-address-[`IVotes.DelegateChanged`]]
  561. :xref-IVotes-DelegateChanged-address-address-address-: xref:governance.adoc#IVotes-DelegateChanged-address-address-address-
  562. :IVotes-DelegateVotesChanged: pass:normal[xref:governance.adoc#IVotes-DelegateVotesChanged-address-uint256-uint256-[`IVotes.DelegateVotesChanged`]]
  563. :xref-IVotes-DelegateVotesChanged-address-uint256-uint256-: xref:governance.adoc#IVotes-DelegateVotesChanged-address-uint256-uint256-
  564. :Votes: pass:normal[xref:governance.adoc#Votes[`Votes`]]
  565. :xref-Votes: xref:governance.adoc#Votes
  566. :Votes-getVotes: pass:normal[xref:governance.adoc#Votes-getVotes-address-[`Votes.getVotes`]]
  567. :xref-Votes-getVotes-address-: xref:governance.adoc#Votes-getVotes-address-
  568. :Votes-getPastVotes: pass:normal[xref:governance.adoc#Votes-getPastVotes-address-uint256-[`Votes.getPastVotes`]]
  569. :xref-Votes-getPastVotes-address-uint256-: xref:governance.adoc#Votes-getPastVotes-address-uint256-
  570. :Votes-getPastTotalSupply: pass:normal[xref:governance.adoc#Votes-getPastTotalSupply-uint256-[`Votes.getPastTotalSupply`]]
  571. :xref-Votes-getPastTotalSupply-uint256-: xref:governance.adoc#Votes-getPastTotalSupply-uint256-
  572. :Votes-_getTotalSupply: pass:normal[xref:governance.adoc#Votes-_getTotalSupply--[`Votes._getTotalSupply`]]
  573. :xref-Votes-_getTotalSupply--: xref:governance.adoc#Votes-_getTotalSupply--
  574. :Votes-delegates: pass:normal[xref:governance.adoc#Votes-delegates-address-[`Votes.delegates`]]
  575. :xref-Votes-delegates-address-: xref:governance.adoc#Votes-delegates-address-
  576. :Votes-delegate: pass:normal[xref:governance.adoc#Votes-delegate-address-[`Votes.delegate`]]
  577. :xref-Votes-delegate-address-: xref:governance.adoc#Votes-delegate-address-
  578. :Votes-delegateBySig: pass:normal[xref:governance.adoc#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`Votes.delegateBySig`]]
  579. :xref-Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:governance.adoc#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  580. :Votes-_delegate: pass:normal[xref:governance.adoc#Votes-_delegate-address-address-[`Votes._delegate`]]
  581. :xref-Votes-_delegate-address-address-: xref:governance.adoc#Votes-_delegate-address-address-
  582. :Votes-_transferVotingUnits: pass:normal[xref:governance.adoc#Votes-_transferVotingUnits-address-address-uint256-[`Votes._transferVotingUnits`]]
  583. :xref-Votes-_transferVotingUnits-address-address-uint256-: xref:governance.adoc#Votes-_transferVotingUnits-address-address-uint256-
  584. :Votes-_useNonce: pass:normal[xref:governance.adoc#Votes-_useNonce-address-[`Votes._useNonce`]]
  585. :xref-Votes-_useNonce-address-: xref:governance.adoc#Votes-_useNonce-address-
  586. :Votes-nonces: pass:normal[xref:governance.adoc#Votes-nonces-address-[`Votes.nonces`]]
  587. :xref-Votes-nonces-address-: xref:governance.adoc#Votes-nonces-address-
  588. :Votes-DOMAIN_SEPARATOR: pass:normal[xref:governance.adoc#Votes-DOMAIN_SEPARATOR--[`Votes.DOMAIN_SEPARATOR`]]
  589. :xref-Votes-DOMAIN_SEPARATOR--: xref:governance.adoc#Votes-DOMAIN_SEPARATOR--
  590. :Votes-_getVotingUnits: pass:normal[xref:governance.adoc#Votes-_getVotingUnits-address-[`Votes._getVotingUnits`]]
  591. :xref-Votes-_getVotingUnits-address-: xref:governance.adoc#Votes-_getVotingUnits-address-
  592. :IERC1271: pass:normal[xref:interfaces.adoc#IERC1271[`IERC1271`]]
  593. :xref-IERC1271: xref:interfaces.adoc#IERC1271
  594. :IERC1271-isValidSignature: pass:normal[xref:interfaces.adoc#IERC1271-isValidSignature-bytes32-bytes-[`IERC1271.isValidSignature`]]
  595. :xref-IERC1271-isValidSignature-bytes32-bytes-: xref:interfaces.adoc#IERC1271-isValidSignature-bytes32-bytes-
  596. :IERC1363: pass:normal[xref:interfaces.adoc#IERC1363[`IERC1363`]]
  597. :xref-IERC1363: xref:interfaces.adoc#IERC1363
  598. :IERC1363-transferAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-[`IERC1363.transferAndCall`]]
  599. :xref-IERC1363-transferAndCall-address-uint256-: xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-
  600. :IERC1363-transferAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-bytes-[`IERC1363.transferAndCall`]]
  601. :xref-IERC1363-transferAndCall-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-bytes-
  602. :IERC1363-transferFromAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-[`IERC1363.transferFromAndCall`]]
  603. :xref-IERC1363-transferFromAndCall-address-address-uint256-: xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-
  604. :IERC1363-transferFromAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-bytes-[`IERC1363.transferFromAndCall`]]
  605. :xref-IERC1363-transferFromAndCall-address-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-bytes-
  606. :IERC1363-approveAndCall: pass:normal[xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-[`IERC1363.approveAndCall`]]
  607. :xref-IERC1363-approveAndCall-address-uint256-: xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-
  608. :IERC1363-approveAndCall: pass:normal[xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-bytes-[`IERC1363.approveAndCall`]]
  609. :xref-IERC1363-approveAndCall-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-bytes-
  610. :IERC1363Receiver: pass:normal[xref:interfaces.adoc#IERC1363Receiver[`IERC1363Receiver`]]
  611. :xref-IERC1363Receiver: xref:interfaces.adoc#IERC1363Receiver
  612. :IERC1363Receiver-onTransferReceived: pass:normal[xref:interfaces.adoc#IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-[`IERC1363Receiver.onTransferReceived`]]
  613. :xref-IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-: xref:interfaces.adoc#IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-
  614. :IERC1363Spender: pass:normal[xref:interfaces.adoc#IERC1363Spender[`IERC1363Spender`]]
  615. :xref-IERC1363Spender: xref:interfaces.adoc#IERC1363Spender
  616. :IERC1363Spender-onApprovalReceived: pass:normal[xref:interfaces.adoc#IERC1363Spender-onApprovalReceived-address-uint256-bytes-[`IERC1363Spender.onApprovalReceived`]]
  617. :xref-IERC1363Spender-onApprovalReceived-address-uint256-bytes-: xref:interfaces.adoc#IERC1363Spender-onApprovalReceived-address-uint256-bytes-
  618. :IERC2981: pass:normal[xref:interfaces.adoc#IERC2981[`IERC2981`]]
  619. :xref-IERC2981: xref:interfaces.adoc#IERC2981
  620. :IERC2981-royaltyInfo: pass:normal[xref:interfaces.adoc#IERC2981-royaltyInfo-uint256-uint256-[`IERC2981.royaltyInfo`]]
  621. :xref-IERC2981-royaltyInfo-uint256-uint256-: xref:interfaces.adoc#IERC2981-royaltyInfo-uint256-uint256-
  622. :IERC3156FlashBorrower: pass:normal[xref:interfaces.adoc#IERC3156FlashBorrower[`IERC3156FlashBorrower`]]
  623. :xref-IERC3156FlashBorrower: xref:interfaces.adoc#IERC3156FlashBorrower
  624. :IERC3156FlashBorrower-onFlashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-[`IERC3156FlashBorrower.onFlashLoan`]]
  625. :xref-IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-: xref:interfaces.adoc#IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-
  626. :IERC3156FlashLender: pass:normal[xref:interfaces.adoc#IERC3156FlashLender[`IERC3156FlashLender`]]
  627. :xref-IERC3156FlashLender: xref:interfaces.adoc#IERC3156FlashLender
  628. :IERC3156FlashLender-maxFlashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-maxFlashLoan-address-[`IERC3156FlashLender.maxFlashLoan`]]
  629. :xref-IERC3156FlashLender-maxFlashLoan-address-: xref:interfaces.adoc#IERC3156FlashLender-maxFlashLoan-address-
  630. :IERC3156FlashLender-flashFee: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-flashFee-address-uint256-[`IERC3156FlashLender.flashFee`]]
  631. :xref-IERC3156FlashLender-flashFee-address-uint256-: xref:interfaces.adoc#IERC3156FlashLender-flashFee-address-uint256-
  632. :IERC3156FlashLender-flashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-[`IERC3156FlashLender.flashLoan`]]
  633. :xref-IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-: xref:interfaces.adoc#IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-
  634. :IERC1822Proxiable: pass:normal[xref:interfaces.adoc#IERC1822Proxiable[`IERC1822Proxiable`]]
  635. :xref-IERC1822Proxiable: xref:interfaces.adoc#IERC1822Proxiable
  636. :IERC1822Proxiable-proxiableUUID: pass:normal[xref:interfaces.adoc#IERC1822Proxiable-proxiableUUID--[`IERC1822Proxiable.proxiableUUID`]]
  637. :xref-IERC1822Proxiable-proxiableUUID--: xref:interfaces.adoc#IERC1822Proxiable-proxiableUUID--
  638. :IERC2612: pass:normal[xref:interfaces.adoc#IERC2612[`IERC2612`]]
  639. :xref-IERC2612: xref:interfaces.adoc#IERC2612
  640. :ERC2771Context: pass:normal[xref:metatx.adoc#ERC2771Context[`ERC2771Context`]]
  641. :xref-ERC2771Context: xref:metatx.adoc#ERC2771Context
  642. :ERC2771Context-constructor: pass:normal[xref:metatx.adoc#ERC2771Context-constructor-address-[`ERC2771Context.constructor`]]
  643. :xref-ERC2771Context-constructor-address-: xref:metatx.adoc#ERC2771Context-constructor-address-
  644. :ERC2771Context-isTrustedForwarder: pass:normal[xref:metatx.adoc#ERC2771Context-isTrustedForwarder-address-[`ERC2771Context.isTrustedForwarder`]]
  645. :xref-ERC2771Context-isTrustedForwarder-address-: xref:metatx.adoc#ERC2771Context-isTrustedForwarder-address-
  646. :ERC2771Context-_msgSender: pass:normal[xref:metatx.adoc#ERC2771Context-_msgSender--[`ERC2771Context._msgSender`]]
  647. :xref-ERC2771Context-_msgSender--: xref:metatx.adoc#ERC2771Context-_msgSender--
  648. :ERC2771Context-_msgData: pass:normal[xref:metatx.adoc#ERC2771Context-_msgData--[`ERC2771Context._msgData`]]
  649. :xref-ERC2771Context-_msgData--: xref:metatx.adoc#ERC2771Context-_msgData--
  650. :MinimalForwarder: pass:normal[xref:metatx.adoc#MinimalForwarder[`MinimalForwarder`]]
  651. :xref-MinimalForwarder: xref:metatx.adoc#MinimalForwarder
  652. :MinimalForwarder-getNonce: pass:normal[xref:metatx.adoc#MinimalForwarder-getNonce-address-[`MinimalForwarder.getNonce`]]
  653. :xref-MinimalForwarder-getNonce-address-: xref:metatx.adoc#MinimalForwarder-getNonce-address-
  654. :MinimalForwarder-verify: pass:normal[xref:metatx.adoc#MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-[`MinimalForwarder.verify`]]
  655. :xref-MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-: xref:metatx.adoc#MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-
  656. :MinimalForwarder-execute: pass:normal[xref:metatx.adoc#MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-[`MinimalForwarder.execute`]]
  657. :xref-MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-: xref:metatx.adoc#MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-
  658. :MinimalForwarder-ForwardRequest: pass:normal[xref:metatx.adoc#MinimalForwarder-ForwardRequest[`MinimalForwarder.ForwardRequest`]]
  659. :xref-MinimalForwarder-ForwardRequest: xref:metatx.adoc#MinimalForwarder-ForwardRequest
  660. :Clones: pass:normal[xref:proxy.adoc#Clones[`Clones`]]
  661. :xref-Clones: xref:proxy.adoc#Clones
  662. :Clones-clone: pass:normal[xref:proxy.adoc#Clones-clone-address-[`Clones.clone`]]
  663. :xref-Clones-clone-address-: xref:proxy.adoc#Clones-clone-address-
  664. :Clones-cloneDeterministic: pass:normal[xref:proxy.adoc#Clones-cloneDeterministic-address-bytes32-[`Clones.cloneDeterministic`]]
  665. :xref-Clones-cloneDeterministic-address-bytes32-: xref:proxy.adoc#Clones-cloneDeterministic-address-bytes32-
  666. :Clones-predictDeterministicAddress: pass:normal[xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-address-[`Clones.predictDeterministicAddress`]]
  667. :xref-Clones-predictDeterministicAddress-address-bytes32-address-: xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-address-
  668. :Clones-predictDeterministicAddress: pass:normal[xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-[`Clones.predictDeterministicAddress`]]
  669. :xref-Clones-predictDeterministicAddress-address-bytes32-: xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-
  670. :ERC1967Proxy: pass:normal[xref:proxy.adoc#ERC1967Proxy[`ERC1967Proxy`]]
  671. :xref-ERC1967Proxy: xref:proxy.adoc#ERC1967Proxy
  672. :ERC1967Proxy-constructor: pass:normal[xref:proxy.adoc#ERC1967Proxy-constructor-address-bytes-[`ERC1967Proxy.constructor`]]
  673. :xref-ERC1967Proxy-constructor-address-bytes-: xref:proxy.adoc#ERC1967Proxy-constructor-address-bytes-
  674. :ERC1967Proxy-_implementation: pass:normal[xref:proxy.adoc#ERC1967Proxy-_implementation--[`ERC1967Proxy._implementation`]]
  675. :xref-ERC1967Proxy-_implementation--: xref:proxy.adoc#ERC1967Proxy-_implementation--
  676. :ERC1967Upgrade: pass:normal[xref:proxy.adoc#ERC1967Upgrade[`ERC1967Upgrade`]]
  677. :xref-ERC1967Upgrade: xref:proxy.adoc#ERC1967Upgrade
  678. :ERC1967Upgrade-_IMPLEMENTATION_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32[`ERC1967Upgrade._IMPLEMENTATION_SLOT`]]
  679. :xref-ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32
  680. :ERC1967Upgrade-_ADMIN_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_ADMIN_SLOT-bytes32[`ERC1967Upgrade._ADMIN_SLOT`]]
  681. :xref-ERC1967Upgrade-_ADMIN_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_ADMIN_SLOT-bytes32
  682. :ERC1967Upgrade-_BEACON_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_BEACON_SLOT-bytes32[`ERC1967Upgrade._BEACON_SLOT`]]
  683. :xref-ERC1967Upgrade-_BEACON_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_BEACON_SLOT-bytes32
  684. :ERC1967Upgrade-_getImplementation: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getImplementation--[`ERC1967Upgrade._getImplementation`]]
  685. :xref-ERC1967Upgrade-_getImplementation--: xref:proxy.adoc#ERC1967Upgrade-_getImplementation--
  686. :ERC1967Upgrade-_upgradeTo: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeTo-address-[`ERC1967Upgrade._upgradeTo`]]
  687. :xref-ERC1967Upgrade-_upgradeTo-address-: xref:proxy.adoc#ERC1967Upgrade-_upgradeTo-address-
  688. :ERC1967Upgrade-_upgradeToAndCall: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-[`ERC1967Upgrade._upgradeToAndCall`]]
  689. :xref-ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-
  690. :ERC1967Upgrade-_upgradeToAndCallUUPS: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-[`ERC1967Upgrade._upgradeToAndCallUUPS`]]
  691. :xref-ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-
  692. :ERC1967Upgrade-_getAdmin: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getAdmin--[`ERC1967Upgrade._getAdmin`]]
  693. :xref-ERC1967Upgrade-_getAdmin--: xref:proxy.adoc#ERC1967Upgrade-_getAdmin--
  694. :ERC1967Upgrade-_changeAdmin: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_changeAdmin-address-[`ERC1967Upgrade._changeAdmin`]]
  695. :xref-ERC1967Upgrade-_changeAdmin-address-: xref:proxy.adoc#ERC1967Upgrade-_changeAdmin-address-
  696. :ERC1967Upgrade-_getBeacon: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getBeacon--[`ERC1967Upgrade._getBeacon`]]
  697. :xref-ERC1967Upgrade-_getBeacon--: xref:proxy.adoc#ERC1967Upgrade-_getBeacon--
  698. :ERC1967Upgrade-_upgradeBeaconToAndCall: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-[`ERC1967Upgrade._upgradeBeaconToAndCall`]]
  699. :xref-ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-
  700. :ERC1967Upgrade-Upgraded: pass:normal[xref:proxy.adoc#ERC1967Upgrade-Upgraded-address-[`ERC1967Upgrade.Upgraded`]]
  701. :xref-ERC1967Upgrade-Upgraded-address-: xref:proxy.adoc#ERC1967Upgrade-Upgraded-address-
  702. :ERC1967Upgrade-AdminChanged: pass:normal[xref:proxy.adoc#ERC1967Upgrade-AdminChanged-address-address-[`ERC1967Upgrade.AdminChanged`]]
  703. :xref-ERC1967Upgrade-AdminChanged-address-address-: xref:proxy.adoc#ERC1967Upgrade-AdminChanged-address-address-
  704. :ERC1967Upgrade-BeaconUpgraded: pass:normal[xref:proxy.adoc#ERC1967Upgrade-BeaconUpgraded-address-[`ERC1967Upgrade.BeaconUpgraded`]]
  705. :xref-ERC1967Upgrade-BeaconUpgraded-address-: xref:proxy.adoc#ERC1967Upgrade-BeaconUpgraded-address-
  706. :Proxy: pass:normal[xref:proxy.adoc#Proxy[`Proxy`]]
  707. :xref-Proxy: xref:proxy.adoc#Proxy
  708. :Proxy-_delegate: pass:normal[xref:proxy.adoc#Proxy-_delegate-address-[`Proxy._delegate`]]
  709. :xref-Proxy-_delegate-address-: xref:proxy.adoc#Proxy-_delegate-address-
  710. :Proxy-_implementation: pass:normal[xref:proxy.adoc#Proxy-_implementation--[`Proxy._implementation`]]
  711. :xref-Proxy-_implementation--: xref:proxy.adoc#Proxy-_implementation--
  712. :Proxy-_fallback: pass:normal[xref:proxy.adoc#Proxy-_fallback--[`Proxy._fallback`]]
  713. :xref-Proxy-_fallback--: xref:proxy.adoc#Proxy-_fallback--
  714. :Proxy-fallback: pass:normal[xref:proxy.adoc#Proxy-fallback--[`Proxy.fallback`]]
  715. :xref-Proxy-fallback--: xref:proxy.adoc#Proxy-fallback--
  716. :Proxy-receive: pass:normal[xref:proxy.adoc#Proxy-receive--[`Proxy.receive`]]
  717. :xref-Proxy-receive--: xref:proxy.adoc#Proxy-receive--
  718. :Proxy-_beforeFallback: pass:normal[xref:proxy.adoc#Proxy-_beforeFallback--[`Proxy._beforeFallback`]]
  719. :xref-Proxy-_beforeFallback--: xref:proxy.adoc#Proxy-_beforeFallback--
  720. :BeaconProxy: pass:normal[xref:proxy.adoc#BeaconProxy[`BeaconProxy`]]
  721. :xref-BeaconProxy: xref:proxy.adoc#BeaconProxy
  722. :BeaconProxy-constructor: pass:normal[xref:proxy.adoc#BeaconProxy-constructor-address-bytes-[`BeaconProxy.constructor`]]
  723. :xref-BeaconProxy-constructor-address-bytes-: xref:proxy.adoc#BeaconProxy-constructor-address-bytes-
  724. :BeaconProxy-_beacon: pass:normal[xref:proxy.adoc#BeaconProxy-_beacon--[`BeaconProxy._beacon`]]
  725. :xref-BeaconProxy-_beacon--: xref:proxy.adoc#BeaconProxy-_beacon--
  726. :BeaconProxy-_implementation: pass:normal[xref:proxy.adoc#BeaconProxy-_implementation--[`BeaconProxy._implementation`]]
  727. :xref-BeaconProxy-_implementation--: xref:proxy.adoc#BeaconProxy-_implementation--
  728. :BeaconProxy-_setBeacon: pass:normal[xref:proxy.adoc#BeaconProxy-_setBeacon-address-bytes-[`BeaconProxy._setBeacon`]]
  729. :xref-BeaconProxy-_setBeacon-address-bytes-: xref:proxy.adoc#BeaconProxy-_setBeacon-address-bytes-
  730. :IBeacon: pass:normal[xref:proxy.adoc#IBeacon[`IBeacon`]]
  731. :xref-IBeacon: xref:proxy.adoc#IBeacon
  732. :IBeacon-implementation: pass:normal[xref:proxy.adoc#IBeacon-implementation--[`IBeacon.implementation`]]
  733. :xref-IBeacon-implementation--: xref:proxy.adoc#IBeacon-implementation--
  734. :UpgradeableBeacon: pass:normal[xref:proxy.adoc#UpgradeableBeacon[`UpgradeableBeacon`]]
  735. :xref-UpgradeableBeacon: xref:proxy.adoc#UpgradeableBeacon
  736. :UpgradeableBeacon-constructor: pass:normal[xref:proxy.adoc#UpgradeableBeacon-constructor-address-[`UpgradeableBeacon.constructor`]]
  737. :xref-UpgradeableBeacon-constructor-address-: xref:proxy.adoc#UpgradeableBeacon-constructor-address-
  738. :UpgradeableBeacon-implementation: pass:normal[xref:proxy.adoc#UpgradeableBeacon-implementation--[`UpgradeableBeacon.implementation`]]
  739. :xref-UpgradeableBeacon-implementation--: xref:proxy.adoc#UpgradeableBeacon-implementation--
  740. :UpgradeableBeacon-upgradeTo: pass:normal[xref:proxy.adoc#UpgradeableBeacon-upgradeTo-address-[`UpgradeableBeacon.upgradeTo`]]
  741. :xref-UpgradeableBeacon-upgradeTo-address-: xref:proxy.adoc#UpgradeableBeacon-upgradeTo-address-
  742. :UpgradeableBeacon-Upgraded: pass:normal[xref:proxy.adoc#UpgradeableBeacon-Upgraded-address-[`UpgradeableBeacon.Upgraded`]]
  743. :xref-UpgradeableBeacon-Upgraded-address-: xref:proxy.adoc#UpgradeableBeacon-Upgraded-address-
  744. :ProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin[`ProxyAdmin`]]
  745. :xref-ProxyAdmin: xref:proxy.adoc#ProxyAdmin
  746. :ProxyAdmin-getProxyImplementation: pass:normal[xref:proxy.adoc#ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-[`ProxyAdmin.getProxyImplementation`]]
  747. :xref-ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-: xref:proxy.adoc#ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-
  748. :ProxyAdmin-getProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-[`ProxyAdmin.getProxyAdmin`]]
  749. :xref-ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-: xref:proxy.adoc#ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-
  750. :ProxyAdmin-changeProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-[`ProxyAdmin.changeProxyAdmin`]]
  751. :xref-ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-: xref:proxy.adoc#ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-
  752. :ProxyAdmin-upgrade: pass:normal[xref:proxy.adoc#ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-[`ProxyAdmin.upgrade`]]
  753. :xref-ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-: xref:proxy.adoc#ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-
  754. :ProxyAdmin-upgradeAndCall: pass:normal[xref:proxy.adoc#ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-[`ProxyAdmin.upgradeAndCall`]]
  755. :xref-ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-: xref:proxy.adoc#ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-
  756. :TransparentUpgradeableProxy: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy[`TransparentUpgradeableProxy`]]
  757. :xref-TransparentUpgradeableProxy: xref:proxy.adoc#TransparentUpgradeableProxy
  758. :TransparentUpgradeableProxy-ifAdmin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-ifAdmin--[`TransparentUpgradeableProxy.ifAdmin`]]
  759. :xref-TransparentUpgradeableProxy-ifAdmin--: xref:proxy.adoc#TransparentUpgradeableProxy-ifAdmin--
  760. :TransparentUpgradeableProxy-constructor: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-constructor-address-address-bytes-[`TransparentUpgradeableProxy.constructor`]]
  761. :xref-TransparentUpgradeableProxy-constructor-address-address-bytes-: xref:proxy.adoc#TransparentUpgradeableProxy-constructor-address-address-bytes-
  762. :TransparentUpgradeableProxy-admin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-admin--[`TransparentUpgradeableProxy.admin`]]
  763. :xref-TransparentUpgradeableProxy-admin--: xref:proxy.adoc#TransparentUpgradeableProxy-admin--
  764. :TransparentUpgradeableProxy-implementation: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-implementation--[`TransparentUpgradeableProxy.implementation`]]
  765. :xref-TransparentUpgradeableProxy-implementation--: xref:proxy.adoc#TransparentUpgradeableProxy-implementation--
  766. :TransparentUpgradeableProxy-changeAdmin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-changeAdmin-address-[`TransparentUpgradeableProxy.changeAdmin`]]
  767. :xref-TransparentUpgradeableProxy-changeAdmin-address-: xref:proxy.adoc#TransparentUpgradeableProxy-changeAdmin-address-
  768. :TransparentUpgradeableProxy-upgradeTo: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-upgradeTo-address-[`TransparentUpgradeableProxy.upgradeTo`]]
  769. :xref-TransparentUpgradeableProxy-upgradeTo-address-: xref:proxy.adoc#TransparentUpgradeableProxy-upgradeTo-address-
  770. :TransparentUpgradeableProxy-upgradeToAndCall: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-[`TransparentUpgradeableProxy.upgradeToAndCall`]]
  771. :xref-TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-: xref:proxy.adoc#TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-
  772. :TransparentUpgradeableProxy-_admin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-_admin--[`TransparentUpgradeableProxy._admin`]]
  773. :xref-TransparentUpgradeableProxy-_admin--: xref:proxy.adoc#TransparentUpgradeableProxy-_admin--
  774. :TransparentUpgradeableProxy-_beforeFallback: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-_beforeFallback--[`TransparentUpgradeableProxy._beforeFallback`]]
  775. :xref-TransparentUpgradeableProxy-_beforeFallback--: xref:proxy.adoc#TransparentUpgradeableProxy-_beforeFallback--
  776. :Initializable: pass:normal[xref:proxy.adoc#Initializable[`Initializable`]]
  777. :xref-Initializable: xref:proxy.adoc#Initializable
  778. :Initializable-initializer: pass:normal[xref:proxy.adoc#Initializable-initializer--[`Initializable.initializer`]]
  779. :xref-Initializable-initializer--: xref:proxy.adoc#Initializable-initializer--
  780. :Initializable-onlyInitializing: pass:normal[xref:proxy.adoc#Initializable-onlyInitializing--[`Initializable.onlyInitializing`]]
  781. :xref-Initializable-onlyInitializing--: xref:proxy.adoc#Initializable-onlyInitializing--
  782. :UUPSUpgradeable: pass:normal[xref:proxy.adoc#UUPSUpgradeable[`UUPSUpgradeable`]]
  783. :xref-UUPSUpgradeable: xref:proxy.adoc#UUPSUpgradeable
  784. :UUPSUpgradeable-onlyProxy: pass:normal[xref:proxy.adoc#UUPSUpgradeable-onlyProxy--[`UUPSUpgradeable.onlyProxy`]]
  785. :xref-UUPSUpgradeable-onlyProxy--: xref:proxy.adoc#UUPSUpgradeable-onlyProxy--
  786. :UUPSUpgradeable-notDelegated: pass:normal[xref:proxy.adoc#UUPSUpgradeable-notDelegated--[`UUPSUpgradeable.notDelegated`]]
  787. :xref-UUPSUpgradeable-notDelegated--: xref:proxy.adoc#UUPSUpgradeable-notDelegated--
  788. :UUPSUpgradeable-proxiableUUID: pass:normal[xref:proxy.adoc#UUPSUpgradeable-proxiableUUID--[`UUPSUpgradeable.proxiableUUID`]]
  789. :xref-UUPSUpgradeable-proxiableUUID--: xref:proxy.adoc#UUPSUpgradeable-proxiableUUID--
  790. :UUPSUpgradeable-upgradeTo: pass:normal[xref:proxy.adoc#UUPSUpgradeable-upgradeTo-address-[`UUPSUpgradeable.upgradeTo`]]
  791. :xref-UUPSUpgradeable-upgradeTo-address-: xref:proxy.adoc#UUPSUpgradeable-upgradeTo-address-
  792. :UUPSUpgradeable-upgradeToAndCall: pass:normal[xref:proxy.adoc#UUPSUpgradeable-upgradeToAndCall-address-bytes-[`UUPSUpgradeable.upgradeToAndCall`]]
  793. :xref-UUPSUpgradeable-upgradeToAndCall-address-bytes-: xref:proxy.adoc#UUPSUpgradeable-upgradeToAndCall-address-bytes-
  794. :UUPSUpgradeable-_authorizeUpgrade: pass:normal[xref:proxy.adoc#UUPSUpgradeable-_authorizeUpgrade-address-[`UUPSUpgradeable._authorizeUpgrade`]]
  795. :xref-UUPSUpgradeable-_authorizeUpgrade-address-: xref:proxy.adoc#UUPSUpgradeable-_authorizeUpgrade-address-
  796. :Pausable: pass:normal[xref:security.adoc#Pausable[`Pausable`]]
  797. :xref-Pausable: xref:security.adoc#Pausable
  798. :Pausable-whenNotPaused: pass:normal[xref:security.adoc#Pausable-whenNotPaused--[`Pausable.whenNotPaused`]]
  799. :xref-Pausable-whenNotPaused--: xref:security.adoc#Pausable-whenNotPaused--
  800. :Pausable-whenPaused: pass:normal[xref:security.adoc#Pausable-whenPaused--[`Pausable.whenPaused`]]
  801. :xref-Pausable-whenPaused--: xref:security.adoc#Pausable-whenPaused--
  802. :Pausable-constructor: pass:normal[xref:security.adoc#Pausable-constructor--[`Pausable.constructor`]]
  803. :xref-Pausable-constructor--: xref:security.adoc#Pausable-constructor--
  804. :Pausable-paused: pass:normal[xref:security.adoc#Pausable-paused--[`Pausable.paused`]]
  805. :xref-Pausable-paused--: xref:security.adoc#Pausable-paused--
  806. :Pausable-_pause: pass:normal[xref:security.adoc#Pausable-_pause--[`Pausable._pause`]]
  807. :xref-Pausable-_pause--: xref:security.adoc#Pausable-_pause--
  808. :Pausable-_unpause: pass:normal[xref:security.adoc#Pausable-_unpause--[`Pausable._unpause`]]
  809. :xref-Pausable-_unpause--: xref:security.adoc#Pausable-_unpause--
  810. :Pausable-Paused: pass:normal[xref:security.adoc#Pausable-Paused-address-[`Pausable.Paused`]]
  811. :xref-Pausable-Paused-address-: xref:security.adoc#Pausable-Paused-address-
  812. :Pausable-Unpaused: pass:normal[xref:security.adoc#Pausable-Unpaused-address-[`Pausable.Unpaused`]]
  813. :xref-Pausable-Unpaused-address-: xref:security.adoc#Pausable-Unpaused-address-
  814. :PullPayment: pass:normal[xref:security.adoc#PullPayment[`PullPayment`]]
  815. :xref-PullPayment: xref:security.adoc#PullPayment
  816. :PullPayment-constructor: pass:normal[xref:security.adoc#PullPayment-constructor--[`PullPayment.constructor`]]
  817. :xref-PullPayment-constructor--: xref:security.adoc#PullPayment-constructor--
  818. :PullPayment-withdrawPayments: pass:normal[xref:security.adoc#PullPayment-withdrawPayments-address-payable-[`PullPayment.withdrawPayments`]]
  819. :xref-PullPayment-withdrawPayments-address-payable-: xref:security.adoc#PullPayment-withdrawPayments-address-payable-
  820. :PullPayment-payments: pass:normal[xref:security.adoc#PullPayment-payments-address-[`PullPayment.payments`]]
  821. :xref-PullPayment-payments-address-: xref:security.adoc#PullPayment-payments-address-
  822. :PullPayment-_asyncTransfer: pass:normal[xref:security.adoc#PullPayment-_asyncTransfer-address-uint256-[`PullPayment._asyncTransfer`]]
  823. :xref-PullPayment-_asyncTransfer-address-uint256-: xref:security.adoc#PullPayment-_asyncTransfer-address-uint256-
  824. :ReentrancyGuard: pass:normal[xref:security.adoc#ReentrancyGuard[`ReentrancyGuard`]]
  825. :xref-ReentrancyGuard: xref:security.adoc#ReentrancyGuard
  826. :ReentrancyGuard-nonReentrant: pass:normal[xref:security.adoc#ReentrancyGuard-nonReentrant--[`ReentrancyGuard.nonReentrant`]]
  827. :xref-ReentrancyGuard-nonReentrant--: xref:security.adoc#ReentrancyGuard-nonReentrant--
  828. :ReentrancyGuard-constructor: pass:normal[xref:security.adoc#ReentrancyGuard-constructor--[`ReentrancyGuard.constructor`]]
  829. :xref-ReentrancyGuard-constructor--: xref:security.adoc#ReentrancyGuard-constructor--
  830. :Address: pass:normal[xref:utils.adoc#Address[`Address`]]
  831. :xref-Address: xref:utils.adoc#Address
  832. :Address-isContract: pass:normal[xref:utils.adoc#Address-isContract-address-[`Address.isContract`]]
  833. :xref-Address-isContract-address-: xref:utils.adoc#Address-isContract-address-
  834. :Address-sendValue: pass:normal[xref:utils.adoc#Address-sendValue-address-payable-uint256-[`Address.sendValue`]]
  835. :xref-Address-sendValue-address-payable-uint256-: xref:utils.adoc#Address-sendValue-address-payable-uint256-
  836. :Address-functionCall: pass:normal[xref:utils.adoc#Address-functionCall-address-bytes-[`Address.functionCall`]]
  837. :xref-Address-functionCall-address-bytes-: xref:utils.adoc#Address-functionCall-address-bytes-
  838. :Address-functionCall: pass:normal[xref:utils.adoc#Address-functionCall-address-bytes-string-[`Address.functionCall`]]
  839. :xref-Address-functionCall-address-bytes-string-: xref:utils.adoc#Address-functionCall-address-bytes-string-
  840. :Address-functionCallWithValue: pass:normal[xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-[`Address.functionCallWithValue`]]
  841. :xref-Address-functionCallWithValue-address-bytes-uint256-: xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-
  842. :Address-functionCallWithValue: pass:normal[xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-string-[`Address.functionCallWithValue`]]
  843. :xref-Address-functionCallWithValue-address-bytes-uint256-string-: xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-string-
  844. :Address-functionStaticCall: pass:normal[xref:utils.adoc#Address-functionStaticCall-address-bytes-[`Address.functionStaticCall`]]
  845. :xref-Address-functionStaticCall-address-bytes-: xref:utils.adoc#Address-functionStaticCall-address-bytes-
  846. :Address-functionStaticCall: pass:normal[xref:utils.adoc#Address-functionStaticCall-address-bytes-string-[`Address.functionStaticCall`]]
  847. :xref-Address-functionStaticCall-address-bytes-string-: xref:utils.adoc#Address-functionStaticCall-address-bytes-string-
  848. :Address-functionDelegateCall: pass:normal[xref:utils.adoc#Address-functionDelegateCall-address-bytes-[`Address.functionDelegateCall`]]
  849. :xref-Address-functionDelegateCall-address-bytes-: xref:utils.adoc#Address-functionDelegateCall-address-bytes-
  850. :Address-functionDelegateCall: pass:normal[xref:utils.adoc#Address-functionDelegateCall-address-bytes-string-[`Address.functionDelegateCall`]]
  851. :xref-Address-functionDelegateCall-address-bytes-string-: xref:utils.adoc#Address-functionDelegateCall-address-bytes-string-
  852. :Address-verifyCallResult: pass:normal[xref:utils.adoc#Address-verifyCallResult-bool-bytes-string-[`Address.verifyCallResult`]]
  853. :xref-Address-verifyCallResult-bool-bytes-string-: xref:utils.adoc#Address-verifyCallResult-bool-bytes-string-
  854. :Arrays: pass:normal[xref:utils.adoc#Arrays[`Arrays`]]
  855. :xref-Arrays: xref:utils.adoc#Arrays
  856. :Arrays-findUpperBound: pass:normal[xref:utils.adoc#Arrays-findUpperBound-uint256---uint256-[`Arrays.findUpperBound`]]
  857. :xref-Arrays-findUpperBound-uint256---uint256-: xref:utils.adoc#Arrays-findUpperBound-uint256---uint256-
  858. :Base64: pass:normal[xref:utils.adoc#Base64[`Base64`]]
  859. :xref-Base64: xref:utils.adoc#Base64
  860. :Base64-_TABLE: pass:normal[xref:utils.adoc#Base64-_TABLE-string[`Base64._TABLE`]]
  861. :xref-Base64-_TABLE-string: xref:utils.adoc#Base64-_TABLE-string
  862. :Base64-encode: pass:normal[xref:utils.adoc#Base64-encode-bytes-[`Base64.encode`]]
  863. :xref-Base64-encode-bytes-: xref:utils.adoc#Base64-encode-bytes-
  864. :Checkpoints: pass:normal[xref:utils.adoc#Checkpoints[`Checkpoints`]]
  865. :xref-Checkpoints: xref:utils.adoc#Checkpoints
  866. :Checkpoints-latest: pass:normal[xref:utils.adoc#Checkpoints-latest-struct-Checkpoints-History-[`Checkpoints.latest`]]
  867. :xref-Checkpoints-latest-struct-Checkpoints-History-: xref:utils.adoc#Checkpoints-latest-struct-Checkpoints-History-
  868. :Checkpoints-getAtBlock: pass:normal[xref:utils.adoc#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-[`Checkpoints.getAtBlock`]]
  869. :xref-Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-: xref:utils.adoc#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-
  870. :Checkpoints-push: pass:normal[xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-uint256-[`Checkpoints.push`]]
  871. :xref-Checkpoints-push-struct-Checkpoints-History-uint256-: xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-uint256-
  872. :Checkpoints-push: pass:normal[xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-[`Checkpoints.push`]]
  873. :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-
  874. :Checkpoints-Checkpoint: pass:normal[xref:utils.adoc#Checkpoints-Checkpoint[`Checkpoints.Checkpoint`]]
  875. :xref-Checkpoints-Checkpoint: xref:utils.adoc#Checkpoints-Checkpoint
  876. :Checkpoints-History: pass:normal[xref:utils.adoc#Checkpoints-History[`Checkpoints.History`]]
  877. :xref-Checkpoints-History: xref:utils.adoc#Checkpoints-History
  878. :Context: pass:normal[xref:utils.adoc#Context[`Context`]]
  879. :xref-Context: xref:utils.adoc#Context
  880. :Context-_msgSender: pass:normal[xref:utils.adoc#Context-_msgSender--[`Context._msgSender`]]
  881. :xref-Context-_msgSender--: xref:utils.adoc#Context-_msgSender--
  882. :Context-_msgData: pass:normal[xref:utils.adoc#Context-_msgData--[`Context._msgData`]]
  883. :xref-Context-_msgData--: xref:utils.adoc#Context-_msgData--
  884. :Counters: pass:normal[xref:utils.adoc#Counters[`Counters`]]
  885. :xref-Counters: xref:utils.adoc#Counters
  886. :Counters-current: pass:normal[xref:utils.adoc#Counters-current-struct-Counters-Counter-[`Counters.current`]]
  887. :xref-Counters-current-struct-Counters-Counter-: xref:utils.adoc#Counters-current-struct-Counters-Counter-
  888. :Counters-increment: pass:normal[xref:utils.adoc#Counters-increment-struct-Counters-Counter-[`Counters.increment`]]
  889. :xref-Counters-increment-struct-Counters-Counter-: xref:utils.adoc#Counters-increment-struct-Counters-Counter-
  890. :Counters-decrement: pass:normal[xref:utils.adoc#Counters-decrement-struct-Counters-Counter-[`Counters.decrement`]]
  891. :xref-Counters-decrement-struct-Counters-Counter-: xref:utils.adoc#Counters-decrement-struct-Counters-Counter-
  892. :Counters-reset: pass:normal[xref:utils.adoc#Counters-reset-struct-Counters-Counter-[`Counters.reset`]]
  893. :xref-Counters-reset-struct-Counters-Counter-: xref:utils.adoc#Counters-reset-struct-Counters-Counter-
  894. :Counters-Counter: pass:normal[xref:utils.adoc#Counters-Counter[`Counters.Counter`]]
  895. :xref-Counters-Counter: xref:utils.adoc#Counters-Counter
  896. :Create2: pass:normal[xref:utils.adoc#Create2[`Create2`]]
  897. :xref-Create2: xref:utils.adoc#Create2
  898. :Create2-deploy: pass:normal[xref:utils.adoc#Create2-deploy-uint256-bytes32-bytes-[`Create2.deploy`]]
  899. :xref-Create2-deploy-uint256-bytes32-bytes-: xref:utils.adoc#Create2-deploy-uint256-bytes32-bytes-
  900. :Create2-computeAddress: pass:normal[xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-[`Create2.computeAddress`]]
  901. :xref-Create2-computeAddress-bytes32-bytes32-: xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-
  902. :Create2-computeAddress: pass:normal[xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-address-[`Create2.computeAddress`]]
  903. :xref-Create2-computeAddress-bytes32-bytes32-address-: xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-address-
  904. :Multicall: pass:normal[xref:utils.adoc#Multicall[`Multicall`]]
  905. :xref-Multicall: xref:utils.adoc#Multicall
  906. :Multicall-multicall: pass:normal[xref:utils.adoc#Multicall-multicall-bytes---[`Multicall.multicall`]]
  907. :xref-Multicall-multicall-bytes---: xref:utils.adoc#Multicall-multicall-bytes---
  908. :StorageSlot: pass:normal[xref:utils.adoc#StorageSlot[`StorageSlot`]]
  909. :xref-StorageSlot: xref:utils.adoc#StorageSlot
  910. :StorageSlot-getAddressSlot: pass:normal[xref:utils.adoc#StorageSlot-getAddressSlot-bytes32-[`StorageSlot.getAddressSlot`]]
  911. :xref-StorageSlot-getAddressSlot-bytes32-: xref:utils.adoc#StorageSlot-getAddressSlot-bytes32-
  912. :StorageSlot-getBooleanSlot: pass:normal[xref:utils.adoc#StorageSlot-getBooleanSlot-bytes32-[`StorageSlot.getBooleanSlot`]]
  913. :xref-StorageSlot-getBooleanSlot-bytes32-: xref:utils.adoc#StorageSlot-getBooleanSlot-bytes32-
  914. :StorageSlot-getBytes32Slot: pass:normal[xref:utils.adoc#StorageSlot-getBytes32Slot-bytes32-[`StorageSlot.getBytes32Slot`]]
  915. :xref-StorageSlot-getBytes32Slot-bytes32-: xref:utils.adoc#StorageSlot-getBytes32Slot-bytes32-
  916. :StorageSlot-getUint256Slot: pass:normal[xref:utils.adoc#StorageSlot-getUint256Slot-bytes32-[`StorageSlot.getUint256Slot`]]
  917. :xref-StorageSlot-getUint256Slot-bytes32-: xref:utils.adoc#StorageSlot-getUint256Slot-bytes32-
  918. :StorageSlot-AddressSlot: pass:normal[xref:utils.adoc#StorageSlot-AddressSlot[`StorageSlot.AddressSlot`]]
  919. :xref-StorageSlot-AddressSlot: xref:utils.adoc#StorageSlot-AddressSlot
  920. :StorageSlot-BooleanSlot: pass:normal[xref:utils.adoc#StorageSlot-BooleanSlot[`StorageSlot.BooleanSlot`]]
  921. :xref-StorageSlot-BooleanSlot: xref:utils.adoc#StorageSlot-BooleanSlot
  922. :StorageSlot-Bytes32Slot: pass:normal[xref:utils.adoc#StorageSlot-Bytes32Slot[`StorageSlot.Bytes32Slot`]]
  923. :xref-StorageSlot-Bytes32Slot: xref:utils.adoc#StorageSlot-Bytes32Slot
  924. :StorageSlot-Uint256Slot: pass:normal[xref:utils.adoc#StorageSlot-Uint256Slot[`StorageSlot.Uint256Slot`]]
  925. :xref-StorageSlot-Uint256Slot: xref:utils.adoc#StorageSlot-Uint256Slot
  926. :Strings: pass:normal[xref:utils.adoc#Strings[`Strings`]]
  927. :xref-Strings: xref:utils.adoc#Strings
  928. :Strings-toString: pass:normal[xref:utils.adoc#Strings-toString-uint256-[`Strings.toString`]]
  929. :xref-Strings-toString-uint256-: xref:utils.adoc#Strings-toString-uint256-
  930. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-uint256-[`Strings.toHexString`]]
  931. :xref-Strings-toHexString-uint256-: xref:utils.adoc#Strings-toHexString-uint256-
  932. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-uint256-uint256-[`Strings.toHexString`]]
  933. :xref-Strings-toHexString-uint256-uint256-: xref:utils.adoc#Strings-toHexString-uint256-uint256-
  934. :Timers: pass:normal[xref:utils.adoc#Timers[`Timers`]]
  935. :xref-Timers: xref:utils.adoc#Timers
  936. :Timers-getDeadline: pass:normal[xref:utils.adoc#Timers-getDeadline-struct-Timers-Timestamp-[`Timers.getDeadline`]]
  937. :xref-Timers-getDeadline-struct-Timers-Timestamp-: xref:utils.adoc#Timers-getDeadline-struct-Timers-Timestamp-
  938. :Timers-setDeadline: pass:normal[xref:utils.adoc#Timers-setDeadline-struct-Timers-Timestamp-uint64-[`Timers.setDeadline`]]
  939. :xref-Timers-setDeadline-struct-Timers-Timestamp-uint64-: xref:utils.adoc#Timers-setDeadline-struct-Timers-Timestamp-uint64-
  940. :Timers-reset: pass:normal[xref:utils.adoc#Timers-reset-struct-Timers-Timestamp-[`Timers.reset`]]
  941. :xref-Timers-reset-struct-Timers-Timestamp-: xref:utils.adoc#Timers-reset-struct-Timers-Timestamp-
  942. :Timers-isUnset: pass:normal[xref:utils.adoc#Timers-isUnset-struct-Timers-Timestamp-[`Timers.isUnset`]]
  943. :xref-Timers-isUnset-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isUnset-struct-Timers-Timestamp-
  944. :Timers-isStarted: pass:normal[xref:utils.adoc#Timers-isStarted-struct-Timers-Timestamp-[`Timers.isStarted`]]
  945. :xref-Timers-isStarted-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isStarted-struct-Timers-Timestamp-
  946. :Timers-isPending: pass:normal[xref:utils.adoc#Timers-isPending-struct-Timers-Timestamp-[`Timers.isPending`]]
  947. :xref-Timers-isPending-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isPending-struct-Timers-Timestamp-
  948. :Timers-isExpired: pass:normal[xref:utils.adoc#Timers-isExpired-struct-Timers-Timestamp-[`Timers.isExpired`]]
  949. :xref-Timers-isExpired-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isExpired-struct-Timers-Timestamp-
  950. :Timers-getDeadline: pass:normal[xref:utils.adoc#Timers-getDeadline-struct-Timers-BlockNumber-[`Timers.getDeadline`]]
  951. :xref-Timers-getDeadline-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-getDeadline-struct-Timers-BlockNumber-
  952. :Timers-setDeadline: pass:normal[xref:utils.adoc#Timers-setDeadline-struct-Timers-BlockNumber-uint64-[`Timers.setDeadline`]]
  953. :xref-Timers-setDeadline-struct-Timers-BlockNumber-uint64-: xref:utils.adoc#Timers-setDeadline-struct-Timers-BlockNumber-uint64-
  954. :Timers-reset: pass:normal[xref:utils.adoc#Timers-reset-struct-Timers-BlockNumber-[`Timers.reset`]]
  955. :xref-Timers-reset-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-reset-struct-Timers-BlockNumber-
  956. :Timers-isUnset: pass:normal[xref:utils.adoc#Timers-isUnset-struct-Timers-BlockNumber-[`Timers.isUnset`]]
  957. :xref-Timers-isUnset-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isUnset-struct-Timers-BlockNumber-
  958. :Timers-isStarted: pass:normal[xref:utils.adoc#Timers-isStarted-struct-Timers-BlockNumber-[`Timers.isStarted`]]
  959. :xref-Timers-isStarted-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isStarted-struct-Timers-BlockNumber-
  960. :Timers-isPending: pass:normal[xref:utils.adoc#Timers-isPending-struct-Timers-BlockNumber-[`Timers.isPending`]]
  961. :xref-Timers-isPending-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isPending-struct-Timers-BlockNumber-
  962. :Timers-isExpired: pass:normal[xref:utils.adoc#Timers-isExpired-struct-Timers-BlockNumber-[`Timers.isExpired`]]
  963. :xref-Timers-isExpired-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isExpired-struct-Timers-BlockNumber-
  964. :Timers-Timestamp: pass:normal[xref:utils.adoc#Timers-Timestamp[`Timers.Timestamp`]]
  965. :xref-Timers-Timestamp: xref:utils.adoc#Timers-Timestamp
  966. :Timers-BlockNumber: pass:normal[xref:utils.adoc#Timers-BlockNumber[`Timers.BlockNumber`]]
  967. :xref-Timers-BlockNumber: xref:utils.adoc#Timers-BlockNumber
  968. :ECDSA: pass:normal[xref:utils.adoc#ECDSA[`ECDSA`]]
  969. :xref-ECDSA: xref:utils.adoc#ECDSA
  970. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes-[`ECDSA.tryRecover`]]
  971. :xref-ECDSA-tryRecover-bytes32-bytes-: xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes-
  972. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-bytes-[`ECDSA.recover`]]
  973. :xref-ECDSA-recover-bytes32-bytes-: xref:utils.adoc#ECDSA-recover-bytes32-bytes-
  974. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes32-bytes32-[`ECDSA.tryRecover`]]
  975. :xref-ECDSA-tryRecover-bytes32-bytes32-bytes32-: xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes32-bytes32-
  976. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-bytes32-bytes32-[`ECDSA.recover`]]
  977. :xref-ECDSA-recover-bytes32-bytes32-bytes32-: xref:utils.adoc#ECDSA-recover-bytes32-bytes32-bytes32-
  978. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-[`ECDSA.tryRecover`]]
  979. :xref-ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-: xref:utils.adoc#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-
  980. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-uint8-bytes32-bytes32-[`ECDSA.recover`]]
  981. :xref-ECDSA-recover-bytes32-uint8-bytes32-bytes32-: xref:utils.adoc#ECDSA-recover-bytes32-uint8-bytes32-bytes32-
  982. :ECDSA-toEthSignedMessageHash: pass:normal[xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes32-[`ECDSA.toEthSignedMessageHash`]]
  983. :xref-ECDSA-toEthSignedMessageHash-bytes32-: xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes32-
  984. :ECDSA-toEthSignedMessageHash: pass:normal[xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes-[`ECDSA.toEthSignedMessageHash`]]
  985. :xref-ECDSA-toEthSignedMessageHash-bytes-: xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes-
  986. :ECDSA-toTypedDataHash: pass:normal[xref:utils.adoc#ECDSA-toTypedDataHash-bytes32-bytes32-[`ECDSA.toTypedDataHash`]]
  987. :xref-ECDSA-toTypedDataHash-bytes32-bytes32-: xref:utils.adoc#ECDSA-toTypedDataHash-bytes32-bytes32-
  988. :ECDSA-RecoverError: pass:normal[xref:utils.adoc#ECDSA-RecoverError[`ECDSA.RecoverError`]]
  989. :xref-ECDSA-RecoverError: xref:utils.adoc#ECDSA-RecoverError
  990. :MerkleProof: pass:normal[xref:utils.adoc#MerkleProof[`MerkleProof`]]
  991. :xref-MerkleProof: xref:utils.adoc#MerkleProof
  992. :MerkleProof-verify: pass:normal[xref:utils.adoc#MerkleProof-verify-bytes32---bytes32-bytes32-[`MerkleProof.verify`]]
  993. :xref-MerkleProof-verify-bytes32---bytes32-bytes32-: xref:utils.adoc#MerkleProof-verify-bytes32---bytes32-bytes32-
  994. :MerkleProof-processProof: pass:normal[xref:utils.adoc#MerkleProof-processProof-bytes32---bytes32-[`MerkleProof.processProof`]]
  995. :xref-MerkleProof-processProof-bytes32---bytes32-: xref:utils.adoc#MerkleProof-processProof-bytes32---bytes32-
  996. :SignatureChecker: pass:normal[xref:utils.adoc#SignatureChecker[`SignatureChecker`]]
  997. :xref-SignatureChecker: xref:utils.adoc#SignatureChecker
  998. :SignatureChecker-isValidSignatureNow: pass:normal[xref:utils.adoc#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-[`SignatureChecker.isValidSignatureNow`]]
  999. :xref-SignatureChecker-isValidSignatureNow-address-bytes32-bytes-: xref:utils.adoc#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-
  1000. :EIP712: pass:normal[xref:utils.adoc#EIP712[`EIP712`]]
  1001. :xref-EIP712: xref:utils.adoc#EIP712
  1002. :EIP712-constructor: pass:normal[xref:utils.adoc#EIP712-constructor-string-string-[`EIP712.constructor`]]
  1003. :xref-EIP712-constructor-string-string-: xref:utils.adoc#EIP712-constructor-string-string-
  1004. :EIP712-_domainSeparatorV4: pass:normal[xref:utils.adoc#EIP712-_domainSeparatorV4--[`EIP712._domainSeparatorV4`]]
  1005. :xref-EIP712-_domainSeparatorV4--: xref:utils.adoc#EIP712-_domainSeparatorV4--
  1006. :EIP712-_hashTypedDataV4: pass:normal[xref:utils.adoc#EIP712-_hashTypedDataV4-bytes32-[`EIP712._hashTypedDataV4`]]
  1007. :xref-EIP712-_hashTypedDataV4-bytes32-: xref:utils.adoc#EIP712-_hashTypedDataV4-bytes32-
  1008. :ConditionalEscrow: pass:normal[xref:utils.adoc#ConditionalEscrow[`ConditionalEscrow`]]
  1009. :xref-ConditionalEscrow: xref:utils.adoc#ConditionalEscrow
  1010. :ConditionalEscrow-withdrawalAllowed: pass:normal[xref:utils.adoc#ConditionalEscrow-withdrawalAllowed-address-[`ConditionalEscrow.withdrawalAllowed`]]
  1011. :xref-ConditionalEscrow-withdrawalAllowed-address-: xref:utils.adoc#ConditionalEscrow-withdrawalAllowed-address-
  1012. :ConditionalEscrow-withdraw: pass:normal[xref:utils.adoc#ConditionalEscrow-withdraw-address-payable-[`ConditionalEscrow.withdraw`]]
  1013. :xref-ConditionalEscrow-withdraw-address-payable-: xref:utils.adoc#ConditionalEscrow-withdraw-address-payable-
  1014. :Escrow: pass:normal[xref:utils.adoc#Escrow[`Escrow`]]
  1015. :xref-Escrow: xref:utils.adoc#Escrow
  1016. :Escrow-depositsOf: pass:normal[xref:utils.adoc#Escrow-depositsOf-address-[`Escrow.depositsOf`]]
  1017. :xref-Escrow-depositsOf-address-: xref:utils.adoc#Escrow-depositsOf-address-
  1018. :Escrow-deposit: pass:normal[xref:utils.adoc#Escrow-deposit-address-[`Escrow.deposit`]]
  1019. :xref-Escrow-deposit-address-: xref:utils.adoc#Escrow-deposit-address-
  1020. :Escrow-withdraw: pass:normal[xref:utils.adoc#Escrow-withdraw-address-payable-[`Escrow.withdraw`]]
  1021. :xref-Escrow-withdraw-address-payable-: xref:utils.adoc#Escrow-withdraw-address-payable-
  1022. :Escrow-Deposited: pass:normal[xref:utils.adoc#Escrow-Deposited-address-uint256-[`Escrow.Deposited`]]
  1023. :xref-Escrow-Deposited-address-uint256-: xref:utils.adoc#Escrow-Deposited-address-uint256-
  1024. :Escrow-Withdrawn: pass:normal[xref:utils.adoc#Escrow-Withdrawn-address-uint256-[`Escrow.Withdrawn`]]
  1025. :xref-Escrow-Withdrawn-address-uint256-: xref:utils.adoc#Escrow-Withdrawn-address-uint256-
  1026. :RefundEscrow: pass:normal[xref:utils.adoc#RefundEscrow[`RefundEscrow`]]
  1027. :xref-RefundEscrow: xref:utils.adoc#RefundEscrow
  1028. :RefundEscrow-constructor: pass:normal[xref:utils.adoc#RefundEscrow-constructor-address-payable-[`RefundEscrow.constructor`]]
  1029. :xref-RefundEscrow-constructor-address-payable-: xref:utils.adoc#RefundEscrow-constructor-address-payable-
  1030. :RefundEscrow-state: pass:normal[xref:utils.adoc#RefundEscrow-state--[`RefundEscrow.state`]]
  1031. :xref-RefundEscrow-state--: xref:utils.adoc#RefundEscrow-state--
  1032. :RefundEscrow-beneficiary: pass:normal[xref:utils.adoc#RefundEscrow-beneficiary--[`RefundEscrow.beneficiary`]]
  1033. :xref-RefundEscrow-beneficiary--: xref:utils.adoc#RefundEscrow-beneficiary--
  1034. :RefundEscrow-deposit: pass:normal[xref:utils.adoc#RefundEscrow-deposit-address-[`RefundEscrow.deposit`]]
  1035. :xref-RefundEscrow-deposit-address-: xref:utils.adoc#RefundEscrow-deposit-address-
  1036. :RefundEscrow-close: pass:normal[xref:utils.adoc#RefundEscrow-close--[`RefundEscrow.close`]]
  1037. :xref-RefundEscrow-close--: xref:utils.adoc#RefundEscrow-close--
  1038. :RefundEscrow-enableRefunds: pass:normal[xref:utils.adoc#RefundEscrow-enableRefunds--[`RefundEscrow.enableRefunds`]]
  1039. :xref-RefundEscrow-enableRefunds--: xref:utils.adoc#RefundEscrow-enableRefunds--
  1040. :RefundEscrow-beneficiaryWithdraw: pass:normal[xref:utils.adoc#RefundEscrow-beneficiaryWithdraw--[`RefundEscrow.beneficiaryWithdraw`]]
  1041. :xref-RefundEscrow-beneficiaryWithdraw--: xref:utils.adoc#RefundEscrow-beneficiaryWithdraw--
  1042. :RefundEscrow-withdrawalAllowed: pass:normal[xref:utils.adoc#RefundEscrow-withdrawalAllowed-address-[`RefundEscrow.withdrawalAllowed`]]
  1043. :xref-RefundEscrow-withdrawalAllowed-address-: xref:utils.adoc#RefundEscrow-withdrawalAllowed-address-
  1044. :RefundEscrow-RefundsClosed: pass:normal[xref:utils.adoc#RefundEscrow-RefundsClosed--[`RefundEscrow.RefundsClosed`]]
  1045. :xref-RefundEscrow-RefundsClosed--: xref:utils.adoc#RefundEscrow-RefundsClosed--
  1046. :RefundEscrow-RefundsEnabled: pass:normal[xref:utils.adoc#RefundEscrow-RefundsEnabled--[`RefundEscrow.RefundsEnabled`]]
  1047. :xref-RefundEscrow-RefundsEnabled--: xref:utils.adoc#RefundEscrow-RefundsEnabled--
  1048. :RefundEscrow-State: pass:normal[xref:utils.adoc#RefundEscrow-State[`RefundEscrow.State`]]
  1049. :xref-RefundEscrow-State: xref:utils.adoc#RefundEscrow-State
  1050. :ERC165: pass:normal[xref:utils.adoc#ERC165[`ERC165`]]
  1051. :xref-ERC165: xref:utils.adoc#ERC165
  1052. :ERC165-supportsInterface: pass:normal[xref:utils.adoc#ERC165-supportsInterface-bytes4-[`ERC165.supportsInterface`]]
  1053. :xref-ERC165-supportsInterface-bytes4-: xref:utils.adoc#ERC165-supportsInterface-bytes4-
  1054. :ERC165Checker: pass:normal[xref:utils.adoc#ERC165Checker[`ERC165Checker`]]
  1055. :xref-ERC165Checker: xref:utils.adoc#ERC165Checker
  1056. :ERC165Checker-supportsERC165: pass:normal[xref:utils.adoc#ERC165Checker-supportsERC165-address-[`ERC165Checker.supportsERC165`]]
  1057. :xref-ERC165Checker-supportsERC165-address-: xref:utils.adoc#ERC165Checker-supportsERC165-address-
  1058. :ERC165Checker-supportsInterface: pass:normal[xref:utils.adoc#ERC165Checker-supportsInterface-address-bytes4-[`ERC165Checker.supportsInterface`]]
  1059. :xref-ERC165Checker-supportsInterface-address-bytes4-: xref:utils.adoc#ERC165Checker-supportsInterface-address-bytes4-
  1060. :ERC165Checker-getSupportedInterfaces: pass:normal[xref:utils.adoc#ERC165Checker-getSupportedInterfaces-address-bytes4---[`ERC165Checker.getSupportedInterfaces`]]
  1061. :xref-ERC165Checker-getSupportedInterfaces-address-bytes4---: xref:utils.adoc#ERC165Checker-getSupportedInterfaces-address-bytes4---
  1062. :ERC165Checker-supportsAllInterfaces: pass:normal[xref:utils.adoc#ERC165Checker-supportsAllInterfaces-address-bytes4---[`ERC165Checker.supportsAllInterfaces`]]
  1063. :xref-ERC165Checker-supportsAllInterfaces-address-bytes4---: xref:utils.adoc#ERC165Checker-supportsAllInterfaces-address-bytes4---
  1064. :ERC165Storage: pass:normal[xref:utils.adoc#ERC165Storage[`ERC165Storage`]]
  1065. :xref-ERC165Storage: xref:utils.adoc#ERC165Storage
  1066. :ERC165Storage-supportsInterface: pass:normal[xref:utils.adoc#ERC165Storage-supportsInterface-bytes4-[`ERC165Storage.supportsInterface`]]
  1067. :xref-ERC165Storage-supportsInterface-bytes4-: xref:utils.adoc#ERC165Storage-supportsInterface-bytes4-
  1068. :ERC165Storage-_registerInterface: pass:normal[xref:utils.adoc#ERC165Storage-_registerInterface-bytes4-[`ERC165Storage._registerInterface`]]
  1069. :xref-ERC165Storage-_registerInterface-bytes4-: xref:utils.adoc#ERC165Storage-_registerInterface-bytes4-
  1070. :ERC1820Implementer: pass:normal[xref:utils.adoc#ERC1820Implementer[`ERC1820Implementer`]]
  1071. :xref-ERC1820Implementer: xref:utils.adoc#ERC1820Implementer
  1072. :ERC1820Implementer-canImplementInterfaceForAddress: pass:normal[xref:utils.adoc#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`ERC1820Implementer.canImplementInterfaceForAddress`]]
  1073. :xref-ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-: xref:utils.adoc#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-
  1074. :ERC1820Implementer-_registerInterfaceForAddress: pass:normal[xref:utils.adoc#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-[`ERC1820Implementer._registerInterfaceForAddress`]]
  1075. :xref-ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-: xref:utils.adoc#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-
  1076. :IERC165: pass:normal[xref:utils.adoc#IERC165[`IERC165`]]
  1077. :xref-IERC165: xref:utils.adoc#IERC165
  1078. :IERC165-supportsInterface: pass:normal[xref:utils.adoc#IERC165-supportsInterface-bytes4-[`IERC165.supportsInterface`]]
  1079. :xref-IERC165-supportsInterface-bytes4-: xref:utils.adoc#IERC165-supportsInterface-bytes4-
  1080. :IERC1820Implementer: pass:normal[xref:utils.adoc#IERC1820Implementer[`IERC1820Implementer`]]
  1081. :xref-IERC1820Implementer: xref:utils.adoc#IERC1820Implementer
  1082. :IERC1820Implementer-canImplementInterfaceForAddress: pass:normal[xref:utils.adoc#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`IERC1820Implementer.canImplementInterfaceForAddress`]]
  1083. :xref-IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-: xref:utils.adoc#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-
  1084. :IERC1820Registry: pass:normal[xref:utils.adoc#IERC1820Registry[`IERC1820Registry`]]
  1085. :xref-IERC1820Registry: xref:utils.adoc#IERC1820Registry
  1086. :IERC1820Registry-setManager: pass:normal[xref:utils.adoc#IERC1820Registry-setManager-address-address-[`IERC1820Registry.setManager`]]
  1087. :xref-IERC1820Registry-setManager-address-address-: xref:utils.adoc#IERC1820Registry-setManager-address-address-
  1088. :IERC1820Registry-getManager: pass:normal[xref:utils.adoc#IERC1820Registry-getManager-address-[`IERC1820Registry.getManager`]]
  1089. :xref-IERC1820Registry-getManager-address-: xref:utils.adoc#IERC1820Registry-getManager-address-
  1090. :IERC1820Registry-setInterfaceImplementer: pass:normal[xref:utils.adoc#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-[`IERC1820Registry.setInterfaceImplementer`]]
  1091. :xref-IERC1820Registry-setInterfaceImplementer-address-bytes32-address-: xref:utils.adoc#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-
  1092. :IERC1820Registry-getInterfaceImplementer: pass:normal[xref:utils.adoc#IERC1820Registry-getInterfaceImplementer-address-bytes32-[`IERC1820Registry.getInterfaceImplementer`]]
  1093. :xref-IERC1820Registry-getInterfaceImplementer-address-bytes32-: xref:utils.adoc#IERC1820Registry-getInterfaceImplementer-address-bytes32-
  1094. :IERC1820Registry-interfaceHash: pass:normal[xref:utils.adoc#IERC1820Registry-interfaceHash-string-[`IERC1820Registry.interfaceHash`]]
  1095. :xref-IERC1820Registry-interfaceHash-string-: xref:utils.adoc#IERC1820Registry-interfaceHash-string-
  1096. :IERC1820Registry-updateERC165Cache: pass:normal[xref:utils.adoc#IERC1820Registry-updateERC165Cache-address-bytes4-[`IERC1820Registry.updateERC165Cache`]]
  1097. :xref-IERC1820Registry-updateERC165Cache-address-bytes4-: xref:utils.adoc#IERC1820Registry-updateERC165Cache-address-bytes4-
  1098. :IERC1820Registry-implementsERC165Interface: pass:normal[xref:utils.adoc#IERC1820Registry-implementsERC165Interface-address-bytes4-[`IERC1820Registry.implementsERC165Interface`]]
  1099. :xref-IERC1820Registry-implementsERC165Interface-address-bytes4-: xref:utils.adoc#IERC1820Registry-implementsERC165Interface-address-bytes4-
  1100. :IERC1820Registry-implementsERC165InterfaceNoCache: pass:normal[xref:utils.adoc#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-[`IERC1820Registry.implementsERC165InterfaceNoCache`]]
  1101. :xref-IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-: xref:utils.adoc#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-
  1102. :IERC1820Registry-InterfaceImplementerSet: pass:normal[xref:utils.adoc#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-[`IERC1820Registry.InterfaceImplementerSet`]]
  1103. :xref-IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-: xref:utils.adoc#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-
  1104. :IERC1820Registry-ManagerChanged: pass:normal[xref:utils.adoc#IERC1820Registry-ManagerChanged-address-address-[`IERC1820Registry.ManagerChanged`]]
  1105. :xref-IERC1820Registry-ManagerChanged-address-address-: xref:utils.adoc#IERC1820Registry-ManagerChanged-address-address-
  1106. :Math: pass:normal[xref:utils.adoc#Math[`Math`]]
  1107. :xref-Math: xref:utils.adoc#Math
  1108. :Math-max: pass:normal[xref:utils.adoc#Math-max-uint256-uint256-[`Math.max`]]
  1109. :xref-Math-max-uint256-uint256-: xref:utils.adoc#Math-max-uint256-uint256-
  1110. :Math-min: pass:normal[xref:utils.adoc#Math-min-uint256-uint256-[`Math.min`]]
  1111. :xref-Math-min-uint256-uint256-: xref:utils.adoc#Math-min-uint256-uint256-
  1112. :Math-average: pass:normal[xref:utils.adoc#Math-average-uint256-uint256-[`Math.average`]]
  1113. :xref-Math-average-uint256-uint256-: xref:utils.adoc#Math-average-uint256-uint256-
  1114. :Math-ceilDiv: pass:normal[xref:utils.adoc#Math-ceilDiv-uint256-uint256-[`Math.ceilDiv`]]
  1115. :xref-Math-ceilDiv-uint256-uint256-: xref:utils.adoc#Math-ceilDiv-uint256-uint256-
  1116. :SafeCast: pass:normal[xref:utils.adoc#SafeCast[`SafeCast`]]
  1117. :xref-SafeCast: xref:utils.adoc#SafeCast
  1118. :SafeCast-toUint224: pass:normal[xref:utils.adoc#SafeCast-toUint224-uint256-[`SafeCast.toUint224`]]
  1119. :xref-SafeCast-toUint224-uint256-: xref:utils.adoc#SafeCast-toUint224-uint256-
  1120. :SafeCast-toUint128: pass:normal[xref:utils.adoc#SafeCast-toUint128-uint256-[`SafeCast.toUint128`]]
  1121. :xref-SafeCast-toUint128-uint256-: xref:utils.adoc#SafeCast-toUint128-uint256-
  1122. :SafeCast-toUint96: pass:normal[xref:utils.adoc#SafeCast-toUint96-uint256-[`SafeCast.toUint96`]]
  1123. :xref-SafeCast-toUint96-uint256-: xref:utils.adoc#SafeCast-toUint96-uint256-
  1124. :SafeCast-toUint64: pass:normal[xref:utils.adoc#SafeCast-toUint64-uint256-[`SafeCast.toUint64`]]
  1125. :xref-SafeCast-toUint64-uint256-: xref:utils.adoc#SafeCast-toUint64-uint256-
  1126. :SafeCast-toUint32: pass:normal[xref:utils.adoc#SafeCast-toUint32-uint256-[`SafeCast.toUint32`]]
  1127. :xref-SafeCast-toUint32-uint256-: xref:utils.adoc#SafeCast-toUint32-uint256-
  1128. :SafeCast-toUint16: pass:normal[xref:utils.adoc#SafeCast-toUint16-uint256-[`SafeCast.toUint16`]]
  1129. :xref-SafeCast-toUint16-uint256-: xref:utils.adoc#SafeCast-toUint16-uint256-
  1130. :SafeCast-toUint8: pass:normal[xref:utils.adoc#SafeCast-toUint8-uint256-[`SafeCast.toUint8`]]
  1131. :xref-SafeCast-toUint8-uint256-: xref:utils.adoc#SafeCast-toUint8-uint256-
  1132. :SafeCast-toUint256: pass:normal[xref:utils.adoc#SafeCast-toUint256-int256-[`SafeCast.toUint256`]]
  1133. :xref-SafeCast-toUint256-int256-: xref:utils.adoc#SafeCast-toUint256-int256-
  1134. :SafeCast-toInt128: pass:normal[xref:utils.adoc#SafeCast-toInt128-int256-[`SafeCast.toInt128`]]
  1135. :xref-SafeCast-toInt128-int256-: xref:utils.adoc#SafeCast-toInt128-int256-
  1136. :SafeCast-toInt64: pass:normal[xref:utils.adoc#SafeCast-toInt64-int256-[`SafeCast.toInt64`]]
  1137. :xref-SafeCast-toInt64-int256-: xref:utils.adoc#SafeCast-toInt64-int256-
  1138. :SafeCast-toInt32: pass:normal[xref:utils.adoc#SafeCast-toInt32-int256-[`SafeCast.toInt32`]]
  1139. :xref-SafeCast-toInt32-int256-: xref:utils.adoc#SafeCast-toInt32-int256-
  1140. :SafeCast-toInt16: pass:normal[xref:utils.adoc#SafeCast-toInt16-int256-[`SafeCast.toInt16`]]
  1141. :xref-SafeCast-toInt16-int256-: xref:utils.adoc#SafeCast-toInt16-int256-
  1142. :SafeCast-toInt8: pass:normal[xref:utils.adoc#SafeCast-toInt8-int256-[`SafeCast.toInt8`]]
  1143. :xref-SafeCast-toInt8-int256-: xref:utils.adoc#SafeCast-toInt8-int256-
  1144. :SafeCast-toInt256: pass:normal[xref:utils.adoc#SafeCast-toInt256-uint256-[`SafeCast.toInt256`]]
  1145. :xref-SafeCast-toInt256-uint256-: xref:utils.adoc#SafeCast-toInt256-uint256-
  1146. :SafeMath: pass:normal[xref:utils.adoc#SafeMath[`SafeMath`]]
  1147. :xref-SafeMath: xref:utils.adoc#SafeMath
  1148. :SafeMath-tryAdd: pass:normal[xref:utils.adoc#SafeMath-tryAdd-uint256-uint256-[`SafeMath.tryAdd`]]
  1149. :xref-SafeMath-tryAdd-uint256-uint256-: xref:utils.adoc#SafeMath-tryAdd-uint256-uint256-
  1150. :SafeMath-trySub: pass:normal[xref:utils.adoc#SafeMath-trySub-uint256-uint256-[`SafeMath.trySub`]]
  1151. :xref-SafeMath-trySub-uint256-uint256-: xref:utils.adoc#SafeMath-trySub-uint256-uint256-
  1152. :SafeMath-tryMul: pass:normal[xref:utils.adoc#SafeMath-tryMul-uint256-uint256-[`SafeMath.tryMul`]]
  1153. :xref-SafeMath-tryMul-uint256-uint256-: xref:utils.adoc#SafeMath-tryMul-uint256-uint256-
  1154. :SafeMath-tryDiv: pass:normal[xref:utils.adoc#SafeMath-tryDiv-uint256-uint256-[`SafeMath.tryDiv`]]
  1155. :xref-SafeMath-tryDiv-uint256-uint256-: xref:utils.adoc#SafeMath-tryDiv-uint256-uint256-
  1156. :SafeMath-tryMod: pass:normal[xref:utils.adoc#SafeMath-tryMod-uint256-uint256-[`SafeMath.tryMod`]]
  1157. :xref-SafeMath-tryMod-uint256-uint256-: xref:utils.adoc#SafeMath-tryMod-uint256-uint256-
  1158. :SafeMath-add: pass:normal[xref:utils.adoc#SafeMath-add-uint256-uint256-[`SafeMath.add`]]
  1159. :xref-SafeMath-add-uint256-uint256-: xref:utils.adoc#SafeMath-add-uint256-uint256-
  1160. :SafeMath-sub: pass:normal[xref:utils.adoc#SafeMath-sub-uint256-uint256-[`SafeMath.sub`]]
  1161. :xref-SafeMath-sub-uint256-uint256-: xref:utils.adoc#SafeMath-sub-uint256-uint256-
  1162. :SafeMath-mul: pass:normal[xref:utils.adoc#SafeMath-mul-uint256-uint256-[`SafeMath.mul`]]
  1163. :xref-SafeMath-mul-uint256-uint256-: xref:utils.adoc#SafeMath-mul-uint256-uint256-
  1164. :SafeMath-div: pass:normal[xref:utils.adoc#SafeMath-div-uint256-uint256-[`SafeMath.div`]]
  1165. :xref-SafeMath-div-uint256-uint256-: xref:utils.adoc#SafeMath-div-uint256-uint256-
  1166. :SafeMath-mod: pass:normal[xref:utils.adoc#SafeMath-mod-uint256-uint256-[`SafeMath.mod`]]
  1167. :xref-SafeMath-mod-uint256-uint256-: xref:utils.adoc#SafeMath-mod-uint256-uint256-
  1168. :SafeMath-sub: pass:normal[xref:utils.adoc#SafeMath-sub-uint256-uint256-string-[`SafeMath.sub`]]
  1169. :xref-SafeMath-sub-uint256-uint256-string-: xref:utils.adoc#SafeMath-sub-uint256-uint256-string-
  1170. :SafeMath-div: pass:normal[xref:utils.adoc#SafeMath-div-uint256-uint256-string-[`SafeMath.div`]]
  1171. :xref-SafeMath-div-uint256-uint256-string-: xref:utils.adoc#SafeMath-div-uint256-uint256-string-
  1172. :SafeMath-mod: pass:normal[xref:utils.adoc#SafeMath-mod-uint256-uint256-string-[`SafeMath.mod`]]
  1173. :xref-SafeMath-mod-uint256-uint256-string-: xref:utils.adoc#SafeMath-mod-uint256-uint256-string-
  1174. :SignedMath: pass:normal[xref:utils.adoc#SignedMath[`SignedMath`]]
  1175. :xref-SignedMath: xref:utils.adoc#SignedMath
  1176. :SignedMath-max: pass:normal[xref:utils.adoc#SignedMath-max-int256-int256-[`SignedMath.max`]]
  1177. :xref-SignedMath-max-int256-int256-: xref:utils.adoc#SignedMath-max-int256-int256-
  1178. :SignedMath-min: pass:normal[xref:utils.adoc#SignedMath-min-int256-int256-[`SignedMath.min`]]
  1179. :xref-SignedMath-min-int256-int256-: xref:utils.adoc#SignedMath-min-int256-int256-
  1180. :SignedMath-average: pass:normal[xref:utils.adoc#SignedMath-average-int256-int256-[`SignedMath.average`]]
  1181. :xref-SignedMath-average-int256-int256-: xref:utils.adoc#SignedMath-average-int256-int256-
  1182. :SignedMath-abs: pass:normal[xref:utils.adoc#SignedMath-abs-int256-[`SignedMath.abs`]]
  1183. :xref-SignedMath-abs-int256-: xref:utils.adoc#SignedMath-abs-int256-
  1184. :SignedSafeMath: pass:normal[xref:utils.adoc#SignedSafeMath[`SignedSafeMath`]]
  1185. :xref-SignedSafeMath: xref:utils.adoc#SignedSafeMath
  1186. :SignedSafeMath-mul: pass:normal[xref:utils.adoc#SignedSafeMath-mul-int256-int256-[`SignedSafeMath.mul`]]
  1187. :xref-SignedSafeMath-mul-int256-int256-: xref:utils.adoc#SignedSafeMath-mul-int256-int256-
  1188. :SignedSafeMath-div: pass:normal[xref:utils.adoc#SignedSafeMath-div-int256-int256-[`SignedSafeMath.div`]]
  1189. :xref-SignedSafeMath-div-int256-int256-: xref:utils.adoc#SignedSafeMath-div-int256-int256-
  1190. :SignedSafeMath-sub: pass:normal[xref:utils.adoc#SignedSafeMath-sub-int256-int256-[`SignedSafeMath.sub`]]
  1191. :xref-SignedSafeMath-sub-int256-int256-: xref:utils.adoc#SignedSafeMath-sub-int256-int256-
  1192. :SignedSafeMath-add: pass:normal[xref:utils.adoc#SignedSafeMath-add-int256-int256-[`SignedSafeMath.add`]]
  1193. :xref-SignedSafeMath-add-int256-int256-: xref:utils.adoc#SignedSafeMath-add-int256-int256-
  1194. :BitMaps: pass:normal[xref:utils.adoc#BitMaps[`BitMaps`]]
  1195. :xref-BitMaps: xref:utils.adoc#BitMaps
  1196. :BitMaps-get: pass:normal[xref:utils.adoc#BitMaps-get-struct-BitMaps-BitMap-uint256-[`BitMaps.get`]]
  1197. :xref-BitMaps-get-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-get-struct-BitMaps-BitMap-uint256-
  1198. :BitMaps-setTo: pass:normal[xref:utils.adoc#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-[`BitMaps.setTo`]]
  1199. :xref-BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-: xref:utils.adoc#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-
  1200. :BitMaps-set: pass:normal[xref:utils.adoc#BitMaps-set-struct-BitMaps-BitMap-uint256-[`BitMaps.set`]]
  1201. :xref-BitMaps-set-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-set-struct-BitMaps-BitMap-uint256-
  1202. :BitMaps-unset: pass:normal[xref:utils.adoc#BitMaps-unset-struct-BitMaps-BitMap-uint256-[`BitMaps.unset`]]
  1203. :xref-BitMaps-unset-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-unset-struct-BitMaps-BitMap-uint256-
  1204. :BitMaps-BitMap: pass:normal[xref:utils.adoc#BitMaps-BitMap[`BitMaps.BitMap`]]
  1205. :xref-BitMaps-BitMap: xref:utils.adoc#BitMaps-BitMap
  1206. :EnumerableMap: pass:normal[xref:utils.adoc#EnumerableMap[`EnumerableMap`]]
  1207. :xref-EnumerableMap: xref:utils.adoc#EnumerableMap
  1208. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-[`EnumerableMap.set`]]
  1209. :xref-EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-
  1210. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.remove`]]
  1211. :xref-EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-
  1212. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.contains`]]
  1213. :xref-EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-
  1214. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-[`EnumerableMap.length`]]
  1215. :xref-EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-
  1216. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.at`]]
  1217. :xref-EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-
  1218. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.tryGet`]]
  1219. :xref-EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-
  1220. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.get`]]
  1221. :xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-
  1222. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-[`EnumerableMap.get`]]
  1223. :xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-
  1224. :EnumerableMap-Map: pass:normal[xref:utils.adoc#EnumerableMap-Map[`EnumerableMap.Map`]]
  1225. :xref-EnumerableMap-Map: xref:utils.adoc#EnumerableMap-Map
  1226. :EnumerableMap-UintToAddressMap: pass:normal[xref:utils.adoc#EnumerableMap-UintToAddressMap[`EnumerableMap.UintToAddressMap`]]
  1227. :xref-EnumerableMap-UintToAddressMap: xref:utils.adoc#EnumerableMap-UintToAddressMap
  1228. :EnumerableSet: pass:normal[xref:utils.adoc#EnumerableSet[`EnumerableSet`]]
  1229. :xref-EnumerableSet: xref:utils.adoc#EnumerableSet
  1230. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.add`]]
  1231. :xref-EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-
  1232. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.remove`]]
  1233. :xref-EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-
  1234. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.contains`]]
  1235. :xref-EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-
  1236. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-[`EnumerableSet.length`]]
  1237. :xref-EnumerableSet-length-struct-EnumerableSet-Bytes32Set-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-
  1238. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-[`EnumerableSet.at`]]
  1239. :xref-EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-
  1240. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-[`EnumerableSet.values`]]
  1241. :xref-EnumerableSet-values-struct-EnumerableSet-Bytes32Set-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-
  1242. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.add`]]
  1243. :xref-EnumerableSet-add-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-
  1244. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.remove`]]
  1245. :xref-EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-
  1246. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.contains`]]
  1247. :xref-EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-
  1248. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-AddressSet-[`EnumerableSet.length`]]
  1249. :xref-EnumerableSet-length-struct-EnumerableSet-AddressSet-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-AddressSet-
  1250. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-[`EnumerableSet.at`]]
  1251. :xref-EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-
  1252. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-AddressSet-[`EnumerableSet.values`]]
  1253. :xref-EnumerableSet-values-struct-EnumerableSet-AddressSet-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-AddressSet-
  1254. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.add`]]
  1255. :xref-EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-
  1256. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.remove`]]
  1257. :xref-EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-
  1258. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.contains`]]
  1259. :xref-EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-
  1260. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-UintSet-[`EnumerableSet.length`]]
  1261. :xref-EnumerableSet-length-struct-EnumerableSet-UintSet-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-UintSet-
  1262. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.at`]]
  1263. :xref-EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-
  1264. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-UintSet-[`EnumerableSet.values`]]
  1265. :xref-EnumerableSet-values-struct-EnumerableSet-UintSet-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-UintSet-
  1266. :EnumerableSet-Set: pass:normal[xref:utils.adoc#EnumerableSet-Set[`EnumerableSet.Set`]]
  1267. :xref-EnumerableSet-Set: xref:utils.adoc#EnumerableSet-Set
  1268. :EnumerableSet-Bytes32Set: pass:normal[xref:utils.adoc#EnumerableSet-Bytes32Set[`EnumerableSet.Bytes32Set`]]
  1269. :xref-EnumerableSet-Bytes32Set: xref:utils.adoc#EnumerableSet-Bytes32Set
  1270. :EnumerableSet-AddressSet: pass:normal[xref:utils.adoc#EnumerableSet-AddressSet[`EnumerableSet.AddressSet`]]
  1271. :xref-EnumerableSet-AddressSet: xref:utils.adoc#EnumerableSet-AddressSet
  1272. :EnumerableSet-UintSet: pass:normal[xref:utils.adoc#EnumerableSet-UintSet[`EnumerableSet.UintSet`]]
  1273. :xref-EnumerableSet-UintSet: xref:utils.adoc#EnumerableSet-UintSet
  1274. :ERC1155: pass:normal[xref:token/ERC1155.adoc#ERC1155[`ERC1155`]]
  1275. :xref-ERC1155: xref:token/ERC1155.adoc#ERC1155
  1276. :ERC1155-constructor: pass:normal[xref:token/ERC1155.adoc#ERC1155-constructor-string-[`ERC1155.constructor`]]
  1277. :xref-ERC1155-constructor-string-: xref:token/ERC1155.adoc#ERC1155-constructor-string-
  1278. :ERC1155-supportsInterface: pass:normal[xref:token/ERC1155.adoc#ERC1155-supportsInterface-bytes4-[`ERC1155.supportsInterface`]]
  1279. :xref-ERC1155-supportsInterface-bytes4-: xref:token/ERC1155.adoc#ERC1155-supportsInterface-bytes4-
  1280. :ERC1155-uri: pass:normal[xref:token/ERC1155.adoc#ERC1155-uri-uint256-[`ERC1155.uri`]]
  1281. :xref-ERC1155-uri-uint256-: xref:token/ERC1155.adoc#ERC1155-uri-uint256-
  1282. :ERC1155-balanceOf: pass:normal[xref:token/ERC1155.adoc#ERC1155-balanceOf-address-uint256-[`ERC1155.balanceOf`]]
  1283. :xref-ERC1155-balanceOf-address-uint256-: xref:token/ERC1155.adoc#ERC1155-balanceOf-address-uint256-
  1284. :ERC1155-balanceOfBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-balanceOfBatch-address---uint256---[`ERC1155.balanceOfBatch`]]
  1285. :xref-ERC1155-balanceOfBatch-address---uint256---: xref:token/ERC1155.adoc#ERC1155-balanceOfBatch-address---uint256---
  1286. :ERC1155-setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-setApprovalForAll-address-bool-[`ERC1155.setApprovalForAll`]]
  1287. :xref-ERC1155-setApprovalForAll-address-bool-: xref:token/ERC1155.adoc#ERC1155-setApprovalForAll-address-bool-
  1288. :ERC1155-isApprovedForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-isApprovedForAll-address-address-[`ERC1155.isApprovedForAll`]]
  1289. :xref-ERC1155-isApprovedForAll-address-address-: xref:token/ERC1155.adoc#ERC1155-isApprovedForAll-address-address-
  1290. :ERC1155-safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-[`ERC1155.safeTransferFrom`]]
  1291. :xref-ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-
  1292. :ERC1155-safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`ERC1155.safeBatchTransferFrom`]]
  1293. :xref-ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1294. :ERC1155-_safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-[`ERC1155._safeTransferFrom`]]
  1295. :xref-ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-
  1296. :ERC1155-_safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`ERC1155._safeBatchTransferFrom`]]
  1297. :xref-ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1298. :ERC1155-_setURI: pass:normal[xref:token/ERC1155.adoc#ERC1155-_setURI-string-[`ERC1155._setURI`]]
  1299. :xref-ERC1155-_setURI-string-: xref:token/ERC1155.adoc#ERC1155-_setURI-string-
  1300. :ERC1155-_mint: pass:normal[xref:token/ERC1155.adoc#ERC1155-_mint-address-uint256-uint256-bytes-[`ERC1155._mint`]]
  1301. :xref-ERC1155-_mint-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-_mint-address-uint256-uint256-bytes-
  1302. :ERC1155-_mintBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-_mintBatch-address-uint256---uint256---bytes-[`ERC1155._mintBatch`]]
  1303. :xref-ERC1155-_mintBatch-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_mintBatch-address-uint256---uint256---bytes-
  1304. :ERC1155-_burn: pass:normal[xref:token/ERC1155.adoc#ERC1155-_burn-address-uint256-uint256-[`ERC1155._burn`]]
  1305. :xref-ERC1155-_burn-address-uint256-uint256-: xref:token/ERC1155.adoc#ERC1155-_burn-address-uint256-uint256-
  1306. :ERC1155-_burnBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-_burnBatch-address-uint256---uint256---[`ERC1155._burnBatch`]]
  1307. :xref-ERC1155-_burnBatch-address-uint256---uint256---: xref:token/ERC1155.adoc#ERC1155-_burnBatch-address-uint256---uint256---
  1308. :ERC1155-_setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-_setApprovalForAll-address-address-bool-[`ERC1155._setApprovalForAll`]]
  1309. :xref-ERC1155-_setApprovalForAll-address-address-bool-: xref:token/ERC1155.adoc#ERC1155-_setApprovalForAll-address-address-bool-
  1310. :ERC1155-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155._beforeTokenTransfer`]]
  1311. :xref-ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1312. :IERC1155: pass:normal[xref:token/ERC1155.adoc#IERC1155[`IERC1155`]]
  1313. :xref-IERC1155: xref:token/ERC1155.adoc#IERC1155
  1314. :IERC1155-balanceOf: pass:normal[xref:token/ERC1155.adoc#IERC1155-balanceOf-address-uint256-[`IERC1155.balanceOf`]]
  1315. :xref-IERC1155-balanceOf-address-uint256-: xref:token/ERC1155.adoc#IERC1155-balanceOf-address-uint256-
  1316. :IERC1155-balanceOfBatch: pass:normal[xref:token/ERC1155.adoc#IERC1155-balanceOfBatch-address---uint256---[`IERC1155.balanceOfBatch`]]
  1317. :xref-IERC1155-balanceOfBatch-address---uint256---: xref:token/ERC1155.adoc#IERC1155-balanceOfBatch-address---uint256---
  1318. :IERC1155-setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-setApprovalForAll-address-bool-[`IERC1155.setApprovalForAll`]]
  1319. :xref-IERC1155-setApprovalForAll-address-bool-: xref:token/ERC1155.adoc#IERC1155-setApprovalForAll-address-bool-
  1320. :IERC1155-isApprovedForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-isApprovedForAll-address-address-[`IERC1155.isApprovedForAll`]]
  1321. :xref-IERC1155-isApprovedForAll-address-address-: xref:token/ERC1155.adoc#IERC1155-isApprovedForAll-address-address-
  1322. :IERC1155-safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-[`IERC1155.safeTransferFrom`]]
  1323. :xref-IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-
  1324. :IERC1155-safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`IERC1155.safeBatchTransferFrom`]]
  1325. :xref-IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1326. :IERC1155-TransferSingle: pass:normal[xref:token/ERC1155.adoc#IERC1155-TransferSingle-address-address-address-uint256-uint256-[`IERC1155.TransferSingle`]]
  1327. :xref-IERC1155-TransferSingle-address-address-address-uint256-uint256-: xref:token/ERC1155.adoc#IERC1155-TransferSingle-address-address-address-uint256-uint256-
  1328. :IERC1155-TransferBatch: pass:normal[xref:token/ERC1155.adoc#IERC1155-TransferBatch-address-address-address-uint256---uint256---[`IERC1155.TransferBatch`]]
  1329. :xref-IERC1155-TransferBatch-address-address-address-uint256---uint256---: xref:token/ERC1155.adoc#IERC1155-TransferBatch-address-address-address-uint256---uint256---
  1330. :IERC1155-ApprovalForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-ApprovalForAll-address-address-bool-[`IERC1155.ApprovalForAll`]]
  1331. :xref-IERC1155-ApprovalForAll-address-address-bool-: xref:token/ERC1155.adoc#IERC1155-ApprovalForAll-address-address-bool-
  1332. :IERC1155-URI: pass:normal[xref:token/ERC1155.adoc#IERC1155-URI-string-uint256-[`IERC1155.URI`]]
  1333. :xref-IERC1155-URI-string-uint256-: xref:token/ERC1155.adoc#IERC1155-URI-string-uint256-
  1334. :IERC1155Receiver: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver[`IERC1155Receiver`]]
  1335. :xref-IERC1155Receiver: xref:token/ERC1155.adoc#IERC1155Receiver
  1336. :IERC1155Receiver-onERC1155Received: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-[`IERC1155Receiver.onERC1155Received`]]
  1337. :xref-IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-
  1338. :IERC1155Receiver-onERC1155BatchReceived: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`IERC1155Receiver.onERC1155BatchReceived`]]
  1339. :xref-IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  1340. :ERC1155Burnable: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable[`ERC1155Burnable`]]
  1341. :xref-ERC1155Burnable: xref:token/ERC1155.adoc#ERC1155Burnable
  1342. :ERC1155Burnable-burn: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable-burn-address-uint256-uint256-[`ERC1155Burnable.burn`]]
  1343. :xref-ERC1155Burnable-burn-address-uint256-uint256-: xref:token/ERC1155.adoc#ERC1155Burnable-burn-address-uint256-uint256-
  1344. :ERC1155Burnable-burnBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable-burnBatch-address-uint256---uint256---[`ERC1155Burnable.burnBatch`]]
  1345. :xref-ERC1155Burnable-burnBatch-address-uint256---uint256---: xref:token/ERC1155.adoc#ERC1155Burnable-burnBatch-address-uint256---uint256---
  1346. :ERC1155Pausable: pass:normal[xref:token/ERC1155.adoc#ERC1155Pausable[`ERC1155Pausable`]]
  1347. :xref-ERC1155Pausable: xref:token/ERC1155.adoc#ERC1155Pausable
  1348. :ERC1155Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155Pausable._beforeTokenTransfer`]]
  1349. :xref-ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1350. :ERC1155Supply: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply[`ERC1155Supply`]]
  1351. :xref-ERC1155Supply: xref:token/ERC1155.adoc#ERC1155Supply
  1352. :ERC1155Supply-totalSupply: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-totalSupply-uint256-[`ERC1155Supply.totalSupply`]]
  1353. :xref-ERC1155Supply-totalSupply-uint256-: xref:token/ERC1155.adoc#ERC1155Supply-totalSupply-uint256-
  1354. :ERC1155Supply-exists: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-exists-uint256-[`ERC1155Supply.exists`]]
  1355. :xref-ERC1155Supply-exists-uint256-: xref:token/ERC1155.adoc#ERC1155Supply-exists-uint256-
  1356. :ERC1155Supply-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155Supply._beforeTokenTransfer`]]
  1357. :xref-ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1358. :IERC1155MetadataURI: pass:normal[xref:token/ERC1155.adoc#IERC1155MetadataURI[`IERC1155MetadataURI`]]
  1359. :xref-IERC1155MetadataURI: xref:token/ERC1155.adoc#IERC1155MetadataURI
  1360. :IERC1155MetadataURI-uri: pass:normal[xref:token/ERC1155.adoc#IERC1155MetadataURI-uri-uint256-[`IERC1155MetadataURI.uri`]]
  1361. :xref-IERC1155MetadataURI-uri-uint256-: xref:token/ERC1155.adoc#IERC1155MetadataURI-uri-uint256-
  1362. :ERC1155Holder: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder[`ERC1155Holder`]]
  1363. :xref-ERC1155Holder: xref:token/ERC1155.adoc#ERC1155Holder
  1364. :ERC1155Holder-onERC1155Received: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-[`ERC1155Holder.onERC1155Received`]]
  1365. :xref-ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-
  1366. :ERC1155Holder-onERC1155BatchReceived: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`ERC1155Holder.onERC1155BatchReceived`]]
  1367. :xref-ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  1368. :ERC1155Receiver: pass:normal[xref:token/ERC1155.adoc#ERC1155Receiver[`ERC1155Receiver`]]
  1369. :xref-ERC1155Receiver: xref:token/ERC1155.adoc#ERC1155Receiver
  1370. :ERC1155Receiver-supportsInterface: pass:normal[xref:token/ERC1155.adoc#ERC1155Receiver-supportsInterface-bytes4-[`ERC1155Receiver.supportsInterface`]]
  1371. :xref-ERC1155Receiver-supportsInterface-bytes4-: xref:token/ERC1155.adoc#ERC1155Receiver-supportsInterface-bytes4-
  1372. :ERC20: pass:normal[xref:token/ERC20.adoc#ERC20[`ERC20`]]
  1373. :xref-ERC20: xref:token/ERC20.adoc#ERC20
  1374. :ERC20-constructor: pass:normal[xref:token/ERC20.adoc#ERC20-constructor-string-string-[`ERC20.constructor`]]
  1375. :xref-ERC20-constructor-string-string-: xref:token/ERC20.adoc#ERC20-constructor-string-string-
  1376. :ERC20-name: pass:normal[xref:token/ERC20.adoc#ERC20-name--[`ERC20.name`]]
  1377. :xref-ERC20-name--: xref:token/ERC20.adoc#ERC20-name--
  1378. :ERC20-symbol: pass:normal[xref:token/ERC20.adoc#ERC20-symbol--[`ERC20.symbol`]]
  1379. :xref-ERC20-symbol--: xref:token/ERC20.adoc#ERC20-symbol--
  1380. :ERC20-decimals: pass:normal[xref:token/ERC20.adoc#ERC20-decimals--[`ERC20.decimals`]]
  1381. :xref-ERC20-decimals--: xref:token/ERC20.adoc#ERC20-decimals--
  1382. :ERC20-totalSupply: pass:normal[xref:token/ERC20.adoc#ERC20-totalSupply--[`ERC20.totalSupply`]]
  1383. :xref-ERC20-totalSupply--: xref:token/ERC20.adoc#ERC20-totalSupply--
  1384. :ERC20-balanceOf: pass:normal[xref:token/ERC20.adoc#ERC20-balanceOf-address-[`ERC20.balanceOf`]]
  1385. :xref-ERC20-balanceOf-address-: xref:token/ERC20.adoc#ERC20-balanceOf-address-
  1386. :ERC20-transfer: pass:normal[xref:token/ERC20.adoc#ERC20-transfer-address-uint256-[`ERC20.transfer`]]
  1387. :xref-ERC20-transfer-address-uint256-: xref:token/ERC20.adoc#ERC20-transfer-address-uint256-
  1388. :ERC20-allowance: pass:normal[xref:token/ERC20.adoc#ERC20-allowance-address-address-[`ERC20.allowance`]]
  1389. :xref-ERC20-allowance-address-address-: xref:token/ERC20.adoc#ERC20-allowance-address-address-
  1390. :ERC20-approve: pass:normal[xref:token/ERC20.adoc#ERC20-approve-address-uint256-[`ERC20.approve`]]
  1391. :xref-ERC20-approve-address-uint256-: xref:token/ERC20.adoc#ERC20-approve-address-uint256-
  1392. :ERC20-transferFrom: pass:normal[xref:token/ERC20.adoc#ERC20-transferFrom-address-address-uint256-[`ERC20.transferFrom`]]
  1393. :xref-ERC20-transferFrom-address-address-uint256-: xref:token/ERC20.adoc#ERC20-transferFrom-address-address-uint256-
  1394. :ERC20-increaseAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-increaseAllowance-address-uint256-[`ERC20.increaseAllowance`]]
  1395. :xref-ERC20-increaseAllowance-address-uint256-: xref:token/ERC20.adoc#ERC20-increaseAllowance-address-uint256-
  1396. :ERC20-decreaseAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-decreaseAllowance-address-uint256-[`ERC20.decreaseAllowance`]]
  1397. :xref-ERC20-decreaseAllowance-address-uint256-: xref:token/ERC20.adoc#ERC20-decreaseAllowance-address-uint256-
  1398. :ERC20-_transfer: pass:normal[xref:token/ERC20.adoc#ERC20-_transfer-address-address-uint256-[`ERC20._transfer`]]
  1399. :xref-ERC20-_transfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_transfer-address-address-uint256-
  1400. :ERC20-_mint: pass:normal[xref:token/ERC20.adoc#ERC20-_mint-address-uint256-[`ERC20._mint`]]
  1401. :xref-ERC20-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20-_mint-address-uint256-
  1402. :ERC20-_burn: pass:normal[xref:token/ERC20.adoc#ERC20-_burn-address-uint256-[`ERC20._burn`]]
  1403. :xref-ERC20-_burn-address-uint256-: xref:token/ERC20.adoc#ERC20-_burn-address-uint256-
  1404. :ERC20-_approve: pass:normal[xref:token/ERC20.adoc#ERC20-_approve-address-address-uint256-[`ERC20._approve`]]
  1405. :xref-ERC20-_approve-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_approve-address-address-uint256-
  1406. :ERC20-_spendAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-_spendAllowance-address-address-uint256-[`ERC20._spendAllowance`]]
  1407. :xref-ERC20-_spendAllowance-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_spendAllowance-address-address-uint256-
  1408. :ERC20-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20-_beforeTokenTransfer-address-address-uint256-[`ERC20._beforeTokenTransfer`]]
  1409. :xref-ERC20-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_beforeTokenTransfer-address-address-uint256-
  1410. :ERC20-_afterTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20-_afterTokenTransfer-address-address-uint256-[`ERC20._afterTokenTransfer`]]
  1411. :xref-ERC20-_afterTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_afterTokenTransfer-address-address-uint256-
  1412. :IERC20: pass:normal[xref:token/ERC20.adoc#IERC20[`IERC20`]]
  1413. :xref-IERC20: xref:token/ERC20.adoc#IERC20
  1414. :IERC20-totalSupply: pass:normal[xref:token/ERC20.adoc#IERC20-totalSupply--[`IERC20.totalSupply`]]
  1415. :xref-IERC20-totalSupply--: xref:token/ERC20.adoc#IERC20-totalSupply--
  1416. :IERC20-balanceOf: pass:normal[xref:token/ERC20.adoc#IERC20-balanceOf-address-[`IERC20.balanceOf`]]
  1417. :xref-IERC20-balanceOf-address-: xref:token/ERC20.adoc#IERC20-balanceOf-address-
  1418. :IERC20-transfer: pass:normal[xref:token/ERC20.adoc#IERC20-transfer-address-uint256-[`IERC20.transfer`]]
  1419. :xref-IERC20-transfer-address-uint256-: xref:token/ERC20.adoc#IERC20-transfer-address-uint256-
  1420. :IERC20-allowance: pass:normal[xref:token/ERC20.adoc#IERC20-allowance-address-address-[`IERC20.allowance`]]
  1421. :xref-IERC20-allowance-address-address-: xref:token/ERC20.adoc#IERC20-allowance-address-address-
  1422. :IERC20-approve: pass:normal[xref:token/ERC20.adoc#IERC20-approve-address-uint256-[`IERC20.approve`]]
  1423. :xref-IERC20-approve-address-uint256-: xref:token/ERC20.adoc#IERC20-approve-address-uint256-
  1424. :IERC20-transferFrom: pass:normal[xref:token/ERC20.adoc#IERC20-transferFrom-address-address-uint256-[`IERC20.transferFrom`]]
  1425. :xref-IERC20-transferFrom-address-address-uint256-: xref:token/ERC20.adoc#IERC20-transferFrom-address-address-uint256-
  1426. :IERC20-Transfer: pass:normal[xref:token/ERC20.adoc#IERC20-Transfer-address-address-uint256-[`IERC20.Transfer`]]
  1427. :xref-IERC20-Transfer-address-address-uint256-: xref:token/ERC20.adoc#IERC20-Transfer-address-address-uint256-
  1428. :IERC20-Approval: pass:normal[xref:token/ERC20.adoc#IERC20-Approval-address-address-uint256-[`IERC20.Approval`]]
  1429. :xref-IERC20-Approval-address-address-uint256-: xref:token/ERC20.adoc#IERC20-Approval-address-address-uint256-
  1430. :ERC20Burnable: pass:normal[xref:token/ERC20.adoc#ERC20Burnable[`ERC20Burnable`]]
  1431. :xref-ERC20Burnable: xref:token/ERC20.adoc#ERC20Burnable
  1432. :ERC20Burnable-burn: pass:normal[xref:token/ERC20.adoc#ERC20Burnable-burn-uint256-[`ERC20Burnable.burn`]]
  1433. :xref-ERC20Burnable-burn-uint256-: xref:token/ERC20.adoc#ERC20Burnable-burn-uint256-
  1434. :ERC20Burnable-burnFrom: pass:normal[xref:token/ERC20.adoc#ERC20Burnable-burnFrom-address-uint256-[`ERC20Burnable.burnFrom`]]
  1435. :xref-ERC20Burnable-burnFrom-address-uint256-: xref:token/ERC20.adoc#ERC20Burnable-burnFrom-address-uint256-
  1436. :ERC20Capped: pass:normal[xref:token/ERC20.adoc#ERC20Capped[`ERC20Capped`]]
  1437. :xref-ERC20Capped: xref:token/ERC20.adoc#ERC20Capped
  1438. :ERC20Capped-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Capped-constructor-uint256-[`ERC20Capped.constructor`]]
  1439. :xref-ERC20Capped-constructor-uint256-: xref:token/ERC20.adoc#ERC20Capped-constructor-uint256-
  1440. :ERC20Capped-cap: pass:normal[xref:token/ERC20.adoc#ERC20Capped-cap--[`ERC20Capped.cap`]]
  1441. :xref-ERC20Capped-cap--: xref:token/ERC20.adoc#ERC20Capped-cap--
  1442. :ERC20Capped-_mint: pass:normal[xref:token/ERC20.adoc#ERC20Capped-_mint-address-uint256-[`ERC20Capped._mint`]]
  1443. :xref-ERC20Capped-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20Capped-_mint-address-uint256-
  1444. :ERC20FlashMint: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint[`ERC20FlashMint`]]
  1445. :xref-ERC20FlashMint: xref:token/ERC20.adoc#ERC20FlashMint
  1446. :ERC20FlashMint-maxFlashLoan: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-maxFlashLoan-address-[`ERC20FlashMint.maxFlashLoan`]]
  1447. :xref-ERC20FlashMint-maxFlashLoan-address-: xref:token/ERC20.adoc#ERC20FlashMint-maxFlashLoan-address-
  1448. :ERC20FlashMint-flashFee: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-flashFee-address-uint256-[`ERC20FlashMint.flashFee`]]
  1449. :xref-ERC20FlashMint-flashFee-address-uint256-: xref:token/ERC20.adoc#ERC20FlashMint-flashFee-address-uint256-
  1450. :ERC20FlashMint-flashLoan: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-[`ERC20FlashMint.flashLoan`]]
  1451. :xref-ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-: xref:token/ERC20.adoc#ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-
  1452. :ERC20Pausable: pass:normal[xref:token/ERC20.adoc#ERC20Pausable[`ERC20Pausable`]]
  1453. :xref-ERC20Pausable: xref:token/ERC20.adoc#ERC20Pausable
  1454. :ERC20Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Pausable-_beforeTokenTransfer-address-address-uint256-[`ERC20Pausable._beforeTokenTransfer`]]
  1455. :xref-ERC20Pausable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Pausable-_beforeTokenTransfer-address-address-uint256-
  1456. :ERC20Snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot[`ERC20Snapshot`]]
  1457. :xref-ERC20Snapshot: xref:token/ERC20.adoc#ERC20Snapshot
  1458. :ERC20Snapshot-_snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_snapshot--[`ERC20Snapshot._snapshot`]]
  1459. :xref-ERC20Snapshot-_snapshot--: xref:token/ERC20.adoc#ERC20Snapshot-_snapshot--
  1460. :ERC20Snapshot-_getCurrentSnapshotId: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_getCurrentSnapshotId--[`ERC20Snapshot._getCurrentSnapshotId`]]
  1461. :xref-ERC20Snapshot-_getCurrentSnapshotId--: xref:token/ERC20.adoc#ERC20Snapshot-_getCurrentSnapshotId--
  1462. :ERC20Snapshot-balanceOfAt: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-balanceOfAt-address-uint256-[`ERC20Snapshot.balanceOfAt`]]
  1463. :xref-ERC20Snapshot-balanceOfAt-address-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-balanceOfAt-address-uint256-
  1464. :ERC20Snapshot-totalSupplyAt: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-totalSupplyAt-uint256-[`ERC20Snapshot.totalSupplyAt`]]
  1465. :xref-ERC20Snapshot-totalSupplyAt-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-totalSupplyAt-uint256-
  1466. :ERC20Snapshot-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-[`ERC20Snapshot._beforeTokenTransfer`]]
  1467. :xref-ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-
  1468. :ERC20Snapshot-Snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-Snapshot-uint256-[`ERC20Snapshot.Snapshot`]]
  1469. :xref-ERC20Snapshot-Snapshot-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-Snapshot-uint256-
  1470. :ERC20Snapshot-Snapshots: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-Snapshots[`ERC20Snapshot.Snapshots`]]
  1471. :xref-ERC20Snapshot-Snapshots: xref:token/ERC20.adoc#ERC20Snapshot-Snapshots
  1472. :ERC20Votes: pass:normal[xref:token/ERC20.adoc#ERC20Votes[`ERC20Votes`]]
  1473. :xref-ERC20Votes: xref:token/ERC20.adoc#ERC20Votes
  1474. :ERC20Votes-checkpoints: pass:normal[xref:token/ERC20.adoc#ERC20Votes-checkpoints-address-uint32-[`ERC20Votes.checkpoints`]]
  1475. :xref-ERC20Votes-checkpoints-address-uint32-: xref:token/ERC20.adoc#ERC20Votes-checkpoints-address-uint32-
  1476. :ERC20Votes-numCheckpoints: pass:normal[xref:token/ERC20.adoc#ERC20Votes-numCheckpoints-address-[`ERC20Votes.numCheckpoints`]]
  1477. :xref-ERC20Votes-numCheckpoints-address-: xref:token/ERC20.adoc#ERC20Votes-numCheckpoints-address-
  1478. :ERC20Votes-delegates: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegates-address-[`ERC20Votes.delegates`]]
  1479. :xref-ERC20Votes-delegates-address-: xref:token/ERC20.adoc#ERC20Votes-delegates-address-
  1480. :ERC20Votes-getVotes: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getVotes-address-[`ERC20Votes.getVotes`]]
  1481. :xref-ERC20Votes-getVotes-address-: xref:token/ERC20.adoc#ERC20Votes-getVotes-address-
  1482. :ERC20Votes-getPastVotes: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getPastVotes-address-uint256-[`ERC20Votes.getPastVotes`]]
  1483. :xref-ERC20Votes-getPastVotes-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-getPastVotes-address-uint256-
  1484. :ERC20Votes-getPastTotalSupply: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getPastTotalSupply-uint256-[`ERC20Votes.getPastTotalSupply`]]
  1485. :xref-ERC20Votes-getPastTotalSupply-uint256-: xref:token/ERC20.adoc#ERC20Votes-getPastTotalSupply-uint256-
  1486. :ERC20Votes-delegate: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegate-address-[`ERC20Votes.delegate`]]
  1487. :xref-ERC20Votes-delegate-address-: xref:token/ERC20.adoc#ERC20Votes-delegate-address-
  1488. :ERC20Votes-delegateBySig: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`ERC20Votes.delegateBySig`]]
  1489. :xref-ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  1490. :ERC20Votes-_maxSupply: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_maxSupply--[`ERC20Votes._maxSupply`]]
  1491. :xref-ERC20Votes-_maxSupply--: xref:token/ERC20.adoc#ERC20Votes-_maxSupply--
  1492. :ERC20Votes-_mint: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_mint-address-uint256-[`ERC20Votes._mint`]]
  1493. :xref-ERC20Votes-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_mint-address-uint256-
  1494. :ERC20Votes-_burn: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_burn-address-uint256-[`ERC20Votes._burn`]]
  1495. :xref-ERC20Votes-_burn-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_burn-address-uint256-
  1496. :ERC20Votes-_afterTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_afterTokenTransfer-address-address-uint256-[`ERC20Votes._afterTokenTransfer`]]
  1497. :xref-ERC20Votes-_afterTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_afterTokenTransfer-address-address-uint256-
  1498. :ERC20Votes-_delegate: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_delegate-address-address-[`ERC20Votes._delegate`]]
  1499. :xref-ERC20Votes-_delegate-address-address-: xref:token/ERC20.adoc#ERC20Votes-_delegate-address-address-
  1500. :ERC20Votes-Checkpoint: pass:normal[xref:token/ERC20.adoc#ERC20Votes-Checkpoint[`ERC20Votes.Checkpoint`]]
  1501. :xref-ERC20Votes-Checkpoint: xref:token/ERC20.adoc#ERC20Votes-Checkpoint
  1502. :ERC20VotesComp: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp[`ERC20VotesComp`]]
  1503. :xref-ERC20VotesComp: xref:token/ERC20.adoc#ERC20VotesComp
  1504. :ERC20VotesComp-getCurrentVotes: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-getCurrentVotes-address-[`ERC20VotesComp.getCurrentVotes`]]
  1505. :xref-ERC20VotesComp-getCurrentVotes-address-: xref:token/ERC20.adoc#ERC20VotesComp-getCurrentVotes-address-
  1506. :ERC20VotesComp-getPriorVotes: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-getPriorVotes-address-uint256-[`ERC20VotesComp.getPriorVotes`]]
  1507. :xref-ERC20VotesComp-getPriorVotes-address-uint256-: xref:token/ERC20.adoc#ERC20VotesComp-getPriorVotes-address-uint256-
  1508. :ERC20VotesComp-_maxSupply: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-_maxSupply--[`ERC20VotesComp._maxSupply`]]
  1509. :xref-ERC20VotesComp-_maxSupply--: xref:token/ERC20.adoc#ERC20VotesComp-_maxSupply--
  1510. :ERC20Wrapper: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper[`ERC20Wrapper`]]
  1511. :xref-ERC20Wrapper: xref:token/ERC20.adoc#ERC20Wrapper
  1512. :ERC20Wrapper-underlying: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-underlying-contract-IERC20[`ERC20Wrapper.underlying`]]
  1513. :xref-ERC20Wrapper-underlying-contract-IERC20: xref:token/ERC20.adoc#ERC20Wrapper-underlying-contract-IERC20
  1514. :ERC20Wrapper-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-constructor-contract-IERC20-[`ERC20Wrapper.constructor`]]
  1515. :xref-ERC20Wrapper-constructor-contract-IERC20-: xref:token/ERC20.adoc#ERC20Wrapper-constructor-contract-IERC20-
  1516. :ERC20Wrapper-depositFor: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-depositFor-address-uint256-[`ERC20Wrapper.depositFor`]]
  1517. :xref-ERC20Wrapper-depositFor-address-uint256-: xref:token/ERC20.adoc#ERC20Wrapper-depositFor-address-uint256-
  1518. :ERC20Wrapper-withdrawTo: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-withdrawTo-address-uint256-[`ERC20Wrapper.withdrawTo`]]
  1519. :xref-ERC20Wrapper-withdrawTo-address-uint256-: xref:token/ERC20.adoc#ERC20Wrapper-withdrawTo-address-uint256-
  1520. :ERC20Wrapper-_recover: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-_recover-address-[`ERC20Wrapper._recover`]]
  1521. :xref-ERC20Wrapper-_recover-address-: xref:token/ERC20.adoc#ERC20Wrapper-_recover-address-
  1522. :IERC20Metadata: pass:normal[xref:token/ERC20.adoc#IERC20Metadata[`IERC20Metadata`]]
  1523. :xref-IERC20Metadata: xref:token/ERC20.adoc#IERC20Metadata
  1524. :IERC20Metadata-name: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-name--[`IERC20Metadata.name`]]
  1525. :xref-IERC20Metadata-name--: xref:token/ERC20.adoc#IERC20Metadata-name--
  1526. :IERC20Metadata-symbol: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-symbol--[`IERC20Metadata.symbol`]]
  1527. :xref-IERC20Metadata-symbol--: xref:token/ERC20.adoc#IERC20Metadata-symbol--
  1528. :IERC20Metadata-decimals: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-decimals--[`IERC20Metadata.decimals`]]
  1529. :xref-IERC20Metadata-decimals--: xref:token/ERC20.adoc#IERC20Metadata-decimals--
  1530. :ERC20Permit: pass:normal[xref:token/ERC20.adoc#ERC20Permit[`ERC20Permit`]]
  1531. :xref-ERC20Permit: xref:token/ERC20.adoc#ERC20Permit
  1532. :ERC20Permit-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Permit-constructor-string-[`ERC20Permit.constructor`]]
  1533. :xref-ERC20Permit-constructor-string-: xref:token/ERC20.adoc#ERC20Permit-constructor-string-
  1534. :ERC20Permit-permit: pass:normal[xref:token/ERC20.adoc#ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`ERC20Permit.permit`]]
  1535. :xref-ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1536. :ERC20Permit-nonces: pass:normal[xref:token/ERC20.adoc#ERC20Permit-nonces-address-[`ERC20Permit.nonces`]]
  1537. :xref-ERC20Permit-nonces-address-: xref:token/ERC20.adoc#ERC20Permit-nonces-address-
  1538. :ERC20Permit-DOMAIN_SEPARATOR: pass:normal[xref:token/ERC20.adoc#ERC20Permit-DOMAIN_SEPARATOR--[`ERC20Permit.DOMAIN_SEPARATOR`]]
  1539. :xref-ERC20Permit-DOMAIN_SEPARATOR--: xref:token/ERC20.adoc#ERC20Permit-DOMAIN_SEPARATOR--
  1540. :ERC20Permit-_useNonce: pass:normal[xref:token/ERC20.adoc#ERC20Permit-_useNonce-address-[`ERC20Permit._useNonce`]]
  1541. :xref-ERC20Permit-_useNonce-address-: xref:token/ERC20.adoc#ERC20Permit-_useNonce-address-
  1542. :IERC20Permit: pass:normal[xref:token/ERC20.adoc#IERC20Permit[`IERC20Permit`]]
  1543. :xref-IERC20Permit: xref:token/ERC20.adoc#IERC20Permit
  1544. :IERC20Permit-permit: pass:normal[xref:token/ERC20.adoc#IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`IERC20Permit.permit`]]
  1545. :xref-IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1546. :IERC20Permit-nonces: pass:normal[xref:token/ERC20.adoc#IERC20Permit-nonces-address-[`IERC20Permit.nonces`]]
  1547. :xref-IERC20Permit-nonces-address-: xref:token/ERC20.adoc#IERC20Permit-nonces-address-
  1548. :IERC20Permit-DOMAIN_SEPARATOR: pass:normal[xref:token/ERC20.adoc#IERC20Permit-DOMAIN_SEPARATOR--[`IERC20Permit.DOMAIN_SEPARATOR`]]
  1549. :xref-IERC20Permit-DOMAIN_SEPARATOR--: xref:token/ERC20.adoc#IERC20Permit-DOMAIN_SEPARATOR--
  1550. :SafeERC20: pass:normal[xref:token/ERC20.adoc#SafeERC20[`SafeERC20`]]
  1551. :xref-SafeERC20: xref:token/ERC20.adoc#SafeERC20
  1552. :SafeERC20-safeTransfer: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeTransfer-contract-IERC20-address-uint256-[`SafeERC20.safeTransfer`]]
  1553. :xref-SafeERC20-safeTransfer-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeTransfer-contract-IERC20-address-uint256-
  1554. :SafeERC20-safeTransferFrom: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-[`SafeERC20.safeTransferFrom`]]
  1555. :xref-SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-
  1556. :SafeERC20-safeApprove: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeApprove-contract-IERC20-address-uint256-[`SafeERC20.safeApprove`]]
  1557. :xref-SafeERC20-safeApprove-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeApprove-contract-IERC20-address-uint256-
  1558. :SafeERC20-safeIncreaseAllowance: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-[`SafeERC20.safeIncreaseAllowance`]]
  1559. :xref-SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-
  1560. :SafeERC20-safeDecreaseAllowance: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-[`SafeERC20.safeDecreaseAllowance`]]
  1561. :xref-SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-
  1562. :TokenTimelock: pass:normal[xref:token/ERC20.adoc#TokenTimelock[`TokenTimelock`]]
  1563. :xref-TokenTimelock: xref:token/ERC20.adoc#TokenTimelock
  1564. :TokenTimelock-constructor: pass:normal[xref:token/ERC20.adoc#TokenTimelock-constructor-contract-IERC20-address-uint256-[`TokenTimelock.constructor`]]
  1565. :xref-TokenTimelock-constructor-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#TokenTimelock-constructor-contract-IERC20-address-uint256-
  1566. :TokenTimelock-token: pass:normal[xref:token/ERC20.adoc#TokenTimelock-token--[`TokenTimelock.token`]]
  1567. :xref-TokenTimelock-token--: xref:token/ERC20.adoc#TokenTimelock-token--
  1568. :TokenTimelock-beneficiary: pass:normal[xref:token/ERC20.adoc#TokenTimelock-beneficiary--[`TokenTimelock.beneficiary`]]
  1569. :xref-TokenTimelock-beneficiary--: xref:token/ERC20.adoc#TokenTimelock-beneficiary--
  1570. :TokenTimelock-releaseTime: pass:normal[xref:token/ERC20.adoc#TokenTimelock-releaseTime--[`TokenTimelock.releaseTime`]]
  1571. :xref-TokenTimelock-releaseTime--: xref:token/ERC20.adoc#TokenTimelock-releaseTime--
  1572. :TokenTimelock-release: pass:normal[xref:token/ERC20.adoc#TokenTimelock-release--[`TokenTimelock.release`]]
  1573. :xref-TokenTimelock-release--: xref:token/ERC20.adoc#TokenTimelock-release--
  1574. :ERC721: pass:normal[xref:token/ERC721.adoc#ERC721[`ERC721`]]
  1575. :xref-ERC721: xref:token/ERC721.adoc#ERC721
  1576. :ERC721-constructor: pass:normal[xref:token/ERC721.adoc#ERC721-constructor-string-string-[`ERC721.constructor`]]
  1577. :xref-ERC721-constructor-string-string-: xref:token/ERC721.adoc#ERC721-constructor-string-string-
  1578. :ERC721-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721-supportsInterface-bytes4-[`ERC721.supportsInterface`]]
  1579. :xref-ERC721-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721-supportsInterface-bytes4-
  1580. :ERC721-balanceOf: pass:normal[xref:token/ERC721.adoc#ERC721-balanceOf-address-[`ERC721.balanceOf`]]
  1581. :xref-ERC721-balanceOf-address-: xref:token/ERC721.adoc#ERC721-balanceOf-address-
  1582. :ERC721-ownerOf: pass:normal[xref:token/ERC721.adoc#ERC721-ownerOf-uint256-[`ERC721.ownerOf`]]
  1583. :xref-ERC721-ownerOf-uint256-: xref:token/ERC721.adoc#ERC721-ownerOf-uint256-
  1584. :ERC721-name: pass:normal[xref:token/ERC721.adoc#ERC721-name--[`ERC721.name`]]
  1585. :xref-ERC721-name--: xref:token/ERC721.adoc#ERC721-name--
  1586. :ERC721-symbol: pass:normal[xref:token/ERC721.adoc#ERC721-symbol--[`ERC721.symbol`]]
  1587. :xref-ERC721-symbol--: xref:token/ERC721.adoc#ERC721-symbol--
  1588. :ERC721-tokenURI: pass:normal[xref:token/ERC721.adoc#ERC721-tokenURI-uint256-[`ERC721.tokenURI`]]
  1589. :xref-ERC721-tokenURI-uint256-: xref:token/ERC721.adoc#ERC721-tokenURI-uint256-
  1590. :ERC721-_baseURI: pass:normal[xref:token/ERC721.adoc#ERC721-_baseURI--[`ERC721._baseURI`]]
  1591. :xref-ERC721-_baseURI--: xref:token/ERC721.adoc#ERC721-_baseURI--
  1592. :ERC721-approve: pass:normal[xref:token/ERC721.adoc#ERC721-approve-address-uint256-[`ERC721.approve`]]
  1593. :xref-ERC721-approve-address-uint256-: xref:token/ERC721.adoc#ERC721-approve-address-uint256-
  1594. :ERC721-getApproved: pass:normal[xref:token/ERC721.adoc#ERC721-getApproved-uint256-[`ERC721.getApproved`]]
  1595. :xref-ERC721-getApproved-uint256-: xref:token/ERC721.adoc#ERC721-getApproved-uint256-
  1596. :ERC721-setApprovalForAll: pass:normal[xref:token/ERC721.adoc#ERC721-setApprovalForAll-address-bool-[`ERC721.setApprovalForAll`]]
  1597. :xref-ERC721-setApprovalForAll-address-bool-: xref:token/ERC721.adoc#ERC721-setApprovalForAll-address-bool-
  1598. :ERC721-isApprovedForAll: pass:normal[xref:token/ERC721.adoc#ERC721-isApprovedForAll-address-address-[`ERC721.isApprovedForAll`]]
  1599. :xref-ERC721-isApprovedForAll-address-address-: xref:token/ERC721.adoc#ERC721-isApprovedForAll-address-address-
  1600. :ERC721-transferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-transferFrom-address-address-uint256-[`ERC721.transferFrom`]]
  1601. :xref-ERC721-transferFrom-address-address-uint256-: xref:token/ERC721.adoc#ERC721-transferFrom-address-address-uint256-
  1602. :ERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-[`ERC721.safeTransferFrom`]]
  1603. :xref-ERC721-safeTransferFrom-address-address-uint256-: xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-
  1604. :ERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-bytes-[`ERC721.safeTransferFrom`]]
  1605. :xref-ERC721-safeTransferFrom-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-bytes-
  1606. :ERC721-_safeTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_safeTransfer-address-address-uint256-bytes-[`ERC721._safeTransfer`]]
  1607. :xref-ERC721-_safeTransfer-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-_safeTransfer-address-address-uint256-bytes-
  1608. :ERC721-_exists: pass:normal[xref:token/ERC721.adoc#ERC721-_exists-uint256-[`ERC721._exists`]]
  1609. :xref-ERC721-_exists-uint256-: xref:token/ERC721.adoc#ERC721-_exists-uint256-
  1610. :ERC721-_isApprovedOrOwner: pass:normal[xref:token/ERC721.adoc#ERC721-_isApprovedOrOwner-address-uint256-[`ERC721._isApprovedOrOwner`]]
  1611. :xref-ERC721-_isApprovedOrOwner-address-uint256-: xref:token/ERC721.adoc#ERC721-_isApprovedOrOwner-address-uint256-
  1612. :ERC721-_safeMint: pass:normal[xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-[`ERC721._safeMint`]]
  1613. :xref-ERC721-_safeMint-address-uint256-: xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-
  1614. :ERC721-_safeMint: pass:normal[xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-bytes-[`ERC721._safeMint`]]
  1615. :xref-ERC721-_safeMint-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-bytes-
  1616. :ERC721-_mint: pass:normal[xref:token/ERC721.adoc#ERC721-_mint-address-uint256-[`ERC721._mint`]]
  1617. :xref-ERC721-_mint-address-uint256-: xref:token/ERC721.adoc#ERC721-_mint-address-uint256-
  1618. :ERC721-_burn: pass:normal[xref:token/ERC721.adoc#ERC721-_burn-uint256-[`ERC721._burn`]]
  1619. :xref-ERC721-_burn-uint256-: xref:token/ERC721.adoc#ERC721-_burn-uint256-
  1620. :ERC721-_transfer: pass:normal[xref:token/ERC721.adoc#ERC721-_transfer-address-address-uint256-[`ERC721._transfer`]]
  1621. :xref-ERC721-_transfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_transfer-address-address-uint256-
  1622. :ERC721-_approve: pass:normal[xref:token/ERC721.adoc#ERC721-_approve-address-uint256-[`ERC721._approve`]]
  1623. :xref-ERC721-_approve-address-uint256-: xref:token/ERC721.adoc#ERC721-_approve-address-uint256-
  1624. :ERC721-_setApprovalForAll: pass:normal[xref:token/ERC721.adoc#ERC721-_setApprovalForAll-address-address-bool-[`ERC721._setApprovalForAll`]]
  1625. :xref-ERC721-_setApprovalForAll-address-address-bool-: xref:token/ERC721.adoc#ERC721-_setApprovalForAll-address-address-bool-
  1626. :ERC721-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_beforeTokenTransfer-address-address-uint256-[`ERC721._beforeTokenTransfer`]]
  1627. :xref-ERC721-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_beforeTokenTransfer-address-address-uint256-
  1628. :ERC721-_afterTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_afterTokenTransfer-address-address-uint256-[`ERC721._afterTokenTransfer`]]
  1629. :xref-ERC721-_afterTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_afterTokenTransfer-address-address-uint256-
  1630. :IERC721: pass:normal[xref:token/ERC721.adoc#IERC721[`IERC721`]]
  1631. :xref-IERC721: xref:token/ERC721.adoc#IERC721
  1632. :IERC721-balanceOf: pass:normal[xref:token/ERC721.adoc#IERC721-balanceOf-address-[`IERC721.balanceOf`]]
  1633. :xref-IERC721-balanceOf-address-: xref:token/ERC721.adoc#IERC721-balanceOf-address-
  1634. :IERC721-ownerOf: pass:normal[xref:token/ERC721.adoc#IERC721-ownerOf-uint256-[`IERC721.ownerOf`]]
  1635. :xref-IERC721-ownerOf-uint256-: xref:token/ERC721.adoc#IERC721-ownerOf-uint256-
  1636. :IERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-[`IERC721.safeTransferFrom`]]
  1637. :xref-IERC721-safeTransferFrom-address-address-uint256-: xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-
  1638. :IERC721-transferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-transferFrom-address-address-uint256-[`IERC721.transferFrom`]]
  1639. :xref-IERC721-transferFrom-address-address-uint256-: xref:token/ERC721.adoc#IERC721-transferFrom-address-address-uint256-
  1640. :IERC721-approve: pass:normal[xref:token/ERC721.adoc#IERC721-approve-address-uint256-[`IERC721.approve`]]
  1641. :xref-IERC721-approve-address-uint256-: xref:token/ERC721.adoc#IERC721-approve-address-uint256-
  1642. :IERC721-getApproved: pass:normal[xref:token/ERC721.adoc#IERC721-getApproved-uint256-[`IERC721.getApproved`]]
  1643. :xref-IERC721-getApproved-uint256-: xref:token/ERC721.adoc#IERC721-getApproved-uint256-
  1644. :IERC721-setApprovalForAll: pass:normal[xref:token/ERC721.adoc#IERC721-setApprovalForAll-address-bool-[`IERC721.setApprovalForAll`]]
  1645. :xref-IERC721-setApprovalForAll-address-bool-: xref:token/ERC721.adoc#IERC721-setApprovalForAll-address-bool-
  1646. :IERC721-isApprovedForAll: pass:normal[xref:token/ERC721.adoc#IERC721-isApprovedForAll-address-address-[`IERC721.isApprovedForAll`]]
  1647. :xref-IERC721-isApprovedForAll-address-address-: xref:token/ERC721.adoc#IERC721-isApprovedForAll-address-address-
  1648. :IERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-bytes-[`IERC721.safeTransferFrom`]]
  1649. :xref-IERC721-safeTransferFrom-address-address-uint256-bytes-: xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-bytes-
  1650. :IERC721-Transfer: pass:normal[xref:token/ERC721.adoc#IERC721-Transfer-address-address-uint256-[`IERC721.Transfer`]]
  1651. :xref-IERC721-Transfer-address-address-uint256-: xref:token/ERC721.adoc#IERC721-Transfer-address-address-uint256-
  1652. :IERC721-Approval: pass:normal[xref:token/ERC721.adoc#IERC721-Approval-address-address-uint256-[`IERC721.Approval`]]
  1653. :xref-IERC721-Approval-address-address-uint256-: xref:token/ERC721.adoc#IERC721-Approval-address-address-uint256-
  1654. :IERC721-ApprovalForAll: pass:normal[xref:token/ERC721.adoc#IERC721-ApprovalForAll-address-address-bool-[`IERC721.ApprovalForAll`]]
  1655. :xref-IERC721-ApprovalForAll-address-address-bool-: xref:token/ERC721.adoc#IERC721-ApprovalForAll-address-address-bool-
  1656. :IERC721Receiver: pass:normal[xref:token/ERC721.adoc#IERC721Receiver[`IERC721Receiver`]]
  1657. :xref-IERC721Receiver: xref:token/ERC721.adoc#IERC721Receiver
  1658. :IERC721Receiver-onERC721Received: pass:normal[xref:token/ERC721.adoc#IERC721Receiver-onERC721Received-address-address-uint256-bytes-[`IERC721Receiver.onERC721Received`]]
  1659. :xref-IERC721Receiver-onERC721Received-address-address-uint256-bytes-: xref:token/ERC721.adoc#IERC721Receiver-onERC721Received-address-address-uint256-bytes-
  1660. :ERC721Burnable: pass:normal[xref:token/ERC721.adoc#ERC721Burnable[`ERC721Burnable`]]
  1661. :xref-ERC721Burnable: xref:token/ERC721.adoc#ERC721Burnable
  1662. :ERC721Burnable-burn: pass:normal[xref:token/ERC721.adoc#ERC721Burnable-burn-uint256-[`ERC721Burnable.burn`]]
  1663. :xref-ERC721Burnable-burn-uint256-: xref:token/ERC721.adoc#ERC721Burnable-burn-uint256-
  1664. :ERC721Enumerable: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable[`ERC721Enumerable`]]
  1665. :xref-ERC721Enumerable: xref:token/ERC721.adoc#ERC721Enumerable
  1666. :ERC721Enumerable-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-supportsInterface-bytes4-[`ERC721Enumerable.supportsInterface`]]
  1667. :xref-ERC721Enumerable-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721Enumerable-supportsInterface-bytes4-
  1668. :ERC721Enumerable-tokenOfOwnerByIndex: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-[`ERC721Enumerable.tokenOfOwnerByIndex`]]
  1669. :xref-ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-
  1670. :ERC721Enumerable-totalSupply: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-totalSupply--[`ERC721Enumerable.totalSupply`]]
  1671. :xref-ERC721Enumerable-totalSupply--: xref:token/ERC721.adoc#ERC721Enumerable-totalSupply--
  1672. :ERC721Enumerable-tokenByIndex: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-tokenByIndex-uint256-[`ERC721Enumerable.tokenByIndex`]]
  1673. :xref-ERC721Enumerable-tokenByIndex-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-tokenByIndex-uint256-
  1674. :ERC721Enumerable-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-[`ERC721Enumerable._beforeTokenTransfer`]]
  1675. :xref-ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-
  1676. :ERC721Pausable: pass:normal[xref:token/ERC721.adoc#ERC721Pausable[`ERC721Pausable`]]
  1677. :xref-ERC721Pausable: xref:token/ERC721.adoc#ERC721Pausable
  1678. :ERC721Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Pausable-_beforeTokenTransfer-address-address-uint256-[`ERC721Pausable._beforeTokenTransfer`]]
  1679. :xref-ERC721Pausable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Pausable-_beforeTokenTransfer-address-address-uint256-
  1680. :ERC721Royalty: pass:normal[xref:token/ERC721.adoc#ERC721Royalty[`ERC721Royalty`]]
  1681. :xref-ERC721Royalty: xref:token/ERC721.adoc#ERC721Royalty
  1682. :ERC721Royalty-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721Royalty-supportsInterface-bytes4-[`ERC721Royalty.supportsInterface`]]
  1683. :xref-ERC721Royalty-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721Royalty-supportsInterface-bytes4-
  1684. :ERC721Royalty-_burn: pass:normal[xref:token/ERC721.adoc#ERC721Royalty-_burn-uint256-[`ERC721Royalty._burn`]]
  1685. :xref-ERC721Royalty-_burn-uint256-: xref:token/ERC721.adoc#ERC721Royalty-_burn-uint256-
  1686. :ERC721URIStorage: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage[`ERC721URIStorage`]]
  1687. :xref-ERC721URIStorage: xref:token/ERC721.adoc#ERC721URIStorage
  1688. :ERC721URIStorage-tokenURI: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-tokenURI-uint256-[`ERC721URIStorage.tokenURI`]]
  1689. :xref-ERC721URIStorage-tokenURI-uint256-: xref:token/ERC721.adoc#ERC721URIStorage-tokenURI-uint256-
  1690. :ERC721URIStorage-_setTokenURI: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-_setTokenURI-uint256-string-[`ERC721URIStorage._setTokenURI`]]
  1691. :xref-ERC721URIStorage-_setTokenURI-uint256-string-: xref:token/ERC721.adoc#ERC721URIStorage-_setTokenURI-uint256-string-
  1692. :ERC721URIStorage-_burn: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-_burn-uint256-[`ERC721URIStorage._burn`]]
  1693. :xref-ERC721URIStorage-_burn-uint256-: xref:token/ERC721.adoc#ERC721URIStorage-_burn-uint256-
  1694. :IERC721Enumerable: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable[`IERC721Enumerable`]]
  1695. :xref-IERC721Enumerable: xref:token/ERC721.adoc#IERC721Enumerable
  1696. :IERC721Enumerable-totalSupply: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-totalSupply--[`IERC721Enumerable.totalSupply`]]
  1697. :xref-IERC721Enumerable-totalSupply--: xref:token/ERC721.adoc#IERC721Enumerable-totalSupply--
  1698. :IERC721Enumerable-tokenOfOwnerByIndex: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-[`IERC721Enumerable.tokenOfOwnerByIndex`]]
  1699. :xref-IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-: xref:token/ERC721.adoc#IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-
  1700. :IERC721Enumerable-tokenByIndex: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-tokenByIndex-uint256-[`IERC721Enumerable.tokenByIndex`]]
  1701. :xref-IERC721Enumerable-tokenByIndex-uint256-: xref:token/ERC721.adoc#IERC721Enumerable-tokenByIndex-uint256-
  1702. :IERC721Metadata: pass:normal[xref:token/ERC721.adoc#IERC721Metadata[`IERC721Metadata`]]
  1703. :xref-IERC721Metadata: xref:token/ERC721.adoc#IERC721Metadata
  1704. :IERC721Metadata-name: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-name--[`IERC721Metadata.name`]]
  1705. :xref-IERC721Metadata-name--: xref:token/ERC721.adoc#IERC721Metadata-name--
  1706. :IERC721Metadata-symbol: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-symbol--[`IERC721Metadata.symbol`]]
  1707. :xref-IERC721Metadata-symbol--: xref:token/ERC721.adoc#IERC721Metadata-symbol--
  1708. :IERC721Metadata-tokenURI: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-tokenURI-uint256-[`IERC721Metadata.tokenURI`]]
  1709. :xref-IERC721Metadata-tokenURI-uint256-: xref:token/ERC721.adoc#IERC721Metadata-tokenURI-uint256-
  1710. :ERC721Votes: pass:normal[xref:token/ERC721.adoc#ERC721Votes[`ERC721Votes`]]
  1711. :xref-ERC721Votes: xref:token/ERC721.adoc#ERC721Votes
  1712. :ERC721Votes-_afterTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Votes-_afterTokenTransfer-address-address-uint256-[`ERC721Votes._afterTokenTransfer`]]
  1713. :xref-ERC721Votes-_afterTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Votes-_afterTokenTransfer-address-address-uint256-
  1714. :ERC721Votes-_getVotingUnits: pass:normal[xref:token/ERC721.adoc#ERC721Votes-_getVotingUnits-address-[`ERC721Votes._getVotingUnits`]]
  1715. :xref-ERC721Votes-_getVotingUnits-address-: xref:token/ERC721.adoc#ERC721Votes-_getVotingUnits-address-
  1716. :ERC721Holder: pass:normal[xref:token/ERC721.adoc#ERC721Holder[`ERC721Holder`]]
  1717. :xref-ERC721Holder: xref:token/ERC721.adoc#ERC721Holder
  1718. :ERC721Holder-onERC721Received: pass:normal[xref:token/ERC721.adoc#ERC721Holder-onERC721Received-address-address-uint256-bytes-[`ERC721Holder.onERC721Received`]]
  1719. :xref-ERC721Holder-onERC721Received-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721Holder-onERC721Received-address-address-uint256-bytes-
  1720. :ERC777: pass:normal[xref:token/ERC777.adoc#ERC777[`ERC777`]]
  1721. :xref-ERC777: xref:token/ERC777.adoc#ERC777
  1722. :ERC777-_ERC1820_REGISTRY: pass:normal[xref:token/ERC777.adoc#ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry[`ERC777._ERC1820_REGISTRY`]]
  1723. :xref-ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry: xref:token/ERC777.adoc#ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry
  1724. :ERC777-constructor: pass:normal[xref:token/ERC777.adoc#ERC777-constructor-string-string-address---[`ERC777.constructor`]]
  1725. :xref-ERC777-constructor-string-string-address---: xref:token/ERC777.adoc#ERC777-constructor-string-string-address---
  1726. :ERC777-name: pass:normal[xref:token/ERC777.adoc#ERC777-name--[`ERC777.name`]]
  1727. :xref-ERC777-name--: xref:token/ERC777.adoc#ERC777-name--
  1728. :ERC777-symbol: pass:normal[xref:token/ERC777.adoc#ERC777-symbol--[`ERC777.symbol`]]
  1729. :xref-ERC777-symbol--: xref:token/ERC777.adoc#ERC777-symbol--
  1730. :ERC777-decimals: pass:normal[xref:token/ERC777.adoc#ERC777-decimals--[`ERC777.decimals`]]
  1731. :xref-ERC777-decimals--: xref:token/ERC777.adoc#ERC777-decimals--
  1732. :ERC777-granularity: pass:normal[xref:token/ERC777.adoc#ERC777-granularity--[`ERC777.granularity`]]
  1733. :xref-ERC777-granularity--: xref:token/ERC777.adoc#ERC777-granularity--
  1734. :ERC777-totalSupply: pass:normal[xref:token/ERC777.adoc#ERC777-totalSupply--[`ERC777.totalSupply`]]
  1735. :xref-ERC777-totalSupply--: xref:token/ERC777.adoc#ERC777-totalSupply--
  1736. :ERC777-balanceOf: pass:normal[xref:token/ERC777.adoc#ERC777-balanceOf-address-[`ERC777.balanceOf`]]
  1737. :xref-ERC777-balanceOf-address-: xref:token/ERC777.adoc#ERC777-balanceOf-address-
  1738. :ERC777-send: pass:normal[xref:token/ERC777.adoc#ERC777-send-address-uint256-bytes-[`ERC777.send`]]
  1739. :xref-ERC777-send-address-uint256-bytes-: xref:token/ERC777.adoc#ERC777-send-address-uint256-bytes-
  1740. :ERC777-transfer: pass:normal[xref:token/ERC777.adoc#ERC777-transfer-address-uint256-[`ERC777.transfer`]]
  1741. :xref-ERC777-transfer-address-uint256-: xref:token/ERC777.adoc#ERC777-transfer-address-uint256-
  1742. :ERC777-burn: pass:normal[xref:token/ERC777.adoc#ERC777-burn-uint256-bytes-[`ERC777.burn`]]
  1743. :xref-ERC777-burn-uint256-bytes-: xref:token/ERC777.adoc#ERC777-burn-uint256-bytes-
  1744. :ERC777-isOperatorFor: pass:normal[xref:token/ERC777.adoc#ERC777-isOperatorFor-address-address-[`ERC777.isOperatorFor`]]
  1745. :xref-ERC777-isOperatorFor-address-address-: xref:token/ERC777.adoc#ERC777-isOperatorFor-address-address-
  1746. :ERC777-authorizeOperator: pass:normal[xref:token/ERC777.adoc#ERC777-authorizeOperator-address-[`ERC777.authorizeOperator`]]
  1747. :xref-ERC777-authorizeOperator-address-: xref:token/ERC777.adoc#ERC777-authorizeOperator-address-
  1748. :ERC777-revokeOperator: pass:normal[xref:token/ERC777.adoc#ERC777-revokeOperator-address-[`ERC777.revokeOperator`]]
  1749. :xref-ERC777-revokeOperator-address-: xref:token/ERC777.adoc#ERC777-revokeOperator-address-
  1750. :ERC777-defaultOperators: pass:normal[xref:token/ERC777.adoc#ERC777-defaultOperators--[`ERC777.defaultOperators`]]
  1751. :xref-ERC777-defaultOperators--: xref:token/ERC777.adoc#ERC777-defaultOperators--
  1752. :ERC777-operatorSend: pass:normal[xref:token/ERC777.adoc#ERC777-operatorSend-address-address-uint256-bytes-bytes-[`ERC777.operatorSend`]]
  1753. :xref-ERC777-operatorSend-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-operatorSend-address-address-uint256-bytes-bytes-
  1754. :ERC777-operatorBurn: pass:normal[xref:token/ERC777.adoc#ERC777-operatorBurn-address-uint256-bytes-bytes-[`ERC777.operatorBurn`]]
  1755. :xref-ERC777-operatorBurn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-operatorBurn-address-uint256-bytes-bytes-
  1756. :ERC777-allowance: pass:normal[xref:token/ERC777.adoc#ERC777-allowance-address-address-[`ERC777.allowance`]]
  1757. :xref-ERC777-allowance-address-address-: xref:token/ERC777.adoc#ERC777-allowance-address-address-
  1758. :ERC777-approve: pass:normal[xref:token/ERC777.adoc#ERC777-approve-address-uint256-[`ERC777.approve`]]
  1759. :xref-ERC777-approve-address-uint256-: xref:token/ERC777.adoc#ERC777-approve-address-uint256-
  1760. :ERC777-transferFrom: pass:normal[xref:token/ERC777.adoc#ERC777-transferFrom-address-address-uint256-[`ERC777.transferFrom`]]
  1761. :xref-ERC777-transferFrom-address-address-uint256-: xref:token/ERC777.adoc#ERC777-transferFrom-address-address-uint256-
  1762. :ERC777-_mint: pass:normal[xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-[`ERC777._mint`]]
  1763. :xref-ERC777-_mint-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-
  1764. :ERC777-_mint: pass:normal[xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-bool-[`ERC777._mint`]]
  1765. :xref-ERC777-_mint-address-uint256-bytes-bytes-bool-: xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-bool-
  1766. :ERC777-_send: pass:normal[xref:token/ERC777.adoc#ERC777-_send-address-address-uint256-bytes-bytes-bool-[`ERC777._send`]]
  1767. :xref-ERC777-_send-address-address-uint256-bytes-bytes-bool-: xref:token/ERC777.adoc#ERC777-_send-address-address-uint256-bytes-bytes-bool-
  1768. :ERC777-_burn: pass:normal[xref:token/ERC777.adoc#ERC777-_burn-address-uint256-bytes-bytes-[`ERC777._burn`]]
  1769. :xref-ERC777-_burn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-_burn-address-uint256-bytes-bytes-
  1770. :ERC777-_approve: pass:normal[xref:token/ERC777.adoc#ERC777-_approve-address-address-uint256-[`ERC777._approve`]]
  1771. :xref-ERC777-_approve-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_approve-address-address-uint256-
  1772. :ERC777-_spendAllowance: pass:normal[xref:token/ERC777.adoc#ERC777-_spendAllowance-address-address-uint256-[`ERC777._spendAllowance`]]
  1773. :xref-ERC777-_spendAllowance-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_spendAllowance-address-address-uint256-
  1774. :ERC777-_beforeTokenTransfer: pass:normal[xref:token/ERC777.adoc#ERC777-_beforeTokenTransfer-address-address-address-uint256-[`ERC777._beforeTokenTransfer`]]
  1775. :xref-ERC777-_beforeTokenTransfer-address-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_beforeTokenTransfer-address-address-address-uint256-
  1776. :IERC777: pass:normal[xref:token/ERC777.adoc#IERC777[`IERC777`]]
  1777. :xref-IERC777: xref:token/ERC777.adoc#IERC777
  1778. :IERC777-name: pass:normal[xref:token/ERC777.adoc#IERC777-name--[`IERC777.name`]]
  1779. :xref-IERC777-name--: xref:token/ERC777.adoc#IERC777-name--
  1780. :IERC777-symbol: pass:normal[xref:token/ERC777.adoc#IERC777-symbol--[`IERC777.symbol`]]
  1781. :xref-IERC777-symbol--: xref:token/ERC777.adoc#IERC777-symbol--
  1782. :IERC777-granularity: pass:normal[xref:token/ERC777.adoc#IERC777-granularity--[`IERC777.granularity`]]
  1783. :xref-IERC777-granularity--: xref:token/ERC777.adoc#IERC777-granularity--
  1784. :IERC777-totalSupply: pass:normal[xref:token/ERC777.adoc#IERC777-totalSupply--[`IERC777.totalSupply`]]
  1785. :xref-IERC777-totalSupply--: xref:token/ERC777.adoc#IERC777-totalSupply--
  1786. :IERC777-balanceOf: pass:normal[xref:token/ERC777.adoc#IERC777-balanceOf-address-[`IERC777.balanceOf`]]
  1787. :xref-IERC777-balanceOf-address-: xref:token/ERC777.adoc#IERC777-balanceOf-address-
  1788. :IERC777-send: pass:normal[xref:token/ERC777.adoc#IERC777-send-address-uint256-bytes-[`IERC777.send`]]
  1789. :xref-IERC777-send-address-uint256-bytes-: xref:token/ERC777.adoc#IERC777-send-address-uint256-bytes-
  1790. :IERC777-burn: pass:normal[xref:token/ERC777.adoc#IERC777-burn-uint256-bytes-[`IERC777.burn`]]
  1791. :xref-IERC777-burn-uint256-bytes-: xref:token/ERC777.adoc#IERC777-burn-uint256-bytes-
  1792. :IERC777-isOperatorFor: pass:normal[xref:token/ERC777.adoc#IERC777-isOperatorFor-address-address-[`IERC777.isOperatorFor`]]
  1793. :xref-IERC777-isOperatorFor-address-address-: xref:token/ERC777.adoc#IERC777-isOperatorFor-address-address-
  1794. :IERC777-authorizeOperator: pass:normal[xref:token/ERC777.adoc#IERC777-authorizeOperator-address-[`IERC777.authorizeOperator`]]
  1795. :xref-IERC777-authorizeOperator-address-: xref:token/ERC777.adoc#IERC777-authorizeOperator-address-
  1796. :IERC777-revokeOperator: pass:normal[xref:token/ERC777.adoc#IERC777-revokeOperator-address-[`IERC777.revokeOperator`]]
  1797. :xref-IERC777-revokeOperator-address-: xref:token/ERC777.adoc#IERC777-revokeOperator-address-
  1798. :IERC777-defaultOperators: pass:normal[xref:token/ERC777.adoc#IERC777-defaultOperators--[`IERC777.defaultOperators`]]
  1799. :xref-IERC777-defaultOperators--: xref:token/ERC777.adoc#IERC777-defaultOperators--
  1800. :IERC777-operatorSend: pass:normal[xref:token/ERC777.adoc#IERC777-operatorSend-address-address-uint256-bytes-bytes-[`IERC777.operatorSend`]]
  1801. :xref-IERC777-operatorSend-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-operatorSend-address-address-uint256-bytes-bytes-
  1802. :IERC777-operatorBurn: pass:normal[xref:token/ERC777.adoc#IERC777-operatorBurn-address-uint256-bytes-bytes-[`IERC777.operatorBurn`]]
  1803. :xref-IERC777-operatorBurn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-operatorBurn-address-uint256-bytes-bytes-
  1804. :IERC777-Sent: pass:normal[xref:token/ERC777.adoc#IERC777-Sent-address-address-address-uint256-bytes-bytes-[`IERC777.Sent`]]
  1805. :xref-IERC777-Sent-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Sent-address-address-address-uint256-bytes-bytes-
  1806. :IERC777-Minted: pass:normal[xref:token/ERC777.adoc#IERC777-Minted-address-address-uint256-bytes-bytes-[`IERC777.Minted`]]
  1807. :xref-IERC777-Minted-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Minted-address-address-uint256-bytes-bytes-
  1808. :IERC777-Burned: pass:normal[xref:token/ERC777.adoc#IERC777-Burned-address-address-uint256-bytes-bytes-[`IERC777.Burned`]]
  1809. :xref-IERC777-Burned-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Burned-address-address-uint256-bytes-bytes-
  1810. :IERC777-AuthorizedOperator: pass:normal[xref:token/ERC777.adoc#IERC777-AuthorizedOperator-address-address-[`IERC777.AuthorizedOperator`]]
  1811. :xref-IERC777-AuthorizedOperator-address-address-: xref:token/ERC777.adoc#IERC777-AuthorizedOperator-address-address-
  1812. :IERC777-RevokedOperator: pass:normal[xref:token/ERC777.adoc#IERC777-RevokedOperator-address-address-[`IERC777.RevokedOperator`]]
  1813. :xref-IERC777-RevokedOperator-address-address-: xref:token/ERC777.adoc#IERC777-RevokedOperator-address-address-
  1814. :IERC777Recipient: pass:normal[xref:token/ERC777.adoc#IERC777Recipient[`IERC777Recipient`]]
  1815. :xref-IERC777Recipient: xref:token/ERC777.adoc#IERC777Recipient
  1816. :IERC777Recipient-tokensReceived: pass:normal[xref:token/ERC777.adoc#IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-[`IERC777Recipient.tokensReceived`]]
  1817. :xref-IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-
  1818. :IERC777Sender: pass:normal[xref:token/ERC777.adoc#IERC777Sender[`IERC777Sender`]]
  1819. :xref-IERC777Sender: xref:token/ERC777.adoc#IERC777Sender
  1820. :IERC777Sender-tokensToSend: pass:normal[xref:token/ERC777.adoc#IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-[`IERC777Sender.tokensToSend`]]
  1821. :xref-IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-
  1822. :ERC777PresetFixedSupply: pass:normal[xref:token/ERC777.adoc#ERC777PresetFixedSupply[`ERC777PresetFixedSupply`]]
  1823. :xref-ERC777PresetFixedSupply: xref:token/ERC777.adoc#ERC777PresetFixedSupply
  1824. :ERC777PresetFixedSupply-constructor: pass:normal[xref:token/ERC777.adoc#ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-[`ERC777PresetFixedSupply.constructor`]]
  1825. :xref-ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-: xref:token/ERC777.adoc#ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-
  1826. :ERC2981: pass:normal[xref:token/common.adoc#ERC2981[`ERC2981`]]
  1827. :xref-ERC2981: xref:token/common.adoc#ERC2981
  1828. :ERC2981-supportsInterface: pass:normal[xref:token/common.adoc#ERC2981-supportsInterface-bytes4-[`ERC2981.supportsInterface`]]
  1829. :xref-ERC2981-supportsInterface-bytes4-: xref:token/common.adoc#ERC2981-supportsInterface-bytes4-
  1830. :ERC2981-royaltyInfo: pass:normal[xref:token/common.adoc#ERC2981-royaltyInfo-uint256-uint256-[`ERC2981.royaltyInfo`]]
  1831. :xref-ERC2981-royaltyInfo-uint256-uint256-: xref:token/common.adoc#ERC2981-royaltyInfo-uint256-uint256-
  1832. :ERC2981-_feeDenominator: pass:normal[xref:token/common.adoc#ERC2981-_feeDenominator--[`ERC2981._feeDenominator`]]
  1833. :xref-ERC2981-_feeDenominator--: xref:token/common.adoc#ERC2981-_feeDenominator--
  1834. :ERC2981-_setDefaultRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_setDefaultRoyalty-address-uint96-[`ERC2981._setDefaultRoyalty`]]
  1835. :xref-ERC2981-_setDefaultRoyalty-address-uint96-: xref:token/common.adoc#ERC2981-_setDefaultRoyalty-address-uint96-
  1836. :ERC2981-_deleteDefaultRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_deleteDefaultRoyalty--[`ERC2981._deleteDefaultRoyalty`]]
  1837. :xref-ERC2981-_deleteDefaultRoyalty--: xref:token/common.adoc#ERC2981-_deleteDefaultRoyalty--
  1838. :ERC2981-_setTokenRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_setTokenRoyalty-uint256-address-uint96-[`ERC2981._setTokenRoyalty`]]
  1839. :xref-ERC2981-_setTokenRoyalty-uint256-address-uint96-: xref:token/common.adoc#ERC2981-_setTokenRoyalty-uint256-address-uint96-
  1840. :ERC2981-_resetTokenRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_resetTokenRoyalty-uint256-[`ERC2981._resetTokenRoyalty`]]
  1841. :xref-ERC2981-_resetTokenRoyalty-uint256-: xref:token/common.adoc#ERC2981-_resetTokenRoyalty-uint256-
  1842. :ERC2981-RoyaltyInfo: pass:normal[xref:token/common.adoc#ERC2981-RoyaltyInfo[`ERC2981.RoyaltyInfo`]]
  1843. :xref-ERC2981-RoyaltyInfo: xref:token/common.adoc#ERC2981-RoyaltyInfo
  1844. :ERC1155PresetMinterPauser: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser[`ERC1155PresetMinterPauser`]]
  1845. :xref-ERC1155PresetMinterPauser: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser
  1846. :ERC1155PresetMinterPauser-MINTER_ROLE: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-MINTER_ROLE-bytes32[`ERC1155PresetMinterPauser.MINTER_ROLE`]]
  1847. :xref-ERC1155PresetMinterPauser-MINTER_ROLE-bytes32: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-MINTER_ROLE-bytes32
  1848. :ERC1155PresetMinterPauser-PAUSER_ROLE: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32[`ERC1155PresetMinterPauser.PAUSER_ROLE`]]
  1849. :xref-ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32
  1850. :ERC1155PresetMinterPauser-constructor: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-constructor-string-[`ERC1155PresetMinterPauser.constructor`]]
  1851. :xref-ERC1155PresetMinterPauser-constructor-string-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-constructor-string-
  1852. :ERC1155PresetMinterPauser-mint: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-[`ERC1155PresetMinterPauser.mint`]]
  1853. :xref-ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-
  1854. :ERC1155PresetMinterPauser-mintBatch: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-[`ERC1155PresetMinterPauser.mintBatch`]]
  1855. :xref-ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-
  1856. :ERC1155PresetMinterPauser-pause: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-pause--[`ERC1155PresetMinterPauser.pause`]]
  1857. :xref-ERC1155PresetMinterPauser-pause--: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-pause--
  1858. :ERC1155PresetMinterPauser-unpause: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-unpause--[`ERC1155PresetMinterPauser.unpause`]]
  1859. :xref-ERC1155PresetMinterPauser-unpause--: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-unpause--
  1860. :ERC1155PresetMinterPauser-supportsInterface: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-supportsInterface-bytes4-[`ERC1155PresetMinterPauser.supportsInterface`]]
  1861. :xref-ERC1155PresetMinterPauser-supportsInterface-bytes4-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-supportsInterface-bytes4-
  1862. :ERC1155PresetMinterPauser-_beforeTokenTransfer: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155PresetMinterPauser._beforeTokenTransfer`]]
  1863. :xref-ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1864. :ERC20PresetFixedSupply: pass:normal[xref:token/ERC20/presets.md#ERC20PresetFixedSupply[`ERC20PresetFixedSupply`]]
  1865. :xref-ERC20PresetFixedSupply: xref:token/ERC20/presets.md#ERC20PresetFixedSupply
  1866. :ERC20PresetFixedSupply-constructor: pass:normal[xref:token/ERC20/presets.md#ERC20PresetFixedSupply-constructor-string-string-uint256-address-[`ERC20PresetFixedSupply.constructor`]]
  1867. :xref-ERC20PresetFixedSupply-constructor-string-string-uint256-address-: xref:token/ERC20/presets.md#ERC20PresetFixedSupply-constructor-string-string-uint256-address-
  1868. :ERC20PresetMinterPauser: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser[`ERC20PresetMinterPauser`]]
  1869. :xref-ERC20PresetMinterPauser: xref:token/ERC20/presets.md#ERC20PresetMinterPauser
  1870. :ERC20PresetMinterPauser-MINTER_ROLE: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-MINTER_ROLE-bytes32[`ERC20PresetMinterPauser.MINTER_ROLE`]]
  1871. :xref-ERC20PresetMinterPauser-MINTER_ROLE-bytes32: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-MINTER_ROLE-bytes32
  1872. :ERC20PresetMinterPauser-PAUSER_ROLE: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-PAUSER_ROLE-bytes32[`ERC20PresetMinterPauser.PAUSER_ROLE`]]
  1873. :xref-ERC20PresetMinterPauser-PAUSER_ROLE-bytes32: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-PAUSER_ROLE-bytes32
  1874. :ERC20PresetMinterPauser-constructor: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-constructor-string-string-[`ERC20PresetMinterPauser.constructor`]]
  1875. :xref-ERC20PresetMinterPauser-constructor-string-string-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-constructor-string-string-
  1876. :ERC20PresetMinterPauser-mint: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-mint-address-uint256-[`ERC20PresetMinterPauser.mint`]]
  1877. :xref-ERC20PresetMinterPauser-mint-address-uint256-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-mint-address-uint256-
  1878. :ERC20PresetMinterPauser-pause: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-pause--[`ERC20PresetMinterPauser.pause`]]
  1879. :xref-ERC20PresetMinterPauser-pause--: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-pause--
  1880. :ERC20PresetMinterPauser-unpause: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-unpause--[`ERC20PresetMinterPauser.unpause`]]
  1881. :xref-ERC20PresetMinterPauser-unpause--: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-unpause--
  1882. :ERC20PresetMinterPauser-_beforeTokenTransfer: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-[`ERC20PresetMinterPauser._beforeTokenTransfer`]]
  1883. :xref-ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-
  1884. :ERC721PresetMinterPauserAutoId: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId[`ERC721PresetMinterPauserAutoId`]]
  1885. :xref-ERC721PresetMinterPauserAutoId: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId
  1886. :ERC721PresetMinterPauserAutoId-MINTER_ROLE: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32[`ERC721PresetMinterPauserAutoId.MINTER_ROLE`]]
  1887. :xref-ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32
  1888. :ERC721PresetMinterPauserAutoId-PAUSER_ROLE: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32[`ERC721PresetMinterPauserAutoId.PAUSER_ROLE`]]
  1889. :xref-ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32
  1890. :ERC721PresetMinterPauserAutoId-constructor: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-constructor-string-string-string-[`ERC721PresetMinterPauserAutoId.constructor`]]
  1891. :xref-ERC721PresetMinterPauserAutoId-constructor-string-string-string-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-constructor-string-string-string-
  1892. :ERC721PresetMinterPauserAutoId-_baseURI: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_baseURI--[`ERC721PresetMinterPauserAutoId._baseURI`]]
  1893. :xref-ERC721PresetMinterPauserAutoId-_baseURI--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_baseURI--
  1894. :ERC721PresetMinterPauserAutoId-mint: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-mint-address-[`ERC721PresetMinterPauserAutoId.mint`]]
  1895. :xref-ERC721PresetMinterPauserAutoId-mint-address-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-mint-address-
  1896. :ERC721PresetMinterPauserAutoId-pause: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-pause--[`ERC721PresetMinterPauserAutoId.pause`]]
  1897. :xref-ERC721PresetMinterPauserAutoId-pause--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-pause--
  1898. :ERC721PresetMinterPauserAutoId-unpause: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-unpause--[`ERC721PresetMinterPauserAutoId.unpause`]]
  1899. :xref-ERC721PresetMinterPauserAutoId-unpause--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-unpause--
  1900. :ERC721PresetMinterPauserAutoId-_beforeTokenTransfer: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-[`ERC721PresetMinterPauserAutoId._beforeTokenTransfer`]]
  1901. :xref-ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-
  1902. :ERC721PresetMinterPauserAutoId-supportsInterface: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-[`ERC721PresetMinterPauserAutoId.supportsInterface`]]
  1903. :xref-ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-
  1904. = Utilities
  1905. [.readme-notice]
  1906. NOTE: This document is better viewed at https://docs.openzeppelin.com/contracts/api/utils
  1907. Miscellaneous contracts and libraries containing utility functions you can use to improve security, work with new data types, or safely use low-level primitives.
  1908. 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.
  1909. {Multicall} provides a function to batch together multiple calls in a single external call.
  1910. For new data types:
  1911. * {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.
  1912. * {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`).
  1913. * {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.
  1914. [NOTE]
  1915. ====
  1916. Because Solidity does not support generic types, {EnumerableMap} and {EnumerableSet} are specialized to a limited number of key-value types.
  1917. As of v3.0, {EnumerableMap} supports `uint256 -> address` (`UintToAddressMap`), and {EnumerableSet} supports `address` and `uint256` (`AddressSet` and `UintSet`).
  1918. ====
  1919. 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.
  1920. == Math
  1921. :Math: pass:normal[xref:#Math[`++Math++`]]
  1922. :max: pass:normal[xref:#Math-max-uint256-uint256-[`++max++`]]
  1923. :min: pass:normal[xref:#Math-min-uint256-uint256-[`++min++`]]
  1924. :average: pass:normal[xref:#Math-average-uint256-uint256-[`++average++`]]
  1925. :ceilDiv: pass:normal[xref:#Math-ceilDiv-uint256-uint256-[`++ceilDiv++`]]
  1926. [.contract]
  1927. [[Math]]
  1928. === `++Math++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/math/Math.sol[{github-icon},role=heading-link]
  1929. [.hljs-theme-light.nopadding]
  1930. ```solidity
  1931. import "@openzeppelin/contracts/utils/math/Math.sol";
  1932. ```
  1933. Standard math utilities missing in the Solidity language.
  1934. [.contract-index]
  1935. .Functions
  1936. --
  1937. * {xref-Math-max-uint256-uint256-}[`++max(a, b)++`]
  1938. * {xref-Math-min-uint256-uint256-}[`++min(a, b)++`]
  1939. * {xref-Math-average-uint256-uint256-}[`++average(a, b)++`]
  1940. * {xref-Math-ceilDiv-uint256-uint256-}[`++ceilDiv(a, b)++`]
  1941. --
  1942. [.contract-item]
  1943. [[Math-max-uint256-uint256-]]
  1944. ==== `[.contract-item-name]#++max++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  1945. Returns the largest of two numbers.
  1946. [.contract-item]
  1947. [[Math-min-uint256-uint256-]]
  1948. ==== `[.contract-item-name]#++min++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  1949. Returns the smallest of two numbers.
  1950. [.contract-item]
  1951. [[Math-average-uint256-uint256-]]
  1952. ==== `[.contract-item-name]#++average++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  1953. Returns the average of two numbers. The result is rounded towards
  1954. zero.
  1955. [.contract-item]
  1956. [[Math-ceilDiv-uint256-uint256-]]
  1957. ==== `[.contract-item-name]#++ceilDiv++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  1958. Returns the ceiling of the division of two numbers.
  1959. This differs from standard division with `/` in that it rounds up instead
  1960. of rounding down.
  1961. :SignedMath: pass:normal[xref:#SignedMath[`++SignedMath++`]]
  1962. :max: pass:normal[xref:#SignedMath-max-int256-int256-[`++max++`]]
  1963. :min: pass:normal[xref:#SignedMath-min-int256-int256-[`++min++`]]
  1964. :average: pass:normal[xref:#SignedMath-average-int256-int256-[`++average++`]]
  1965. :abs: pass:normal[xref:#SignedMath-abs-int256-[`++abs++`]]
  1966. [.contract]
  1967. [[SignedMath]]
  1968. === `++SignedMath++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/math/SignedMath.sol[{github-icon},role=heading-link]
  1969. [.hljs-theme-light.nopadding]
  1970. ```solidity
  1971. import "@openzeppelin/contracts/utils/math/SignedMath.sol";
  1972. ```
  1973. Standard signed math utilities missing in the Solidity language.
  1974. [.contract-index]
  1975. .Functions
  1976. --
  1977. * {xref-SignedMath-max-int256-int256-}[`++max(a, b)++`]
  1978. * {xref-SignedMath-min-int256-int256-}[`++min(a, b)++`]
  1979. * {xref-SignedMath-average-int256-int256-}[`++average(a, b)++`]
  1980. * {xref-SignedMath-abs-int256-}[`++abs(n)++`]
  1981. --
  1982. [.contract-item]
  1983. [[SignedMath-max-int256-int256-]]
  1984. ==== `[.contract-item-name]#++max++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  1985. Returns the largest of two signed numbers.
  1986. [.contract-item]
  1987. [[SignedMath-min-int256-int256-]]
  1988. ==== `[.contract-item-name]#++min++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  1989. Returns the smallest of two signed numbers.
  1990. [.contract-item]
  1991. [[SignedMath-average-int256-int256-]]
  1992. ==== `[.contract-item-name]#++average++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  1993. Returns the average of two signed numbers without overflow.
  1994. The result is rounded towards zero.
  1995. [.contract-item]
  1996. [[SignedMath-abs-int256-]]
  1997. ==== `[.contract-item-name]#++abs++#++(int256 n) → uint256++` [.item-kind]#internal#
  1998. Returns the absolute unsigned value of a signed value.
  1999. :SafeCast: pass:normal[xref:#SafeCast[`++SafeCast++`]]
  2000. :toUint224: pass:normal[xref:#SafeCast-toUint224-uint256-[`++toUint224++`]]
  2001. :toUint128: pass:normal[xref:#SafeCast-toUint128-uint256-[`++toUint128++`]]
  2002. :toUint96: pass:normal[xref:#SafeCast-toUint96-uint256-[`++toUint96++`]]
  2003. :toUint64: pass:normal[xref:#SafeCast-toUint64-uint256-[`++toUint64++`]]
  2004. :toUint32: pass:normal[xref:#SafeCast-toUint32-uint256-[`++toUint32++`]]
  2005. :toUint16: pass:normal[xref:#SafeCast-toUint16-uint256-[`++toUint16++`]]
  2006. :toUint8: pass:normal[xref:#SafeCast-toUint8-uint256-[`++toUint8++`]]
  2007. :toUint256: pass:normal[xref:#SafeCast-toUint256-int256-[`++toUint256++`]]
  2008. :toInt128: pass:normal[xref:#SafeCast-toInt128-int256-[`++toInt128++`]]
  2009. :toInt64: pass:normal[xref:#SafeCast-toInt64-int256-[`++toInt64++`]]
  2010. :toInt32: pass:normal[xref:#SafeCast-toInt32-int256-[`++toInt32++`]]
  2011. :toInt16: pass:normal[xref:#SafeCast-toInt16-int256-[`++toInt16++`]]
  2012. :toInt8: pass:normal[xref:#SafeCast-toInt8-int256-[`++toInt8++`]]
  2013. :toInt256: pass:normal[xref:#SafeCast-toInt256-uint256-[`++toInt256++`]]
  2014. [.contract]
  2015. [[SafeCast]]
  2016. === `++SafeCast++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/math/SafeCast.sol[{github-icon},role=heading-link]
  2017. [.hljs-theme-light.nopadding]
  2018. ```solidity
  2019. import "@openzeppelin/contracts/utils/math/SafeCast.sol";
  2020. ```
  2021. Wrappers over Solidity's uintXX/intXX casting operators with added overflow
  2022. checks.
  2023. Downcasting from uint256/int256 in Solidity does not revert on overflow. This can
  2024. easily result in undesired exploitation or bugs, since developers usually
  2025. assume that overflows raise errors. `SafeCast` restores this intuition by
  2026. reverting the transaction when such an operation overflows.
  2027. Using this library instead of the unchecked operations eliminates an entire
  2028. class of bugs, so it's recommended to use it always.
  2029. Can be combined with {SafeMath} and {SignedSafeMath} to extend it to smaller types, by performing
  2030. all math on `uint256` and `int256` and then downcasting.
  2031. [.contract-index]
  2032. .Functions
  2033. --
  2034. * {xref-SafeCast-toUint224-uint256-}[`++toUint224(value)++`]
  2035. * {xref-SafeCast-toUint128-uint256-}[`++toUint128(value)++`]
  2036. * {xref-SafeCast-toUint96-uint256-}[`++toUint96(value)++`]
  2037. * {xref-SafeCast-toUint64-uint256-}[`++toUint64(value)++`]
  2038. * {xref-SafeCast-toUint32-uint256-}[`++toUint32(value)++`]
  2039. * {xref-SafeCast-toUint16-uint256-}[`++toUint16(value)++`]
  2040. * {xref-SafeCast-toUint8-uint256-}[`++toUint8(value)++`]
  2041. * {xref-SafeCast-toUint256-int256-}[`++toUint256(value)++`]
  2042. * {xref-SafeCast-toInt128-int256-}[`++toInt128(value)++`]
  2043. * {xref-SafeCast-toInt64-int256-}[`++toInt64(value)++`]
  2044. * {xref-SafeCast-toInt32-int256-}[`++toInt32(value)++`]
  2045. * {xref-SafeCast-toInt16-int256-}[`++toInt16(value)++`]
  2046. * {xref-SafeCast-toInt8-int256-}[`++toInt8(value)++`]
  2047. * {xref-SafeCast-toInt256-uint256-}[`++toInt256(value)++`]
  2048. --
  2049. [.contract-item]
  2050. [[SafeCast-toUint224-uint256-]]
  2051. ==== `[.contract-item-name]#++toUint224++#++(uint256 value) → uint224++` [.item-kind]#internal#
  2052. Returns the downcasted uint224 from uint256, reverting on
  2053. overflow (when the input is greater than largest uint224).
  2054. Counterpart to Solidity's `uint224` operator.
  2055. Requirements:
  2056. - input must fit into 224 bits
  2057. [.contract-item]
  2058. [[SafeCast-toUint128-uint256-]]
  2059. ==== `[.contract-item-name]#++toUint128++#++(uint256 value) → uint128++` [.item-kind]#internal#
  2060. Returns the downcasted uint128 from uint256, reverting on
  2061. overflow (when the input is greater than largest uint128).
  2062. Counterpart to Solidity's `uint128` operator.
  2063. Requirements:
  2064. - input must fit into 128 bits
  2065. [.contract-item]
  2066. [[SafeCast-toUint96-uint256-]]
  2067. ==== `[.contract-item-name]#++toUint96++#++(uint256 value) → uint96++` [.item-kind]#internal#
  2068. Returns the downcasted uint96 from uint256, reverting on
  2069. overflow (when the input is greater than largest uint96).
  2070. Counterpart to Solidity's `uint96` operator.
  2071. Requirements:
  2072. - input must fit into 96 bits
  2073. [.contract-item]
  2074. [[SafeCast-toUint64-uint256-]]
  2075. ==== `[.contract-item-name]#++toUint64++#++(uint256 value) → uint64++` [.item-kind]#internal#
  2076. Returns the downcasted uint64 from uint256, reverting on
  2077. overflow (when the input is greater than largest uint64).
  2078. Counterpart to Solidity's `uint64` operator.
  2079. Requirements:
  2080. - input must fit into 64 bits
  2081. [.contract-item]
  2082. [[SafeCast-toUint32-uint256-]]
  2083. ==== `[.contract-item-name]#++toUint32++#++(uint256 value) → uint32++` [.item-kind]#internal#
  2084. Returns the downcasted uint32 from uint256, reverting on
  2085. overflow (when the input is greater than largest uint32).
  2086. Counterpart to Solidity's `uint32` operator.
  2087. Requirements:
  2088. - input must fit into 32 bits
  2089. [.contract-item]
  2090. [[SafeCast-toUint16-uint256-]]
  2091. ==== `[.contract-item-name]#++toUint16++#++(uint256 value) → uint16++` [.item-kind]#internal#
  2092. Returns the downcasted uint16 from uint256, reverting on
  2093. overflow (when the input is greater than largest uint16).
  2094. Counterpart to Solidity's `uint16` operator.
  2095. Requirements:
  2096. - input must fit into 16 bits
  2097. [.contract-item]
  2098. [[SafeCast-toUint8-uint256-]]
  2099. ==== `[.contract-item-name]#++toUint8++#++(uint256 value) → uint8++` [.item-kind]#internal#
  2100. Returns the downcasted uint8 from uint256, reverting on
  2101. overflow (when the input is greater than largest uint8).
  2102. Counterpart to Solidity's `uint8` operator.
  2103. Requirements:
  2104. - input must fit into 8 bits.
  2105. [.contract-item]
  2106. [[SafeCast-toUint256-int256-]]
  2107. ==== `[.contract-item-name]#++toUint256++#++(int256 value) → uint256++` [.item-kind]#internal#
  2108. Converts a signed int256 into an unsigned uint256.
  2109. Requirements:
  2110. - input must be greater than or equal to 0.
  2111. [.contract-item]
  2112. [[SafeCast-toInt128-int256-]]
  2113. ==== `[.contract-item-name]#++toInt128++#++(int256 value) → int128++` [.item-kind]#internal#
  2114. Returns the downcasted int128 from int256, reverting on
  2115. overflow (when the input is less than smallest int128 or
  2116. greater than largest int128).
  2117. Counterpart to Solidity's `int128` operator.
  2118. Requirements:
  2119. - input must fit into 128 bits
  2120. _Available since v3.1._
  2121. [.contract-item]
  2122. [[SafeCast-toInt64-int256-]]
  2123. ==== `[.contract-item-name]#++toInt64++#++(int256 value) → int64++` [.item-kind]#internal#
  2124. Returns the downcasted int64 from int256, reverting on
  2125. overflow (when the input is less than smallest int64 or
  2126. greater than largest int64).
  2127. Counterpart to Solidity's `int64` operator.
  2128. Requirements:
  2129. - input must fit into 64 bits
  2130. _Available since v3.1._
  2131. [.contract-item]
  2132. [[SafeCast-toInt32-int256-]]
  2133. ==== `[.contract-item-name]#++toInt32++#++(int256 value) → int32++` [.item-kind]#internal#
  2134. Returns the downcasted int32 from int256, reverting on
  2135. overflow (when the input is less than smallest int32 or
  2136. greater than largest int32).
  2137. Counterpart to Solidity's `int32` operator.
  2138. Requirements:
  2139. - input must fit into 32 bits
  2140. _Available since v3.1._
  2141. [.contract-item]
  2142. [[SafeCast-toInt16-int256-]]
  2143. ==== `[.contract-item-name]#++toInt16++#++(int256 value) → int16++` [.item-kind]#internal#
  2144. Returns the downcasted int16 from int256, reverting on
  2145. overflow (when the input is less than smallest int16 or
  2146. greater than largest int16).
  2147. Counterpart to Solidity's `int16` operator.
  2148. Requirements:
  2149. - input must fit into 16 bits
  2150. _Available since v3.1._
  2151. [.contract-item]
  2152. [[SafeCast-toInt8-int256-]]
  2153. ==== `[.contract-item-name]#++toInt8++#++(int256 value) → int8++` [.item-kind]#internal#
  2154. Returns the downcasted int8 from int256, reverting on
  2155. overflow (when the input is less than smallest int8 or
  2156. greater than largest int8).
  2157. Counterpart to Solidity's `int8` operator.
  2158. Requirements:
  2159. - input must fit into 8 bits.
  2160. _Available since v3.1._
  2161. [.contract-item]
  2162. [[SafeCast-toInt256-uint256-]]
  2163. ==== `[.contract-item-name]#++toInt256++#++(uint256 value) → int256++` [.item-kind]#internal#
  2164. Converts an unsigned uint256 into a signed int256.
  2165. Requirements:
  2166. - input must be less than or equal to maxInt256.
  2167. :SafeMath: pass:normal[xref:#SafeMath[`++SafeMath++`]]
  2168. :tryAdd: pass:normal[xref:#SafeMath-tryAdd-uint256-uint256-[`++tryAdd++`]]
  2169. :trySub: pass:normal[xref:#SafeMath-trySub-uint256-uint256-[`++trySub++`]]
  2170. :tryMul: pass:normal[xref:#SafeMath-tryMul-uint256-uint256-[`++tryMul++`]]
  2171. :tryDiv: pass:normal[xref:#SafeMath-tryDiv-uint256-uint256-[`++tryDiv++`]]
  2172. :tryMod: pass:normal[xref:#SafeMath-tryMod-uint256-uint256-[`++tryMod++`]]
  2173. :add: pass:normal[xref:#SafeMath-add-uint256-uint256-[`++add++`]]
  2174. :sub: pass:normal[xref:#SafeMath-sub-uint256-uint256-[`++sub++`]]
  2175. :mul: pass:normal[xref:#SafeMath-mul-uint256-uint256-[`++mul++`]]
  2176. :div: pass:normal[xref:#SafeMath-div-uint256-uint256-[`++div++`]]
  2177. :mod: pass:normal[xref:#SafeMath-mod-uint256-uint256-[`++mod++`]]
  2178. :sub: pass:normal[xref:#SafeMath-sub-uint256-uint256-string-[`++sub++`]]
  2179. :div: pass:normal[xref:#SafeMath-div-uint256-uint256-string-[`++div++`]]
  2180. :mod: pass:normal[xref:#SafeMath-mod-uint256-uint256-string-[`++mod++`]]
  2181. [.contract]
  2182. [[SafeMath]]
  2183. === `++SafeMath++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/math/SafeMath.sol[{github-icon},role=heading-link]
  2184. [.hljs-theme-light.nopadding]
  2185. ```solidity
  2186. import "@openzeppelin/contracts/utils/math/SafeMath.sol";
  2187. ```
  2188. Wrappers over Solidity's arithmetic operations.
  2189. NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler
  2190. now has built in overflow checking.
  2191. [.contract-index]
  2192. .Functions
  2193. --
  2194. * {xref-SafeMath-tryAdd-uint256-uint256-}[`++tryAdd(a, b)++`]
  2195. * {xref-SafeMath-trySub-uint256-uint256-}[`++trySub(a, b)++`]
  2196. * {xref-SafeMath-tryMul-uint256-uint256-}[`++tryMul(a, b)++`]
  2197. * {xref-SafeMath-tryDiv-uint256-uint256-}[`++tryDiv(a, b)++`]
  2198. * {xref-SafeMath-tryMod-uint256-uint256-}[`++tryMod(a, b)++`]
  2199. * {xref-SafeMath-add-uint256-uint256-}[`++add(a, b)++`]
  2200. * {xref-SafeMath-sub-uint256-uint256-}[`++sub(a, b)++`]
  2201. * {xref-SafeMath-mul-uint256-uint256-}[`++mul(a, b)++`]
  2202. * {xref-SafeMath-div-uint256-uint256-}[`++div(a, b)++`]
  2203. * {xref-SafeMath-mod-uint256-uint256-}[`++mod(a, b)++`]
  2204. * {xref-SafeMath-sub-uint256-uint256-string-}[`++sub(a, b, errorMessage)++`]
  2205. * {xref-SafeMath-div-uint256-uint256-string-}[`++div(a, b, errorMessage)++`]
  2206. * {xref-SafeMath-mod-uint256-uint256-string-}[`++mod(a, b, errorMessage)++`]
  2207. --
  2208. [.contract-item]
  2209. [[SafeMath-tryAdd-uint256-uint256-]]
  2210. ==== `[.contract-item-name]#++tryAdd++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  2211. Returns the addition of two unsigned integers, with an overflow flag.
  2212. _Available since v3.4._
  2213. [.contract-item]
  2214. [[SafeMath-trySub-uint256-uint256-]]
  2215. ==== `[.contract-item-name]#++trySub++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  2216. Returns the substraction of two unsigned integers, with an overflow flag.
  2217. _Available since v3.4._
  2218. [.contract-item]
  2219. [[SafeMath-tryMul-uint256-uint256-]]
  2220. ==== `[.contract-item-name]#++tryMul++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  2221. Returns the multiplication of two unsigned integers, with an overflow flag.
  2222. _Available since v3.4._
  2223. [.contract-item]
  2224. [[SafeMath-tryDiv-uint256-uint256-]]
  2225. ==== `[.contract-item-name]#++tryDiv++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  2226. Returns the division of two unsigned integers, with a division by zero flag.
  2227. _Available since v3.4._
  2228. [.contract-item]
  2229. [[SafeMath-tryMod-uint256-uint256-]]
  2230. ==== `[.contract-item-name]#++tryMod++#++(uint256 a, uint256 b) → bool, uint256++` [.item-kind]#internal#
  2231. Returns the remainder of dividing two unsigned integers, with a division by zero flag.
  2232. _Available since v3.4._
  2233. [.contract-item]
  2234. [[SafeMath-add-uint256-uint256-]]
  2235. ==== `[.contract-item-name]#++add++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  2236. Returns the addition of two unsigned integers, reverting on
  2237. overflow.
  2238. Counterpart to Solidity's `+` operator.
  2239. Requirements:
  2240. - Addition cannot overflow.
  2241. [.contract-item]
  2242. [[SafeMath-sub-uint256-uint256-]]
  2243. ==== `[.contract-item-name]#++sub++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  2244. Returns the subtraction of two unsigned integers, reverting on
  2245. overflow (when the result is negative).
  2246. Counterpart to Solidity's `-` operator.
  2247. Requirements:
  2248. - Subtraction cannot overflow.
  2249. [.contract-item]
  2250. [[SafeMath-mul-uint256-uint256-]]
  2251. ==== `[.contract-item-name]#++mul++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  2252. Returns the multiplication of two unsigned integers, reverting on
  2253. overflow.
  2254. Counterpart to Solidity's `*` operator.
  2255. Requirements:
  2256. - Multiplication cannot overflow.
  2257. [.contract-item]
  2258. [[SafeMath-div-uint256-uint256-]]
  2259. ==== `[.contract-item-name]#++div++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  2260. Returns the integer division of two unsigned integers, reverting on
  2261. division by zero. The result is rounded towards zero.
  2262. Counterpart to Solidity's `/` operator.
  2263. Requirements:
  2264. - The divisor cannot be zero.
  2265. [.contract-item]
  2266. [[SafeMath-mod-uint256-uint256-]]
  2267. ==== `[.contract-item-name]#++mod++#++(uint256 a, uint256 b) → uint256++` [.item-kind]#internal#
  2268. Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
  2269. reverting when dividing by zero.
  2270. Counterpart to Solidity's `%` operator. This function uses a `revert`
  2271. opcode (which leaves remaining gas untouched) while Solidity uses an
  2272. invalid opcode to revert (consuming all remaining gas).
  2273. Requirements:
  2274. - The divisor cannot be zero.
  2275. [.contract-item]
  2276. [[SafeMath-sub-uint256-uint256-string-]]
  2277. ==== `[.contract-item-name]#++sub++#++(uint256 a, uint256 b, string errorMessage) → uint256++` [.item-kind]#internal#
  2278. Returns the subtraction of two unsigned integers, reverting with custom message on
  2279. overflow (when the result is negative).
  2280. CAUTION: This function is deprecated because it requires allocating memory for the error
  2281. message unnecessarily. For custom revert reasons use {trySub}.
  2282. Counterpart to Solidity's `-` operator.
  2283. Requirements:
  2284. - Subtraction cannot overflow.
  2285. [.contract-item]
  2286. [[SafeMath-div-uint256-uint256-string-]]
  2287. ==== `[.contract-item-name]#++div++#++(uint256 a, uint256 b, string errorMessage) → uint256++` [.item-kind]#internal#
  2288. Returns the integer division of two unsigned integers, reverting with custom message on
  2289. division by zero. The result is rounded towards zero.
  2290. Counterpart to Solidity's `/` operator. Note: this function uses a
  2291. `revert` opcode (which leaves remaining gas untouched) while Solidity
  2292. uses an invalid opcode to revert (consuming all remaining gas).
  2293. Requirements:
  2294. - The divisor cannot be zero.
  2295. [.contract-item]
  2296. [[SafeMath-mod-uint256-uint256-string-]]
  2297. ==== `[.contract-item-name]#++mod++#++(uint256 a, uint256 b, string errorMessage) → uint256++` [.item-kind]#internal#
  2298. Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
  2299. reverting with custom message when dividing by zero.
  2300. CAUTION: This function is deprecated because it requires allocating memory for the error
  2301. message unnecessarily. For custom revert reasons use {tryMod}.
  2302. Counterpart to Solidity's `%` operator. This function uses a `revert`
  2303. opcode (which leaves remaining gas untouched) while Solidity uses an
  2304. invalid opcode to revert (consuming all remaining gas).
  2305. Requirements:
  2306. - The divisor cannot be zero.
  2307. :SignedSafeMath: pass:normal[xref:#SignedSafeMath[`++SignedSafeMath++`]]
  2308. :mul: pass:normal[xref:#SignedSafeMath-mul-int256-int256-[`++mul++`]]
  2309. :div: pass:normal[xref:#SignedSafeMath-div-int256-int256-[`++div++`]]
  2310. :sub: pass:normal[xref:#SignedSafeMath-sub-int256-int256-[`++sub++`]]
  2311. :add: pass:normal[xref:#SignedSafeMath-add-int256-int256-[`++add++`]]
  2312. [.contract]
  2313. [[SignedSafeMath]]
  2314. === `++SignedSafeMath++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/math/SignedSafeMath.sol[{github-icon},role=heading-link]
  2315. [.hljs-theme-light.nopadding]
  2316. ```solidity
  2317. import "@openzeppelin/contracts/utils/math/SignedSafeMath.sol";
  2318. ```
  2319. Wrappers over Solidity's arithmetic operations.
  2320. NOTE: `SignedSafeMath` is no longer needed starting with Solidity 0.8. The compiler
  2321. now has built in overflow checking.
  2322. [.contract-index]
  2323. .Functions
  2324. --
  2325. * {xref-SignedSafeMath-mul-int256-int256-}[`++mul(a, b)++`]
  2326. * {xref-SignedSafeMath-div-int256-int256-}[`++div(a, b)++`]
  2327. * {xref-SignedSafeMath-sub-int256-int256-}[`++sub(a, b)++`]
  2328. * {xref-SignedSafeMath-add-int256-int256-}[`++add(a, b)++`]
  2329. --
  2330. [.contract-item]
  2331. [[SignedSafeMath-mul-int256-int256-]]
  2332. ==== `[.contract-item-name]#++mul++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  2333. Returns the multiplication of two signed integers, reverting on
  2334. overflow.
  2335. Counterpart to Solidity's `*` operator.
  2336. Requirements:
  2337. - Multiplication cannot overflow.
  2338. [.contract-item]
  2339. [[SignedSafeMath-div-int256-int256-]]
  2340. ==== `[.contract-item-name]#++div++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  2341. Returns the integer division of two signed integers. Reverts on
  2342. division by zero. The result is rounded towards zero.
  2343. Counterpart to Solidity's `/` operator.
  2344. Requirements:
  2345. - The divisor cannot be zero.
  2346. [.contract-item]
  2347. [[SignedSafeMath-sub-int256-int256-]]
  2348. ==== `[.contract-item-name]#++sub++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  2349. Returns the subtraction of two signed integers, reverting on
  2350. overflow.
  2351. Counterpart to Solidity's `-` operator.
  2352. Requirements:
  2353. - Subtraction cannot overflow.
  2354. [.contract-item]
  2355. [[SignedSafeMath-add-int256-int256-]]
  2356. ==== `[.contract-item-name]#++add++#++(int256 a, int256 b) → int256++` [.item-kind]#internal#
  2357. Returns the addition of two signed integers, reverting on
  2358. overflow.
  2359. Counterpart to Solidity's `+` operator.
  2360. Requirements:
  2361. - Addition cannot overflow.
  2362. == Cryptography
  2363. :ECDSA: pass:normal[xref:#ECDSA[`++ECDSA++`]]
  2364. :tryRecover: pass:normal[xref:#ECDSA-tryRecover-bytes32-bytes-[`++tryRecover++`]]
  2365. :recover: pass:normal[xref:#ECDSA-recover-bytes32-bytes-[`++recover++`]]
  2366. :tryRecover: pass:normal[xref:#ECDSA-tryRecover-bytes32-bytes32-bytes32-[`++tryRecover++`]]
  2367. :recover: pass:normal[xref:#ECDSA-recover-bytes32-bytes32-bytes32-[`++recover++`]]
  2368. :tryRecover: pass:normal[xref:#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-[`++tryRecover++`]]
  2369. :recover: pass:normal[xref:#ECDSA-recover-bytes32-uint8-bytes32-bytes32-[`++recover++`]]
  2370. :toEthSignedMessageHash: pass:normal[xref:#ECDSA-toEthSignedMessageHash-bytes32-[`++toEthSignedMessageHash++`]]
  2371. :toEthSignedMessageHash: pass:normal[xref:#ECDSA-toEthSignedMessageHash-bytes-[`++toEthSignedMessageHash++`]]
  2372. :toTypedDataHash: pass:normal[xref:#ECDSA-toTypedDataHash-bytes32-bytes32-[`++toTypedDataHash++`]]
  2373. :RecoverError: pass:normal[xref:#ECDSA-RecoverError[`++RecoverError++`]]
  2374. [.contract]
  2375. [[ECDSA]]
  2376. === `++ECDSA++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/cryptography/ECDSA.sol[{github-icon},role=heading-link]
  2377. [.hljs-theme-light.nopadding]
  2378. ```solidity
  2379. import "@openzeppelin/contracts/utils/cryptography/ECDSA.sol";
  2380. ```
  2381. Elliptic Curve Digital Signature Algorithm (ECDSA) operations.
  2382. These functions can be used to verify that a message was signed by the holder
  2383. of the private keys of a given address.
  2384. [.contract-index]
  2385. .Functions
  2386. --
  2387. * {xref-ECDSA-tryRecover-bytes32-bytes-}[`++tryRecover(hash, signature)++`]
  2388. * {xref-ECDSA-recover-bytes32-bytes-}[`++recover(hash, signature)++`]
  2389. * {xref-ECDSA-tryRecover-bytes32-bytes32-bytes32-}[`++tryRecover(hash, r, vs)++`]
  2390. * {xref-ECDSA-recover-bytes32-bytes32-bytes32-}[`++recover(hash, r, vs)++`]
  2391. * {xref-ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-}[`++tryRecover(hash, v, r, s)++`]
  2392. * {xref-ECDSA-recover-bytes32-uint8-bytes32-bytes32-}[`++recover(hash, v, r, s)++`]
  2393. * {xref-ECDSA-toEthSignedMessageHash-bytes32-}[`++toEthSignedMessageHash(hash)++`]
  2394. * {xref-ECDSA-toEthSignedMessageHash-bytes-}[`++toEthSignedMessageHash(s)++`]
  2395. * {xref-ECDSA-toTypedDataHash-bytes32-bytes32-}[`++toTypedDataHash(domainSeparator, structHash)++`]
  2396. --
  2397. [.contract-item]
  2398. [[ECDSA-tryRecover-bytes32-bytes-]]
  2399. ==== `[.contract-item-name]#++tryRecover++#++(bytes32 hash, bytes signature) → address, enum ECDSA.RecoverError++` [.item-kind]#internal#
  2400. Returns the address that signed a hashed message (`hash`) with
  2401. `signature` or error string. This address can then be used for verification purposes.
  2402. The `ecrecover` EVM opcode allows for malleable (non-unique) signatures:
  2403. this function rejects them by requiring the `s` value to be in the lower
  2404. half order, and the `v` value to be either 27 or 28.
  2405. IMPORTANT: `hash` _must_ be the result of a hash operation for the
  2406. verification to be secure: it is possible to craft signatures that
  2407. recover to arbitrary addresses for non-hashed data. A safe way to ensure
  2408. this is by receiving a hash of the original message (which may otherwise
  2409. be too long), and then calling {toEthSignedMessageHash} on it.
  2410. Documentation for signature generation:
  2411. - with https://web3js.readthedocs.io/en/v1.3.4/web3-eth-accounts.html#sign[Web3.js]
  2412. - with https://docs.ethers.io/v5/api/signer/#Signer-signMessage[ethers]
  2413. _Available since v4.3._
  2414. [.contract-item]
  2415. [[ECDSA-recover-bytes32-bytes-]]
  2416. ==== `[.contract-item-name]#++recover++#++(bytes32 hash, bytes signature) → address++` [.item-kind]#internal#
  2417. Returns the address that signed a hashed message (`hash`) with
  2418. `signature`. This address can then be used for verification purposes.
  2419. The `ecrecover` EVM opcode allows for malleable (non-unique) signatures:
  2420. this function rejects them by requiring the `s` value to be in the lower
  2421. half order, and the `v` value to be either 27 or 28.
  2422. IMPORTANT: `hash` _must_ be the result of a hash operation for the
  2423. verification to be secure: it is possible to craft signatures that
  2424. recover to arbitrary addresses for non-hashed data. A safe way to ensure
  2425. this is by receiving a hash of the original message (which may otherwise
  2426. be too long), and then calling {toEthSignedMessageHash} on it.
  2427. [.contract-item]
  2428. [[ECDSA-tryRecover-bytes32-bytes32-bytes32-]]
  2429. ==== `[.contract-item-name]#++tryRecover++#++(bytes32 hash, bytes32 r, bytes32 vs) → address, enum ECDSA.RecoverError++` [.item-kind]#internal#
  2430. Overload of {ECDSA-tryRecover} that receives the `r` and `vs` short-signature fields separately.
  2431. See https://eips.ethereum.org/EIPS/eip-2098[EIP-2098 short signatures]
  2432. _Available since v4.3._
  2433. [.contract-item]
  2434. [[ECDSA-recover-bytes32-bytes32-bytes32-]]
  2435. ==== `[.contract-item-name]#++recover++#++(bytes32 hash, bytes32 r, bytes32 vs) → address++` [.item-kind]#internal#
  2436. Overload of {ECDSA-recover} that receives the `r and `vs` short-signature fields separately.
  2437. _Available since v4.2._
  2438. [.contract-item]
  2439. [[ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-]]
  2440. ==== `[.contract-item-name]#++tryRecover++#++(bytes32 hash, uint8 v, bytes32 r, bytes32 s) → address, enum ECDSA.RecoverError++` [.item-kind]#internal#
  2441. Overload of {ECDSA-tryRecover} that receives the `v`,
  2442. `r` and `s` signature fields separately.
  2443. _Available since v4.3._
  2444. [.contract-item]
  2445. [[ECDSA-recover-bytes32-uint8-bytes32-bytes32-]]
  2446. ==== `[.contract-item-name]#++recover++#++(bytes32 hash, uint8 v, bytes32 r, bytes32 s) → address++` [.item-kind]#internal#
  2447. Overload of {ECDSA-recover} that receives the `v`,
  2448. `r` and `s` signature fields separately.
  2449. /
  2450. [.contract-item]
  2451. [[ECDSA-toEthSignedMessageHash-bytes32-]]
  2452. ==== `[.contract-item-name]#++toEthSignedMessageHash++#++(bytes32 hash) → bytes32++` [.item-kind]#internal#
  2453. Returns an Ethereum Signed Message, created from a `hash`. This
  2454. produces hash corresponding to the one signed with the
  2455. https://eth.wiki/json-rpc/API#eth_sign[`eth_sign`]
  2456. JSON-RPC method as part of EIP-191.
  2457. See {recover}.
  2458. /
  2459. [.contract-item]
  2460. [[ECDSA-toEthSignedMessageHash-bytes-]]
  2461. ==== `[.contract-item-name]#++toEthSignedMessageHash++#++(bytes s) → bytes32++` [.item-kind]#internal#
  2462. Returns an Ethereum Signed Message, created from `s`. This
  2463. produces hash corresponding to the one signed with the
  2464. https://eth.wiki/json-rpc/API#eth_sign[`eth_sign`]
  2465. JSON-RPC method as part of EIP-191.
  2466. See {recover}.
  2467. /
  2468. [.contract-item]
  2469. [[ECDSA-toTypedDataHash-bytes32-bytes32-]]
  2470. ==== `[.contract-item-name]#++toTypedDataHash++#++(bytes32 domainSeparator, bytes32 structHash) → bytes32++` [.item-kind]#internal#
  2471. Returns an Ethereum Signed Typed Data, created from a
  2472. `domainSeparator` and a `structHash`. This produces hash corresponding
  2473. to the one signed with the
  2474. https://eips.ethereum.org/EIPS/eip-712[`eth_signTypedData`]
  2475. JSON-RPC method as part of EIP-712.
  2476. See {recover}.
  2477. /
  2478. :SignatureChecker: pass:normal[xref:#SignatureChecker[`++SignatureChecker++`]]
  2479. :isValidSignatureNow: pass:normal[xref:#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-[`++isValidSignatureNow++`]]
  2480. [.contract]
  2481. [[SignatureChecker]]
  2482. === `++SignatureChecker++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/cryptography/SignatureChecker.sol[{github-icon},role=heading-link]
  2483. [.hljs-theme-light.nopadding]
  2484. ```solidity
  2485. import "@openzeppelin/contracts/utils/cryptography/SignatureChecker.sol";
  2486. ```
  2487. Signature verification helper that can be used instead of `ECDSA.recover` to seamlessly support both ECDSA
  2488. signatures from externally owned accounts (EOAs) as well as ERC1271 signatures from smart contract wallets like
  2489. Argent and Gnosis Safe.
  2490. _Available since v4.1._
  2491. [.contract-index]
  2492. .Functions
  2493. --
  2494. * {xref-SignatureChecker-isValidSignatureNow-address-bytes32-bytes-}[`++isValidSignatureNow(signer, hash, signature)++`]
  2495. --
  2496. [.contract-item]
  2497. [[SignatureChecker-isValidSignatureNow-address-bytes32-bytes-]]
  2498. ==== `[.contract-item-name]#++isValidSignatureNow++#++(address signer, bytes32 hash, bytes signature) → bool++` [.item-kind]#internal#
  2499. Checks if a signature is valid for a given signer and data hash. If the signer is a smart contract, the
  2500. signature is validated against that smart contract using ERC1271, otherwise it's validated using `ECDSA.recover`.
  2501. NOTE: Unlike ECDSA signatures, contract signatures are revocable, and the outcome of this function can thus
  2502. change through time. It could return true at block N and false at block N+1 (or the opposite).
  2503. :MerkleProof: pass:normal[xref:#MerkleProof[`++MerkleProof++`]]
  2504. :verify: pass:normal[xref:#MerkleProof-verify-bytes32---bytes32-bytes32-[`++verify++`]]
  2505. :processProof: pass:normal[xref:#MerkleProof-processProof-bytes32---bytes32-[`++processProof++`]]
  2506. [.contract]
  2507. [[MerkleProof]]
  2508. === `++MerkleProof++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/cryptography/MerkleProof.sol[{github-icon},role=heading-link]
  2509. [.hljs-theme-light.nopadding]
  2510. ```solidity
  2511. import "@openzeppelin/contracts/utils/cryptography/MerkleProof.sol";
  2512. ```
  2513. These functions deal with verification of Merkle Trees proofs.
  2514. The proofs can be generated using the JavaScript library
  2515. https://github.com/miguelmota/merkletreejs[merkletreejs].
  2516. Note: the hashing algorithm should be keccak256 and pair sorting should be enabled.
  2517. See `test/utils/cryptography/MerkleProof.test.js` for some examples.
  2518. [.contract-index]
  2519. .Functions
  2520. --
  2521. * {xref-MerkleProof-verify-bytes32---bytes32-bytes32-}[`++verify(proof, root, leaf)++`]
  2522. * {xref-MerkleProof-processProof-bytes32---bytes32-}[`++processProof(proof, leaf)++`]
  2523. --
  2524. [.contract-item]
  2525. [[MerkleProof-verify-bytes32---bytes32-bytes32-]]
  2526. ==== `[.contract-item-name]#++verify++#++(bytes32[] proof, bytes32 root, bytes32 leaf) → bool++` [.item-kind]#internal#
  2527. Returns true if a `leaf` can be proved to be a part of a Merkle tree
  2528. defined by `root`. For this, a `proof` must be provided, containing
  2529. sibling hashes on the branch from the leaf to the root of the tree. Each
  2530. pair of leaves and each pair of pre-images are assumed to be sorted.
  2531. [.contract-item]
  2532. [[MerkleProof-processProof-bytes32---bytes32-]]
  2533. ==== `[.contract-item-name]#++processProof++#++(bytes32[] proof, bytes32 leaf) → bytes32++` [.item-kind]#internal#
  2534. Returns the rebuilt hash obtained by traversing a Merklee tree up
  2535. from `leaf` using `proof`. A `proof` is valid if and only if the rebuilt
  2536. hash matches the root of the tree. When processing the proof, the pairs
  2537. of leafs & pre-images are assumed to be sorted.
  2538. _Available since v4.4._
  2539. :EIP712: pass:normal[xref:#EIP712[`++EIP712++`]]
  2540. :constructor: pass:normal[xref:#EIP712-constructor-string-string-[`++constructor++`]]
  2541. :_domainSeparatorV4: pass:normal[xref:#EIP712-_domainSeparatorV4--[`++_domainSeparatorV4++`]]
  2542. :_hashTypedDataV4: pass:normal[xref:#EIP712-_hashTypedDataV4-bytes32-[`++_hashTypedDataV4++`]]
  2543. [.contract]
  2544. [[EIP712]]
  2545. === `++EIP712++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/cryptography/draft-EIP712.sol[{github-icon},role=heading-link]
  2546. [.hljs-theme-light.nopadding]
  2547. ```solidity
  2548. import "@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol";
  2549. ```
  2550. https://eips.ethereum.org/EIPS/eip-712[EIP 712] is a standard for hashing and signing of typed structured data.
  2551. The encoding specified in the EIP is very generic, and such a generic implementation in Solidity is not feasible,
  2552. thus this contract does not implement the encoding itself. Protocols need to implement the type-specific encoding
  2553. they need in their contracts using a combination of `abi.encode` and `keccak256`.
  2554. This contract implements the EIP 712 domain separator ({_domainSeparatorV4}) that is used as part of the encoding
  2555. scheme, and the final step of the encoding to obtain the message digest that is then signed via ECDSA
  2556. ({_hashTypedDataV4}).
  2557. The implementation of the domain separator was designed to be as efficient as possible while still properly updating
  2558. the chain id to protect against replay attacks on an eventual fork of the chain.
  2559. NOTE: This contract implements the version of the encoding known as "v4", as implemented by the JSON RPC method
  2560. https://docs.metamask.io/guide/signing-data.html[`eth_signTypedDataV4` in MetaMask].
  2561. _Available since v3.4._
  2562. [.contract-index]
  2563. .Functions
  2564. --
  2565. * {xref-EIP712-constructor-string-string-}[`++constructor(name, version)++`]
  2566. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  2567. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  2568. --
  2569. [.contract-item]
  2570. [[EIP712-constructor-string-string-]]
  2571. ==== `[.contract-item-name]#++constructor++#++(string name, string version)++` [.item-kind]#internal#
  2572. Initializes the domain separator and parameter caches.
  2573. The meaning of `name` and `version` is specified in
  2574. https://eips.ethereum.org/EIPS/eip-712#definition-of-domainseparator[EIP 712]:
  2575. - `name`: the user readable name of the signing domain, i.e. the name of the DApp or the protocol.
  2576. - `version`: the current major version of the signing domain.
  2577. NOTE: These parameters cannot be changed except through a xref:learn::upgrading-smart-contracts.adoc[smart
  2578. contract upgrade].
  2579. [.contract-item]
  2580. [[EIP712-_domainSeparatorV4--]]
  2581. ==== `[.contract-item-name]#++_domainSeparatorV4++#++() → bytes32++` [.item-kind]#internal#
  2582. Returns the domain separator for the current chain.
  2583. [.contract-item]
  2584. [[EIP712-_hashTypedDataV4-bytes32-]]
  2585. ==== `[.contract-item-name]#++_hashTypedDataV4++#++(bytes32 structHash) → bytes32++` [.item-kind]#internal#
  2586. Given an already https://eips.ethereum.org/EIPS/eip-712#definition-of-hashstruct[hashed struct], this
  2587. function returns the hash of the fully encoded EIP712 message for this domain.
  2588. This hash can be used together with {ECDSA-recover} to obtain the signer of a message. For example:
  2589. ```solidity
  2590. bytes32 digest = _hashTypedDataV4(keccak256(abi.encode(
  2591. keccak256("Mail(address to,string contents)"),
  2592. mailTo,
  2593. keccak256(bytes(mailContents))
  2594. )));
  2595. address signer = ECDSA.recover(digest, signature);
  2596. ```
  2597. == Escrow
  2598. :ConditionalEscrow: pass:normal[xref:#ConditionalEscrow[`++ConditionalEscrow++`]]
  2599. :withdrawalAllowed: pass:normal[xref:#ConditionalEscrow-withdrawalAllowed-address-[`++withdrawalAllowed++`]]
  2600. :withdraw: pass:normal[xref:#ConditionalEscrow-withdraw-address-payable-[`++withdraw++`]]
  2601. [.contract]
  2602. [[ConditionalEscrow]]
  2603. === `++ConditionalEscrow++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/escrow/ConditionalEscrow.sol[{github-icon},role=heading-link]
  2604. [.hljs-theme-light.nopadding]
  2605. ```solidity
  2606. import "@openzeppelin/contracts/utils/escrow/ConditionalEscrow.sol";
  2607. ```
  2608. Base abstract escrow to only allow withdrawal if a condition is met.
  2609. Intended usage: See {Escrow}. Same usage guidelines apply here.
  2610. [.contract-index]
  2611. .Functions
  2612. --
  2613. * {xref-ConditionalEscrow-withdrawalAllowed-address-}[`++withdrawalAllowed(payee)++`]
  2614. * {xref-ConditionalEscrow-withdraw-address-payable-}[`++withdraw(payee)++`]
  2615. [.contract-subindex-inherited]
  2616. .Escrow
  2617. * {xref-Escrow-depositsOf-address-}[`++depositsOf(payee)++`]
  2618. * {xref-Escrow-deposit-address-}[`++deposit(payee)++`]
  2619. [.contract-subindex-inherited]
  2620. .Ownable
  2621. * {xref-Ownable-constructor--}[`++constructor()++`]
  2622. * {xref-Ownable-owner--}[`++owner()++`]
  2623. * {xref-Ownable-renounceOwnership--}[`++renounceOwnership()++`]
  2624. * {xref-Ownable-transferOwnership-address-}[`++transferOwnership(newOwner)++`]
  2625. * {xref-Ownable-_transferOwnership-address-}[`++_transferOwnership(newOwner)++`]
  2626. --
  2627. [.contract-index]
  2628. .Events
  2629. --
  2630. [.contract-subindex-inherited]
  2631. .Escrow
  2632. * {xref-Escrow-Deposited-address-uint256-}[`++Deposited(payee, weiAmount)++`]
  2633. * {xref-Escrow-Withdrawn-address-uint256-}[`++Withdrawn(payee, weiAmount)++`]
  2634. [.contract-subindex-inherited]
  2635. .Ownable
  2636. * {xref-Ownable-OwnershipTransferred-address-address-}[`++OwnershipTransferred(previousOwner, newOwner)++`]
  2637. [.contract-subindex-inherited]
  2638. .Context
  2639. --
  2640. [.contract-item]
  2641. [[ConditionalEscrow-withdrawalAllowed-address-]]
  2642. ==== `[.contract-item-name]#++withdrawalAllowed++#++(address payee) → bool++` [.item-kind]#public#
  2643. Returns whether an address is allowed to withdraw their funds. To be
  2644. implemented by derived contracts.
  2645. [.contract-item]
  2646. [[ConditionalEscrow-withdraw-address-payable-]]
  2647. ==== `[.contract-item-name]#++withdraw++#++(address payable payee)++` [.item-kind]#public#
  2648. :Escrow: pass:normal[xref:#Escrow[`++Escrow++`]]
  2649. :depositsOf: pass:normal[xref:#Escrow-depositsOf-address-[`++depositsOf++`]]
  2650. :deposit: pass:normal[xref:#Escrow-deposit-address-[`++deposit++`]]
  2651. :withdraw: pass:normal[xref:#Escrow-withdraw-address-payable-[`++withdraw++`]]
  2652. :Deposited: pass:normal[xref:#Escrow-Deposited-address-uint256-[`++Deposited++`]]
  2653. :Withdrawn: pass:normal[xref:#Escrow-Withdrawn-address-uint256-[`++Withdrawn++`]]
  2654. [.contract]
  2655. [[Escrow]]
  2656. === `++Escrow++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/escrow/Escrow.sol[{github-icon},role=heading-link]
  2657. [.hljs-theme-light.nopadding]
  2658. ```solidity
  2659. import "@openzeppelin/contracts/utils/escrow/Escrow.sol";
  2660. ```
  2661. Base escrow contract, holds funds designated for a payee until they
  2662. withdraw them.
  2663. Intended usage: This contract (and derived escrow contracts) should be a
  2664. standalone contract, that only interacts with the contract that instantiated
  2665. it. That way, it is guaranteed that all Ether will be handled according to
  2666. the `Escrow` rules, and there is no need to check for payable functions or
  2667. transfers in the inheritance tree. The contract that uses the escrow as its
  2668. payment method should be its owner, and provide public methods redirecting
  2669. to the escrow's deposit and withdraw.
  2670. [.contract-index]
  2671. .Functions
  2672. --
  2673. * {xref-Escrow-depositsOf-address-}[`++depositsOf(payee)++`]
  2674. * {xref-Escrow-deposit-address-}[`++deposit(payee)++`]
  2675. * {xref-Escrow-withdraw-address-payable-}[`++withdraw(payee)++`]
  2676. [.contract-subindex-inherited]
  2677. .Ownable
  2678. * {xref-Ownable-constructor--}[`++constructor()++`]
  2679. * {xref-Ownable-owner--}[`++owner()++`]
  2680. * {xref-Ownable-renounceOwnership--}[`++renounceOwnership()++`]
  2681. * {xref-Ownable-transferOwnership-address-}[`++transferOwnership(newOwner)++`]
  2682. * {xref-Ownable-_transferOwnership-address-}[`++_transferOwnership(newOwner)++`]
  2683. --
  2684. [.contract-index]
  2685. .Events
  2686. --
  2687. * {xref-Escrow-Deposited-address-uint256-}[`++Deposited(payee, weiAmount)++`]
  2688. * {xref-Escrow-Withdrawn-address-uint256-}[`++Withdrawn(payee, weiAmount)++`]
  2689. [.contract-subindex-inherited]
  2690. .Ownable
  2691. * {xref-Ownable-OwnershipTransferred-address-address-}[`++OwnershipTransferred(previousOwner, newOwner)++`]
  2692. [.contract-subindex-inherited]
  2693. .Context
  2694. --
  2695. [.contract-item]
  2696. [[Escrow-depositsOf-address-]]
  2697. ==== `[.contract-item-name]#++depositsOf++#++(address payee) → uint256++` [.item-kind]#public#
  2698. [.contract-item]
  2699. [[Escrow-deposit-address-]]
  2700. ==== `[.contract-item-name]#++deposit++#++(address payee)++` [.item-kind]#public#
  2701. Stores the sent amount as credit to be withdrawn.
  2702. [.contract-item]
  2703. [[Escrow-withdraw-address-payable-]]
  2704. ==== `[.contract-item-name]#++withdraw++#++(address payable payee)++` [.item-kind]#public#
  2705. Withdraw accumulated balance for a payee, forwarding all gas to the
  2706. recipient.
  2707. WARNING: Forwarding all gas opens the door to reentrancy vulnerabilities.
  2708. Make sure you trust the recipient, or are either following the
  2709. checks-effects-interactions pattern or using {ReentrancyGuard}.
  2710. [.contract-item]
  2711. [[Escrow-Deposited-address-uint256-]]
  2712. ==== `[.contract-item-name]#++Deposited++#++(address payee, uint256 weiAmount)++` [.item-kind]#event#
  2713. [.contract-item]
  2714. [[Escrow-Withdrawn-address-uint256-]]
  2715. ==== `[.contract-item-name]#++Withdrawn++#++(address payee, uint256 weiAmount)++` [.item-kind]#event#
  2716. :RefundEscrow: pass:normal[xref:#RefundEscrow[`++RefundEscrow++`]]
  2717. :constructor: pass:normal[xref:#RefundEscrow-constructor-address-payable-[`++constructor++`]]
  2718. :state: pass:normal[xref:#RefundEscrow-state--[`++state++`]]
  2719. :beneficiary: pass:normal[xref:#RefundEscrow-beneficiary--[`++beneficiary++`]]
  2720. :deposit: pass:normal[xref:#RefundEscrow-deposit-address-[`++deposit++`]]
  2721. :close: pass:normal[xref:#RefundEscrow-close--[`++close++`]]
  2722. :enableRefunds: pass:normal[xref:#RefundEscrow-enableRefunds--[`++enableRefunds++`]]
  2723. :beneficiaryWithdraw: pass:normal[xref:#RefundEscrow-beneficiaryWithdraw--[`++beneficiaryWithdraw++`]]
  2724. :withdrawalAllowed: pass:normal[xref:#RefundEscrow-withdrawalAllowed-address-[`++withdrawalAllowed++`]]
  2725. :RefundsClosed: pass:normal[xref:#RefundEscrow-RefundsClosed--[`++RefundsClosed++`]]
  2726. :RefundsEnabled: pass:normal[xref:#RefundEscrow-RefundsEnabled--[`++RefundsEnabled++`]]
  2727. :State: pass:normal[xref:#RefundEscrow-State[`++State++`]]
  2728. [.contract]
  2729. [[RefundEscrow]]
  2730. === `++RefundEscrow++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/escrow/RefundEscrow.sol[{github-icon},role=heading-link]
  2731. [.hljs-theme-light.nopadding]
  2732. ```solidity
  2733. import "@openzeppelin/contracts/utils/escrow/RefundEscrow.sol";
  2734. ```
  2735. Escrow that holds funds for a beneficiary, deposited from multiple
  2736. parties.
  2737. Intended usage: See {Escrow}. Same usage guidelines apply here.
  2738. The owner account (that is, the contract that instantiates this
  2739. contract) may deposit, close the deposit period, and allow for either
  2740. withdrawal by the beneficiary, or refunds to the depositors. All interactions
  2741. with `RefundEscrow` will be made through the owner contract.
  2742. [.contract-index]
  2743. .Functions
  2744. --
  2745. * {xref-RefundEscrow-constructor-address-payable-}[`++constructor(beneficiary_)++`]
  2746. * {xref-RefundEscrow-state--}[`++state()++`]
  2747. * {xref-RefundEscrow-beneficiary--}[`++beneficiary()++`]
  2748. * {xref-RefundEscrow-deposit-address-}[`++deposit(refundee)++`]
  2749. * {xref-RefundEscrow-close--}[`++close()++`]
  2750. * {xref-RefundEscrow-enableRefunds--}[`++enableRefunds()++`]
  2751. * {xref-RefundEscrow-beneficiaryWithdraw--}[`++beneficiaryWithdraw()++`]
  2752. * {xref-RefundEscrow-withdrawalAllowed-address-}[`++withdrawalAllowed(_)++`]
  2753. [.contract-subindex-inherited]
  2754. .ConditionalEscrow
  2755. * {xref-ConditionalEscrow-withdraw-address-payable-}[`++withdraw(payee)++`]
  2756. [.contract-subindex-inherited]
  2757. .Escrow
  2758. * {xref-Escrow-depositsOf-address-}[`++depositsOf(payee)++`]
  2759. [.contract-subindex-inherited]
  2760. .Ownable
  2761. * {xref-Ownable-owner--}[`++owner()++`]
  2762. * {xref-Ownable-renounceOwnership--}[`++renounceOwnership()++`]
  2763. * {xref-Ownable-transferOwnership-address-}[`++transferOwnership(newOwner)++`]
  2764. * {xref-Ownable-_transferOwnership-address-}[`++_transferOwnership(newOwner)++`]
  2765. --
  2766. [.contract-index]
  2767. .Events
  2768. --
  2769. * {xref-RefundEscrow-RefundsClosed--}[`++RefundsClosed()++`]
  2770. * {xref-RefundEscrow-RefundsEnabled--}[`++RefundsEnabled()++`]
  2771. [.contract-subindex-inherited]
  2772. .ConditionalEscrow
  2773. [.contract-subindex-inherited]
  2774. .Escrow
  2775. * {xref-Escrow-Deposited-address-uint256-}[`++Deposited(payee, weiAmount)++`]
  2776. * {xref-Escrow-Withdrawn-address-uint256-}[`++Withdrawn(payee, weiAmount)++`]
  2777. [.contract-subindex-inherited]
  2778. .Ownable
  2779. * {xref-Ownable-OwnershipTransferred-address-address-}[`++OwnershipTransferred(previousOwner, newOwner)++`]
  2780. [.contract-subindex-inherited]
  2781. .Context
  2782. --
  2783. [.contract-item]
  2784. [[RefundEscrow-constructor-address-payable-]]
  2785. ==== `[.contract-item-name]#++constructor++#++(address payable beneficiary_)++` [.item-kind]#public#
  2786. Constructor.
  2787. [.contract-item]
  2788. [[RefundEscrow-state--]]
  2789. ==== `[.contract-item-name]#++state++#++() → enum RefundEscrow.State++` [.item-kind]#public#
  2790. [.contract-item]
  2791. [[RefundEscrow-beneficiary--]]
  2792. ==== `[.contract-item-name]#++beneficiary++#++() → address payable++` [.item-kind]#public#
  2793. [.contract-item]
  2794. [[RefundEscrow-deposit-address-]]
  2795. ==== `[.contract-item-name]#++deposit++#++(address refundee)++` [.item-kind]#public#
  2796. Stores funds that may later be refunded.
  2797. [.contract-item]
  2798. [[RefundEscrow-close--]]
  2799. ==== `[.contract-item-name]#++close++#++()++` [.item-kind]#public#
  2800. Allows for the beneficiary to withdraw their funds, rejecting
  2801. further deposits.
  2802. [.contract-item]
  2803. [[RefundEscrow-enableRefunds--]]
  2804. ==== `[.contract-item-name]#++enableRefunds++#++()++` [.item-kind]#public#
  2805. Allows for refunds to take place, rejecting further deposits.
  2806. [.contract-item]
  2807. [[RefundEscrow-beneficiaryWithdraw--]]
  2808. ==== `[.contract-item-name]#++beneficiaryWithdraw++#++()++` [.item-kind]#public#
  2809. Withdraws the beneficiary's funds.
  2810. [.contract-item]
  2811. [[RefundEscrow-withdrawalAllowed-address-]]
  2812. ==== `[.contract-item-name]#++withdrawalAllowed++#++(address) → bool++` [.item-kind]#public#
  2813. Returns whether refundees can withdraw their deposits (be refunded). The overridden function receives a
  2814. 'payee' argument, but we ignore it here since the condition is global, not per-payee.
  2815. [.contract-item]
  2816. [[RefundEscrow-RefundsClosed--]]
  2817. ==== `[.contract-item-name]#++RefundsClosed++#++()++` [.item-kind]#event#
  2818. [.contract-item]
  2819. [[RefundEscrow-RefundsEnabled--]]
  2820. ==== `[.contract-item-name]#++RefundsEnabled++#++()++` [.item-kind]#event#
  2821. == Introspection
  2822. 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_.
  2823. 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.
  2824. There are two main ways to approach this.
  2825. * Locally, where a contract implements `IERC165` and declares an interface, and a second one queries it directly via `ERC165Checker`.
  2826. * 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.
  2827. 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.
  2828. :IERC165: pass:normal[xref:#IERC165[`++IERC165++`]]
  2829. :supportsInterface: pass:normal[xref:#IERC165-supportsInterface-bytes4-[`++supportsInterface++`]]
  2830. [.contract]
  2831. [[IERC165]]
  2832. === `++IERC165++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/introspection/IERC165.sol[{github-icon},role=heading-link]
  2833. [.hljs-theme-light.nopadding]
  2834. ```solidity
  2835. import "@openzeppelin/contracts/utils/introspection/IERC165.sol";
  2836. ```
  2837. Interface of the ERC165 standard, as defined in the
  2838. https://eips.ethereum.org/EIPS/eip-165[EIP].
  2839. Implementers can declare support of contract interfaces, which can then be
  2840. queried by others ({ERC165Checker}).
  2841. For an implementation, see {ERC165}.
  2842. [.contract-index]
  2843. .Functions
  2844. --
  2845. * {xref-IERC165-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2846. --
  2847. [.contract-item]
  2848. [[IERC165-supportsInterface-bytes4-]]
  2849. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#external#
  2850. Returns true if this contract implements the interface defined by
  2851. `interfaceId`. See the corresponding
  2852. https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]
  2853. to learn more about how these ids are created.
  2854. This function call must use less than 30 000 gas.
  2855. :ERC165: pass:normal[xref:#ERC165[`++ERC165++`]]
  2856. :supportsInterface: pass:normal[xref:#ERC165-supportsInterface-bytes4-[`++supportsInterface++`]]
  2857. [.contract]
  2858. [[ERC165]]
  2859. === `++ERC165++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/introspection/ERC165.sol[{github-icon},role=heading-link]
  2860. [.hljs-theme-light.nopadding]
  2861. ```solidity
  2862. import "@openzeppelin/contracts/utils/introspection/ERC165.sol";
  2863. ```
  2864. Implementation of the {IERC165} interface.
  2865. Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check
  2866. for the additional interface id that will be supported. For example:
  2867. ```solidity
  2868. function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
  2869. return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);
  2870. }
  2871. ```
  2872. Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.
  2873. [.contract-index]
  2874. .Functions
  2875. --
  2876. * {xref-ERC165-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2877. [.contract-subindex-inherited]
  2878. .IERC165
  2879. --
  2880. [.contract-item]
  2881. [[ERC165-supportsInterface-bytes4-]]
  2882. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  2883. See {IERC165-supportsInterface}.
  2884. :ERC165Storage: pass:normal[xref:#ERC165Storage[`++ERC165Storage++`]]
  2885. :supportsInterface: pass:normal[xref:#ERC165Storage-supportsInterface-bytes4-[`++supportsInterface++`]]
  2886. :_registerInterface: pass:normal[xref:#ERC165Storage-_registerInterface-bytes4-[`++_registerInterface++`]]
  2887. [.contract]
  2888. [[ERC165Storage]]
  2889. === `++ERC165Storage++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/introspection/ERC165Storage.sol[{github-icon},role=heading-link]
  2890. [.hljs-theme-light.nopadding]
  2891. ```solidity
  2892. import "@openzeppelin/contracts/utils/introspection/ERC165Storage.sol";
  2893. ```
  2894. Storage based implementation of the {IERC165} interface.
  2895. Contracts may inherit from this and call {_registerInterface} to declare
  2896. their support of an interface.
  2897. [.contract-index]
  2898. .Functions
  2899. --
  2900. * {xref-ERC165Storage-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2901. * {xref-ERC165Storage-_registerInterface-bytes4-}[`++_registerInterface(interfaceId)++`]
  2902. [.contract-subindex-inherited]
  2903. .ERC165
  2904. [.contract-subindex-inherited]
  2905. .IERC165
  2906. --
  2907. [.contract-item]
  2908. [[ERC165Storage-supportsInterface-bytes4-]]
  2909. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  2910. See {IERC165-supportsInterface}.
  2911. [.contract-item]
  2912. [[ERC165Storage-_registerInterface-bytes4-]]
  2913. ==== `[.contract-item-name]#++_registerInterface++#++(bytes4 interfaceId)++` [.item-kind]#internal#
  2914. Registers the contract as an implementer of the interface defined by
  2915. `interfaceId`. Support of the actual ERC165 interface is automatic and
  2916. registering its interface id is not required.
  2917. See {IERC165-supportsInterface}.
  2918. Requirements:
  2919. - `interfaceId` cannot be the ERC165 invalid interface (`0xffffffff`).
  2920. :ERC165Checker: pass:normal[xref:#ERC165Checker[`++ERC165Checker++`]]
  2921. :supportsERC165: pass:normal[xref:#ERC165Checker-supportsERC165-address-[`++supportsERC165++`]]
  2922. :supportsInterface: pass:normal[xref:#ERC165Checker-supportsInterface-address-bytes4-[`++supportsInterface++`]]
  2923. :getSupportedInterfaces: pass:normal[xref:#ERC165Checker-getSupportedInterfaces-address-bytes4---[`++getSupportedInterfaces++`]]
  2924. :supportsAllInterfaces: pass:normal[xref:#ERC165Checker-supportsAllInterfaces-address-bytes4---[`++supportsAllInterfaces++`]]
  2925. [.contract]
  2926. [[ERC165Checker]]
  2927. === `++ERC165Checker++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/introspection/ERC165Checker.sol[{github-icon},role=heading-link]
  2928. [.hljs-theme-light.nopadding]
  2929. ```solidity
  2930. import "@openzeppelin/contracts/utils/introspection/ERC165Checker.sol";
  2931. ```
  2932. Library used to query support of an interface declared via {IERC165}.
  2933. Note that these functions return the actual result of the query: they do not
  2934. `revert` if an interface is not supported. It is up to the caller to decide
  2935. what to do in these cases.
  2936. [.contract-index]
  2937. .Functions
  2938. --
  2939. * {xref-ERC165Checker-supportsERC165-address-}[`++supportsERC165(account)++`]
  2940. * {xref-ERC165Checker-supportsInterface-address-bytes4-}[`++supportsInterface(account, interfaceId)++`]
  2941. * {xref-ERC165Checker-getSupportedInterfaces-address-bytes4---}[`++getSupportedInterfaces(account, interfaceIds)++`]
  2942. * {xref-ERC165Checker-supportsAllInterfaces-address-bytes4---}[`++supportsAllInterfaces(account, interfaceIds)++`]
  2943. --
  2944. [.contract-item]
  2945. [[ERC165Checker-supportsERC165-address-]]
  2946. ==== `[.contract-item-name]#++supportsERC165++#++(address account) → bool++` [.item-kind]#internal#
  2947. Returns true if `account` supports the {IERC165} interface,
  2948. [.contract-item]
  2949. [[ERC165Checker-supportsInterface-address-bytes4-]]
  2950. ==== `[.contract-item-name]#++supportsInterface++#++(address account, bytes4 interfaceId) → bool++` [.item-kind]#internal#
  2951. Returns true if `account` supports the interface defined by
  2952. `interfaceId`. Support for {IERC165} itself is queried automatically.
  2953. See {IERC165-supportsInterface}.
  2954. [.contract-item]
  2955. [[ERC165Checker-getSupportedInterfaces-address-bytes4---]]
  2956. ==== `[.contract-item-name]#++getSupportedInterfaces++#++(address account, bytes4[] interfaceIds) → bool[]++` [.item-kind]#internal#
  2957. Returns a boolean array where each value corresponds to the
  2958. interfaces passed in and whether they're supported or not. This allows
  2959. you to batch check interfaces for a contract where your expectation
  2960. is that some interfaces may not be supported.
  2961. See {IERC165-supportsInterface}.
  2962. _Available since v3.4._
  2963. [.contract-item]
  2964. [[ERC165Checker-supportsAllInterfaces-address-bytes4---]]
  2965. ==== `[.contract-item-name]#++supportsAllInterfaces++#++(address account, bytes4[] interfaceIds) → bool++` [.item-kind]#internal#
  2966. Returns true if `account` supports all the interfaces defined in
  2967. `interfaceIds`. Support for {IERC165} itself is queried automatically.
  2968. Batch-querying can lead to gas savings by skipping repeated checks for
  2969. {IERC165} support.
  2970. See {IERC165-supportsInterface}.
  2971. :IERC1820Registry: pass:normal[xref:#IERC1820Registry[`++IERC1820Registry++`]]
  2972. :setManager: pass:normal[xref:#IERC1820Registry-setManager-address-address-[`++setManager++`]]
  2973. :getManager: pass:normal[xref:#IERC1820Registry-getManager-address-[`++getManager++`]]
  2974. :setInterfaceImplementer: pass:normal[xref:#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-[`++setInterfaceImplementer++`]]
  2975. :getInterfaceImplementer: pass:normal[xref:#IERC1820Registry-getInterfaceImplementer-address-bytes32-[`++getInterfaceImplementer++`]]
  2976. :interfaceHash: pass:normal[xref:#IERC1820Registry-interfaceHash-string-[`++interfaceHash++`]]
  2977. :updateERC165Cache: pass:normal[xref:#IERC1820Registry-updateERC165Cache-address-bytes4-[`++updateERC165Cache++`]]
  2978. :implementsERC165Interface: pass:normal[xref:#IERC1820Registry-implementsERC165Interface-address-bytes4-[`++implementsERC165Interface++`]]
  2979. :implementsERC165InterfaceNoCache: pass:normal[xref:#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-[`++implementsERC165InterfaceNoCache++`]]
  2980. :InterfaceImplementerSet: pass:normal[xref:#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-[`++InterfaceImplementerSet++`]]
  2981. :ManagerChanged: pass:normal[xref:#IERC1820Registry-ManagerChanged-address-address-[`++ManagerChanged++`]]
  2982. [.contract]
  2983. [[IERC1820Registry]]
  2984. === `++IERC1820Registry++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/introspection/IERC1820Registry.sol[{github-icon},role=heading-link]
  2985. [.hljs-theme-light.nopadding]
  2986. ```solidity
  2987. import "@openzeppelin/contracts/utils/introspection/IERC1820Registry.sol";
  2988. ```
  2989. Interface of the global ERC1820 Registry, as defined in the
  2990. https://eips.ethereum.org/EIPS/eip-1820[EIP]. Accounts may register
  2991. implementers for interfaces in this registry, as well as query support.
  2992. Implementers may be shared by multiple accounts, and can also implement more
  2993. than a single interface for each account. Contracts can implement interfaces
  2994. for themselves, but externally-owned accounts (EOA) must delegate this to a
  2995. contract.
  2996. {IERC165} interfaces can also be queried via the registry.
  2997. For an in-depth explanation and source code analysis, see the EIP text.
  2998. [.contract-index]
  2999. .Functions
  3000. --
  3001. * {xref-IERC1820Registry-setManager-address-address-}[`++setManager(account, newManager)++`]
  3002. * {xref-IERC1820Registry-getManager-address-}[`++getManager(account)++`]
  3003. * {xref-IERC1820Registry-setInterfaceImplementer-address-bytes32-address-}[`++setInterfaceImplementer(account, _interfaceHash, implementer)++`]
  3004. * {xref-IERC1820Registry-getInterfaceImplementer-address-bytes32-}[`++getInterfaceImplementer(account, _interfaceHash)++`]
  3005. * {xref-IERC1820Registry-interfaceHash-string-}[`++interfaceHash(interfaceName)++`]
  3006. * {xref-IERC1820Registry-updateERC165Cache-address-bytes4-}[`++updateERC165Cache(account, interfaceId)++`]
  3007. * {xref-IERC1820Registry-implementsERC165Interface-address-bytes4-}[`++implementsERC165Interface(account, interfaceId)++`]
  3008. * {xref-IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-}[`++implementsERC165InterfaceNoCache(account, interfaceId)++`]
  3009. --
  3010. [.contract-index]
  3011. .Events
  3012. --
  3013. * {xref-IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-}[`++InterfaceImplementerSet(account, interfaceHash, implementer)++`]
  3014. * {xref-IERC1820Registry-ManagerChanged-address-address-}[`++ManagerChanged(account, newManager)++`]
  3015. --
  3016. [.contract-item]
  3017. [[IERC1820Registry-setManager-address-address-]]
  3018. ==== `[.contract-item-name]#++setManager++#++(address account, address newManager)++` [.item-kind]#external#
  3019. Sets `newManager` as the manager for `account`. A manager of an
  3020. account is able to set interface implementers for it.
  3021. By default, each account is its own manager. Passing a value of `0x0` in
  3022. `newManager` will reset the manager to this initial state.
  3023. Emits a {ManagerChanged} event.
  3024. Requirements:
  3025. - the caller must be the current manager for `account`.
  3026. [.contract-item]
  3027. [[IERC1820Registry-getManager-address-]]
  3028. ==== `[.contract-item-name]#++getManager++#++(address account) → address++` [.item-kind]#external#
  3029. Returns the manager for `account`.
  3030. See {setManager}.
  3031. [.contract-item]
  3032. [[IERC1820Registry-setInterfaceImplementer-address-bytes32-address-]]
  3033. ==== `[.contract-item-name]#++setInterfaceImplementer++#++(address account, bytes32 _interfaceHash, address implementer)++` [.item-kind]#external#
  3034. Sets the `implementer` contract as ``account``'s implementer for
  3035. `interfaceHash`.
  3036. `account` being the zero address is an alias for the caller's address.
  3037. The zero address can also be used in `implementer` to remove an old one.
  3038. See {interfaceHash} to learn how these are created.
  3039. Emits an {InterfaceImplementerSet} event.
  3040. Requirements:
  3041. - the caller must be the current manager for `account`.
  3042. - `interfaceHash` must not be an {IERC165} interface id (i.e. it must not
  3043. end in 28 zeroes).
  3044. - `implementer` must implement {IERC1820Implementer} and return true when
  3045. queried for support, unless `implementer` is the caller. See
  3046. {IERC1820Implementer-canImplementInterfaceForAddress}.
  3047. [.contract-item]
  3048. [[IERC1820Registry-getInterfaceImplementer-address-bytes32-]]
  3049. ==== `[.contract-item-name]#++getInterfaceImplementer++#++(address account, bytes32 _interfaceHash) → address++` [.item-kind]#external#
  3050. Returns the implementer of `interfaceHash` for `account`. If no such
  3051. implementer is registered, returns the zero address.
  3052. If `interfaceHash` is an {IERC165} interface id (i.e. it ends with 28
  3053. zeroes), `account` will be queried for support of it.
  3054. `account` being the zero address is an alias for the caller's address.
  3055. [.contract-item]
  3056. [[IERC1820Registry-interfaceHash-string-]]
  3057. ==== `[.contract-item-name]#++interfaceHash++#++(string interfaceName) → bytes32++` [.item-kind]#external#
  3058. Returns the interface hash for an `interfaceName`, as defined in the
  3059. corresponding
  3060. https://eips.ethereum.org/EIPS/eip-1820#interface-name[section of the EIP].
  3061. [.contract-item]
  3062. [[IERC1820Registry-updateERC165Cache-address-bytes4-]]
  3063. ==== `[.contract-item-name]#++updateERC165Cache++#++(address account, bytes4 interfaceId)++` [.item-kind]#external#
  3064. [.contract-item]
  3065. [[IERC1820Registry-implementsERC165Interface-address-bytes4-]]
  3066. ==== `[.contract-item-name]#++implementsERC165Interface++#++(address account, bytes4 interfaceId) → bool++` [.item-kind]#external#
  3067. [.contract-item]
  3068. [[IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-]]
  3069. ==== `[.contract-item-name]#++implementsERC165InterfaceNoCache++#++(address account, bytes4 interfaceId) → bool++` [.item-kind]#external#
  3070. [.contract-item]
  3071. [[IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-]]
  3072. ==== `[.contract-item-name]#++InterfaceImplementerSet++#++(address account, bytes32 interfaceHash, address implementer)++` [.item-kind]#event#
  3073. [.contract-item]
  3074. [[IERC1820Registry-ManagerChanged-address-address-]]
  3075. ==== `[.contract-item-name]#++ManagerChanged++#++(address account, address newManager)++` [.item-kind]#event#
  3076. :IERC1820Implementer: pass:normal[xref:#IERC1820Implementer[`++IERC1820Implementer++`]]
  3077. :canImplementInterfaceForAddress: pass:normal[xref:#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`++canImplementInterfaceForAddress++`]]
  3078. [.contract]
  3079. [[IERC1820Implementer]]
  3080. === `++IERC1820Implementer++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/introspection/IERC1820Implementer.sol[{github-icon},role=heading-link]
  3081. [.hljs-theme-light.nopadding]
  3082. ```solidity
  3083. import "@openzeppelin/contracts/utils/introspection/IERC1820Implementer.sol";
  3084. ```
  3085. Interface for an ERC1820 implementer, as defined in the
  3086. https://eips.ethereum.org/EIPS/eip-1820#interface-implementation-erc1820implementerinterface[EIP].
  3087. Used by contracts that will be registered as implementers in the
  3088. {IERC1820Registry}.
  3089. [.contract-index]
  3090. .Functions
  3091. --
  3092. * {xref-IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-}[`++canImplementInterfaceForAddress(interfaceHash, account)++`]
  3093. --
  3094. [.contract-item]
  3095. [[IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-]]
  3096. ==== `[.contract-item-name]#++canImplementInterfaceForAddress++#++(bytes32 interfaceHash, address account) → bytes32++` [.item-kind]#external#
  3097. Returns a special value (`ERC1820_ACCEPT_MAGIC`) if this contract
  3098. implements `interfaceHash` for `account`.
  3099. See {IERC1820Registry-setInterfaceImplementer}.
  3100. :ERC1820Implementer: pass:normal[xref:#ERC1820Implementer[`++ERC1820Implementer++`]]
  3101. :canImplementInterfaceForAddress: pass:normal[xref:#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`++canImplementInterfaceForAddress++`]]
  3102. :_registerInterfaceForAddress: pass:normal[xref:#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-[`++_registerInterfaceForAddress++`]]
  3103. [.contract]
  3104. [[ERC1820Implementer]]
  3105. === `++ERC1820Implementer++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/introspection/ERC1820Implementer.sol[{github-icon},role=heading-link]
  3106. [.hljs-theme-light.nopadding]
  3107. ```solidity
  3108. import "@openzeppelin/contracts/utils/introspection/ERC1820Implementer.sol";
  3109. ```
  3110. Implementation of the {IERC1820Implementer} interface.
  3111. Contracts may inherit from this and call {_registerInterfaceForAddress} to
  3112. declare their willingness to be implementers.
  3113. {IERC1820Registry-setInterfaceImplementer} should then be called for the
  3114. registration to be complete.
  3115. [.contract-index]
  3116. .Functions
  3117. --
  3118. * {xref-ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-}[`++canImplementInterfaceForAddress(interfaceHash, account)++`]
  3119. * {xref-ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-}[`++_registerInterfaceForAddress(interfaceHash, account)++`]
  3120. [.contract-subindex-inherited]
  3121. .IERC1820Implementer
  3122. --
  3123. [.contract-item]
  3124. [[ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-]]
  3125. ==== `[.contract-item-name]#++canImplementInterfaceForAddress++#++(bytes32 interfaceHash, address account) → bytes32++` [.item-kind]#public#
  3126. See {IERC1820Implementer-canImplementInterfaceForAddress}.
  3127. [.contract-item]
  3128. [[ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-]]
  3129. ==== `[.contract-item-name]#++_registerInterfaceForAddress++#++(bytes32 interfaceHash, address account)++` [.item-kind]#internal#
  3130. Declares the contract as willing to be an implementer of
  3131. `interfaceHash` for `account`.
  3132. See {IERC1820Registry-setInterfaceImplementer} and
  3133. {IERC1820Registry-interfaceHash}.
  3134. == Data Structures
  3135. :BitMaps: pass:normal[xref:#BitMaps[`++BitMaps++`]]
  3136. :get: pass:normal[xref:#BitMaps-get-struct-BitMaps-BitMap-uint256-[`++get++`]]
  3137. :setTo: pass:normal[xref:#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-[`++setTo++`]]
  3138. :set: pass:normal[xref:#BitMaps-set-struct-BitMaps-BitMap-uint256-[`++set++`]]
  3139. :unset: pass:normal[xref:#BitMaps-unset-struct-BitMaps-BitMap-uint256-[`++unset++`]]
  3140. :BitMap: pass:normal[xref:#BitMaps-BitMap[`++BitMap++`]]
  3141. [.contract]
  3142. [[BitMaps]]
  3143. === `++BitMaps++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/structs/BitMaps.sol[{github-icon},role=heading-link]
  3144. [.hljs-theme-light.nopadding]
  3145. ```solidity
  3146. import "@openzeppelin/contracts/utils/structs/BitMaps.sol";
  3147. ```
  3148. Library for managing uint256 to bool mapping in a compact and efficient way, providing the keys are sequential.
  3149. Largelly inspired by Uniswap's https://github.com/Uniswap/merkle-distributor/blob/master/contracts/MerkleDistributor.sol[merkle-distributor].
  3150. [.contract-index]
  3151. .Functions
  3152. --
  3153. * {xref-BitMaps-get-struct-BitMaps-BitMap-uint256-}[`++get(bitmap, index)++`]
  3154. * {xref-BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-}[`++setTo(bitmap, index, value)++`]
  3155. * {xref-BitMaps-set-struct-BitMaps-BitMap-uint256-}[`++set(bitmap, index)++`]
  3156. * {xref-BitMaps-unset-struct-BitMaps-BitMap-uint256-}[`++unset(bitmap, index)++`]
  3157. --
  3158. [.contract-item]
  3159. [[BitMaps-get-struct-BitMaps-BitMap-uint256-]]
  3160. ==== `[.contract-item-name]#++get++#++(struct BitMaps.BitMap bitmap, uint256 index) → bool++` [.item-kind]#internal#
  3161. Returns whether the bit at `index` is set.
  3162. [.contract-item]
  3163. [[BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-]]
  3164. ==== `[.contract-item-name]#++setTo++#++(struct BitMaps.BitMap bitmap, uint256 index, bool value)++` [.item-kind]#internal#
  3165. Sets the bit at `index` to the boolean `value`.
  3166. [.contract-item]
  3167. [[BitMaps-set-struct-BitMaps-BitMap-uint256-]]
  3168. ==== `[.contract-item-name]#++set++#++(struct BitMaps.BitMap bitmap, uint256 index)++` [.item-kind]#internal#
  3169. Sets the bit at `index`.
  3170. [.contract-item]
  3171. [[BitMaps-unset-struct-BitMaps-BitMap-uint256-]]
  3172. ==== `[.contract-item-name]#++unset++#++(struct BitMaps.BitMap bitmap, uint256 index)++` [.item-kind]#internal#
  3173. Unsets the bit at `index`.
  3174. :EnumerableMap: pass:normal[xref:#EnumerableMap[`++EnumerableMap++`]]
  3175. :set: pass:normal[xref:#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-[`++set++`]]
  3176. :remove: pass:normal[xref:#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-[`++remove++`]]
  3177. :contains: pass:normal[xref:#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-[`++contains++`]]
  3178. :length: pass:normal[xref:#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-[`++length++`]]
  3179. :at: pass:normal[xref:#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-[`++at++`]]
  3180. :tryGet: pass:normal[xref:#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-[`++tryGet++`]]
  3181. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-[`++get++`]]
  3182. :get: pass:normal[xref:#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-[`++get++`]]
  3183. :Map: pass:normal[xref:#EnumerableMap-Map[`++Map++`]]
  3184. :UintToAddressMap: pass:normal[xref:#EnumerableMap-UintToAddressMap[`++UintToAddressMap++`]]
  3185. [.contract]
  3186. [[EnumerableMap]]
  3187. === `++EnumerableMap++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/structs/EnumerableMap.sol[{github-icon},role=heading-link]
  3188. [.hljs-theme-light.nopadding]
  3189. ```solidity
  3190. import "@openzeppelin/contracts/utils/structs/EnumerableMap.sol";
  3191. ```
  3192. Library for managing an enumerable variant of Solidity's
  3193. https://solidity.readthedocs.io/en/latest/types.html#mapping-types[`mapping`]
  3194. type.
  3195. Maps have the following properties:
  3196. - Entries are added, removed, and checked for existence in constant time
  3197. (O(1)).
  3198. - Entries are enumerated in O(n). No guarantees are made on the ordering.
  3199. ```
  3200. contract Example {
  3201. // Add the library methods
  3202. using EnumerableMap for EnumerableMap.UintToAddressMap;
  3203. // Declare a set state variable
  3204. EnumerableMap.UintToAddressMap private myMap;
  3205. }
  3206. ```
  3207. As of v3.0.0, only maps of type `uint256 -> address` (`UintToAddressMap`) are
  3208. supported.
  3209. [.contract-index]
  3210. .Functions
  3211. --
  3212. * {xref-EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-}[`++set(map, key, value)++`]
  3213. * {xref-EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-}[`++remove(map, key)++`]
  3214. * {xref-EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-}[`++contains(map, key)++`]
  3215. * {xref-EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-}[`++length(map)++`]
  3216. * {xref-EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-}[`++at(map, index)++`]
  3217. * {xref-EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-}[`++tryGet(map, key)++`]
  3218. * {xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-}[`++get(map, key)++`]
  3219. * {xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-}[`++get(map, key, errorMessage)++`]
  3220. --
  3221. [.contract-item]
  3222. [[EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-]]
  3223. ==== `[.contract-item-name]#++set++#++(struct EnumerableMap.UintToAddressMap map, uint256 key, address value) → bool++` [.item-kind]#internal#
  3224. Adds a key-value pair to a map, or updates the value for an existing
  3225. key. O(1).
  3226. Returns true if the key was added to the map, that is if it was not
  3227. already present.
  3228. [.contract-item]
  3229. [[EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-]]
  3230. ==== `[.contract-item-name]#++remove++#++(struct EnumerableMap.UintToAddressMap map, uint256 key) → bool++` [.item-kind]#internal#
  3231. Removes a value from a set. O(1).
  3232. Returns true if the key was removed from the map, that is if it was present.
  3233. [.contract-item]
  3234. [[EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-]]
  3235. ==== `[.contract-item-name]#++contains++#++(struct EnumerableMap.UintToAddressMap map, uint256 key) → bool++` [.item-kind]#internal#
  3236. Returns true if the key is in the map. O(1).
  3237. [.contract-item]
  3238. [[EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-]]
  3239. ==== `[.contract-item-name]#++length++#++(struct EnumerableMap.UintToAddressMap map) → uint256++` [.item-kind]#internal#
  3240. Returns the number of elements in the map. O(1).
  3241. [.contract-item]
  3242. [[EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-]]
  3243. ==== `[.contract-item-name]#++at++#++(struct EnumerableMap.UintToAddressMap map, uint256 index) → uint256, address++` [.item-kind]#internal#
  3244. Returns the element stored at position `index` in the set. O(1).
  3245. Note that there are no guarantees on the ordering of values inside the
  3246. array, and it may change when more values are added or removed.
  3247. Requirements:
  3248. - `index` must be strictly less than {length}.
  3249. [.contract-item]
  3250. [[EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-]]
  3251. ==== `[.contract-item-name]#++tryGet++#++(struct EnumerableMap.UintToAddressMap map, uint256 key) → bool, address++` [.item-kind]#internal#
  3252. Tries to returns the value associated with `key`. O(1).
  3253. Does not revert if `key` is not in the map.
  3254. _Available since v3.4._
  3255. [.contract-item]
  3256. [[EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-]]
  3257. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.UintToAddressMap map, uint256 key) → address++` [.item-kind]#internal#
  3258. Returns the value associated with `key`. O(1).
  3259. Requirements:
  3260. - `key` must be in the map.
  3261. [.contract-item]
  3262. [[EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-]]
  3263. ==== `[.contract-item-name]#++get++#++(struct EnumerableMap.UintToAddressMap map, uint256 key, string errorMessage) → address++` [.item-kind]#internal#
  3264. Same as {get}, with a custom error message when `key` is not in the map.
  3265. CAUTION: This function is deprecated because it requires allocating memory for the error
  3266. message unnecessarily. For custom revert reasons use {tryGet}.
  3267. :EnumerableSet: pass:normal[xref:#EnumerableSet[`++EnumerableSet++`]]
  3268. :add: pass:normal[xref:#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-[`++add++`]]
  3269. :remove: pass:normal[xref:#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-[`++remove++`]]
  3270. :contains: pass:normal[xref:#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-[`++contains++`]]
  3271. :length: pass:normal[xref:#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-[`++length++`]]
  3272. :at: pass:normal[xref:#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-[`++at++`]]
  3273. :values: pass:normal[xref:#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-[`++values++`]]
  3274. :add: pass:normal[xref:#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-[`++add++`]]
  3275. :remove: pass:normal[xref:#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-[`++remove++`]]
  3276. :contains: pass:normal[xref:#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-[`++contains++`]]
  3277. :length: pass:normal[xref:#EnumerableSet-length-struct-EnumerableSet-AddressSet-[`++length++`]]
  3278. :at: pass:normal[xref:#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-[`++at++`]]
  3279. :values: pass:normal[xref:#EnumerableSet-values-struct-EnumerableSet-AddressSet-[`++values++`]]
  3280. :add: pass:normal[xref:#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-[`++add++`]]
  3281. :remove: pass:normal[xref:#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-[`++remove++`]]
  3282. :contains: pass:normal[xref:#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-[`++contains++`]]
  3283. :length: pass:normal[xref:#EnumerableSet-length-struct-EnumerableSet-UintSet-[`++length++`]]
  3284. :at: pass:normal[xref:#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-[`++at++`]]
  3285. :values: pass:normal[xref:#EnumerableSet-values-struct-EnumerableSet-UintSet-[`++values++`]]
  3286. :Set: pass:normal[xref:#EnumerableSet-Set[`++Set++`]]
  3287. :Bytes32Set: pass:normal[xref:#EnumerableSet-Bytes32Set[`++Bytes32Set++`]]
  3288. :AddressSet: pass:normal[xref:#EnumerableSet-AddressSet[`++AddressSet++`]]
  3289. :UintSet: pass:normal[xref:#EnumerableSet-UintSet[`++UintSet++`]]
  3290. [.contract]
  3291. [[EnumerableSet]]
  3292. === `++EnumerableSet++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/structs/EnumerableSet.sol[{github-icon},role=heading-link]
  3293. [.hljs-theme-light.nopadding]
  3294. ```solidity
  3295. import "@openzeppelin/contracts/utils/structs/EnumerableSet.sol";
  3296. ```
  3297. Library for managing
  3298. https://en.wikipedia.org/wiki/Set_(abstract_data_type)[sets] of primitive
  3299. types.
  3300. Sets have the following properties:
  3301. - Elements are added, removed, and checked for existence in constant time
  3302. (O(1)).
  3303. - Elements are enumerated in O(n). No guarantees are made on the ordering.
  3304. ```
  3305. contract Example {
  3306. // Add the library methods
  3307. using EnumerableSet for EnumerableSet.AddressSet;
  3308. // Declare a set state variable
  3309. EnumerableSet.AddressSet private mySet;
  3310. }
  3311. ```
  3312. As of v3.3.0, sets of type `bytes32` (`Bytes32Set`), `address` (`AddressSet`)
  3313. and `uint256` (`UintSet`) are supported.
  3314. [.contract-index]
  3315. .Functions
  3316. --
  3317. * {xref-EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-}[`++add(set, value)++`]
  3318. * {xref-EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-}[`++remove(set, value)++`]
  3319. * {xref-EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-}[`++contains(set, value)++`]
  3320. * {xref-EnumerableSet-length-struct-EnumerableSet-Bytes32Set-}[`++length(set)++`]
  3321. * {xref-EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-}[`++at(set, index)++`]
  3322. * {xref-EnumerableSet-values-struct-EnumerableSet-Bytes32Set-}[`++values(set)++`]
  3323. * {xref-EnumerableSet-add-struct-EnumerableSet-AddressSet-address-}[`++add(set, value)++`]
  3324. * {xref-EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-}[`++remove(set, value)++`]
  3325. * {xref-EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-}[`++contains(set, value)++`]
  3326. * {xref-EnumerableSet-length-struct-EnumerableSet-AddressSet-}[`++length(set)++`]
  3327. * {xref-EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-}[`++at(set, index)++`]
  3328. * {xref-EnumerableSet-values-struct-EnumerableSet-AddressSet-}[`++values(set)++`]
  3329. * {xref-EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-}[`++add(set, value)++`]
  3330. * {xref-EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-}[`++remove(set, value)++`]
  3331. * {xref-EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-}[`++contains(set, value)++`]
  3332. * {xref-EnumerableSet-length-struct-EnumerableSet-UintSet-}[`++length(set)++`]
  3333. * {xref-EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-}[`++at(set, index)++`]
  3334. * {xref-EnumerableSet-values-struct-EnumerableSet-UintSet-}[`++values(set)++`]
  3335. --
  3336. [.contract-item]
  3337. [[EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-]]
  3338. ==== `[.contract-item-name]#++add++#++(struct EnumerableSet.Bytes32Set set, bytes32 value) → bool++` [.item-kind]#internal#
  3339. Add a value to a set. O(1).
  3340. Returns true if the value was added to the set, that is if it was not
  3341. already present.
  3342. [.contract-item]
  3343. [[EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-]]
  3344. ==== `[.contract-item-name]#++remove++#++(struct EnumerableSet.Bytes32Set set, bytes32 value) → bool++` [.item-kind]#internal#
  3345. Removes a value from a set. O(1).
  3346. Returns true if the value was removed from the set, that is if it was
  3347. present.
  3348. [.contract-item]
  3349. [[EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-]]
  3350. ==== `[.contract-item-name]#++contains++#++(struct EnumerableSet.Bytes32Set set, bytes32 value) → bool++` [.item-kind]#internal#
  3351. Returns true if the value is in the set. O(1).
  3352. [.contract-item]
  3353. [[EnumerableSet-length-struct-EnumerableSet-Bytes32Set-]]
  3354. ==== `[.contract-item-name]#++length++#++(struct EnumerableSet.Bytes32Set set) → uint256++` [.item-kind]#internal#
  3355. Returns the number of values in the set. O(1).
  3356. [.contract-item]
  3357. [[EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-]]
  3358. ==== `[.contract-item-name]#++at++#++(struct EnumerableSet.Bytes32Set set, uint256 index) → bytes32++` [.item-kind]#internal#
  3359. Returns the value stored at position `index` in the set. O(1).
  3360. Note that there are no guarantees on the ordering of values inside the
  3361. array, and it may change when more values are added or removed.
  3362. Requirements:
  3363. - `index` must be strictly less than {length}.
  3364. [.contract-item]
  3365. [[EnumerableSet-values-struct-EnumerableSet-Bytes32Set-]]
  3366. ==== `[.contract-item-name]#++values++#++(struct EnumerableSet.Bytes32Set set) → bytes32[]++` [.item-kind]#internal#
  3367. Return the entire set in an array
  3368. WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
  3369. to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
  3370. this function has an unbounded cost, and using it as part of a state-changing function may render the function
  3371. uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
  3372. [.contract-item]
  3373. [[EnumerableSet-add-struct-EnumerableSet-AddressSet-address-]]
  3374. ==== `[.contract-item-name]#++add++#++(struct EnumerableSet.AddressSet set, address value) → bool++` [.item-kind]#internal#
  3375. Add a value to a set. O(1).
  3376. Returns true if the value was added to the set, that is if it was not
  3377. already present.
  3378. [.contract-item]
  3379. [[EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-]]
  3380. ==== `[.contract-item-name]#++remove++#++(struct EnumerableSet.AddressSet set, address value) → bool++` [.item-kind]#internal#
  3381. Removes a value from a set. O(1).
  3382. Returns true if the value was removed from the set, that is if it was
  3383. present.
  3384. [.contract-item]
  3385. [[EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-]]
  3386. ==== `[.contract-item-name]#++contains++#++(struct EnumerableSet.AddressSet set, address value) → bool++` [.item-kind]#internal#
  3387. Returns true if the value is in the set. O(1).
  3388. [.contract-item]
  3389. [[EnumerableSet-length-struct-EnumerableSet-AddressSet-]]
  3390. ==== `[.contract-item-name]#++length++#++(struct EnumerableSet.AddressSet set) → uint256++` [.item-kind]#internal#
  3391. Returns the number of values in the set. O(1).
  3392. [.contract-item]
  3393. [[EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-]]
  3394. ==== `[.contract-item-name]#++at++#++(struct EnumerableSet.AddressSet set, uint256 index) → address++` [.item-kind]#internal#
  3395. Returns the value stored at position `index` in the set. O(1).
  3396. Note that there are no guarantees on the ordering of values inside the
  3397. array, and it may change when more values are added or removed.
  3398. Requirements:
  3399. - `index` must be strictly less than {length}.
  3400. [.contract-item]
  3401. [[EnumerableSet-values-struct-EnumerableSet-AddressSet-]]
  3402. ==== `[.contract-item-name]#++values++#++(struct EnumerableSet.AddressSet set) → address[]++` [.item-kind]#internal#
  3403. Return the entire set in an array
  3404. WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
  3405. to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
  3406. this function has an unbounded cost, and using it as part of a state-changing function may render the function
  3407. uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
  3408. [.contract-item]
  3409. [[EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-]]
  3410. ==== `[.contract-item-name]#++add++#++(struct EnumerableSet.UintSet set, uint256 value) → bool++` [.item-kind]#internal#
  3411. Add a value to a set. O(1).
  3412. Returns true if the value was added to the set, that is if it was not
  3413. already present.
  3414. [.contract-item]
  3415. [[EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-]]
  3416. ==== `[.contract-item-name]#++remove++#++(struct EnumerableSet.UintSet set, uint256 value) → bool++` [.item-kind]#internal#
  3417. Removes a value from a set. O(1).
  3418. Returns true if the value was removed from the set, that is if it was
  3419. present.
  3420. [.contract-item]
  3421. [[EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-]]
  3422. ==== `[.contract-item-name]#++contains++#++(struct EnumerableSet.UintSet set, uint256 value) → bool++` [.item-kind]#internal#
  3423. Returns true if the value is in the set. O(1).
  3424. [.contract-item]
  3425. [[EnumerableSet-length-struct-EnumerableSet-UintSet-]]
  3426. ==== `[.contract-item-name]#++length++#++(struct EnumerableSet.UintSet set) → uint256++` [.item-kind]#internal#
  3427. Returns the number of values on the set. O(1).
  3428. [.contract-item]
  3429. [[EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-]]
  3430. ==== `[.contract-item-name]#++at++#++(struct EnumerableSet.UintSet set, uint256 index) → uint256++` [.item-kind]#internal#
  3431. Returns the value stored at position `index` in the set. O(1).
  3432. Note that there are no guarantees on the ordering of values inside the
  3433. array, and it may change when more values are added or removed.
  3434. Requirements:
  3435. - `index` must be strictly less than {length}.
  3436. [.contract-item]
  3437. [[EnumerableSet-values-struct-EnumerableSet-UintSet-]]
  3438. ==== `[.contract-item-name]#++values++#++(struct EnumerableSet.UintSet set) → uint256[]++` [.item-kind]#internal#
  3439. Return the entire set in an array
  3440. WARNING: This operation will copy the entire storage to memory, which can be quite expensive. This is designed
  3441. to mostly be used by view accessors that are queried without any gas fees. Developers should keep in mind that
  3442. this function has an unbounded cost, and using it as part of a state-changing function may render the function
  3443. uncallable if the set grows to a point where copying to memory consumes too much gas to fit in a block.
  3444. :Checkpoints: pass:normal[xref:#Checkpoints[`++Checkpoints++`]]
  3445. :latest: pass:normal[xref:#Checkpoints-latest-struct-Checkpoints-History-[`++latest++`]]
  3446. :getAtBlock: pass:normal[xref:#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-[`++getAtBlock++`]]
  3447. :push: pass:normal[xref:#Checkpoints-push-struct-Checkpoints-History-uint256-[`++push++`]]
  3448. :push: pass:normal[xref:#Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-[`++push++`]]
  3449. :Checkpoint: pass:normal[xref:#Checkpoints-Checkpoint[`++Checkpoint++`]]
  3450. :History: pass:normal[xref:#Checkpoints-History[`++History++`]]
  3451. [.contract]
  3452. [[Checkpoints]]
  3453. === `++Checkpoints++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/Checkpoints.sol[{github-icon},role=heading-link]
  3454. [.hljs-theme-light.nopadding]
  3455. ```solidity
  3456. import "@openzeppelin/contracts/utils/Checkpoints.sol";
  3457. ```
  3458. This library defines the `History` struct, for checkpointing values as they change at different points in
  3459. time, and later looking up past values by block number. See {Votes} as an example.
  3460. To create a history of checkpoints define a variable type `Checkpoints.History` in your contract, and store a new
  3461. checkpoint for the current transaction block using the {push} function.
  3462. _Available since v4.5._
  3463. [.contract-index]
  3464. .Functions
  3465. --
  3466. * {xref-Checkpoints-latest-struct-Checkpoints-History-}[`++latest(self)++`]
  3467. * {xref-Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-}[`++getAtBlock(self, blockNumber)++`]
  3468. * {xref-Checkpoints-push-struct-Checkpoints-History-uint256-}[`++push(self, value)++`]
  3469. * {xref-Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-}[`++push(self, op, delta)++`]
  3470. --
  3471. [.contract-item]
  3472. [[Checkpoints-latest-struct-Checkpoints-History-]]
  3473. ==== `[.contract-item-name]#++latest++#++(struct Checkpoints.History self) → uint256++` [.item-kind]#internal#
  3474. Returns the value in the latest checkpoint, or zero if there are no checkpoints.
  3475. [.contract-item]
  3476. [[Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-]]
  3477. ==== `[.contract-item-name]#++getAtBlock++#++(struct Checkpoints.History self, uint256 blockNumber) → uint256++` [.item-kind]#internal#
  3478. Returns the value at a given block number. If a checkpoint is not available at that block, the closest one
  3479. before it is returned, or zero otherwise.
  3480. [.contract-item]
  3481. [[Checkpoints-push-struct-Checkpoints-History-uint256-]]
  3482. ==== `[.contract-item-name]#++push++#++(struct Checkpoints.History self, uint256 value) → uint256, uint256++` [.item-kind]#internal#
  3483. Pushes a value onto a History so that it is stored as the checkpoint for the current block.
  3484. Returns previous value and new value.
  3485. [.contract-item]
  3486. [[Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-]]
  3487. ==== `[.contract-item-name]#++push++#++(struct Checkpoints.History self, function (uint256,uint256) view returns (uint256) op, uint256 delta) → uint256, uint256++` [.item-kind]#internal#
  3488. Pushes a value onto a History, by updating the latest value using binary operation `op`. The new value will
  3489. be set to `op(latest, delta)`.
  3490. Returns previous value and new value.
  3491. == Libraries
  3492. :Create2: pass:normal[xref:#Create2[`++Create2++`]]
  3493. :deploy: pass:normal[xref:#Create2-deploy-uint256-bytes32-bytes-[`++deploy++`]]
  3494. :computeAddress: pass:normal[xref:#Create2-computeAddress-bytes32-bytes32-[`++computeAddress++`]]
  3495. :computeAddress: pass:normal[xref:#Create2-computeAddress-bytes32-bytes32-address-[`++computeAddress++`]]
  3496. [.contract]
  3497. [[Create2]]
  3498. === `++Create2++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/Create2.sol[{github-icon},role=heading-link]
  3499. [.hljs-theme-light.nopadding]
  3500. ```solidity
  3501. import "@openzeppelin/contracts/utils/Create2.sol";
  3502. ```
  3503. Helper to make usage of the `CREATE2` EVM opcode easier and safer.
  3504. `CREATE2` can be used to compute in advance the address where a smart
  3505. contract will be deployed, which allows for interesting new mechanisms known
  3506. as 'counterfactual interactions'.
  3507. See the https://eips.ethereum.org/EIPS/eip-1014#motivation[EIP] for more
  3508. information.
  3509. [.contract-index]
  3510. .Functions
  3511. --
  3512. * {xref-Create2-deploy-uint256-bytes32-bytes-}[`++deploy(amount, salt, bytecode)++`]
  3513. * {xref-Create2-computeAddress-bytes32-bytes32-}[`++computeAddress(salt, bytecodeHash)++`]
  3514. * {xref-Create2-computeAddress-bytes32-bytes32-address-}[`++computeAddress(salt, bytecodeHash, deployer)++`]
  3515. --
  3516. [.contract-item]
  3517. [[Create2-deploy-uint256-bytes32-bytes-]]
  3518. ==== `[.contract-item-name]#++deploy++#++(uint256 amount, bytes32 salt, bytes bytecode) → address++` [.item-kind]#internal#
  3519. Deploys a contract using `CREATE2`. The address where the contract
  3520. will be deployed can be known in advance via {computeAddress}.
  3521. The bytecode for a contract can be obtained from Solidity with
  3522. `type(contractName).creationCode`.
  3523. Requirements:
  3524. - `bytecode` must not be empty.
  3525. - `salt` must have not been used for `bytecode` already.
  3526. - the factory must have a balance of at least `amount`.
  3527. - if `amount` is non-zero, `bytecode` must have a `payable` constructor.
  3528. [.contract-item]
  3529. [[Create2-computeAddress-bytes32-bytes32-]]
  3530. ==== `[.contract-item-name]#++computeAddress++#++(bytes32 salt, bytes32 bytecodeHash) → address++` [.item-kind]#internal#
  3531. Returns the address where a contract will be stored if deployed via {deploy}. Any change in the
  3532. `bytecodeHash` or `salt` will result in a new destination address.
  3533. [.contract-item]
  3534. [[Create2-computeAddress-bytes32-bytes32-address-]]
  3535. ==== `[.contract-item-name]#++computeAddress++#++(bytes32 salt, bytes32 bytecodeHash, address deployer) → address++` [.item-kind]#internal#
  3536. Returns the address where a contract will be stored if deployed via {deploy} from a contract located at
  3537. `deployer`. If `deployer` is this contract's address, returns the same value as {computeAddress}.
  3538. :Address: pass:normal[xref:#Address[`++Address++`]]
  3539. :isContract: pass:normal[xref:#Address-isContract-address-[`++isContract++`]]
  3540. :sendValue: pass:normal[xref:#Address-sendValue-address-payable-uint256-[`++sendValue++`]]
  3541. :functionCall: pass:normal[xref:#Address-functionCall-address-bytes-[`++functionCall++`]]
  3542. :functionCall: pass:normal[xref:#Address-functionCall-address-bytes-string-[`++functionCall++`]]
  3543. :functionCallWithValue: pass:normal[xref:#Address-functionCallWithValue-address-bytes-uint256-[`++functionCallWithValue++`]]
  3544. :functionCallWithValue: pass:normal[xref:#Address-functionCallWithValue-address-bytes-uint256-string-[`++functionCallWithValue++`]]
  3545. :functionStaticCall: pass:normal[xref:#Address-functionStaticCall-address-bytes-[`++functionStaticCall++`]]
  3546. :functionStaticCall: pass:normal[xref:#Address-functionStaticCall-address-bytes-string-[`++functionStaticCall++`]]
  3547. :functionDelegateCall: pass:normal[xref:#Address-functionDelegateCall-address-bytes-[`++functionDelegateCall++`]]
  3548. :functionDelegateCall: pass:normal[xref:#Address-functionDelegateCall-address-bytes-string-[`++functionDelegateCall++`]]
  3549. :verifyCallResult: pass:normal[xref:#Address-verifyCallResult-bool-bytes-string-[`++verifyCallResult++`]]
  3550. [.contract]
  3551. [[Address]]
  3552. === `++Address++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/Address.sol[{github-icon},role=heading-link]
  3553. [.hljs-theme-light.nopadding]
  3554. ```solidity
  3555. import "@openzeppelin/contracts/utils/Address.sol";
  3556. ```
  3557. Collection of functions related to the address type
  3558. [.contract-index]
  3559. .Functions
  3560. --
  3561. * {xref-Address-isContract-address-}[`++isContract(account)++`]
  3562. * {xref-Address-sendValue-address-payable-uint256-}[`++sendValue(recipient, amount)++`]
  3563. * {xref-Address-functionCall-address-bytes-}[`++functionCall(target, data)++`]
  3564. * {xref-Address-functionCall-address-bytes-string-}[`++functionCall(target, data, errorMessage)++`]
  3565. * {xref-Address-functionCallWithValue-address-bytes-uint256-}[`++functionCallWithValue(target, data, value)++`]
  3566. * {xref-Address-functionCallWithValue-address-bytes-uint256-string-}[`++functionCallWithValue(target, data, value, errorMessage)++`]
  3567. * {xref-Address-functionStaticCall-address-bytes-}[`++functionStaticCall(target, data)++`]
  3568. * {xref-Address-functionStaticCall-address-bytes-string-}[`++functionStaticCall(target, data, errorMessage)++`]
  3569. * {xref-Address-functionDelegateCall-address-bytes-}[`++functionDelegateCall(target, data)++`]
  3570. * {xref-Address-functionDelegateCall-address-bytes-string-}[`++functionDelegateCall(target, data, errorMessage)++`]
  3571. * {xref-Address-verifyCallResult-bool-bytes-string-}[`++verifyCallResult(success, returndata, errorMessage)++`]
  3572. --
  3573. [.contract-item]
  3574. [[Address-isContract-address-]]
  3575. ==== `[.contract-item-name]#++isContract++#++(address account) → bool++` [.item-kind]#internal#
  3576. Returns true if `account` is a contract.
  3577. [IMPORTANT]
  3578. ====
  3579. It is unsafe to assume that an address for which this function returns
  3580. false is an externally-owned account (EOA) and not a contract.
  3581. Among others, `isContract` will return false for the following
  3582. types of addresses:
  3583. - an externally-owned account
  3584. - a contract in construction
  3585. - an address where a contract will be created
  3586. - an address where a contract lived, but was destroyed
  3587. ====
  3588. [IMPORTANT]
  3589. ====
  3590. You shouldn't rely on `isContract` to protect against flash loan attacks!
  3591. Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets
  3592. like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract
  3593. constructor.
  3594. ====
  3595. [.contract-item]
  3596. [[Address-sendValue-address-payable-uint256-]]
  3597. ==== `[.contract-item-name]#++sendValue++#++(address payable recipient, uint256 amount)++` [.item-kind]#internal#
  3598. Replacement for Solidity's `transfer`: sends `amount` wei to
  3599. `recipient`, forwarding all available gas and reverting on errors.
  3600. https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
  3601. of certain opcodes, possibly making contracts go over the 2300 gas limit
  3602. imposed by `transfer`, making them unable to receive funds via
  3603. `transfer`. {sendValue} removes this limitation.
  3604. https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].
  3605. IMPORTANT: because control is transferred to `recipient`, care must be
  3606. taken to not create reentrancy vulnerabilities. Consider using
  3607. {ReentrancyGuard} or the
  3608. https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
  3609. [.contract-item]
  3610. [[Address-functionCall-address-bytes-]]
  3611. ==== `[.contract-item-name]#++functionCall++#++(address target, bytes data) → bytes++` [.item-kind]#internal#
  3612. Performs a Solidity function call using a low level `call`. A
  3613. plain `call` is an unsafe replacement for a function call: use this
  3614. function instead.
  3615. If `target` reverts with a revert reason, it is bubbled up by this
  3616. function (like regular Solidity function calls).
  3617. Returns the raw returned data. To convert to the expected return value,
  3618. use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].
  3619. Requirements:
  3620. - `target` must be a contract.
  3621. - calling `target` with `data` must not revert.
  3622. _Available since v3.1._
  3623. [.contract-item]
  3624. [[Address-functionCall-address-bytes-string-]]
  3625. ==== `[.contract-item-name]#++functionCall++#++(address target, bytes data, string errorMessage) → bytes++` [.item-kind]#internal#
  3626. Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with
  3627. `errorMessage` as a fallback revert reason when `target` reverts.
  3628. _Available since v3.1._
  3629. [.contract-item]
  3630. [[Address-functionCallWithValue-address-bytes-uint256-]]
  3631. ==== `[.contract-item-name]#++functionCallWithValue++#++(address target, bytes data, uint256 value) → bytes++` [.item-kind]#internal#
  3632. Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
  3633. but also transferring `value` wei to `target`.
  3634. Requirements:
  3635. - the calling contract must have an ETH balance of at least `value`.
  3636. - the called Solidity function must be `payable`.
  3637. _Available since v3.1._
  3638. [.contract-item]
  3639. [[Address-functionCallWithValue-address-bytes-uint256-string-]]
  3640. ==== `[.contract-item-name]#++functionCallWithValue++#++(address target, bytes data, uint256 value, string errorMessage) → bytes++` [.item-kind]#internal#
  3641. Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but
  3642. with `errorMessage` as a fallback revert reason when `target` reverts.
  3643. _Available since v3.1._
  3644. [.contract-item]
  3645. [[Address-functionStaticCall-address-bytes-]]
  3646. ==== `[.contract-item-name]#++functionStaticCall++#++(address target, bytes data) → bytes++` [.item-kind]#internal#
  3647. Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
  3648. but performing a static call.
  3649. _Available since v3.3._
  3650. [.contract-item]
  3651. [[Address-functionStaticCall-address-bytes-string-]]
  3652. ==== `[.contract-item-name]#++functionStaticCall++#++(address target, bytes data, string errorMessage) → bytes++` [.item-kind]#internal#
  3653. Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
  3654. but performing a static call.
  3655. _Available since v3.3._
  3656. [.contract-item]
  3657. [[Address-functionDelegateCall-address-bytes-]]
  3658. ==== `[.contract-item-name]#++functionDelegateCall++#++(address target, bytes data) → bytes++` [.item-kind]#internal#
  3659. Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
  3660. but performing a delegate call.
  3661. _Available since v3.4._
  3662. [.contract-item]
  3663. [[Address-functionDelegateCall-address-bytes-string-]]
  3664. ==== `[.contract-item-name]#++functionDelegateCall++#++(address target, bytes data, string errorMessage) → bytes++` [.item-kind]#internal#
  3665. Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
  3666. but performing a delegate call.
  3667. _Available since v3.4._
  3668. [.contract-item]
  3669. [[Address-verifyCallResult-bool-bytes-string-]]
  3670. ==== `[.contract-item-name]#++verifyCallResult++#++(bool success, bytes returndata, string errorMessage) → bytes++` [.item-kind]#internal#
  3671. Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the
  3672. revert reason using the provided one.
  3673. _Available since v4.3._
  3674. :Arrays: pass:normal[xref:#Arrays[`++Arrays++`]]
  3675. :findUpperBound: pass:normal[xref:#Arrays-findUpperBound-uint256---uint256-[`++findUpperBound++`]]
  3676. [.contract]
  3677. [[Arrays]]
  3678. === `++Arrays++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/Arrays.sol[{github-icon},role=heading-link]
  3679. [.hljs-theme-light.nopadding]
  3680. ```solidity
  3681. import "@openzeppelin/contracts/utils/Arrays.sol";
  3682. ```
  3683. Collection of functions related to array types.
  3684. [.contract-index]
  3685. .Functions
  3686. --
  3687. * {xref-Arrays-findUpperBound-uint256---uint256-}[`++findUpperBound(array, element)++`]
  3688. --
  3689. [.contract-item]
  3690. [[Arrays-findUpperBound-uint256---uint256-]]
  3691. ==== `[.contract-item-name]#++findUpperBound++#++(uint256[] array, uint256 element) → uint256++` [.item-kind]#internal#
  3692. Searches a sorted `array` and returns the first index that contains
  3693. a value greater or equal to `element`. If no such index exists (i.e. all
  3694. values in the array are strictly less than `element`), the array length is
  3695. returned. Time complexity O(log n).
  3696. `array` is expected to be sorted in ascending order, and to contain no
  3697. repeated elements.
  3698. :Base64: pass:normal[xref:#Base64[`++Base64++`]]
  3699. :_TABLE: pass:normal[xref:#Base64-_TABLE-string[`++_TABLE++`]]
  3700. :encode: pass:normal[xref:#Base64-encode-bytes-[`++encode++`]]
  3701. [.contract]
  3702. [[Base64]]
  3703. === `++Base64++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/Base64.sol[{github-icon},role=heading-link]
  3704. [.hljs-theme-light.nopadding]
  3705. ```solidity
  3706. import "@openzeppelin/contracts/utils/Base64.sol";
  3707. ```
  3708. Provides a set of functions to operate with Base64 strings.
  3709. _Available since v4.5._
  3710. [.contract-index]
  3711. .Functions
  3712. --
  3713. * {xref-Base64-encode-bytes-}[`++encode(data)++`]
  3714. --
  3715. [.contract-item]
  3716. [[Base64-encode-bytes-]]
  3717. ==== `[.contract-item-name]#++encode++#++(bytes data) → string++` [.item-kind]#internal#
  3718. Converts a `bytes` to its Bytes64 `string` representation.
  3719. :Counters: pass:normal[xref:#Counters[`++Counters++`]]
  3720. :current: pass:normal[xref:#Counters-current-struct-Counters-Counter-[`++current++`]]
  3721. :increment: pass:normal[xref:#Counters-increment-struct-Counters-Counter-[`++increment++`]]
  3722. :decrement: pass:normal[xref:#Counters-decrement-struct-Counters-Counter-[`++decrement++`]]
  3723. :reset: pass:normal[xref:#Counters-reset-struct-Counters-Counter-[`++reset++`]]
  3724. :Counter: pass:normal[xref:#Counters-Counter[`++Counter++`]]
  3725. [.contract]
  3726. [[Counters]]
  3727. === `++Counters++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/Counters.sol[{github-icon},role=heading-link]
  3728. [.hljs-theme-light.nopadding]
  3729. ```solidity
  3730. import "@openzeppelin/contracts/utils/Counters.sol";
  3731. ```
  3732. Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number
  3733. of elements in a mapping, issuing ERC721 ids, or counting request ids.
  3734. Include with `using Counters for Counters.Counter;`
  3735. [.contract-index]
  3736. .Functions
  3737. --
  3738. * {xref-Counters-current-struct-Counters-Counter-}[`++current(counter)++`]
  3739. * {xref-Counters-increment-struct-Counters-Counter-}[`++increment(counter)++`]
  3740. * {xref-Counters-decrement-struct-Counters-Counter-}[`++decrement(counter)++`]
  3741. * {xref-Counters-reset-struct-Counters-Counter-}[`++reset(counter)++`]
  3742. --
  3743. [.contract-item]
  3744. [[Counters-current-struct-Counters-Counter-]]
  3745. ==== `[.contract-item-name]#++current++#++(struct Counters.Counter counter) → uint256++` [.item-kind]#internal#
  3746. [.contract-item]
  3747. [[Counters-increment-struct-Counters-Counter-]]
  3748. ==== `[.contract-item-name]#++increment++#++(struct Counters.Counter counter)++` [.item-kind]#internal#
  3749. [.contract-item]
  3750. [[Counters-decrement-struct-Counters-Counter-]]
  3751. ==== `[.contract-item-name]#++decrement++#++(struct Counters.Counter counter)++` [.item-kind]#internal#
  3752. [.contract-item]
  3753. [[Counters-reset-struct-Counters-Counter-]]
  3754. ==== `[.contract-item-name]#++reset++#++(struct Counters.Counter counter)++` [.item-kind]#internal#
  3755. :Strings: pass:normal[xref:#Strings[`++Strings++`]]
  3756. :toString: pass:normal[xref:#Strings-toString-uint256-[`++toString++`]]
  3757. :toHexString: pass:normal[xref:#Strings-toHexString-uint256-[`++toHexString++`]]
  3758. :toHexString: pass:normal[xref:#Strings-toHexString-uint256-uint256-[`++toHexString++`]]
  3759. [.contract]
  3760. [[Strings]]
  3761. === `++Strings++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/Strings.sol[{github-icon},role=heading-link]
  3762. [.hljs-theme-light.nopadding]
  3763. ```solidity
  3764. import "@openzeppelin/contracts/utils/Strings.sol";
  3765. ```
  3766. String operations.
  3767. [.contract-index]
  3768. .Functions
  3769. --
  3770. * {xref-Strings-toString-uint256-}[`++toString(value)++`]
  3771. * {xref-Strings-toHexString-uint256-}[`++toHexString(value)++`]
  3772. * {xref-Strings-toHexString-uint256-uint256-}[`++toHexString(value, length)++`]
  3773. --
  3774. [.contract-item]
  3775. [[Strings-toString-uint256-]]
  3776. ==== `[.contract-item-name]#++toString++#++(uint256 value) → string++` [.item-kind]#internal#
  3777. Converts a `uint256` to its ASCII `string` decimal representation.
  3778. [.contract-item]
  3779. [[Strings-toHexString-uint256-]]
  3780. ==== `[.contract-item-name]#++toHexString++#++(uint256 value) → string++` [.item-kind]#internal#
  3781. Converts a `uint256` to its ASCII `string` hexadecimal representation.
  3782. [.contract-item]
  3783. [[Strings-toHexString-uint256-uint256-]]
  3784. ==== `[.contract-item-name]#++toHexString++#++(uint256 value, uint256 length) → string++` [.item-kind]#internal#
  3785. Converts a `uint256` to its ASCII `string` hexadecimal representation with fixed length.
  3786. :StorageSlot: pass:normal[xref:#StorageSlot[`++StorageSlot++`]]
  3787. :getAddressSlot: pass:normal[xref:#StorageSlot-getAddressSlot-bytes32-[`++getAddressSlot++`]]
  3788. :getBooleanSlot: pass:normal[xref:#StorageSlot-getBooleanSlot-bytes32-[`++getBooleanSlot++`]]
  3789. :getBytes32Slot: pass:normal[xref:#StorageSlot-getBytes32Slot-bytes32-[`++getBytes32Slot++`]]
  3790. :getUint256Slot: pass:normal[xref:#StorageSlot-getUint256Slot-bytes32-[`++getUint256Slot++`]]
  3791. :AddressSlot: pass:normal[xref:#StorageSlot-AddressSlot[`++AddressSlot++`]]
  3792. :BooleanSlot: pass:normal[xref:#StorageSlot-BooleanSlot[`++BooleanSlot++`]]
  3793. :Bytes32Slot: pass:normal[xref:#StorageSlot-Bytes32Slot[`++Bytes32Slot++`]]
  3794. :Uint256Slot: pass:normal[xref:#StorageSlot-Uint256Slot[`++Uint256Slot++`]]
  3795. [.contract]
  3796. [[StorageSlot]]
  3797. === `++StorageSlot++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/StorageSlot.sol[{github-icon},role=heading-link]
  3798. [.hljs-theme-light.nopadding]
  3799. ```solidity
  3800. import "@openzeppelin/contracts/utils/StorageSlot.sol";
  3801. ```
  3802. Library for reading and writing primitive types to specific storage slots.
  3803. Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts.
  3804. This library helps with reading and writing to such slots without the need for inline assembly.
  3805. The functions in this library return Slot structs that contain a `value` member that can be used to read or write.
  3806. Example usage to set ERC1967 implementation slot:
  3807. ```
  3808. contract ERC1967 {
  3809. bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;
  3810. function _getImplementation() internal view returns (address) {
  3811. return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;
  3812. }
  3813. function _setImplementation(address newImplementation) internal {
  3814. require(Address.isContract(newImplementation), "ERC1967: new implementation is not a contract");
  3815. StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation;
  3816. }
  3817. }
  3818. ```
  3819. _Available since v4.1 for `address`, `bool`, `bytes32`, and `uint256`._
  3820. [.contract-index]
  3821. .Functions
  3822. --
  3823. * {xref-StorageSlot-getAddressSlot-bytes32-}[`++getAddressSlot(slot)++`]
  3824. * {xref-StorageSlot-getBooleanSlot-bytes32-}[`++getBooleanSlot(slot)++`]
  3825. * {xref-StorageSlot-getBytes32Slot-bytes32-}[`++getBytes32Slot(slot)++`]
  3826. * {xref-StorageSlot-getUint256Slot-bytes32-}[`++getUint256Slot(slot)++`]
  3827. --
  3828. [.contract-item]
  3829. [[StorageSlot-getAddressSlot-bytes32-]]
  3830. ==== `[.contract-item-name]#++getAddressSlot++#++(bytes32 slot) → struct StorageSlot.AddressSlot r++` [.item-kind]#internal#
  3831. Returns an `AddressSlot` with member `value` located at `slot`.
  3832. [.contract-item]
  3833. [[StorageSlot-getBooleanSlot-bytes32-]]
  3834. ==== `[.contract-item-name]#++getBooleanSlot++#++(bytes32 slot) → struct StorageSlot.BooleanSlot r++` [.item-kind]#internal#
  3835. Returns an `BooleanSlot` with member `value` located at `slot`.
  3836. [.contract-item]
  3837. [[StorageSlot-getBytes32Slot-bytes32-]]
  3838. ==== `[.contract-item-name]#++getBytes32Slot++#++(bytes32 slot) → struct StorageSlot.Bytes32Slot r++` [.item-kind]#internal#
  3839. Returns an `Bytes32Slot` with member `value` located at `slot`.
  3840. [.contract-item]
  3841. [[StorageSlot-getUint256Slot-bytes32-]]
  3842. ==== `[.contract-item-name]#++getUint256Slot++#++(bytes32 slot) → struct StorageSlot.Uint256Slot r++` [.item-kind]#internal#
  3843. Returns an `Uint256Slot` with member `value` located at `slot`.
  3844. :Multicall: pass:normal[xref:#Multicall[`++Multicall++`]]
  3845. :multicall: pass:normal[xref:#Multicall-multicall-bytes---[`++multicall++`]]
  3846. [.contract]
  3847. [[Multicall]]
  3848. === `++Multicall++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.5.0/contracts/utils/Multicall.sol[{github-icon},role=heading-link]
  3849. [.hljs-theme-light.nopadding]
  3850. ```solidity
  3851. import "@openzeppelin/contracts/utils/Multicall.sol";
  3852. ```
  3853. Provides a function to batch together multiple calls in a single external call.
  3854. _Available since v4.1._
  3855. [.contract-index]
  3856. .Functions
  3857. --
  3858. * {xref-Multicall-multicall-bytes---}[`++multicall(data)++`]
  3859. --
  3860. [.contract-item]
  3861. [[Multicall-multicall-bytes---]]
  3862. ==== `[.contract-item-name]#++multicall++#++(bytes[] data) → bytes[] results++` [.item-kind]#external#
  3863. Receives and executes a batch of function calls on this contract.