governance.adoc 428 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706
  1. :github-icon: pass:[<svg class="icon"><use href="#github-icon"/></svg>]
  2. :AccessControl: pass:normal[xref:access.adoc#AccessControl[`AccessControl`]]
  3. :xref-AccessControl: xref:access.adoc#AccessControl
  4. :AccessControl-onlyRole: pass:normal[xref:access.adoc#AccessControl-onlyRole-bytes32-[`AccessControl.onlyRole`]]
  5. :xref-AccessControl-onlyRole-bytes32-: xref:access.adoc#AccessControl-onlyRole-bytes32-
  6. :AccessControl-DEFAULT_ADMIN_ROLE: pass:normal[xref:access.adoc#AccessControl-DEFAULT_ADMIN_ROLE-bytes32[`AccessControl.DEFAULT_ADMIN_ROLE`]]
  7. :xref-AccessControl-DEFAULT_ADMIN_ROLE-bytes32: xref:access.adoc#AccessControl-DEFAULT_ADMIN_ROLE-bytes32
  8. :AccessControl-supportsInterface: pass:normal[xref:access.adoc#AccessControl-supportsInterface-bytes4-[`AccessControl.supportsInterface`]]
  9. :xref-AccessControl-supportsInterface-bytes4-: xref:access.adoc#AccessControl-supportsInterface-bytes4-
  10. :AccessControl-hasRole: pass:normal[xref:access.adoc#AccessControl-hasRole-bytes32-address-[`AccessControl.hasRole`]]
  11. :xref-AccessControl-hasRole-bytes32-address-: xref:access.adoc#AccessControl-hasRole-bytes32-address-
  12. :AccessControl-_checkRole: pass:normal[xref:access.adoc#AccessControl-_checkRole-bytes32-[`AccessControl._checkRole`]]
  13. :xref-AccessControl-_checkRole-bytes32-: xref:access.adoc#AccessControl-_checkRole-bytes32-
  14. :AccessControl-_checkRole: pass:normal[xref:access.adoc#AccessControl-_checkRole-bytes32-address-[`AccessControl._checkRole`]]
  15. :xref-AccessControl-_checkRole-bytes32-address-: xref:access.adoc#AccessControl-_checkRole-bytes32-address-
  16. :AccessControl-getRoleAdmin: pass:normal[xref:access.adoc#AccessControl-getRoleAdmin-bytes32-[`AccessControl.getRoleAdmin`]]
  17. :xref-AccessControl-getRoleAdmin-bytes32-: xref:access.adoc#AccessControl-getRoleAdmin-bytes32-
  18. :AccessControl-grantRole: pass:normal[xref:access.adoc#AccessControl-grantRole-bytes32-address-[`AccessControl.grantRole`]]
  19. :xref-AccessControl-grantRole-bytes32-address-: xref:access.adoc#AccessControl-grantRole-bytes32-address-
  20. :AccessControl-revokeRole: pass:normal[xref:access.adoc#AccessControl-revokeRole-bytes32-address-[`AccessControl.revokeRole`]]
  21. :xref-AccessControl-revokeRole-bytes32-address-: xref:access.adoc#AccessControl-revokeRole-bytes32-address-
  22. :AccessControl-renounceRole: pass:normal[xref:access.adoc#AccessControl-renounceRole-bytes32-address-[`AccessControl.renounceRole`]]
  23. :xref-AccessControl-renounceRole-bytes32-address-: xref:access.adoc#AccessControl-renounceRole-bytes32-address-
  24. :AccessControl-_setupRole: pass:normal[xref:access.adoc#AccessControl-_setupRole-bytes32-address-[`AccessControl._setupRole`]]
  25. :xref-AccessControl-_setupRole-bytes32-address-: xref:access.adoc#AccessControl-_setupRole-bytes32-address-
  26. :AccessControl-_setRoleAdmin: pass:normal[xref:access.adoc#AccessControl-_setRoleAdmin-bytes32-bytes32-[`AccessControl._setRoleAdmin`]]
  27. :xref-AccessControl-_setRoleAdmin-bytes32-bytes32-: xref:access.adoc#AccessControl-_setRoleAdmin-bytes32-bytes32-
  28. :AccessControl-_grantRole: pass:normal[xref:access.adoc#AccessControl-_grantRole-bytes32-address-[`AccessControl._grantRole`]]
  29. :xref-AccessControl-_grantRole-bytes32-address-: xref:access.adoc#AccessControl-_grantRole-bytes32-address-
  30. :AccessControl-_revokeRole: pass:normal[xref:access.adoc#AccessControl-_revokeRole-bytes32-address-[`AccessControl._revokeRole`]]
  31. :xref-AccessControl-_revokeRole-bytes32-address-: xref:access.adoc#AccessControl-_revokeRole-bytes32-address-
  32. :AccessControl-RoleData: pass:normal[xref:access.adoc#AccessControl-RoleData[`AccessControl.RoleData`]]
  33. :xref-AccessControl-RoleData: xref:access.adoc#AccessControl-RoleData
  34. :AccessControlCrossChain: pass:normal[xref:access.adoc#AccessControlCrossChain[`AccessControlCrossChain`]]
  35. :xref-AccessControlCrossChain: xref:access.adoc#AccessControlCrossChain
  36. :AccessControlCrossChain-CROSSCHAIN_ALIAS: pass:normal[xref:access.adoc#AccessControlCrossChain-CROSSCHAIN_ALIAS-bytes32[`AccessControlCrossChain.CROSSCHAIN_ALIAS`]]
  37. :xref-AccessControlCrossChain-CROSSCHAIN_ALIAS-bytes32: xref:access.adoc#AccessControlCrossChain-CROSSCHAIN_ALIAS-bytes32
  38. :AccessControlCrossChain-_checkRole: pass:normal[xref:access.adoc#AccessControlCrossChain-_checkRole-bytes32-[`AccessControlCrossChain._checkRole`]]
  39. :xref-AccessControlCrossChain-_checkRole-bytes32-: xref:access.adoc#AccessControlCrossChain-_checkRole-bytes32-
  40. :AccessControlCrossChain-_crossChainRoleAlias: pass:normal[xref:access.adoc#AccessControlCrossChain-_crossChainRoleAlias-bytes32-[`AccessControlCrossChain._crossChainRoleAlias`]]
  41. :xref-AccessControlCrossChain-_crossChainRoleAlias-bytes32-: xref:access.adoc#AccessControlCrossChain-_crossChainRoleAlias-bytes32-
  42. :AccessControlEnumerable: pass:normal[xref:access.adoc#AccessControlEnumerable[`AccessControlEnumerable`]]
  43. :xref-AccessControlEnumerable: xref:access.adoc#AccessControlEnumerable
  44. :AccessControlEnumerable-supportsInterface: pass:normal[xref:access.adoc#AccessControlEnumerable-supportsInterface-bytes4-[`AccessControlEnumerable.supportsInterface`]]
  45. :xref-AccessControlEnumerable-supportsInterface-bytes4-: xref:access.adoc#AccessControlEnumerable-supportsInterface-bytes4-
  46. :AccessControlEnumerable-getRoleMember: pass:normal[xref:access.adoc#AccessControlEnumerable-getRoleMember-bytes32-uint256-[`AccessControlEnumerable.getRoleMember`]]
  47. :xref-AccessControlEnumerable-getRoleMember-bytes32-uint256-: xref:access.adoc#AccessControlEnumerable-getRoleMember-bytes32-uint256-
  48. :AccessControlEnumerable-getRoleMemberCount: pass:normal[xref:access.adoc#AccessControlEnumerable-getRoleMemberCount-bytes32-[`AccessControlEnumerable.getRoleMemberCount`]]
  49. :xref-AccessControlEnumerable-getRoleMemberCount-bytes32-: xref:access.adoc#AccessControlEnumerable-getRoleMemberCount-bytes32-
  50. :AccessControlEnumerable-_grantRole: pass:normal[xref:access.adoc#AccessControlEnumerable-_grantRole-bytes32-address-[`AccessControlEnumerable._grantRole`]]
  51. :xref-AccessControlEnumerable-_grantRole-bytes32-address-: xref:access.adoc#AccessControlEnumerable-_grantRole-bytes32-address-
  52. :AccessControlEnumerable-_revokeRole: pass:normal[xref:access.adoc#AccessControlEnumerable-_revokeRole-bytes32-address-[`AccessControlEnumerable._revokeRole`]]
  53. :xref-AccessControlEnumerable-_revokeRole-bytes32-address-: xref:access.adoc#AccessControlEnumerable-_revokeRole-bytes32-address-
  54. :IAccessControl: pass:normal[xref:access.adoc#IAccessControl[`IAccessControl`]]
  55. :xref-IAccessControl: xref:access.adoc#IAccessControl
  56. :IAccessControl-hasRole: pass:normal[xref:access.adoc#IAccessControl-hasRole-bytes32-address-[`IAccessControl.hasRole`]]
  57. :xref-IAccessControl-hasRole-bytes32-address-: xref:access.adoc#IAccessControl-hasRole-bytes32-address-
  58. :IAccessControl-getRoleAdmin: pass:normal[xref:access.adoc#IAccessControl-getRoleAdmin-bytes32-[`IAccessControl.getRoleAdmin`]]
  59. :xref-IAccessControl-getRoleAdmin-bytes32-: xref:access.adoc#IAccessControl-getRoleAdmin-bytes32-
  60. :IAccessControl-grantRole: pass:normal[xref:access.adoc#IAccessControl-grantRole-bytes32-address-[`IAccessControl.grantRole`]]
  61. :xref-IAccessControl-grantRole-bytes32-address-: xref:access.adoc#IAccessControl-grantRole-bytes32-address-
  62. :IAccessControl-revokeRole: pass:normal[xref:access.adoc#IAccessControl-revokeRole-bytes32-address-[`IAccessControl.revokeRole`]]
  63. :xref-IAccessControl-revokeRole-bytes32-address-: xref:access.adoc#IAccessControl-revokeRole-bytes32-address-
  64. :IAccessControl-renounceRole: pass:normal[xref:access.adoc#IAccessControl-renounceRole-bytes32-address-[`IAccessControl.renounceRole`]]
  65. :xref-IAccessControl-renounceRole-bytes32-address-: xref:access.adoc#IAccessControl-renounceRole-bytes32-address-
  66. :IAccessControl-RoleAdminChanged: pass:normal[xref:access.adoc#IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-[`IAccessControl.RoleAdminChanged`]]
  67. :xref-IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-: xref:access.adoc#IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-
  68. :IAccessControl-RoleGranted: pass:normal[xref:access.adoc#IAccessControl-RoleGranted-bytes32-address-address-[`IAccessControl.RoleGranted`]]
  69. :xref-IAccessControl-RoleGranted-bytes32-address-address-: xref:access.adoc#IAccessControl-RoleGranted-bytes32-address-address-
  70. :IAccessControl-RoleRevoked: pass:normal[xref:access.adoc#IAccessControl-RoleRevoked-bytes32-address-address-[`IAccessControl.RoleRevoked`]]
  71. :xref-IAccessControl-RoleRevoked-bytes32-address-address-: xref:access.adoc#IAccessControl-RoleRevoked-bytes32-address-address-
  72. :IAccessControlEnumerable: pass:normal[xref:access.adoc#IAccessControlEnumerable[`IAccessControlEnumerable`]]
  73. :xref-IAccessControlEnumerable: xref:access.adoc#IAccessControlEnumerable
  74. :IAccessControlEnumerable-getRoleMember: pass:normal[xref:access.adoc#IAccessControlEnumerable-getRoleMember-bytes32-uint256-[`IAccessControlEnumerable.getRoleMember`]]
  75. :xref-IAccessControlEnumerable-getRoleMember-bytes32-uint256-: xref:access.adoc#IAccessControlEnumerable-getRoleMember-bytes32-uint256-
  76. :IAccessControlEnumerable-getRoleMemberCount: pass:normal[xref:access.adoc#IAccessControlEnumerable-getRoleMemberCount-bytes32-[`IAccessControlEnumerable.getRoleMemberCount`]]
  77. :xref-IAccessControlEnumerable-getRoleMemberCount-bytes32-: xref:access.adoc#IAccessControlEnumerable-getRoleMemberCount-bytes32-
  78. :Ownable: pass:normal[xref:access.adoc#Ownable[`Ownable`]]
  79. :xref-Ownable: xref:access.adoc#Ownable
  80. :Ownable-onlyOwner: pass:normal[xref:access.adoc#Ownable-onlyOwner--[`Ownable.onlyOwner`]]
  81. :xref-Ownable-onlyOwner--: xref:access.adoc#Ownable-onlyOwner--
  82. :Ownable-constructor: pass:normal[xref:access.adoc#Ownable-constructor--[`Ownable.constructor`]]
  83. :xref-Ownable-constructor--: xref:access.adoc#Ownable-constructor--
  84. :Ownable-owner: pass:normal[xref:access.adoc#Ownable-owner--[`Ownable.owner`]]
  85. :xref-Ownable-owner--: xref:access.adoc#Ownable-owner--
  86. :Ownable-_checkOwner: pass:normal[xref:access.adoc#Ownable-_checkOwner--[`Ownable._checkOwner`]]
  87. :xref-Ownable-_checkOwner--: xref:access.adoc#Ownable-_checkOwner--
  88. :Ownable-renounceOwnership: pass:normal[xref:access.adoc#Ownable-renounceOwnership--[`Ownable.renounceOwnership`]]
  89. :xref-Ownable-renounceOwnership--: xref:access.adoc#Ownable-renounceOwnership--
  90. :Ownable-transferOwnership: pass:normal[xref:access.adoc#Ownable-transferOwnership-address-[`Ownable.transferOwnership`]]
  91. :xref-Ownable-transferOwnership-address-: xref:access.adoc#Ownable-transferOwnership-address-
  92. :Ownable-_transferOwnership: pass:normal[xref:access.adoc#Ownable-_transferOwnership-address-[`Ownable._transferOwnership`]]
  93. :xref-Ownable-_transferOwnership-address-: xref:access.adoc#Ownable-_transferOwnership-address-
  94. :Ownable-OwnershipTransferred: pass:normal[xref:access.adoc#Ownable-OwnershipTransferred-address-address-[`Ownable.OwnershipTransferred`]]
  95. :xref-Ownable-OwnershipTransferred-address-address-: xref:access.adoc#Ownable-OwnershipTransferred-address-address-
  96. :CrossChainEnabled: pass:normal[xref:crosschain.adoc#CrossChainEnabled[`CrossChainEnabled`]]
  97. :xref-CrossChainEnabled: xref:crosschain.adoc#CrossChainEnabled
  98. :CrossChainEnabled-onlyCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabled-onlyCrossChain--[`CrossChainEnabled.onlyCrossChain`]]
  99. :xref-CrossChainEnabled-onlyCrossChain--: xref:crosschain.adoc#CrossChainEnabled-onlyCrossChain--
  100. :CrossChainEnabled-onlyCrossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabled-onlyCrossChainSender-address-[`CrossChainEnabled.onlyCrossChainSender`]]
  101. :xref-CrossChainEnabled-onlyCrossChainSender-address-: xref:crosschain.adoc#CrossChainEnabled-onlyCrossChainSender-address-
  102. :CrossChainEnabled-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabled-_isCrossChain--[`CrossChainEnabled._isCrossChain`]]
  103. :xref-CrossChainEnabled-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabled-_isCrossChain--
  104. :CrossChainEnabled-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabled-_crossChainSender--[`CrossChainEnabled._crossChainSender`]]
  105. :xref-CrossChainEnabled-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabled-_crossChainSender--
  106. :CrossChainEnabledAMB: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB[`CrossChainEnabledAMB`]]
  107. :xref-CrossChainEnabledAMB: xref:crosschain.adoc#CrossChainEnabledAMB
  108. :CrossChainEnabledAMB-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB-constructor-address-[`CrossChainEnabledAMB.constructor`]]
  109. :xref-CrossChainEnabledAMB-constructor-address-: xref:crosschain.adoc#CrossChainEnabledAMB-constructor-address-
  110. :CrossChainEnabledAMB-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB-_isCrossChain--[`CrossChainEnabledAMB._isCrossChain`]]
  111. :xref-CrossChainEnabledAMB-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledAMB-_isCrossChain--
  112. :CrossChainEnabledAMB-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB-_crossChainSender--[`CrossChainEnabledAMB._crossChainSender`]]
  113. :xref-CrossChainEnabledAMB-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledAMB-_crossChainSender--
  114. :LibAMB: pass:normal[xref:crosschain.adoc#LibAMB[`LibAMB`]]
  115. :xref-LibAMB: xref:crosschain.adoc#LibAMB
  116. :LibAMB-isCrossChain: pass:normal[xref:crosschain.adoc#LibAMB-isCrossChain-address-[`LibAMB.isCrossChain`]]
  117. :xref-LibAMB-isCrossChain-address-: xref:crosschain.adoc#LibAMB-isCrossChain-address-
  118. :LibAMB-crossChainSender: pass:normal[xref:crosschain.adoc#LibAMB-crossChainSender-address-[`LibAMB.crossChainSender`]]
  119. :xref-LibAMB-crossChainSender-address-: xref:crosschain.adoc#LibAMB-crossChainSender-address-
  120. :CrossChainEnabledArbitrumL1: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1[`CrossChainEnabledArbitrumL1`]]
  121. :xref-CrossChainEnabledArbitrumL1: xref:crosschain.adoc#CrossChainEnabledArbitrumL1
  122. :CrossChainEnabledArbitrumL1-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1-constructor-address-[`CrossChainEnabledArbitrumL1.constructor`]]
  123. :xref-CrossChainEnabledArbitrumL1-constructor-address-: xref:crosschain.adoc#CrossChainEnabledArbitrumL1-constructor-address-
  124. :CrossChainEnabledArbitrumL1-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_isCrossChain--[`CrossChainEnabledArbitrumL1._isCrossChain`]]
  125. :xref-CrossChainEnabledArbitrumL1-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_isCrossChain--
  126. :CrossChainEnabledArbitrumL1-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_crossChainSender--[`CrossChainEnabledArbitrumL1._crossChainSender`]]
  127. :xref-CrossChainEnabledArbitrumL1-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_crossChainSender--
  128. :CrossChainEnabledArbitrumL2: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL2[`CrossChainEnabledArbitrumL2`]]
  129. :xref-CrossChainEnabledArbitrumL2: xref:crosschain.adoc#CrossChainEnabledArbitrumL2
  130. :CrossChainEnabledArbitrumL2-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_isCrossChain--[`CrossChainEnabledArbitrumL2._isCrossChain`]]
  131. :xref-CrossChainEnabledArbitrumL2-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_isCrossChain--
  132. :CrossChainEnabledArbitrumL2-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_crossChainSender--[`CrossChainEnabledArbitrumL2._crossChainSender`]]
  133. :xref-CrossChainEnabledArbitrumL2-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_crossChainSender--
  134. :LibArbitrumL1: pass:normal[xref:crosschain.adoc#LibArbitrumL1[`LibArbitrumL1`]]
  135. :xref-LibArbitrumL1: xref:crosschain.adoc#LibArbitrumL1
  136. :LibArbitrumL1-isCrossChain: pass:normal[xref:crosschain.adoc#LibArbitrumL1-isCrossChain-address-[`LibArbitrumL1.isCrossChain`]]
  137. :xref-LibArbitrumL1-isCrossChain-address-: xref:crosschain.adoc#LibArbitrumL1-isCrossChain-address-
  138. :LibArbitrumL1-crossChainSender: pass:normal[xref:crosschain.adoc#LibArbitrumL1-crossChainSender-address-[`LibArbitrumL1.crossChainSender`]]
  139. :xref-LibArbitrumL1-crossChainSender-address-: xref:crosschain.adoc#LibArbitrumL1-crossChainSender-address-
  140. :LibArbitrumL2: pass:normal[xref:crosschain.adoc#LibArbitrumL2[`LibArbitrumL2`]]
  141. :xref-LibArbitrumL2: xref:crosschain.adoc#LibArbitrumL2
  142. :LibArbitrumL2-ARBSYS: pass:normal[xref:crosschain.adoc#LibArbitrumL2-ARBSYS-address[`LibArbitrumL2.ARBSYS`]]
  143. :xref-LibArbitrumL2-ARBSYS-address: xref:crosschain.adoc#LibArbitrumL2-ARBSYS-address
  144. :LibArbitrumL2-isCrossChain: pass:normal[xref:crosschain.adoc#LibArbitrumL2-isCrossChain-address-[`LibArbitrumL2.isCrossChain`]]
  145. :xref-LibArbitrumL2-isCrossChain-address-: xref:crosschain.adoc#LibArbitrumL2-isCrossChain-address-
  146. :LibArbitrumL2-crossChainSender: pass:normal[xref:crosschain.adoc#LibArbitrumL2-crossChainSender-address-[`LibArbitrumL2.crossChainSender`]]
  147. :xref-LibArbitrumL2-crossChainSender-address-: xref:crosschain.adoc#LibArbitrumL2-crossChainSender-address-
  148. :CrossChainEnabledOptimism: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism[`CrossChainEnabledOptimism`]]
  149. :xref-CrossChainEnabledOptimism: xref:crosschain.adoc#CrossChainEnabledOptimism
  150. :CrossChainEnabledOptimism-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism-constructor-address-[`CrossChainEnabledOptimism.constructor`]]
  151. :xref-CrossChainEnabledOptimism-constructor-address-: xref:crosschain.adoc#CrossChainEnabledOptimism-constructor-address-
  152. :CrossChainEnabledOptimism-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism-_isCrossChain--[`CrossChainEnabledOptimism._isCrossChain`]]
  153. :xref-CrossChainEnabledOptimism-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledOptimism-_isCrossChain--
  154. :CrossChainEnabledOptimism-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism-_crossChainSender--[`CrossChainEnabledOptimism._crossChainSender`]]
  155. :xref-CrossChainEnabledOptimism-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledOptimism-_crossChainSender--
  156. :LibOptimism: pass:normal[xref:crosschain.adoc#LibOptimism[`LibOptimism`]]
  157. :xref-LibOptimism: xref:crosschain.adoc#LibOptimism
  158. :LibOptimism-isCrossChain: pass:normal[xref:crosschain.adoc#LibOptimism-isCrossChain-address-[`LibOptimism.isCrossChain`]]
  159. :xref-LibOptimism-isCrossChain-address-: xref:crosschain.adoc#LibOptimism-isCrossChain-address-
  160. :LibOptimism-crossChainSender: pass:normal[xref:crosschain.adoc#LibOptimism-crossChainSender-address-[`LibOptimism.crossChainSender`]]
  161. :xref-LibOptimism-crossChainSender-address-: xref:crosschain.adoc#LibOptimism-crossChainSender-address-
  162. :CrossChainEnabledPolygonChild: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild[`CrossChainEnabledPolygonChild`]]
  163. :xref-CrossChainEnabledPolygonChild: xref:crosschain.adoc#CrossChainEnabledPolygonChild
  164. :CrossChainEnabledPolygonChild-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-constructor-address-[`CrossChainEnabledPolygonChild.constructor`]]
  165. :xref-CrossChainEnabledPolygonChild-constructor-address-: xref:crosschain.adoc#CrossChainEnabledPolygonChild-constructor-address-
  166. :CrossChainEnabledPolygonChild-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-_isCrossChain--[`CrossChainEnabledPolygonChild._isCrossChain`]]
  167. :xref-CrossChainEnabledPolygonChild-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledPolygonChild-_isCrossChain--
  168. :CrossChainEnabledPolygonChild-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-_crossChainSender--[`CrossChainEnabledPolygonChild._crossChainSender`]]
  169. :xref-CrossChainEnabledPolygonChild-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledPolygonChild-_crossChainSender--
  170. :CrossChainEnabledPolygonChild-processMessageFromRoot: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-processMessageFromRoot-uint256-address-bytes-[`CrossChainEnabledPolygonChild.processMessageFromRoot`]]
  171. :xref-CrossChainEnabledPolygonChild-processMessageFromRoot-uint256-address-bytes-: xref:crosschain.adoc#CrossChainEnabledPolygonChild-processMessageFromRoot-uint256-address-bytes-
  172. :PaymentSplitter: pass:normal[xref:finance.adoc#PaymentSplitter[`PaymentSplitter`]]
  173. :xref-PaymentSplitter: xref:finance.adoc#PaymentSplitter
  174. :PaymentSplitter-constructor: pass:normal[xref:finance.adoc#PaymentSplitter-constructor-address---uint256---[`PaymentSplitter.constructor`]]
  175. :xref-PaymentSplitter-constructor-address---uint256---: xref:finance.adoc#PaymentSplitter-constructor-address---uint256---
  176. :PaymentSplitter-receive: pass:normal[xref:finance.adoc#PaymentSplitter-receive--[`PaymentSplitter.receive`]]
  177. :xref-PaymentSplitter-receive--: xref:finance.adoc#PaymentSplitter-receive--
  178. :PaymentSplitter-totalShares: pass:normal[xref:finance.adoc#PaymentSplitter-totalShares--[`PaymentSplitter.totalShares`]]
  179. :xref-PaymentSplitter-totalShares--: xref:finance.adoc#PaymentSplitter-totalShares--
  180. :PaymentSplitter-totalReleased: pass:normal[xref:finance.adoc#PaymentSplitter-totalReleased--[`PaymentSplitter.totalReleased`]]
  181. :xref-PaymentSplitter-totalReleased--: xref:finance.adoc#PaymentSplitter-totalReleased--
  182. :PaymentSplitter-totalReleased: pass:normal[xref:finance.adoc#PaymentSplitter-totalReleased-contract-IERC20-[`PaymentSplitter.totalReleased`]]
  183. :xref-PaymentSplitter-totalReleased-contract-IERC20-: xref:finance.adoc#PaymentSplitter-totalReleased-contract-IERC20-
  184. :PaymentSplitter-shares: pass:normal[xref:finance.adoc#PaymentSplitter-shares-address-[`PaymentSplitter.shares`]]
  185. :xref-PaymentSplitter-shares-address-: xref:finance.adoc#PaymentSplitter-shares-address-
  186. :PaymentSplitter-released: pass:normal[xref:finance.adoc#PaymentSplitter-released-address-[`PaymentSplitter.released`]]
  187. :xref-PaymentSplitter-released-address-: xref:finance.adoc#PaymentSplitter-released-address-
  188. :PaymentSplitter-released: pass:normal[xref:finance.adoc#PaymentSplitter-released-contract-IERC20-address-[`PaymentSplitter.released`]]
  189. :xref-PaymentSplitter-released-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-released-contract-IERC20-address-
  190. :PaymentSplitter-payee: pass:normal[xref:finance.adoc#PaymentSplitter-payee-uint256-[`PaymentSplitter.payee`]]
  191. :xref-PaymentSplitter-payee-uint256-: xref:finance.adoc#PaymentSplitter-payee-uint256-
  192. :PaymentSplitter-releasable: pass:normal[xref:finance.adoc#PaymentSplitter-releasable-address-[`PaymentSplitter.releasable`]]
  193. :xref-PaymentSplitter-releasable-address-: xref:finance.adoc#PaymentSplitter-releasable-address-
  194. :PaymentSplitter-releasable: pass:normal[xref:finance.adoc#PaymentSplitter-releasable-contract-IERC20-address-[`PaymentSplitter.releasable`]]
  195. :xref-PaymentSplitter-releasable-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-releasable-contract-IERC20-address-
  196. :PaymentSplitter-release: pass:normal[xref:finance.adoc#PaymentSplitter-release-address-payable-[`PaymentSplitter.release`]]
  197. :xref-PaymentSplitter-release-address-payable-: xref:finance.adoc#PaymentSplitter-release-address-payable-
  198. :PaymentSplitter-release: pass:normal[xref:finance.adoc#PaymentSplitter-release-contract-IERC20-address-[`PaymentSplitter.release`]]
  199. :xref-PaymentSplitter-release-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-release-contract-IERC20-address-
  200. :PaymentSplitter-PayeeAdded: pass:normal[xref:finance.adoc#PaymentSplitter-PayeeAdded-address-uint256-[`PaymentSplitter.PayeeAdded`]]
  201. :xref-PaymentSplitter-PayeeAdded-address-uint256-: xref:finance.adoc#PaymentSplitter-PayeeAdded-address-uint256-
  202. :PaymentSplitter-PaymentReleased: pass:normal[xref:finance.adoc#PaymentSplitter-PaymentReleased-address-uint256-[`PaymentSplitter.PaymentReleased`]]
  203. :xref-PaymentSplitter-PaymentReleased-address-uint256-: xref:finance.adoc#PaymentSplitter-PaymentReleased-address-uint256-
  204. :PaymentSplitter-ERC20PaymentReleased: pass:normal[xref:finance.adoc#PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-[`PaymentSplitter.ERC20PaymentReleased`]]
  205. :xref-PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-: xref:finance.adoc#PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-
  206. :PaymentSplitter-PaymentReceived: pass:normal[xref:finance.adoc#PaymentSplitter-PaymentReceived-address-uint256-[`PaymentSplitter.PaymentReceived`]]
  207. :xref-PaymentSplitter-PaymentReceived-address-uint256-: xref:finance.adoc#PaymentSplitter-PaymentReceived-address-uint256-
  208. :VestingWallet: pass:normal[xref:finance.adoc#VestingWallet[`VestingWallet`]]
  209. :xref-VestingWallet: xref:finance.adoc#VestingWallet
  210. :VestingWallet-constructor: pass:normal[xref:finance.adoc#VestingWallet-constructor-address-uint64-uint64-[`VestingWallet.constructor`]]
  211. :xref-VestingWallet-constructor-address-uint64-uint64-: xref:finance.adoc#VestingWallet-constructor-address-uint64-uint64-
  212. :VestingWallet-receive: pass:normal[xref:finance.adoc#VestingWallet-receive--[`VestingWallet.receive`]]
  213. :xref-VestingWallet-receive--: xref:finance.adoc#VestingWallet-receive--
  214. :VestingWallet-beneficiary: pass:normal[xref:finance.adoc#VestingWallet-beneficiary--[`VestingWallet.beneficiary`]]
  215. :xref-VestingWallet-beneficiary--: xref:finance.adoc#VestingWallet-beneficiary--
  216. :VestingWallet-start: pass:normal[xref:finance.adoc#VestingWallet-start--[`VestingWallet.start`]]
  217. :xref-VestingWallet-start--: xref:finance.adoc#VestingWallet-start--
  218. :VestingWallet-duration: pass:normal[xref:finance.adoc#VestingWallet-duration--[`VestingWallet.duration`]]
  219. :xref-VestingWallet-duration--: xref:finance.adoc#VestingWallet-duration--
  220. :VestingWallet-released: pass:normal[xref:finance.adoc#VestingWallet-released--[`VestingWallet.released`]]
  221. :xref-VestingWallet-released--: xref:finance.adoc#VestingWallet-released--
  222. :VestingWallet-released: pass:normal[xref:finance.adoc#VestingWallet-released-address-[`VestingWallet.released`]]
  223. :xref-VestingWallet-released-address-: xref:finance.adoc#VestingWallet-released-address-
  224. :VestingWallet-release: pass:normal[xref:finance.adoc#VestingWallet-release--[`VestingWallet.release`]]
  225. :xref-VestingWallet-release--: xref:finance.adoc#VestingWallet-release--
  226. :VestingWallet-release: pass:normal[xref:finance.adoc#VestingWallet-release-address-[`VestingWallet.release`]]
  227. :xref-VestingWallet-release-address-: xref:finance.adoc#VestingWallet-release-address-
  228. :VestingWallet-vestedAmount: pass:normal[xref:finance.adoc#VestingWallet-vestedAmount-uint64-[`VestingWallet.vestedAmount`]]
  229. :xref-VestingWallet-vestedAmount-uint64-: xref:finance.adoc#VestingWallet-vestedAmount-uint64-
  230. :VestingWallet-vestedAmount: pass:normal[xref:finance.adoc#VestingWallet-vestedAmount-address-uint64-[`VestingWallet.vestedAmount`]]
  231. :xref-VestingWallet-vestedAmount-address-uint64-: xref:finance.adoc#VestingWallet-vestedAmount-address-uint64-
  232. :VestingWallet-_vestingSchedule: pass:normal[xref:finance.adoc#VestingWallet-_vestingSchedule-uint256-uint64-[`VestingWallet._vestingSchedule`]]
  233. :xref-VestingWallet-_vestingSchedule-uint256-uint64-: xref:finance.adoc#VestingWallet-_vestingSchedule-uint256-uint64-
  234. :VestingWallet-EtherReleased: pass:normal[xref:finance.adoc#VestingWallet-EtherReleased-uint256-[`VestingWallet.EtherReleased`]]
  235. :xref-VestingWallet-EtherReleased-uint256-: xref:finance.adoc#VestingWallet-EtherReleased-uint256-
  236. :VestingWallet-ERC20Released: pass:normal[xref:finance.adoc#VestingWallet-ERC20Released-address-uint256-[`VestingWallet.ERC20Released`]]
  237. :xref-VestingWallet-ERC20Released-address-uint256-: xref:finance.adoc#VestingWallet-ERC20Released-address-uint256-
  238. :Governor: pass:normal[xref:governance.adoc#Governor[`Governor`]]
  239. :xref-Governor: xref:governance.adoc#Governor
  240. :Governor-onlyGovernance: pass:normal[xref:governance.adoc#Governor-onlyGovernance--[`Governor.onlyGovernance`]]
  241. :xref-Governor-onlyGovernance--: xref:governance.adoc#Governor-onlyGovernance--
  242. :Governor-BALLOT_TYPEHASH: pass:normal[xref:governance.adoc#Governor-BALLOT_TYPEHASH-bytes32[`Governor.BALLOT_TYPEHASH`]]
  243. :xref-Governor-BALLOT_TYPEHASH-bytes32: xref:governance.adoc#Governor-BALLOT_TYPEHASH-bytes32
  244. :Governor-EXTENDED_BALLOT_TYPEHASH: pass:normal[xref:governance.adoc#Governor-EXTENDED_BALLOT_TYPEHASH-bytes32[`Governor.EXTENDED_BALLOT_TYPEHASH`]]
  245. :xref-Governor-EXTENDED_BALLOT_TYPEHASH-bytes32: xref:governance.adoc#Governor-EXTENDED_BALLOT_TYPEHASH-bytes32
  246. :Governor-constructor: pass:normal[xref:governance.adoc#Governor-constructor-string-[`Governor.constructor`]]
  247. :xref-Governor-constructor-string-: xref:governance.adoc#Governor-constructor-string-
  248. :Governor-receive: pass:normal[xref:governance.adoc#Governor-receive--[`Governor.receive`]]
  249. :xref-Governor-receive--: xref:governance.adoc#Governor-receive--
  250. :Governor-supportsInterface: pass:normal[xref:governance.adoc#Governor-supportsInterface-bytes4-[`Governor.supportsInterface`]]
  251. :xref-Governor-supportsInterface-bytes4-: xref:governance.adoc#Governor-supportsInterface-bytes4-
  252. :Governor-name: pass:normal[xref:governance.adoc#Governor-name--[`Governor.name`]]
  253. :xref-Governor-name--: xref:governance.adoc#Governor-name--
  254. :Governor-version: pass:normal[xref:governance.adoc#Governor-version--[`Governor.version`]]
  255. :xref-Governor-version--: xref:governance.adoc#Governor-version--
  256. :Governor-hashProposal: pass:normal[xref:governance.adoc#Governor-hashProposal-address---uint256---bytes---bytes32-[`Governor.hashProposal`]]
  257. :xref-Governor-hashProposal-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-hashProposal-address---uint256---bytes---bytes32-
  258. :Governor-state: pass:normal[xref:governance.adoc#Governor-state-uint256-[`Governor.state`]]
  259. :xref-Governor-state-uint256-: xref:governance.adoc#Governor-state-uint256-
  260. :Governor-proposalSnapshot: pass:normal[xref:governance.adoc#Governor-proposalSnapshot-uint256-[`Governor.proposalSnapshot`]]
  261. :xref-Governor-proposalSnapshot-uint256-: xref:governance.adoc#Governor-proposalSnapshot-uint256-
  262. :Governor-proposalDeadline: pass:normal[xref:governance.adoc#Governor-proposalDeadline-uint256-[`Governor.proposalDeadline`]]
  263. :xref-Governor-proposalDeadline-uint256-: xref:governance.adoc#Governor-proposalDeadline-uint256-
  264. :Governor-proposalThreshold: pass:normal[xref:governance.adoc#Governor-proposalThreshold--[`Governor.proposalThreshold`]]
  265. :xref-Governor-proposalThreshold--: xref:governance.adoc#Governor-proposalThreshold--
  266. :Governor-_quorumReached: pass:normal[xref:governance.adoc#Governor-_quorumReached-uint256-[`Governor._quorumReached`]]
  267. :xref-Governor-_quorumReached-uint256-: xref:governance.adoc#Governor-_quorumReached-uint256-
  268. :Governor-_voteSucceeded: pass:normal[xref:governance.adoc#Governor-_voteSucceeded-uint256-[`Governor._voteSucceeded`]]
  269. :xref-Governor-_voteSucceeded-uint256-: xref:governance.adoc#Governor-_voteSucceeded-uint256-
  270. :Governor-_getVotes: pass:normal[xref:governance.adoc#Governor-_getVotes-address-uint256-bytes-[`Governor._getVotes`]]
  271. :xref-Governor-_getVotes-address-uint256-bytes-: xref:governance.adoc#Governor-_getVotes-address-uint256-bytes-
  272. :Governor-_countVote: pass:normal[xref:governance.adoc#Governor-_countVote-uint256-address-uint8-uint256-bytes-[`Governor._countVote`]]
  273. :xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-: xref:governance.adoc#Governor-_countVote-uint256-address-uint8-uint256-bytes-
  274. :Governor-_defaultParams: pass:normal[xref:governance.adoc#Governor-_defaultParams--[`Governor._defaultParams`]]
  275. :xref-Governor-_defaultParams--: xref:governance.adoc#Governor-_defaultParams--
  276. :Governor-propose: pass:normal[xref:governance.adoc#Governor-propose-address---uint256---bytes---string-[`Governor.propose`]]
  277. :xref-Governor-propose-address---uint256---bytes---string-: xref:governance.adoc#Governor-propose-address---uint256---bytes---string-
  278. :Governor-execute: pass:normal[xref:governance.adoc#Governor-execute-address---uint256---bytes---bytes32-[`Governor.execute`]]
  279. :xref-Governor-execute-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-execute-address---uint256---bytes---bytes32-
  280. :Governor-_execute: pass:normal[xref:governance.adoc#Governor-_execute-uint256-address---uint256---bytes---bytes32-[`Governor._execute`]]
  281. :xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_execute-uint256-address---uint256---bytes---bytes32-
  282. :Governor-_beforeExecute: pass:normal[xref:governance.adoc#Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-[`Governor._beforeExecute`]]
  283. :xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-
  284. :Governor-_afterExecute: pass:normal[xref:governance.adoc#Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-[`Governor._afterExecute`]]
  285. :xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-
  286. :Governor-_cancel: pass:normal[xref:governance.adoc#Governor-_cancel-address---uint256---bytes---bytes32-[`Governor._cancel`]]
  287. :xref-Governor-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_cancel-address---uint256---bytes---bytes32-
  288. :Governor-getVotes: pass:normal[xref:governance.adoc#Governor-getVotes-address-uint256-[`Governor.getVotes`]]
  289. :xref-Governor-getVotes-address-uint256-: xref:governance.adoc#Governor-getVotes-address-uint256-
  290. :Governor-getVotesWithParams: pass:normal[xref:governance.adoc#Governor-getVotesWithParams-address-uint256-bytes-[`Governor.getVotesWithParams`]]
  291. :xref-Governor-getVotesWithParams-address-uint256-bytes-: xref:governance.adoc#Governor-getVotesWithParams-address-uint256-bytes-
  292. :Governor-castVote: pass:normal[xref:governance.adoc#Governor-castVote-uint256-uint8-[`Governor.castVote`]]
  293. :xref-Governor-castVote-uint256-uint8-: xref:governance.adoc#Governor-castVote-uint256-uint8-
  294. :Governor-castVoteWithReason: pass:normal[xref:governance.adoc#Governor-castVoteWithReason-uint256-uint8-string-[`Governor.castVoteWithReason`]]
  295. :xref-Governor-castVoteWithReason-uint256-uint8-string-: xref:governance.adoc#Governor-castVoteWithReason-uint256-uint8-string-
  296. :Governor-castVoteWithReasonAndParams: pass:normal[xref:governance.adoc#Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`Governor.castVoteWithReasonAndParams`]]
  297. :xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-: xref:governance.adoc#Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-
  298. :Governor-castVoteBySig: pass:normal[xref:governance.adoc#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`Governor.castVoteBySig`]]
  299. :xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-: xref:governance.adoc#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-
  300. :Governor-castVoteWithReasonAndParamsBySig: pass:normal[xref:governance.adoc#Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`Governor.castVoteWithReasonAndParamsBySig`]]
  301. :xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-: xref:governance.adoc#Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-
  302. :Governor-_castVote: pass:normal[xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-[`Governor._castVote`]]
  303. :xref-Governor-_castVote-uint256-address-uint8-string-: xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-
  304. :Governor-_castVote: pass:normal[xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-bytes-[`Governor._castVote`]]
  305. :xref-Governor-_castVote-uint256-address-uint8-string-bytes-: xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-bytes-
  306. :Governor-relay: pass:normal[xref:governance.adoc#Governor-relay-address-uint256-bytes-[`Governor.relay`]]
  307. :xref-Governor-relay-address-uint256-bytes-: xref:governance.adoc#Governor-relay-address-uint256-bytes-
  308. :Governor-_executor: pass:normal[xref:governance.adoc#Governor-_executor--[`Governor._executor`]]
  309. :xref-Governor-_executor--: xref:governance.adoc#Governor-_executor--
  310. :Governor-onERC721Received: pass:normal[xref:governance.adoc#Governor-onERC721Received-address-address-uint256-bytes-[`Governor.onERC721Received`]]
  311. :xref-Governor-onERC721Received-address-address-uint256-bytes-: xref:governance.adoc#Governor-onERC721Received-address-address-uint256-bytes-
  312. :Governor-onERC1155Received: pass:normal[xref:governance.adoc#Governor-onERC1155Received-address-address-uint256-uint256-bytes-[`Governor.onERC1155Received`]]
  313. :xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-: xref:governance.adoc#Governor-onERC1155Received-address-address-uint256-uint256-bytes-
  314. :Governor-onERC1155BatchReceived: pass:normal[xref:governance.adoc#Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`Governor.onERC1155BatchReceived`]]
  315. :xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:governance.adoc#Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  316. :Governor-ProposalCore: pass:normal[xref:governance.adoc#Governor-ProposalCore[`Governor.ProposalCore`]]
  317. :xref-Governor-ProposalCore: xref:governance.adoc#Governor-ProposalCore
  318. :IGovernor: pass:normal[xref:governance.adoc#IGovernor[`IGovernor`]]
  319. :xref-IGovernor: xref:governance.adoc#IGovernor
  320. :IGovernor-name: pass:normal[xref:governance.adoc#IGovernor-name--[`IGovernor.name`]]
  321. :xref-IGovernor-name--: xref:governance.adoc#IGovernor-name--
  322. :IGovernor-version: pass:normal[xref:governance.adoc#IGovernor-version--[`IGovernor.version`]]
  323. :xref-IGovernor-version--: xref:governance.adoc#IGovernor-version--
  324. :IGovernor-COUNTING_MODE: pass:normal[xref:governance.adoc#IGovernor-COUNTING_MODE--[`IGovernor.COUNTING_MODE`]]
  325. :xref-IGovernor-COUNTING_MODE--: xref:governance.adoc#IGovernor-COUNTING_MODE--
  326. :IGovernor-hashProposal: pass:normal[xref:governance.adoc#IGovernor-hashProposal-address---uint256---bytes---bytes32-[`IGovernor.hashProposal`]]
  327. :xref-IGovernor-hashProposal-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernor-hashProposal-address---uint256---bytes---bytes32-
  328. :IGovernor-state: pass:normal[xref:governance.adoc#IGovernor-state-uint256-[`IGovernor.state`]]
  329. :xref-IGovernor-state-uint256-: xref:governance.adoc#IGovernor-state-uint256-
  330. :IGovernor-proposalSnapshot: pass:normal[xref:governance.adoc#IGovernor-proposalSnapshot-uint256-[`IGovernor.proposalSnapshot`]]
  331. :xref-IGovernor-proposalSnapshot-uint256-: xref:governance.adoc#IGovernor-proposalSnapshot-uint256-
  332. :IGovernor-proposalDeadline: pass:normal[xref:governance.adoc#IGovernor-proposalDeadline-uint256-[`IGovernor.proposalDeadline`]]
  333. :xref-IGovernor-proposalDeadline-uint256-: xref:governance.adoc#IGovernor-proposalDeadline-uint256-
  334. :IGovernor-votingDelay: pass:normal[xref:governance.adoc#IGovernor-votingDelay--[`IGovernor.votingDelay`]]
  335. :xref-IGovernor-votingDelay--: xref:governance.adoc#IGovernor-votingDelay--
  336. :IGovernor-votingPeriod: pass:normal[xref:governance.adoc#IGovernor-votingPeriod--[`IGovernor.votingPeriod`]]
  337. :xref-IGovernor-votingPeriod--: xref:governance.adoc#IGovernor-votingPeriod--
  338. :IGovernor-quorum: pass:normal[xref:governance.adoc#IGovernor-quorum-uint256-[`IGovernor.quorum`]]
  339. :xref-IGovernor-quorum-uint256-: xref:governance.adoc#IGovernor-quorum-uint256-
  340. :IGovernor-getVotes: pass:normal[xref:governance.adoc#IGovernor-getVotes-address-uint256-[`IGovernor.getVotes`]]
  341. :xref-IGovernor-getVotes-address-uint256-: xref:governance.adoc#IGovernor-getVotes-address-uint256-
  342. :IGovernor-getVotesWithParams: pass:normal[xref:governance.adoc#IGovernor-getVotesWithParams-address-uint256-bytes-[`IGovernor.getVotesWithParams`]]
  343. :xref-IGovernor-getVotesWithParams-address-uint256-bytes-: xref:governance.adoc#IGovernor-getVotesWithParams-address-uint256-bytes-
  344. :IGovernor-hasVoted: pass:normal[xref:governance.adoc#IGovernor-hasVoted-uint256-address-[`IGovernor.hasVoted`]]
  345. :xref-IGovernor-hasVoted-uint256-address-: xref:governance.adoc#IGovernor-hasVoted-uint256-address-
  346. :IGovernor-propose: pass:normal[xref:governance.adoc#IGovernor-propose-address---uint256---bytes---string-[`IGovernor.propose`]]
  347. :xref-IGovernor-propose-address---uint256---bytes---string-: xref:governance.adoc#IGovernor-propose-address---uint256---bytes---string-
  348. :IGovernor-execute: pass:normal[xref:governance.adoc#IGovernor-execute-address---uint256---bytes---bytes32-[`IGovernor.execute`]]
  349. :xref-IGovernor-execute-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernor-execute-address---uint256---bytes---bytes32-
  350. :IGovernor-castVote: pass:normal[xref:governance.adoc#IGovernor-castVote-uint256-uint8-[`IGovernor.castVote`]]
  351. :xref-IGovernor-castVote-uint256-uint8-: xref:governance.adoc#IGovernor-castVote-uint256-uint8-
  352. :IGovernor-castVoteWithReason: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReason-uint256-uint8-string-[`IGovernor.castVoteWithReason`]]
  353. :xref-IGovernor-castVoteWithReason-uint256-uint8-string-: xref:governance.adoc#IGovernor-castVoteWithReason-uint256-uint8-string-
  354. :IGovernor-castVoteWithReasonAndParams: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`IGovernor.castVoteWithReasonAndParams`]]
  355. :xref-IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-: xref:governance.adoc#IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-
  356. :IGovernor-castVoteBySig: pass:normal[xref:governance.adoc#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`IGovernor.castVoteBySig`]]
  357. :xref-IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-: xref:governance.adoc#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-
  358. :IGovernor-castVoteWithReasonAndParamsBySig: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`IGovernor.castVoteWithReasonAndParamsBySig`]]
  359. :xref-IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-: xref:governance.adoc#IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-
  360. :IGovernor-ProposalCreated: pass:normal[xref:governance.adoc#IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-[`IGovernor.ProposalCreated`]]
  361. :xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-: xref:governance.adoc#IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-
  362. :IGovernor-ProposalCanceled: pass:normal[xref:governance.adoc#IGovernor-ProposalCanceled-uint256-[`IGovernor.ProposalCanceled`]]
  363. :xref-IGovernor-ProposalCanceled-uint256-: xref:governance.adoc#IGovernor-ProposalCanceled-uint256-
  364. :IGovernor-ProposalExecuted: pass:normal[xref:governance.adoc#IGovernor-ProposalExecuted-uint256-[`IGovernor.ProposalExecuted`]]
  365. :xref-IGovernor-ProposalExecuted-uint256-: xref:governance.adoc#IGovernor-ProposalExecuted-uint256-
  366. :IGovernor-VoteCast: pass:normal[xref:governance.adoc#IGovernor-VoteCast-address-uint256-uint8-uint256-string-[`IGovernor.VoteCast`]]
  367. :xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-: xref:governance.adoc#IGovernor-VoteCast-address-uint256-uint8-uint256-string-
  368. :IGovernor-VoteCastWithParams: pass:normal[xref:governance.adoc#IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-[`IGovernor.VoteCastWithParams`]]
  369. :xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-: xref:governance.adoc#IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-
  370. :IGovernor-ProposalState: pass:normal[xref:governance.adoc#IGovernor-ProposalState[`IGovernor.ProposalState`]]
  371. :xref-IGovernor-ProposalState: xref:governance.adoc#IGovernor-ProposalState
  372. :TimelockController: pass:normal[xref:governance.adoc#TimelockController[`TimelockController`]]
  373. :xref-TimelockController: xref:governance.adoc#TimelockController
  374. :TimelockController-onlyRoleOrOpenRole: pass:normal[xref:governance.adoc#TimelockController-onlyRoleOrOpenRole-bytes32-[`TimelockController.onlyRoleOrOpenRole`]]
  375. :xref-TimelockController-onlyRoleOrOpenRole-bytes32-: xref:governance.adoc#TimelockController-onlyRoleOrOpenRole-bytes32-
  376. :TimelockController-TIMELOCK_ADMIN_ROLE: pass:normal[xref:governance.adoc#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32[`TimelockController.TIMELOCK_ADMIN_ROLE`]]
  377. :xref-TimelockController-TIMELOCK_ADMIN_ROLE-bytes32: xref:governance.adoc#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32
  378. :TimelockController-PROPOSER_ROLE: pass:normal[xref:governance.adoc#TimelockController-PROPOSER_ROLE-bytes32[`TimelockController.PROPOSER_ROLE`]]
  379. :xref-TimelockController-PROPOSER_ROLE-bytes32: xref:governance.adoc#TimelockController-PROPOSER_ROLE-bytes32
  380. :TimelockController-EXECUTOR_ROLE: pass:normal[xref:governance.adoc#TimelockController-EXECUTOR_ROLE-bytes32[`TimelockController.EXECUTOR_ROLE`]]
  381. :xref-TimelockController-EXECUTOR_ROLE-bytes32: xref:governance.adoc#TimelockController-EXECUTOR_ROLE-bytes32
  382. :TimelockController-CANCELLER_ROLE: pass:normal[xref:governance.adoc#TimelockController-CANCELLER_ROLE-bytes32[`TimelockController.CANCELLER_ROLE`]]
  383. :xref-TimelockController-CANCELLER_ROLE-bytes32: xref:governance.adoc#TimelockController-CANCELLER_ROLE-bytes32
  384. :TimelockController-_DONE_TIMESTAMP: pass:normal[xref:governance.adoc#TimelockController-_DONE_TIMESTAMP-uint256[`TimelockController._DONE_TIMESTAMP`]]
  385. :xref-TimelockController-_DONE_TIMESTAMP-uint256: xref:governance.adoc#TimelockController-_DONE_TIMESTAMP-uint256
  386. :TimelockController-constructor: pass:normal[xref:governance.adoc#TimelockController-constructor-uint256-address---address---[`TimelockController.constructor`]]
  387. :xref-TimelockController-constructor-uint256-address---address---: xref:governance.adoc#TimelockController-constructor-uint256-address---address---
  388. :TimelockController-receive: pass:normal[xref:governance.adoc#TimelockController-receive--[`TimelockController.receive`]]
  389. :xref-TimelockController-receive--: xref:governance.adoc#TimelockController-receive--
  390. :TimelockController-supportsInterface: pass:normal[xref:governance.adoc#TimelockController-supportsInterface-bytes4-[`TimelockController.supportsInterface`]]
  391. :xref-TimelockController-supportsInterface-bytes4-: xref:governance.adoc#TimelockController-supportsInterface-bytes4-
  392. :TimelockController-isOperation: pass:normal[xref:governance.adoc#TimelockController-isOperation-bytes32-[`TimelockController.isOperation`]]
  393. :xref-TimelockController-isOperation-bytes32-: xref:governance.adoc#TimelockController-isOperation-bytes32-
  394. :TimelockController-isOperationPending: pass:normal[xref:governance.adoc#TimelockController-isOperationPending-bytes32-[`TimelockController.isOperationPending`]]
  395. :xref-TimelockController-isOperationPending-bytes32-: xref:governance.adoc#TimelockController-isOperationPending-bytes32-
  396. :TimelockController-isOperationReady: pass:normal[xref:governance.adoc#TimelockController-isOperationReady-bytes32-[`TimelockController.isOperationReady`]]
  397. :xref-TimelockController-isOperationReady-bytes32-: xref:governance.adoc#TimelockController-isOperationReady-bytes32-
  398. :TimelockController-isOperationDone: pass:normal[xref:governance.adoc#TimelockController-isOperationDone-bytes32-[`TimelockController.isOperationDone`]]
  399. :xref-TimelockController-isOperationDone-bytes32-: xref:governance.adoc#TimelockController-isOperationDone-bytes32-
  400. :TimelockController-getTimestamp: pass:normal[xref:governance.adoc#TimelockController-getTimestamp-bytes32-[`TimelockController.getTimestamp`]]
  401. :xref-TimelockController-getTimestamp-bytes32-: xref:governance.adoc#TimelockController-getTimestamp-bytes32-
  402. :TimelockController-getMinDelay: pass:normal[xref:governance.adoc#TimelockController-getMinDelay--[`TimelockController.getMinDelay`]]
  403. :xref-TimelockController-getMinDelay--: xref:governance.adoc#TimelockController-getMinDelay--
  404. :TimelockController-hashOperation: pass:normal[xref:governance.adoc#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-[`TimelockController.hashOperation`]]
  405. :xref-TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-: xref:governance.adoc#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-
  406. :TimelockController-hashOperationBatch: pass:normal[xref:governance.adoc#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-[`TimelockController.hashOperationBatch`]]
  407. :xref-TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-: xref:governance.adoc#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-
  408. :TimelockController-schedule: pass:normal[xref:governance.adoc#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-[`TimelockController.schedule`]]
  409. :xref-TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-: xref:governance.adoc#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-
  410. :TimelockController-scheduleBatch: pass:normal[xref:governance.adoc#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-[`TimelockController.scheduleBatch`]]
  411. :xref-TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-: xref:governance.adoc#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-
  412. :TimelockController-cancel: pass:normal[xref:governance.adoc#TimelockController-cancel-bytes32-[`TimelockController.cancel`]]
  413. :xref-TimelockController-cancel-bytes32-: xref:governance.adoc#TimelockController-cancel-bytes32-
  414. :TimelockController-execute: pass:normal[xref:governance.adoc#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-[`TimelockController.execute`]]
  415. :xref-TimelockController-execute-address-uint256-bytes-bytes32-bytes32-: xref:governance.adoc#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-
  416. :TimelockController-executeBatch: pass:normal[xref:governance.adoc#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-[`TimelockController.executeBatch`]]
  417. :xref-TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-: xref:governance.adoc#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-
  418. :TimelockController-_execute: pass:normal[xref:governance.adoc#TimelockController-_execute-address-uint256-bytes-[`TimelockController._execute`]]
  419. :xref-TimelockController-_execute-address-uint256-bytes-: xref:governance.adoc#TimelockController-_execute-address-uint256-bytes-
  420. :TimelockController-updateDelay: pass:normal[xref:governance.adoc#TimelockController-updateDelay-uint256-[`TimelockController.updateDelay`]]
  421. :xref-TimelockController-updateDelay-uint256-: xref:governance.adoc#TimelockController-updateDelay-uint256-
  422. :TimelockController-onERC721Received: pass:normal[xref:governance.adoc#TimelockController-onERC721Received-address-address-uint256-bytes-[`TimelockController.onERC721Received`]]
  423. :xref-TimelockController-onERC721Received-address-address-uint256-bytes-: xref:governance.adoc#TimelockController-onERC721Received-address-address-uint256-bytes-
  424. :TimelockController-onERC1155Received: pass:normal[xref:governance.adoc#TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-[`TimelockController.onERC1155Received`]]
  425. :xref-TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-: xref:governance.adoc#TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-
  426. :TimelockController-onERC1155BatchReceived: pass:normal[xref:governance.adoc#TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`TimelockController.onERC1155BatchReceived`]]
  427. :xref-TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:governance.adoc#TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  428. :TimelockController-CallScheduled: pass:normal[xref:governance.adoc#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-[`TimelockController.CallScheduled`]]
  429. :xref-TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-: xref:governance.adoc#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-
  430. :TimelockController-CallExecuted: pass:normal[xref:governance.adoc#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-[`TimelockController.CallExecuted`]]
  431. :xref-TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-: xref:governance.adoc#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-
  432. :TimelockController-Cancelled: pass:normal[xref:governance.adoc#TimelockController-Cancelled-bytes32-[`TimelockController.Cancelled`]]
  433. :xref-TimelockController-Cancelled-bytes32-: xref:governance.adoc#TimelockController-Cancelled-bytes32-
  434. :TimelockController-MinDelayChange: pass:normal[xref:governance.adoc#TimelockController-MinDelayChange-uint256-uint256-[`TimelockController.MinDelayChange`]]
  435. :xref-TimelockController-MinDelayChange-uint256-uint256-: xref:governance.adoc#TimelockController-MinDelayChange-uint256-uint256-
  436. :GovernorCompatibilityBravo: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo[`GovernorCompatibilityBravo`]]
  437. :xref-GovernorCompatibilityBravo: xref:governance.adoc#GovernorCompatibilityBravo
  438. :GovernorCompatibilityBravo-COUNTING_MODE: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-COUNTING_MODE--[`GovernorCompatibilityBravo.COUNTING_MODE`]]
  439. :xref-GovernorCompatibilityBravo-COUNTING_MODE--: xref:governance.adoc#GovernorCompatibilityBravo-COUNTING_MODE--
  440. :GovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-[`GovernorCompatibilityBravo.propose`]]
  441. :xref-GovernorCompatibilityBravo-propose-address---uint256---bytes---string-: xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-
  442. :GovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`GovernorCompatibilityBravo.propose`]]
  443. :xref-GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-: xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-
  444. :GovernorCompatibilityBravo-queue: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-queue-uint256-[`GovernorCompatibilityBravo.queue`]]
  445. :xref-GovernorCompatibilityBravo-queue-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-queue-uint256-
  446. :GovernorCompatibilityBravo-execute: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-execute-uint256-[`GovernorCompatibilityBravo.execute`]]
  447. :xref-GovernorCompatibilityBravo-execute-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-execute-uint256-
  448. :GovernorCompatibilityBravo-cancel: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-cancel-uint256-[`GovernorCompatibilityBravo.cancel`]]
  449. :xref-GovernorCompatibilityBravo-cancel-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-cancel-uint256-
  450. :GovernorCompatibilityBravo-proposals: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-proposals-uint256-[`GovernorCompatibilityBravo.proposals`]]
  451. :xref-GovernorCompatibilityBravo-proposals-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-proposals-uint256-
  452. :GovernorCompatibilityBravo-getActions: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-getActions-uint256-[`GovernorCompatibilityBravo.getActions`]]
  453. :xref-GovernorCompatibilityBravo-getActions-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-getActions-uint256-
  454. :GovernorCompatibilityBravo-getReceipt: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-getReceipt-uint256-address-[`GovernorCompatibilityBravo.getReceipt`]]
  455. :xref-GovernorCompatibilityBravo-getReceipt-uint256-address-: xref:governance.adoc#GovernorCompatibilityBravo-getReceipt-uint256-address-
  456. :GovernorCompatibilityBravo-quorumVotes: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-quorumVotes--[`GovernorCompatibilityBravo.quorumVotes`]]
  457. :xref-GovernorCompatibilityBravo-quorumVotes--: xref:governance.adoc#GovernorCompatibilityBravo-quorumVotes--
  458. :GovernorCompatibilityBravo-hasVoted: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-hasVoted-uint256-address-[`GovernorCompatibilityBravo.hasVoted`]]
  459. :xref-GovernorCompatibilityBravo-hasVoted-uint256-address-: xref:governance.adoc#GovernorCompatibilityBravo-hasVoted-uint256-address-
  460. :GovernorCompatibilityBravo-_quorumReached: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_quorumReached-uint256-[`GovernorCompatibilityBravo._quorumReached`]]
  461. :xref-GovernorCompatibilityBravo-_quorumReached-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-_quorumReached-uint256-
  462. :GovernorCompatibilityBravo-_voteSucceeded: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_voteSucceeded-uint256-[`GovernorCompatibilityBravo._voteSucceeded`]]
  463. :xref-GovernorCompatibilityBravo-_voteSucceeded-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-_voteSucceeded-uint256-
  464. :GovernorCompatibilityBravo-_countVote: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-[`GovernorCompatibilityBravo._countVote`]]
  465. :xref-GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-: xref:governance.adoc#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-
  466. :GovernorCompatibilityBravo-ProposalDetails: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-ProposalDetails[`GovernorCompatibilityBravo.ProposalDetails`]]
  467. :xref-GovernorCompatibilityBravo-ProposalDetails: xref:governance.adoc#GovernorCompatibilityBravo-ProposalDetails
  468. :GovernorCompatibilityBravo-VoteType: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-VoteType[`GovernorCompatibilityBravo.VoteType`]]
  469. :xref-GovernorCompatibilityBravo-VoteType: xref:governance.adoc#GovernorCompatibilityBravo-VoteType
  470. :IGovernorCompatibilityBravo: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo[`IGovernorCompatibilityBravo`]]
  471. :xref-IGovernorCompatibilityBravo: xref:governance.adoc#IGovernorCompatibilityBravo
  472. :IGovernorCompatibilityBravo-quorumVotes: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-quorumVotes--[`IGovernorCompatibilityBravo.quorumVotes`]]
  473. :xref-IGovernorCompatibilityBravo-quorumVotes--: xref:governance.adoc#IGovernorCompatibilityBravo-quorumVotes--
  474. :IGovernorCompatibilityBravo-proposals: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-proposals-uint256-[`IGovernorCompatibilityBravo.proposals`]]
  475. :xref-IGovernorCompatibilityBravo-proposals-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-proposals-uint256-
  476. :IGovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`IGovernorCompatibilityBravo.propose`]]
  477. :xref-IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-: xref:governance.adoc#IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-
  478. :IGovernorCompatibilityBravo-queue: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-queue-uint256-[`IGovernorCompatibilityBravo.queue`]]
  479. :xref-IGovernorCompatibilityBravo-queue-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-queue-uint256-
  480. :IGovernorCompatibilityBravo-execute: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-execute-uint256-[`IGovernorCompatibilityBravo.execute`]]
  481. :xref-IGovernorCompatibilityBravo-execute-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-execute-uint256-
  482. :IGovernorCompatibilityBravo-cancel: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-cancel-uint256-[`IGovernorCompatibilityBravo.cancel`]]
  483. :xref-IGovernorCompatibilityBravo-cancel-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-cancel-uint256-
  484. :IGovernorCompatibilityBravo-getActions: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-getActions-uint256-[`IGovernorCompatibilityBravo.getActions`]]
  485. :xref-IGovernorCompatibilityBravo-getActions-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-getActions-uint256-
  486. :IGovernorCompatibilityBravo-getReceipt: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-getReceipt-uint256-address-[`IGovernorCompatibilityBravo.getReceipt`]]
  487. :xref-IGovernorCompatibilityBravo-getReceipt-uint256-address-: xref:governance.adoc#IGovernorCompatibilityBravo-getReceipt-uint256-address-
  488. :IGovernorCompatibilityBravo-Proposal: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-Proposal[`IGovernorCompatibilityBravo.Proposal`]]
  489. :xref-IGovernorCompatibilityBravo-Proposal: xref:governance.adoc#IGovernorCompatibilityBravo-Proposal
  490. :IGovernorCompatibilityBravo-Receipt: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-Receipt[`IGovernorCompatibilityBravo.Receipt`]]
  491. :xref-IGovernorCompatibilityBravo-Receipt: xref:governance.adoc#IGovernorCompatibilityBravo-Receipt
  492. :GovernorCountingSimple: pass:normal[xref:governance.adoc#GovernorCountingSimple[`GovernorCountingSimple`]]
  493. :xref-GovernorCountingSimple: xref:governance.adoc#GovernorCountingSimple
  494. :GovernorCountingSimple-COUNTING_MODE: pass:normal[xref:governance.adoc#GovernorCountingSimple-COUNTING_MODE--[`GovernorCountingSimple.COUNTING_MODE`]]
  495. :xref-GovernorCountingSimple-COUNTING_MODE--: xref:governance.adoc#GovernorCountingSimple-COUNTING_MODE--
  496. :GovernorCountingSimple-hasVoted: pass:normal[xref:governance.adoc#GovernorCountingSimple-hasVoted-uint256-address-[`GovernorCountingSimple.hasVoted`]]
  497. :xref-GovernorCountingSimple-hasVoted-uint256-address-: xref:governance.adoc#GovernorCountingSimple-hasVoted-uint256-address-
  498. :GovernorCountingSimple-proposalVotes: pass:normal[xref:governance.adoc#GovernorCountingSimple-proposalVotes-uint256-[`GovernorCountingSimple.proposalVotes`]]
  499. :xref-GovernorCountingSimple-proposalVotes-uint256-: xref:governance.adoc#GovernorCountingSimple-proposalVotes-uint256-
  500. :GovernorCountingSimple-_quorumReached: pass:normal[xref:governance.adoc#GovernorCountingSimple-_quorumReached-uint256-[`GovernorCountingSimple._quorumReached`]]
  501. :xref-GovernorCountingSimple-_quorumReached-uint256-: xref:governance.adoc#GovernorCountingSimple-_quorumReached-uint256-
  502. :GovernorCountingSimple-_voteSucceeded: pass:normal[xref:governance.adoc#GovernorCountingSimple-_voteSucceeded-uint256-[`GovernorCountingSimple._voteSucceeded`]]
  503. :xref-GovernorCountingSimple-_voteSucceeded-uint256-: xref:governance.adoc#GovernorCountingSimple-_voteSucceeded-uint256-
  504. :GovernorCountingSimple-_countVote: pass:normal[xref:governance.adoc#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-[`GovernorCountingSimple._countVote`]]
  505. :xref-GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-: xref:governance.adoc#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-
  506. :GovernorCountingSimple-ProposalVote: pass:normal[xref:governance.adoc#GovernorCountingSimple-ProposalVote[`GovernorCountingSimple.ProposalVote`]]
  507. :xref-GovernorCountingSimple-ProposalVote: xref:governance.adoc#GovernorCountingSimple-ProposalVote
  508. :GovernorCountingSimple-VoteType: pass:normal[xref:governance.adoc#GovernorCountingSimple-VoteType[`GovernorCountingSimple.VoteType`]]
  509. :xref-GovernorCountingSimple-VoteType: xref:governance.adoc#GovernorCountingSimple-VoteType
  510. :GovernorPreventLateQuorum: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum[`GovernorPreventLateQuorum`]]
  511. :xref-GovernorPreventLateQuorum: xref:governance.adoc#GovernorPreventLateQuorum
  512. :GovernorPreventLateQuorum-constructor: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-constructor-uint64-[`GovernorPreventLateQuorum.constructor`]]
  513. :xref-GovernorPreventLateQuorum-constructor-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-constructor-uint64-
  514. :GovernorPreventLateQuorum-proposalDeadline: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-proposalDeadline-uint256-[`GovernorPreventLateQuorum.proposalDeadline`]]
  515. :xref-GovernorPreventLateQuorum-proposalDeadline-uint256-: xref:governance.adoc#GovernorPreventLateQuorum-proposalDeadline-uint256-
  516. :GovernorPreventLateQuorum-_castVote: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-[`GovernorPreventLateQuorum._castVote`]]
  517. :xref-GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-: xref:governance.adoc#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-
  518. :GovernorPreventLateQuorum-lateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-lateQuorumVoteExtension--[`GovernorPreventLateQuorum.lateQuorumVoteExtension`]]
  519. :xref-GovernorPreventLateQuorum-lateQuorumVoteExtension--: xref:governance.adoc#GovernorPreventLateQuorum-lateQuorumVoteExtension--
  520. :GovernorPreventLateQuorum-setLateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-[`GovernorPreventLateQuorum.setLateQuorumVoteExtension`]]
  521. :xref-GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-
  522. :GovernorPreventLateQuorum-_setLateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-[`GovernorPreventLateQuorum._setLateQuorumVoteExtension`]]
  523. :xref-GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-
  524. :GovernorPreventLateQuorum-ProposalExtended: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-[`GovernorPreventLateQuorum.ProposalExtended`]]
  525. :xref-GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-
  526. :GovernorPreventLateQuorum-LateQuorumVoteExtensionSet: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-[`GovernorPreventLateQuorum.LateQuorumVoteExtensionSet`]]
  527. :xref-GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-
  528. :GovernorProposalThreshold: pass:normal[xref:governance.adoc#GovernorProposalThreshold[`GovernorProposalThreshold`]]
  529. :xref-GovernorProposalThreshold: xref:governance.adoc#GovernorProposalThreshold
  530. :GovernorProposalThreshold-propose: pass:normal[xref:governance.adoc#GovernorProposalThreshold-propose-address---uint256---bytes---string-[`GovernorProposalThreshold.propose`]]
  531. :xref-GovernorProposalThreshold-propose-address---uint256---bytes---string-: xref:governance.adoc#GovernorProposalThreshold-propose-address---uint256---bytes---string-
  532. :GovernorSettings: pass:normal[xref:governance.adoc#GovernorSettings[`GovernorSettings`]]
  533. :xref-GovernorSettings: xref:governance.adoc#GovernorSettings
  534. :GovernorSettings-constructor: pass:normal[xref:governance.adoc#GovernorSettings-constructor-uint256-uint256-uint256-[`GovernorSettings.constructor`]]
  535. :xref-GovernorSettings-constructor-uint256-uint256-uint256-: xref:governance.adoc#GovernorSettings-constructor-uint256-uint256-uint256-
  536. :GovernorSettings-votingDelay: pass:normal[xref:governance.adoc#GovernorSettings-votingDelay--[`GovernorSettings.votingDelay`]]
  537. :xref-GovernorSettings-votingDelay--: xref:governance.adoc#GovernorSettings-votingDelay--
  538. :GovernorSettings-votingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-votingPeriod--[`GovernorSettings.votingPeriod`]]
  539. :xref-GovernorSettings-votingPeriod--: xref:governance.adoc#GovernorSettings-votingPeriod--
  540. :GovernorSettings-proposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-proposalThreshold--[`GovernorSettings.proposalThreshold`]]
  541. :xref-GovernorSettings-proposalThreshold--: xref:governance.adoc#GovernorSettings-proposalThreshold--
  542. :GovernorSettings-setVotingDelay: pass:normal[xref:governance.adoc#GovernorSettings-setVotingDelay-uint256-[`GovernorSettings.setVotingDelay`]]
  543. :xref-GovernorSettings-setVotingDelay-uint256-: xref:governance.adoc#GovernorSettings-setVotingDelay-uint256-
  544. :GovernorSettings-setVotingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-setVotingPeriod-uint256-[`GovernorSettings.setVotingPeriod`]]
  545. :xref-GovernorSettings-setVotingPeriod-uint256-: xref:governance.adoc#GovernorSettings-setVotingPeriod-uint256-
  546. :GovernorSettings-setProposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-setProposalThreshold-uint256-[`GovernorSettings.setProposalThreshold`]]
  547. :xref-GovernorSettings-setProposalThreshold-uint256-: xref:governance.adoc#GovernorSettings-setProposalThreshold-uint256-
  548. :GovernorSettings-_setVotingDelay: pass:normal[xref:governance.adoc#GovernorSettings-_setVotingDelay-uint256-[`GovernorSettings._setVotingDelay`]]
  549. :xref-GovernorSettings-_setVotingDelay-uint256-: xref:governance.adoc#GovernorSettings-_setVotingDelay-uint256-
  550. :GovernorSettings-_setVotingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-_setVotingPeriod-uint256-[`GovernorSettings._setVotingPeriod`]]
  551. :xref-GovernorSettings-_setVotingPeriod-uint256-: xref:governance.adoc#GovernorSettings-_setVotingPeriod-uint256-
  552. :GovernorSettings-_setProposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-_setProposalThreshold-uint256-[`GovernorSettings._setProposalThreshold`]]
  553. :xref-GovernorSettings-_setProposalThreshold-uint256-: xref:governance.adoc#GovernorSettings-_setProposalThreshold-uint256-
  554. :GovernorSettings-VotingDelaySet: pass:normal[xref:governance.adoc#GovernorSettings-VotingDelaySet-uint256-uint256-[`GovernorSettings.VotingDelaySet`]]
  555. :xref-GovernorSettings-VotingDelaySet-uint256-uint256-: xref:governance.adoc#GovernorSettings-VotingDelaySet-uint256-uint256-
  556. :GovernorSettings-VotingPeriodSet: pass:normal[xref:governance.adoc#GovernorSettings-VotingPeriodSet-uint256-uint256-[`GovernorSettings.VotingPeriodSet`]]
  557. :xref-GovernorSettings-VotingPeriodSet-uint256-uint256-: xref:governance.adoc#GovernorSettings-VotingPeriodSet-uint256-uint256-
  558. :GovernorSettings-ProposalThresholdSet: pass:normal[xref:governance.adoc#GovernorSettings-ProposalThresholdSet-uint256-uint256-[`GovernorSettings.ProposalThresholdSet`]]
  559. :xref-GovernorSettings-ProposalThresholdSet-uint256-uint256-: xref:governance.adoc#GovernorSettings-ProposalThresholdSet-uint256-uint256-
  560. :GovernorTimelockCompound: pass:normal[xref:governance.adoc#GovernorTimelockCompound[`GovernorTimelockCompound`]]
  561. :xref-GovernorTimelockCompound: xref:governance.adoc#GovernorTimelockCompound
  562. :GovernorTimelockCompound-constructor: pass:normal[xref:governance.adoc#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-[`GovernorTimelockCompound.constructor`]]
  563. :xref-GovernorTimelockCompound-constructor-contract-ICompoundTimelock-: xref:governance.adoc#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-
  564. :GovernorTimelockCompound-supportsInterface: pass:normal[xref:governance.adoc#GovernorTimelockCompound-supportsInterface-bytes4-[`GovernorTimelockCompound.supportsInterface`]]
  565. :xref-GovernorTimelockCompound-supportsInterface-bytes4-: xref:governance.adoc#GovernorTimelockCompound-supportsInterface-bytes4-
  566. :GovernorTimelockCompound-state: pass:normal[xref:governance.adoc#GovernorTimelockCompound-state-uint256-[`GovernorTimelockCompound.state`]]
  567. :xref-GovernorTimelockCompound-state-uint256-: xref:governance.adoc#GovernorTimelockCompound-state-uint256-
  568. :GovernorTimelockCompound-timelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-timelock--[`GovernorTimelockCompound.timelock`]]
  569. :xref-GovernorTimelockCompound-timelock--: xref:governance.adoc#GovernorTimelockCompound-timelock--
  570. :GovernorTimelockCompound-proposalEta: pass:normal[xref:governance.adoc#GovernorTimelockCompound-proposalEta-uint256-[`GovernorTimelockCompound.proposalEta`]]
  571. :xref-GovernorTimelockCompound-proposalEta-uint256-: xref:governance.adoc#GovernorTimelockCompound-proposalEta-uint256-
  572. :GovernorTimelockCompound-queue: pass:normal[xref:governance.adoc#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-[`GovernorTimelockCompound.queue`]]
  573. :xref-GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-
  574. :GovernorTimelockCompound-_execute: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-[`GovernorTimelockCompound._execute`]]
  575. :xref-GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-
  576. :GovernorTimelockCompound-_cancel: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-[`GovernorTimelockCompound._cancel`]]
  577. :xref-GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-
  578. :GovernorTimelockCompound-_executor: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_executor--[`GovernorTimelockCompound._executor`]]
  579. :xref-GovernorTimelockCompound-_executor--: xref:governance.adoc#GovernorTimelockCompound-_executor--
  580. :GovernorTimelockCompound-__acceptAdmin: pass:normal[xref:governance.adoc#GovernorTimelockCompound-__acceptAdmin--[`GovernorTimelockCompound.__acceptAdmin`]]
  581. :xref-GovernorTimelockCompound-__acceptAdmin--: xref:governance.adoc#GovernorTimelockCompound-__acceptAdmin--
  582. :GovernorTimelockCompound-updateTimelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-[`GovernorTimelockCompound.updateTimelock`]]
  583. :xref-GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-: xref:governance.adoc#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-
  584. :GovernorTimelockCompound-TimelockChange: pass:normal[xref:governance.adoc#GovernorTimelockCompound-TimelockChange-address-address-[`GovernorTimelockCompound.TimelockChange`]]
  585. :xref-GovernorTimelockCompound-TimelockChange-address-address-: xref:governance.adoc#GovernorTimelockCompound-TimelockChange-address-address-
  586. :GovernorTimelockCompound-ProposalTimelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-ProposalTimelock[`GovernorTimelockCompound.ProposalTimelock`]]
  587. :xref-GovernorTimelockCompound-ProposalTimelock: xref:governance.adoc#GovernorTimelockCompound-ProposalTimelock
  588. :GovernorTimelockControl: pass:normal[xref:governance.adoc#GovernorTimelockControl[`GovernorTimelockControl`]]
  589. :xref-GovernorTimelockControl: xref:governance.adoc#GovernorTimelockControl
  590. :GovernorTimelockControl-constructor: pass:normal[xref:governance.adoc#GovernorTimelockControl-constructor-contract-TimelockController-[`GovernorTimelockControl.constructor`]]
  591. :xref-GovernorTimelockControl-constructor-contract-TimelockController-: xref:governance.adoc#GovernorTimelockControl-constructor-contract-TimelockController-
  592. :GovernorTimelockControl-supportsInterface: pass:normal[xref:governance.adoc#GovernorTimelockControl-supportsInterface-bytes4-[`GovernorTimelockControl.supportsInterface`]]
  593. :xref-GovernorTimelockControl-supportsInterface-bytes4-: xref:governance.adoc#GovernorTimelockControl-supportsInterface-bytes4-
  594. :GovernorTimelockControl-state: pass:normal[xref:governance.adoc#GovernorTimelockControl-state-uint256-[`GovernorTimelockControl.state`]]
  595. :xref-GovernorTimelockControl-state-uint256-: xref:governance.adoc#GovernorTimelockControl-state-uint256-
  596. :GovernorTimelockControl-timelock: pass:normal[xref:governance.adoc#GovernorTimelockControl-timelock--[`GovernorTimelockControl.timelock`]]
  597. :xref-GovernorTimelockControl-timelock--: xref:governance.adoc#GovernorTimelockControl-timelock--
  598. :GovernorTimelockControl-proposalEta: pass:normal[xref:governance.adoc#GovernorTimelockControl-proposalEta-uint256-[`GovernorTimelockControl.proposalEta`]]
  599. :xref-GovernorTimelockControl-proposalEta-uint256-: xref:governance.adoc#GovernorTimelockControl-proposalEta-uint256-
  600. :GovernorTimelockControl-queue: pass:normal[xref:governance.adoc#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-[`GovernorTimelockControl.queue`]]
  601. :xref-GovernorTimelockControl-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-
  602. :GovernorTimelockControl-_execute: pass:normal[xref:governance.adoc#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-[`GovernorTimelockControl._execute`]]
  603. :xref-GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-
  604. :GovernorTimelockControl-_cancel: pass:normal[xref:governance.adoc#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-[`GovernorTimelockControl._cancel`]]
  605. :xref-GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-
  606. :GovernorTimelockControl-_executor: pass:normal[xref:governance.adoc#GovernorTimelockControl-_executor--[`GovernorTimelockControl._executor`]]
  607. :xref-GovernorTimelockControl-_executor--: xref:governance.adoc#GovernorTimelockControl-_executor--
  608. :GovernorTimelockControl-updateTimelock: pass:normal[xref:governance.adoc#GovernorTimelockControl-updateTimelock-contract-TimelockController-[`GovernorTimelockControl.updateTimelock`]]
  609. :xref-GovernorTimelockControl-updateTimelock-contract-TimelockController-: xref:governance.adoc#GovernorTimelockControl-updateTimelock-contract-TimelockController-
  610. :GovernorTimelockControl-TimelockChange: pass:normal[xref:governance.adoc#GovernorTimelockControl-TimelockChange-address-address-[`GovernorTimelockControl.TimelockChange`]]
  611. :xref-GovernorTimelockControl-TimelockChange-address-address-: xref:governance.adoc#GovernorTimelockControl-TimelockChange-address-address-
  612. :GovernorVotes: pass:normal[xref:governance.adoc#GovernorVotes[`GovernorVotes`]]
  613. :xref-GovernorVotes: xref:governance.adoc#GovernorVotes
  614. :GovernorVotes-token: pass:normal[xref:governance.adoc#GovernorVotes-token-contract-IVotes[`GovernorVotes.token`]]
  615. :xref-GovernorVotes-token-contract-IVotes: xref:governance.adoc#GovernorVotes-token-contract-IVotes
  616. :GovernorVotes-constructor: pass:normal[xref:governance.adoc#GovernorVotes-constructor-contract-IVotes-[`GovernorVotes.constructor`]]
  617. :xref-GovernorVotes-constructor-contract-IVotes-: xref:governance.adoc#GovernorVotes-constructor-contract-IVotes-
  618. :GovernorVotes-_getVotes: pass:normal[xref:governance.adoc#GovernorVotes-_getVotes-address-uint256-bytes-[`GovernorVotes._getVotes`]]
  619. :xref-GovernorVotes-_getVotes-address-uint256-bytes-: xref:governance.adoc#GovernorVotes-_getVotes-address-uint256-bytes-
  620. :GovernorVotesComp: pass:normal[xref:governance.adoc#GovernorVotesComp[`GovernorVotesComp`]]
  621. :xref-GovernorVotesComp: xref:governance.adoc#GovernorVotesComp
  622. :GovernorVotesComp-token: pass:normal[xref:governance.adoc#GovernorVotesComp-token-contract-ERC20VotesComp[`GovernorVotesComp.token`]]
  623. :xref-GovernorVotesComp-token-contract-ERC20VotesComp: xref:governance.adoc#GovernorVotesComp-token-contract-ERC20VotesComp
  624. :GovernorVotesComp-constructor: pass:normal[xref:governance.adoc#GovernorVotesComp-constructor-contract-ERC20VotesComp-[`GovernorVotesComp.constructor`]]
  625. :xref-GovernorVotesComp-constructor-contract-ERC20VotesComp-: xref:governance.adoc#GovernorVotesComp-constructor-contract-ERC20VotesComp-
  626. :GovernorVotesComp-_getVotes: pass:normal[xref:governance.adoc#GovernorVotesComp-_getVotes-address-uint256-bytes-[`GovernorVotesComp._getVotes`]]
  627. :xref-GovernorVotesComp-_getVotes-address-uint256-bytes-: xref:governance.adoc#GovernorVotesComp-_getVotes-address-uint256-bytes-
  628. :GovernorVotesQuorumFraction: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction[`GovernorVotesQuorumFraction`]]
  629. :xref-GovernorVotesQuorumFraction: xref:governance.adoc#GovernorVotesQuorumFraction
  630. :GovernorVotesQuorumFraction-constructor: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-constructor-uint256-[`GovernorVotesQuorumFraction.constructor`]]
  631. :xref-GovernorVotesQuorumFraction-constructor-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-constructor-uint256-
  632. :GovernorVotesQuorumFraction-quorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator--[`GovernorVotesQuorumFraction.quorumNumerator`]]
  633. :xref-GovernorVotesQuorumFraction-quorumNumerator--: xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator--
  634. :GovernorVotesQuorumFraction-quorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator-uint256-[`GovernorVotesQuorumFraction.quorumNumerator`]]
  635. :xref-GovernorVotesQuorumFraction-quorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator-uint256-
  636. :GovernorVotesQuorumFraction-quorumDenominator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumDenominator--[`GovernorVotesQuorumFraction.quorumDenominator`]]
  637. :xref-GovernorVotesQuorumFraction-quorumDenominator--: xref:governance.adoc#GovernorVotesQuorumFraction-quorumDenominator--
  638. :GovernorVotesQuorumFraction-quorum: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorum-uint256-[`GovernorVotesQuorumFraction.quorum`]]
  639. :xref-GovernorVotesQuorumFraction-quorum-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-quorum-uint256-
  640. :GovernorVotesQuorumFraction-updateQuorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-[`GovernorVotesQuorumFraction.updateQuorumNumerator`]]
  641. :xref-GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-
  642. :GovernorVotesQuorumFraction-_updateQuorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-[`GovernorVotesQuorumFraction._updateQuorumNumerator`]]
  643. :xref-GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-
  644. :GovernorVotesQuorumFraction-QuorumNumeratorUpdated: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-[`GovernorVotesQuorumFraction.QuorumNumeratorUpdated`]]
  645. :xref-GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-
  646. :IGovernorTimelock: pass:normal[xref:governance.adoc#IGovernorTimelock[`IGovernorTimelock`]]
  647. :xref-IGovernorTimelock: xref:governance.adoc#IGovernorTimelock
  648. :IGovernorTimelock-timelock: pass:normal[xref:governance.adoc#IGovernorTimelock-timelock--[`IGovernorTimelock.timelock`]]
  649. :xref-IGovernorTimelock-timelock--: xref:governance.adoc#IGovernorTimelock-timelock--
  650. :IGovernorTimelock-proposalEta: pass:normal[xref:governance.adoc#IGovernorTimelock-proposalEta-uint256-[`IGovernorTimelock.proposalEta`]]
  651. :xref-IGovernorTimelock-proposalEta-uint256-: xref:governance.adoc#IGovernorTimelock-proposalEta-uint256-
  652. :IGovernorTimelock-queue: pass:normal[xref:governance.adoc#IGovernorTimelock-queue-address---uint256---bytes---bytes32-[`IGovernorTimelock.queue`]]
  653. :xref-IGovernorTimelock-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernorTimelock-queue-address---uint256---bytes---bytes32-
  654. :IGovernorTimelock-ProposalQueued: pass:normal[xref:governance.adoc#IGovernorTimelock-ProposalQueued-uint256-uint256-[`IGovernorTimelock.ProposalQueued`]]
  655. :xref-IGovernorTimelock-ProposalQueued-uint256-uint256-: xref:governance.adoc#IGovernorTimelock-ProposalQueued-uint256-uint256-
  656. :IVotes: pass:normal[xref:governance.adoc#IVotes[`IVotes`]]
  657. :xref-IVotes: xref:governance.adoc#IVotes
  658. :IVotes-getVotes: pass:normal[xref:governance.adoc#IVotes-getVotes-address-[`IVotes.getVotes`]]
  659. :xref-IVotes-getVotes-address-: xref:governance.adoc#IVotes-getVotes-address-
  660. :IVotes-getPastVotes: pass:normal[xref:governance.adoc#IVotes-getPastVotes-address-uint256-[`IVotes.getPastVotes`]]
  661. :xref-IVotes-getPastVotes-address-uint256-: xref:governance.adoc#IVotes-getPastVotes-address-uint256-
  662. :IVotes-getPastTotalSupply: pass:normal[xref:governance.adoc#IVotes-getPastTotalSupply-uint256-[`IVotes.getPastTotalSupply`]]
  663. :xref-IVotes-getPastTotalSupply-uint256-: xref:governance.adoc#IVotes-getPastTotalSupply-uint256-
  664. :IVotes-delegates: pass:normal[xref:governance.adoc#IVotes-delegates-address-[`IVotes.delegates`]]
  665. :xref-IVotes-delegates-address-: xref:governance.adoc#IVotes-delegates-address-
  666. :IVotes-delegate: pass:normal[xref:governance.adoc#IVotes-delegate-address-[`IVotes.delegate`]]
  667. :xref-IVotes-delegate-address-: xref:governance.adoc#IVotes-delegate-address-
  668. :IVotes-delegateBySig: pass:normal[xref:governance.adoc#IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`IVotes.delegateBySig`]]
  669. :xref-IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:governance.adoc#IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  670. :IVotes-DelegateChanged: pass:normal[xref:governance.adoc#IVotes-DelegateChanged-address-address-address-[`IVotes.DelegateChanged`]]
  671. :xref-IVotes-DelegateChanged-address-address-address-: xref:governance.adoc#IVotes-DelegateChanged-address-address-address-
  672. :IVotes-DelegateVotesChanged: pass:normal[xref:governance.adoc#IVotes-DelegateVotesChanged-address-uint256-uint256-[`IVotes.DelegateVotesChanged`]]
  673. :xref-IVotes-DelegateVotesChanged-address-uint256-uint256-: xref:governance.adoc#IVotes-DelegateVotesChanged-address-uint256-uint256-
  674. :Votes: pass:normal[xref:governance.adoc#Votes[`Votes`]]
  675. :xref-Votes: xref:governance.adoc#Votes
  676. :Votes-getVotes: pass:normal[xref:governance.adoc#Votes-getVotes-address-[`Votes.getVotes`]]
  677. :xref-Votes-getVotes-address-: xref:governance.adoc#Votes-getVotes-address-
  678. :Votes-getPastVotes: pass:normal[xref:governance.adoc#Votes-getPastVotes-address-uint256-[`Votes.getPastVotes`]]
  679. :xref-Votes-getPastVotes-address-uint256-: xref:governance.adoc#Votes-getPastVotes-address-uint256-
  680. :Votes-getPastTotalSupply: pass:normal[xref:governance.adoc#Votes-getPastTotalSupply-uint256-[`Votes.getPastTotalSupply`]]
  681. :xref-Votes-getPastTotalSupply-uint256-: xref:governance.adoc#Votes-getPastTotalSupply-uint256-
  682. :Votes-_getTotalSupply: pass:normal[xref:governance.adoc#Votes-_getTotalSupply--[`Votes._getTotalSupply`]]
  683. :xref-Votes-_getTotalSupply--: xref:governance.adoc#Votes-_getTotalSupply--
  684. :Votes-delegates: pass:normal[xref:governance.adoc#Votes-delegates-address-[`Votes.delegates`]]
  685. :xref-Votes-delegates-address-: xref:governance.adoc#Votes-delegates-address-
  686. :Votes-delegate: pass:normal[xref:governance.adoc#Votes-delegate-address-[`Votes.delegate`]]
  687. :xref-Votes-delegate-address-: xref:governance.adoc#Votes-delegate-address-
  688. :Votes-delegateBySig: pass:normal[xref:governance.adoc#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`Votes.delegateBySig`]]
  689. :xref-Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:governance.adoc#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  690. :Votes-_delegate: pass:normal[xref:governance.adoc#Votes-_delegate-address-address-[`Votes._delegate`]]
  691. :xref-Votes-_delegate-address-address-: xref:governance.adoc#Votes-_delegate-address-address-
  692. :Votes-_transferVotingUnits: pass:normal[xref:governance.adoc#Votes-_transferVotingUnits-address-address-uint256-[`Votes._transferVotingUnits`]]
  693. :xref-Votes-_transferVotingUnits-address-address-uint256-: xref:governance.adoc#Votes-_transferVotingUnits-address-address-uint256-
  694. :Votes-_useNonce: pass:normal[xref:governance.adoc#Votes-_useNonce-address-[`Votes._useNonce`]]
  695. :xref-Votes-_useNonce-address-: xref:governance.adoc#Votes-_useNonce-address-
  696. :Votes-nonces: pass:normal[xref:governance.adoc#Votes-nonces-address-[`Votes.nonces`]]
  697. :xref-Votes-nonces-address-: xref:governance.adoc#Votes-nonces-address-
  698. :Votes-DOMAIN_SEPARATOR: pass:normal[xref:governance.adoc#Votes-DOMAIN_SEPARATOR--[`Votes.DOMAIN_SEPARATOR`]]
  699. :xref-Votes-DOMAIN_SEPARATOR--: xref:governance.adoc#Votes-DOMAIN_SEPARATOR--
  700. :Votes-_getVotingUnits: pass:normal[xref:governance.adoc#Votes-_getVotingUnits-address-[`Votes._getVotingUnits`]]
  701. :xref-Votes-_getVotingUnits-address-: xref:governance.adoc#Votes-_getVotingUnits-address-
  702. :IERC1271: pass:normal[xref:interfaces.adoc#IERC1271[`IERC1271`]]
  703. :xref-IERC1271: xref:interfaces.adoc#IERC1271
  704. :IERC1271-isValidSignature: pass:normal[xref:interfaces.adoc#IERC1271-isValidSignature-bytes32-bytes-[`IERC1271.isValidSignature`]]
  705. :xref-IERC1271-isValidSignature-bytes32-bytes-: xref:interfaces.adoc#IERC1271-isValidSignature-bytes32-bytes-
  706. :IERC1363: pass:normal[xref:interfaces.adoc#IERC1363[`IERC1363`]]
  707. :xref-IERC1363: xref:interfaces.adoc#IERC1363
  708. :IERC1363-transferAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-[`IERC1363.transferAndCall`]]
  709. :xref-IERC1363-transferAndCall-address-uint256-: xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-
  710. :IERC1363-transferAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-bytes-[`IERC1363.transferAndCall`]]
  711. :xref-IERC1363-transferAndCall-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-bytes-
  712. :IERC1363-transferFromAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-[`IERC1363.transferFromAndCall`]]
  713. :xref-IERC1363-transferFromAndCall-address-address-uint256-: xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-
  714. :IERC1363-transferFromAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-bytes-[`IERC1363.transferFromAndCall`]]
  715. :xref-IERC1363-transferFromAndCall-address-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-bytes-
  716. :IERC1363-approveAndCall: pass:normal[xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-[`IERC1363.approveAndCall`]]
  717. :xref-IERC1363-approveAndCall-address-uint256-: xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-
  718. :IERC1363-approveAndCall: pass:normal[xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-bytes-[`IERC1363.approveAndCall`]]
  719. :xref-IERC1363-approveAndCall-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-bytes-
  720. :IERC1363Receiver: pass:normal[xref:interfaces.adoc#IERC1363Receiver[`IERC1363Receiver`]]
  721. :xref-IERC1363Receiver: xref:interfaces.adoc#IERC1363Receiver
  722. :IERC1363Receiver-onTransferReceived: pass:normal[xref:interfaces.adoc#IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-[`IERC1363Receiver.onTransferReceived`]]
  723. :xref-IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-: xref:interfaces.adoc#IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-
  724. :IERC1363Spender: pass:normal[xref:interfaces.adoc#IERC1363Spender[`IERC1363Spender`]]
  725. :xref-IERC1363Spender: xref:interfaces.adoc#IERC1363Spender
  726. :IERC1363Spender-onApprovalReceived: pass:normal[xref:interfaces.adoc#IERC1363Spender-onApprovalReceived-address-uint256-bytes-[`IERC1363Spender.onApprovalReceived`]]
  727. :xref-IERC1363Spender-onApprovalReceived-address-uint256-bytes-: xref:interfaces.adoc#IERC1363Spender-onApprovalReceived-address-uint256-bytes-
  728. :IERC2981: pass:normal[xref:interfaces.adoc#IERC2981[`IERC2981`]]
  729. :xref-IERC2981: xref:interfaces.adoc#IERC2981
  730. :IERC2981-royaltyInfo: pass:normal[xref:interfaces.adoc#IERC2981-royaltyInfo-uint256-uint256-[`IERC2981.royaltyInfo`]]
  731. :xref-IERC2981-royaltyInfo-uint256-uint256-: xref:interfaces.adoc#IERC2981-royaltyInfo-uint256-uint256-
  732. :IERC3156FlashBorrower: pass:normal[xref:interfaces.adoc#IERC3156FlashBorrower[`IERC3156FlashBorrower`]]
  733. :xref-IERC3156FlashBorrower: xref:interfaces.adoc#IERC3156FlashBorrower
  734. :IERC3156FlashBorrower-onFlashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-[`IERC3156FlashBorrower.onFlashLoan`]]
  735. :xref-IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-: xref:interfaces.adoc#IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-
  736. :IERC3156FlashLender: pass:normal[xref:interfaces.adoc#IERC3156FlashLender[`IERC3156FlashLender`]]
  737. :xref-IERC3156FlashLender: xref:interfaces.adoc#IERC3156FlashLender
  738. :IERC3156FlashLender-maxFlashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-maxFlashLoan-address-[`IERC3156FlashLender.maxFlashLoan`]]
  739. :xref-IERC3156FlashLender-maxFlashLoan-address-: xref:interfaces.adoc#IERC3156FlashLender-maxFlashLoan-address-
  740. :IERC3156FlashLender-flashFee: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-flashFee-address-uint256-[`IERC3156FlashLender.flashFee`]]
  741. :xref-IERC3156FlashLender-flashFee-address-uint256-: xref:interfaces.adoc#IERC3156FlashLender-flashFee-address-uint256-
  742. :IERC3156FlashLender-flashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-[`IERC3156FlashLender.flashLoan`]]
  743. :xref-IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-: xref:interfaces.adoc#IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-
  744. :IERC4626: pass:normal[xref:interfaces.adoc#IERC4626[`IERC4626`]]
  745. :xref-IERC4626: xref:interfaces.adoc#IERC4626
  746. :IERC4626-asset: pass:normal[xref:interfaces.adoc#IERC4626-asset--[`IERC4626.asset`]]
  747. :xref-IERC4626-asset--: xref:interfaces.adoc#IERC4626-asset--
  748. :IERC4626-totalAssets: pass:normal[xref:interfaces.adoc#IERC4626-totalAssets--[`IERC4626.totalAssets`]]
  749. :xref-IERC4626-totalAssets--: xref:interfaces.adoc#IERC4626-totalAssets--
  750. :IERC4626-convertToShares: pass:normal[xref:interfaces.adoc#IERC4626-convertToShares-uint256-[`IERC4626.convertToShares`]]
  751. :xref-IERC4626-convertToShares-uint256-: xref:interfaces.adoc#IERC4626-convertToShares-uint256-
  752. :IERC4626-convertToAssets: pass:normal[xref:interfaces.adoc#IERC4626-convertToAssets-uint256-[`IERC4626.convertToAssets`]]
  753. :xref-IERC4626-convertToAssets-uint256-: xref:interfaces.adoc#IERC4626-convertToAssets-uint256-
  754. :IERC4626-maxDeposit: pass:normal[xref:interfaces.adoc#IERC4626-maxDeposit-address-[`IERC4626.maxDeposit`]]
  755. :xref-IERC4626-maxDeposit-address-: xref:interfaces.adoc#IERC4626-maxDeposit-address-
  756. :IERC4626-previewDeposit: pass:normal[xref:interfaces.adoc#IERC4626-previewDeposit-uint256-[`IERC4626.previewDeposit`]]
  757. :xref-IERC4626-previewDeposit-uint256-: xref:interfaces.adoc#IERC4626-previewDeposit-uint256-
  758. :IERC4626-deposit: pass:normal[xref:interfaces.adoc#IERC4626-deposit-uint256-address-[`IERC4626.deposit`]]
  759. :xref-IERC4626-deposit-uint256-address-: xref:interfaces.adoc#IERC4626-deposit-uint256-address-
  760. :IERC4626-maxMint: pass:normal[xref:interfaces.adoc#IERC4626-maxMint-address-[`IERC4626.maxMint`]]
  761. :xref-IERC4626-maxMint-address-: xref:interfaces.adoc#IERC4626-maxMint-address-
  762. :IERC4626-previewMint: pass:normal[xref:interfaces.adoc#IERC4626-previewMint-uint256-[`IERC4626.previewMint`]]
  763. :xref-IERC4626-previewMint-uint256-: xref:interfaces.adoc#IERC4626-previewMint-uint256-
  764. :IERC4626-mint: pass:normal[xref:interfaces.adoc#IERC4626-mint-uint256-address-[`IERC4626.mint`]]
  765. :xref-IERC4626-mint-uint256-address-: xref:interfaces.adoc#IERC4626-mint-uint256-address-
  766. :IERC4626-maxWithdraw: pass:normal[xref:interfaces.adoc#IERC4626-maxWithdraw-address-[`IERC4626.maxWithdraw`]]
  767. :xref-IERC4626-maxWithdraw-address-: xref:interfaces.adoc#IERC4626-maxWithdraw-address-
  768. :IERC4626-previewWithdraw: pass:normal[xref:interfaces.adoc#IERC4626-previewWithdraw-uint256-[`IERC4626.previewWithdraw`]]
  769. :xref-IERC4626-previewWithdraw-uint256-: xref:interfaces.adoc#IERC4626-previewWithdraw-uint256-
  770. :IERC4626-withdraw: pass:normal[xref:interfaces.adoc#IERC4626-withdraw-uint256-address-address-[`IERC4626.withdraw`]]
  771. :xref-IERC4626-withdraw-uint256-address-address-: xref:interfaces.adoc#IERC4626-withdraw-uint256-address-address-
  772. :IERC4626-maxRedeem: pass:normal[xref:interfaces.adoc#IERC4626-maxRedeem-address-[`IERC4626.maxRedeem`]]
  773. :xref-IERC4626-maxRedeem-address-: xref:interfaces.adoc#IERC4626-maxRedeem-address-
  774. :IERC4626-previewRedeem: pass:normal[xref:interfaces.adoc#IERC4626-previewRedeem-uint256-[`IERC4626.previewRedeem`]]
  775. :xref-IERC4626-previewRedeem-uint256-: xref:interfaces.adoc#IERC4626-previewRedeem-uint256-
  776. :IERC4626-redeem: pass:normal[xref:interfaces.adoc#IERC4626-redeem-uint256-address-address-[`IERC4626.redeem`]]
  777. :xref-IERC4626-redeem-uint256-address-address-: xref:interfaces.adoc#IERC4626-redeem-uint256-address-address-
  778. :IERC4626-Deposit: pass:normal[xref:interfaces.adoc#IERC4626-Deposit-address-address-uint256-uint256-[`IERC4626.Deposit`]]
  779. :xref-IERC4626-Deposit-address-address-uint256-uint256-: xref:interfaces.adoc#IERC4626-Deposit-address-address-uint256-uint256-
  780. :IERC4626-Withdraw: pass:normal[xref:interfaces.adoc#IERC4626-Withdraw-address-address-address-uint256-uint256-[`IERC4626.Withdraw`]]
  781. :xref-IERC4626-Withdraw-address-address-address-uint256-uint256-: xref:interfaces.adoc#IERC4626-Withdraw-address-address-address-uint256-uint256-
  782. :IERC1822Proxiable: pass:normal[xref:interfaces.adoc#IERC1822Proxiable[`IERC1822Proxiable`]]
  783. :xref-IERC1822Proxiable: xref:interfaces.adoc#IERC1822Proxiable
  784. :IERC1822Proxiable-proxiableUUID: pass:normal[xref:interfaces.adoc#IERC1822Proxiable-proxiableUUID--[`IERC1822Proxiable.proxiableUUID`]]
  785. :xref-IERC1822Proxiable-proxiableUUID--: xref:interfaces.adoc#IERC1822Proxiable-proxiableUUID--
  786. :IERC2612: pass:normal[xref:interfaces.adoc#IERC2612[`IERC2612`]]
  787. :xref-IERC2612: xref:interfaces.adoc#IERC2612
  788. :ERC2771Context: pass:normal[xref:metatx.adoc#ERC2771Context[`ERC2771Context`]]
  789. :xref-ERC2771Context: xref:metatx.adoc#ERC2771Context
  790. :ERC2771Context-constructor: pass:normal[xref:metatx.adoc#ERC2771Context-constructor-address-[`ERC2771Context.constructor`]]
  791. :xref-ERC2771Context-constructor-address-: xref:metatx.adoc#ERC2771Context-constructor-address-
  792. :ERC2771Context-isTrustedForwarder: pass:normal[xref:metatx.adoc#ERC2771Context-isTrustedForwarder-address-[`ERC2771Context.isTrustedForwarder`]]
  793. :xref-ERC2771Context-isTrustedForwarder-address-: xref:metatx.adoc#ERC2771Context-isTrustedForwarder-address-
  794. :ERC2771Context-_msgSender: pass:normal[xref:metatx.adoc#ERC2771Context-_msgSender--[`ERC2771Context._msgSender`]]
  795. :xref-ERC2771Context-_msgSender--: xref:metatx.adoc#ERC2771Context-_msgSender--
  796. :ERC2771Context-_msgData: pass:normal[xref:metatx.adoc#ERC2771Context-_msgData--[`ERC2771Context._msgData`]]
  797. :xref-ERC2771Context-_msgData--: xref:metatx.adoc#ERC2771Context-_msgData--
  798. :MinimalForwarder: pass:normal[xref:metatx.adoc#MinimalForwarder[`MinimalForwarder`]]
  799. :xref-MinimalForwarder: xref:metatx.adoc#MinimalForwarder
  800. :MinimalForwarder-getNonce: pass:normal[xref:metatx.adoc#MinimalForwarder-getNonce-address-[`MinimalForwarder.getNonce`]]
  801. :xref-MinimalForwarder-getNonce-address-: xref:metatx.adoc#MinimalForwarder-getNonce-address-
  802. :MinimalForwarder-verify: pass:normal[xref:metatx.adoc#MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-[`MinimalForwarder.verify`]]
  803. :xref-MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-: xref:metatx.adoc#MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-
  804. :MinimalForwarder-execute: pass:normal[xref:metatx.adoc#MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-[`MinimalForwarder.execute`]]
  805. :xref-MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-: xref:metatx.adoc#MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-
  806. :MinimalForwarder-ForwardRequest: pass:normal[xref:metatx.adoc#MinimalForwarder-ForwardRequest[`MinimalForwarder.ForwardRequest`]]
  807. :xref-MinimalForwarder-ForwardRequest: xref:metatx.adoc#MinimalForwarder-ForwardRequest
  808. :Clones: pass:normal[xref:proxy.adoc#Clones[`Clones`]]
  809. :xref-Clones: xref:proxy.adoc#Clones
  810. :Clones-clone: pass:normal[xref:proxy.adoc#Clones-clone-address-[`Clones.clone`]]
  811. :xref-Clones-clone-address-: xref:proxy.adoc#Clones-clone-address-
  812. :Clones-cloneDeterministic: pass:normal[xref:proxy.adoc#Clones-cloneDeterministic-address-bytes32-[`Clones.cloneDeterministic`]]
  813. :xref-Clones-cloneDeterministic-address-bytes32-: xref:proxy.adoc#Clones-cloneDeterministic-address-bytes32-
  814. :Clones-predictDeterministicAddress: pass:normal[xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-address-[`Clones.predictDeterministicAddress`]]
  815. :xref-Clones-predictDeterministicAddress-address-bytes32-address-: xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-address-
  816. :Clones-predictDeterministicAddress: pass:normal[xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-[`Clones.predictDeterministicAddress`]]
  817. :xref-Clones-predictDeterministicAddress-address-bytes32-: xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-
  818. :ERC1967Proxy: pass:normal[xref:proxy.adoc#ERC1967Proxy[`ERC1967Proxy`]]
  819. :xref-ERC1967Proxy: xref:proxy.adoc#ERC1967Proxy
  820. :ERC1967Proxy-constructor: pass:normal[xref:proxy.adoc#ERC1967Proxy-constructor-address-bytes-[`ERC1967Proxy.constructor`]]
  821. :xref-ERC1967Proxy-constructor-address-bytes-: xref:proxy.adoc#ERC1967Proxy-constructor-address-bytes-
  822. :ERC1967Proxy-_implementation: pass:normal[xref:proxy.adoc#ERC1967Proxy-_implementation--[`ERC1967Proxy._implementation`]]
  823. :xref-ERC1967Proxy-_implementation--: xref:proxy.adoc#ERC1967Proxy-_implementation--
  824. :ERC1967Upgrade: pass:normal[xref:proxy.adoc#ERC1967Upgrade[`ERC1967Upgrade`]]
  825. :xref-ERC1967Upgrade: xref:proxy.adoc#ERC1967Upgrade
  826. :ERC1967Upgrade-_IMPLEMENTATION_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32[`ERC1967Upgrade._IMPLEMENTATION_SLOT`]]
  827. :xref-ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32
  828. :ERC1967Upgrade-_ADMIN_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_ADMIN_SLOT-bytes32[`ERC1967Upgrade._ADMIN_SLOT`]]
  829. :xref-ERC1967Upgrade-_ADMIN_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_ADMIN_SLOT-bytes32
  830. :ERC1967Upgrade-_BEACON_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_BEACON_SLOT-bytes32[`ERC1967Upgrade._BEACON_SLOT`]]
  831. :xref-ERC1967Upgrade-_BEACON_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_BEACON_SLOT-bytes32
  832. :ERC1967Upgrade-_getImplementation: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getImplementation--[`ERC1967Upgrade._getImplementation`]]
  833. :xref-ERC1967Upgrade-_getImplementation--: xref:proxy.adoc#ERC1967Upgrade-_getImplementation--
  834. :ERC1967Upgrade-_upgradeTo: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeTo-address-[`ERC1967Upgrade._upgradeTo`]]
  835. :xref-ERC1967Upgrade-_upgradeTo-address-: xref:proxy.adoc#ERC1967Upgrade-_upgradeTo-address-
  836. :ERC1967Upgrade-_upgradeToAndCall: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-[`ERC1967Upgrade._upgradeToAndCall`]]
  837. :xref-ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-
  838. :ERC1967Upgrade-_upgradeToAndCallUUPS: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-[`ERC1967Upgrade._upgradeToAndCallUUPS`]]
  839. :xref-ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-
  840. :ERC1967Upgrade-_getAdmin: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getAdmin--[`ERC1967Upgrade._getAdmin`]]
  841. :xref-ERC1967Upgrade-_getAdmin--: xref:proxy.adoc#ERC1967Upgrade-_getAdmin--
  842. :ERC1967Upgrade-_changeAdmin: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_changeAdmin-address-[`ERC1967Upgrade._changeAdmin`]]
  843. :xref-ERC1967Upgrade-_changeAdmin-address-: xref:proxy.adoc#ERC1967Upgrade-_changeAdmin-address-
  844. :ERC1967Upgrade-_getBeacon: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getBeacon--[`ERC1967Upgrade._getBeacon`]]
  845. :xref-ERC1967Upgrade-_getBeacon--: xref:proxy.adoc#ERC1967Upgrade-_getBeacon--
  846. :ERC1967Upgrade-_upgradeBeaconToAndCall: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-[`ERC1967Upgrade._upgradeBeaconToAndCall`]]
  847. :xref-ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-
  848. :ERC1967Upgrade-Upgraded: pass:normal[xref:proxy.adoc#ERC1967Upgrade-Upgraded-address-[`ERC1967Upgrade.Upgraded`]]
  849. :xref-ERC1967Upgrade-Upgraded-address-: xref:proxy.adoc#ERC1967Upgrade-Upgraded-address-
  850. :ERC1967Upgrade-AdminChanged: pass:normal[xref:proxy.adoc#ERC1967Upgrade-AdminChanged-address-address-[`ERC1967Upgrade.AdminChanged`]]
  851. :xref-ERC1967Upgrade-AdminChanged-address-address-: xref:proxy.adoc#ERC1967Upgrade-AdminChanged-address-address-
  852. :ERC1967Upgrade-BeaconUpgraded: pass:normal[xref:proxy.adoc#ERC1967Upgrade-BeaconUpgraded-address-[`ERC1967Upgrade.BeaconUpgraded`]]
  853. :xref-ERC1967Upgrade-BeaconUpgraded-address-: xref:proxy.adoc#ERC1967Upgrade-BeaconUpgraded-address-
  854. :Proxy: pass:normal[xref:proxy.adoc#Proxy[`Proxy`]]
  855. :xref-Proxy: xref:proxy.adoc#Proxy
  856. :Proxy-_delegate: pass:normal[xref:proxy.adoc#Proxy-_delegate-address-[`Proxy._delegate`]]
  857. :xref-Proxy-_delegate-address-: xref:proxy.adoc#Proxy-_delegate-address-
  858. :Proxy-_implementation: pass:normal[xref:proxy.adoc#Proxy-_implementation--[`Proxy._implementation`]]
  859. :xref-Proxy-_implementation--: xref:proxy.adoc#Proxy-_implementation--
  860. :Proxy-_fallback: pass:normal[xref:proxy.adoc#Proxy-_fallback--[`Proxy._fallback`]]
  861. :xref-Proxy-_fallback--: xref:proxy.adoc#Proxy-_fallback--
  862. :Proxy-fallback: pass:normal[xref:proxy.adoc#Proxy-fallback--[`Proxy.fallback`]]
  863. :xref-Proxy-fallback--: xref:proxy.adoc#Proxy-fallback--
  864. :Proxy-receive: pass:normal[xref:proxy.adoc#Proxy-receive--[`Proxy.receive`]]
  865. :xref-Proxy-receive--: xref:proxy.adoc#Proxy-receive--
  866. :Proxy-_beforeFallback: pass:normal[xref:proxy.adoc#Proxy-_beforeFallback--[`Proxy._beforeFallback`]]
  867. :xref-Proxy-_beforeFallback--: xref:proxy.adoc#Proxy-_beforeFallback--
  868. :BeaconProxy: pass:normal[xref:proxy.adoc#BeaconProxy[`BeaconProxy`]]
  869. :xref-BeaconProxy: xref:proxy.adoc#BeaconProxy
  870. :BeaconProxy-constructor: pass:normal[xref:proxy.adoc#BeaconProxy-constructor-address-bytes-[`BeaconProxy.constructor`]]
  871. :xref-BeaconProxy-constructor-address-bytes-: xref:proxy.adoc#BeaconProxy-constructor-address-bytes-
  872. :BeaconProxy-_beacon: pass:normal[xref:proxy.adoc#BeaconProxy-_beacon--[`BeaconProxy._beacon`]]
  873. :xref-BeaconProxy-_beacon--: xref:proxy.adoc#BeaconProxy-_beacon--
  874. :BeaconProxy-_implementation: pass:normal[xref:proxy.adoc#BeaconProxy-_implementation--[`BeaconProxy._implementation`]]
  875. :xref-BeaconProxy-_implementation--: xref:proxy.adoc#BeaconProxy-_implementation--
  876. :BeaconProxy-_setBeacon: pass:normal[xref:proxy.adoc#BeaconProxy-_setBeacon-address-bytes-[`BeaconProxy._setBeacon`]]
  877. :xref-BeaconProxy-_setBeacon-address-bytes-: xref:proxy.adoc#BeaconProxy-_setBeacon-address-bytes-
  878. :IBeacon: pass:normal[xref:proxy.adoc#IBeacon[`IBeacon`]]
  879. :xref-IBeacon: xref:proxy.adoc#IBeacon
  880. :IBeacon-implementation: pass:normal[xref:proxy.adoc#IBeacon-implementation--[`IBeacon.implementation`]]
  881. :xref-IBeacon-implementation--: xref:proxy.adoc#IBeacon-implementation--
  882. :UpgradeableBeacon: pass:normal[xref:proxy.adoc#UpgradeableBeacon[`UpgradeableBeacon`]]
  883. :xref-UpgradeableBeacon: xref:proxy.adoc#UpgradeableBeacon
  884. :UpgradeableBeacon-constructor: pass:normal[xref:proxy.adoc#UpgradeableBeacon-constructor-address-[`UpgradeableBeacon.constructor`]]
  885. :xref-UpgradeableBeacon-constructor-address-: xref:proxy.adoc#UpgradeableBeacon-constructor-address-
  886. :UpgradeableBeacon-implementation: pass:normal[xref:proxy.adoc#UpgradeableBeacon-implementation--[`UpgradeableBeacon.implementation`]]
  887. :xref-UpgradeableBeacon-implementation--: xref:proxy.adoc#UpgradeableBeacon-implementation--
  888. :UpgradeableBeacon-upgradeTo: pass:normal[xref:proxy.adoc#UpgradeableBeacon-upgradeTo-address-[`UpgradeableBeacon.upgradeTo`]]
  889. :xref-UpgradeableBeacon-upgradeTo-address-: xref:proxy.adoc#UpgradeableBeacon-upgradeTo-address-
  890. :UpgradeableBeacon-Upgraded: pass:normal[xref:proxy.adoc#UpgradeableBeacon-Upgraded-address-[`UpgradeableBeacon.Upgraded`]]
  891. :xref-UpgradeableBeacon-Upgraded-address-: xref:proxy.adoc#UpgradeableBeacon-Upgraded-address-
  892. :ProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin[`ProxyAdmin`]]
  893. :xref-ProxyAdmin: xref:proxy.adoc#ProxyAdmin
  894. :ProxyAdmin-getProxyImplementation: pass:normal[xref:proxy.adoc#ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-[`ProxyAdmin.getProxyImplementation`]]
  895. :xref-ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-: xref:proxy.adoc#ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-
  896. :ProxyAdmin-getProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-[`ProxyAdmin.getProxyAdmin`]]
  897. :xref-ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-: xref:proxy.adoc#ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-
  898. :ProxyAdmin-changeProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-[`ProxyAdmin.changeProxyAdmin`]]
  899. :xref-ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-: xref:proxy.adoc#ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-
  900. :ProxyAdmin-upgrade: pass:normal[xref:proxy.adoc#ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-[`ProxyAdmin.upgrade`]]
  901. :xref-ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-: xref:proxy.adoc#ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-
  902. :ProxyAdmin-upgradeAndCall: pass:normal[xref:proxy.adoc#ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-[`ProxyAdmin.upgradeAndCall`]]
  903. :xref-ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-: xref:proxy.adoc#ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-
  904. :TransparentUpgradeableProxy: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy[`TransparentUpgradeableProxy`]]
  905. :xref-TransparentUpgradeableProxy: xref:proxy.adoc#TransparentUpgradeableProxy
  906. :TransparentUpgradeableProxy-ifAdmin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-ifAdmin--[`TransparentUpgradeableProxy.ifAdmin`]]
  907. :xref-TransparentUpgradeableProxy-ifAdmin--: xref:proxy.adoc#TransparentUpgradeableProxy-ifAdmin--
  908. :TransparentUpgradeableProxy-constructor: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-constructor-address-address-bytes-[`TransparentUpgradeableProxy.constructor`]]
  909. :xref-TransparentUpgradeableProxy-constructor-address-address-bytes-: xref:proxy.adoc#TransparentUpgradeableProxy-constructor-address-address-bytes-
  910. :TransparentUpgradeableProxy-admin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-admin--[`TransparentUpgradeableProxy.admin`]]
  911. :xref-TransparentUpgradeableProxy-admin--: xref:proxy.adoc#TransparentUpgradeableProxy-admin--
  912. :TransparentUpgradeableProxy-implementation: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-implementation--[`TransparentUpgradeableProxy.implementation`]]
  913. :xref-TransparentUpgradeableProxy-implementation--: xref:proxy.adoc#TransparentUpgradeableProxy-implementation--
  914. :TransparentUpgradeableProxy-changeAdmin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-changeAdmin-address-[`TransparentUpgradeableProxy.changeAdmin`]]
  915. :xref-TransparentUpgradeableProxy-changeAdmin-address-: xref:proxy.adoc#TransparentUpgradeableProxy-changeAdmin-address-
  916. :TransparentUpgradeableProxy-upgradeTo: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-upgradeTo-address-[`TransparentUpgradeableProxy.upgradeTo`]]
  917. :xref-TransparentUpgradeableProxy-upgradeTo-address-: xref:proxy.adoc#TransparentUpgradeableProxy-upgradeTo-address-
  918. :TransparentUpgradeableProxy-upgradeToAndCall: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-[`TransparentUpgradeableProxy.upgradeToAndCall`]]
  919. :xref-TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-: xref:proxy.adoc#TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-
  920. :TransparentUpgradeableProxy-_admin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-_admin--[`TransparentUpgradeableProxy._admin`]]
  921. :xref-TransparentUpgradeableProxy-_admin--: xref:proxy.adoc#TransparentUpgradeableProxy-_admin--
  922. :TransparentUpgradeableProxy-_beforeFallback: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-_beforeFallback--[`TransparentUpgradeableProxy._beforeFallback`]]
  923. :xref-TransparentUpgradeableProxy-_beforeFallback--: xref:proxy.adoc#TransparentUpgradeableProxy-_beforeFallback--
  924. :Initializable: pass:normal[xref:proxy.adoc#Initializable[`Initializable`]]
  925. :xref-Initializable: xref:proxy.adoc#Initializable
  926. :Initializable-initializer: pass:normal[xref:proxy.adoc#Initializable-initializer--[`Initializable.initializer`]]
  927. :xref-Initializable-initializer--: xref:proxy.adoc#Initializable-initializer--
  928. :Initializable-reinitializer: pass:normal[xref:proxy.adoc#Initializable-reinitializer-uint8-[`Initializable.reinitializer`]]
  929. :xref-Initializable-reinitializer-uint8-: xref:proxy.adoc#Initializable-reinitializer-uint8-
  930. :Initializable-onlyInitializing: pass:normal[xref:proxy.adoc#Initializable-onlyInitializing--[`Initializable.onlyInitializing`]]
  931. :xref-Initializable-onlyInitializing--: xref:proxy.adoc#Initializable-onlyInitializing--
  932. :Initializable-_disableInitializers: pass:normal[xref:proxy.adoc#Initializable-_disableInitializers--[`Initializable._disableInitializers`]]
  933. :xref-Initializable-_disableInitializers--: xref:proxy.adoc#Initializable-_disableInitializers--
  934. :Initializable-Initialized: pass:normal[xref:proxy.adoc#Initializable-Initialized-uint8-[`Initializable.Initialized`]]
  935. :xref-Initializable-Initialized-uint8-: xref:proxy.adoc#Initializable-Initialized-uint8-
  936. :UUPSUpgradeable: pass:normal[xref:proxy.adoc#UUPSUpgradeable[`UUPSUpgradeable`]]
  937. :xref-UUPSUpgradeable: xref:proxy.adoc#UUPSUpgradeable
  938. :UUPSUpgradeable-onlyProxy: pass:normal[xref:proxy.adoc#UUPSUpgradeable-onlyProxy--[`UUPSUpgradeable.onlyProxy`]]
  939. :xref-UUPSUpgradeable-onlyProxy--: xref:proxy.adoc#UUPSUpgradeable-onlyProxy--
  940. :UUPSUpgradeable-notDelegated: pass:normal[xref:proxy.adoc#UUPSUpgradeable-notDelegated--[`UUPSUpgradeable.notDelegated`]]
  941. :xref-UUPSUpgradeable-notDelegated--: xref:proxy.adoc#UUPSUpgradeable-notDelegated--
  942. :UUPSUpgradeable-proxiableUUID: pass:normal[xref:proxy.adoc#UUPSUpgradeable-proxiableUUID--[`UUPSUpgradeable.proxiableUUID`]]
  943. :xref-UUPSUpgradeable-proxiableUUID--: xref:proxy.adoc#UUPSUpgradeable-proxiableUUID--
  944. :UUPSUpgradeable-upgradeTo: pass:normal[xref:proxy.adoc#UUPSUpgradeable-upgradeTo-address-[`UUPSUpgradeable.upgradeTo`]]
  945. :xref-UUPSUpgradeable-upgradeTo-address-: xref:proxy.adoc#UUPSUpgradeable-upgradeTo-address-
  946. :UUPSUpgradeable-upgradeToAndCall: pass:normal[xref:proxy.adoc#UUPSUpgradeable-upgradeToAndCall-address-bytes-[`UUPSUpgradeable.upgradeToAndCall`]]
  947. :xref-UUPSUpgradeable-upgradeToAndCall-address-bytes-: xref:proxy.adoc#UUPSUpgradeable-upgradeToAndCall-address-bytes-
  948. :UUPSUpgradeable-_authorizeUpgrade: pass:normal[xref:proxy.adoc#UUPSUpgradeable-_authorizeUpgrade-address-[`UUPSUpgradeable._authorizeUpgrade`]]
  949. :xref-UUPSUpgradeable-_authorizeUpgrade-address-: xref:proxy.adoc#UUPSUpgradeable-_authorizeUpgrade-address-
  950. :Pausable: pass:normal[xref:security.adoc#Pausable[`Pausable`]]
  951. :xref-Pausable: xref:security.adoc#Pausable
  952. :Pausable-whenNotPaused: pass:normal[xref:security.adoc#Pausable-whenNotPaused--[`Pausable.whenNotPaused`]]
  953. :xref-Pausable-whenNotPaused--: xref:security.adoc#Pausable-whenNotPaused--
  954. :Pausable-whenPaused: pass:normal[xref:security.adoc#Pausable-whenPaused--[`Pausable.whenPaused`]]
  955. :xref-Pausable-whenPaused--: xref:security.adoc#Pausable-whenPaused--
  956. :Pausable-constructor: pass:normal[xref:security.adoc#Pausable-constructor--[`Pausable.constructor`]]
  957. :xref-Pausable-constructor--: xref:security.adoc#Pausable-constructor--
  958. :Pausable-paused: pass:normal[xref:security.adoc#Pausable-paused--[`Pausable.paused`]]
  959. :xref-Pausable-paused--: xref:security.adoc#Pausable-paused--
  960. :Pausable-_requireNotPaused: pass:normal[xref:security.adoc#Pausable-_requireNotPaused--[`Pausable._requireNotPaused`]]
  961. :xref-Pausable-_requireNotPaused--: xref:security.adoc#Pausable-_requireNotPaused--
  962. :Pausable-_requirePaused: pass:normal[xref:security.adoc#Pausable-_requirePaused--[`Pausable._requirePaused`]]
  963. :xref-Pausable-_requirePaused--: xref:security.adoc#Pausable-_requirePaused--
  964. :Pausable-_pause: pass:normal[xref:security.adoc#Pausable-_pause--[`Pausable._pause`]]
  965. :xref-Pausable-_pause--: xref:security.adoc#Pausable-_pause--
  966. :Pausable-_unpause: pass:normal[xref:security.adoc#Pausable-_unpause--[`Pausable._unpause`]]
  967. :xref-Pausable-_unpause--: xref:security.adoc#Pausable-_unpause--
  968. :Pausable-Paused: pass:normal[xref:security.adoc#Pausable-Paused-address-[`Pausable.Paused`]]
  969. :xref-Pausable-Paused-address-: xref:security.adoc#Pausable-Paused-address-
  970. :Pausable-Unpaused: pass:normal[xref:security.adoc#Pausable-Unpaused-address-[`Pausable.Unpaused`]]
  971. :xref-Pausable-Unpaused-address-: xref:security.adoc#Pausable-Unpaused-address-
  972. :PullPayment: pass:normal[xref:security.adoc#PullPayment[`PullPayment`]]
  973. :xref-PullPayment: xref:security.adoc#PullPayment
  974. :PullPayment-constructor: pass:normal[xref:security.adoc#PullPayment-constructor--[`PullPayment.constructor`]]
  975. :xref-PullPayment-constructor--: xref:security.adoc#PullPayment-constructor--
  976. :PullPayment-withdrawPayments: pass:normal[xref:security.adoc#PullPayment-withdrawPayments-address-payable-[`PullPayment.withdrawPayments`]]
  977. :xref-PullPayment-withdrawPayments-address-payable-: xref:security.adoc#PullPayment-withdrawPayments-address-payable-
  978. :PullPayment-payments: pass:normal[xref:security.adoc#PullPayment-payments-address-[`PullPayment.payments`]]
  979. :xref-PullPayment-payments-address-: xref:security.adoc#PullPayment-payments-address-
  980. :PullPayment-_asyncTransfer: pass:normal[xref:security.adoc#PullPayment-_asyncTransfer-address-uint256-[`PullPayment._asyncTransfer`]]
  981. :xref-PullPayment-_asyncTransfer-address-uint256-: xref:security.adoc#PullPayment-_asyncTransfer-address-uint256-
  982. :ReentrancyGuard: pass:normal[xref:security.adoc#ReentrancyGuard[`ReentrancyGuard`]]
  983. :xref-ReentrancyGuard: xref:security.adoc#ReentrancyGuard
  984. :ReentrancyGuard-nonReentrant: pass:normal[xref:security.adoc#ReentrancyGuard-nonReentrant--[`ReentrancyGuard.nonReentrant`]]
  985. :xref-ReentrancyGuard-nonReentrant--: xref:security.adoc#ReentrancyGuard-nonReentrant--
  986. :ReentrancyGuard-constructor: pass:normal[xref:security.adoc#ReentrancyGuard-constructor--[`ReentrancyGuard.constructor`]]
  987. :xref-ReentrancyGuard-constructor--: xref:security.adoc#ReentrancyGuard-constructor--
  988. :Address: pass:normal[xref:utils.adoc#Address[`Address`]]
  989. :xref-Address: xref:utils.adoc#Address
  990. :Address-isContract: pass:normal[xref:utils.adoc#Address-isContract-address-[`Address.isContract`]]
  991. :xref-Address-isContract-address-: xref:utils.adoc#Address-isContract-address-
  992. :Address-sendValue: pass:normal[xref:utils.adoc#Address-sendValue-address-payable-uint256-[`Address.sendValue`]]
  993. :xref-Address-sendValue-address-payable-uint256-: xref:utils.adoc#Address-sendValue-address-payable-uint256-
  994. :Address-functionCall: pass:normal[xref:utils.adoc#Address-functionCall-address-bytes-[`Address.functionCall`]]
  995. :xref-Address-functionCall-address-bytes-: xref:utils.adoc#Address-functionCall-address-bytes-
  996. :Address-functionCall: pass:normal[xref:utils.adoc#Address-functionCall-address-bytes-string-[`Address.functionCall`]]
  997. :xref-Address-functionCall-address-bytes-string-: xref:utils.adoc#Address-functionCall-address-bytes-string-
  998. :Address-functionCallWithValue: pass:normal[xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-[`Address.functionCallWithValue`]]
  999. :xref-Address-functionCallWithValue-address-bytes-uint256-: xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-
  1000. :Address-functionCallWithValue: pass:normal[xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-string-[`Address.functionCallWithValue`]]
  1001. :xref-Address-functionCallWithValue-address-bytes-uint256-string-: xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-string-
  1002. :Address-functionStaticCall: pass:normal[xref:utils.adoc#Address-functionStaticCall-address-bytes-[`Address.functionStaticCall`]]
  1003. :xref-Address-functionStaticCall-address-bytes-: xref:utils.adoc#Address-functionStaticCall-address-bytes-
  1004. :Address-functionStaticCall: pass:normal[xref:utils.adoc#Address-functionStaticCall-address-bytes-string-[`Address.functionStaticCall`]]
  1005. :xref-Address-functionStaticCall-address-bytes-string-: xref:utils.adoc#Address-functionStaticCall-address-bytes-string-
  1006. :Address-functionDelegateCall: pass:normal[xref:utils.adoc#Address-functionDelegateCall-address-bytes-[`Address.functionDelegateCall`]]
  1007. :xref-Address-functionDelegateCall-address-bytes-: xref:utils.adoc#Address-functionDelegateCall-address-bytes-
  1008. :Address-functionDelegateCall: pass:normal[xref:utils.adoc#Address-functionDelegateCall-address-bytes-string-[`Address.functionDelegateCall`]]
  1009. :xref-Address-functionDelegateCall-address-bytes-string-: xref:utils.adoc#Address-functionDelegateCall-address-bytes-string-
  1010. :Address-verifyCallResult: pass:normal[xref:utils.adoc#Address-verifyCallResult-bool-bytes-string-[`Address.verifyCallResult`]]
  1011. :xref-Address-verifyCallResult-bool-bytes-string-: xref:utils.adoc#Address-verifyCallResult-bool-bytes-string-
  1012. :Arrays: pass:normal[xref:utils.adoc#Arrays[`Arrays`]]
  1013. :xref-Arrays: xref:utils.adoc#Arrays
  1014. :Arrays-findUpperBound: pass:normal[xref:utils.adoc#Arrays-findUpperBound-uint256---uint256-[`Arrays.findUpperBound`]]
  1015. :xref-Arrays-findUpperBound-uint256---uint256-: xref:utils.adoc#Arrays-findUpperBound-uint256---uint256-
  1016. :Base64: pass:normal[xref:utils.adoc#Base64[`Base64`]]
  1017. :xref-Base64: xref:utils.adoc#Base64
  1018. :Base64-_TABLE: pass:normal[xref:utils.adoc#Base64-_TABLE-string[`Base64._TABLE`]]
  1019. :xref-Base64-_TABLE-string: xref:utils.adoc#Base64-_TABLE-string
  1020. :Base64-encode: pass:normal[xref:utils.adoc#Base64-encode-bytes-[`Base64.encode`]]
  1021. :xref-Base64-encode-bytes-: xref:utils.adoc#Base64-encode-bytes-
  1022. :Checkpoints: pass:normal[xref:utils.adoc#Checkpoints[`Checkpoints`]]
  1023. :xref-Checkpoints: xref:utils.adoc#Checkpoints
  1024. :Checkpoints-latest: pass:normal[xref:utils.adoc#Checkpoints-latest-struct-Checkpoints-History-[`Checkpoints.latest`]]
  1025. :xref-Checkpoints-latest-struct-Checkpoints-History-: xref:utils.adoc#Checkpoints-latest-struct-Checkpoints-History-
  1026. :Checkpoints-getAtBlock: pass:normal[xref:utils.adoc#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-[`Checkpoints.getAtBlock`]]
  1027. :xref-Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-: xref:utils.adoc#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-
  1028. :Checkpoints-push: pass:normal[xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-uint256-[`Checkpoints.push`]]
  1029. :xref-Checkpoints-push-struct-Checkpoints-History-uint256-: xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-uint256-
  1030. :Checkpoints-push: pass:normal[xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-[`Checkpoints.push`]]
  1031. :xref-Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-: xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-
  1032. :Checkpoints-Checkpoint: pass:normal[xref:utils.adoc#Checkpoints-Checkpoint[`Checkpoints.Checkpoint`]]
  1033. :xref-Checkpoints-Checkpoint: xref:utils.adoc#Checkpoints-Checkpoint
  1034. :Checkpoints-History: pass:normal[xref:utils.adoc#Checkpoints-History[`Checkpoints.History`]]
  1035. :xref-Checkpoints-History: xref:utils.adoc#Checkpoints-History
  1036. :Context: pass:normal[xref:utils.adoc#Context[`Context`]]
  1037. :xref-Context: xref:utils.adoc#Context
  1038. :Context-_msgSender: pass:normal[xref:utils.adoc#Context-_msgSender--[`Context._msgSender`]]
  1039. :xref-Context-_msgSender--: xref:utils.adoc#Context-_msgSender--
  1040. :Context-_msgData: pass:normal[xref:utils.adoc#Context-_msgData--[`Context._msgData`]]
  1041. :xref-Context-_msgData--: xref:utils.adoc#Context-_msgData--
  1042. :Counters: pass:normal[xref:utils.adoc#Counters[`Counters`]]
  1043. :xref-Counters: xref:utils.adoc#Counters
  1044. :Counters-current: pass:normal[xref:utils.adoc#Counters-current-struct-Counters-Counter-[`Counters.current`]]
  1045. :xref-Counters-current-struct-Counters-Counter-: xref:utils.adoc#Counters-current-struct-Counters-Counter-
  1046. :Counters-increment: pass:normal[xref:utils.adoc#Counters-increment-struct-Counters-Counter-[`Counters.increment`]]
  1047. :xref-Counters-increment-struct-Counters-Counter-: xref:utils.adoc#Counters-increment-struct-Counters-Counter-
  1048. :Counters-decrement: pass:normal[xref:utils.adoc#Counters-decrement-struct-Counters-Counter-[`Counters.decrement`]]
  1049. :xref-Counters-decrement-struct-Counters-Counter-: xref:utils.adoc#Counters-decrement-struct-Counters-Counter-
  1050. :Counters-reset: pass:normal[xref:utils.adoc#Counters-reset-struct-Counters-Counter-[`Counters.reset`]]
  1051. :xref-Counters-reset-struct-Counters-Counter-: xref:utils.adoc#Counters-reset-struct-Counters-Counter-
  1052. :Counters-Counter: pass:normal[xref:utils.adoc#Counters-Counter[`Counters.Counter`]]
  1053. :xref-Counters-Counter: xref:utils.adoc#Counters-Counter
  1054. :Create2: pass:normal[xref:utils.adoc#Create2[`Create2`]]
  1055. :xref-Create2: xref:utils.adoc#Create2
  1056. :Create2-deploy: pass:normal[xref:utils.adoc#Create2-deploy-uint256-bytes32-bytes-[`Create2.deploy`]]
  1057. :xref-Create2-deploy-uint256-bytes32-bytes-: xref:utils.adoc#Create2-deploy-uint256-bytes32-bytes-
  1058. :Create2-computeAddress: pass:normal[xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-[`Create2.computeAddress`]]
  1059. :xref-Create2-computeAddress-bytes32-bytes32-: xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-
  1060. :Create2-computeAddress: pass:normal[xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-address-[`Create2.computeAddress`]]
  1061. :xref-Create2-computeAddress-bytes32-bytes32-address-: xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-address-
  1062. :Multicall: pass:normal[xref:utils.adoc#Multicall[`Multicall`]]
  1063. :xref-Multicall: xref:utils.adoc#Multicall
  1064. :Multicall-multicall: pass:normal[xref:utils.adoc#Multicall-multicall-bytes---[`Multicall.multicall`]]
  1065. :xref-Multicall-multicall-bytes---: xref:utils.adoc#Multicall-multicall-bytes---
  1066. :StorageSlot: pass:normal[xref:utils.adoc#StorageSlot[`StorageSlot`]]
  1067. :xref-StorageSlot: xref:utils.adoc#StorageSlot
  1068. :StorageSlot-getAddressSlot: pass:normal[xref:utils.adoc#StorageSlot-getAddressSlot-bytes32-[`StorageSlot.getAddressSlot`]]
  1069. :xref-StorageSlot-getAddressSlot-bytes32-: xref:utils.adoc#StorageSlot-getAddressSlot-bytes32-
  1070. :StorageSlot-getBooleanSlot: pass:normal[xref:utils.adoc#StorageSlot-getBooleanSlot-bytes32-[`StorageSlot.getBooleanSlot`]]
  1071. :xref-StorageSlot-getBooleanSlot-bytes32-: xref:utils.adoc#StorageSlot-getBooleanSlot-bytes32-
  1072. :StorageSlot-getBytes32Slot: pass:normal[xref:utils.adoc#StorageSlot-getBytes32Slot-bytes32-[`StorageSlot.getBytes32Slot`]]
  1073. :xref-StorageSlot-getBytes32Slot-bytes32-: xref:utils.adoc#StorageSlot-getBytes32Slot-bytes32-
  1074. :StorageSlot-getUint256Slot: pass:normal[xref:utils.adoc#StorageSlot-getUint256Slot-bytes32-[`StorageSlot.getUint256Slot`]]
  1075. :xref-StorageSlot-getUint256Slot-bytes32-: xref:utils.adoc#StorageSlot-getUint256Slot-bytes32-
  1076. :StorageSlot-AddressSlot: pass:normal[xref:utils.adoc#StorageSlot-AddressSlot[`StorageSlot.AddressSlot`]]
  1077. :xref-StorageSlot-AddressSlot: xref:utils.adoc#StorageSlot-AddressSlot
  1078. :StorageSlot-BooleanSlot: pass:normal[xref:utils.adoc#StorageSlot-BooleanSlot[`StorageSlot.BooleanSlot`]]
  1079. :xref-StorageSlot-BooleanSlot: xref:utils.adoc#StorageSlot-BooleanSlot
  1080. :StorageSlot-Bytes32Slot: pass:normal[xref:utils.adoc#StorageSlot-Bytes32Slot[`StorageSlot.Bytes32Slot`]]
  1081. :xref-StorageSlot-Bytes32Slot: xref:utils.adoc#StorageSlot-Bytes32Slot
  1082. :StorageSlot-Uint256Slot: pass:normal[xref:utils.adoc#StorageSlot-Uint256Slot[`StorageSlot.Uint256Slot`]]
  1083. :xref-StorageSlot-Uint256Slot: xref:utils.adoc#StorageSlot-Uint256Slot
  1084. :Strings: pass:normal[xref:utils.adoc#Strings[`Strings`]]
  1085. :xref-Strings: xref:utils.adoc#Strings
  1086. :Strings-toString: pass:normal[xref:utils.adoc#Strings-toString-uint256-[`Strings.toString`]]
  1087. :xref-Strings-toString-uint256-: xref:utils.adoc#Strings-toString-uint256-
  1088. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-uint256-[`Strings.toHexString`]]
  1089. :xref-Strings-toHexString-uint256-: xref:utils.adoc#Strings-toHexString-uint256-
  1090. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-uint256-uint256-[`Strings.toHexString`]]
  1091. :xref-Strings-toHexString-uint256-uint256-: xref:utils.adoc#Strings-toHexString-uint256-uint256-
  1092. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-address-[`Strings.toHexString`]]
  1093. :xref-Strings-toHexString-address-: xref:utils.adoc#Strings-toHexString-address-
  1094. :Timers: pass:normal[xref:utils.adoc#Timers[`Timers`]]
  1095. :xref-Timers: xref:utils.adoc#Timers
  1096. :Timers-getDeadline: pass:normal[xref:utils.adoc#Timers-getDeadline-struct-Timers-Timestamp-[`Timers.getDeadline`]]
  1097. :xref-Timers-getDeadline-struct-Timers-Timestamp-: xref:utils.adoc#Timers-getDeadline-struct-Timers-Timestamp-
  1098. :Timers-setDeadline: pass:normal[xref:utils.adoc#Timers-setDeadline-struct-Timers-Timestamp-uint64-[`Timers.setDeadline`]]
  1099. :xref-Timers-setDeadline-struct-Timers-Timestamp-uint64-: xref:utils.adoc#Timers-setDeadline-struct-Timers-Timestamp-uint64-
  1100. :Timers-reset: pass:normal[xref:utils.adoc#Timers-reset-struct-Timers-Timestamp-[`Timers.reset`]]
  1101. :xref-Timers-reset-struct-Timers-Timestamp-: xref:utils.adoc#Timers-reset-struct-Timers-Timestamp-
  1102. :Timers-isUnset: pass:normal[xref:utils.adoc#Timers-isUnset-struct-Timers-Timestamp-[`Timers.isUnset`]]
  1103. :xref-Timers-isUnset-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isUnset-struct-Timers-Timestamp-
  1104. :Timers-isStarted: pass:normal[xref:utils.adoc#Timers-isStarted-struct-Timers-Timestamp-[`Timers.isStarted`]]
  1105. :xref-Timers-isStarted-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isStarted-struct-Timers-Timestamp-
  1106. :Timers-isPending: pass:normal[xref:utils.adoc#Timers-isPending-struct-Timers-Timestamp-[`Timers.isPending`]]
  1107. :xref-Timers-isPending-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isPending-struct-Timers-Timestamp-
  1108. :Timers-isExpired: pass:normal[xref:utils.adoc#Timers-isExpired-struct-Timers-Timestamp-[`Timers.isExpired`]]
  1109. :xref-Timers-isExpired-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isExpired-struct-Timers-Timestamp-
  1110. :Timers-getDeadline: pass:normal[xref:utils.adoc#Timers-getDeadline-struct-Timers-BlockNumber-[`Timers.getDeadline`]]
  1111. :xref-Timers-getDeadline-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-getDeadline-struct-Timers-BlockNumber-
  1112. :Timers-setDeadline: pass:normal[xref:utils.adoc#Timers-setDeadline-struct-Timers-BlockNumber-uint64-[`Timers.setDeadline`]]
  1113. :xref-Timers-setDeadline-struct-Timers-BlockNumber-uint64-: xref:utils.adoc#Timers-setDeadline-struct-Timers-BlockNumber-uint64-
  1114. :Timers-reset: pass:normal[xref:utils.adoc#Timers-reset-struct-Timers-BlockNumber-[`Timers.reset`]]
  1115. :xref-Timers-reset-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-reset-struct-Timers-BlockNumber-
  1116. :Timers-isUnset: pass:normal[xref:utils.adoc#Timers-isUnset-struct-Timers-BlockNumber-[`Timers.isUnset`]]
  1117. :xref-Timers-isUnset-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isUnset-struct-Timers-BlockNumber-
  1118. :Timers-isStarted: pass:normal[xref:utils.adoc#Timers-isStarted-struct-Timers-BlockNumber-[`Timers.isStarted`]]
  1119. :xref-Timers-isStarted-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isStarted-struct-Timers-BlockNumber-
  1120. :Timers-isPending: pass:normal[xref:utils.adoc#Timers-isPending-struct-Timers-BlockNumber-[`Timers.isPending`]]
  1121. :xref-Timers-isPending-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isPending-struct-Timers-BlockNumber-
  1122. :Timers-isExpired: pass:normal[xref:utils.adoc#Timers-isExpired-struct-Timers-BlockNumber-[`Timers.isExpired`]]
  1123. :xref-Timers-isExpired-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isExpired-struct-Timers-BlockNumber-
  1124. :Timers-Timestamp: pass:normal[xref:utils.adoc#Timers-Timestamp[`Timers.Timestamp`]]
  1125. :xref-Timers-Timestamp: xref:utils.adoc#Timers-Timestamp
  1126. :Timers-BlockNumber: pass:normal[xref:utils.adoc#Timers-BlockNumber[`Timers.BlockNumber`]]
  1127. :xref-Timers-BlockNumber: xref:utils.adoc#Timers-BlockNumber
  1128. :ECDSA: pass:normal[xref:utils.adoc#ECDSA[`ECDSA`]]
  1129. :xref-ECDSA: xref:utils.adoc#ECDSA
  1130. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes-[`ECDSA.tryRecover`]]
  1131. :xref-ECDSA-tryRecover-bytes32-bytes-: xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes-
  1132. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-bytes-[`ECDSA.recover`]]
  1133. :xref-ECDSA-recover-bytes32-bytes-: xref:utils.adoc#ECDSA-recover-bytes32-bytes-
  1134. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes32-bytes32-[`ECDSA.tryRecover`]]
  1135. :xref-ECDSA-tryRecover-bytes32-bytes32-bytes32-: xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes32-bytes32-
  1136. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-bytes32-bytes32-[`ECDSA.recover`]]
  1137. :xref-ECDSA-recover-bytes32-bytes32-bytes32-: xref:utils.adoc#ECDSA-recover-bytes32-bytes32-bytes32-
  1138. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-[`ECDSA.tryRecover`]]
  1139. :xref-ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-: xref:utils.adoc#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-
  1140. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-uint8-bytes32-bytes32-[`ECDSA.recover`]]
  1141. :xref-ECDSA-recover-bytes32-uint8-bytes32-bytes32-: xref:utils.adoc#ECDSA-recover-bytes32-uint8-bytes32-bytes32-
  1142. :ECDSA-toEthSignedMessageHash: pass:normal[xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes32-[`ECDSA.toEthSignedMessageHash`]]
  1143. :xref-ECDSA-toEthSignedMessageHash-bytes32-: xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes32-
  1144. :ECDSA-toEthSignedMessageHash: pass:normal[xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes-[`ECDSA.toEthSignedMessageHash`]]
  1145. :xref-ECDSA-toEthSignedMessageHash-bytes-: xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes-
  1146. :ECDSA-toTypedDataHash: pass:normal[xref:utils.adoc#ECDSA-toTypedDataHash-bytes32-bytes32-[`ECDSA.toTypedDataHash`]]
  1147. :xref-ECDSA-toTypedDataHash-bytes32-bytes32-: xref:utils.adoc#ECDSA-toTypedDataHash-bytes32-bytes32-
  1148. :ECDSA-RecoverError: pass:normal[xref:utils.adoc#ECDSA-RecoverError[`ECDSA.RecoverError`]]
  1149. :xref-ECDSA-RecoverError: xref:utils.adoc#ECDSA-RecoverError
  1150. :MerkleProof: pass:normal[xref:utils.adoc#MerkleProof[`MerkleProof`]]
  1151. :xref-MerkleProof: xref:utils.adoc#MerkleProof
  1152. :MerkleProof-verify: pass:normal[xref:utils.adoc#MerkleProof-verify-bytes32---bytes32-bytes32-[`MerkleProof.verify`]]
  1153. :xref-MerkleProof-verify-bytes32---bytes32-bytes32-: xref:utils.adoc#MerkleProof-verify-bytes32---bytes32-bytes32-
  1154. :MerkleProof-verifyCalldata: pass:normal[xref:utils.adoc#MerkleProof-verifyCalldata-bytes32---bytes32-bytes32-[`MerkleProof.verifyCalldata`]]
  1155. :xref-MerkleProof-verifyCalldata-bytes32---bytes32-bytes32-: xref:utils.adoc#MerkleProof-verifyCalldata-bytes32---bytes32-bytes32-
  1156. :MerkleProof-processProof: pass:normal[xref:utils.adoc#MerkleProof-processProof-bytes32---bytes32-[`MerkleProof.processProof`]]
  1157. :xref-MerkleProof-processProof-bytes32---bytes32-: xref:utils.adoc#MerkleProof-processProof-bytes32---bytes32-
  1158. :MerkleProof-processProofCalldata: pass:normal[xref:utils.adoc#MerkleProof-processProofCalldata-bytes32---bytes32-[`MerkleProof.processProofCalldata`]]
  1159. :xref-MerkleProof-processProofCalldata-bytes32---bytes32-: xref:utils.adoc#MerkleProof-processProofCalldata-bytes32---bytes32-
  1160. :MerkleProof-multiProofVerify: pass:normal[xref:utils.adoc#MerkleProof-multiProofVerify-bytes32---bool---bytes32-bytes32---[`MerkleProof.multiProofVerify`]]
  1161. :xref-MerkleProof-multiProofVerify-bytes32---bool---bytes32-bytes32---: xref:utils.adoc#MerkleProof-multiProofVerify-bytes32---bool---bytes32-bytes32---
  1162. :MerkleProof-multiProofVerifyCalldata: pass:normal[xref:utils.adoc#MerkleProof-multiProofVerifyCalldata-bytes32---bool---bytes32-bytes32---[`MerkleProof.multiProofVerifyCalldata`]]
  1163. :xref-MerkleProof-multiProofVerifyCalldata-bytes32---bool---bytes32-bytes32---: xref:utils.adoc#MerkleProof-multiProofVerifyCalldata-bytes32---bool---bytes32-bytes32---
  1164. :MerkleProof-processMultiProof: pass:normal[xref:utils.adoc#MerkleProof-processMultiProof-bytes32---bool---bytes32---[`MerkleProof.processMultiProof`]]
  1165. :xref-MerkleProof-processMultiProof-bytes32---bool---bytes32---: xref:utils.adoc#MerkleProof-processMultiProof-bytes32---bool---bytes32---
  1166. :MerkleProof-processMultiProofCalldata: pass:normal[xref:utils.adoc#MerkleProof-processMultiProofCalldata-bytes32---bool---bytes32---[`MerkleProof.processMultiProofCalldata`]]
  1167. :xref-MerkleProof-processMultiProofCalldata-bytes32---bool---bytes32---: xref:utils.adoc#MerkleProof-processMultiProofCalldata-bytes32---bool---bytes32---
  1168. :SignatureChecker: pass:normal[xref:utils.adoc#SignatureChecker[`SignatureChecker`]]
  1169. :xref-SignatureChecker: xref:utils.adoc#SignatureChecker
  1170. :SignatureChecker-isValidSignatureNow: pass:normal[xref:utils.adoc#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-[`SignatureChecker.isValidSignatureNow`]]
  1171. :xref-SignatureChecker-isValidSignatureNow-address-bytes32-bytes-: xref:utils.adoc#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-
  1172. :EIP712: pass:normal[xref:utils.adoc#EIP712[`EIP712`]]
  1173. :xref-EIP712: xref:utils.adoc#EIP712
  1174. :EIP712-constructor: pass:normal[xref:utils.adoc#EIP712-constructor-string-string-[`EIP712.constructor`]]
  1175. :xref-EIP712-constructor-string-string-: xref:utils.adoc#EIP712-constructor-string-string-
  1176. :EIP712-_domainSeparatorV4: pass:normal[xref:utils.adoc#EIP712-_domainSeparatorV4--[`EIP712._domainSeparatorV4`]]
  1177. :xref-EIP712-_domainSeparatorV4--: xref:utils.adoc#EIP712-_domainSeparatorV4--
  1178. :EIP712-_hashTypedDataV4: pass:normal[xref:utils.adoc#EIP712-_hashTypedDataV4-bytes32-[`EIP712._hashTypedDataV4`]]
  1179. :xref-EIP712-_hashTypedDataV4-bytes32-: xref:utils.adoc#EIP712-_hashTypedDataV4-bytes32-
  1180. :ConditionalEscrow: pass:normal[xref:utils.adoc#ConditionalEscrow[`ConditionalEscrow`]]
  1181. :xref-ConditionalEscrow: xref:utils.adoc#ConditionalEscrow
  1182. :ConditionalEscrow-withdrawalAllowed: pass:normal[xref:utils.adoc#ConditionalEscrow-withdrawalAllowed-address-[`ConditionalEscrow.withdrawalAllowed`]]
  1183. :xref-ConditionalEscrow-withdrawalAllowed-address-: xref:utils.adoc#ConditionalEscrow-withdrawalAllowed-address-
  1184. :ConditionalEscrow-withdraw: pass:normal[xref:utils.adoc#ConditionalEscrow-withdraw-address-payable-[`ConditionalEscrow.withdraw`]]
  1185. :xref-ConditionalEscrow-withdraw-address-payable-: xref:utils.adoc#ConditionalEscrow-withdraw-address-payable-
  1186. :Escrow: pass:normal[xref:utils.adoc#Escrow[`Escrow`]]
  1187. :xref-Escrow: xref:utils.adoc#Escrow
  1188. :Escrow-depositsOf: pass:normal[xref:utils.adoc#Escrow-depositsOf-address-[`Escrow.depositsOf`]]
  1189. :xref-Escrow-depositsOf-address-: xref:utils.adoc#Escrow-depositsOf-address-
  1190. :Escrow-deposit: pass:normal[xref:utils.adoc#Escrow-deposit-address-[`Escrow.deposit`]]
  1191. :xref-Escrow-deposit-address-: xref:utils.adoc#Escrow-deposit-address-
  1192. :Escrow-withdraw: pass:normal[xref:utils.adoc#Escrow-withdraw-address-payable-[`Escrow.withdraw`]]
  1193. :xref-Escrow-withdraw-address-payable-: xref:utils.adoc#Escrow-withdraw-address-payable-
  1194. :Escrow-Deposited: pass:normal[xref:utils.adoc#Escrow-Deposited-address-uint256-[`Escrow.Deposited`]]
  1195. :xref-Escrow-Deposited-address-uint256-: xref:utils.adoc#Escrow-Deposited-address-uint256-
  1196. :Escrow-Withdrawn: pass:normal[xref:utils.adoc#Escrow-Withdrawn-address-uint256-[`Escrow.Withdrawn`]]
  1197. :xref-Escrow-Withdrawn-address-uint256-: xref:utils.adoc#Escrow-Withdrawn-address-uint256-
  1198. :RefundEscrow: pass:normal[xref:utils.adoc#RefundEscrow[`RefundEscrow`]]
  1199. :xref-RefundEscrow: xref:utils.adoc#RefundEscrow
  1200. :RefundEscrow-constructor: pass:normal[xref:utils.adoc#RefundEscrow-constructor-address-payable-[`RefundEscrow.constructor`]]
  1201. :xref-RefundEscrow-constructor-address-payable-: xref:utils.adoc#RefundEscrow-constructor-address-payable-
  1202. :RefundEscrow-state: pass:normal[xref:utils.adoc#RefundEscrow-state--[`RefundEscrow.state`]]
  1203. :xref-RefundEscrow-state--: xref:utils.adoc#RefundEscrow-state--
  1204. :RefundEscrow-beneficiary: pass:normal[xref:utils.adoc#RefundEscrow-beneficiary--[`RefundEscrow.beneficiary`]]
  1205. :xref-RefundEscrow-beneficiary--: xref:utils.adoc#RefundEscrow-beneficiary--
  1206. :RefundEscrow-deposit: pass:normal[xref:utils.adoc#RefundEscrow-deposit-address-[`RefundEscrow.deposit`]]
  1207. :xref-RefundEscrow-deposit-address-: xref:utils.adoc#RefundEscrow-deposit-address-
  1208. :RefundEscrow-close: pass:normal[xref:utils.adoc#RefundEscrow-close--[`RefundEscrow.close`]]
  1209. :xref-RefundEscrow-close--: xref:utils.adoc#RefundEscrow-close--
  1210. :RefundEscrow-enableRefunds: pass:normal[xref:utils.adoc#RefundEscrow-enableRefunds--[`RefundEscrow.enableRefunds`]]
  1211. :xref-RefundEscrow-enableRefunds--: xref:utils.adoc#RefundEscrow-enableRefunds--
  1212. :RefundEscrow-beneficiaryWithdraw: pass:normal[xref:utils.adoc#RefundEscrow-beneficiaryWithdraw--[`RefundEscrow.beneficiaryWithdraw`]]
  1213. :xref-RefundEscrow-beneficiaryWithdraw--: xref:utils.adoc#RefundEscrow-beneficiaryWithdraw--
  1214. :RefundEscrow-withdrawalAllowed: pass:normal[xref:utils.adoc#RefundEscrow-withdrawalAllowed-address-[`RefundEscrow.withdrawalAllowed`]]
  1215. :xref-RefundEscrow-withdrawalAllowed-address-: xref:utils.adoc#RefundEscrow-withdrawalAllowed-address-
  1216. :RefundEscrow-RefundsClosed: pass:normal[xref:utils.adoc#RefundEscrow-RefundsClosed--[`RefundEscrow.RefundsClosed`]]
  1217. :xref-RefundEscrow-RefundsClosed--: xref:utils.adoc#RefundEscrow-RefundsClosed--
  1218. :RefundEscrow-RefundsEnabled: pass:normal[xref:utils.adoc#RefundEscrow-RefundsEnabled--[`RefundEscrow.RefundsEnabled`]]
  1219. :xref-RefundEscrow-RefundsEnabled--: xref:utils.adoc#RefundEscrow-RefundsEnabled--
  1220. :RefundEscrow-State: pass:normal[xref:utils.adoc#RefundEscrow-State[`RefundEscrow.State`]]
  1221. :xref-RefundEscrow-State: xref:utils.adoc#RefundEscrow-State
  1222. :ERC165: pass:normal[xref:utils.adoc#ERC165[`ERC165`]]
  1223. :xref-ERC165: xref:utils.adoc#ERC165
  1224. :ERC165-supportsInterface: pass:normal[xref:utils.adoc#ERC165-supportsInterface-bytes4-[`ERC165.supportsInterface`]]
  1225. :xref-ERC165-supportsInterface-bytes4-: xref:utils.adoc#ERC165-supportsInterface-bytes4-
  1226. :ERC165Checker: pass:normal[xref:utils.adoc#ERC165Checker[`ERC165Checker`]]
  1227. :xref-ERC165Checker: xref:utils.adoc#ERC165Checker
  1228. :ERC165Checker-supportsERC165: pass:normal[xref:utils.adoc#ERC165Checker-supportsERC165-address-[`ERC165Checker.supportsERC165`]]
  1229. :xref-ERC165Checker-supportsERC165-address-: xref:utils.adoc#ERC165Checker-supportsERC165-address-
  1230. :ERC165Checker-supportsInterface: pass:normal[xref:utils.adoc#ERC165Checker-supportsInterface-address-bytes4-[`ERC165Checker.supportsInterface`]]
  1231. :xref-ERC165Checker-supportsInterface-address-bytes4-: xref:utils.adoc#ERC165Checker-supportsInterface-address-bytes4-
  1232. :ERC165Checker-getSupportedInterfaces: pass:normal[xref:utils.adoc#ERC165Checker-getSupportedInterfaces-address-bytes4---[`ERC165Checker.getSupportedInterfaces`]]
  1233. :xref-ERC165Checker-getSupportedInterfaces-address-bytes4---: xref:utils.adoc#ERC165Checker-getSupportedInterfaces-address-bytes4---
  1234. :ERC165Checker-supportsAllInterfaces: pass:normal[xref:utils.adoc#ERC165Checker-supportsAllInterfaces-address-bytes4---[`ERC165Checker.supportsAllInterfaces`]]
  1235. :xref-ERC165Checker-supportsAllInterfaces-address-bytes4---: xref:utils.adoc#ERC165Checker-supportsAllInterfaces-address-bytes4---
  1236. :ERC165Storage: pass:normal[xref:utils.adoc#ERC165Storage[`ERC165Storage`]]
  1237. :xref-ERC165Storage: xref:utils.adoc#ERC165Storage
  1238. :ERC165Storage-supportsInterface: pass:normal[xref:utils.adoc#ERC165Storage-supportsInterface-bytes4-[`ERC165Storage.supportsInterface`]]
  1239. :xref-ERC165Storage-supportsInterface-bytes4-: xref:utils.adoc#ERC165Storage-supportsInterface-bytes4-
  1240. :ERC165Storage-_registerInterface: pass:normal[xref:utils.adoc#ERC165Storage-_registerInterface-bytes4-[`ERC165Storage._registerInterface`]]
  1241. :xref-ERC165Storage-_registerInterface-bytes4-: xref:utils.adoc#ERC165Storage-_registerInterface-bytes4-
  1242. :ERC1820Implementer: pass:normal[xref:utils.adoc#ERC1820Implementer[`ERC1820Implementer`]]
  1243. :xref-ERC1820Implementer: xref:utils.adoc#ERC1820Implementer
  1244. :ERC1820Implementer-canImplementInterfaceForAddress: pass:normal[xref:utils.adoc#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`ERC1820Implementer.canImplementInterfaceForAddress`]]
  1245. :xref-ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-: xref:utils.adoc#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-
  1246. :ERC1820Implementer-_registerInterfaceForAddress: pass:normal[xref:utils.adoc#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-[`ERC1820Implementer._registerInterfaceForAddress`]]
  1247. :xref-ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-: xref:utils.adoc#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-
  1248. :IERC165: pass:normal[xref:utils.adoc#IERC165[`IERC165`]]
  1249. :xref-IERC165: xref:utils.adoc#IERC165
  1250. :IERC165-supportsInterface: pass:normal[xref:utils.adoc#IERC165-supportsInterface-bytes4-[`IERC165.supportsInterface`]]
  1251. :xref-IERC165-supportsInterface-bytes4-: xref:utils.adoc#IERC165-supportsInterface-bytes4-
  1252. :IERC1820Implementer: pass:normal[xref:utils.adoc#IERC1820Implementer[`IERC1820Implementer`]]
  1253. :xref-IERC1820Implementer: xref:utils.adoc#IERC1820Implementer
  1254. :IERC1820Implementer-canImplementInterfaceForAddress: pass:normal[xref:utils.adoc#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`IERC1820Implementer.canImplementInterfaceForAddress`]]
  1255. :xref-IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-: xref:utils.adoc#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-
  1256. :IERC1820Registry: pass:normal[xref:utils.adoc#IERC1820Registry[`IERC1820Registry`]]
  1257. :xref-IERC1820Registry: xref:utils.adoc#IERC1820Registry
  1258. :IERC1820Registry-setManager: pass:normal[xref:utils.adoc#IERC1820Registry-setManager-address-address-[`IERC1820Registry.setManager`]]
  1259. :xref-IERC1820Registry-setManager-address-address-: xref:utils.adoc#IERC1820Registry-setManager-address-address-
  1260. :IERC1820Registry-getManager: pass:normal[xref:utils.adoc#IERC1820Registry-getManager-address-[`IERC1820Registry.getManager`]]
  1261. :xref-IERC1820Registry-getManager-address-: xref:utils.adoc#IERC1820Registry-getManager-address-
  1262. :IERC1820Registry-setInterfaceImplementer: pass:normal[xref:utils.adoc#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-[`IERC1820Registry.setInterfaceImplementer`]]
  1263. :xref-IERC1820Registry-setInterfaceImplementer-address-bytes32-address-: xref:utils.adoc#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-
  1264. :IERC1820Registry-getInterfaceImplementer: pass:normal[xref:utils.adoc#IERC1820Registry-getInterfaceImplementer-address-bytes32-[`IERC1820Registry.getInterfaceImplementer`]]
  1265. :xref-IERC1820Registry-getInterfaceImplementer-address-bytes32-: xref:utils.adoc#IERC1820Registry-getInterfaceImplementer-address-bytes32-
  1266. :IERC1820Registry-interfaceHash: pass:normal[xref:utils.adoc#IERC1820Registry-interfaceHash-string-[`IERC1820Registry.interfaceHash`]]
  1267. :xref-IERC1820Registry-interfaceHash-string-: xref:utils.adoc#IERC1820Registry-interfaceHash-string-
  1268. :IERC1820Registry-updateERC165Cache: pass:normal[xref:utils.adoc#IERC1820Registry-updateERC165Cache-address-bytes4-[`IERC1820Registry.updateERC165Cache`]]
  1269. :xref-IERC1820Registry-updateERC165Cache-address-bytes4-: xref:utils.adoc#IERC1820Registry-updateERC165Cache-address-bytes4-
  1270. :IERC1820Registry-implementsERC165Interface: pass:normal[xref:utils.adoc#IERC1820Registry-implementsERC165Interface-address-bytes4-[`IERC1820Registry.implementsERC165Interface`]]
  1271. :xref-IERC1820Registry-implementsERC165Interface-address-bytes4-: xref:utils.adoc#IERC1820Registry-implementsERC165Interface-address-bytes4-
  1272. :IERC1820Registry-implementsERC165InterfaceNoCache: pass:normal[xref:utils.adoc#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-[`IERC1820Registry.implementsERC165InterfaceNoCache`]]
  1273. :xref-IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-: xref:utils.adoc#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-
  1274. :IERC1820Registry-InterfaceImplementerSet: pass:normal[xref:utils.adoc#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-[`IERC1820Registry.InterfaceImplementerSet`]]
  1275. :xref-IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-: xref:utils.adoc#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-
  1276. :IERC1820Registry-ManagerChanged: pass:normal[xref:utils.adoc#IERC1820Registry-ManagerChanged-address-address-[`IERC1820Registry.ManagerChanged`]]
  1277. :xref-IERC1820Registry-ManagerChanged-address-address-: xref:utils.adoc#IERC1820Registry-ManagerChanged-address-address-
  1278. :Math: pass:normal[xref:utils.adoc#Math[`Math`]]
  1279. :xref-Math: xref:utils.adoc#Math
  1280. :Math-max: pass:normal[xref:utils.adoc#Math-max-uint256-uint256-[`Math.max`]]
  1281. :xref-Math-max-uint256-uint256-: xref:utils.adoc#Math-max-uint256-uint256-
  1282. :Math-min: pass:normal[xref:utils.adoc#Math-min-uint256-uint256-[`Math.min`]]
  1283. :xref-Math-min-uint256-uint256-: xref:utils.adoc#Math-min-uint256-uint256-
  1284. :Math-average: pass:normal[xref:utils.adoc#Math-average-uint256-uint256-[`Math.average`]]
  1285. :xref-Math-average-uint256-uint256-: xref:utils.adoc#Math-average-uint256-uint256-
  1286. :Math-ceilDiv: pass:normal[xref:utils.adoc#Math-ceilDiv-uint256-uint256-[`Math.ceilDiv`]]
  1287. :xref-Math-ceilDiv-uint256-uint256-: xref:utils.adoc#Math-ceilDiv-uint256-uint256-
  1288. :Math-mulDiv: pass:normal[xref:utils.adoc#Math-mulDiv-uint256-uint256-uint256-[`Math.mulDiv`]]
  1289. :xref-Math-mulDiv-uint256-uint256-uint256-: xref:utils.adoc#Math-mulDiv-uint256-uint256-uint256-
  1290. :Math-mulDiv: pass:normal[xref:utils.adoc#Math-mulDiv-uint256-uint256-uint256-enum-Math-Rounding-[`Math.mulDiv`]]
  1291. :xref-Math-mulDiv-uint256-uint256-uint256-enum-Math-Rounding-: xref:utils.adoc#Math-mulDiv-uint256-uint256-uint256-enum-Math-Rounding-
  1292. :Math-sqrt: pass:normal[xref:utils.adoc#Math-sqrt-uint256-[`Math.sqrt`]]
  1293. :xref-Math-sqrt-uint256-: xref:utils.adoc#Math-sqrt-uint256-
  1294. :Math-sqrt: pass:normal[xref:utils.adoc#Math-sqrt-uint256-enum-Math-Rounding-[`Math.sqrt`]]
  1295. :xref-Math-sqrt-uint256-enum-Math-Rounding-: xref:utils.adoc#Math-sqrt-uint256-enum-Math-Rounding-
  1296. :Math-Rounding: pass:normal[xref:utils.adoc#Math-Rounding[`Math.Rounding`]]
  1297. :xref-Math-Rounding: xref:utils.adoc#Math-Rounding
  1298. :SafeCast: pass:normal[xref:utils.adoc#SafeCast[`SafeCast`]]
  1299. :xref-SafeCast: xref:utils.adoc#SafeCast
  1300. :SafeCast-toUint248: pass:normal[xref:utils.adoc#SafeCast-toUint248-uint256-[`SafeCast.toUint248`]]
  1301. :xref-SafeCast-toUint248-uint256-: xref:utils.adoc#SafeCast-toUint248-uint256-
  1302. :SafeCast-toUint240: pass:normal[xref:utils.adoc#SafeCast-toUint240-uint256-[`SafeCast.toUint240`]]
  1303. :xref-SafeCast-toUint240-uint256-: xref:utils.adoc#SafeCast-toUint240-uint256-
  1304. :SafeCast-toUint232: pass:normal[xref:utils.adoc#SafeCast-toUint232-uint256-[`SafeCast.toUint232`]]
  1305. :xref-SafeCast-toUint232-uint256-: xref:utils.adoc#SafeCast-toUint232-uint256-
  1306. :SafeCast-toUint224: pass:normal[xref:utils.adoc#SafeCast-toUint224-uint256-[`SafeCast.toUint224`]]
  1307. :xref-SafeCast-toUint224-uint256-: xref:utils.adoc#SafeCast-toUint224-uint256-
  1308. :SafeCast-toUint216: pass:normal[xref:utils.adoc#SafeCast-toUint216-uint256-[`SafeCast.toUint216`]]
  1309. :xref-SafeCast-toUint216-uint256-: xref:utils.adoc#SafeCast-toUint216-uint256-
  1310. :SafeCast-toUint208: pass:normal[xref:utils.adoc#SafeCast-toUint208-uint256-[`SafeCast.toUint208`]]
  1311. :xref-SafeCast-toUint208-uint256-: xref:utils.adoc#SafeCast-toUint208-uint256-
  1312. :SafeCast-toUint200: pass:normal[xref:utils.adoc#SafeCast-toUint200-uint256-[`SafeCast.toUint200`]]
  1313. :xref-SafeCast-toUint200-uint256-: xref:utils.adoc#SafeCast-toUint200-uint256-
  1314. :SafeCast-toUint192: pass:normal[xref:utils.adoc#SafeCast-toUint192-uint256-[`SafeCast.toUint192`]]
  1315. :xref-SafeCast-toUint192-uint256-: xref:utils.adoc#SafeCast-toUint192-uint256-
  1316. :SafeCast-toUint184: pass:normal[xref:utils.adoc#SafeCast-toUint184-uint256-[`SafeCast.toUint184`]]
  1317. :xref-SafeCast-toUint184-uint256-: xref:utils.adoc#SafeCast-toUint184-uint256-
  1318. :SafeCast-toUint176: pass:normal[xref:utils.adoc#SafeCast-toUint176-uint256-[`SafeCast.toUint176`]]
  1319. :xref-SafeCast-toUint176-uint256-: xref:utils.adoc#SafeCast-toUint176-uint256-
  1320. :SafeCast-toUint168: pass:normal[xref:utils.adoc#SafeCast-toUint168-uint256-[`SafeCast.toUint168`]]
  1321. :xref-SafeCast-toUint168-uint256-: xref:utils.adoc#SafeCast-toUint168-uint256-
  1322. :SafeCast-toUint160: pass:normal[xref:utils.adoc#SafeCast-toUint160-uint256-[`SafeCast.toUint160`]]
  1323. :xref-SafeCast-toUint160-uint256-: xref:utils.adoc#SafeCast-toUint160-uint256-
  1324. :SafeCast-toUint152: pass:normal[xref:utils.adoc#SafeCast-toUint152-uint256-[`SafeCast.toUint152`]]
  1325. :xref-SafeCast-toUint152-uint256-: xref:utils.adoc#SafeCast-toUint152-uint256-
  1326. :SafeCast-toUint144: pass:normal[xref:utils.adoc#SafeCast-toUint144-uint256-[`SafeCast.toUint144`]]
  1327. :xref-SafeCast-toUint144-uint256-: xref:utils.adoc#SafeCast-toUint144-uint256-
  1328. :SafeCast-toUint136: pass:normal[xref:utils.adoc#SafeCast-toUint136-uint256-[`SafeCast.toUint136`]]
  1329. :xref-SafeCast-toUint136-uint256-: xref:utils.adoc#SafeCast-toUint136-uint256-
  1330. :SafeCast-toUint128: pass:normal[xref:utils.adoc#SafeCast-toUint128-uint256-[`SafeCast.toUint128`]]
  1331. :xref-SafeCast-toUint128-uint256-: xref:utils.adoc#SafeCast-toUint128-uint256-
  1332. :SafeCast-toUint120: pass:normal[xref:utils.adoc#SafeCast-toUint120-uint256-[`SafeCast.toUint120`]]
  1333. :xref-SafeCast-toUint120-uint256-: xref:utils.adoc#SafeCast-toUint120-uint256-
  1334. :SafeCast-toUint112: pass:normal[xref:utils.adoc#SafeCast-toUint112-uint256-[`SafeCast.toUint112`]]
  1335. :xref-SafeCast-toUint112-uint256-: xref:utils.adoc#SafeCast-toUint112-uint256-
  1336. :SafeCast-toUint104: pass:normal[xref:utils.adoc#SafeCast-toUint104-uint256-[`SafeCast.toUint104`]]
  1337. :xref-SafeCast-toUint104-uint256-: xref:utils.adoc#SafeCast-toUint104-uint256-
  1338. :SafeCast-toUint96: pass:normal[xref:utils.adoc#SafeCast-toUint96-uint256-[`SafeCast.toUint96`]]
  1339. :xref-SafeCast-toUint96-uint256-: xref:utils.adoc#SafeCast-toUint96-uint256-
  1340. :SafeCast-toUint88: pass:normal[xref:utils.adoc#SafeCast-toUint88-uint256-[`SafeCast.toUint88`]]
  1341. :xref-SafeCast-toUint88-uint256-: xref:utils.adoc#SafeCast-toUint88-uint256-
  1342. :SafeCast-toUint80: pass:normal[xref:utils.adoc#SafeCast-toUint80-uint256-[`SafeCast.toUint80`]]
  1343. :xref-SafeCast-toUint80-uint256-: xref:utils.adoc#SafeCast-toUint80-uint256-
  1344. :SafeCast-toUint72: pass:normal[xref:utils.adoc#SafeCast-toUint72-uint256-[`SafeCast.toUint72`]]
  1345. :xref-SafeCast-toUint72-uint256-: xref:utils.adoc#SafeCast-toUint72-uint256-
  1346. :SafeCast-toUint64: pass:normal[xref:utils.adoc#SafeCast-toUint64-uint256-[`SafeCast.toUint64`]]
  1347. :xref-SafeCast-toUint64-uint256-: xref:utils.adoc#SafeCast-toUint64-uint256-
  1348. :SafeCast-toUint56: pass:normal[xref:utils.adoc#SafeCast-toUint56-uint256-[`SafeCast.toUint56`]]
  1349. :xref-SafeCast-toUint56-uint256-: xref:utils.adoc#SafeCast-toUint56-uint256-
  1350. :SafeCast-toUint48: pass:normal[xref:utils.adoc#SafeCast-toUint48-uint256-[`SafeCast.toUint48`]]
  1351. :xref-SafeCast-toUint48-uint256-: xref:utils.adoc#SafeCast-toUint48-uint256-
  1352. :SafeCast-toUint40: pass:normal[xref:utils.adoc#SafeCast-toUint40-uint256-[`SafeCast.toUint40`]]
  1353. :xref-SafeCast-toUint40-uint256-: xref:utils.adoc#SafeCast-toUint40-uint256-
  1354. :SafeCast-toUint32: pass:normal[xref:utils.adoc#SafeCast-toUint32-uint256-[`SafeCast.toUint32`]]
  1355. :xref-SafeCast-toUint32-uint256-: xref:utils.adoc#SafeCast-toUint32-uint256-
  1356. :SafeCast-toUint24: pass:normal[xref:utils.adoc#SafeCast-toUint24-uint256-[`SafeCast.toUint24`]]
  1357. :xref-SafeCast-toUint24-uint256-: xref:utils.adoc#SafeCast-toUint24-uint256-
  1358. :SafeCast-toUint16: pass:normal[xref:utils.adoc#SafeCast-toUint16-uint256-[`SafeCast.toUint16`]]
  1359. :xref-SafeCast-toUint16-uint256-: xref:utils.adoc#SafeCast-toUint16-uint256-
  1360. :SafeCast-toUint8: pass:normal[xref:utils.adoc#SafeCast-toUint8-uint256-[`SafeCast.toUint8`]]
  1361. :xref-SafeCast-toUint8-uint256-: xref:utils.adoc#SafeCast-toUint8-uint256-
  1362. :SafeCast-toUint256: pass:normal[xref:utils.adoc#SafeCast-toUint256-int256-[`SafeCast.toUint256`]]
  1363. :xref-SafeCast-toUint256-int256-: xref:utils.adoc#SafeCast-toUint256-int256-
  1364. :SafeCast-toInt248: pass:normal[xref:utils.adoc#SafeCast-toInt248-int256-[`SafeCast.toInt248`]]
  1365. :xref-SafeCast-toInt248-int256-: xref:utils.adoc#SafeCast-toInt248-int256-
  1366. :SafeCast-toInt240: pass:normal[xref:utils.adoc#SafeCast-toInt240-int256-[`SafeCast.toInt240`]]
  1367. :xref-SafeCast-toInt240-int256-: xref:utils.adoc#SafeCast-toInt240-int256-
  1368. :SafeCast-toInt232: pass:normal[xref:utils.adoc#SafeCast-toInt232-int256-[`SafeCast.toInt232`]]
  1369. :xref-SafeCast-toInt232-int256-: xref:utils.adoc#SafeCast-toInt232-int256-
  1370. :SafeCast-toInt224: pass:normal[xref:utils.adoc#SafeCast-toInt224-int256-[`SafeCast.toInt224`]]
  1371. :xref-SafeCast-toInt224-int256-: xref:utils.adoc#SafeCast-toInt224-int256-
  1372. :SafeCast-toInt216: pass:normal[xref:utils.adoc#SafeCast-toInt216-int256-[`SafeCast.toInt216`]]
  1373. :xref-SafeCast-toInt216-int256-: xref:utils.adoc#SafeCast-toInt216-int256-
  1374. :SafeCast-toInt208: pass:normal[xref:utils.adoc#SafeCast-toInt208-int256-[`SafeCast.toInt208`]]
  1375. :xref-SafeCast-toInt208-int256-: xref:utils.adoc#SafeCast-toInt208-int256-
  1376. :SafeCast-toInt200: pass:normal[xref:utils.adoc#SafeCast-toInt200-int256-[`SafeCast.toInt200`]]
  1377. :xref-SafeCast-toInt200-int256-: xref:utils.adoc#SafeCast-toInt200-int256-
  1378. :SafeCast-toInt192: pass:normal[xref:utils.adoc#SafeCast-toInt192-int256-[`SafeCast.toInt192`]]
  1379. :xref-SafeCast-toInt192-int256-: xref:utils.adoc#SafeCast-toInt192-int256-
  1380. :SafeCast-toInt184: pass:normal[xref:utils.adoc#SafeCast-toInt184-int256-[`SafeCast.toInt184`]]
  1381. :xref-SafeCast-toInt184-int256-: xref:utils.adoc#SafeCast-toInt184-int256-
  1382. :SafeCast-toInt176: pass:normal[xref:utils.adoc#SafeCast-toInt176-int256-[`SafeCast.toInt176`]]
  1383. :xref-SafeCast-toInt176-int256-: xref:utils.adoc#SafeCast-toInt176-int256-
  1384. :SafeCast-toInt168: pass:normal[xref:utils.adoc#SafeCast-toInt168-int256-[`SafeCast.toInt168`]]
  1385. :xref-SafeCast-toInt168-int256-: xref:utils.adoc#SafeCast-toInt168-int256-
  1386. :SafeCast-toInt160: pass:normal[xref:utils.adoc#SafeCast-toInt160-int256-[`SafeCast.toInt160`]]
  1387. :xref-SafeCast-toInt160-int256-: xref:utils.adoc#SafeCast-toInt160-int256-
  1388. :SafeCast-toInt152: pass:normal[xref:utils.adoc#SafeCast-toInt152-int256-[`SafeCast.toInt152`]]
  1389. :xref-SafeCast-toInt152-int256-: xref:utils.adoc#SafeCast-toInt152-int256-
  1390. :SafeCast-toInt144: pass:normal[xref:utils.adoc#SafeCast-toInt144-int256-[`SafeCast.toInt144`]]
  1391. :xref-SafeCast-toInt144-int256-: xref:utils.adoc#SafeCast-toInt144-int256-
  1392. :SafeCast-toInt136: pass:normal[xref:utils.adoc#SafeCast-toInt136-int256-[`SafeCast.toInt136`]]
  1393. :xref-SafeCast-toInt136-int256-: xref:utils.adoc#SafeCast-toInt136-int256-
  1394. :SafeCast-toInt128: pass:normal[xref:utils.adoc#SafeCast-toInt128-int256-[`SafeCast.toInt128`]]
  1395. :xref-SafeCast-toInt128-int256-: xref:utils.adoc#SafeCast-toInt128-int256-
  1396. :SafeCast-toInt120: pass:normal[xref:utils.adoc#SafeCast-toInt120-int256-[`SafeCast.toInt120`]]
  1397. :xref-SafeCast-toInt120-int256-: xref:utils.adoc#SafeCast-toInt120-int256-
  1398. :SafeCast-toInt112: pass:normal[xref:utils.adoc#SafeCast-toInt112-int256-[`SafeCast.toInt112`]]
  1399. :xref-SafeCast-toInt112-int256-: xref:utils.adoc#SafeCast-toInt112-int256-
  1400. :SafeCast-toInt104: pass:normal[xref:utils.adoc#SafeCast-toInt104-int256-[`SafeCast.toInt104`]]
  1401. :xref-SafeCast-toInt104-int256-: xref:utils.adoc#SafeCast-toInt104-int256-
  1402. :SafeCast-toInt96: pass:normal[xref:utils.adoc#SafeCast-toInt96-int256-[`SafeCast.toInt96`]]
  1403. :xref-SafeCast-toInt96-int256-: xref:utils.adoc#SafeCast-toInt96-int256-
  1404. :SafeCast-toInt88: pass:normal[xref:utils.adoc#SafeCast-toInt88-int256-[`SafeCast.toInt88`]]
  1405. :xref-SafeCast-toInt88-int256-: xref:utils.adoc#SafeCast-toInt88-int256-
  1406. :SafeCast-toInt80: pass:normal[xref:utils.adoc#SafeCast-toInt80-int256-[`SafeCast.toInt80`]]
  1407. :xref-SafeCast-toInt80-int256-: xref:utils.adoc#SafeCast-toInt80-int256-
  1408. :SafeCast-toInt72: pass:normal[xref:utils.adoc#SafeCast-toInt72-int256-[`SafeCast.toInt72`]]
  1409. :xref-SafeCast-toInt72-int256-: xref:utils.adoc#SafeCast-toInt72-int256-
  1410. :SafeCast-toInt64: pass:normal[xref:utils.adoc#SafeCast-toInt64-int256-[`SafeCast.toInt64`]]
  1411. :xref-SafeCast-toInt64-int256-: xref:utils.adoc#SafeCast-toInt64-int256-
  1412. :SafeCast-toInt56: pass:normal[xref:utils.adoc#SafeCast-toInt56-int256-[`SafeCast.toInt56`]]
  1413. :xref-SafeCast-toInt56-int256-: xref:utils.adoc#SafeCast-toInt56-int256-
  1414. :SafeCast-toInt48: pass:normal[xref:utils.adoc#SafeCast-toInt48-int256-[`SafeCast.toInt48`]]
  1415. :xref-SafeCast-toInt48-int256-: xref:utils.adoc#SafeCast-toInt48-int256-
  1416. :SafeCast-toInt40: pass:normal[xref:utils.adoc#SafeCast-toInt40-int256-[`SafeCast.toInt40`]]
  1417. :xref-SafeCast-toInt40-int256-: xref:utils.adoc#SafeCast-toInt40-int256-
  1418. :SafeCast-toInt32: pass:normal[xref:utils.adoc#SafeCast-toInt32-int256-[`SafeCast.toInt32`]]
  1419. :xref-SafeCast-toInt32-int256-: xref:utils.adoc#SafeCast-toInt32-int256-
  1420. :SafeCast-toInt24: pass:normal[xref:utils.adoc#SafeCast-toInt24-int256-[`SafeCast.toInt24`]]
  1421. :xref-SafeCast-toInt24-int256-: xref:utils.adoc#SafeCast-toInt24-int256-
  1422. :SafeCast-toInt16: pass:normal[xref:utils.adoc#SafeCast-toInt16-int256-[`SafeCast.toInt16`]]
  1423. :xref-SafeCast-toInt16-int256-: xref:utils.adoc#SafeCast-toInt16-int256-
  1424. :SafeCast-toInt8: pass:normal[xref:utils.adoc#SafeCast-toInt8-int256-[`SafeCast.toInt8`]]
  1425. :xref-SafeCast-toInt8-int256-: xref:utils.adoc#SafeCast-toInt8-int256-
  1426. :SafeCast-toInt256: pass:normal[xref:utils.adoc#SafeCast-toInt256-uint256-[`SafeCast.toInt256`]]
  1427. :xref-SafeCast-toInt256-uint256-: xref:utils.adoc#SafeCast-toInt256-uint256-
  1428. :SafeMath: pass:normal[xref:utils.adoc#SafeMath[`SafeMath`]]
  1429. :xref-SafeMath: xref:utils.adoc#SafeMath
  1430. :SafeMath-tryAdd: pass:normal[xref:utils.adoc#SafeMath-tryAdd-uint256-uint256-[`SafeMath.tryAdd`]]
  1431. :xref-SafeMath-tryAdd-uint256-uint256-: xref:utils.adoc#SafeMath-tryAdd-uint256-uint256-
  1432. :SafeMath-trySub: pass:normal[xref:utils.adoc#SafeMath-trySub-uint256-uint256-[`SafeMath.trySub`]]
  1433. :xref-SafeMath-trySub-uint256-uint256-: xref:utils.adoc#SafeMath-trySub-uint256-uint256-
  1434. :SafeMath-tryMul: pass:normal[xref:utils.adoc#SafeMath-tryMul-uint256-uint256-[`SafeMath.tryMul`]]
  1435. :xref-SafeMath-tryMul-uint256-uint256-: xref:utils.adoc#SafeMath-tryMul-uint256-uint256-
  1436. :SafeMath-tryDiv: pass:normal[xref:utils.adoc#SafeMath-tryDiv-uint256-uint256-[`SafeMath.tryDiv`]]
  1437. :xref-SafeMath-tryDiv-uint256-uint256-: xref:utils.adoc#SafeMath-tryDiv-uint256-uint256-
  1438. :SafeMath-tryMod: pass:normal[xref:utils.adoc#SafeMath-tryMod-uint256-uint256-[`SafeMath.tryMod`]]
  1439. :xref-SafeMath-tryMod-uint256-uint256-: xref:utils.adoc#SafeMath-tryMod-uint256-uint256-
  1440. :SafeMath-add: pass:normal[xref:utils.adoc#SafeMath-add-uint256-uint256-[`SafeMath.add`]]
  1441. :xref-SafeMath-add-uint256-uint256-: xref:utils.adoc#SafeMath-add-uint256-uint256-
  1442. :SafeMath-sub: pass:normal[xref:utils.adoc#SafeMath-sub-uint256-uint256-[`SafeMath.sub`]]
  1443. :xref-SafeMath-sub-uint256-uint256-: xref:utils.adoc#SafeMath-sub-uint256-uint256-
  1444. :SafeMath-mul: pass:normal[xref:utils.adoc#SafeMath-mul-uint256-uint256-[`SafeMath.mul`]]
  1445. :xref-SafeMath-mul-uint256-uint256-: xref:utils.adoc#SafeMath-mul-uint256-uint256-
  1446. :SafeMath-div: pass:normal[xref:utils.adoc#SafeMath-div-uint256-uint256-[`SafeMath.div`]]
  1447. :xref-SafeMath-div-uint256-uint256-: xref:utils.adoc#SafeMath-div-uint256-uint256-
  1448. :SafeMath-mod: pass:normal[xref:utils.adoc#SafeMath-mod-uint256-uint256-[`SafeMath.mod`]]
  1449. :xref-SafeMath-mod-uint256-uint256-: xref:utils.adoc#SafeMath-mod-uint256-uint256-
  1450. :SafeMath-sub: pass:normal[xref:utils.adoc#SafeMath-sub-uint256-uint256-string-[`SafeMath.sub`]]
  1451. :xref-SafeMath-sub-uint256-uint256-string-: xref:utils.adoc#SafeMath-sub-uint256-uint256-string-
  1452. :SafeMath-div: pass:normal[xref:utils.adoc#SafeMath-div-uint256-uint256-string-[`SafeMath.div`]]
  1453. :xref-SafeMath-div-uint256-uint256-string-: xref:utils.adoc#SafeMath-div-uint256-uint256-string-
  1454. :SafeMath-mod: pass:normal[xref:utils.adoc#SafeMath-mod-uint256-uint256-string-[`SafeMath.mod`]]
  1455. :xref-SafeMath-mod-uint256-uint256-string-: xref:utils.adoc#SafeMath-mod-uint256-uint256-string-
  1456. :SignedMath: pass:normal[xref:utils.adoc#SignedMath[`SignedMath`]]
  1457. :xref-SignedMath: xref:utils.adoc#SignedMath
  1458. :SignedMath-max: pass:normal[xref:utils.adoc#SignedMath-max-int256-int256-[`SignedMath.max`]]
  1459. :xref-SignedMath-max-int256-int256-: xref:utils.adoc#SignedMath-max-int256-int256-
  1460. :SignedMath-min: pass:normal[xref:utils.adoc#SignedMath-min-int256-int256-[`SignedMath.min`]]
  1461. :xref-SignedMath-min-int256-int256-: xref:utils.adoc#SignedMath-min-int256-int256-
  1462. :SignedMath-average: pass:normal[xref:utils.adoc#SignedMath-average-int256-int256-[`SignedMath.average`]]
  1463. :xref-SignedMath-average-int256-int256-: xref:utils.adoc#SignedMath-average-int256-int256-
  1464. :SignedMath-abs: pass:normal[xref:utils.adoc#SignedMath-abs-int256-[`SignedMath.abs`]]
  1465. :xref-SignedMath-abs-int256-: xref:utils.adoc#SignedMath-abs-int256-
  1466. :SignedSafeMath: pass:normal[xref:utils.adoc#SignedSafeMath[`SignedSafeMath`]]
  1467. :xref-SignedSafeMath: xref:utils.adoc#SignedSafeMath
  1468. :SignedSafeMath-mul: pass:normal[xref:utils.adoc#SignedSafeMath-mul-int256-int256-[`SignedSafeMath.mul`]]
  1469. :xref-SignedSafeMath-mul-int256-int256-: xref:utils.adoc#SignedSafeMath-mul-int256-int256-
  1470. :SignedSafeMath-div: pass:normal[xref:utils.adoc#SignedSafeMath-div-int256-int256-[`SignedSafeMath.div`]]
  1471. :xref-SignedSafeMath-div-int256-int256-: xref:utils.adoc#SignedSafeMath-div-int256-int256-
  1472. :SignedSafeMath-sub: pass:normal[xref:utils.adoc#SignedSafeMath-sub-int256-int256-[`SignedSafeMath.sub`]]
  1473. :xref-SignedSafeMath-sub-int256-int256-: xref:utils.adoc#SignedSafeMath-sub-int256-int256-
  1474. :SignedSafeMath-add: pass:normal[xref:utils.adoc#SignedSafeMath-add-int256-int256-[`SignedSafeMath.add`]]
  1475. :xref-SignedSafeMath-add-int256-int256-: xref:utils.adoc#SignedSafeMath-add-int256-int256-
  1476. :BitMaps: pass:normal[xref:utils.adoc#BitMaps[`BitMaps`]]
  1477. :xref-BitMaps: xref:utils.adoc#BitMaps
  1478. :BitMaps-get: pass:normal[xref:utils.adoc#BitMaps-get-struct-BitMaps-BitMap-uint256-[`BitMaps.get`]]
  1479. :xref-BitMaps-get-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-get-struct-BitMaps-BitMap-uint256-
  1480. :BitMaps-setTo: pass:normal[xref:utils.adoc#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-[`BitMaps.setTo`]]
  1481. :xref-BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-: xref:utils.adoc#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-
  1482. :BitMaps-set: pass:normal[xref:utils.adoc#BitMaps-set-struct-BitMaps-BitMap-uint256-[`BitMaps.set`]]
  1483. :xref-BitMaps-set-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-set-struct-BitMaps-BitMap-uint256-
  1484. :BitMaps-unset: pass:normal[xref:utils.adoc#BitMaps-unset-struct-BitMaps-BitMap-uint256-[`BitMaps.unset`]]
  1485. :xref-BitMaps-unset-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-unset-struct-BitMaps-BitMap-uint256-
  1486. :BitMaps-BitMap: pass:normal[xref:utils.adoc#BitMaps-BitMap[`BitMaps.BitMap`]]
  1487. :xref-BitMaps-BitMap: xref:utils.adoc#BitMaps-BitMap
  1488. :DoubleEndedQueue: pass:normal[xref:utils.adoc#DoubleEndedQueue[`DoubleEndedQueue`]]
  1489. :xref-DoubleEndedQueue: xref:utils.adoc#DoubleEndedQueue
  1490. :DoubleEndedQueue-pushBack: pass:normal[xref:utils.adoc#DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-[`DoubleEndedQueue.pushBack`]]
  1491. :xref-DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-: xref:utils.adoc#DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-
  1492. :DoubleEndedQueue-popBack: pass:normal[xref:utils.adoc#DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.popBack`]]
  1493. :xref-DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-
  1494. :DoubleEndedQueue-pushFront: pass:normal[xref:utils.adoc#DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-[`DoubleEndedQueue.pushFront`]]
  1495. :xref-DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-: xref:utils.adoc#DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-
  1496. :DoubleEndedQueue-popFront: pass:normal[xref:utils.adoc#DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.popFront`]]
  1497. :xref-DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-
  1498. :DoubleEndedQueue-front: pass:normal[xref:utils.adoc#DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.front`]]
  1499. :xref-DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-
  1500. :DoubleEndedQueue-back: pass:normal[xref:utils.adoc#DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.back`]]
  1501. :xref-DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-
  1502. :DoubleEndedQueue-at: pass:normal[xref:utils.adoc#DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-[`DoubleEndedQueue.at`]]
  1503. :xref-DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-: xref:utils.adoc#DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-
  1504. :DoubleEndedQueue-clear: pass:normal[xref:utils.adoc#DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.clear`]]
  1505. :xref-DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-
  1506. :DoubleEndedQueue-length: pass:normal[xref:utils.adoc#DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.length`]]
  1507. :xref-DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-
  1508. :DoubleEndedQueue-empty: pass:normal[xref:utils.adoc#DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.empty`]]
  1509. :xref-DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-
  1510. :DoubleEndedQueue-Bytes32Deque: pass:normal[xref:utils.adoc#DoubleEndedQueue-Bytes32Deque[`DoubleEndedQueue.Bytes32Deque`]]
  1511. :xref-DoubleEndedQueue-Bytes32Deque: xref:utils.adoc#DoubleEndedQueue-Bytes32Deque
  1512. :EnumerableMap: pass:normal[xref:utils.adoc#EnumerableMap[`EnumerableMap`]]
  1513. :xref-EnumerableMap: xref:utils.adoc#EnumerableMap
  1514. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-[`EnumerableMap.set`]]
  1515. :xref-EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-
  1516. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.remove`]]
  1517. :xref-EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1518. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.contains`]]
  1519. :xref-EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1520. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-[`EnumerableMap.length`]]
  1521. :xref-EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-
  1522. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-[`EnumerableMap.at`]]
  1523. :xref-EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-
  1524. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.tryGet`]]
  1525. :xref-EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1526. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.get`]]
  1527. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1528. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-[`EnumerableMap.get`]]
  1529. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-
  1530. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToUintMap-uint256-uint256-[`EnumerableMap.set`]]
  1531. :xref-EnumerableMap-set-struct-EnumerableMap-UintToUintMap-uint256-uint256-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToUintMap-uint256-uint256-
  1532. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.remove`]]
  1533. :xref-EnumerableMap-remove-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToUintMap-uint256-
  1534. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.contains`]]
  1535. :xref-EnumerableMap-contains-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToUintMap-uint256-
  1536. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToUintMap-[`EnumerableMap.length`]]
  1537. :xref-EnumerableMap-length-struct-EnumerableMap-UintToUintMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToUintMap-
  1538. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.at`]]
  1539. :xref-EnumerableMap-at-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToUintMap-uint256-
  1540. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.tryGet`]]
  1541. :xref-EnumerableMap-tryGet-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToUintMap-uint256-
  1542. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-[`EnumerableMap.get`]]
  1543. :xref-EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-
  1544. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-string-[`EnumerableMap.get`]]
  1545. :xref-EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToUintMap-uint256-string-
  1546. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-[`EnumerableMap.set`]]
  1547. :xref-EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-
  1548. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.remove`]]
  1549. :xref-EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-
  1550. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.contains`]]
  1551. :xref-EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-
  1552. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-[`EnumerableMap.length`]]
  1553. :xref-EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-
  1554. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.at`]]
  1555. :xref-EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-
  1556. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.tryGet`]]
  1557. :xref-EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-
  1558. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.get`]]
  1559. :xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-
  1560. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-[`EnumerableMap.get`]]
  1561. :xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-
  1562. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-[`EnumerableMap.set`]]
  1563. :xref-EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-
  1564. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.remove`]]
  1565. :xref-EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-
  1566. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.contains`]]
  1567. :xref-EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-
  1568. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-[`EnumerableMap.length`]]
  1569. :xref-EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-
  1570. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-[`EnumerableMap.at`]]
  1571. :xref-EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-
  1572. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.tryGet`]]
  1573. :xref-EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-
  1574. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.get`]]
  1575. :xref-EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-
  1576. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-[`EnumerableMap.get`]]
  1577. :xref-EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-
  1578. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToUintMap-bytes32-uint256-[`EnumerableMap.set`]]
  1579. :xref-EnumerableMap-set-struct-EnumerableMap-Bytes32ToUintMap-bytes32-uint256-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToUintMap-bytes32-uint256-
  1580. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`EnumerableMap.remove`]]
  1581. :xref-EnumerableMap-remove-struct-EnumerableMap-Bytes32ToUintMap-bytes32-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToUintMap-bytes32-
  1582. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`EnumerableMap.contains`]]
  1583. :xref-EnumerableMap-contains-struct-EnumerableMap-Bytes32ToUintMap-bytes32-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToUintMap-bytes32-
  1584. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToUintMap-[`EnumerableMap.length`]]
  1585. :xref-EnumerableMap-length-struct-EnumerableMap-Bytes32ToUintMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToUintMap-
  1586. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToUintMap-uint256-[`EnumerableMap.at`]]
  1587. :xref-EnumerableMap-at-struct-EnumerableMap-Bytes32ToUintMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToUintMap-uint256-
  1588. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`EnumerableMap.tryGet`]]
  1589. :xref-EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToUintMap-bytes32-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToUintMap-bytes32-
  1590. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-[`EnumerableMap.get`]]
  1591. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-
  1592. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-string-[`EnumerableMap.get`]]
  1593. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToUintMap-bytes32-string-
  1594. :EnumerableMap-Bytes32ToBytes32Map: pass:normal[xref:utils.adoc#EnumerableMap-Bytes32ToBytes32Map[`EnumerableMap.Bytes32ToBytes32Map`]]
  1595. :xref-EnumerableMap-Bytes32ToBytes32Map: xref:utils.adoc#EnumerableMap-Bytes32ToBytes32Map
  1596. :EnumerableMap-UintToUintMap: pass:normal[xref:utils.adoc#EnumerableMap-UintToUintMap[`EnumerableMap.UintToUintMap`]]
  1597. :xref-EnumerableMap-UintToUintMap: xref:utils.adoc#EnumerableMap-UintToUintMap
  1598. :EnumerableMap-UintToAddressMap: pass:normal[xref:utils.adoc#EnumerableMap-UintToAddressMap[`EnumerableMap.UintToAddressMap`]]
  1599. :xref-EnumerableMap-UintToAddressMap: xref:utils.adoc#EnumerableMap-UintToAddressMap
  1600. :EnumerableMap-AddressToUintMap: pass:normal[xref:utils.adoc#EnumerableMap-AddressToUintMap[`EnumerableMap.AddressToUintMap`]]
  1601. :xref-EnumerableMap-AddressToUintMap: xref:utils.adoc#EnumerableMap-AddressToUintMap
  1602. :EnumerableMap-Bytes32ToUintMap: pass:normal[xref:utils.adoc#EnumerableMap-Bytes32ToUintMap[`EnumerableMap.Bytes32ToUintMap`]]
  1603. :xref-EnumerableMap-Bytes32ToUintMap: xref:utils.adoc#EnumerableMap-Bytes32ToUintMap
  1604. :EnumerableSet: pass:normal[xref:utils.adoc#EnumerableSet[`EnumerableSet`]]
  1605. :xref-EnumerableSet: xref:utils.adoc#EnumerableSet
  1606. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.add`]]
  1607. :xref-EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-
  1608. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.remove`]]
  1609. :xref-EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-
  1610. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.contains`]]
  1611. :xref-EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-
  1612. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-[`EnumerableSet.length`]]
  1613. :xref-EnumerableSet-length-struct-EnumerableSet-Bytes32Set-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-
  1614. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-[`EnumerableSet.at`]]
  1615. :xref-EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-
  1616. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-[`EnumerableSet.values`]]
  1617. :xref-EnumerableSet-values-struct-EnumerableSet-Bytes32Set-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-
  1618. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.add`]]
  1619. :xref-EnumerableSet-add-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-
  1620. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.remove`]]
  1621. :xref-EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-
  1622. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.contains`]]
  1623. :xref-EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-
  1624. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-AddressSet-[`EnumerableSet.length`]]
  1625. :xref-EnumerableSet-length-struct-EnumerableSet-AddressSet-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-AddressSet-
  1626. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-[`EnumerableSet.at`]]
  1627. :xref-EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-
  1628. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-AddressSet-[`EnumerableSet.values`]]
  1629. :xref-EnumerableSet-values-struct-EnumerableSet-AddressSet-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-AddressSet-
  1630. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.add`]]
  1631. :xref-EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-
  1632. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.remove`]]
  1633. :xref-EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-
  1634. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.contains`]]
  1635. :xref-EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-
  1636. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-UintSet-[`EnumerableSet.length`]]
  1637. :xref-EnumerableSet-length-struct-EnumerableSet-UintSet-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-UintSet-
  1638. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.at`]]
  1639. :xref-EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-
  1640. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-UintSet-[`EnumerableSet.values`]]
  1641. :xref-EnumerableSet-values-struct-EnumerableSet-UintSet-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-UintSet-
  1642. :EnumerableSet-Set: pass:normal[xref:utils.adoc#EnumerableSet-Set[`EnumerableSet.Set`]]
  1643. :xref-EnumerableSet-Set: xref:utils.adoc#EnumerableSet-Set
  1644. :EnumerableSet-Bytes32Set: pass:normal[xref:utils.adoc#EnumerableSet-Bytes32Set[`EnumerableSet.Bytes32Set`]]
  1645. :xref-EnumerableSet-Bytes32Set: xref:utils.adoc#EnumerableSet-Bytes32Set
  1646. :EnumerableSet-AddressSet: pass:normal[xref:utils.adoc#EnumerableSet-AddressSet[`EnumerableSet.AddressSet`]]
  1647. :xref-EnumerableSet-AddressSet: xref:utils.adoc#EnumerableSet-AddressSet
  1648. :EnumerableSet-UintSet: pass:normal[xref:utils.adoc#EnumerableSet-UintSet[`EnumerableSet.UintSet`]]
  1649. :xref-EnumerableSet-UintSet: xref:utils.adoc#EnumerableSet-UintSet
  1650. :ERC1155: pass:normal[xref:token/ERC1155.adoc#ERC1155[`ERC1155`]]
  1651. :xref-ERC1155: xref:token/ERC1155.adoc#ERC1155
  1652. :ERC1155-constructor: pass:normal[xref:token/ERC1155.adoc#ERC1155-constructor-string-[`ERC1155.constructor`]]
  1653. :xref-ERC1155-constructor-string-: xref:token/ERC1155.adoc#ERC1155-constructor-string-
  1654. :ERC1155-supportsInterface: pass:normal[xref:token/ERC1155.adoc#ERC1155-supportsInterface-bytes4-[`ERC1155.supportsInterface`]]
  1655. :xref-ERC1155-supportsInterface-bytes4-: xref:token/ERC1155.adoc#ERC1155-supportsInterface-bytes4-
  1656. :ERC1155-uri: pass:normal[xref:token/ERC1155.adoc#ERC1155-uri-uint256-[`ERC1155.uri`]]
  1657. :xref-ERC1155-uri-uint256-: xref:token/ERC1155.adoc#ERC1155-uri-uint256-
  1658. :ERC1155-balanceOf: pass:normal[xref:token/ERC1155.adoc#ERC1155-balanceOf-address-uint256-[`ERC1155.balanceOf`]]
  1659. :xref-ERC1155-balanceOf-address-uint256-: xref:token/ERC1155.adoc#ERC1155-balanceOf-address-uint256-
  1660. :ERC1155-balanceOfBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-balanceOfBatch-address---uint256---[`ERC1155.balanceOfBatch`]]
  1661. :xref-ERC1155-balanceOfBatch-address---uint256---: xref:token/ERC1155.adoc#ERC1155-balanceOfBatch-address---uint256---
  1662. :ERC1155-setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-setApprovalForAll-address-bool-[`ERC1155.setApprovalForAll`]]
  1663. :xref-ERC1155-setApprovalForAll-address-bool-: xref:token/ERC1155.adoc#ERC1155-setApprovalForAll-address-bool-
  1664. :ERC1155-isApprovedForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-isApprovedForAll-address-address-[`ERC1155.isApprovedForAll`]]
  1665. :xref-ERC1155-isApprovedForAll-address-address-: xref:token/ERC1155.adoc#ERC1155-isApprovedForAll-address-address-
  1666. :ERC1155-safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-[`ERC1155.safeTransferFrom`]]
  1667. :xref-ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-
  1668. :ERC1155-safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`ERC1155.safeBatchTransferFrom`]]
  1669. :xref-ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1670. :ERC1155-_safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-[`ERC1155._safeTransferFrom`]]
  1671. :xref-ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-
  1672. :ERC1155-_safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`ERC1155._safeBatchTransferFrom`]]
  1673. :xref-ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1674. :ERC1155-_setURI: pass:normal[xref:token/ERC1155.adoc#ERC1155-_setURI-string-[`ERC1155._setURI`]]
  1675. :xref-ERC1155-_setURI-string-: xref:token/ERC1155.adoc#ERC1155-_setURI-string-
  1676. :ERC1155-_mint: pass:normal[xref:token/ERC1155.adoc#ERC1155-_mint-address-uint256-uint256-bytes-[`ERC1155._mint`]]
  1677. :xref-ERC1155-_mint-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-_mint-address-uint256-uint256-bytes-
  1678. :ERC1155-_mintBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-_mintBatch-address-uint256---uint256---bytes-[`ERC1155._mintBatch`]]
  1679. :xref-ERC1155-_mintBatch-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_mintBatch-address-uint256---uint256---bytes-
  1680. :ERC1155-_burn: pass:normal[xref:token/ERC1155.adoc#ERC1155-_burn-address-uint256-uint256-[`ERC1155._burn`]]
  1681. :xref-ERC1155-_burn-address-uint256-uint256-: xref:token/ERC1155.adoc#ERC1155-_burn-address-uint256-uint256-
  1682. :ERC1155-_burnBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-_burnBatch-address-uint256---uint256---[`ERC1155._burnBatch`]]
  1683. :xref-ERC1155-_burnBatch-address-uint256---uint256---: xref:token/ERC1155.adoc#ERC1155-_burnBatch-address-uint256---uint256---
  1684. :ERC1155-_setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-_setApprovalForAll-address-address-bool-[`ERC1155._setApprovalForAll`]]
  1685. :xref-ERC1155-_setApprovalForAll-address-address-bool-: xref:token/ERC1155.adoc#ERC1155-_setApprovalForAll-address-address-bool-
  1686. :ERC1155-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155._beforeTokenTransfer`]]
  1687. :xref-ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1688. :ERC1155-_afterTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155-_afterTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155._afterTokenTransfer`]]
  1689. :xref-ERC1155-_afterTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_afterTokenTransfer-address-address-address-uint256---uint256---bytes-
  1690. :IERC1155: pass:normal[xref:token/ERC1155.adoc#IERC1155[`IERC1155`]]
  1691. :xref-IERC1155: xref:token/ERC1155.adoc#IERC1155
  1692. :IERC1155-balanceOf: pass:normal[xref:token/ERC1155.adoc#IERC1155-balanceOf-address-uint256-[`IERC1155.balanceOf`]]
  1693. :xref-IERC1155-balanceOf-address-uint256-: xref:token/ERC1155.adoc#IERC1155-balanceOf-address-uint256-
  1694. :IERC1155-balanceOfBatch: pass:normal[xref:token/ERC1155.adoc#IERC1155-balanceOfBatch-address---uint256---[`IERC1155.balanceOfBatch`]]
  1695. :xref-IERC1155-balanceOfBatch-address---uint256---: xref:token/ERC1155.adoc#IERC1155-balanceOfBatch-address---uint256---
  1696. :IERC1155-setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-setApprovalForAll-address-bool-[`IERC1155.setApprovalForAll`]]
  1697. :xref-IERC1155-setApprovalForAll-address-bool-: xref:token/ERC1155.adoc#IERC1155-setApprovalForAll-address-bool-
  1698. :IERC1155-isApprovedForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-isApprovedForAll-address-address-[`IERC1155.isApprovedForAll`]]
  1699. :xref-IERC1155-isApprovedForAll-address-address-: xref:token/ERC1155.adoc#IERC1155-isApprovedForAll-address-address-
  1700. :IERC1155-safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-[`IERC1155.safeTransferFrom`]]
  1701. :xref-IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-
  1702. :IERC1155-safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`IERC1155.safeBatchTransferFrom`]]
  1703. :xref-IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1704. :IERC1155-TransferSingle: pass:normal[xref:token/ERC1155.adoc#IERC1155-TransferSingle-address-address-address-uint256-uint256-[`IERC1155.TransferSingle`]]
  1705. :xref-IERC1155-TransferSingle-address-address-address-uint256-uint256-: xref:token/ERC1155.adoc#IERC1155-TransferSingle-address-address-address-uint256-uint256-
  1706. :IERC1155-TransferBatch: pass:normal[xref:token/ERC1155.adoc#IERC1155-TransferBatch-address-address-address-uint256---uint256---[`IERC1155.TransferBatch`]]
  1707. :xref-IERC1155-TransferBatch-address-address-address-uint256---uint256---: xref:token/ERC1155.adoc#IERC1155-TransferBatch-address-address-address-uint256---uint256---
  1708. :IERC1155-ApprovalForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-ApprovalForAll-address-address-bool-[`IERC1155.ApprovalForAll`]]
  1709. :xref-IERC1155-ApprovalForAll-address-address-bool-: xref:token/ERC1155.adoc#IERC1155-ApprovalForAll-address-address-bool-
  1710. :IERC1155-URI: pass:normal[xref:token/ERC1155.adoc#IERC1155-URI-string-uint256-[`IERC1155.URI`]]
  1711. :xref-IERC1155-URI-string-uint256-: xref:token/ERC1155.adoc#IERC1155-URI-string-uint256-
  1712. :IERC1155Receiver: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver[`IERC1155Receiver`]]
  1713. :xref-IERC1155Receiver: xref:token/ERC1155.adoc#IERC1155Receiver
  1714. :IERC1155Receiver-onERC1155Received: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-[`IERC1155Receiver.onERC1155Received`]]
  1715. :xref-IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-
  1716. :IERC1155Receiver-onERC1155BatchReceived: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`IERC1155Receiver.onERC1155BatchReceived`]]
  1717. :xref-IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  1718. :ERC1155Burnable: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable[`ERC1155Burnable`]]
  1719. :xref-ERC1155Burnable: xref:token/ERC1155.adoc#ERC1155Burnable
  1720. :ERC1155Burnable-burn: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable-burn-address-uint256-uint256-[`ERC1155Burnable.burn`]]
  1721. :xref-ERC1155Burnable-burn-address-uint256-uint256-: xref:token/ERC1155.adoc#ERC1155Burnable-burn-address-uint256-uint256-
  1722. :ERC1155Burnable-burnBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable-burnBatch-address-uint256---uint256---[`ERC1155Burnable.burnBatch`]]
  1723. :xref-ERC1155Burnable-burnBatch-address-uint256---uint256---: xref:token/ERC1155.adoc#ERC1155Burnable-burnBatch-address-uint256---uint256---
  1724. :ERC1155Pausable: pass:normal[xref:token/ERC1155.adoc#ERC1155Pausable[`ERC1155Pausable`]]
  1725. :xref-ERC1155Pausable: xref:token/ERC1155.adoc#ERC1155Pausable
  1726. :ERC1155Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155Pausable._beforeTokenTransfer`]]
  1727. :xref-ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1728. :ERC1155Supply: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply[`ERC1155Supply`]]
  1729. :xref-ERC1155Supply: xref:token/ERC1155.adoc#ERC1155Supply
  1730. :ERC1155Supply-totalSupply: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-totalSupply-uint256-[`ERC1155Supply.totalSupply`]]
  1731. :xref-ERC1155Supply-totalSupply-uint256-: xref:token/ERC1155.adoc#ERC1155Supply-totalSupply-uint256-
  1732. :ERC1155Supply-exists: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-exists-uint256-[`ERC1155Supply.exists`]]
  1733. :xref-ERC1155Supply-exists-uint256-: xref:token/ERC1155.adoc#ERC1155Supply-exists-uint256-
  1734. :ERC1155Supply-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155Supply._beforeTokenTransfer`]]
  1735. :xref-ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1736. :ERC1155URIStorage: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage[`ERC1155URIStorage`]]
  1737. :xref-ERC1155URIStorage: xref:token/ERC1155.adoc#ERC1155URIStorage
  1738. :ERC1155URIStorage-uri: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage-uri-uint256-[`ERC1155URIStorage.uri`]]
  1739. :xref-ERC1155URIStorage-uri-uint256-: xref:token/ERC1155.adoc#ERC1155URIStorage-uri-uint256-
  1740. :ERC1155URIStorage-_setURI: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage-_setURI-uint256-string-[`ERC1155URIStorage._setURI`]]
  1741. :xref-ERC1155URIStorage-_setURI-uint256-string-: xref:token/ERC1155.adoc#ERC1155URIStorage-_setURI-uint256-string-
  1742. :ERC1155URIStorage-_setBaseURI: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage-_setBaseURI-string-[`ERC1155URIStorage._setBaseURI`]]
  1743. :xref-ERC1155URIStorage-_setBaseURI-string-: xref:token/ERC1155.adoc#ERC1155URIStorage-_setBaseURI-string-
  1744. :IERC1155MetadataURI: pass:normal[xref:token/ERC1155.adoc#IERC1155MetadataURI[`IERC1155MetadataURI`]]
  1745. :xref-IERC1155MetadataURI: xref:token/ERC1155.adoc#IERC1155MetadataURI
  1746. :IERC1155MetadataURI-uri: pass:normal[xref:token/ERC1155.adoc#IERC1155MetadataURI-uri-uint256-[`IERC1155MetadataURI.uri`]]
  1747. :xref-IERC1155MetadataURI-uri-uint256-: xref:token/ERC1155.adoc#IERC1155MetadataURI-uri-uint256-
  1748. :ERC1155Holder: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder[`ERC1155Holder`]]
  1749. :xref-ERC1155Holder: xref:token/ERC1155.adoc#ERC1155Holder
  1750. :ERC1155Holder-onERC1155Received: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-[`ERC1155Holder.onERC1155Received`]]
  1751. :xref-ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-
  1752. :ERC1155Holder-onERC1155BatchReceived: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`ERC1155Holder.onERC1155BatchReceived`]]
  1753. :xref-ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  1754. :ERC1155Receiver: pass:normal[xref:token/ERC1155.adoc#ERC1155Receiver[`ERC1155Receiver`]]
  1755. :xref-ERC1155Receiver: xref:token/ERC1155.adoc#ERC1155Receiver
  1756. :ERC1155Receiver-supportsInterface: pass:normal[xref:token/ERC1155.adoc#ERC1155Receiver-supportsInterface-bytes4-[`ERC1155Receiver.supportsInterface`]]
  1757. :xref-ERC1155Receiver-supportsInterface-bytes4-: xref:token/ERC1155.adoc#ERC1155Receiver-supportsInterface-bytes4-
  1758. :ERC20: pass:normal[xref:token/ERC20.adoc#ERC20[`ERC20`]]
  1759. :xref-ERC20: xref:token/ERC20.adoc#ERC20
  1760. :ERC20-constructor: pass:normal[xref:token/ERC20.adoc#ERC20-constructor-string-string-[`ERC20.constructor`]]
  1761. :xref-ERC20-constructor-string-string-: xref:token/ERC20.adoc#ERC20-constructor-string-string-
  1762. :ERC20-name: pass:normal[xref:token/ERC20.adoc#ERC20-name--[`ERC20.name`]]
  1763. :xref-ERC20-name--: xref:token/ERC20.adoc#ERC20-name--
  1764. :ERC20-symbol: pass:normal[xref:token/ERC20.adoc#ERC20-symbol--[`ERC20.symbol`]]
  1765. :xref-ERC20-symbol--: xref:token/ERC20.adoc#ERC20-symbol--
  1766. :ERC20-decimals: pass:normal[xref:token/ERC20.adoc#ERC20-decimals--[`ERC20.decimals`]]
  1767. :xref-ERC20-decimals--: xref:token/ERC20.adoc#ERC20-decimals--
  1768. :ERC20-totalSupply: pass:normal[xref:token/ERC20.adoc#ERC20-totalSupply--[`ERC20.totalSupply`]]
  1769. :xref-ERC20-totalSupply--: xref:token/ERC20.adoc#ERC20-totalSupply--
  1770. :ERC20-balanceOf: pass:normal[xref:token/ERC20.adoc#ERC20-balanceOf-address-[`ERC20.balanceOf`]]
  1771. :xref-ERC20-balanceOf-address-: xref:token/ERC20.adoc#ERC20-balanceOf-address-
  1772. :ERC20-transfer: pass:normal[xref:token/ERC20.adoc#ERC20-transfer-address-uint256-[`ERC20.transfer`]]
  1773. :xref-ERC20-transfer-address-uint256-: xref:token/ERC20.adoc#ERC20-transfer-address-uint256-
  1774. :ERC20-allowance: pass:normal[xref:token/ERC20.adoc#ERC20-allowance-address-address-[`ERC20.allowance`]]
  1775. :xref-ERC20-allowance-address-address-: xref:token/ERC20.adoc#ERC20-allowance-address-address-
  1776. :ERC20-approve: pass:normal[xref:token/ERC20.adoc#ERC20-approve-address-uint256-[`ERC20.approve`]]
  1777. :xref-ERC20-approve-address-uint256-: xref:token/ERC20.adoc#ERC20-approve-address-uint256-
  1778. :ERC20-transferFrom: pass:normal[xref:token/ERC20.adoc#ERC20-transferFrom-address-address-uint256-[`ERC20.transferFrom`]]
  1779. :xref-ERC20-transferFrom-address-address-uint256-: xref:token/ERC20.adoc#ERC20-transferFrom-address-address-uint256-
  1780. :ERC20-increaseAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-increaseAllowance-address-uint256-[`ERC20.increaseAllowance`]]
  1781. :xref-ERC20-increaseAllowance-address-uint256-: xref:token/ERC20.adoc#ERC20-increaseAllowance-address-uint256-
  1782. :ERC20-decreaseAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-decreaseAllowance-address-uint256-[`ERC20.decreaseAllowance`]]
  1783. :xref-ERC20-decreaseAllowance-address-uint256-: xref:token/ERC20.adoc#ERC20-decreaseAllowance-address-uint256-
  1784. :ERC20-_transfer: pass:normal[xref:token/ERC20.adoc#ERC20-_transfer-address-address-uint256-[`ERC20._transfer`]]
  1785. :xref-ERC20-_transfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_transfer-address-address-uint256-
  1786. :ERC20-_mint: pass:normal[xref:token/ERC20.adoc#ERC20-_mint-address-uint256-[`ERC20._mint`]]
  1787. :xref-ERC20-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20-_mint-address-uint256-
  1788. :ERC20-_burn: pass:normal[xref:token/ERC20.adoc#ERC20-_burn-address-uint256-[`ERC20._burn`]]
  1789. :xref-ERC20-_burn-address-uint256-: xref:token/ERC20.adoc#ERC20-_burn-address-uint256-
  1790. :ERC20-_approve: pass:normal[xref:token/ERC20.adoc#ERC20-_approve-address-address-uint256-[`ERC20._approve`]]
  1791. :xref-ERC20-_approve-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_approve-address-address-uint256-
  1792. :ERC20-_spendAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-_spendAllowance-address-address-uint256-[`ERC20._spendAllowance`]]
  1793. :xref-ERC20-_spendAllowance-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_spendAllowance-address-address-uint256-
  1794. :ERC20-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20-_beforeTokenTransfer-address-address-uint256-[`ERC20._beforeTokenTransfer`]]
  1795. :xref-ERC20-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_beforeTokenTransfer-address-address-uint256-
  1796. :ERC20-_afterTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20-_afterTokenTransfer-address-address-uint256-[`ERC20._afterTokenTransfer`]]
  1797. :xref-ERC20-_afterTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_afterTokenTransfer-address-address-uint256-
  1798. :IERC20: pass:normal[xref:token/ERC20.adoc#IERC20[`IERC20`]]
  1799. :xref-IERC20: xref:token/ERC20.adoc#IERC20
  1800. :IERC20-totalSupply: pass:normal[xref:token/ERC20.adoc#IERC20-totalSupply--[`IERC20.totalSupply`]]
  1801. :xref-IERC20-totalSupply--: xref:token/ERC20.adoc#IERC20-totalSupply--
  1802. :IERC20-balanceOf: pass:normal[xref:token/ERC20.adoc#IERC20-balanceOf-address-[`IERC20.balanceOf`]]
  1803. :xref-IERC20-balanceOf-address-: xref:token/ERC20.adoc#IERC20-balanceOf-address-
  1804. :IERC20-transfer: pass:normal[xref:token/ERC20.adoc#IERC20-transfer-address-uint256-[`IERC20.transfer`]]
  1805. :xref-IERC20-transfer-address-uint256-: xref:token/ERC20.adoc#IERC20-transfer-address-uint256-
  1806. :IERC20-allowance: pass:normal[xref:token/ERC20.adoc#IERC20-allowance-address-address-[`IERC20.allowance`]]
  1807. :xref-IERC20-allowance-address-address-: xref:token/ERC20.adoc#IERC20-allowance-address-address-
  1808. :IERC20-approve: pass:normal[xref:token/ERC20.adoc#IERC20-approve-address-uint256-[`IERC20.approve`]]
  1809. :xref-IERC20-approve-address-uint256-: xref:token/ERC20.adoc#IERC20-approve-address-uint256-
  1810. :IERC20-transferFrom: pass:normal[xref:token/ERC20.adoc#IERC20-transferFrom-address-address-uint256-[`IERC20.transferFrom`]]
  1811. :xref-IERC20-transferFrom-address-address-uint256-: xref:token/ERC20.adoc#IERC20-transferFrom-address-address-uint256-
  1812. :IERC20-Transfer: pass:normal[xref:token/ERC20.adoc#IERC20-Transfer-address-address-uint256-[`IERC20.Transfer`]]
  1813. :xref-IERC20-Transfer-address-address-uint256-: xref:token/ERC20.adoc#IERC20-Transfer-address-address-uint256-
  1814. :IERC20-Approval: pass:normal[xref:token/ERC20.adoc#IERC20-Approval-address-address-uint256-[`IERC20.Approval`]]
  1815. :xref-IERC20-Approval-address-address-uint256-: xref:token/ERC20.adoc#IERC20-Approval-address-address-uint256-
  1816. :ERC20Burnable: pass:normal[xref:token/ERC20.adoc#ERC20Burnable[`ERC20Burnable`]]
  1817. :xref-ERC20Burnable: xref:token/ERC20.adoc#ERC20Burnable
  1818. :ERC20Burnable-burn: pass:normal[xref:token/ERC20.adoc#ERC20Burnable-burn-uint256-[`ERC20Burnable.burn`]]
  1819. :xref-ERC20Burnable-burn-uint256-: xref:token/ERC20.adoc#ERC20Burnable-burn-uint256-
  1820. :ERC20Burnable-burnFrom: pass:normal[xref:token/ERC20.adoc#ERC20Burnable-burnFrom-address-uint256-[`ERC20Burnable.burnFrom`]]
  1821. :xref-ERC20Burnable-burnFrom-address-uint256-: xref:token/ERC20.adoc#ERC20Burnable-burnFrom-address-uint256-
  1822. :ERC20Capped: pass:normal[xref:token/ERC20.adoc#ERC20Capped[`ERC20Capped`]]
  1823. :xref-ERC20Capped: xref:token/ERC20.adoc#ERC20Capped
  1824. :ERC20Capped-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Capped-constructor-uint256-[`ERC20Capped.constructor`]]
  1825. :xref-ERC20Capped-constructor-uint256-: xref:token/ERC20.adoc#ERC20Capped-constructor-uint256-
  1826. :ERC20Capped-cap: pass:normal[xref:token/ERC20.adoc#ERC20Capped-cap--[`ERC20Capped.cap`]]
  1827. :xref-ERC20Capped-cap--: xref:token/ERC20.adoc#ERC20Capped-cap--
  1828. :ERC20Capped-_mint: pass:normal[xref:token/ERC20.adoc#ERC20Capped-_mint-address-uint256-[`ERC20Capped._mint`]]
  1829. :xref-ERC20Capped-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20Capped-_mint-address-uint256-
  1830. :ERC20FlashMint: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint[`ERC20FlashMint`]]
  1831. :xref-ERC20FlashMint: xref:token/ERC20.adoc#ERC20FlashMint
  1832. :ERC20FlashMint-maxFlashLoan: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-maxFlashLoan-address-[`ERC20FlashMint.maxFlashLoan`]]
  1833. :xref-ERC20FlashMint-maxFlashLoan-address-: xref:token/ERC20.adoc#ERC20FlashMint-maxFlashLoan-address-
  1834. :ERC20FlashMint-flashFee: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-flashFee-address-uint256-[`ERC20FlashMint.flashFee`]]
  1835. :xref-ERC20FlashMint-flashFee-address-uint256-: xref:token/ERC20.adoc#ERC20FlashMint-flashFee-address-uint256-
  1836. :ERC20FlashMint-_flashFeeReceiver: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-_flashFeeReceiver--[`ERC20FlashMint._flashFeeReceiver`]]
  1837. :xref-ERC20FlashMint-_flashFeeReceiver--: xref:token/ERC20.adoc#ERC20FlashMint-_flashFeeReceiver--
  1838. :ERC20FlashMint-flashLoan: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-[`ERC20FlashMint.flashLoan`]]
  1839. :xref-ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-: xref:token/ERC20.adoc#ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-
  1840. :ERC20Pausable: pass:normal[xref:token/ERC20.adoc#ERC20Pausable[`ERC20Pausable`]]
  1841. :xref-ERC20Pausable: xref:token/ERC20.adoc#ERC20Pausable
  1842. :ERC20Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Pausable-_beforeTokenTransfer-address-address-uint256-[`ERC20Pausable._beforeTokenTransfer`]]
  1843. :xref-ERC20Pausable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Pausable-_beforeTokenTransfer-address-address-uint256-
  1844. :ERC20Snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot[`ERC20Snapshot`]]
  1845. :xref-ERC20Snapshot: xref:token/ERC20.adoc#ERC20Snapshot
  1846. :ERC20Snapshot-_snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_snapshot--[`ERC20Snapshot._snapshot`]]
  1847. :xref-ERC20Snapshot-_snapshot--: xref:token/ERC20.adoc#ERC20Snapshot-_snapshot--
  1848. :ERC20Snapshot-_getCurrentSnapshotId: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_getCurrentSnapshotId--[`ERC20Snapshot._getCurrentSnapshotId`]]
  1849. :xref-ERC20Snapshot-_getCurrentSnapshotId--: xref:token/ERC20.adoc#ERC20Snapshot-_getCurrentSnapshotId--
  1850. :ERC20Snapshot-balanceOfAt: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-balanceOfAt-address-uint256-[`ERC20Snapshot.balanceOfAt`]]
  1851. :xref-ERC20Snapshot-balanceOfAt-address-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-balanceOfAt-address-uint256-
  1852. :ERC20Snapshot-totalSupplyAt: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-totalSupplyAt-uint256-[`ERC20Snapshot.totalSupplyAt`]]
  1853. :xref-ERC20Snapshot-totalSupplyAt-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-totalSupplyAt-uint256-
  1854. :ERC20Snapshot-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-[`ERC20Snapshot._beforeTokenTransfer`]]
  1855. :xref-ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-
  1856. :ERC20Snapshot-Snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-Snapshot-uint256-[`ERC20Snapshot.Snapshot`]]
  1857. :xref-ERC20Snapshot-Snapshot-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-Snapshot-uint256-
  1858. :ERC20Snapshot-Snapshots: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-Snapshots[`ERC20Snapshot.Snapshots`]]
  1859. :xref-ERC20Snapshot-Snapshots: xref:token/ERC20.adoc#ERC20Snapshot-Snapshots
  1860. :ERC20Votes: pass:normal[xref:token/ERC20.adoc#ERC20Votes[`ERC20Votes`]]
  1861. :xref-ERC20Votes: xref:token/ERC20.adoc#ERC20Votes
  1862. :ERC20Votes-checkpoints: pass:normal[xref:token/ERC20.adoc#ERC20Votes-checkpoints-address-uint32-[`ERC20Votes.checkpoints`]]
  1863. :xref-ERC20Votes-checkpoints-address-uint32-: xref:token/ERC20.adoc#ERC20Votes-checkpoints-address-uint32-
  1864. :ERC20Votes-numCheckpoints: pass:normal[xref:token/ERC20.adoc#ERC20Votes-numCheckpoints-address-[`ERC20Votes.numCheckpoints`]]
  1865. :xref-ERC20Votes-numCheckpoints-address-: xref:token/ERC20.adoc#ERC20Votes-numCheckpoints-address-
  1866. :ERC20Votes-delegates: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegates-address-[`ERC20Votes.delegates`]]
  1867. :xref-ERC20Votes-delegates-address-: xref:token/ERC20.adoc#ERC20Votes-delegates-address-
  1868. :ERC20Votes-getVotes: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getVotes-address-[`ERC20Votes.getVotes`]]
  1869. :xref-ERC20Votes-getVotes-address-: xref:token/ERC20.adoc#ERC20Votes-getVotes-address-
  1870. :ERC20Votes-getPastVotes: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getPastVotes-address-uint256-[`ERC20Votes.getPastVotes`]]
  1871. :xref-ERC20Votes-getPastVotes-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-getPastVotes-address-uint256-
  1872. :ERC20Votes-getPastTotalSupply: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getPastTotalSupply-uint256-[`ERC20Votes.getPastTotalSupply`]]
  1873. :xref-ERC20Votes-getPastTotalSupply-uint256-: xref:token/ERC20.adoc#ERC20Votes-getPastTotalSupply-uint256-
  1874. :ERC20Votes-delegate: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegate-address-[`ERC20Votes.delegate`]]
  1875. :xref-ERC20Votes-delegate-address-: xref:token/ERC20.adoc#ERC20Votes-delegate-address-
  1876. :ERC20Votes-delegateBySig: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`ERC20Votes.delegateBySig`]]
  1877. :xref-ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  1878. :ERC20Votes-_maxSupply: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_maxSupply--[`ERC20Votes._maxSupply`]]
  1879. :xref-ERC20Votes-_maxSupply--: xref:token/ERC20.adoc#ERC20Votes-_maxSupply--
  1880. :ERC20Votes-_mint: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_mint-address-uint256-[`ERC20Votes._mint`]]
  1881. :xref-ERC20Votes-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_mint-address-uint256-
  1882. :ERC20Votes-_burn: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_burn-address-uint256-[`ERC20Votes._burn`]]
  1883. :xref-ERC20Votes-_burn-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_burn-address-uint256-
  1884. :ERC20Votes-_afterTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_afterTokenTransfer-address-address-uint256-[`ERC20Votes._afterTokenTransfer`]]
  1885. :xref-ERC20Votes-_afterTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_afterTokenTransfer-address-address-uint256-
  1886. :ERC20Votes-_delegate: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_delegate-address-address-[`ERC20Votes._delegate`]]
  1887. :xref-ERC20Votes-_delegate-address-address-: xref:token/ERC20.adoc#ERC20Votes-_delegate-address-address-
  1888. :ERC20Votes-Checkpoint: pass:normal[xref:token/ERC20.adoc#ERC20Votes-Checkpoint[`ERC20Votes.Checkpoint`]]
  1889. :xref-ERC20Votes-Checkpoint: xref:token/ERC20.adoc#ERC20Votes-Checkpoint
  1890. :ERC20VotesComp: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp[`ERC20VotesComp`]]
  1891. :xref-ERC20VotesComp: xref:token/ERC20.adoc#ERC20VotesComp
  1892. :ERC20VotesComp-getCurrentVotes: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-getCurrentVotes-address-[`ERC20VotesComp.getCurrentVotes`]]
  1893. :xref-ERC20VotesComp-getCurrentVotes-address-: xref:token/ERC20.adoc#ERC20VotesComp-getCurrentVotes-address-
  1894. :ERC20VotesComp-getPriorVotes: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-getPriorVotes-address-uint256-[`ERC20VotesComp.getPriorVotes`]]
  1895. :xref-ERC20VotesComp-getPriorVotes-address-uint256-: xref:token/ERC20.adoc#ERC20VotesComp-getPriorVotes-address-uint256-
  1896. :ERC20VotesComp-_maxSupply: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-_maxSupply--[`ERC20VotesComp._maxSupply`]]
  1897. :xref-ERC20VotesComp-_maxSupply--: xref:token/ERC20.adoc#ERC20VotesComp-_maxSupply--
  1898. :ERC20Wrapper: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper[`ERC20Wrapper`]]
  1899. :xref-ERC20Wrapper: xref:token/ERC20.adoc#ERC20Wrapper
  1900. :ERC20Wrapper-underlying: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-underlying-contract-IERC20[`ERC20Wrapper.underlying`]]
  1901. :xref-ERC20Wrapper-underlying-contract-IERC20: xref:token/ERC20.adoc#ERC20Wrapper-underlying-contract-IERC20
  1902. :ERC20Wrapper-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-constructor-contract-IERC20-[`ERC20Wrapper.constructor`]]
  1903. :xref-ERC20Wrapper-constructor-contract-IERC20-: xref:token/ERC20.adoc#ERC20Wrapper-constructor-contract-IERC20-
  1904. :ERC20Wrapper-decimals: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-decimals--[`ERC20Wrapper.decimals`]]
  1905. :xref-ERC20Wrapper-decimals--: xref:token/ERC20.adoc#ERC20Wrapper-decimals--
  1906. :ERC20Wrapper-depositFor: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-depositFor-address-uint256-[`ERC20Wrapper.depositFor`]]
  1907. :xref-ERC20Wrapper-depositFor-address-uint256-: xref:token/ERC20.adoc#ERC20Wrapper-depositFor-address-uint256-
  1908. :ERC20Wrapper-withdrawTo: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-withdrawTo-address-uint256-[`ERC20Wrapper.withdrawTo`]]
  1909. :xref-ERC20Wrapper-withdrawTo-address-uint256-: xref:token/ERC20.adoc#ERC20Wrapper-withdrawTo-address-uint256-
  1910. :ERC20Wrapper-_recover: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-_recover-address-[`ERC20Wrapper._recover`]]
  1911. :xref-ERC20Wrapper-_recover-address-: xref:token/ERC20.adoc#ERC20Wrapper-_recover-address-
  1912. :ERC4626: pass:normal[xref:token/ERC20.adoc#ERC4626[`ERC4626`]]
  1913. :xref-ERC4626: xref:token/ERC20.adoc#ERC4626
  1914. :ERC4626-constructor: pass:normal[xref:token/ERC20.adoc#ERC4626-constructor-contract-IERC20Metadata-[`ERC4626.constructor`]]
  1915. :xref-ERC4626-constructor-contract-IERC20Metadata-: xref:token/ERC20.adoc#ERC4626-constructor-contract-IERC20Metadata-
  1916. :ERC4626-asset: pass:normal[xref:token/ERC20.adoc#ERC4626-asset--[`ERC4626.asset`]]
  1917. :xref-ERC4626-asset--: xref:token/ERC20.adoc#ERC4626-asset--
  1918. :ERC4626-totalAssets: pass:normal[xref:token/ERC20.adoc#ERC4626-totalAssets--[`ERC4626.totalAssets`]]
  1919. :xref-ERC4626-totalAssets--: xref:token/ERC20.adoc#ERC4626-totalAssets--
  1920. :ERC4626-convertToShares: pass:normal[xref:token/ERC20.adoc#ERC4626-convertToShares-uint256-[`ERC4626.convertToShares`]]
  1921. :xref-ERC4626-convertToShares-uint256-: xref:token/ERC20.adoc#ERC4626-convertToShares-uint256-
  1922. :ERC4626-convertToAssets: pass:normal[xref:token/ERC20.adoc#ERC4626-convertToAssets-uint256-[`ERC4626.convertToAssets`]]
  1923. :xref-ERC4626-convertToAssets-uint256-: xref:token/ERC20.adoc#ERC4626-convertToAssets-uint256-
  1924. :ERC4626-maxDeposit: pass:normal[xref:token/ERC20.adoc#ERC4626-maxDeposit-address-[`ERC4626.maxDeposit`]]
  1925. :xref-ERC4626-maxDeposit-address-: xref:token/ERC20.adoc#ERC4626-maxDeposit-address-
  1926. :ERC4626-maxMint: pass:normal[xref:token/ERC20.adoc#ERC4626-maxMint-address-[`ERC4626.maxMint`]]
  1927. :xref-ERC4626-maxMint-address-: xref:token/ERC20.adoc#ERC4626-maxMint-address-
  1928. :ERC4626-maxWithdraw: pass:normal[xref:token/ERC20.adoc#ERC4626-maxWithdraw-address-[`ERC4626.maxWithdraw`]]
  1929. :xref-ERC4626-maxWithdraw-address-: xref:token/ERC20.adoc#ERC4626-maxWithdraw-address-
  1930. :ERC4626-maxRedeem: pass:normal[xref:token/ERC20.adoc#ERC4626-maxRedeem-address-[`ERC4626.maxRedeem`]]
  1931. :xref-ERC4626-maxRedeem-address-: xref:token/ERC20.adoc#ERC4626-maxRedeem-address-
  1932. :ERC4626-previewDeposit: pass:normal[xref:token/ERC20.adoc#ERC4626-previewDeposit-uint256-[`ERC4626.previewDeposit`]]
  1933. :xref-ERC4626-previewDeposit-uint256-: xref:token/ERC20.adoc#ERC4626-previewDeposit-uint256-
  1934. :ERC4626-previewMint: pass:normal[xref:token/ERC20.adoc#ERC4626-previewMint-uint256-[`ERC4626.previewMint`]]
  1935. :xref-ERC4626-previewMint-uint256-: xref:token/ERC20.adoc#ERC4626-previewMint-uint256-
  1936. :ERC4626-previewWithdraw: pass:normal[xref:token/ERC20.adoc#ERC4626-previewWithdraw-uint256-[`ERC4626.previewWithdraw`]]
  1937. :xref-ERC4626-previewWithdraw-uint256-: xref:token/ERC20.adoc#ERC4626-previewWithdraw-uint256-
  1938. :ERC4626-previewRedeem: pass:normal[xref:token/ERC20.adoc#ERC4626-previewRedeem-uint256-[`ERC4626.previewRedeem`]]
  1939. :xref-ERC4626-previewRedeem-uint256-: xref:token/ERC20.adoc#ERC4626-previewRedeem-uint256-
  1940. :ERC4626-deposit: pass:normal[xref:token/ERC20.adoc#ERC4626-deposit-uint256-address-[`ERC4626.deposit`]]
  1941. :xref-ERC4626-deposit-uint256-address-: xref:token/ERC20.adoc#ERC4626-deposit-uint256-address-
  1942. :ERC4626-mint: pass:normal[xref:token/ERC20.adoc#ERC4626-mint-uint256-address-[`ERC4626.mint`]]
  1943. :xref-ERC4626-mint-uint256-address-: xref:token/ERC20.adoc#ERC4626-mint-uint256-address-
  1944. :ERC4626-withdraw: pass:normal[xref:token/ERC20.adoc#ERC4626-withdraw-uint256-address-address-[`ERC4626.withdraw`]]
  1945. :xref-ERC4626-withdraw-uint256-address-address-: xref:token/ERC20.adoc#ERC4626-withdraw-uint256-address-address-
  1946. :ERC4626-redeem: pass:normal[xref:token/ERC20.adoc#ERC4626-redeem-uint256-address-address-[`ERC4626.redeem`]]
  1947. :xref-ERC4626-redeem-uint256-address-address-: xref:token/ERC20.adoc#ERC4626-redeem-uint256-address-address-
  1948. :ERC4626-_convertToShares: pass:normal[xref:token/ERC20.adoc#ERC4626-_convertToShares-uint256-enum-Math-Rounding-[`ERC4626._convertToShares`]]
  1949. :xref-ERC4626-_convertToShares-uint256-enum-Math-Rounding-: xref:token/ERC20.adoc#ERC4626-_convertToShares-uint256-enum-Math-Rounding-
  1950. :ERC4626-_convertToAssets: pass:normal[xref:token/ERC20.adoc#ERC4626-_convertToAssets-uint256-enum-Math-Rounding-[`ERC4626._convertToAssets`]]
  1951. :xref-ERC4626-_convertToAssets-uint256-enum-Math-Rounding-: xref:token/ERC20.adoc#ERC4626-_convertToAssets-uint256-enum-Math-Rounding-
  1952. :ERC4626-_deposit: pass:normal[xref:token/ERC20.adoc#ERC4626-_deposit-address-address-uint256-uint256-[`ERC4626._deposit`]]
  1953. :xref-ERC4626-_deposit-address-address-uint256-uint256-: xref:token/ERC20.adoc#ERC4626-_deposit-address-address-uint256-uint256-
  1954. :ERC4626-_withdraw: pass:normal[xref:token/ERC20.adoc#ERC4626-_withdraw-address-address-address-uint256-uint256-[`ERC4626._withdraw`]]
  1955. :xref-ERC4626-_withdraw-address-address-address-uint256-uint256-: xref:token/ERC20.adoc#ERC4626-_withdraw-address-address-address-uint256-uint256-
  1956. :IERC20Metadata: pass:normal[xref:token/ERC20.adoc#IERC20Metadata[`IERC20Metadata`]]
  1957. :xref-IERC20Metadata: xref:token/ERC20.adoc#IERC20Metadata
  1958. :IERC20Metadata-name: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-name--[`IERC20Metadata.name`]]
  1959. :xref-IERC20Metadata-name--: xref:token/ERC20.adoc#IERC20Metadata-name--
  1960. :IERC20Metadata-symbol: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-symbol--[`IERC20Metadata.symbol`]]
  1961. :xref-IERC20Metadata-symbol--: xref:token/ERC20.adoc#IERC20Metadata-symbol--
  1962. :IERC20Metadata-decimals: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-decimals--[`IERC20Metadata.decimals`]]
  1963. :xref-IERC20Metadata-decimals--: xref:token/ERC20.adoc#IERC20Metadata-decimals--
  1964. :ERC20Permit: pass:normal[xref:token/ERC20.adoc#ERC20Permit[`ERC20Permit`]]
  1965. :xref-ERC20Permit: xref:token/ERC20.adoc#ERC20Permit
  1966. :ERC20Permit-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Permit-constructor-string-[`ERC20Permit.constructor`]]
  1967. :xref-ERC20Permit-constructor-string-: xref:token/ERC20.adoc#ERC20Permit-constructor-string-
  1968. :ERC20Permit-permit: pass:normal[xref:token/ERC20.adoc#ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`ERC20Permit.permit`]]
  1969. :xref-ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1970. :ERC20Permit-nonces: pass:normal[xref:token/ERC20.adoc#ERC20Permit-nonces-address-[`ERC20Permit.nonces`]]
  1971. :xref-ERC20Permit-nonces-address-: xref:token/ERC20.adoc#ERC20Permit-nonces-address-
  1972. :ERC20Permit-DOMAIN_SEPARATOR: pass:normal[xref:token/ERC20.adoc#ERC20Permit-DOMAIN_SEPARATOR--[`ERC20Permit.DOMAIN_SEPARATOR`]]
  1973. :xref-ERC20Permit-DOMAIN_SEPARATOR--: xref:token/ERC20.adoc#ERC20Permit-DOMAIN_SEPARATOR--
  1974. :ERC20Permit-_useNonce: pass:normal[xref:token/ERC20.adoc#ERC20Permit-_useNonce-address-[`ERC20Permit._useNonce`]]
  1975. :xref-ERC20Permit-_useNonce-address-: xref:token/ERC20.adoc#ERC20Permit-_useNonce-address-
  1976. :IERC20Permit: pass:normal[xref:token/ERC20.adoc#IERC20Permit[`IERC20Permit`]]
  1977. :xref-IERC20Permit: xref:token/ERC20.adoc#IERC20Permit
  1978. :IERC20Permit-permit: pass:normal[xref:token/ERC20.adoc#IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`IERC20Permit.permit`]]
  1979. :xref-IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1980. :IERC20Permit-nonces: pass:normal[xref:token/ERC20.adoc#IERC20Permit-nonces-address-[`IERC20Permit.nonces`]]
  1981. :xref-IERC20Permit-nonces-address-: xref:token/ERC20.adoc#IERC20Permit-nonces-address-
  1982. :IERC20Permit-DOMAIN_SEPARATOR: pass:normal[xref:token/ERC20.adoc#IERC20Permit-DOMAIN_SEPARATOR--[`IERC20Permit.DOMAIN_SEPARATOR`]]
  1983. :xref-IERC20Permit-DOMAIN_SEPARATOR--: xref:token/ERC20.adoc#IERC20Permit-DOMAIN_SEPARATOR--
  1984. :SafeERC20: pass:normal[xref:token/ERC20.adoc#SafeERC20[`SafeERC20`]]
  1985. :xref-SafeERC20: xref:token/ERC20.adoc#SafeERC20
  1986. :SafeERC20-safeTransfer: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeTransfer-contract-IERC20-address-uint256-[`SafeERC20.safeTransfer`]]
  1987. :xref-SafeERC20-safeTransfer-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeTransfer-contract-IERC20-address-uint256-
  1988. :SafeERC20-safeTransferFrom: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-[`SafeERC20.safeTransferFrom`]]
  1989. :xref-SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-
  1990. :SafeERC20-safeApprove: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeApprove-contract-IERC20-address-uint256-[`SafeERC20.safeApprove`]]
  1991. :xref-SafeERC20-safeApprove-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeApprove-contract-IERC20-address-uint256-
  1992. :SafeERC20-safeIncreaseAllowance: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-[`SafeERC20.safeIncreaseAllowance`]]
  1993. :xref-SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-
  1994. :SafeERC20-safeDecreaseAllowance: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-[`SafeERC20.safeDecreaseAllowance`]]
  1995. :xref-SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-
  1996. :SafeERC20-safePermit: pass:normal[xref:token/ERC20.adoc#SafeERC20-safePermit-contract-IERC20Permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`SafeERC20.safePermit`]]
  1997. :xref-SafeERC20-safePermit-contract-IERC20Permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#SafeERC20-safePermit-contract-IERC20Permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1998. :TokenTimelock: pass:normal[xref:token/ERC20.adoc#TokenTimelock[`TokenTimelock`]]
  1999. :xref-TokenTimelock: xref:token/ERC20.adoc#TokenTimelock
  2000. :TokenTimelock-constructor: pass:normal[xref:token/ERC20.adoc#TokenTimelock-constructor-contract-IERC20-address-uint256-[`TokenTimelock.constructor`]]
  2001. :xref-TokenTimelock-constructor-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#TokenTimelock-constructor-contract-IERC20-address-uint256-
  2002. :TokenTimelock-token: pass:normal[xref:token/ERC20.adoc#TokenTimelock-token--[`TokenTimelock.token`]]
  2003. :xref-TokenTimelock-token--: xref:token/ERC20.adoc#TokenTimelock-token--
  2004. :TokenTimelock-beneficiary: pass:normal[xref:token/ERC20.adoc#TokenTimelock-beneficiary--[`TokenTimelock.beneficiary`]]
  2005. :xref-TokenTimelock-beneficiary--: xref:token/ERC20.adoc#TokenTimelock-beneficiary--
  2006. :TokenTimelock-releaseTime: pass:normal[xref:token/ERC20.adoc#TokenTimelock-releaseTime--[`TokenTimelock.releaseTime`]]
  2007. :xref-TokenTimelock-releaseTime--: xref:token/ERC20.adoc#TokenTimelock-releaseTime--
  2008. :TokenTimelock-release: pass:normal[xref:token/ERC20.adoc#TokenTimelock-release--[`TokenTimelock.release`]]
  2009. :xref-TokenTimelock-release--: xref:token/ERC20.adoc#TokenTimelock-release--
  2010. :ERC721: pass:normal[xref:token/ERC721.adoc#ERC721[`ERC721`]]
  2011. :xref-ERC721: xref:token/ERC721.adoc#ERC721
  2012. :ERC721-constructor: pass:normal[xref:token/ERC721.adoc#ERC721-constructor-string-string-[`ERC721.constructor`]]
  2013. :xref-ERC721-constructor-string-string-: xref:token/ERC721.adoc#ERC721-constructor-string-string-
  2014. :ERC721-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721-supportsInterface-bytes4-[`ERC721.supportsInterface`]]
  2015. :xref-ERC721-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721-supportsInterface-bytes4-
  2016. :ERC721-balanceOf: pass:normal[xref:token/ERC721.adoc#ERC721-balanceOf-address-[`ERC721.balanceOf`]]
  2017. :xref-ERC721-balanceOf-address-: xref:token/ERC721.adoc#ERC721-balanceOf-address-
  2018. :ERC721-ownerOf: pass:normal[xref:token/ERC721.adoc#ERC721-ownerOf-uint256-[`ERC721.ownerOf`]]
  2019. :xref-ERC721-ownerOf-uint256-: xref:token/ERC721.adoc#ERC721-ownerOf-uint256-
  2020. :ERC721-name: pass:normal[xref:token/ERC721.adoc#ERC721-name--[`ERC721.name`]]
  2021. :xref-ERC721-name--: xref:token/ERC721.adoc#ERC721-name--
  2022. :ERC721-symbol: pass:normal[xref:token/ERC721.adoc#ERC721-symbol--[`ERC721.symbol`]]
  2023. :xref-ERC721-symbol--: xref:token/ERC721.adoc#ERC721-symbol--
  2024. :ERC721-tokenURI: pass:normal[xref:token/ERC721.adoc#ERC721-tokenURI-uint256-[`ERC721.tokenURI`]]
  2025. :xref-ERC721-tokenURI-uint256-: xref:token/ERC721.adoc#ERC721-tokenURI-uint256-
  2026. :ERC721-_baseURI: pass:normal[xref:token/ERC721.adoc#ERC721-_baseURI--[`ERC721._baseURI`]]
  2027. :xref-ERC721-_baseURI--: xref:token/ERC721.adoc#ERC721-_baseURI--
  2028. :ERC721-approve: pass:normal[xref:token/ERC721.adoc#ERC721-approve-address-uint256-[`ERC721.approve`]]
  2029. :xref-ERC721-approve-address-uint256-: xref:token/ERC721.adoc#ERC721-approve-address-uint256-
  2030. :ERC721-getApproved: pass:normal[xref:token/ERC721.adoc#ERC721-getApproved-uint256-[`ERC721.getApproved`]]
  2031. :xref-ERC721-getApproved-uint256-: xref:token/ERC721.adoc#ERC721-getApproved-uint256-
  2032. :ERC721-setApprovalForAll: pass:normal[xref:token/ERC721.adoc#ERC721-setApprovalForAll-address-bool-[`ERC721.setApprovalForAll`]]
  2033. :xref-ERC721-setApprovalForAll-address-bool-: xref:token/ERC721.adoc#ERC721-setApprovalForAll-address-bool-
  2034. :ERC721-isApprovedForAll: pass:normal[xref:token/ERC721.adoc#ERC721-isApprovedForAll-address-address-[`ERC721.isApprovedForAll`]]
  2035. :xref-ERC721-isApprovedForAll-address-address-: xref:token/ERC721.adoc#ERC721-isApprovedForAll-address-address-
  2036. :ERC721-transferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-transferFrom-address-address-uint256-[`ERC721.transferFrom`]]
  2037. :xref-ERC721-transferFrom-address-address-uint256-: xref:token/ERC721.adoc#ERC721-transferFrom-address-address-uint256-
  2038. :ERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-[`ERC721.safeTransferFrom`]]
  2039. :xref-ERC721-safeTransferFrom-address-address-uint256-: xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-
  2040. :ERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-bytes-[`ERC721.safeTransferFrom`]]
  2041. :xref-ERC721-safeTransferFrom-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-bytes-
  2042. :ERC721-_safeTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_safeTransfer-address-address-uint256-bytes-[`ERC721._safeTransfer`]]
  2043. :xref-ERC721-_safeTransfer-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-_safeTransfer-address-address-uint256-bytes-
  2044. :ERC721-_exists: pass:normal[xref:token/ERC721.adoc#ERC721-_exists-uint256-[`ERC721._exists`]]
  2045. :xref-ERC721-_exists-uint256-: xref:token/ERC721.adoc#ERC721-_exists-uint256-
  2046. :ERC721-_isApprovedOrOwner: pass:normal[xref:token/ERC721.adoc#ERC721-_isApprovedOrOwner-address-uint256-[`ERC721._isApprovedOrOwner`]]
  2047. :xref-ERC721-_isApprovedOrOwner-address-uint256-: xref:token/ERC721.adoc#ERC721-_isApprovedOrOwner-address-uint256-
  2048. :ERC721-_safeMint: pass:normal[xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-[`ERC721._safeMint`]]
  2049. :xref-ERC721-_safeMint-address-uint256-: xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-
  2050. :ERC721-_safeMint: pass:normal[xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-bytes-[`ERC721._safeMint`]]
  2051. :xref-ERC721-_safeMint-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-bytes-
  2052. :ERC721-_mint: pass:normal[xref:token/ERC721.adoc#ERC721-_mint-address-uint256-[`ERC721._mint`]]
  2053. :xref-ERC721-_mint-address-uint256-: xref:token/ERC721.adoc#ERC721-_mint-address-uint256-
  2054. :ERC721-_burn: pass:normal[xref:token/ERC721.adoc#ERC721-_burn-uint256-[`ERC721._burn`]]
  2055. :xref-ERC721-_burn-uint256-: xref:token/ERC721.adoc#ERC721-_burn-uint256-
  2056. :ERC721-_transfer: pass:normal[xref:token/ERC721.adoc#ERC721-_transfer-address-address-uint256-[`ERC721._transfer`]]
  2057. :xref-ERC721-_transfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_transfer-address-address-uint256-
  2058. :ERC721-_approve: pass:normal[xref:token/ERC721.adoc#ERC721-_approve-address-uint256-[`ERC721._approve`]]
  2059. :xref-ERC721-_approve-address-uint256-: xref:token/ERC721.adoc#ERC721-_approve-address-uint256-
  2060. :ERC721-_setApprovalForAll: pass:normal[xref:token/ERC721.adoc#ERC721-_setApprovalForAll-address-address-bool-[`ERC721._setApprovalForAll`]]
  2061. :xref-ERC721-_setApprovalForAll-address-address-bool-: xref:token/ERC721.adoc#ERC721-_setApprovalForAll-address-address-bool-
  2062. :ERC721-_requireMinted: pass:normal[xref:token/ERC721.adoc#ERC721-_requireMinted-uint256-[`ERC721._requireMinted`]]
  2063. :xref-ERC721-_requireMinted-uint256-: xref:token/ERC721.adoc#ERC721-_requireMinted-uint256-
  2064. :ERC721-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_beforeTokenTransfer-address-address-uint256-[`ERC721._beforeTokenTransfer`]]
  2065. :xref-ERC721-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_beforeTokenTransfer-address-address-uint256-
  2066. :ERC721-_afterTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_afterTokenTransfer-address-address-uint256-[`ERC721._afterTokenTransfer`]]
  2067. :xref-ERC721-_afterTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_afterTokenTransfer-address-address-uint256-
  2068. :IERC721: pass:normal[xref:token/ERC721.adoc#IERC721[`IERC721`]]
  2069. :xref-IERC721: xref:token/ERC721.adoc#IERC721
  2070. :IERC721-balanceOf: pass:normal[xref:token/ERC721.adoc#IERC721-balanceOf-address-[`IERC721.balanceOf`]]
  2071. :xref-IERC721-balanceOf-address-: xref:token/ERC721.adoc#IERC721-balanceOf-address-
  2072. :IERC721-ownerOf: pass:normal[xref:token/ERC721.adoc#IERC721-ownerOf-uint256-[`IERC721.ownerOf`]]
  2073. :xref-IERC721-ownerOf-uint256-: xref:token/ERC721.adoc#IERC721-ownerOf-uint256-
  2074. :IERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-bytes-[`IERC721.safeTransferFrom`]]
  2075. :xref-IERC721-safeTransferFrom-address-address-uint256-bytes-: xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-bytes-
  2076. :IERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-[`IERC721.safeTransferFrom`]]
  2077. :xref-IERC721-safeTransferFrom-address-address-uint256-: xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-
  2078. :IERC721-transferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-transferFrom-address-address-uint256-[`IERC721.transferFrom`]]
  2079. :xref-IERC721-transferFrom-address-address-uint256-: xref:token/ERC721.adoc#IERC721-transferFrom-address-address-uint256-
  2080. :IERC721-approve: pass:normal[xref:token/ERC721.adoc#IERC721-approve-address-uint256-[`IERC721.approve`]]
  2081. :xref-IERC721-approve-address-uint256-: xref:token/ERC721.adoc#IERC721-approve-address-uint256-
  2082. :IERC721-setApprovalForAll: pass:normal[xref:token/ERC721.adoc#IERC721-setApprovalForAll-address-bool-[`IERC721.setApprovalForAll`]]
  2083. :xref-IERC721-setApprovalForAll-address-bool-: xref:token/ERC721.adoc#IERC721-setApprovalForAll-address-bool-
  2084. :IERC721-getApproved: pass:normal[xref:token/ERC721.adoc#IERC721-getApproved-uint256-[`IERC721.getApproved`]]
  2085. :xref-IERC721-getApproved-uint256-: xref:token/ERC721.adoc#IERC721-getApproved-uint256-
  2086. :IERC721-isApprovedForAll: pass:normal[xref:token/ERC721.adoc#IERC721-isApprovedForAll-address-address-[`IERC721.isApprovedForAll`]]
  2087. :xref-IERC721-isApprovedForAll-address-address-: xref:token/ERC721.adoc#IERC721-isApprovedForAll-address-address-
  2088. :IERC721-Transfer: pass:normal[xref:token/ERC721.adoc#IERC721-Transfer-address-address-uint256-[`IERC721.Transfer`]]
  2089. :xref-IERC721-Transfer-address-address-uint256-: xref:token/ERC721.adoc#IERC721-Transfer-address-address-uint256-
  2090. :IERC721-Approval: pass:normal[xref:token/ERC721.adoc#IERC721-Approval-address-address-uint256-[`IERC721.Approval`]]
  2091. :xref-IERC721-Approval-address-address-uint256-: xref:token/ERC721.adoc#IERC721-Approval-address-address-uint256-
  2092. :IERC721-ApprovalForAll: pass:normal[xref:token/ERC721.adoc#IERC721-ApprovalForAll-address-address-bool-[`IERC721.ApprovalForAll`]]
  2093. :xref-IERC721-ApprovalForAll-address-address-bool-: xref:token/ERC721.adoc#IERC721-ApprovalForAll-address-address-bool-
  2094. :IERC721Receiver: pass:normal[xref:token/ERC721.adoc#IERC721Receiver[`IERC721Receiver`]]
  2095. :xref-IERC721Receiver: xref:token/ERC721.adoc#IERC721Receiver
  2096. :IERC721Receiver-onERC721Received: pass:normal[xref:token/ERC721.adoc#IERC721Receiver-onERC721Received-address-address-uint256-bytes-[`IERC721Receiver.onERC721Received`]]
  2097. :xref-IERC721Receiver-onERC721Received-address-address-uint256-bytes-: xref:token/ERC721.adoc#IERC721Receiver-onERC721Received-address-address-uint256-bytes-
  2098. :ERC721Burnable: pass:normal[xref:token/ERC721.adoc#ERC721Burnable[`ERC721Burnable`]]
  2099. :xref-ERC721Burnable: xref:token/ERC721.adoc#ERC721Burnable
  2100. :ERC721Burnable-burn: pass:normal[xref:token/ERC721.adoc#ERC721Burnable-burn-uint256-[`ERC721Burnable.burn`]]
  2101. :xref-ERC721Burnable-burn-uint256-: xref:token/ERC721.adoc#ERC721Burnable-burn-uint256-
  2102. :ERC721Enumerable: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable[`ERC721Enumerable`]]
  2103. :xref-ERC721Enumerable: xref:token/ERC721.adoc#ERC721Enumerable
  2104. :ERC721Enumerable-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-supportsInterface-bytes4-[`ERC721Enumerable.supportsInterface`]]
  2105. :xref-ERC721Enumerable-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721Enumerable-supportsInterface-bytes4-
  2106. :ERC721Enumerable-tokenOfOwnerByIndex: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-[`ERC721Enumerable.tokenOfOwnerByIndex`]]
  2107. :xref-ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-
  2108. :ERC721Enumerable-totalSupply: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-totalSupply--[`ERC721Enumerable.totalSupply`]]
  2109. :xref-ERC721Enumerable-totalSupply--: xref:token/ERC721.adoc#ERC721Enumerable-totalSupply--
  2110. :ERC721Enumerable-tokenByIndex: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-tokenByIndex-uint256-[`ERC721Enumerable.tokenByIndex`]]
  2111. :xref-ERC721Enumerable-tokenByIndex-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-tokenByIndex-uint256-
  2112. :ERC721Enumerable-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-[`ERC721Enumerable._beforeTokenTransfer`]]
  2113. :xref-ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-
  2114. :ERC721Pausable: pass:normal[xref:token/ERC721.adoc#ERC721Pausable[`ERC721Pausable`]]
  2115. :xref-ERC721Pausable: xref:token/ERC721.adoc#ERC721Pausable
  2116. :ERC721Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Pausable-_beforeTokenTransfer-address-address-uint256-[`ERC721Pausable._beforeTokenTransfer`]]
  2117. :xref-ERC721Pausable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Pausable-_beforeTokenTransfer-address-address-uint256-
  2118. :ERC721Royalty: pass:normal[xref:token/ERC721.adoc#ERC721Royalty[`ERC721Royalty`]]
  2119. :xref-ERC721Royalty: xref:token/ERC721.adoc#ERC721Royalty
  2120. :ERC721Royalty-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721Royalty-supportsInterface-bytes4-[`ERC721Royalty.supportsInterface`]]
  2121. :xref-ERC721Royalty-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721Royalty-supportsInterface-bytes4-
  2122. :ERC721Royalty-_burn: pass:normal[xref:token/ERC721.adoc#ERC721Royalty-_burn-uint256-[`ERC721Royalty._burn`]]
  2123. :xref-ERC721Royalty-_burn-uint256-: xref:token/ERC721.adoc#ERC721Royalty-_burn-uint256-
  2124. :ERC721URIStorage: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage[`ERC721URIStorage`]]
  2125. :xref-ERC721URIStorage: xref:token/ERC721.adoc#ERC721URIStorage
  2126. :ERC721URIStorage-tokenURI: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-tokenURI-uint256-[`ERC721URIStorage.tokenURI`]]
  2127. :xref-ERC721URIStorage-tokenURI-uint256-: xref:token/ERC721.adoc#ERC721URIStorage-tokenURI-uint256-
  2128. :ERC721URIStorage-_setTokenURI: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-_setTokenURI-uint256-string-[`ERC721URIStorage._setTokenURI`]]
  2129. :xref-ERC721URIStorage-_setTokenURI-uint256-string-: xref:token/ERC721.adoc#ERC721URIStorage-_setTokenURI-uint256-string-
  2130. :ERC721URIStorage-_burn: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-_burn-uint256-[`ERC721URIStorage._burn`]]
  2131. :xref-ERC721URIStorage-_burn-uint256-: xref:token/ERC721.adoc#ERC721URIStorage-_burn-uint256-
  2132. :IERC721Enumerable: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable[`IERC721Enumerable`]]
  2133. :xref-IERC721Enumerable: xref:token/ERC721.adoc#IERC721Enumerable
  2134. :IERC721Enumerable-totalSupply: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-totalSupply--[`IERC721Enumerable.totalSupply`]]
  2135. :xref-IERC721Enumerable-totalSupply--: xref:token/ERC721.adoc#IERC721Enumerable-totalSupply--
  2136. :IERC721Enumerable-tokenOfOwnerByIndex: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-[`IERC721Enumerable.tokenOfOwnerByIndex`]]
  2137. :xref-IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-: xref:token/ERC721.adoc#IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-
  2138. :IERC721Enumerable-tokenByIndex: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-tokenByIndex-uint256-[`IERC721Enumerable.tokenByIndex`]]
  2139. :xref-IERC721Enumerable-tokenByIndex-uint256-: xref:token/ERC721.adoc#IERC721Enumerable-tokenByIndex-uint256-
  2140. :IERC721Metadata: pass:normal[xref:token/ERC721.adoc#IERC721Metadata[`IERC721Metadata`]]
  2141. :xref-IERC721Metadata: xref:token/ERC721.adoc#IERC721Metadata
  2142. :IERC721Metadata-name: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-name--[`IERC721Metadata.name`]]
  2143. :xref-IERC721Metadata-name--: xref:token/ERC721.adoc#IERC721Metadata-name--
  2144. :IERC721Metadata-symbol: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-symbol--[`IERC721Metadata.symbol`]]
  2145. :xref-IERC721Metadata-symbol--: xref:token/ERC721.adoc#IERC721Metadata-symbol--
  2146. :IERC721Metadata-tokenURI: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-tokenURI-uint256-[`IERC721Metadata.tokenURI`]]
  2147. :xref-IERC721Metadata-tokenURI-uint256-: xref:token/ERC721.adoc#IERC721Metadata-tokenURI-uint256-
  2148. :ERC721Votes: pass:normal[xref:token/ERC721.adoc#ERC721Votes[`ERC721Votes`]]
  2149. :xref-ERC721Votes: xref:token/ERC721.adoc#ERC721Votes
  2150. :ERC721Votes-_afterTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Votes-_afterTokenTransfer-address-address-uint256-[`ERC721Votes._afterTokenTransfer`]]
  2151. :xref-ERC721Votes-_afterTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Votes-_afterTokenTransfer-address-address-uint256-
  2152. :ERC721Votes-_getVotingUnits: pass:normal[xref:token/ERC721.adoc#ERC721Votes-_getVotingUnits-address-[`ERC721Votes._getVotingUnits`]]
  2153. :xref-ERC721Votes-_getVotingUnits-address-: xref:token/ERC721.adoc#ERC721Votes-_getVotingUnits-address-
  2154. :ERC721Holder: pass:normal[xref:token/ERC721.adoc#ERC721Holder[`ERC721Holder`]]
  2155. :xref-ERC721Holder: xref:token/ERC721.adoc#ERC721Holder
  2156. :ERC721Holder-onERC721Received: pass:normal[xref:token/ERC721.adoc#ERC721Holder-onERC721Received-address-address-uint256-bytes-[`ERC721Holder.onERC721Received`]]
  2157. :xref-ERC721Holder-onERC721Received-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721Holder-onERC721Received-address-address-uint256-bytes-
  2158. :ERC777: pass:normal[xref:token/ERC777.adoc#ERC777[`ERC777`]]
  2159. :xref-ERC777: xref:token/ERC777.adoc#ERC777
  2160. :ERC777-_ERC1820_REGISTRY: pass:normal[xref:token/ERC777.adoc#ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry[`ERC777._ERC1820_REGISTRY`]]
  2161. :xref-ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry: xref:token/ERC777.adoc#ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry
  2162. :ERC777-constructor: pass:normal[xref:token/ERC777.adoc#ERC777-constructor-string-string-address---[`ERC777.constructor`]]
  2163. :xref-ERC777-constructor-string-string-address---: xref:token/ERC777.adoc#ERC777-constructor-string-string-address---
  2164. :ERC777-name: pass:normal[xref:token/ERC777.adoc#ERC777-name--[`ERC777.name`]]
  2165. :xref-ERC777-name--: xref:token/ERC777.adoc#ERC777-name--
  2166. :ERC777-symbol: pass:normal[xref:token/ERC777.adoc#ERC777-symbol--[`ERC777.symbol`]]
  2167. :xref-ERC777-symbol--: xref:token/ERC777.adoc#ERC777-symbol--
  2168. :ERC777-decimals: pass:normal[xref:token/ERC777.adoc#ERC777-decimals--[`ERC777.decimals`]]
  2169. :xref-ERC777-decimals--: xref:token/ERC777.adoc#ERC777-decimals--
  2170. :ERC777-granularity: pass:normal[xref:token/ERC777.adoc#ERC777-granularity--[`ERC777.granularity`]]
  2171. :xref-ERC777-granularity--: xref:token/ERC777.adoc#ERC777-granularity--
  2172. :ERC777-totalSupply: pass:normal[xref:token/ERC777.adoc#ERC777-totalSupply--[`ERC777.totalSupply`]]
  2173. :xref-ERC777-totalSupply--: xref:token/ERC777.adoc#ERC777-totalSupply--
  2174. :ERC777-balanceOf: pass:normal[xref:token/ERC777.adoc#ERC777-balanceOf-address-[`ERC777.balanceOf`]]
  2175. :xref-ERC777-balanceOf-address-: xref:token/ERC777.adoc#ERC777-balanceOf-address-
  2176. :ERC777-send: pass:normal[xref:token/ERC777.adoc#ERC777-send-address-uint256-bytes-[`ERC777.send`]]
  2177. :xref-ERC777-send-address-uint256-bytes-: xref:token/ERC777.adoc#ERC777-send-address-uint256-bytes-
  2178. :ERC777-transfer: pass:normal[xref:token/ERC777.adoc#ERC777-transfer-address-uint256-[`ERC777.transfer`]]
  2179. :xref-ERC777-transfer-address-uint256-: xref:token/ERC777.adoc#ERC777-transfer-address-uint256-
  2180. :ERC777-burn: pass:normal[xref:token/ERC777.adoc#ERC777-burn-uint256-bytes-[`ERC777.burn`]]
  2181. :xref-ERC777-burn-uint256-bytes-: xref:token/ERC777.adoc#ERC777-burn-uint256-bytes-
  2182. :ERC777-isOperatorFor: pass:normal[xref:token/ERC777.adoc#ERC777-isOperatorFor-address-address-[`ERC777.isOperatorFor`]]
  2183. :xref-ERC777-isOperatorFor-address-address-: xref:token/ERC777.adoc#ERC777-isOperatorFor-address-address-
  2184. :ERC777-authorizeOperator: pass:normal[xref:token/ERC777.adoc#ERC777-authorizeOperator-address-[`ERC777.authorizeOperator`]]
  2185. :xref-ERC777-authorizeOperator-address-: xref:token/ERC777.adoc#ERC777-authorizeOperator-address-
  2186. :ERC777-revokeOperator: pass:normal[xref:token/ERC777.adoc#ERC777-revokeOperator-address-[`ERC777.revokeOperator`]]
  2187. :xref-ERC777-revokeOperator-address-: xref:token/ERC777.adoc#ERC777-revokeOperator-address-
  2188. :ERC777-defaultOperators: pass:normal[xref:token/ERC777.adoc#ERC777-defaultOperators--[`ERC777.defaultOperators`]]
  2189. :xref-ERC777-defaultOperators--: xref:token/ERC777.adoc#ERC777-defaultOperators--
  2190. :ERC777-operatorSend: pass:normal[xref:token/ERC777.adoc#ERC777-operatorSend-address-address-uint256-bytes-bytes-[`ERC777.operatorSend`]]
  2191. :xref-ERC777-operatorSend-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-operatorSend-address-address-uint256-bytes-bytes-
  2192. :ERC777-operatorBurn: pass:normal[xref:token/ERC777.adoc#ERC777-operatorBurn-address-uint256-bytes-bytes-[`ERC777.operatorBurn`]]
  2193. :xref-ERC777-operatorBurn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-operatorBurn-address-uint256-bytes-bytes-
  2194. :ERC777-allowance: pass:normal[xref:token/ERC777.adoc#ERC777-allowance-address-address-[`ERC777.allowance`]]
  2195. :xref-ERC777-allowance-address-address-: xref:token/ERC777.adoc#ERC777-allowance-address-address-
  2196. :ERC777-approve: pass:normal[xref:token/ERC777.adoc#ERC777-approve-address-uint256-[`ERC777.approve`]]
  2197. :xref-ERC777-approve-address-uint256-: xref:token/ERC777.adoc#ERC777-approve-address-uint256-
  2198. :ERC777-transferFrom: pass:normal[xref:token/ERC777.adoc#ERC777-transferFrom-address-address-uint256-[`ERC777.transferFrom`]]
  2199. :xref-ERC777-transferFrom-address-address-uint256-: xref:token/ERC777.adoc#ERC777-transferFrom-address-address-uint256-
  2200. :ERC777-_mint: pass:normal[xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-[`ERC777._mint`]]
  2201. :xref-ERC777-_mint-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-
  2202. :ERC777-_mint: pass:normal[xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-bool-[`ERC777._mint`]]
  2203. :xref-ERC777-_mint-address-uint256-bytes-bytes-bool-: xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-bool-
  2204. :ERC777-_send: pass:normal[xref:token/ERC777.adoc#ERC777-_send-address-address-uint256-bytes-bytes-bool-[`ERC777._send`]]
  2205. :xref-ERC777-_send-address-address-uint256-bytes-bytes-bool-: xref:token/ERC777.adoc#ERC777-_send-address-address-uint256-bytes-bytes-bool-
  2206. :ERC777-_burn: pass:normal[xref:token/ERC777.adoc#ERC777-_burn-address-uint256-bytes-bytes-[`ERC777._burn`]]
  2207. :xref-ERC777-_burn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-_burn-address-uint256-bytes-bytes-
  2208. :ERC777-_approve: pass:normal[xref:token/ERC777.adoc#ERC777-_approve-address-address-uint256-[`ERC777._approve`]]
  2209. :xref-ERC777-_approve-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_approve-address-address-uint256-
  2210. :ERC777-_spendAllowance: pass:normal[xref:token/ERC777.adoc#ERC777-_spendAllowance-address-address-uint256-[`ERC777._spendAllowance`]]
  2211. :xref-ERC777-_spendAllowance-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_spendAllowance-address-address-uint256-
  2212. :ERC777-_beforeTokenTransfer: pass:normal[xref:token/ERC777.adoc#ERC777-_beforeTokenTransfer-address-address-address-uint256-[`ERC777._beforeTokenTransfer`]]
  2213. :xref-ERC777-_beforeTokenTransfer-address-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_beforeTokenTransfer-address-address-address-uint256-
  2214. :IERC777: pass:normal[xref:token/ERC777.adoc#IERC777[`IERC777`]]
  2215. :xref-IERC777: xref:token/ERC777.adoc#IERC777
  2216. :IERC777-name: pass:normal[xref:token/ERC777.adoc#IERC777-name--[`IERC777.name`]]
  2217. :xref-IERC777-name--: xref:token/ERC777.adoc#IERC777-name--
  2218. :IERC777-symbol: pass:normal[xref:token/ERC777.adoc#IERC777-symbol--[`IERC777.symbol`]]
  2219. :xref-IERC777-symbol--: xref:token/ERC777.adoc#IERC777-symbol--
  2220. :IERC777-granularity: pass:normal[xref:token/ERC777.adoc#IERC777-granularity--[`IERC777.granularity`]]
  2221. :xref-IERC777-granularity--: xref:token/ERC777.adoc#IERC777-granularity--
  2222. :IERC777-totalSupply: pass:normal[xref:token/ERC777.adoc#IERC777-totalSupply--[`IERC777.totalSupply`]]
  2223. :xref-IERC777-totalSupply--: xref:token/ERC777.adoc#IERC777-totalSupply--
  2224. :IERC777-balanceOf: pass:normal[xref:token/ERC777.adoc#IERC777-balanceOf-address-[`IERC777.balanceOf`]]
  2225. :xref-IERC777-balanceOf-address-: xref:token/ERC777.adoc#IERC777-balanceOf-address-
  2226. :IERC777-send: pass:normal[xref:token/ERC777.adoc#IERC777-send-address-uint256-bytes-[`IERC777.send`]]
  2227. :xref-IERC777-send-address-uint256-bytes-: xref:token/ERC777.adoc#IERC777-send-address-uint256-bytes-
  2228. :IERC777-burn: pass:normal[xref:token/ERC777.adoc#IERC777-burn-uint256-bytes-[`IERC777.burn`]]
  2229. :xref-IERC777-burn-uint256-bytes-: xref:token/ERC777.adoc#IERC777-burn-uint256-bytes-
  2230. :IERC777-isOperatorFor: pass:normal[xref:token/ERC777.adoc#IERC777-isOperatorFor-address-address-[`IERC777.isOperatorFor`]]
  2231. :xref-IERC777-isOperatorFor-address-address-: xref:token/ERC777.adoc#IERC777-isOperatorFor-address-address-
  2232. :IERC777-authorizeOperator: pass:normal[xref:token/ERC777.adoc#IERC777-authorizeOperator-address-[`IERC777.authorizeOperator`]]
  2233. :xref-IERC777-authorizeOperator-address-: xref:token/ERC777.adoc#IERC777-authorizeOperator-address-
  2234. :IERC777-revokeOperator: pass:normal[xref:token/ERC777.adoc#IERC777-revokeOperator-address-[`IERC777.revokeOperator`]]
  2235. :xref-IERC777-revokeOperator-address-: xref:token/ERC777.adoc#IERC777-revokeOperator-address-
  2236. :IERC777-defaultOperators: pass:normal[xref:token/ERC777.adoc#IERC777-defaultOperators--[`IERC777.defaultOperators`]]
  2237. :xref-IERC777-defaultOperators--: xref:token/ERC777.adoc#IERC777-defaultOperators--
  2238. :IERC777-operatorSend: pass:normal[xref:token/ERC777.adoc#IERC777-operatorSend-address-address-uint256-bytes-bytes-[`IERC777.operatorSend`]]
  2239. :xref-IERC777-operatorSend-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-operatorSend-address-address-uint256-bytes-bytes-
  2240. :IERC777-operatorBurn: pass:normal[xref:token/ERC777.adoc#IERC777-operatorBurn-address-uint256-bytes-bytes-[`IERC777.operatorBurn`]]
  2241. :xref-IERC777-operatorBurn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-operatorBurn-address-uint256-bytes-bytes-
  2242. :IERC777-Minted: pass:normal[xref:token/ERC777.adoc#IERC777-Minted-address-address-uint256-bytes-bytes-[`IERC777.Minted`]]
  2243. :xref-IERC777-Minted-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Minted-address-address-uint256-bytes-bytes-
  2244. :IERC777-Burned: pass:normal[xref:token/ERC777.adoc#IERC777-Burned-address-address-uint256-bytes-bytes-[`IERC777.Burned`]]
  2245. :xref-IERC777-Burned-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Burned-address-address-uint256-bytes-bytes-
  2246. :IERC777-AuthorizedOperator: pass:normal[xref:token/ERC777.adoc#IERC777-AuthorizedOperator-address-address-[`IERC777.AuthorizedOperator`]]
  2247. :xref-IERC777-AuthorizedOperator-address-address-: xref:token/ERC777.adoc#IERC777-AuthorizedOperator-address-address-
  2248. :IERC777-RevokedOperator: pass:normal[xref:token/ERC777.adoc#IERC777-RevokedOperator-address-address-[`IERC777.RevokedOperator`]]
  2249. :xref-IERC777-RevokedOperator-address-address-: xref:token/ERC777.adoc#IERC777-RevokedOperator-address-address-
  2250. :IERC777-Sent: pass:normal[xref:token/ERC777.adoc#IERC777-Sent-address-address-address-uint256-bytes-bytes-[`IERC777.Sent`]]
  2251. :xref-IERC777-Sent-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Sent-address-address-address-uint256-bytes-bytes-
  2252. :IERC777Recipient: pass:normal[xref:token/ERC777.adoc#IERC777Recipient[`IERC777Recipient`]]
  2253. :xref-IERC777Recipient: xref:token/ERC777.adoc#IERC777Recipient
  2254. :IERC777Recipient-tokensReceived: pass:normal[xref:token/ERC777.adoc#IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-[`IERC777Recipient.tokensReceived`]]
  2255. :xref-IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-
  2256. :IERC777Sender: pass:normal[xref:token/ERC777.adoc#IERC777Sender[`IERC777Sender`]]
  2257. :xref-IERC777Sender: xref:token/ERC777.adoc#IERC777Sender
  2258. :IERC777Sender-tokensToSend: pass:normal[xref:token/ERC777.adoc#IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-[`IERC777Sender.tokensToSend`]]
  2259. :xref-IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-
  2260. :ERC777PresetFixedSupply: pass:normal[xref:token/ERC777.adoc#ERC777PresetFixedSupply[`ERC777PresetFixedSupply`]]
  2261. :xref-ERC777PresetFixedSupply: xref:token/ERC777.adoc#ERC777PresetFixedSupply
  2262. :ERC777PresetFixedSupply-constructor: pass:normal[xref:token/ERC777.adoc#ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-[`ERC777PresetFixedSupply.constructor`]]
  2263. :xref-ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-: xref:token/ERC777.adoc#ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-
  2264. :ERC2981: pass:normal[xref:token/common.adoc#ERC2981[`ERC2981`]]
  2265. :xref-ERC2981: xref:token/common.adoc#ERC2981
  2266. :ERC2981-supportsInterface: pass:normal[xref:token/common.adoc#ERC2981-supportsInterface-bytes4-[`ERC2981.supportsInterface`]]
  2267. :xref-ERC2981-supportsInterface-bytes4-: xref:token/common.adoc#ERC2981-supportsInterface-bytes4-
  2268. :ERC2981-royaltyInfo: pass:normal[xref:token/common.adoc#ERC2981-royaltyInfo-uint256-uint256-[`ERC2981.royaltyInfo`]]
  2269. :xref-ERC2981-royaltyInfo-uint256-uint256-: xref:token/common.adoc#ERC2981-royaltyInfo-uint256-uint256-
  2270. :ERC2981-_feeDenominator: pass:normal[xref:token/common.adoc#ERC2981-_feeDenominator--[`ERC2981._feeDenominator`]]
  2271. :xref-ERC2981-_feeDenominator--: xref:token/common.adoc#ERC2981-_feeDenominator--
  2272. :ERC2981-_setDefaultRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_setDefaultRoyalty-address-uint96-[`ERC2981._setDefaultRoyalty`]]
  2273. :xref-ERC2981-_setDefaultRoyalty-address-uint96-: xref:token/common.adoc#ERC2981-_setDefaultRoyalty-address-uint96-
  2274. :ERC2981-_deleteDefaultRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_deleteDefaultRoyalty--[`ERC2981._deleteDefaultRoyalty`]]
  2275. :xref-ERC2981-_deleteDefaultRoyalty--: xref:token/common.adoc#ERC2981-_deleteDefaultRoyalty--
  2276. :ERC2981-_setTokenRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_setTokenRoyalty-uint256-address-uint96-[`ERC2981._setTokenRoyalty`]]
  2277. :xref-ERC2981-_setTokenRoyalty-uint256-address-uint96-: xref:token/common.adoc#ERC2981-_setTokenRoyalty-uint256-address-uint96-
  2278. :ERC2981-_resetTokenRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_resetTokenRoyalty-uint256-[`ERC2981._resetTokenRoyalty`]]
  2279. :xref-ERC2981-_resetTokenRoyalty-uint256-: xref:token/common.adoc#ERC2981-_resetTokenRoyalty-uint256-
  2280. :ERC2981-RoyaltyInfo: pass:normal[xref:token/common.adoc#ERC2981-RoyaltyInfo[`ERC2981.RoyaltyInfo`]]
  2281. :xref-ERC2981-RoyaltyInfo: xref:token/common.adoc#ERC2981-RoyaltyInfo
  2282. :ERC1155PresetMinterPauser: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser[`ERC1155PresetMinterPauser`]]
  2283. :xref-ERC1155PresetMinterPauser: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser
  2284. :ERC1155PresetMinterPauser-MINTER_ROLE: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-MINTER_ROLE-bytes32[`ERC1155PresetMinterPauser.MINTER_ROLE`]]
  2285. :xref-ERC1155PresetMinterPauser-MINTER_ROLE-bytes32: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-MINTER_ROLE-bytes32
  2286. :ERC1155PresetMinterPauser-PAUSER_ROLE: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32[`ERC1155PresetMinterPauser.PAUSER_ROLE`]]
  2287. :xref-ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32
  2288. :ERC1155PresetMinterPauser-constructor: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-constructor-string-[`ERC1155PresetMinterPauser.constructor`]]
  2289. :xref-ERC1155PresetMinterPauser-constructor-string-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-constructor-string-
  2290. :ERC1155PresetMinterPauser-mint: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-[`ERC1155PresetMinterPauser.mint`]]
  2291. :xref-ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-
  2292. :ERC1155PresetMinterPauser-mintBatch: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-[`ERC1155PresetMinterPauser.mintBatch`]]
  2293. :xref-ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-
  2294. :ERC1155PresetMinterPauser-pause: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-pause--[`ERC1155PresetMinterPauser.pause`]]
  2295. :xref-ERC1155PresetMinterPauser-pause--: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-pause--
  2296. :ERC1155PresetMinterPauser-unpause: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-unpause--[`ERC1155PresetMinterPauser.unpause`]]
  2297. :xref-ERC1155PresetMinterPauser-unpause--: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-unpause--
  2298. :ERC1155PresetMinterPauser-supportsInterface: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-supportsInterface-bytes4-[`ERC1155PresetMinterPauser.supportsInterface`]]
  2299. :xref-ERC1155PresetMinterPauser-supportsInterface-bytes4-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-supportsInterface-bytes4-
  2300. :ERC1155PresetMinterPauser-_beforeTokenTransfer: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155PresetMinterPauser._beforeTokenTransfer`]]
  2301. :xref-ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  2302. :ERC20PresetFixedSupply: pass:normal[xref:token/ERC20/presets.md#ERC20PresetFixedSupply[`ERC20PresetFixedSupply`]]
  2303. :xref-ERC20PresetFixedSupply: xref:token/ERC20/presets.md#ERC20PresetFixedSupply
  2304. :ERC20PresetFixedSupply-constructor: pass:normal[xref:token/ERC20/presets.md#ERC20PresetFixedSupply-constructor-string-string-uint256-address-[`ERC20PresetFixedSupply.constructor`]]
  2305. :xref-ERC20PresetFixedSupply-constructor-string-string-uint256-address-: xref:token/ERC20/presets.md#ERC20PresetFixedSupply-constructor-string-string-uint256-address-
  2306. :ERC20PresetMinterPauser: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser[`ERC20PresetMinterPauser`]]
  2307. :xref-ERC20PresetMinterPauser: xref:token/ERC20/presets.md#ERC20PresetMinterPauser
  2308. :ERC20PresetMinterPauser-MINTER_ROLE: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-MINTER_ROLE-bytes32[`ERC20PresetMinterPauser.MINTER_ROLE`]]
  2309. :xref-ERC20PresetMinterPauser-MINTER_ROLE-bytes32: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-MINTER_ROLE-bytes32
  2310. :ERC20PresetMinterPauser-PAUSER_ROLE: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-PAUSER_ROLE-bytes32[`ERC20PresetMinterPauser.PAUSER_ROLE`]]
  2311. :xref-ERC20PresetMinterPauser-PAUSER_ROLE-bytes32: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-PAUSER_ROLE-bytes32
  2312. :ERC20PresetMinterPauser-constructor: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-constructor-string-string-[`ERC20PresetMinterPauser.constructor`]]
  2313. :xref-ERC20PresetMinterPauser-constructor-string-string-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-constructor-string-string-
  2314. :ERC20PresetMinterPauser-mint: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-mint-address-uint256-[`ERC20PresetMinterPauser.mint`]]
  2315. :xref-ERC20PresetMinterPauser-mint-address-uint256-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-mint-address-uint256-
  2316. :ERC20PresetMinterPauser-pause: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-pause--[`ERC20PresetMinterPauser.pause`]]
  2317. :xref-ERC20PresetMinterPauser-pause--: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-pause--
  2318. :ERC20PresetMinterPauser-unpause: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-unpause--[`ERC20PresetMinterPauser.unpause`]]
  2319. :xref-ERC20PresetMinterPauser-unpause--: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-unpause--
  2320. :ERC20PresetMinterPauser-_beforeTokenTransfer: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-[`ERC20PresetMinterPauser._beforeTokenTransfer`]]
  2321. :xref-ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-
  2322. :ERC721PresetMinterPauserAutoId: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId[`ERC721PresetMinterPauserAutoId`]]
  2323. :xref-ERC721PresetMinterPauserAutoId: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId
  2324. :ERC721PresetMinterPauserAutoId-MINTER_ROLE: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32[`ERC721PresetMinterPauserAutoId.MINTER_ROLE`]]
  2325. :xref-ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32
  2326. :ERC721PresetMinterPauserAutoId-PAUSER_ROLE: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32[`ERC721PresetMinterPauserAutoId.PAUSER_ROLE`]]
  2327. :xref-ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32
  2328. :ERC721PresetMinterPauserAutoId-constructor: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-constructor-string-string-string-[`ERC721PresetMinterPauserAutoId.constructor`]]
  2329. :xref-ERC721PresetMinterPauserAutoId-constructor-string-string-string-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-constructor-string-string-string-
  2330. :ERC721PresetMinterPauserAutoId-_baseURI: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_baseURI--[`ERC721PresetMinterPauserAutoId._baseURI`]]
  2331. :xref-ERC721PresetMinterPauserAutoId-_baseURI--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_baseURI--
  2332. :ERC721PresetMinterPauserAutoId-mint: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-mint-address-[`ERC721PresetMinterPauserAutoId.mint`]]
  2333. :xref-ERC721PresetMinterPauserAutoId-mint-address-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-mint-address-
  2334. :ERC721PresetMinterPauserAutoId-pause: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-pause--[`ERC721PresetMinterPauserAutoId.pause`]]
  2335. :xref-ERC721PresetMinterPauserAutoId-pause--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-pause--
  2336. :ERC721PresetMinterPauserAutoId-unpause: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-unpause--[`ERC721PresetMinterPauserAutoId.unpause`]]
  2337. :xref-ERC721PresetMinterPauserAutoId-unpause--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-unpause--
  2338. :ERC721PresetMinterPauserAutoId-_beforeTokenTransfer: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-[`ERC721PresetMinterPauserAutoId._beforeTokenTransfer`]]
  2339. :xref-ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-
  2340. :ERC721PresetMinterPauserAutoId-supportsInterface: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-[`ERC721PresetMinterPauserAutoId.supportsInterface`]]
  2341. :xref-ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-
  2342. = Governance
  2343. [.readme-notice]
  2344. NOTE: This document is better viewed at https://docs.openzeppelin.com/contracts/api/governance
  2345. This directory includes primitives for on-chain governance.
  2346. == Governor
  2347. This modular system of Governor contracts allows the deployment on-chain voting protocols similar to https://compound.finance/docs/governance[Compound's Governor Alpha & Bravo] and beyond, through the ability to easily customize multiple aspects of the protocol.
  2348. [TIP]
  2349. ====
  2350. For a guided experience, set up your Governor contract using https://wizard.openzeppelin.com/#governor[Contracts Wizard].
  2351. For a written walkthrough, check out our guide on xref:ROOT:governance.adoc[How to set up on-chain governance].
  2352. ====
  2353. * {Governor}: The core contract that contains all the logic and primitives. It is abstract and requires choosing one of each of the modules below, or custom ones.
  2354. Votes modules determine the source of voting power, and sometimes quorum number.
  2355. * {GovernorVotes}: Extracts voting weight from an {ERC20Votes} token.
  2356. * {GovernorVotesComp}: Extracts voting weight from a COMP-like or {ERC20VotesComp} token.
  2357. * {GovernorVotesQuorumFraction}: Combines with `GovernorVotes` to set the quorum as a fraction of the total token supply.
  2358. Counting modules determine valid voting options.
  2359. * {GovernorCountingSimple}: Simple voting mechanism with 3 voting options: Against, For and Abstain.
  2360. Timelock extensions add a delay for governance decisions to be executed. The workflow is extended to require a `queue` step before execution. With these modules, proposals are executed by the external timelock contract, thus it is the timelock that has to hold the assets that are being governed.
  2361. * {GovernorTimelockControl}: Connects with an instance of {TimelockController}. Allows multiple proposers and executors, in addition to the Governor itself.
  2362. * {GovernorTimelockCompound}: Connects with an instance of Compound's https://github.com/compound-finance/compound-protocol/blob/master/contracts/Timelock.sol[`Timelock`] contract.
  2363. Other extensions can customize the behavior or interface in multiple ways.
  2364. * {GovernorCompatibilityBravo}: Extends the interface to be fully `GovernorBravo`-compatible. Note that events are compatible regardless of whether this extension is included or not.
  2365. * {GovernorSettings}: Manages some of the settings (voting delay, voting period duration, and proposal threshold) in a way that can be updated through a governance proposal, without requiring an upgrade.
  2366. * {GovernorPreventLateQuorum}: Ensures there is a minimum voting period after quorum is reached as a security protection against large voters.
  2367. In addition to modules and extensions, the core contract requires a few virtual functions to be implemented to your particular specifications:
  2368. * <<Governor-votingDelay-,`votingDelay()`>>: Delay (in number of blocks) since the proposal is submitted until voting power is fixed and voting starts. This can be used to enforce a delay after a proposal is published for users to buy tokens, or delegate their votes.
  2369. * <<Governor-votingPeriod-,`votingPeriod()`>>: Delay (in number of blocks) since the proposal starts until voting ends.
  2370. * <<Governor-quorum-uint256-,`quorum(uint256 blockNumber)`>>: Quorum required for a proposal to be successful. This function includes a `blockNumber` argument so the quorum can adapt through time, for example, to follow a token's `totalSupply`.
  2371. NOTE: Functions of the `Governor` contract do not include access control. If you want to restrict access, you should add these checks by overloading the particular functions. Among these, {Governor-_cancel} is internal by default, and you will have to expose it (with the right access control mechanism) yourself if this function is needed.
  2372. === Core
  2373. :IGovernor: pass:normal[xref:#IGovernor[`++IGovernor++`]]
  2374. :name: pass:normal[xref:#IGovernor-name--[`++name++`]]
  2375. :version: pass:normal[xref:#IGovernor-version--[`++version++`]]
  2376. :COUNTING_MODE: pass:normal[xref:#IGovernor-COUNTING_MODE--[`++COUNTING_MODE++`]]
  2377. :hashProposal: pass:normal[xref:#IGovernor-hashProposal-address---uint256---bytes---bytes32-[`++hashProposal++`]]
  2378. :state: pass:normal[xref:#IGovernor-state-uint256-[`++state++`]]
  2379. :proposalSnapshot: pass:normal[xref:#IGovernor-proposalSnapshot-uint256-[`++proposalSnapshot++`]]
  2380. :proposalDeadline: pass:normal[xref:#IGovernor-proposalDeadline-uint256-[`++proposalDeadline++`]]
  2381. :votingDelay: pass:normal[xref:#IGovernor-votingDelay--[`++votingDelay++`]]
  2382. :votingPeriod: pass:normal[xref:#IGovernor-votingPeriod--[`++votingPeriod++`]]
  2383. :quorum: pass:normal[xref:#IGovernor-quorum-uint256-[`++quorum++`]]
  2384. :getVotes: pass:normal[xref:#IGovernor-getVotes-address-uint256-[`++getVotes++`]]
  2385. :getVotesWithParams: pass:normal[xref:#IGovernor-getVotesWithParams-address-uint256-bytes-[`++getVotesWithParams++`]]
  2386. :hasVoted: pass:normal[xref:#IGovernor-hasVoted-uint256-address-[`++hasVoted++`]]
  2387. :propose: pass:normal[xref:#IGovernor-propose-address---uint256---bytes---string-[`++propose++`]]
  2388. :execute: pass:normal[xref:#IGovernor-execute-address---uint256---bytes---bytes32-[`++execute++`]]
  2389. :castVote: pass:normal[xref:#IGovernor-castVote-uint256-uint8-[`++castVote++`]]
  2390. :castVoteWithReason: pass:normal[xref:#IGovernor-castVoteWithReason-uint256-uint8-string-[`++castVoteWithReason++`]]
  2391. :castVoteWithReasonAndParams: pass:normal[xref:#IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`++castVoteWithReasonAndParams++`]]
  2392. :castVoteBySig: pass:normal[xref:#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`++castVoteBySig++`]]
  2393. :castVoteWithReasonAndParamsBySig: pass:normal[xref:#IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`++castVoteWithReasonAndParamsBySig++`]]
  2394. :ProposalCreated: pass:normal[xref:#IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-[`++ProposalCreated++`]]
  2395. :ProposalCanceled: pass:normal[xref:#IGovernor-ProposalCanceled-uint256-[`++ProposalCanceled++`]]
  2396. :ProposalExecuted: pass:normal[xref:#IGovernor-ProposalExecuted-uint256-[`++ProposalExecuted++`]]
  2397. :VoteCast: pass:normal[xref:#IGovernor-VoteCast-address-uint256-uint8-uint256-string-[`++VoteCast++`]]
  2398. :VoteCastWithParams: pass:normal[xref:#IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-[`++VoteCastWithParams++`]]
  2399. :ProposalState: pass:normal[xref:#IGovernor-ProposalState[`++ProposalState++`]]
  2400. [.contract]
  2401. [[IGovernor]]
  2402. === `++IGovernor++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/IGovernor.sol[{github-icon},role=heading-link]
  2403. [.hljs-theme-light.nopadding]
  2404. ```solidity
  2405. import "@openzeppelin/contracts/governance/IGovernor.sol";
  2406. ```
  2407. Interface of the {Governor} core.
  2408. _Available since v4.3._
  2409. [.contract-index]
  2410. .Functions
  2411. --
  2412. * {xref-IGovernor-name--}[`++name()++`]
  2413. * {xref-IGovernor-version--}[`++version()++`]
  2414. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  2415. * {xref-IGovernor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  2416. * {xref-IGovernor-state-uint256-}[`++state(proposalId)++`]
  2417. * {xref-IGovernor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  2418. * {xref-IGovernor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  2419. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  2420. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  2421. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  2422. * {xref-IGovernor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  2423. * {xref-IGovernor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  2424. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  2425. * {xref-IGovernor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  2426. * {xref-IGovernor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  2427. * {xref-IGovernor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  2428. * {xref-IGovernor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  2429. * {xref-IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  2430. * {xref-IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  2431. * {xref-IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  2432. [.contract-subindex-inherited]
  2433. .IERC165
  2434. * {xref-IERC165-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2435. --
  2436. [.contract-index]
  2437. .Events
  2438. --
  2439. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  2440. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  2441. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  2442. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  2443. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  2444. [.contract-subindex-inherited]
  2445. .IERC165
  2446. --
  2447. [.contract-item]
  2448. [[IGovernor-name--]]
  2449. ==== `[.contract-item-name]#++name++#++() → string++` [.item-kind]#public#
  2450. Name of the governor instance (used in building the ERC712 domain separator).
  2451. [.contract-item]
  2452. [[IGovernor-version--]]
  2453. ==== `[.contract-item-name]#++version++#++() → string++` [.item-kind]#public#
  2454. Version of the governor instance (used in building the ERC712 domain separator). Default: "1"
  2455. [.contract-item]
  2456. [[IGovernor-COUNTING_MODE--]]
  2457. ==== `[.contract-item-name]#++COUNTING_MODE++#++() → string++` [.item-kind]#public#
  2458. A description of the possible `support` values for {castVote} and the way these votes are counted, meant to
  2459. be consumed by UIs to show correct vote options and interpret the results. The string is a URL-encoded sequence of
  2460. key-value pairs that each describe one aspect, for example `support=bravo&quorum=for,abstain`.
  2461. There are 2 standard keys: `support` and `quorum`.
  2462. - `support=bravo` refers to the vote options 0 = Against, 1 = For, 2 = Abstain, as in `GovernorBravo`.
  2463. - `quorum=bravo` means that only For votes are counted towards quorum.
  2464. - `quorum=for,abstain` means that both For and Abstain votes are counted towards quorum.
  2465. If a counting module makes use of encoded `params`, it should include this under a `params` key with a unique
  2466. name that describes the behavior. For example:
  2467. - `params=fractional` might refer to a scheme where votes are divided fractionally between for/against/abstain.
  2468. - `params=erc721` might refer to a scheme where specific NFTs are delegated to vote.
  2469. NOTE: The string can be decoded by the standard
  2470. https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams[`URLSearchParams`]
  2471. JavaScript class.
  2472. [.contract-item]
  2473. [[IGovernor-hashProposal-address---uint256---bytes---bytes32-]]
  2474. ==== `[.contract-item-name]#++hashProposal++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  2475. Hashing function used to (re)build the proposal id from the proposal details..
  2476. [.contract-item]
  2477. [[IGovernor-state-uint256-]]
  2478. ==== `[.contract-item-name]#++state++#++(uint256 proposalId) → enum IGovernor.ProposalState++` [.item-kind]#public#
  2479. Current state of a proposal, following Compound's convention
  2480. [.contract-item]
  2481. [[IGovernor-proposalSnapshot-uint256-]]
  2482. ==== `[.contract-item-name]#++proposalSnapshot++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  2483. Block number used to retrieve user's votes and quorum. As per Compound's Comp and OpenZeppelin's
  2484. ERC20Votes, the snapshot is performed at the end of this block. Hence, voting for this proposal starts at the
  2485. beginning of the following block.
  2486. [.contract-item]
  2487. [[IGovernor-proposalDeadline-uint256-]]
  2488. ==== `[.contract-item-name]#++proposalDeadline++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  2489. Block number at which votes close. Votes close at the end of this block, so it is possible to cast a vote
  2490. during this block.
  2491. [.contract-item]
  2492. [[IGovernor-votingDelay--]]
  2493. ==== `[.contract-item-name]#++votingDelay++#++() → uint256++` [.item-kind]#public#
  2494. Delay, in number of block, between the proposal is created and the vote starts. This can be increassed to
  2495. leave time for users to buy voting power, or delegate it, before the voting of a proposal starts.
  2496. [.contract-item]
  2497. [[IGovernor-votingPeriod--]]
  2498. ==== `[.contract-item-name]#++votingPeriod++#++() → uint256++` [.item-kind]#public#
  2499. Delay, in number of blocks, between the vote start and vote ends.
  2500. NOTE: The {votingDelay} can delay the start of the vote. This must be considered when setting the voting
  2501. duration compared to the voting delay.
  2502. [.contract-item]
  2503. [[IGovernor-quorum-uint256-]]
  2504. ==== `[.contract-item-name]#++quorum++#++(uint256 blockNumber) → uint256++` [.item-kind]#public#
  2505. Minimum number of cast voted required for a proposal to be successful.
  2506. Note: The `blockNumber` parameter corresponds to the snapshot used for counting vote. This allows to scale the
  2507. quorum depending on values such as the totalSupply of a token at this block (see {ERC20Votes}).
  2508. [.contract-item]
  2509. [[IGovernor-getVotes-address-uint256-]]
  2510. ==== `[.contract-item-name]#++getVotes++#++(address account, uint256 blockNumber) → uint256++` [.item-kind]#public#
  2511. Voting power of an `account` at a specific `blockNumber`.
  2512. Note: this can be implemented in a number of ways, for example by reading the delegated balance from one (or
  2513. multiple), {ERC20Votes} tokens.
  2514. [.contract-item]
  2515. [[IGovernor-getVotesWithParams-address-uint256-bytes-]]
  2516. ==== `[.contract-item-name]#++getVotesWithParams++#++(address account, uint256 blockNumber, bytes params) → uint256++` [.item-kind]#public#
  2517. Voting power of an `account` at a specific `blockNumber` given additional encoded parameters.
  2518. [.contract-item]
  2519. [[IGovernor-hasVoted-uint256-address-]]
  2520. ==== `[.contract-item-name]#++hasVoted++#++(uint256 proposalId, address account) → bool++` [.item-kind]#public#
  2521. Returns weither `account` has cast a vote on `proposalId`.
  2522. [.contract-item]
  2523. [[IGovernor-propose-address---uint256---bytes---string-]]
  2524. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, bytes[] calldatas, string description) → uint256 proposalId++` [.item-kind]#public#
  2525. Create a new proposal. Vote start {IGovernor-votingDelay} blocks after the proposal is created and ends
  2526. {IGovernor-votingPeriod} blocks after the voting starts.
  2527. Emits a {ProposalCreated} event.
  2528. [.contract-item]
  2529. [[IGovernor-execute-address---uint256---bytes---bytes32-]]
  2530. ==== `[.contract-item-name]#++execute++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256 proposalId++` [.item-kind]#public#
  2531. Execute a successful proposal. This requires the quorum to be reached, the vote to be successful, and the
  2532. deadline to be reached.
  2533. Emits a {ProposalExecuted} event.
  2534. Note: some module can modify the requirements for execution, for example by adding an additional timelock.
  2535. [.contract-item]
  2536. [[IGovernor-castVote-uint256-uint8-]]
  2537. ==== `[.contract-item-name]#++castVote++#++(uint256 proposalId, uint8 support) → uint256 balance++` [.item-kind]#public#
  2538. Cast a vote
  2539. Emits a {VoteCast} event.
  2540. [.contract-item]
  2541. [[IGovernor-castVoteWithReason-uint256-uint8-string-]]
  2542. ==== `[.contract-item-name]#++castVoteWithReason++#++(uint256 proposalId, uint8 support, string reason) → uint256 balance++` [.item-kind]#public#
  2543. Cast a vote with a reason
  2544. Emits a {VoteCast} event.
  2545. [.contract-item]
  2546. [[IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-]]
  2547. ==== `[.contract-item-name]#++castVoteWithReasonAndParams++#++(uint256 proposalId, uint8 support, string reason, bytes params) → uint256 balance++` [.item-kind]#public#
  2548. Cast a vote with a reason and additional encoded parameters
  2549. Emits a {VoteCast} or {VoteCastWithParams} event depending on the length of params.
  2550. [.contract-item]
  2551. [[IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-]]
  2552. ==== `[.contract-item-name]#++castVoteBySig++#++(uint256 proposalId, uint8 support, uint8 v, bytes32 r, bytes32 s) → uint256 balance++` [.item-kind]#public#
  2553. Cast a vote using the user's cryptographic signature.
  2554. Emits a {VoteCast} event.
  2555. [.contract-item]
  2556. [[IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-]]
  2557. ==== `[.contract-item-name]#++castVoteWithReasonAndParamsBySig++#++(uint256 proposalId, uint8 support, string reason, bytes params, uint8 v, bytes32 r, bytes32 s) → uint256 balance++` [.item-kind]#public#
  2558. Cast a vote with a reason and additional encoded parameters using the user's cryptographic signature.
  2559. Emits a {VoteCast} or {VoteCastWithParams} event depending on the length of params.
  2560. [.contract-item]
  2561. [[IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-]]
  2562. ==== `[.contract-item-name]#++ProposalCreated++#++(uint256 proposalId, address proposer, address[] targets, uint256[] values, string[] signatures, bytes[] calldatas, uint256 startBlock, uint256 endBlock, string description)++` [.item-kind]#event#
  2563. Emitted when a proposal is created.
  2564. [.contract-item]
  2565. [[IGovernor-ProposalCanceled-uint256-]]
  2566. ==== `[.contract-item-name]#++ProposalCanceled++#++(uint256 proposalId)++` [.item-kind]#event#
  2567. Emitted when a proposal is canceled.
  2568. [.contract-item]
  2569. [[IGovernor-ProposalExecuted-uint256-]]
  2570. ==== `[.contract-item-name]#++ProposalExecuted++#++(uint256 proposalId)++` [.item-kind]#event#
  2571. Emitted when a proposal is executed.
  2572. [.contract-item]
  2573. [[IGovernor-VoteCast-address-uint256-uint8-uint256-string-]]
  2574. ==== `[.contract-item-name]#++VoteCast++#++(address voter, uint256 proposalId, uint8 support, uint256 weight, string reason)++` [.item-kind]#event#
  2575. Emitted when a vote is cast without params.
  2576. Note: `support` values should be seen as buckets. Their interpretation depends on the voting module used.
  2577. [.contract-item]
  2578. [[IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-]]
  2579. ==== `[.contract-item-name]#++VoteCastWithParams++#++(address voter, uint256 proposalId, uint8 support, uint256 weight, string reason, bytes params)++` [.item-kind]#event#
  2580. Emitted when a vote is cast with params.
  2581. Note: `support` values should be seen as buckets. Their interpretation depends on the voting module used.
  2582. `params` are additional encoded parameters. Their intepepretation also depends on the voting module used.
  2583. :Governor: pass:normal[xref:#Governor[`++Governor++`]]
  2584. :onlyGovernance: pass:normal[xref:#Governor-onlyGovernance--[`++onlyGovernance++`]]
  2585. :BALLOT_TYPEHASH: pass:normal[xref:#Governor-BALLOT_TYPEHASH-bytes32[`++BALLOT_TYPEHASH++`]]
  2586. :EXTENDED_BALLOT_TYPEHASH: pass:normal[xref:#Governor-EXTENDED_BALLOT_TYPEHASH-bytes32[`++EXTENDED_BALLOT_TYPEHASH++`]]
  2587. :constructor: pass:normal[xref:#Governor-constructor-string-[`++constructor++`]]
  2588. :receive: pass:normal[xref:#Governor-receive--[`++receive++`]]
  2589. :supportsInterface: pass:normal[xref:#Governor-supportsInterface-bytes4-[`++supportsInterface++`]]
  2590. :name: pass:normal[xref:#Governor-name--[`++name++`]]
  2591. :version: pass:normal[xref:#Governor-version--[`++version++`]]
  2592. :hashProposal: pass:normal[xref:#Governor-hashProposal-address---uint256---bytes---bytes32-[`++hashProposal++`]]
  2593. :state: pass:normal[xref:#Governor-state-uint256-[`++state++`]]
  2594. :proposalSnapshot: pass:normal[xref:#Governor-proposalSnapshot-uint256-[`++proposalSnapshot++`]]
  2595. :proposalDeadline: pass:normal[xref:#Governor-proposalDeadline-uint256-[`++proposalDeadline++`]]
  2596. :proposalThreshold: pass:normal[xref:#Governor-proposalThreshold--[`++proposalThreshold++`]]
  2597. :_quorumReached: pass:normal[xref:#Governor-_quorumReached-uint256-[`++_quorumReached++`]]
  2598. :_voteSucceeded: pass:normal[xref:#Governor-_voteSucceeded-uint256-[`++_voteSucceeded++`]]
  2599. :_getVotes: pass:normal[xref:#Governor-_getVotes-address-uint256-bytes-[`++_getVotes++`]]
  2600. :_countVote: pass:normal[xref:#Governor-_countVote-uint256-address-uint8-uint256-bytes-[`++_countVote++`]]
  2601. :_defaultParams: pass:normal[xref:#Governor-_defaultParams--[`++_defaultParams++`]]
  2602. :propose: pass:normal[xref:#Governor-propose-address---uint256---bytes---string-[`++propose++`]]
  2603. :execute: pass:normal[xref:#Governor-execute-address---uint256---bytes---bytes32-[`++execute++`]]
  2604. :_execute: pass:normal[xref:#Governor-_execute-uint256-address---uint256---bytes---bytes32-[`++_execute++`]]
  2605. :_beforeExecute: pass:normal[xref:#Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-[`++_beforeExecute++`]]
  2606. :_afterExecute: pass:normal[xref:#Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-[`++_afterExecute++`]]
  2607. :_cancel: pass:normal[xref:#Governor-_cancel-address---uint256---bytes---bytes32-[`++_cancel++`]]
  2608. :getVotes: pass:normal[xref:#Governor-getVotes-address-uint256-[`++getVotes++`]]
  2609. :getVotesWithParams: pass:normal[xref:#Governor-getVotesWithParams-address-uint256-bytes-[`++getVotesWithParams++`]]
  2610. :castVote: pass:normal[xref:#Governor-castVote-uint256-uint8-[`++castVote++`]]
  2611. :castVoteWithReason: pass:normal[xref:#Governor-castVoteWithReason-uint256-uint8-string-[`++castVoteWithReason++`]]
  2612. :castVoteWithReasonAndParams: pass:normal[xref:#Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`++castVoteWithReasonAndParams++`]]
  2613. :castVoteBySig: pass:normal[xref:#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`++castVoteBySig++`]]
  2614. :castVoteWithReasonAndParamsBySig: pass:normal[xref:#Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`++castVoteWithReasonAndParamsBySig++`]]
  2615. :_castVote: pass:normal[xref:#Governor-_castVote-uint256-address-uint8-string-[`++_castVote++`]]
  2616. :_castVote: pass:normal[xref:#Governor-_castVote-uint256-address-uint8-string-bytes-[`++_castVote++`]]
  2617. :relay: pass:normal[xref:#Governor-relay-address-uint256-bytes-[`++relay++`]]
  2618. :_executor: pass:normal[xref:#Governor-_executor--[`++_executor++`]]
  2619. :onERC721Received: pass:normal[xref:#Governor-onERC721Received-address-address-uint256-bytes-[`++onERC721Received++`]]
  2620. :onERC1155Received: pass:normal[xref:#Governor-onERC1155Received-address-address-uint256-uint256-bytes-[`++onERC1155Received++`]]
  2621. :onERC1155BatchReceived: pass:normal[xref:#Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`++onERC1155BatchReceived++`]]
  2622. :ProposalCore: pass:normal[xref:#Governor-ProposalCore[`++ProposalCore++`]]
  2623. [.contract]
  2624. [[Governor]]
  2625. === `++Governor++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/Governor.sol[{github-icon},role=heading-link]
  2626. [.hljs-theme-light.nopadding]
  2627. ```solidity
  2628. import "@openzeppelin/contracts/governance/Governor.sol";
  2629. ```
  2630. Core of the governance system, designed to be extended though various modules.
  2631. This contract is abstract and requires several function to be implemented in various modules:
  2632. - A counting module must implement {quorum}, {_quorumReached}, {_voteSucceeded} and {_countVote}
  2633. - A voting module must implement {_getVotes}
  2634. - Additionanly, the {votingPeriod} must also be implemented
  2635. _Available since v4.3._
  2636. [.contract-index]
  2637. .Modifiers
  2638. --
  2639. * {xref-Governor-onlyGovernance--}[`++onlyGovernance()++`]
  2640. --
  2641. [.contract-index]
  2642. .Functions
  2643. --
  2644. * {xref-Governor-constructor-string-}[`++constructor(name_)++`]
  2645. * {xref-Governor-receive--}[`++receive()++`]
  2646. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2647. * {xref-Governor-name--}[`++name()++`]
  2648. * {xref-Governor-version--}[`++version()++`]
  2649. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  2650. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  2651. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  2652. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  2653. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  2654. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  2655. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  2656. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  2657. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  2658. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  2659. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  2660. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  2661. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  2662. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  2663. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  2664. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  2665. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  2666. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  2667. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  2668. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  2669. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  2670. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  2671. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  2672. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  2673. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  2674. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  2675. * {xref-Governor-_executor--}[`++_executor()++`]
  2676. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  2677. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  2678. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  2679. [.contract-subindex-inherited]
  2680. .IERC1155Receiver
  2681. [.contract-subindex-inherited]
  2682. .IERC721Receiver
  2683. [.contract-subindex-inherited]
  2684. .IGovernor
  2685. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  2686. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  2687. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  2688. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  2689. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  2690. [.contract-subindex-inherited]
  2691. .EIP712
  2692. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  2693. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  2694. [.contract-subindex-inherited]
  2695. .ERC165
  2696. [.contract-subindex-inherited]
  2697. .IERC165
  2698. --
  2699. [.contract-index]
  2700. .Events
  2701. --
  2702. [.contract-subindex-inherited]
  2703. .IERC1155Receiver
  2704. [.contract-subindex-inherited]
  2705. .IERC721Receiver
  2706. [.contract-subindex-inherited]
  2707. .IGovernor
  2708. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  2709. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  2710. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  2711. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  2712. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  2713. [.contract-subindex-inherited]
  2714. .EIP712
  2715. [.contract-subindex-inherited]
  2716. .ERC165
  2717. [.contract-subindex-inherited]
  2718. .IERC165
  2719. [.contract-subindex-inherited]
  2720. .Context
  2721. --
  2722. [.contract-item]
  2723. [[Governor-onlyGovernance--]]
  2724. ==== `[.contract-item-name]#++onlyGovernance++#++()++` [.item-kind]#modifier#
  2725. Restricts a function so it can only be executed through governance proposals. For example, governance
  2726. parameter setters in {GovernorSettings} are protected using this modifier.
  2727. The governance executing address may be different from the Governor's own address, for example it could be a
  2728. timelock. This can be customized by modules by overriding {_executor}. The executor is only able to invoke these
  2729. functions during the execution of the governor's {execute} function, and not under any other circumstances. Thus,
  2730. for example, additional timelock proposers are not able to change governance parameters without going through the
  2731. governance protocol (since v4.6).
  2732. [.contract-item]
  2733. [[Governor-constructor-string-]]
  2734. ==== `[.contract-item-name]#++constructor++#++(string name_)++` [.item-kind]#internal#
  2735. Sets the value for {name} and {version}
  2736. [.contract-item]
  2737. [[Governor-receive--]]
  2738. ==== `[.contract-item-name]#++receive++#++()++` [.item-kind]#external#
  2739. Function to receive ETH that will be handled by the governor (disabled if executor is a third party contract)
  2740. [.contract-item]
  2741. [[Governor-supportsInterface-bytes4-]]
  2742. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  2743. See {IERC165-supportsInterface}.
  2744. [.contract-item]
  2745. [[Governor-name--]]
  2746. ==== `[.contract-item-name]#++name++#++() → string++` [.item-kind]#public#
  2747. See {IGovernor-name}.
  2748. [.contract-item]
  2749. [[Governor-version--]]
  2750. ==== `[.contract-item-name]#++version++#++() → string++` [.item-kind]#public#
  2751. See {IGovernor-version}.
  2752. [.contract-item]
  2753. [[Governor-hashProposal-address---uint256---bytes---bytes32-]]
  2754. ==== `[.contract-item-name]#++hashProposal++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  2755. See {IGovernor-hashProposal}.
  2756. The proposal id is produced by hashing the ABI encoded `targets` array, the `values` array, the `calldatas` array
  2757. and the descriptionHash (bytes32 which itself is the keccak256 hash of the description string). This proposal id
  2758. can be produced from the proposal data which is part of the {ProposalCreated} event. It can even be computed in
  2759. advance, before the proposal is submitted.
  2760. Note that the chainId and the governor address are not part of the proposal id computation. Consequently, the
  2761. same proposal (with same operation and same description) will have the same id if submitted on multiple governors
  2762. across multiple networks. This also means that in order to execute the same operation twice (on the same
  2763. governor) the proposer will have to change the description in order to avoid proposal id conflicts.
  2764. [.contract-item]
  2765. [[Governor-state-uint256-]]
  2766. ==== `[.contract-item-name]#++state++#++(uint256 proposalId) → enum IGovernor.ProposalState++` [.item-kind]#public#
  2767. See {IGovernor-state}.
  2768. [.contract-item]
  2769. [[Governor-proposalSnapshot-uint256-]]
  2770. ==== `[.contract-item-name]#++proposalSnapshot++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  2771. See {IGovernor-proposalSnapshot}.
  2772. [.contract-item]
  2773. [[Governor-proposalDeadline-uint256-]]
  2774. ==== `[.contract-item-name]#++proposalDeadline++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  2775. See {IGovernor-proposalDeadline}.
  2776. [.contract-item]
  2777. [[Governor-proposalThreshold--]]
  2778. ==== `[.contract-item-name]#++proposalThreshold++#++() → uint256++` [.item-kind]#public#
  2779. Part of the Governor Bravo's interface: _"The number of votes required in order for a voter to become a proposer"_.
  2780. [.contract-item]
  2781. [[Governor-_quorumReached-uint256-]]
  2782. ==== `[.contract-item-name]#++_quorumReached++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  2783. Amount of votes already cast passes the threshold limit.
  2784. [.contract-item]
  2785. [[Governor-_voteSucceeded-uint256-]]
  2786. ==== `[.contract-item-name]#++_voteSucceeded++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  2787. Is the proposal successful or not.
  2788. [.contract-item]
  2789. [[Governor-_getVotes-address-uint256-bytes-]]
  2790. ==== `[.contract-item-name]#++_getVotes++#++(address account, uint256 blockNumber, bytes params) → uint256++` [.item-kind]#internal#
  2791. Get the voting weight of `account` at a specific `blockNumber`, for a vote as described by `params`.
  2792. [.contract-item]
  2793. [[Governor-_countVote-uint256-address-uint8-uint256-bytes-]]
  2794. ==== `[.contract-item-name]#++_countVote++#++(uint256 proposalId, address account, uint8 support, uint256 weight, bytes params)++` [.item-kind]#internal#
  2795. Register a vote for `proposalId` by `account` with a given `support`, voting `weight` and voting `params`.
  2796. Note: Support is generic and can represent various things depending on the voting system used.
  2797. [.contract-item]
  2798. [[Governor-_defaultParams--]]
  2799. ==== `[.contract-item-name]#++_defaultParams++#++() → bytes++` [.item-kind]#internal#
  2800. Default additional encoded parameters used by castVote methods that don't include them
  2801. Note: Should be overridden by specific implementations to use an appropriate value, the
  2802. meaning of the additional params, in the context of that implementation
  2803. [.contract-item]
  2804. [[Governor-propose-address---uint256---bytes---string-]]
  2805. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, bytes[] calldatas, string description) → uint256++` [.item-kind]#public#
  2806. See {IGovernor-propose}.
  2807. [.contract-item]
  2808. [[Governor-execute-address---uint256---bytes---bytes32-]]
  2809. ==== `[.contract-item-name]#++execute++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  2810. See {IGovernor-execute}.
  2811. [.contract-item]
  2812. [[Governor-_execute-uint256-address---uint256---bytes---bytes32-]]
  2813. ==== `[.contract-item-name]#++_execute++#++(uint256, address[] targets, uint256[] values, bytes[] calldatas, bytes32)++` [.item-kind]#internal#
  2814. Internal execution mechanism. Can be overridden to implement different execution mechanism
  2815. [.contract-item]
  2816. [[Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-]]
  2817. ==== `[.contract-item-name]#++_beforeExecute++#++(uint256, address[] targets, uint256[], bytes[] calldatas, bytes32)++` [.item-kind]#internal#
  2818. Hook before execution is triggered.
  2819. [.contract-item]
  2820. [[Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-]]
  2821. ==== `[.contract-item-name]#++_afterExecute++#++(uint256, address[], uint256[], bytes[], bytes32)++` [.item-kind]#internal#
  2822. Hook after execution is triggered.
  2823. [.contract-item]
  2824. [[Governor-_cancel-address---uint256---bytes---bytes32-]]
  2825. ==== `[.contract-item-name]#++_cancel++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#internal#
  2826. Internal cancel mechanism: locks up the proposal timer, preventing it from being re-submitted. Marks it as
  2827. canceled to allow distinguishing it from executed proposals.
  2828. Emits a {IGovernor-ProposalCanceled} event.
  2829. [.contract-item]
  2830. [[Governor-getVotes-address-uint256-]]
  2831. ==== `[.contract-item-name]#++getVotes++#++(address account, uint256 blockNumber) → uint256++` [.item-kind]#public#
  2832. See {IGovernor-getVotes}.
  2833. [.contract-item]
  2834. [[Governor-getVotesWithParams-address-uint256-bytes-]]
  2835. ==== `[.contract-item-name]#++getVotesWithParams++#++(address account, uint256 blockNumber, bytes params) → uint256++` [.item-kind]#public#
  2836. See {IGovernor-getVotesWithParams}.
  2837. [.contract-item]
  2838. [[Governor-castVote-uint256-uint8-]]
  2839. ==== `[.contract-item-name]#++castVote++#++(uint256 proposalId, uint8 support) → uint256++` [.item-kind]#public#
  2840. See {IGovernor-castVote}.
  2841. [.contract-item]
  2842. [[Governor-castVoteWithReason-uint256-uint8-string-]]
  2843. ==== `[.contract-item-name]#++castVoteWithReason++#++(uint256 proposalId, uint8 support, string reason) → uint256++` [.item-kind]#public#
  2844. See {IGovernor-castVoteWithReason}.
  2845. [.contract-item]
  2846. [[Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-]]
  2847. ==== `[.contract-item-name]#++castVoteWithReasonAndParams++#++(uint256 proposalId, uint8 support, string reason, bytes params) → uint256++` [.item-kind]#public#
  2848. See {IGovernor-castVoteWithReasonAndParams}.
  2849. [.contract-item]
  2850. [[Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-]]
  2851. ==== `[.contract-item-name]#++castVoteBySig++#++(uint256 proposalId, uint8 support, uint8 v, bytes32 r, bytes32 s) → uint256++` [.item-kind]#public#
  2852. See {IGovernor-castVoteBySig}.
  2853. [.contract-item]
  2854. [[Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-]]
  2855. ==== `[.contract-item-name]#++castVoteWithReasonAndParamsBySig++#++(uint256 proposalId, uint8 support, string reason, bytes params, uint8 v, bytes32 r, bytes32 s) → uint256++` [.item-kind]#public#
  2856. See {IGovernor-castVoteWithReasonAndParamsBySig}.
  2857. [.contract-item]
  2858. [[Governor-_castVote-uint256-address-uint8-string-]]
  2859. ==== `[.contract-item-name]#++_castVote++#++(uint256 proposalId, address account, uint8 support, string reason) → uint256++` [.item-kind]#internal#
  2860. Internal vote casting mechanism: Check that the vote is pending, that it has not been cast yet, retrieve
  2861. voting weight using {IGovernor-getVotes} and call the {_countVote} internal function. Uses the _defaultParams().
  2862. Emits a {IGovernor-VoteCast} event.
  2863. [.contract-item]
  2864. [[Governor-_castVote-uint256-address-uint8-string-bytes-]]
  2865. ==== `[.contract-item-name]#++_castVote++#++(uint256 proposalId, address account, uint8 support, string reason, bytes params) → uint256++` [.item-kind]#internal#
  2866. Internal vote casting mechanism: Check that the vote is pending, that it has not been cast yet, retrieve
  2867. voting weight using {IGovernor-getVotes} and call the {_countVote} internal function.
  2868. Emits a {IGovernor-VoteCast} event.
  2869. [.contract-item]
  2870. [[Governor-relay-address-uint256-bytes-]]
  2871. ==== `[.contract-item-name]#++relay++#++(address target, uint256 value, bytes data)++` [.item-kind]#external#
  2872. Relays a transaction or function call to an arbitrary target. In cases where the governance executor
  2873. is some contract other than the governor itself, like when using a timelock, this function can be invoked
  2874. in a governance proposal to recover tokens or Ether that was sent to the governor contract by mistake.
  2875. Note that if the executor is simply the governor itself, use of `relay` is redundant.
  2876. [.contract-item]
  2877. [[Governor-_executor--]]
  2878. ==== `[.contract-item-name]#++_executor++#++() → address++` [.item-kind]#internal#
  2879. Address through which the governor executes action. Will be overloaded by module that execute actions
  2880. through another contract such as a timelock.
  2881. [.contract-item]
  2882. [[Governor-onERC721Received-address-address-uint256-bytes-]]
  2883. ==== `[.contract-item-name]#++onERC721Received++#++(address, address, uint256, bytes) → bytes4++` [.item-kind]#public#
  2884. See {IERC721Receiver-onERC721Received}.
  2885. [.contract-item]
  2886. [[Governor-onERC1155Received-address-address-uint256-uint256-bytes-]]
  2887. ==== `[.contract-item-name]#++onERC1155Received++#++(address, address, uint256, uint256, bytes) → bytes4++` [.item-kind]#public#
  2888. See {IERC1155Receiver-onERC1155Received}.
  2889. [.contract-item]
  2890. [[Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-]]
  2891. ==== `[.contract-item-name]#++onERC1155BatchReceived++#++(address, address, uint256[], uint256[], bytes) → bytes4++` [.item-kind]#public#
  2892. See {IERC1155Receiver-onERC1155BatchReceived}.
  2893. === Modules
  2894. :GovernorCountingSimple: pass:normal[xref:#GovernorCountingSimple[`++GovernorCountingSimple++`]]
  2895. :COUNTING_MODE: pass:normal[xref:#GovernorCountingSimple-COUNTING_MODE--[`++COUNTING_MODE++`]]
  2896. :hasVoted: pass:normal[xref:#GovernorCountingSimple-hasVoted-uint256-address-[`++hasVoted++`]]
  2897. :proposalVotes: pass:normal[xref:#GovernorCountingSimple-proposalVotes-uint256-[`++proposalVotes++`]]
  2898. :_quorumReached: pass:normal[xref:#GovernorCountingSimple-_quorumReached-uint256-[`++_quorumReached++`]]
  2899. :_voteSucceeded: pass:normal[xref:#GovernorCountingSimple-_voteSucceeded-uint256-[`++_voteSucceeded++`]]
  2900. :_countVote: pass:normal[xref:#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-[`++_countVote++`]]
  2901. :ProposalVote: pass:normal[xref:#GovernorCountingSimple-ProposalVote[`++ProposalVote++`]]
  2902. :VoteType: pass:normal[xref:#GovernorCountingSimple-VoteType[`++VoteType++`]]
  2903. [.contract]
  2904. [[GovernorCountingSimple]]
  2905. === `++GovernorCountingSimple++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/extensions/GovernorCountingSimple.sol[{github-icon},role=heading-link]
  2906. [.hljs-theme-light.nopadding]
  2907. ```solidity
  2908. import "@openzeppelin/contracts/governance/extensions/GovernorCountingSimple.sol";
  2909. ```
  2910. Extension of {Governor} for simple, 3 options, vote counting.
  2911. _Available since v4.3._
  2912. [.contract-index]
  2913. .Functions
  2914. --
  2915. * {xref-GovernorCountingSimple-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  2916. * {xref-GovernorCountingSimple-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  2917. * {xref-GovernorCountingSimple-proposalVotes-uint256-}[`++proposalVotes(proposalId)++`]
  2918. * {xref-GovernorCountingSimple-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  2919. * {xref-GovernorCountingSimple-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  2920. * {xref-GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, _)++`]
  2921. [.contract-subindex-inherited]
  2922. .Governor
  2923. * {xref-Governor-constructor-string-}[`++constructor(name_)++`]
  2924. * {xref-Governor-receive--}[`++receive()++`]
  2925. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2926. * {xref-Governor-name--}[`++name()++`]
  2927. * {xref-Governor-version--}[`++version()++`]
  2928. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  2929. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  2930. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  2931. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  2932. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  2933. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  2934. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  2935. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  2936. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  2937. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  2938. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  2939. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  2940. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  2941. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  2942. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  2943. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  2944. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  2945. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  2946. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  2947. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  2948. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  2949. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  2950. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  2951. * {xref-Governor-_executor--}[`++_executor()++`]
  2952. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  2953. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  2954. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  2955. [.contract-subindex-inherited]
  2956. .IERC1155Receiver
  2957. [.contract-subindex-inherited]
  2958. .IERC721Receiver
  2959. [.contract-subindex-inherited]
  2960. .IGovernor
  2961. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  2962. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  2963. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  2964. [.contract-subindex-inherited]
  2965. .EIP712
  2966. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  2967. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  2968. [.contract-subindex-inherited]
  2969. .ERC165
  2970. [.contract-subindex-inherited]
  2971. .IERC165
  2972. --
  2973. [.contract-index]
  2974. .Events
  2975. --
  2976. [.contract-subindex-inherited]
  2977. .Governor
  2978. [.contract-subindex-inherited]
  2979. .IERC1155Receiver
  2980. [.contract-subindex-inherited]
  2981. .IERC721Receiver
  2982. [.contract-subindex-inherited]
  2983. .IGovernor
  2984. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  2985. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  2986. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  2987. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  2988. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  2989. [.contract-subindex-inherited]
  2990. .EIP712
  2991. [.contract-subindex-inherited]
  2992. .ERC165
  2993. [.contract-subindex-inherited]
  2994. .IERC165
  2995. [.contract-subindex-inherited]
  2996. .Context
  2997. --
  2998. [.contract-item]
  2999. [[GovernorCountingSimple-COUNTING_MODE--]]
  3000. ==== `[.contract-item-name]#++COUNTING_MODE++#++() → string++` [.item-kind]#public#
  3001. See {IGovernor-COUNTING_MODE}.
  3002. [.contract-item]
  3003. [[GovernorCountingSimple-hasVoted-uint256-address-]]
  3004. ==== `[.contract-item-name]#++hasVoted++#++(uint256 proposalId, address account) → bool++` [.item-kind]#public#
  3005. See {IGovernor-hasVoted}.
  3006. [.contract-item]
  3007. [[GovernorCountingSimple-proposalVotes-uint256-]]
  3008. ==== `[.contract-item-name]#++proposalVotes++#++(uint256 proposalId) → uint256 againstVotes, uint256 forVotes, uint256 abstainVotes++` [.item-kind]#public#
  3009. Accessor to the internal vote counts.
  3010. [.contract-item]
  3011. [[GovernorCountingSimple-_quorumReached-uint256-]]
  3012. ==== `[.contract-item-name]#++_quorumReached++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  3013. See {Governor-_quorumReached}.
  3014. [.contract-item]
  3015. [[GovernorCountingSimple-_voteSucceeded-uint256-]]
  3016. ==== `[.contract-item-name]#++_voteSucceeded++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  3017. See {Governor-_voteSucceeded}. In this module, the forVotes must be strictly over the againstVotes.
  3018. [.contract-item]
  3019. [[GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-]]
  3020. ==== `[.contract-item-name]#++_countVote++#++(uint256 proposalId, address account, uint8 support, uint256 weight, bytes)++` [.item-kind]#internal#
  3021. See {Governor-_countVote}. In this module, the support follows the `VoteType` enum (from Governor Bravo).
  3022. :GovernorVotes: pass:normal[xref:#GovernorVotes[`++GovernorVotes++`]]
  3023. :token: pass:normal[xref:#GovernorVotes-token-contract-IVotes[`++token++`]]
  3024. :constructor: pass:normal[xref:#GovernorVotes-constructor-contract-IVotes-[`++constructor++`]]
  3025. :_getVotes: pass:normal[xref:#GovernorVotes-_getVotes-address-uint256-bytes-[`++_getVotes++`]]
  3026. [.contract]
  3027. [[GovernorVotes]]
  3028. === `++GovernorVotes++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/extensions/GovernorVotes.sol[{github-icon},role=heading-link]
  3029. [.hljs-theme-light.nopadding]
  3030. ```solidity
  3031. import "@openzeppelin/contracts/governance/extensions/GovernorVotes.sol";
  3032. ```
  3033. Extension of {Governor} for voting weight extraction from an {ERC20Votes} token, or since v4.5 an {ERC721Votes} token.
  3034. _Available since v4.3._
  3035. [.contract-index]
  3036. .Functions
  3037. --
  3038. * {xref-GovernorVotes-constructor-contract-IVotes-}[`++constructor(tokenAddress)++`]
  3039. * {xref-GovernorVotes-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, _)++`]
  3040. [.contract-subindex-inherited]
  3041. .Governor
  3042. * {xref-Governor-receive--}[`++receive()++`]
  3043. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3044. * {xref-Governor-name--}[`++name()++`]
  3045. * {xref-Governor-version--}[`++version()++`]
  3046. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3047. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  3048. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3049. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3050. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3051. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3052. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3053. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3054. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3055. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3056. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3057. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  3058. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3059. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3060. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3061. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3062. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3063. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3064. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3065. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3066. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3067. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3068. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3069. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3070. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3071. * {xref-Governor-_executor--}[`++_executor()++`]
  3072. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3073. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3074. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3075. [.contract-subindex-inherited]
  3076. .IERC1155Receiver
  3077. [.contract-subindex-inherited]
  3078. .IERC721Receiver
  3079. [.contract-subindex-inherited]
  3080. .IGovernor
  3081. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3082. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3083. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3084. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3085. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3086. [.contract-subindex-inherited]
  3087. .EIP712
  3088. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3089. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3090. [.contract-subindex-inherited]
  3091. .ERC165
  3092. [.contract-subindex-inherited]
  3093. .IERC165
  3094. --
  3095. [.contract-index]
  3096. .Events
  3097. --
  3098. [.contract-subindex-inherited]
  3099. .Governor
  3100. [.contract-subindex-inherited]
  3101. .IERC1155Receiver
  3102. [.contract-subindex-inherited]
  3103. .IERC721Receiver
  3104. [.contract-subindex-inherited]
  3105. .IGovernor
  3106. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3107. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3108. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3109. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3110. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3111. [.contract-subindex-inherited]
  3112. .EIP712
  3113. [.contract-subindex-inherited]
  3114. .ERC165
  3115. [.contract-subindex-inherited]
  3116. .IERC165
  3117. [.contract-subindex-inherited]
  3118. .Context
  3119. --
  3120. [.contract-item]
  3121. [[GovernorVotes-constructor-contract-IVotes-]]
  3122. ==== `[.contract-item-name]#++constructor++#++(contract IVotes tokenAddress)++` [.item-kind]#internal#
  3123. [.contract-item]
  3124. [[GovernorVotes-_getVotes-address-uint256-bytes-]]
  3125. ==== `[.contract-item-name]#++_getVotes++#++(address account, uint256 blockNumber, bytes) → uint256++` [.item-kind]#internal#
  3126. :GovernorVotesQuorumFraction: pass:normal[xref:#GovernorVotesQuorumFraction[`++GovernorVotesQuorumFraction++`]]
  3127. :constructor: pass:normal[xref:#GovernorVotesQuorumFraction-constructor-uint256-[`++constructor++`]]
  3128. :quorumNumerator: pass:normal[xref:#GovernorVotesQuorumFraction-quorumNumerator--[`++quorumNumerator++`]]
  3129. :quorumNumerator: pass:normal[xref:#GovernorVotesQuorumFraction-quorumNumerator-uint256-[`++quorumNumerator++`]]
  3130. :quorumDenominator: pass:normal[xref:#GovernorVotesQuorumFraction-quorumDenominator--[`++quorumDenominator++`]]
  3131. :quorum: pass:normal[xref:#GovernorVotesQuorumFraction-quorum-uint256-[`++quorum++`]]
  3132. :updateQuorumNumerator: pass:normal[xref:#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-[`++updateQuorumNumerator++`]]
  3133. :_updateQuorumNumerator: pass:normal[xref:#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-[`++_updateQuorumNumerator++`]]
  3134. :QuorumNumeratorUpdated: pass:normal[xref:#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-[`++QuorumNumeratorUpdated++`]]
  3135. [.contract]
  3136. [[GovernorVotesQuorumFraction]]
  3137. === `++GovernorVotesQuorumFraction++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/extensions/GovernorVotesQuorumFraction.sol[{github-icon},role=heading-link]
  3138. [.hljs-theme-light.nopadding]
  3139. ```solidity
  3140. import "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol";
  3141. ```
  3142. Extension of {Governor} for voting weight extraction from an {ERC20Votes} token and a quorum expressed as a
  3143. fraction of the total supply.
  3144. _Available since v4.3._
  3145. [.contract-index]
  3146. .Functions
  3147. --
  3148. * {xref-GovernorVotesQuorumFraction-constructor-uint256-}[`++constructor(quorumNumeratorValue)++`]
  3149. * {xref-GovernorVotesQuorumFraction-quorumNumerator--}[`++quorumNumerator()++`]
  3150. * {xref-GovernorVotesQuorumFraction-quorumNumerator-uint256-}[`++quorumNumerator(blockNumber)++`]
  3151. * {xref-GovernorVotesQuorumFraction-quorumDenominator--}[`++quorumDenominator()++`]
  3152. * {xref-GovernorVotesQuorumFraction-quorum-uint256-}[`++quorum(blockNumber)++`]
  3153. * {xref-GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-}[`++updateQuorumNumerator(newQuorumNumerator)++`]
  3154. * {xref-GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-}[`++_updateQuorumNumerator(newQuorumNumerator)++`]
  3155. [.contract-subindex-inherited]
  3156. .GovernorVotes
  3157. * {xref-GovernorVotes-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, _)++`]
  3158. [.contract-subindex-inherited]
  3159. .Governor
  3160. * {xref-Governor-receive--}[`++receive()++`]
  3161. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3162. * {xref-Governor-name--}[`++name()++`]
  3163. * {xref-Governor-version--}[`++version()++`]
  3164. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3165. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  3166. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3167. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3168. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3169. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3170. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3171. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3172. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3173. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3174. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3175. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  3176. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3177. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3178. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3179. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3180. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3181. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3182. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3183. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3184. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3185. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3186. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3187. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3188. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3189. * {xref-Governor-_executor--}[`++_executor()++`]
  3190. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3191. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3192. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3193. [.contract-subindex-inherited]
  3194. .IERC1155Receiver
  3195. [.contract-subindex-inherited]
  3196. .IERC721Receiver
  3197. [.contract-subindex-inherited]
  3198. .IGovernor
  3199. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3200. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3201. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3202. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3203. [.contract-subindex-inherited]
  3204. .EIP712
  3205. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3206. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3207. [.contract-subindex-inherited]
  3208. .ERC165
  3209. [.contract-subindex-inherited]
  3210. .IERC165
  3211. --
  3212. [.contract-index]
  3213. .Events
  3214. --
  3215. * {xref-GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-}[`++QuorumNumeratorUpdated(oldQuorumNumerator, newQuorumNumerator)++`]
  3216. [.contract-subindex-inherited]
  3217. .GovernorVotes
  3218. [.contract-subindex-inherited]
  3219. .Governor
  3220. [.contract-subindex-inherited]
  3221. .IERC1155Receiver
  3222. [.contract-subindex-inherited]
  3223. .IERC721Receiver
  3224. [.contract-subindex-inherited]
  3225. .IGovernor
  3226. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3227. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3228. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3229. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3230. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3231. [.contract-subindex-inherited]
  3232. .EIP712
  3233. [.contract-subindex-inherited]
  3234. .ERC165
  3235. [.contract-subindex-inherited]
  3236. .IERC165
  3237. [.contract-subindex-inherited]
  3238. .Context
  3239. --
  3240. [.contract-item]
  3241. [[GovernorVotesQuorumFraction-constructor-uint256-]]
  3242. ==== `[.contract-item-name]#++constructor++#++(uint256 quorumNumeratorValue)++` [.item-kind]#internal#
  3243. Initialize quorum as a fraction of the token's total supply.
  3244. The fraction is specified as `numerator / denominator`. By default the denominator is 100, so quorum is
  3245. specified as a percent: a numerator of 10 corresponds to quorum being 10% of total supply. The denominator can be
  3246. customized by overriding {quorumDenominator}.
  3247. [.contract-item]
  3248. [[GovernorVotesQuorumFraction-quorumNumerator--]]
  3249. ==== `[.contract-item-name]#++quorumNumerator++#++() → uint256++` [.item-kind]#public#
  3250. Returns the current quorum numerator. See {quorumDenominator}.
  3251. [.contract-item]
  3252. [[GovernorVotesQuorumFraction-quorumNumerator-uint256-]]
  3253. ==== `[.contract-item-name]#++quorumNumerator++#++(uint256 blockNumber) → uint256++` [.item-kind]#public#
  3254. Returns the quorum numerator at a specific block number. See {quorumDenominator}.
  3255. [.contract-item]
  3256. [[GovernorVotesQuorumFraction-quorumDenominator--]]
  3257. ==== `[.contract-item-name]#++quorumDenominator++#++() → uint256++` [.item-kind]#public#
  3258. Returns the quorum denominator. Defaults to 100, but may be overridden.
  3259. [.contract-item]
  3260. [[GovernorVotesQuorumFraction-quorum-uint256-]]
  3261. ==== `[.contract-item-name]#++quorum++#++(uint256 blockNumber) → uint256++` [.item-kind]#public#
  3262. Returns the quorum for a block number, in terms of number of votes: `supply * numerator / denominator`.
  3263. [.contract-item]
  3264. [[GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-]]
  3265. ==== `[.contract-item-name]#++updateQuorumNumerator++#++(uint256 newQuorumNumerator)++` [.item-kind]#external#
  3266. Changes the quorum numerator.
  3267. Emits a {QuorumNumeratorUpdated} event.
  3268. Requirements:
  3269. - Must be called through a governance proposal.
  3270. - New numerator must be smaller or equal to the denominator.
  3271. [.contract-item]
  3272. [[GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-]]
  3273. ==== `[.contract-item-name]#++_updateQuorumNumerator++#++(uint256 newQuorumNumerator)++` [.item-kind]#internal#
  3274. Changes the quorum numerator.
  3275. Emits a {QuorumNumeratorUpdated} event.
  3276. Requirements:
  3277. - New numerator must be smaller or equal to the denominator.
  3278. [.contract-item]
  3279. [[GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-]]
  3280. ==== `[.contract-item-name]#++QuorumNumeratorUpdated++#++(uint256 oldQuorumNumerator, uint256 newQuorumNumerator)++` [.item-kind]#event#
  3281. :GovernorVotesComp: pass:normal[xref:#GovernorVotesComp[`++GovernorVotesComp++`]]
  3282. :token: pass:normal[xref:#GovernorVotesComp-token-contract-ERC20VotesComp[`++token++`]]
  3283. :constructor: pass:normal[xref:#GovernorVotesComp-constructor-contract-ERC20VotesComp-[`++constructor++`]]
  3284. :_getVotes: pass:normal[xref:#GovernorVotesComp-_getVotes-address-uint256-bytes-[`++_getVotes++`]]
  3285. [.contract]
  3286. [[GovernorVotesComp]]
  3287. === `++GovernorVotesComp++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/extensions/GovernorVotesComp.sol[{github-icon},role=heading-link]
  3288. [.hljs-theme-light.nopadding]
  3289. ```solidity
  3290. import "@openzeppelin/contracts/governance/extensions/GovernorVotesComp.sol";
  3291. ```
  3292. Extension of {Governor} for voting weight extraction from a Comp token.
  3293. _Available since v4.3._
  3294. [.contract-index]
  3295. .Functions
  3296. --
  3297. * {xref-GovernorVotesComp-constructor-contract-ERC20VotesComp-}[`++constructor(token_)++`]
  3298. * {xref-GovernorVotesComp-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, _)++`]
  3299. [.contract-subindex-inherited]
  3300. .Governor
  3301. * {xref-Governor-receive--}[`++receive()++`]
  3302. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3303. * {xref-Governor-name--}[`++name()++`]
  3304. * {xref-Governor-version--}[`++version()++`]
  3305. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3306. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  3307. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3308. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3309. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3310. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3311. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3312. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3313. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3314. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3315. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3316. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  3317. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3318. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3319. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3320. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3321. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3322. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3323. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3324. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3325. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3326. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3327. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3328. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3329. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3330. * {xref-Governor-_executor--}[`++_executor()++`]
  3331. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3332. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3333. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3334. [.contract-subindex-inherited]
  3335. .IERC1155Receiver
  3336. [.contract-subindex-inherited]
  3337. .IERC721Receiver
  3338. [.contract-subindex-inherited]
  3339. .IGovernor
  3340. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3341. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3342. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3343. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3344. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3345. [.contract-subindex-inherited]
  3346. .EIP712
  3347. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3348. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3349. [.contract-subindex-inherited]
  3350. .ERC165
  3351. [.contract-subindex-inherited]
  3352. .IERC165
  3353. --
  3354. [.contract-index]
  3355. .Events
  3356. --
  3357. [.contract-subindex-inherited]
  3358. .Governor
  3359. [.contract-subindex-inherited]
  3360. .IERC1155Receiver
  3361. [.contract-subindex-inherited]
  3362. .IERC721Receiver
  3363. [.contract-subindex-inherited]
  3364. .IGovernor
  3365. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3366. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3367. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3368. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3369. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3370. [.contract-subindex-inherited]
  3371. .EIP712
  3372. [.contract-subindex-inherited]
  3373. .ERC165
  3374. [.contract-subindex-inherited]
  3375. .IERC165
  3376. [.contract-subindex-inherited]
  3377. .Context
  3378. --
  3379. [.contract-item]
  3380. [[GovernorVotesComp-constructor-contract-ERC20VotesComp-]]
  3381. ==== `[.contract-item-name]#++constructor++#++(contract ERC20VotesComp token_)++` [.item-kind]#internal#
  3382. [.contract-item]
  3383. [[GovernorVotesComp-_getVotes-address-uint256-bytes-]]
  3384. ==== `[.contract-item-name]#++_getVotes++#++(address account, uint256 blockNumber, bytes) → uint256++` [.item-kind]#internal#
  3385. === Extensions
  3386. :GovernorTimelockControl: pass:normal[xref:#GovernorTimelockControl[`++GovernorTimelockControl++`]]
  3387. :constructor: pass:normal[xref:#GovernorTimelockControl-constructor-contract-TimelockController-[`++constructor++`]]
  3388. :supportsInterface: pass:normal[xref:#GovernorTimelockControl-supportsInterface-bytes4-[`++supportsInterface++`]]
  3389. :state: pass:normal[xref:#GovernorTimelockControl-state-uint256-[`++state++`]]
  3390. :timelock: pass:normal[xref:#GovernorTimelockControl-timelock--[`++timelock++`]]
  3391. :proposalEta: pass:normal[xref:#GovernorTimelockControl-proposalEta-uint256-[`++proposalEta++`]]
  3392. :queue: pass:normal[xref:#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-[`++queue++`]]
  3393. :_execute: pass:normal[xref:#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-[`++_execute++`]]
  3394. :_cancel: pass:normal[xref:#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-[`++_cancel++`]]
  3395. :_executor: pass:normal[xref:#GovernorTimelockControl-_executor--[`++_executor++`]]
  3396. :updateTimelock: pass:normal[xref:#GovernorTimelockControl-updateTimelock-contract-TimelockController-[`++updateTimelock++`]]
  3397. :TimelockChange: pass:normal[xref:#GovernorTimelockControl-TimelockChange-address-address-[`++TimelockChange++`]]
  3398. [.contract]
  3399. [[GovernorTimelockControl]]
  3400. === `++GovernorTimelockControl++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/extensions/GovernorTimelockControl.sol[{github-icon},role=heading-link]
  3401. [.hljs-theme-light.nopadding]
  3402. ```solidity
  3403. import "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol";
  3404. ```
  3405. Extension of {Governor} that binds the execution process to an instance of {TimelockController}. This adds a
  3406. delay, enforced by the {TimelockController} to all successful proposal (in addition to the voting duration). The
  3407. {Governor} needs the proposer (and ideally the executor) roles for the {Governor} to work properly.
  3408. Using this model means the proposal will be operated by the {TimelockController} and not by the {Governor}. Thus,
  3409. the assets and permissions must be attached to the {TimelockController}. Any asset sent to the {Governor} will be
  3410. inaccessible.
  3411. WARNING: Setting up the TimelockController to have additional proposers besides the governor is very risky, as it
  3412. grants them powers that they must be trusted or known not to use: 1) {onlyGovernance} functions like {relay} are
  3413. available to them through the timelock, and 2) approved governance proposals can be blocked by them, effectively
  3414. executing a Denial of Service attack. This risk will be mitigated in a future release.
  3415. _Available since v4.3._
  3416. [.contract-index]
  3417. .Functions
  3418. --
  3419. * {xref-GovernorTimelockControl-constructor-contract-TimelockController-}[`++constructor(timelockAddress)++`]
  3420. * {xref-GovernorTimelockControl-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3421. * {xref-GovernorTimelockControl-state-uint256-}[`++state(proposalId)++`]
  3422. * {xref-GovernorTimelockControl-timelock--}[`++timelock()++`]
  3423. * {xref-GovernorTimelockControl-proposalEta-uint256-}[`++proposalEta(proposalId)++`]
  3424. * {xref-GovernorTimelockControl-queue-address---uint256---bytes---bytes32-}[`++queue(targets, values, calldatas, descriptionHash)++`]
  3425. * {xref-GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, descriptionHash)++`]
  3426. * {xref-GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3427. * {xref-GovernorTimelockControl-_executor--}[`++_executor()++`]
  3428. * {xref-GovernorTimelockControl-updateTimelock-contract-TimelockController-}[`++updateTimelock(newTimelock)++`]
  3429. [.contract-subindex-inherited]
  3430. .Governor
  3431. * {xref-Governor-receive--}[`++receive()++`]
  3432. * {xref-Governor-name--}[`++name()++`]
  3433. * {xref-Governor-version--}[`++version()++`]
  3434. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3435. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3436. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3437. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3438. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3439. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3440. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  3441. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3442. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3443. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3444. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3445. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3446. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3447. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3448. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3449. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3450. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3451. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3452. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3453. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3454. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3455. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3456. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3457. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3458. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3459. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3460. [.contract-subindex-inherited]
  3461. .IERC1155Receiver
  3462. [.contract-subindex-inherited]
  3463. .IERC721Receiver
  3464. [.contract-subindex-inherited]
  3465. .IGovernorTimelock
  3466. [.contract-subindex-inherited]
  3467. .IGovernor
  3468. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3469. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3470. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3471. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3472. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3473. [.contract-subindex-inherited]
  3474. .EIP712
  3475. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3476. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3477. [.contract-subindex-inherited]
  3478. .ERC165
  3479. [.contract-subindex-inherited]
  3480. .IERC165
  3481. --
  3482. [.contract-index]
  3483. .Events
  3484. --
  3485. * {xref-GovernorTimelockControl-TimelockChange-address-address-}[`++TimelockChange(oldTimelock, newTimelock)++`]
  3486. [.contract-subindex-inherited]
  3487. .Governor
  3488. [.contract-subindex-inherited]
  3489. .IERC1155Receiver
  3490. [.contract-subindex-inherited]
  3491. .IERC721Receiver
  3492. [.contract-subindex-inherited]
  3493. .IGovernorTimelock
  3494. * {xref-IGovernorTimelock-ProposalQueued-uint256-uint256-}[`++ProposalQueued(proposalId, eta)++`]
  3495. [.contract-subindex-inherited]
  3496. .IGovernor
  3497. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3498. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3499. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3500. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3501. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3502. [.contract-subindex-inherited]
  3503. .EIP712
  3504. [.contract-subindex-inherited]
  3505. .ERC165
  3506. [.contract-subindex-inherited]
  3507. .IERC165
  3508. [.contract-subindex-inherited]
  3509. .Context
  3510. --
  3511. [.contract-item]
  3512. [[GovernorTimelockControl-constructor-contract-TimelockController-]]
  3513. ==== `[.contract-item-name]#++constructor++#++(contract TimelockController timelockAddress)++` [.item-kind]#internal#
  3514. Set the timelock.
  3515. [.contract-item]
  3516. [[GovernorTimelockControl-supportsInterface-bytes4-]]
  3517. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  3518. See {IERC165-supportsInterface}.
  3519. [.contract-item]
  3520. [[GovernorTimelockControl-state-uint256-]]
  3521. ==== `[.contract-item-name]#++state++#++(uint256 proposalId) → enum IGovernor.ProposalState++` [.item-kind]#public#
  3522. Overridden version of the {Governor-state} function with added support for the `Queued` status.
  3523. [.contract-item]
  3524. [[GovernorTimelockControl-timelock--]]
  3525. ==== `[.contract-item-name]#++timelock++#++() → address++` [.item-kind]#public#
  3526. Public accessor to check the address of the timelock
  3527. [.contract-item]
  3528. [[GovernorTimelockControl-proposalEta-uint256-]]
  3529. ==== `[.contract-item-name]#++proposalEta++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  3530. Public accessor to check the eta of a queued proposal
  3531. [.contract-item]
  3532. [[GovernorTimelockControl-queue-address---uint256---bytes---bytes32-]]
  3533. ==== `[.contract-item-name]#++queue++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  3534. Function to queue a proposal to the timelock.
  3535. [.contract-item]
  3536. [[GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-]]
  3537. ==== `[.contract-item-name]#++_execute++#++(uint256, address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash)++` [.item-kind]#internal#
  3538. Overridden execute function that run the already queued proposal through the timelock.
  3539. [.contract-item]
  3540. [[GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-]]
  3541. ==== `[.contract-item-name]#++_cancel++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#internal#
  3542. Overridden version of the {Governor-_cancel} function to cancel the timelocked proposal if it as already
  3543. been queued.
  3544. [.contract-item]
  3545. [[GovernorTimelockControl-_executor--]]
  3546. ==== `[.contract-item-name]#++_executor++#++() → address++` [.item-kind]#internal#
  3547. Address through which the governor executes action. In this case, the timelock.
  3548. [.contract-item]
  3549. [[GovernorTimelockControl-updateTimelock-contract-TimelockController-]]
  3550. ==== `[.contract-item-name]#++updateTimelock++#++(contract TimelockController newTimelock)++` [.item-kind]#external#
  3551. Public endpoint to update the underlying timelock instance. Restricted to the timelock itself, so updates
  3552. must be proposed, scheduled, and executed through governance proposals.
  3553. CAUTION: It is not recommended to change the timelock while there are other queued governance proposals.
  3554. [.contract-item]
  3555. [[GovernorTimelockControl-TimelockChange-address-address-]]
  3556. ==== `[.contract-item-name]#++TimelockChange++#++(address oldTimelock, address newTimelock)++` [.item-kind]#event#
  3557. Emitted when the timelock controller used for proposal execution is modified.
  3558. :GovernorTimelockCompound: pass:normal[xref:#GovernorTimelockCompound[`++GovernorTimelockCompound++`]]
  3559. :constructor: pass:normal[xref:#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-[`++constructor++`]]
  3560. :supportsInterface: pass:normal[xref:#GovernorTimelockCompound-supportsInterface-bytes4-[`++supportsInterface++`]]
  3561. :state: pass:normal[xref:#GovernorTimelockCompound-state-uint256-[`++state++`]]
  3562. :timelock: pass:normal[xref:#GovernorTimelockCompound-timelock--[`++timelock++`]]
  3563. :proposalEta: pass:normal[xref:#GovernorTimelockCompound-proposalEta-uint256-[`++proposalEta++`]]
  3564. :queue: pass:normal[xref:#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-[`++queue++`]]
  3565. :_execute: pass:normal[xref:#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-[`++_execute++`]]
  3566. :_cancel: pass:normal[xref:#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-[`++_cancel++`]]
  3567. :_executor: pass:normal[xref:#GovernorTimelockCompound-_executor--[`++_executor++`]]
  3568. :__acceptAdmin: pass:normal[xref:#GovernorTimelockCompound-__acceptAdmin--[`++__acceptAdmin++`]]
  3569. :updateTimelock: pass:normal[xref:#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-[`++updateTimelock++`]]
  3570. :TimelockChange: pass:normal[xref:#GovernorTimelockCompound-TimelockChange-address-address-[`++TimelockChange++`]]
  3571. :ProposalTimelock: pass:normal[xref:#GovernorTimelockCompound-ProposalTimelock[`++ProposalTimelock++`]]
  3572. [.contract]
  3573. [[GovernorTimelockCompound]]
  3574. === `++GovernorTimelockCompound++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/extensions/GovernorTimelockCompound.sol[{github-icon},role=heading-link]
  3575. [.hljs-theme-light.nopadding]
  3576. ```solidity
  3577. import "@openzeppelin/contracts/governance/extensions/GovernorTimelockCompound.sol";
  3578. ```
  3579. Extension of {Governor} that binds the execution process to a Compound Timelock. This adds a delay, enforced by
  3580. the external timelock to all successful proposal (in addition to the voting duration). The {Governor} needs to be
  3581. the admin of the timelock for any operation to be performed. A public, unrestricted,
  3582. {GovernorTimelockCompound-__acceptAdmin} is available to accept ownership of the timelock.
  3583. Using this model means the proposal will be operated by the {TimelockController} and not by the {Governor}. Thus,
  3584. the assets and permissions must be attached to the {TimelockController}. Any asset sent to the {Governor} will be
  3585. inaccessible.
  3586. _Available since v4.3._
  3587. [.contract-index]
  3588. .Functions
  3589. --
  3590. * {xref-GovernorTimelockCompound-constructor-contract-ICompoundTimelock-}[`++constructor(timelockAddress)++`]
  3591. * {xref-GovernorTimelockCompound-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3592. * {xref-GovernorTimelockCompound-state-uint256-}[`++state(proposalId)++`]
  3593. * {xref-GovernorTimelockCompound-timelock--}[`++timelock()++`]
  3594. * {xref-GovernorTimelockCompound-proposalEta-uint256-}[`++proposalEta(proposalId)++`]
  3595. * {xref-GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-}[`++queue(targets, values, calldatas, descriptionHash)++`]
  3596. * {xref-GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(proposalId, targets, values, calldatas, _)++`]
  3597. * {xref-GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3598. * {xref-GovernorTimelockCompound-_executor--}[`++_executor()++`]
  3599. * {xref-GovernorTimelockCompound-__acceptAdmin--}[`++__acceptAdmin()++`]
  3600. * {xref-GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-}[`++updateTimelock(newTimelock)++`]
  3601. [.contract-subindex-inherited]
  3602. .Governor
  3603. * {xref-Governor-receive--}[`++receive()++`]
  3604. * {xref-Governor-name--}[`++name()++`]
  3605. * {xref-Governor-version--}[`++version()++`]
  3606. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3607. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3608. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3609. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3610. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3611. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3612. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  3613. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3614. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3615. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3616. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3617. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3618. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3619. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3620. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3621. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3622. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3623. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3624. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3625. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3626. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3627. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3628. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3629. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3630. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3631. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3632. [.contract-subindex-inherited]
  3633. .IERC1155Receiver
  3634. [.contract-subindex-inherited]
  3635. .IERC721Receiver
  3636. [.contract-subindex-inherited]
  3637. .IGovernorTimelock
  3638. [.contract-subindex-inherited]
  3639. .IGovernor
  3640. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3641. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3642. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3643. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3644. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3645. [.contract-subindex-inherited]
  3646. .EIP712
  3647. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3648. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3649. [.contract-subindex-inherited]
  3650. .ERC165
  3651. [.contract-subindex-inherited]
  3652. .IERC165
  3653. --
  3654. [.contract-index]
  3655. .Events
  3656. --
  3657. * {xref-GovernorTimelockCompound-TimelockChange-address-address-}[`++TimelockChange(oldTimelock, newTimelock)++`]
  3658. [.contract-subindex-inherited]
  3659. .Governor
  3660. [.contract-subindex-inherited]
  3661. .IERC1155Receiver
  3662. [.contract-subindex-inherited]
  3663. .IERC721Receiver
  3664. [.contract-subindex-inherited]
  3665. .IGovernorTimelock
  3666. * {xref-IGovernorTimelock-ProposalQueued-uint256-uint256-}[`++ProposalQueued(proposalId, eta)++`]
  3667. [.contract-subindex-inherited]
  3668. .IGovernor
  3669. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3670. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3671. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3672. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3673. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3674. [.contract-subindex-inherited]
  3675. .EIP712
  3676. [.contract-subindex-inherited]
  3677. .ERC165
  3678. [.contract-subindex-inherited]
  3679. .IERC165
  3680. [.contract-subindex-inherited]
  3681. .Context
  3682. --
  3683. [.contract-item]
  3684. [[GovernorTimelockCompound-constructor-contract-ICompoundTimelock-]]
  3685. ==== `[.contract-item-name]#++constructor++#++(contract ICompoundTimelock timelockAddress)++` [.item-kind]#internal#
  3686. Set the timelock.
  3687. [.contract-item]
  3688. [[GovernorTimelockCompound-supportsInterface-bytes4-]]
  3689. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  3690. See {IERC165-supportsInterface}.
  3691. [.contract-item]
  3692. [[GovernorTimelockCompound-state-uint256-]]
  3693. ==== `[.contract-item-name]#++state++#++(uint256 proposalId) → enum IGovernor.ProposalState++` [.item-kind]#public#
  3694. Overridden version of the {Governor-state} function with added support for the `Queued` and `Expired` status.
  3695. [.contract-item]
  3696. [[GovernorTimelockCompound-timelock--]]
  3697. ==== `[.contract-item-name]#++timelock++#++() → address++` [.item-kind]#public#
  3698. Public accessor to check the address of the timelock
  3699. [.contract-item]
  3700. [[GovernorTimelockCompound-proposalEta-uint256-]]
  3701. ==== `[.contract-item-name]#++proposalEta++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  3702. Public accessor to check the eta of a queued proposal
  3703. [.contract-item]
  3704. [[GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-]]
  3705. ==== `[.contract-item-name]#++queue++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  3706. Function to queue a proposal to the timelock.
  3707. [.contract-item]
  3708. [[GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-]]
  3709. ==== `[.contract-item-name]#++_execute++#++(uint256 proposalId, address[] targets, uint256[] values, bytes[] calldatas, bytes32)++` [.item-kind]#internal#
  3710. Overridden execute function that run the already queued proposal through the timelock.
  3711. [.contract-item]
  3712. [[GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-]]
  3713. ==== `[.contract-item-name]#++_cancel++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#internal#
  3714. Overridden version of the {Governor-_cancel} function to cancel the timelocked proposal if it as already
  3715. been queued.
  3716. [.contract-item]
  3717. [[GovernorTimelockCompound-_executor--]]
  3718. ==== `[.contract-item-name]#++_executor++#++() → address++` [.item-kind]#internal#
  3719. Address through which the governor executes action. In this case, the timelock.
  3720. [.contract-item]
  3721. [[GovernorTimelockCompound-__acceptAdmin--]]
  3722. ==== `[.contract-item-name]#++__acceptAdmin++#++()++` [.item-kind]#public#
  3723. Accept admin right over the timelock.
  3724. [.contract-item]
  3725. [[GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-]]
  3726. ==== `[.contract-item-name]#++updateTimelock++#++(contract ICompoundTimelock newTimelock)++` [.item-kind]#external#
  3727. Public endpoint to update the underlying timelock instance. Restricted to the timelock itself, so updates
  3728. must be proposed, scheduled, and executed through governance proposals.
  3729. For security reasons, the timelock must be handed over to another admin before setting up a new one. The two
  3730. operations (hand over the timelock) and do the update can be batched in a single proposal.
  3731. Note that if the timelock admin has been handed over in a previous operation, we refuse updates made through the
  3732. timelock if admin of the timelock has already been accepted and the operation is executed outside the scope of
  3733. governance.
  3734. CAUTION: It is not recommended to change the timelock while there are other queued governance proposals.
  3735. [.contract-item]
  3736. [[GovernorTimelockCompound-TimelockChange-address-address-]]
  3737. ==== `[.contract-item-name]#++TimelockChange++#++(address oldTimelock, address newTimelock)++` [.item-kind]#event#
  3738. Emitted when the timelock controller used for proposal execution is modified.
  3739. :GovernorSettings: pass:normal[xref:#GovernorSettings[`++GovernorSettings++`]]
  3740. :constructor: pass:normal[xref:#GovernorSettings-constructor-uint256-uint256-uint256-[`++constructor++`]]
  3741. :votingDelay: pass:normal[xref:#GovernorSettings-votingDelay--[`++votingDelay++`]]
  3742. :votingPeriod: pass:normal[xref:#GovernorSettings-votingPeriod--[`++votingPeriod++`]]
  3743. :proposalThreshold: pass:normal[xref:#GovernorSettings-proposalThreshold--[`++proposalThreshold++`]]
  3744. :setVotingDelay: pass:normal[xref:#GovernorSettings-setVotingDelay-uint256-[`++setVotingDelay++`]]
  3745. :setVotingPeriod: pass:normal[xref:#GovernorSettings-setVotingPeriod-uint256-[`++setVotingPeriod++`]]
  3746. :setProposalThreshold: pass:normal[xref:#GovernorSettings-setProposalThreshold-uint256-[`++setProposalThreshold++`]]
  3747. :_setVotingDelay: pass:normal[xref:#GovernorSettings-_setVotingDelay-uint256-[`++_setVotingDelay++`]]
  3748. :_setVotingPeriod: pass:normal[xref:#GovernorSettings-_setVotingPeriod-uint256-[`++_setVotingPeriod++`]]
  3749. :_setProposalThreshold: pass:normal[xref:#GovernorSettings-_setProposalThreshold-uint256-[`++_setProposalThreshold++`]]
  3750. :VotingDelaySet: pass:normal[xref:#GovernorSettings-VotingDelaySet-uint256-uint256-[`++VotingDelaySet++`]]
  3751. :VotingPeriodSet: pass:normal[xref:#GovernorSettings-VotingPeriodSet-uint256-uint256-[`++VotingPeriodSet++`]]
  3752. :ProposalThresholdSet: pass:normal[xref:#GovernorSettings-ProposalThresholdSet-uint256-uint256-[`++ProposalThresholdSet++`]]
  3753. [.contract]
  3754. [[GovernorSettings]]
  3755. === `++GovernorSettings++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/extensions/GovernorSettings.sol[{github-icon},role=heading-link]
  3756. [.hljs-theme-light.nopadding]
  3757. ```solidity
  3758. import "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol";
  3759. ```
  3760. Extension of {Governor} for settings updatable through governance.
  3761. _Available since v4.4._
  3762. [.contract-index]
  3763. .Functions
  3764. --
  3765. * {xref-GovernorSettings-constructor-uint256-uint256-uint256-}[`++constructor(initialVotingDelay, initialVotingPeriod, initialProposalThreshold)++`]
  3766. * {xref-GovernorSettings-votingDelay--}[`++votingDelay()++`]
  3767. * {xref-GovernorSettings-votingPeriod--}[`++votingPeriod()++`]
  3768. * {xref-GovernorSettings-proposalThreshold--}[`++proposalThreshold()++`]
  3769. * {xref-GovernorSettings-setVotingDelay-uint256-}[`++setVotingDelay(newVotingDelay)++`]
  3770. * {xref-GovernorSettings-setVotingPeriod-uint256-}[`++setVotingPeriod(newVotingPeriod)++`]
  3771. * {xref-GovernorSettings-setProposalThreshold-uint256-}[`++setProposalThreshold(newProposalThreshold)++`]
  3772. * {xref-GovernorSettings-_setVotingDelay-uint256-}[`++_setVotingDelay(newVotingDelay)++`]
  3773. * {xref-GovernorSettings-_setVotingPeriod-uint256-}[`++_setVotingPeriod(newVotingPeriod)++`]
  3774. * {xref-GovernorSettings-_setProposalThreshold-uint256-}[`++_setProposalThreshold(newProposalThreshold)++`]
  3775. [.contract-subindex-inherited]
  3776. .Governor
  3777. * {xref-Governor-receive--}[`++receive()++`]
  3778. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3779. * {xref-Governor-name--}[`++name()++`]
  3780. * {xref-Governor-version--}[`++version()++`]
  3781. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3782. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  3783. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3784. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3785. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3786. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3787. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  3788. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3789. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3790. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3791. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3792. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  3793. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3794. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3795. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3796. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3797. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3798. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3799. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3800. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3801. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3802. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3803. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3804. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3805. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3806. * {xref-Governor-_executor--}[`++_executor()++`]
  3807. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3808. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3809. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3810. [.contract-subindex-inherited]
  3811. .IERC1155Receiver
  3812. [.contract-subindex-inherited]
  3813. .IERC721Receiver
  3814. [.contract-subindex-inherited]
  3815. .IGovernor
  3816. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3817. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3818. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3819. [.contract-subindex-inherited]
  3820. .EIP712
  3821. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3822. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3823. [.contract-subindex-inherited]
  3824. .ERC165
  3825. [.contract-subindex-inherited]
  3826. .IERC165
  3827. --
  3828. [.contract-index]
  3829. .Events
  3830. --
  3831. * {xref-GovernorSettings-VotingDelaySet-uint256-uint256-}[`++VotingDelaySet(oldVotingDelay, newVotingDelay)++`]
  3832. * {xref-GovernorSettings-VotingPeriodSet-uint256-uint256-}[`++VotingPeriodSet(oldVotingPeriod, newVotingPeriod)++`]
  3833. * {xref-GovernorSettings-ProposalThresholdSet-uint256-uint256-}[`++ProposalThresholdSet(oldProposalThreshold, newProposalThreshold)++`]
  3834. [.contract-subindex-inherited]
  3835. .Governor
  3836. [.contract-subindex-inherited]
  3837. .IERC1155Receiver
  3838. [.contract-subindex-inherited]
  3839. .IERC721Receiver
  3840. [.contract-subindex-inherited]
  3841. .IGovernor
  3842. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3843. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3844. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3845. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3846. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3847. [.contract-subindex-inherited]
  3848. .EIP712
  3849. [.contract-subindex-inherited]
  3850. .ERC165
  3851. [.contract-subindex-inherited]
  3852. .IERC165
  3853. [.contract-subindex-inherited]
  3854. .Context
  3855. --
  3856. [.contract-item]
  3857. [[GovernorSettings-constructor-uint256-uint256-uint256-]]
  3858. ==== `[.contract-item-name]#++constructor++#++(uint256 initialVotingDelay, uint256 initialVotingPeriod, uint256 initialProposalThreshold)++` [.item-kind]#internal#
  3859. Initialize the governance parameters.
  3860. [.contract-item]
  3861. [[GovernorSettings-votingDelay--]]
  3862. ==== `[.contract-item-name]#++votingDelay++#++() → uint256++` [.item-kind]#public#
  3863. See {IGovernor-votingDelay}.
  3864. [.contract-item]
  3865. [[GovernorSettings-votingPeriod--]]
  3866. ==== `[.contract-item-name]#++votingPeriod++#++() → uint256++` [.item-kind]#public#
  3867. See {IGovernor-votingPeriod}.
  3868. [.contract-item]
  3869. [[GovernorSettings-proposalThreshold--]]
  3870. ==== `[.contract-item-name]#++proposalThreshold++#++() → uint256++` [.item-kind]#public#
  3871. See {Governor-proposalThreshold}.
  3872. [.contract-item]
  3873. [[GovernorSettings-setVotingDelay-uint256-]]
  3874. ==== `[.contract-item-name]#++setVotingDelay++#++(uint256 newVotingDelay)++` [.item-kind]#public#
  3875. Update the voting delay. This operation can only be performed through a governance proposal.
  3876. Emits a {VotingDelaySet} event.
  3877. [.contract-item]
  3878. [[GovernorSettings-setVotingPeriod-uint256-]]
  3879. ==== `[.contract-item-name]#++setVotingPeriod++#++(uint256 newVotingPeriod)++` [.item-kind]#public#
  3880. Update the voting period. This operation can only be performed through a governance proposal.
  3881. Emits a {VotingPeriodSet} event.
  3882. [.contract-item]
  3883. [[GovernorSettings-setProposalThreshold-uint256-]]
  3884. ==== `[.contract-item-name]#++setProposalThreshold++#++(uint256 newProposalThreshold)++` [.item-kind]#public#
  3885. Update the proposal threshold. This operation can only be performed through a governance proposal.
  3886. Emits a {ProposalThresholdSet} event.
  3887. [.contract-item]
  3888. [[GovernorSettings-_setVotingDelay-uint256-]]
  3889. ==== `[.contract-item-name]#++_setVotingDelay++#++(uint256 newVotingDelay)++` [.item-kind]#internal#
  3890. Internal setter for the voting delay.
  3891. Emits a {VotingDelaySet} event.
  3892. [.contract-item]
  3893. [[GovernorSettings-_setVotingPeriod-uint256-]]
  3894. ==== `[.contract-item-name]#++_setVotingPeriod++#++(uint256 newVotingPeriod)++` [.item-kind]#internal#
  3895. Internal setter for the voting period.
  3896. Emits a {VotingPeriodSet} event.
  3897. [.contract-item]
  3898. [[GovernorSettings-_setProposalThreshold-uint256-]]
  3899. ==== `[.contract-item-name]#++_setProposalThreshold++#++(uint256 newProposalThreshold)++` [.item-kind]#internal#
  3900. Internal setter for the proposal threshold.
  3901. Emits a {ProposalThresholdSet} event.
  3902. [.contract-item]
  3903. [[GovernorSettings-VotingDelaySet-uint256-uint256-]]
  3904. ==== `[.contract-item-name]#++VotingDelaySet++#++(uint256 oldVotingDelay, uint256 newVotingDelay)++` [.item-kind]#event#
  3905. [.contract-item]
  3906. [[GovernorSettings-VotingPeriodSet-uint256-uint256-]]
  3907. ==== `[.contract-item-name]#++VotingPeriodSet++#++(uint256 oldVotingPeriod, uint256 newVotingPeriod)++` [.item-kind]#event#
  3908. [.contract-item]
  3909. [[GovernorSettings-ProposalThresholdSet-uint256-uint256-]]
  3910. ==== `[.contract-item-name]#++ProposalThresholdSet++#++(uint256 oldProposalThreshold, uint256 newProposalThreshold)++` [.item-kind]#event#
  3911. :GovernorPreventLateQuorum: pass:normal[xref:#GovernorPreventLateQuorum[`++GovernorPreventLateQuorum++`]]
  3912. :constructor: pass:normal[xref:#GovernorPreventLateQuorum-constructor-uint64-[`++constructor++`]]
  3913. :proposalDeadline: pass:normal[xref:#GovernorPreventLateQuorum-proposalDeadline-uint256-[`++proposalDeadline++`]]
  3914. :_castVote: pass:normal[xref:#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-[`++_castVote++`]]
  3915. :lateQuorumVoteExtension: pass:normal[xref:#GovernorPreventLateQuorum-lateQuorumVoteExtension--[`++lateQuorumVoteExtension++`]]
  3916. :setLateQuorumVoteExtension: pass:normal[xref:#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-[`++setLateQuorumVoteExtension++`]]
  3917. :_setLateQuorumVoteExtension: pass:normal[xref:#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-[`++_setLateQuorumVoteExtension++`]]
  3918. :ProposalExtended: pass:normal[xref:#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-[`++ProposalExtended++`]]
  3919. :LateQuorumVoteExtensionSet: pass:normal[xref:#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-[`++LateQuorumVoteExtensionSet++`]]
  3920. [.contract]
  3921. [[GovernorPreventLateQuorum]]
  3922. === `++GovernorPreventLateQuorum++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/extensions/GovernorPreventLateQuorum.sol[{github-icon},role=heading-link]
  3923. [.hljs-theme-light.nopadding]
  3924. ```solidity
  3925. import "@openzeppelin/contracts/governance/extensions/GovernorPreventLateQuorum.sol";
  3926. ```
  3927. A module that ensures there is a minimum voting period after quorum is reached. This prevents a large voter from
  3928. swaying a vote and triggering quorum at the last minute, by ensuring there is always time for other voters to react
  3929. and try to oppose the decision.
  3930. If a vote causes quorum to be reached, the proposal's voting period may be extended so that it does not end before at
  3931. least a given number of blocks have passed (the "vote extension" parameter). This parameter can be set by the
  3932. governance executor (e.g. through a governance proposal).
  3933. _Available since v4.5._
  3934. [.contract-index]
  3935. .Functions
  3936. --
  3937. * {xref-GovernorPreventLateQuorum-constructor-uint64-}[`++constructor(initialVoteExtension)++`]
  3938. * {xref-GovernorPreventLateQuorum-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3939. * {xref-GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3940. * {xref-GovernorPreventLateQuorum-lateQuorumVoteExtension--}[`++lateQuorumVoteExtension()++`]
  3941. * {xref-GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-}[`++setLateQuorumVoteExtension(newVoteExtension)++`]
  3942. * {xref-GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-}[`++_setLateQuorumVoteExtension(newVoteExtension)++`]
  3943. [.contract-subindex-inherited]
  3944. .Governor
  3945. * {xref-Governor-receive--}[`++receive()++`]
  3946. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3947. * {xref-Governor-name--}[`++name()++`]
  3948. * {xref-Governor-version--}[`++version()++`]
  3949. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3950. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  3951. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3952. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3953. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3954. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3955. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  3956. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3957. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3958. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3959. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3960. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  3961. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3962. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3963. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3964. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3965. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3966. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3967. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3968. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3969. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3970. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3971. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3972. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3973. * {xref-Governor-_executor--}[`++_executor()++`]
  3974. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3975. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3976. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3977. [.contract-subindex-inherited]
  3978. .IERC1155Receiver
  3979. [.contract-subindex-inherited]
  3980. .IERC721Receiver
  3981. [.contract-subindex-inherited]
  3982. .IGovernor
  3983. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3984. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3985. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3986. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3987. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3988. [.contract-subindex-inherited]
  3989. .EIP712
  3990. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3991. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3992. [.contract-subindex-inherited]
  3993. .ERC165
  3994. [.contract-subindex-inherited]
  3995. .IERC165
  3996. --
  3997. [.contract-index]
  3998. .Events
  3999. --
  4000. * {xref-GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-}[`++ProposalExtended(proposalId, extendedDeadline)++`]
  4001. * {xref-GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-}[`++LateQuorumVoteExtensionSet(oldVoteExtension, newVoteExtension)++`]
  4002. [.contract-subindex-inherited]
  4003. .Governor
  4004. [.contract-subindex-inherited]
  4005. .IERC1155Receiver
  4006. [.contract-subindex-inherited]
  4007. .IERC721Receiver
  4008. [.contract-subindex-inherited]
  4009. .IGovernor
  4010. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  4011. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  4012. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  4013. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  4014. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  4015. [.contract-subindex-inherited]
  4016. .EIP712
  4017. [.contract-subindex-inherited]
  4018. .ERC165
  4019. [.contract-subindex-inherited]
  4020. .IERC165
  4021. [.contract-subindex-inherited]
  4022. .Context
  4023. --
  4024. [.contract-item]
  4025. [[GovernorPreventLateQuorum-constructor-uint64-]]
  4026. ==== `[.contract-item-name]#++constructor++#++(uint64 initialVoteExtension)++` [.item-kind]#internal#
  4027. Initializes the vote extension parameter: the number of blocks that are required to pass since a proposal
  4028. reaches quorum until its voting period ends. If necessary the voting period will be extended beyond the one set
  4029. at proposal creation.
  4030. [.contract-item]
  4031. [[GovernorPreventLateQuorum-proposalDeadline-uint256-]]
  4032. ==== `[.contract-item-name]#++proposalDeadline++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  4033. Returns the proposal deadline, which may have been extended beyond that set at proposal creation, if the
  4034. proposal reached quorum late in the voting period. See {Governor-proposalDeadline}.
  4035. [.contract-item]
  4036. [[GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-]]
  4037. ==== `[.contract-item-name]#++_castVote++#++(uint256 proposalId, address account, uint8 support, string reason, bytes params) → uint256++` [.item-kind]#internal#
  4038. Casts a vote and detects if it caused quorum to be reached, potentially extending the voting period. See
  4039. {Governor-_castVote}.
  4040. May emit a {ProposalExtended} event.
  4041. [.contract-item]
  4042. [[GovernorPreventLateQuorum-lateQuorumVoteExtension--]]
  4043. ==== `[.contract-item-name]#++lateQuorumVoteExtension++#++() → uint64++` [.item-kind]#public#
  4044. Returns the current value of the vote extension parameter: the number of blocks that are required to pass
  4045. from the time a proposal reaches quorum until its voting period ends.
  4046. [.contract-item]
  4047. [[GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-]]
  4048. ==== `[.contract-item-name]#++setLateQuorumVoteExtension++#++(uint64 newVoteExtension)++` [.item-kind]#public#
  4049. Changes the {lateQuorumVoteExtension}. This operation can only be performed by the governance executor,
  4050. generally through a governance proposal.
  4051. Emits a {LateQuorumVoteExtensionSet} event.
  4052. [.contract-item]
  4053. [[GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-]]
  4054. ==== `[.contract-item-name]#++_setLateQuorumVoteExtension++#++(uint64 newVoteExtension)++` [.item-kind]#internal#
  4055. Changes the {lateQuorumVoteExtension}. This is an internal function that can be exposed in a public function
  4056. like {setLateQuorumVoteExtension} if another access control mechanism is needed.
  4057. Emits a {LateQuorumVoteExtensionSet} event.
  4058. [.contract-item]
  4059. [[GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-]]
  4060. ==== `[.contract-item-name]#++ProposalExtended++#++(uint256 proposalId, uint64 extendedDeadline)++` [.item-kind]#event#
  4061. Emitted when a proposal deadline is pushed back due to reaching quorum late in its voting period.
  4062. [.contract-item]
  4063. [[GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-]]
  4064. ==== `[.contract-item-name]#++LateQuorumVoteExtensionSet++#++(uint64 oldVoteExtension, uint64 newVoteExtension)++` [.item-kind]#event#
  4065. Emitted when the {lateQuorumVoteExtension} parameter is changed.
  4066. :GovernorCompatibilityBravo: pass:normal[xref:#GovernorCompatibilityBravo[`++GovernorCompatibilityBravo++`]]
  4067. :COUNTING_MODE: pass:normal[xref:#GovernorCompatibilityBravo-COUNTING_MODE--[`++COUNTING_MODE++`]]
  4068. :propose: pass:normal[xref:#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-[`++propose++`]]
  4069. :propose: pass:normal[xref:#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`++propose++`]]
  4070. :queue: pass:normal[xref:#GovernorCompatibilityBravo-queue-uint256-[`++queue++`]]
  4071. :execute: pass:normal[xref:#GovernorCompatibilityBravo-execute-uint256-[`++execute++`]]
  4072. :cancel: pass:normal[xref:#GovernorCompatibilityBravo-cancel-uint256-[`++cancel++`]]
  4073. :proposals: pass:normal[xref:#GovernorCompatibilityBravo-proposals-uint256-[`++proposals++`]]
  4074. :getActions: pass:normal[xref:#GovernorCompatibilityBravo-getActions-uint256-[`++getActions++`]]
  4075. :getReceipt: pass:normal[xref:#GovernorCompatibilityBravo-getReceipt-uint256-address-[`++getReceipt++`]]
  4076. :quorumVotes: pass:normal[xref:#GovernorCompatibilityBravo-quorumVotes--[`++quorumVotes++`]]
  4077. :hasVoted: pass:normal[xref:#GovernorCompatibilityBravo-hasVoted-uint256-address-[`++hasVoted++`]]
  4078. :_quorumReached: pass:normal[xref:#GovernorCompatibilityBravo-_quorumReached-uint256-[`++_quorumReached++`]]
  4079. :_voteSucceeded: pass:normal[xref:#GovernorCompatibilityBravo-_voteSucceeded-uint256-[`++_voteSucceeded++`]]
  4080. :_countVote: pass:normal[xref:#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-[`++_countVote++`]]
  4081. :ProposalDetails: pass:normal[xref:#GovernorCompatibilityBravo-ProposalDetails[`++ProposalDetails++`]]
  4082. :VoteType: pass:normal[xref:#GovernorCompatibilityBravo-VoteType[`++VoteType++`]]
  4083. [.contract]
  4084. [[GovernorCompatibilityBravo]]
  4085. === `++GovernorCompatibilityBravo++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/compatibility/GovernorCompatibilityBravo.sol[{github-icon},role=heading-link]
  4086. [.hljs-theme-light.nopadding]
  4087. ```solidity
  4088. import "@openzeppelin/contracts/governance/compatibility/GovernorCompatibilityBravo.sol";
  4089. ```
  4090. Compatibility layer that implements GovernorBravo compatibility on to of {Governor}.
  4091. This compatibility layer includes a voting system and requires a {IGovernorTimelock} compatible module to be added
  4092. through inheritance. It does not include token bindings, not does it include any variable upgrade patterns.
  4093. NOTE: When using this module, you may need to enable the Solidity optimizer to avoid hitting the contract size limit.
  4094. _Available since v4.3._
  4095. [.contract-index]
  4096. .Functions
  4097. --
  4098. * {xref-GovernorCompatibilityBravo-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  4099. * {xref-GovernorCompatibilityBravo-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  4100. * {xref-GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-}[`++propose(targets, values, signatures, calldatas, description)++`]
  4101. * {xref-GovernorCompatibilityBravo-queue-uint256-}[`++queue(proposalId)++`]
  4102. * {xref-GovernorCompatibilityBravo-execute-uint256-}[`++execute(proposalId)++`]
  4103. * {xref-GovernorCompatibilityBravo-cancel-uint256-}[`++cancel(proposalId)++`]
  4104. * {xref-GovernorCompatibilityBravo-proposals-uint256-}[`++proposals(proposalId)++`]
  4105. * {xref-GovernorCompatibilityBravo-getActions-uint256-}[`++getActions(proposalId)++`]
  4106. * {xref-GovernorCompatibilityBravo-getReceipt-uint256-address-}[`++getReceipt(proposalId, voter)++`]
  4107. * {xref-GovernorCompatibilityBravo-quorumVotes--}[`++quorumVotes()++`]
  4108. * {xref-GovernorCompatibilityBravo-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  4109. * {xref-GovernorCompatibilityBravo-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  4110. * {xref-GovernorCompatibilityBravo-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  4111. * {xref-GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, _)++`]
  4112. [.contract-subindex-inherited]
  4113. .Governor
  4114. * {xref-Governor-constructor-string-}[`++constructor(name_)++`]
  4115. * {xref-Governor-receive--}[`++receive()++`]
  4116. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  4117. * {xref-Governor-name--}[`++name()++`]
  4118. * {xref-Governor-version--}[`++version()++`]
  4119. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  4120. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  4121. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  4122. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  4123. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  4124. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  4125. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  4126. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  4127. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  4128. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  4129. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  4130. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  4131. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  4132. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  4133. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  4134. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  4135. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  4136. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  4137. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  4138. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  4139. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  4140. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  4141. * {xref-Governor-_executor--}[`++_executor()++`]
  4142. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  4143. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  4144. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  4145. [.contract-subindex-inherited]
  4146. .IERC1155Receiver
  4147. [.contract-subindex-inherited]
  4148. .IERC721Receiver
  4149. [.contract-subindex-inherited]
  4150. .IGovernorCompatibilityBravo
  4151. [.contract-subindex-inherited]
  4152. .IGovernorTimelock
  4153. * {xref-IGovernorTimelock-timelock--}[`++timelock()++`]
  4154. * {xref-IGovernorTimelock-proposalEta-uint256-}[`++proposalEta(proposalId)++`]
  4155. * {xref-IGovernorTimelock-queue-address---uint256---bytes---bytes32-}[`++queue(targets, values, calldatas, descriptionHash)++`]
  4156. [.contract-subindex-inherited]
  4157. .IGovernor
  4158. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  4159. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  4160. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  4161. [.contract-subindex-inherited]
  4162. .EIP712
  4163. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  4164. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  4165. [.contract-subindex-inherited]
  4166. .ERC165
  4167. [.contract-subindex-inherited]
  4168. .IERC165
  4169. --
  4170. [.contract-index]
  4171. .Events
  4172. --
  4173. [.contract-subindex-inherited]
  4174. .Governor
  4175. [.contract-subindex-inherited]
  4176. .IERC1155Receiver
  4177. [.contract-subindex-inherited]
  4178. .IERC721Receiver
  4179. [.contract-subindex-inherited]
  4180. .IGovernorCompatibilityBravo
  4181. [.contract-subindex-inherited]
  4182. .IGovernorTimelock
  4183. * {xref-IGovernorTimelock-ProposalQueued-uint256-uint256-}[`++ProposalQueued(proposalId, eta)++`]
  4184. [.contract-subindex-inherited]
  4185. .IGovernor
  4186. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  4187. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  4188. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  4189. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  4190. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  4191. [.contract-subindex-inherited]
  4192. .EIP712
  4193. [.contract-subindex-inherited]
  4194. .ERC165
  4195. [.contract-subindex-inherited]
  4196. .IERC165
  4197. [.contract-subindex-inherited]
  4198. .Context
  4199. --
  4200. [.contract-item]
  4201. [[GovernorCompatibilityBravo-COUNTING_MODE--]]
  4202. ==== `[.contract-item-name]#++COUNTING_MODE++#++() → string++` [.item-kind]#public#
  4203. [.contract-item]
  4204. [[GovernorCompatibilityBravo-propose-address---uint256---bytes---string-]]
  4205. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, bytes[] calldatas, string description) → uint256++` [.item-kind]#public#
  4206. See {IGovernor-propose}.
  4207. [.contract-item]
  4208. [[GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-]]
  4209. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, string[] signatures, bytes[] calldatas, string description) → uint256++` [.item-kind]#public#
  4210. See {IGovernorCompatibilityBravo-propose}.
  4211. [.contract-item]
  4212. [[GovernorCompatibilityBravo-queue-uint256-]]
  4213. ==== `[.contract-item-name]#++queue++#++(uint256 proposalId)++` [.item-kind]#public#
  4214. See {IGovernorCompatibilityBravo-queue}.
  4215. [.contract-item]
  4216. [[GovernorCompatibilityBravo-execute-uint256-]]
  4217. ==== `[.contract-item-name]#++execute++#++(uint256 proposalId)++` [.item-kind]#public#
  4218. See {IGovernorCompatibilityBravo-execute}.
  4219. [.contract-item]
  4220. [[GovernorCompatibilityBravo-cancel-uint256-]]
  4221. ==== `[.contract-item-name]#++cancel++#++(uint256 proposalId)++` [.item-kind]#public#
  4222. [.contract-item]
  4223. [[GovernorCompatibilityBravo-proposals-uint256-]]
  4224. ==== `[.contract-item-name]#++proposals++#++(uint256 proposalId) → uint256 id, address proposer, uint256 eta, uint256 startBlock, uint256 endBlock, uint256 forVotes, uint256 againstVotes, uint256 abstainVotes, bool canceled, bool executed++` [.item-kind]#public#
  4225. See {IGovernorCompatibilityBravo-proposals}.
  4226. [.contract-item]
  4227. [[GovernorCompatibilityBravo-getActions-uint256-]]
  4228. ==== `[.contract-item-name]#++getActions++#++(uint256 proposalId) → address[] targets, uint256[] values, string[] signatures, bytes[] calldatas++` [.item-kind]#public#
  4229. See {IGovernorCompatibilityBravo-getActions}.
  4230. [.contract-item]
  4231. [[GovernorCompatibilityBravo-getReceipt-uint256-address-]]
  4232. ==== `[.contract-item-name]#++getReceipt++#++(uint256 proposalId, address voter) → struct IGovernorCompatibilityBravo.Receipt++` [.item-kind]#public#
  4233. See {IGovernorCompatibilityBravo-getReceipt}.
  4234. [.contract-item]
  4235. [[GovernorCompatibilityBravo-quorumVotes--]]
  4236. ==== `[.contract-item-name]#++quorumVotes++#++() → uint256++` [.item-kind]#public#
  4237. See {IGovernorCompatibilityBravo-quorumVotes}.
  4238. [.contract-item]
  4239. [[GovernorCompatibilityBravo-hasVoted-uint256-address-]]
  4240. ==== `[.contract-item-name]#++hasVoted++#++(uint256 proposalId, address account) → bool++` [.item-kind]#public#
  4241. See {IGovernor-hasVoted}.
  4242. [.contract-item]
  4243. [[GovernorCompatibilityBravo-_quorumReached-uint256-]]
  4244. ==== `[.contract-item-name]#++_quorumReached++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  4245. See {Governor-_quorumReached}. In this module, only forVotes count toward the quorum.
  4246. [.contract-item]
  4247. [[GovernorCompatibilityBravo-_voteSucceeded-uint256-]]
  4248. ==== `[.contract-item-name]#++_voteSucceeded++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  4249. See {Governor-_voteSucceeded}. In this module, the forVotes must be scritly over the againstVotes.
  4250. [.contract-item]
  4251. [[GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-]]
  4252. ==== `[.contract-item-name]#++_countVote++#++(uint256 proposalId, address account, uint8 support, uint256 weight, bytes)++` [.item-kind]#internal#
  4253. See {Governor-_countVote}. In this module, the support follows Governor Bravo.
  4254. === Deprecated
  4255. :GovernorProposalThreshold: pass:normal[xref:#GovernorProposalThreshold[`++GovernorProposalThreshold++`]]
  4256. :propose: pass:normal[xref:#GovernorProposalThreshold-propose-address---uint256---bytes---string-[`++propose++`]]
  4257. [.contract]
  4258. [[GovernorProposalThreshold]]
  4259. === `++GovernorProposalThreshold++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/extensions/GovernorProposalThreshold.sol[{github-icon},role=heading-link]
  4260. [.hljs-theme-light.nopadding]
  4261. ```solidity
  4262. import "@openzeppelin/contracts/governance/extensions/GovernorProposalThreshold.sol";
  4263. ```
  4264. Extension of {Governor} for proposal restriction to token holders with a minimum balance.
  4265. _Available since v4.3._
  4266. _Deprecated since v4.4._
  4267. [.contract-index]
  4268. .Functions
  4269. --
  4270. * {xref-GovernorProposalThreshold-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  4271. [.contract-subindex-inherited]
  4272. .Governor
  4273. * {xref-Governor-constructor-string-}[`++constructor(name_)++`]
  4274. * {xref-Governor-receive--}[`++receive()++`]
  4275. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  4276. * {xref-Governor-name--}[`++name()++`]
  4277. * {xref-Governor-version--}[`++version()++`]
  4278. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  4279. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  4280. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  4281. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  4282. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  4283. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  4284. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  4285. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  4286. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  4287. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  4288. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  4289. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  4290. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  4291. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  4292. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  4293. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  4294. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  4295. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  4296. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  4297. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  4298. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  4299. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  4300. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  4301. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  4302. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  4303. * {xref-Governor-_executor--}[`++_executor()++`]
  4304. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  4305. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  4306. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  4307. [.contract-subindex-inherited]
  4308. .IERC1155Receiver
  4309. [.contract-subindex-inherited]
  4310. .IERC721Receiver
  4311. [.contract-subindex-inherited]
  4312. .IGovernor
  4313. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  4314. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  4315. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  4316. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  4317. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  4318. [.contract-subindex-inherited]
  4319. .EIP712
  4320. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  4321. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  4322. [.contract-subindex-inherited]
  4323. .ERC165
  4324. [.contract-subindex-inherited]
  4325. .IERC165
  4326. --
  4327. [.contract-index]
  4328. .Events
  4329. --
  4330. [.contract-subindex-inherited]
  4331. .Governor
  4332. [.contract-subindex-inherited]
  4333. .IERC1155Receiver
  4334. [.contract-subindex-inherited]
  4335. .IERC721Receiver
  4336. [.contract-subindex-inherited]
  4337. .IGovernor
  4338. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  4339. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  4340. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  4341. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  4342. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  4343. [.contract-subindex-inherited]
  4344. .EIP712
  4345. [.contract-subindex-inherited]
  4346. .ERC165
  4347. [.contract-subindex-inherited]
  4348. .IERC165
  4349. [.contract-subindex-inherited]
  4350. .Context
  4351. --
  4352. [.contract-item]
  4353. [[GovernorProposalThreshold-propose-address---uint256---bytes---string-]]
  4354. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, bytes[] calldatas, string description) → uint256++` [.item-kind]#public#
  4355. == Utils
  4356. :Votes: pass:normal[xref:#Votes[`++Votes++`]]
  4357. :getVotes: pass:normal[xref:#Votes-getVotes-address-[`++getVotes++`]]
  4358. :getPastVotes: pass:normal[xref:#Votes-getPastVotes-address-uint256-[`++getPastVotes++`]]
  4359. :getPastTotalSupply: pass:normal[xref:#Votes-getPastTotalSupply-uint256-[`++getPastTotalSupply++`]]
  4360. :_getTotalSupply: pass:normal[xref:#Votes-_getTotalSupply--[`++_getTotalSupply++`]]
  4361. :delegates: pass:normal[xref:#Votes-delegates-address-[`++delegates++`]]
  4362. :delegate: pass:normal[xref:#Votes-delegate-address-[`++delegate++`]]
  4363. :delegateBySig: pass:normal[xref:#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`++delegateBySig++`]]
  4364. :_delegate: pass:normal[xref:#Votes-_delegate-address-address-[`++_delegate++`]]
  4365. :_transferVotingUnits: pass:normal[xref:#Votes-_transferVotingUnits-address-address-uint256-[`++_transferVotingUnits++`]]
  4366. :_useNonce: pass:normal[xref:#Votes-_useNonce-address-[`++_useNonce++`]]
  4367. :nonces: pass:normal[xref:#Votes-nonces-address-[`++nonces++`]]
  4368. :DOMAIN_SEPARATOR: pass:normal[xref:#Votes-DOMAIN_SEPARATOR--[`++DOMAIN_SEPARATOR++`]]
  4369. :_getVotingUnits: pass:normal[xref:#Votes-_getVotingUnits-address-[`++_getVotingUnits++`]]
  4370. [.contract]
  4371. [[Votes]]
  4372. === `++Votes++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/utils/Votes.sol[{github-icon},role=heading-link]
  4373. [.hljs-theme-light.nopadding]
  4374. ```solidity
  4375. import "@openzeppelin/contracts/governance/utils/Votes.sol";
  4376. ```
  4377. This is a base abstract contract that tracks voting units, which are a measure of voting power that can be
  4378. transferred, and provides a system of vote delegation, where an account can delegate its voting units to a sort of
  4379. "representative" that will pool delegated voting units from different accounts and can then use it to vote in
  4380. decisions. In fact, voting units _must_ be delegated in order to count as actual votes, and an account has to
  4381. delegate those votes to itself if it wishes to participate in decisions and does not have a trusted representative.
  4382. This contract is often combined with a token contract such that voting units correspond to token units. For an
  4383. example, see {ERC721Votes}.
  4384. The full history of delegate votes is tracked on-chain so that governance protocols can consider votes as distributed
  4385. at a particular block number to protect against flash loans and double voting. The opt-in delegate system makes the
  4386. cost of this history tracking optional.
  4387. When using this module the derived contract must implement {_getVotingUnits} (for example, make it return
  4388. {ERC721-balanceOf}), and can use {_transferVotingUnits} to track a change in the distribution of those units (in the
  4389. previous example, it would be included in {ERC721-_beforeTokenTransfer}).
  4390. _Available since v4.5._
  4391. [.contract-index]
  4392. .Functions
  4393. --
  4394. * {xref-Votes-getVotes-address-}[`++getVotes(account)++`]
  4395. * {xref-Votes-getPastVotes-address-uint256-}[`++getPastVotes(account, blockNumber)++`]
  4396. * {xref-Votes-getPastTotalSupply-uint256-}[`++getPastTotalSupply(blockNumber)++`]
  4397. * {xref-Votes-_getTotalSupply--}[`++_getTotalSupply()++`]
  4398. * {xref-Votes-delegates-address-}[`++delegates(account)++`]
  4399. * {xref-Votes-delegate-address-}[`++delegate(delegatee)++`]
  4400. * {xref-Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-}[`++delegateBySig(delegatee, nonce, expiry, v, r, s)++`]
  4401. * {xref-Votes-_delegate-address-address-}[`++_delegate(account, delegatee)++`]
  4402. * {xref-Votes-_transferVotingUnits-address-address-uint256-}[`++_transferVotingUnits(from, to, amount)++`]
  4403. * {xref-Votes-_useNonce-address-}[`++_useNonce(owner)++`]
  4404. * {xref-Votes-nonces-address-}[`++nonces(owner)++`]
  4405. * {xref-Votes-DOMAIN_SEPARATOR--}[`++DOMAIN_SEPARATOR()++`]
  4406. * {xref-Votes-_getVotingUnits-address-}[`++_getVotingUnits(_)++`]
  4407. [.contract-subindex-inherited]
  4408. .EIP712
  4409. * {xref-EIP712-constructor-string-string-}[`++constructor(name, version)++`]
  4410. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  4411. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  4412. [.contract-subindex-inherited]
  4413. .IVotes
  4414. --
  4415. [.contract-index]
  4416. .Events
  4417. --
  4418. [.contract-subindex-inherited]
  4419. .EIP712
  4420. [.contract-subindex-inherited]
  4421. .Context
  4422. [.contract-subindex-inherited]
  4423. .IVotes
  4424. * {xref-IVotes-DelegateChanged-address-address-address-}[`++DelegateChanged(delegator, fromDelegate, toDelegate)++`]
  4425. * {xref-IVotes-DelegateVotesChanged-address-uint256-uint256-}[`++DelegateVotesChanged(delegate, previousBalance, newBalance)++`]
  4426. --
  4427. [.contract-item]
  4428. [[Votes-getVotes-address-]]
  4429. ==== `[.contract-item-name]#++getVotes++#++(address account) → uint256++` [.item-kind]#public#
  4430. Returns the current amount of votes that `account` has.
  4431. [.contract-item]
  4432. [[Votes-getPastVotes-address-uint256-]]
  4433. ==== `[.contract-item-name]#++getPastVotes++#++(address account, uint256 blockNumber) → uint256++` [.item-kind]#public#
  4434. Returns the amount of votes that `account` had at the end of a past block (`blockNumber`).
  4435. Requirements:
  4436. - `blockNumber` must have been already mined
  4437. [.contract-item]
  4438. [[Votes-getPastTotalSupply-uint256-]]
  4439. ==== `[.contract-item-name]#++getPastTotalSupply++#++(uint256 blockNumber) → uint256++` [.item-kind]#public#
  4440. Returns the total supply of votes available at the end of a past block (`blockNumber`).
  4441. NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes.
  4442. Votes that have not been delegated are still part of total supply, even though they would not participate in a
  4443. vote.
  4444. Requirements:
  4445. - `blockNumber` must have been already mined
  4446. [.contract-item]
  4447. [[Votes-_getTotalSupply--]]
  4448. ==== `[.contract-item-name]#++_getTotalSupply++#++() → uint256++` [.item-kind]#internal#
  4449. Returns the current total supply of votes.
  4450. [.contract-item]
  4451. [[Votes-delegates-address-]]
  4452. ==== `[.contract-item-name]#++delegates++#++(address account) → address++` [.item-kind]#public#
  4453. Returns the delegate that `account` has chosen.
  4454. [.contract-item]
  4455. [[Votes-delegate-address-]]
  4456. ==== `[.contract-item-name]#++delegate++#++(address delegatee)++` [.item-kind]#public#
  4457. Delegates votes from the sender to `delegatee`.
  4458. [.contract-item]
  4459. [[Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-]]
  4460. ==== `[.contract-item-name]#++delegateBySig++#++(address delegatee, uint256 nonce, uint256 expiry, uint8 v, bytes32 r, bytes32 s)++` [.item-kind]#public#
  4461. Delegates votes from signer to `delegatee`.
  4462. [.contract-item]
  4463. [[Votes-_delegate-address-address-]]
  4464. ==== `[.contract-item-name]#++_delegate++#++(address account, address delegatee)++` [.item-kind]#internal#
  4465. Delegate all of `account`'s voting units to `delegatee`.
  4466. Emits events {DelegateChanged} and {DelegateVotesChanged}.
  4467. [.contract-item]
  4468. [[Votes-_transferVotingUnits-address-address-uint256-]]
  4469. ==== `[.contract-item-name]#++_transferVotingUnits++#++(address from, address to, uint256 amount)++` [.item-kind]#internal#
  4470. Transfers, mints, or burns voting units. To register a mint, `from` should be zero. To register a burn, `to`
  4471. should be zero. Total supply of voting units will be adjusted with mints and burns.
  4472. [.contract-item]
  4473. [[Votes-_useNonce-address-]]
  4474. ==== `[.contract-item-name]#++_useNonce++#++(address owner) → uint256 current++` [.item-kind]#internal#
  4475. Consumes a nonce.
  4476. Returns the current value and increments nonce.
  4477. [.contract-item]
  4478. [[Votes-nonces-address-]]
  4479. ==== `[.contract-item-name]#++nonces++#++(address owner) → uint256++` [.item-kind]#public#
  4480. Returns an address nonce.
  4481. [.contract-item]
  4482. [[Votes-DOMAIN_SEPARATOR--]]
  4483. ==== `[.contract-item-name]#++DOMAIN_SEPARATOR++#++() → bytes32++` [.item-kind]#external#
  4484. Returns the contract's {EIP712} domain separator.
  4485. [.contract-item]
  4486. [[Votes-_getVotingUnits-address-]]
  4487. ==== `[.contract-item-name]#++_getVotingUnits++#++(address) → uint256++` [.item-kind]#internal#
  4488. Must return the voting units held by an account.
  4489. == Timelock
  4490. In a governance system, the {TimelockController} contract is in charge of introducing a delay between a proposal and its execution. It can be used with or without a {Governor}.
  4491. :TimelockController: pass:normal[xref:#TimelockController[`++TimelockController++`]]
  4492. :onlyRoleOrOpenRole: pass:normal[xref:#TimelockController-onlyRoleOrOpenRole-bytes32-[`++onlyRoleOrOpenRole++`]]
  4493. :TIMELOCK_ADMIN_ROLE: pass:normal[xref:#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32[`++TIMELOCK_ADMIN_ROLE++`]]
  4494. :PROPOSER_ROLE: pass:normal[xref:#TimelockController-PROPOSER_ROLE-bytes32[`++PROPOSER_ROLE++`]]
  4495. :EXECUTOR_ROLE: pass:normal[xref:#TimelockController-EXECUTOR_ROLE-bytes32[`++EXECUTOR_ROLE++`]]
  4496. :CANCELLER_ROLE: pass:normal[xref:#TimelockController-CANCELLER_ROLE-bytes32[`++CANCELLER_ROLE++`]]
  4497. :_DONE_TIMESTAMP: pass:normal[xref:#TimelockController-_DONE_TIMESTAMP-uint256[`++_DONE_TIMESTAMP++`]]
  4498. :constructor: pass:normal[xref:#TimelockController-constructor-uint256-address---address---[`++constructor++`]]
  4499. :receive: pass:normal[xref:#TimelockController-receive--[`++receive++`]]
  4500. :supportsInterface: pass:normal[xref:#TimelockController-supportsInterface-bytes4-[`++supportsInterface++`]]
  4501. :isOperation: pass:normal[xref:#TimelockController-isOperation-bytes32-[`++isOperation++`]]
  4502. :isOperationPending: pass:normal[xref:#TimelockController-isOperationPending-bytes32-[`++isOperationPending++`]]
  4503. :isOperationReady: pass:normal[xref:#TimelockController-isOperationReady-bytes32-[`++isOperationReady++`]]
  4504. :isOperationDone: pass:normal[xref:#TimelockController-isOperationDone-bytes32-[`++isOperationDone++`]]
  4505. :getTimestamp: pass:normal[xref:#TimelockController-getTimestamp-bytes32-[`++getTimestamp++`]]
  4506. :getMinDelay: pass:normal[xref:#TimelockController-getMinDelay--[`++getMinDelay++`]]
  4507. :hashOperation: pass:normal[xref:#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-[`++hashOperation++`]]
  4508. :hashOperationBatch: pass:normal[xref:#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-[`++hashOperationBatch++`]]
  4509. :schedule: pass:normal[xref:#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-[`++schedule++`]]
  4510. :scheduleBatch: pass:normal[xref:#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-[`++scheduleBatch++`]]
  4511. :cancel: pass:normal[xref:#TimelockController-cancel-bytes32-[`++cancel++`]]
  4512. :execute: pass:normal[xref:#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-[`++execute++`]]
  4513. :executeBatch: pass:normal[xref:#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-[`++executeBatch++`]]
  4514. :_execute: pass:normal[xref:#TimelockController-_execute-address-uint256-bytes-[`++_execute++`]]
  4515. :updateDelay: pass:normal[xref:#TimelockController-updateDelay-uint256-[`++updateDelay++`]]
  4516. :onERC721Received: pass:normal[xref:#TimelockController-onERC721Received-address-address-uint256-bytes-[`++onERC721Received++`]]
  4517. :onERC1155Received: pass:normal[xref:#TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-[`++onERC1155Received++`]]
  4518. :onERC1155BatchReceived: pass:normal[xref:#TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`++onERC1155BatchReceived++`]]
  4519. :CallScheduled: pass:normal[xref:#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-[`++CallScheduled++`]]
  4520. :CallExecuted: pass:normal[xref:#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-[`++CallExecuted++`]]
  4521. :Cancelled: pass:normal[xref:#TimelockController-Cancelled-bytes32-[`++Cancelled++`]]
  4522. :MinDelayChange: pass:normal[xref:#TimelockController-MinDelayChange-uint256-uint256-[`++MinDelayChange++`]]
  4523. [.contract]
  4524. [[TimelockController]]
  4525. === `++TimelockController++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.7.1/contracts/governance/TimelockController.sol[{github-icon},role=heading-link]
  4526. [.hljs-theme-light.nopadding]
  4527. ```solidity
  4528. import "@openzeppelin/contracts/governance/TimelockController.sol";
  4529. ```
  4530. Contract module which acts as a timelocked controller. When set as the
  4531. owner of an `Ownable` smart contract, it enforces a timelock on all
  4532. `onlyOwner` maintenance operations. This gives time for users of the
  4533. controlled contract to exit before a potentially dangerous maintenance
  4534. operation is applied.
  4535. By default, this contract is self administered, meaning administration tasks
  4536. have to go through the timelock process. The proposer (resp executor) role
  4537. is in charge of proposing (resp executing) operations. A common use case is
  4538. to position this {TimelockController} as the owner of a smart contract, with
  4539. a multisig or a DAO as the sole proposer.
  4540. _Available since v3.3._
  4541. [.contract-index]
  4542. .Modifiers
  4543. --
  4544. * {xref-TimelockController-onlyRoleOrOpenRole-bytes32-}[`++onlyRoleOrOpenRole(role)++`]
  4545. --
  4546. [.contract-index]
  4547. .Functions
  4548. --
  4549. * {xref-TimelockController-constructor-uint256-address---address---}[`++constructor(minDelay, proposers, executors)++`]
  4550. * {xref-TimelockController-receive--}[`++receive()++`]
  4551. * {xref-TimelockController-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  4552. * {xref-TimelockController-isOperation-bytes32-}[`++isOperation(id)++`]
  4553. * {xref-TimelockController-isOperationPending-bytes32-}[`++isOperationPending(id)++`]
  4554. * {xref-TimelockController-isOperationReady-bytes32-}[`++isOperationReady(id)++`]
  4555. * {xref-TimelockController-isOperationDone-bytes32-}[`++isOperationDone(id)++`]
  4556. * {xref-TimelockController-getTimestamp-bytes32-}[`++getTimestamp(id)++`]
  4557. * {xref-TimelockController-getMinDelay--}[`++getMinDelay()++`]
  4558. * {xref-TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-}[`++hashOperation(target, value, data, predecessor, salt)++`]
  4559. * {xref-TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-}[`++hashOperationBatch(targets, values, payloads, predecessor, salt)++`]
  4560. * {xref-TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-}[`++schedule(target, value, data, predecessor, salt, delay)++`]
  4561. * {xref-TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-}[`++scheduleBatch(targets, values, payloads, predecessor, salt, delay)++`]
  4562. * {xref-TimelockController-cancel-bytes32-}[`++cancel(id)++`]
  4563. * {xref-TimelockController-execute-address-uint256-bytes-bytes32-bytes32-}[`++execute(target, value, payload, predecessor, salt)++`]
  4564. * {xref-TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-}[`++executeBatch(targets, values, payloads, predecessor, salt)++`]
  4565. * {xref-TimelockController-_execute-address-uint256-bytes-}[`++_execute(target, value, data)++`]
  4566. * {xref-TimelockController-updateDelay-uint256-}[`++updateDelay(newDelay)++`]
  4567. * {xref-TimelockController-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  4568. * {xref-TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  4569. * {xref-TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  4570. [.contract-subindex-inherited]
  4571. .IERC1155Receiver
  4572. [.contract-subindex-inherited]
  4573. .IERC721Receiver
  4574. [.contract-subindex-inherited]
  4575. .AccessControl
  4576. * {xref-AccessControl-hasRole-bytes32-address-}[`++hasRole(role, account)++`]
  4577. * {xref-AccessControl-_checkRole-bytes32-}[`++_checkRole(role)++`]
  4578. * {xref-AccessControl-_checkRole-bytes32-address-}[`++_checkRole(role, account)++`]
  4579. * {xref-AccessControl-getRoleAdmin-bytes32-}[`++getRoleAdmin(role)++`]
  4580. * {xref-AccessControl-grantRole-bytes32-address-}[`++grantRole(role, account)++`]
  4581. * {xref-AccessControl-revokeRole-bytes32-address-}[`++revokeRole(role, account)++`]
  4582. * {xref-AccessControl-renounceRole-bytes32-address-}[`++renounceRole(role, account)++`]
  4583. * {xref-AccessControl-_setupRole-bytes32-address-}[`++_setupRole(role, account)++`]
  4584. * {xref-AccessControl-_setRoleAdmin-bytes32-bytes32-}[`++_setRoleAdmin(role, adminRole)++`]
  4585. * {xref-AccessControl-_grantRole-bytes32-address-}[`++_grantRole(role, account)++`]
  4586. * {xref-AccessControl-_revokeRole-bytes32-address-}[`++_revokeRole(role, account)++`]
  4587. [.contract-subindex-inherited]
  4588. .ERC165
  4589. [.contract-subindex-inherited]
  4590. .IERC165
  4591. [.contract-subindex-inherited]
  4592. .IAccessControl
  4593. --
  4594. [.contract-index]
  4595. .Events
  4596. --
  4597. * {xref-TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-}[`++CallScheduled(id, index, target, value, data, predecessor, delay)++`]
  4598. * {xref-TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-}[`++CallExecuted(id, index, target, value, data)++`]
  4599. * {xref-TimelockController-Cancelled-bytes32-}[`++Cancelled(id)++`]
  4600. * {xref-TimelockController-MinDelayChange-uint256-uint256-}[`++MinDelayChange(oldDuration, newDuration)++`]
  4601. [.contract-subindex-inherited]
  4602. .IERC1155Receiver
  4603. [.contract-subindex-inherited]
  4604. .IERC721Receiver
  4605. [.contract-subindex-inherited]
  4606. .AccessControl
  4607. [.contract-subindex-inherited]
  4608. .ERC165
  4609. [.contract-subindex-inherited]
  4610. .IERC165
  4611. [.contract-subindex-inherited]
  4612. .IAccessControl
  4613. * {xref-IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-}[`++RoleAdminChanged(role, previousAdminRole, newAdminRole)++`]
  4614. * {xref-IAccessControl-RoleGranted-bytes32-address-address-}[`++RoleGranted(role, account, sender)++`]
  4615. * {xref-IAccessControl-RoleRevoked-bytes32-address-address-}[`++RoleRevoked(role, account, sender)++`]
  4616. [.contract-subindex-inherited]
  4617. .Context
  4618. --
  4619. [.contract-item]
  4620. [[TimelockController-onlyRoleOrOpenRole-bytes32-]]
  4621. ==== `[.contract-item-name]#++onlyRoleOrOpenRole++#++(bytes32 role)++` [.item-kind]#modifier#
  4622. Modifier to make a function callable only by a certain role. In
  4623. addition to checking the sender's role, `address(0)` 's role is also
  4624. considered. Granting a role to `address(0)` is equivalent to enabling
  4625. this role for everyone.
  4626. [.contract-item]
  4627. [[TimelockController-constructor-uint256-address---address---]]
  4628. ==== `[.contract-item-name]#++constructor++#++(uint256 minDelay, address[] proposers, address[] executors)++` [.item-kind]#public#
  4629. Initializes the contract with a given `minDelay`, and a list of
  4630. initial proposers and executors. The proposers receive both the
  4631. proposer and the canceller role (for backward compatibility). The
  4632. executors receive the executor role.
  4633. NOTE: At construction, both the deployer and the timelock itself are
  4634. administrators. This helps further configuration of the timelock by the
  4635. deployer. After configuration is done, it is recommended that the
  4636. deployer renounces its admin position and relies on timelocked
  4637. operations to perform future maintenance.
  4638. [.contract-item]
  4639. [[TimelockController-receive--]]
  4640. ==== `[.contract-item-name]#++receive++#++()++` [.item-kind]#external#
  4641. Contract might receive/hold ETH as part of the maintenance process.
  4642. [.contract-item]
  4643. [[TimelockController-supportsInterface-bytes4-]]
  4644. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  4645. See {IERC165-supportsInterface}.
  4646. [.contract-item]
  4647. [[TimelockController-isOperation-bytes32-]]
  4648. ==== `[.contract-item-name]#++isOperation++#++(bytes32 id) → bool registered++` [.item-kind]#public#
  4649. Returns whether an id correspond to a registered operation. This
  4650. includes both Pending, Ready and Done operations.
  4651. [.contract-item]
  4652. [[TimelockController-isOperationPending-bytes32-]]
  4653. ==== `[.contract-item-name]#++isOperationPending++#++(bytes32 id) → bool pending++` [.item-kind]#public#
  4654. Returns whether an operation is pending or not.
  4655. [.contract-item]
  4656. [[TimelockController-isOperationReady-bytes32-]]
  4657. ==== `[.contract-item-name]#++isOperationReady++#++(bytes32 id) → bool ready++` [.item-kind]#public#
  4658. Returns whether an operation is ready or not.
  4659. [.contract-item]
  4660. [[TimelockController-isOperationDone-bytes32-]]
  4661. ==== `[.contract-item-name]#++isOperationDone++#++(bytes32 id) → bool done++` [.item-kind]#public#
  4662. Returns whether an operation is done or not.
  4663. [.contract-item]
  4664. [[TimelockController-getTimestamp-bytes32-]]
  4665. ==== `[.contract-item-name]#++getTimestamp++#++(bytes32 id) → uint256 timestamp++` [.item-kind]#public#
  4666. Returns the timestamp at with an operation becomes ready (0 for
  4667. unset operations, 1 for done operations).
  4668. [.contract-item]
  4669. [[TimelockController-getMinDelay--]]
  4670. ==== `[.contract-item-name]#++getMinDelay++#++() → uint256 duration++` [.item-kind]#public#
  4671. Returns the minimum delay for an operation to become valid.
  4672. This value can be changed by executing an operation that calls `updateDelay`.
  4673. [.contract-item]
  4674. [[TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-]]
  4675. ==== `[.contract-item-name]#++hashOperation++#++(address target, uint256 value, bytes data, bytes32 predecessor, bytes32 salt) → bytes32 hash++` [.item-kind]#public#
  4676. Returns the identifier of an operation containing a single
  4677. transaction.
  4678. [.contract-item]
  4679. [[TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-]]
  4680. ==== `[.contract-item-name]#++hashOperationBatch++#++(address[] targets, uint256[] values, bytes[] payloads, bytes32 predecessor, bytes32 salt) → bytes32 hash++` [.item-kind]#public#
  4681. Returns the identifier of an operation containing a batch of
  4682. transactions.
  4683. [.contract-item]
  4684. [[TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-]]
  4685. ==== `[.contract-item-name]#++schedule++#++(address target, uint256 value, bytes data, bytes32 predecessor, bytes32 salt, uint256 delay)++` [.item-kind]#public#
  4686. Schedule an operation containing a single transaction.
  4687. Emits a {CallScheduled} event.
  4688. Requirements:
  4689. - the caller must have the 'proposer' role.
  4690. [.contract-item]
  4691. [[TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-]]
  4692. ==== `[.contract-item-name]#++scheduleBatch++#++(address[] targets, uint256[] values, bytes[] payloads, bytes32 predecessor, bytes32 salt, uint256 delay)++` [.item-kind]#public#
  4693. Schedule an operation containing a batch of transactions.
  4694. Emits one {CallScheduled} event per transaction in the batch.
  4695. Requirements:
  4696. - the caller must have the 'proposer' role.
  4697. [.contract-item]
  4698. [[TimelockController-cancel-bytes32-]]
  4699. ==== `[.contract-item-name]#++cancel++#++(bytes32 id)++` [.item-kind]#public#
  4700. Cancel an operation.
  4701. Requirements:
  4702. - the caller must have the 'canceller' role.
  4703. [.contract-item]
  4704. [[TimelockController-execute-address-uint256-bytes-bytes32-bytes32-]]
  4705. ==== `[.contract-item-name]#++execute++#++(address target, uint256 value, bytes payload, bytes32 predecessor, bytes32 salt)++` [.item-kind]#public#
  4706. Execute an (ready) operation containing a single transaction.
  4707. Emits a {CallExecuted} event.
  4708. Requirements:
  4709. - the caller must have the 'executor' role.
  4710. [.contract-item]
  4711. [[TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-]]
  4712. ==== `[.contract-item-name]#++executeBatch++#++(address[] targets, uint256[] values, bytes[] payloads, bytes32 predecessor, bytes32 salt)++` [.item-kind]#public#
  4713. Execute an (ready) operation containing a batch of transactions.
  4714. Emits one {CallExecuted} event per transaction in the batch.
  4715. Requirements:
  4716. - the caller must have the 'executor' role.
  4717. [.contract-item]
  4718. [[TimelockController-_execute-address-uint256-bytes-]]
  4719. ==== `[.contract-item-name]#++_execute++#++(address target, uint256 value, bytes data)++` [.item-kind]#internal#
  4720. Execute an operation's call.
  4721. [.contract-item]
  4722. [[TimelockController-updateDelay-uint256-]]
  4723. ==== `[.contract-item-name]#++updateDelay++#++(uint256 newDelay)++` [.item-kind]#external#
  4724. Changes the minimum timelock duration for future operations.
  4725. Emits a {MinDelayChange} event.
  4726. Requirements:
  4727. - the caller must be the timelock itself. This can only be achieved by scheduling and later executing
  4728. an operation where the timelock is the target and the data is the ABI-encoded call to this function.
  4729. [.contract-item]
  4730. [[TimelockController-onERC721Received-address-address-uint256-bytes-]]
  4731. ==== `[.contract-item-name]#++onERC721Received++#++(address, address, uint256, bytes) → bytes4++` [.item-kind]#public#
  4732. See {IERC721Receiver-onERC721Received}.
  4733. [.contract-item]
  4734. [[TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-]]
  4735. ==== `[.contract-item-name]#++onERC1155Received++#++(address, address, uint256, uint256, bytes) → bytes4++` [.item-kind]#public#
  4736. See {IERC1155Receiver-onERC1155Received}.
  4737. [.contract-item]
  4738. [[TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-]]
  4739. ==== `[.contract-item-name]#++onERC1155BatchReceived++#++(address, address, uint256[], uint256[], bytes) → bytes4++` [.item-kind]#public#
  4740. See {IERC1155Receiver-onERC1155BatchReceived}.
  4741. [.contract-item]
  4742. [[TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-]]
  4743. ==== `[.contract-item-name]#++CallScheduled++#++(bytes32 id, uint256 index, address target, uint256 value, bytes data, bytes32 predecessor, uint256 delay)++` [.item-kind]#event#
  4744. Emitted when a call is scheduled as part of operation `id`.
  4745. [.contract-item]
  4746. [[TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-]]
  4747. ==== `[.contract-item-name]#++CallExecuted++#++(bytes32 id, uint256 index, address target, uint256 value, bytes data)++` [.item-kind]#event#
  4748. Emitted when a call is performed as part of operation `id`.
  4749. [.contract-item]
  4750. [[TimelockController-Cancelled-bytes32-]]
  4751. ==== `[.contract-item-name]#++Cancelled++#++(bytes32 id)++` [.item-kind]#event#
  4752. Emitted when operation `id` is cancelled.
  4753. [.contract-item]
  4754. [[TimelockController-MinDelayChange-uint256-uint256-]]
  4755. ==== `[.contract-item-name]#++MinDelayChange++#++(uint256 oldDuration, uint256 newDuration)++` [.item-kind]#event#
  4756. Emitted when the minimum delay for future operations is modified.
  4757. [[timelock-terminology]]
  4758. ==== Terminology
  4759. * *Operation:* A transaction (or a set of transactions) that is the subject of the timelock. It has to be scheduled by a proposer and executed by an executor. The timelock enforces a minimum delay between the proposition and the execution (see xref:access-control.adoc#operation_lifecycle[operation lifecycle]). If the operation contains multiple transactions (batch mode), they are executed atomically. Operations are identified by the hash of their content.
  4760. * *Operation status:*
  4761. ** *Unset:* An operation that is not part of the timelock mechanism.
  4762. ** *Pending:* An operation that has been scheduled, before the timer expires.
  4763. ** *Ready:* An operation that has been scheduled, after the timer expires.
  4764. ** *Done:* An operation that has been executed.
  4765. * *Predecessor*: An (optional) dependency between operations. An operation can depend on another operation (its predecessor), forcing the execution order of these two operations.
  4766. * *Role*:
  4767. ** *Admin:* An address (smart contract or EOA) that is in charge of granting the roles of Proposer and Executor.
  4768. ** *Proposer:* An address (smart contract or EOA) that is in charge of scheduling (and cancelling) operations.
  4769. ** *Executor:* An address (smart contract or EOA) that is in charge of executing operations once the timelock has expired. This role can be given to the zero address to allow anyone to execute operations.
  4770. [[timelock-operation]]
  4771. ==== Operation structure
  4772. Operation executed by the xref:api:governance.adoc#TimelockController[`TimelockController`] can contain one or multiple subsequent calls. Depending on whether you need to multiple calls to be executed atomically, you can either use simple or batched operations.
  4773. Both operations contain:
  4774. * *Target*, the address of the smart contract that the timelock should operate on.
  4775. * *Value*, in wei, that should be sent with the transaction. Most of the time this will be 0. Ether can be deposited before-end or passed along when executing the transaction.
  4776. * *Data*, containing the encoded function selector and parameters of the call. This can be produced using a number of tools. For example, a maintenance operation granting role `ROLE` to `ACCOUNT` can be encode using web3js as follows:
  4777. ```javascript
  4778. const data = timelock.contract.methods.grantRole(ROLE, ACCOUNT).encodeABI()
  4779. ```
  4780. * *Predecessor*, that specifies a dependency between operations. This dependency is optional. Use `bytes32(0)` if the operation does not have any dependency.
  4781. * *Salt*, used to disambiguate two otherwise identical operations. This can be any random value.
  4782. In the case of batched operations, `target`, `value` and `data` are specified as arrays, which must be of the same length.
  4783. [[timelock-operation-lifecycle]]
  4784. ==== Operation lifecycle
  4785. Timelocked operations are identified by a unique id (their hash) and follow a specific lifecycle:
  4786. `Unset` -> `Pending` -> `Pending` + `Ready` -> `Done`
  4787. * By calling xref:api:governance.adoc#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-[`schedule`] (or xref:api:governance.adoc#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-[`scheduleBatch`]), a proposer moves the operation from the `Unset` to the `Pending` state. This starts a timer that must be longer than the minimum delay. The timer expires at a timestamp accessible through the xref:api:governance.adoc#TimelockController-getTimestamp-bytes32-[`getTimestamp`] method.
  4788. * Once the timer expires, the operation automatically gets the `Ready` state. At this point, it can be executed.
  4789. * By calling xref:api:governance.adoc#TimelockController-TimelockController-execute-address-uint256-bytes-bytes32-bytes32-[`execute`] (or xref:api:governance.adoc#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-[`executeBatch`]), an executor triggers the operation's underlying transactions and moves it to the `Done` state. If the operation has a predecessor, it has to be in the `Done` state for this transition to succeed.
  4790. * xref:api:governance.adoc#TimelockController-TimelockController-cancel-bytes32-[`cancel`] allows proposers to cancel any `Pending` operation. This resets the operation to the `Unset` state. It is thus possible for a proposer to re-schedule an operation that has been cancelled. In this case, the timer restarts when the operation is re-scheduled.
  4791. Operations status can be queried using the functions:
  4792. * xref:api:governance.adoc#TimelockController-isOperationPending-bytes32-[`isOperationPending(bytes32)`]
  4793. * xref:api:governance.adoc#TimelockController-isOperationReady-bytes32-[`isOperationReady(bytes32)`]
  4794. * xref:api:governance.adoc#TimelockController-isOperationDone-bytes32-[`isOperationDone(bytes32)`]
  4795. [[timelock-roles]]
  4796. ==== Roles
  4797. [[timelock-admin]]
  4798. ===== Admin
  4799. The admins are in charge of managing proposers and executors. For the timelock to be self-governed, this role should only be given to the timelock itself. Upon deployment, both the timelock and the deployer have this role. After further configuration and testing, the deployer can renounce this role such that all further maintenance operations have to go through the timelock process.
  4800. This role is identified by the *TIMELOCK_ADMIN_ROLE* value: `0x5f58e3a2316349923ce3780f8d587db2d72378aed66a8261c916544fa6846ca5`
  4801. [[timelock-proposer]]
  4802. ===== Proposer
  4803. The proposers are in charge of scheduling (and cancelling) operations. This is a critical role, that should be given to governing entities. This could be an EOA, a multisig, or a DAO.
  4804. WARNING: *Proposer fight:* Having multiple proposers, while providing redundancy in case one becomes unavailable, can be dangerous. As proposer have their say on all operations, they could cancel operations they disagree with, including operations to remove them for the proposers.
  4805. This role is identified by the *PROPOSER_ROLE* value: `0xb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1`
  4806. [[timelock-executor]]
  4807. ===== Executor
  4808. The executors are in charge of executing the operations scheduled by the proposers once the timelock expires. Logic dictates that multisig or DAO that are proposers should also be executors in order to guarantee operations that have been scheduled will eventually be executed. However, having additional executors can reduce the cost (the executing transaction does not require validation by the multisig or DAO that proposed it), while ensuring whoever is in charge of execution cannot trigger actions that have not been scheduled by the proposers. Alternatively, it is possible to allow _any_ address to execute a proposal once the timelock has expired by granting the executor role to the zero address.
  4809. This role is identified by the *EXECUTOR_ROLE* value: `0xd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63`
  4810. WARNING: A live contract without at least one proposer and one executor is locked. Make sure these roles are filled by reliable entities before the deployer renounces its administrative rights in favour of the timelock contract itself. See the {AccessControl} documentation to learn more about role management.