governance.adoc 400 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428
  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-renounceOwnership: pass:normal[xref:access.adoc#Ownable-renounceOwnership--[`Ownable.renounceOwnership`]]
  87. :xref-Ownable-renounceOwnership--: xref:access.adoc#Ownable-renounceOwnership--
  88. :Ownable-transferOwnership: pass:normal[xref:access.adoc#Ownable-transferOwnership-address-[`Ownable.transferOwnership`]]
  89. :xref-Ownable-transferOwnership-address-: xref:access.adoc#Ownable-transferOwnership-address-
  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-OwnershipTransferred: pass:normal[xref:access.adoc#Ownable-OwnershipTransferred-address-address-[`Ownable.OwnershipTransferred`]]
  93. :xref-Ownable-OwnershipTransferred-address-address-: xref:access.adoc#Ownable-OwnershipTransferred-address-address-
  94. :CrossChainEnabled: pass:normal[xref:crosschain.adoc#CrossChainEnabled[`CrossChainEnabled`]]
  95. :xref-CrossChainEnabled: xref:crosschain.adoc#CrossChainEnabled
  96. :CrossChainEnabled-onlyCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabled-onlyCrossChain--[`CrossChainEnabled.onlyCrossChain`]]
  97. :xref-CrossChainEnabled-onlyCrossChain--: xref:crosschain.adoc#CrossChainEnabled-onlyCrossChain--
  98. :CrossChainEnabled-onlyCrossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabled-onlyCrossChainSender-address-[`CrossChainEnabled.onlyCrossChainSender`]]
  99. :xref-CrossChainEnabled-onlyCrossChainSender-address-: xref:crosschain.adoc#CrossChainEnabled-onlyCrossChainSender-address-
  100. :CrossChainEnabled-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabled-_isCrossChain--[`CrossChainEnabled._isCrossChain`]]
  101. :xref-CrossChainEnabled-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabled-_isCrossChain--
  102. :CrossChainEnabled-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabled-_crossChainSender--[`CrossChainEnabled._crossChainSender`]]
  103. :xref-CrossChainEnabled-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabled-_crossChainSender--
  104. :CrossChainEnabledAMB: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB[`CrossChainEnabledAMB`]]
  105. :xref-CrossChainEnabledAMB: xref:crosschain.adoc#CrossChainEnabledAMB
  106. :CrossChainEnabledAMB-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB-constructor-address-[`CrossChainEnabledAMB.constructor`]]
  107. :xref-CrossChainEnabledAMB-constructor-address-: xref:crosschain.adoc#CrossChainEnabledAMB-constructor-address-
  108. :CrossChainEnabledAMB-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB-_isCrossChain--[`CrossChainEnabledAMB._isCrossChain`]]
  109. :xref-CrossChainEnabledAMB-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledAMB-_isCrossChain--
  110. :CrossChainEnabledAMB-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledAMB-_crossChainSender--[`CrossChainEnabledAMB._crossChainSender`]]
  111. :xref-CrossChainEnabledAMB-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledAMB-_crossChainSender--
  112. :LibAMB: pass:normal[xref:crosschain.adoc#LibAMB[`LibAMB`]]
  113. :xref-LibAMB: xref:crosschain.adoc#LibAMB
  114. :LibAMB-isCrossChain: pass:normal[xref:crosschain.adoc#LibAMB-isCrossChain-address-[`LibAMB.isCrossChain`]]
  115. :xref-LibAMB-isCrossChain-address-: xref:crosschain.adoc#LibAMB-isCrossChain-address-
  116. :LibAMB-crossChainSender: pass:normal[xref:crosschain.adoc#LibAMB-crossChainSender-address-[`LibAMB.crossChainSender`]]
  117. :xref-LibAMB-crossChainSender-address-: xref:crosschain.adoc#LibAMB-crossChainSender-address-
  118. :CrossChainEnabledArbitrumL1: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1[`CrossChainEnabledArbitrumL1`]]
  119. :xref-CrossChainEnabledArbitrumL1: xref:crosschain.adoc#CrossChainEnabledArbitrumL1
  120. :CrossChainEnabledArbitrumL1-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1-constructor-address-[`CrossChainEnabledArbitrumL1.constructor`]]
  121. :xref-CrossChainEnabledArbitrumL1-constructor-address-: xref:crosschain.adoc#CrossChainEnabledArbitrumL1-constructor-address-
  122. :CrossChainEnabledArbitrumL1-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_isCrossChain--[`CrossChainEnabledArbitrumL1._isCrossChain`]]
  123. :xref-CrossChainEnabledArbitrumL1-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_isCrossChain--
  124. :CrossChainEnabledArbitrumL1-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_crossChainSender--[`CrossChainEnabledArbitrumL1._crossChainSender`]]
  125. :xref-CrossChainEnabledArbitrumL1-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledArbitrumL1-_crossChainSender--
  126. :CrossChainEnabledArbitrumL2: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL2[`CrossChainEnabledArbitrumL2`]]
  127. :xref-CrossChainEnabledArbitrumL2: xref:crosschain.adoc#CrossChainEnabledArbitrumL2
  128. :CrossChainEnabledArbitrumL2-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_isCrossChain--[`CrossChainEnabledArbitrumL2._isCrossChain`]]
  129. :xref-CrossChainEnabledArbitrumL2-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_isCrossChain--
  130. :CrossChainEnabledArbitrumL2-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_crossChainSender--[`CrossChainEnabledArbitrumL2._crossChainSender`]]
  131. :xref-CrossChainEnabledArbitrumL2-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledArbitrumL2-_crossChainSender--
  132. :LibArbitrumL1: pass:normal[xref:crosschain.adoc#LibArbitrumL1[`LibArbitrumL1`]]
  133. :xref-LibArbitrumL1: xref:crosschain.adoc#LibArbitrumL1
  134. :LibArbitrumL1-isCrossChain: pass:normal[xref:crosschain.adoc#LibArbitrumL1-isCrossChain-address-[`LibArbitrumL1.isCrossChain`]]
  135. :xref-LibArbitrumL1-isCrossChain-address-: xref:crosschain.adoc#LibArbitrumL1-isCrossChain-address-
  136. :LibArbitrumL1-crossChainSender: pass:normal[xref:crosschain.adoc#LibArbitrumL1-crossChainSender-address-[`LibArbitrumL1.crossChainSender`]]
  137. :xref-LibArbitrumL1-crossChainSender-address-: xref:crosschain.adoc#LibArbitrumL1-crossChainSender-address-
  138. :LibArbitrumL2: pass:normal[xref:crosschain.adoc#LibArbitrumL2[`LibArbitrumL2`]]
  139. :xref-LibArbitrumL2: xref:crosschain.adoc#LibArbitrumL2
  140. :LibArbitrumL2-ARBSYS: pass:normal[xref:crosschain.adoc#LibArbitrumL2-ARBSYS-address[`LibArbitrumL2.ARBSYS`]]
  141. :xref-LibArbitrumL2-ARBSYS-address: xref:crosschain.adoc#LibArbitrumL2-ARBSYS-address
  142. :LibArbitrumL2-isCrossChain: pass:normal[xref:crosschain.adoc#LibArbitrumL2-isCrossChain-address-[`LibArbitrumL2.isCrossChain`]]
  143. :xref-LibArbitrumL2-isCrossChain-address-: xref:crosschain.adoc#LibArbitrumL2-isCrossChain-address-
  144. :LibArbitrumL2-crossChainSender: pass:normal[xref:crosschain.adoc#LibArbitrumL2-crossChainSender-address-[`LibArbitrumL2.crossChainSender`]]
  145. :xref-LibArbitrumL2-crossChainSender-address-: xref:crosschain.adoc#LibArbitrumL2-crossChainSender-address-
  146. :CrossChainEnabledOptimism: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism[`CrossChainEnabledOptimism`]]
  147. :xref-CrossChainEnabledOptimism: xref:crosschain.adoc#CrossChainEnabledOptimism
  148. :CrossChainEnabledOptimism-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism-constructor-address-[`CrossChainEnabledOptimism.constructor`]]
  149. :xref-CrossChainEnabledOptimism-constructor-address-: xref:crosschain.adoc#CrossChainEnabledOptimism-constructor-address-
  150. :CrossChainEnabledOptimism-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism-_isCrossChain--[`CrossChainEnabledOptimism._isCrossChain`]]
  151. :xref-CrossChainEnabledOptimism-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledOptimism-_isCrossChain--
  152. :CrossChainEnabledOptimism-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledOptimism-_crossChainSender--[`CrossChainEnabledOptimism._crossChainSender`]]
  153. :xref-CrossChainEnabledOptimism-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledOptimism-_crossChainSender--
  154. :LibOptimism: pass:normal[xref:crosschain.adoc#LibOptimism[`LibOptimism`]]
  155. :xref-LibOptimism: xref:crosschain.adoc#LibOptimism
  156. :LibOptimism-isCrossChain: pass:normal[xref:crosschain.adoc#LibOptimism-isCrossChain-address-[`LibOptimism.isCrossChain`]]
  157. :xref-LibOptimism-isCrossChain-address-: xref:crosschain.adoc#LibOptimism-isCrossChain-address-
  158. :LibOptimism-crossChainSender: pass:normal[xref:crosschain.adoc#LibOptimism-crossChainSender-address-[`LibOptimism.crossChainSender`]]
  159. :xref-LibOptimism-crossChainSender-address-: xref:crosschain.adoc#LibOptimism-crossChainSender-address-
  160. :CrossChainEnabledPolygonChild: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild[`CrossChainEnabledPolygonChild`]]
  161. :xref-CrossChainEnabledPolygonChild: xref:crosschain.adoc#CrossChainEnabledPolygonChild
  162. :CrossChainEnabledPolygonChild-constructor: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-constructor-address-[`CrossChainEnabledPolygonChild.constructor`]]
  163. :xref-CrossChainEnabledPolygonChild-constructor-address-: xref:crosschain.adoc#CrossChainEnabledPolygonChild-constructor-address-
  164. :CrossChainEnabledPolygonChild-_isCrossChain: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-_isCrossChain--[`CrossChainEnabledPolygonChild._isCrossChain`]]
  165. :xref-CrossChainEnabledPolygonChild-_isCrossChain--: xref:crosschain.adoc#CrossChainEnabledPolygonChild-_isCrossChain--
  166. :CrossChainEnabledPolygonChild-_crossChainSender: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-_crossChainSender--[`CrossChainEnabledPolygonChild._crossChainSender`]]
  167. :xref-CrossChainEnabledPolygonChild-_crossChainSender--: xref:crosschain.adoc#CrossChainEnabledPolygonChild-_crossChainSender--
  168. :CrossChainEnabledPolygonChild-processMessageFromRoot: pass:normal[xref:crosschain.adoc#CrossChainEnabledPolygonChild-processMessageFromRoot-uint256-address-bytes-[`CrossChainEnabledPolygonChild.processMessageFromRoot`]]
  169. :xref-CrossChainEnabledPolygonChild-processMessageFromRoot-uint256-address-bytes-: xref:crosschain.adoc#CrossChainEnabledPolygonChild-processMessageFromRoot-uint256-address-bytes-
  170. :PaymentSplitter: pass:normal[xref:finance.adoc#PaymentSplitter[`PaymentSplitter`]]
  171. :xref-PaymentSplitter: xref:finance.adoc#PaymentSplitter
  172. :PaymentSplitter-constructor: pass:normal[xref:finance.adoc#PaymentSplitter-constructor-address---uint256---[`PaymentSplitter.constructor`]]
  173. :xref-PaymentSplitter-constructor-address---uint256---: xref:finance.adoc#PaymentSplitter-constructor-address---uint256---
  174. :PaymentSplitter-receive: pass:normal[xref:finance.adoc#PaymentSplitter-receive--[`PaymentSplitter.receive`]]
  175. :xref-PaymentSplitter-receive--: xref:finance.adoc#PaymentSplitter-receive--
  176. :PaymentSplitter-totalShares: pass:normal[xref:finance.adoc#PaymentSplitter-totalShares--[`PaymentSplitter.totalShares`]]
  177. :xref-PaymentSplitter-totalShares--: xref:finance.adoc#PaymentSplitter-totalShares--
  178. :PaymentSplitter-totalReleased: pass:normal[xref:finance.adoc#PaymentSplitter-totalReleased--[`PaymentSplitter.totalReleased`]]
  179. :xref-PaymentSplitter-totalReleased--: xref:finance.adoc#PaymentSplitter-totalReleased--
  180. :PaymentSplitter-totalReleased: pass:normal[xref:finance.adoc#PaymentSplitter-totalReleased-contract-IERC20-[`PaymentSplitter.totalReleased`]]
  181. :xref-PaymentSplitter-totalReleased-contract-IERC20-: xref:finance.adoc#PaymentSplitter-totalReleased-contract-IERC20-
  182. :PaymentSplitter-shares: pass:normal[xref:finance.adoc#PaymentSplitter-shares-address-[`PaymentSplitter.shares`]]
  183. :xref-PaymentSplitter-shares-address-: xref:finance.adoc#PaymentSplitter-shares-address-
  184. :PaymentSplitter-released: pass:normal[xref:finance.adoc#PaymentSplitter-released-address-[`PaymentSplitter.released`]]
  185. :xref-PaymentSplitter-released-address-: xref:finance.adoc#PaymentSplitter-released-address-
  186. :PaymentSplitter-released: pass:normal[xref:finance.adoc#PaymentSplitter-released-contract-IERC20-address-[`PaymentSplitter.released`]]
  187. :xref-PaymentSplitter-released-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-released-contract-IERC20-address-
  188. :PaymentSplitter-payee: pass:normal[xref:finance.adoc#PaymentSplitter-payee-uint256-[`PaymentSplitter.payee`]]
  189. :xref-PaymentSplitter-payee-uint256-: xref:finance.adoc#PaymentSplitter-payee-uint256-
  190. :PaymentSplitter-release: pass:normal[xref:finance.adoc#PaymentSplitter-release-address-payable-[`PaymentSplitter.release`]]
  191. :xref-PaymentSplitter-release-address-payable-: xref:finance.adoc#PaymentSplitter-release-address-payable-
  192. :PaymentSplitter-release: pass:normal[xref:finance.adoc#PaymentSplitter-release-contract-IERC20-address-[`PaymentSplitter.release`]]
  193. :xref-PaymentSplitter-release-contract-IERC20-address-: xref:finance.adoc#PaymentSplitter-release-contract-IERC20-address-
  194. :PaymentSplitter-PayeeAdded: pass:normal[xref:finance.adoc#PaymentSplitter-PayeeAdded-address-uint256-[`PaymentSplitter.PayeeAdded`]]
  195. :xref-PaymentSplitter-PayeeAdded-address-uint256-: xref:finance.adoc#PaymentSplitter-PayeeAdded-address-uint256-
  196. :PaymentSplitter-PaymentReleased: pass:normal[xref:finance.adoc#PaymentSplitter-PaymentReleased-address-uint256-[`PaymentSplitter.PaymentReleased`]]
  197. :xref-PaymentSplitter-PaymentReleased-address-uint256-: xref:finance.adoc#PaymentSplitter-PaymentReleased-address-uint256-
  198. :PaymentSplitter-ERC20PaymentReleased: pass:normal[xref:finance.adoc#PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-[`PaymentSplitter.ERC20PaymentReleased`]]
  199. :xref-PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-: xref:finance.adoc#PaymentSplitter-ERC20PaymentReleased-contract-IERC20-address-uint256-
  200. :PaymentSplitter-PaymentReceived: pass:normal[xref:finance.adoc#PaymentSplitter-PaymentReceived-address-uint256-[`PaymentSplitter.PaymentReceived`]]
  201. :xref-PaymentSplitter-PaymentReceived-address-uint256-: xref:finance.adoc#PaymentSplitter-PaymentReceived-address-uint256-
  202. :VestingWallet: pass:normal[xref:finance.adoc#VestingWallet[`VestingWallet`]]
  203. :xref-VestingWallet: xref:finance.adoc#VestingWallet
  204. :VestingWallet-constructor: pass:normal[xref:finance.adoc#VestingWallet-constructor-address-uint64-uint64-[`VestingWallet.constructor`]]
  205. :xref-VestingWallet-constructor-address-uint64-uint64-: xref:finance.adoc#VestingWallet-constructor-address-uint64-uint64-
  206. :VestingWallet-receive: pass:normal[xref:finance.adoc#VestingWallet-receive--[`VestingWallet.receive`]]
  207. :xref-VestingWallet-receive--: xref:finance.adoc#VestingWallet-receive--
  208. :VestingWallet-beneficiary: pass:normal[xref:finance.adoc#VestingWallet-beneficiary--[`VestingWallet.beneficiary`]]
  209. :xref-VestingWallet-beneficiary--: xref:finance.adoc#VestingWallet-beneficiary--
  210. :VestingWallet-start: pass:normal[xref:finance.adoc#VestingWallet-start--[`VestingWallet.start`]]
  211. :xref-VestingWallet-start--: xref:finance.adoc#VestingWallet-start--
  212. :VestingWallet-duration: pass:normal[xref:finance.adoc#VestingWallet-duration--[`VestingWallet.duration`]]
  213. :xref-VestingWallet-duration--: xref:finance.adoc#VestingWallet-duration--
  214. :VestingWallet-released: pass:normal[xref:finance.adoc#VestingWallet-released--[`VestingWallet.released`]]
  215. :xref-VestingWallet-released--: xref:finance.adoc#VestingWallet-released--
  216. :VestingWallet-released: pass:normal[xref:finance.adoc#VestingWallet-released-address-[`VestingWallet.released`]]
  217. :xref-VestingWallet-released-address-: xref:finance.adoc#VestingWallet-released-address-
  218. :VestingWallet-release: pass:normal[xref:finance.adoc#VestingWallet-release--[`VestingWallet.release`]]
  219. :xref-VestingWallet-release--: xref:finance.adoc#VestingWallet-release--
  220. :VestingWallet-release: pass:normal[xref:finance.adoc#VestingWallet-release-address-[`VestingWallet.release`]]
  221. :xref-VestingWallet-release-address-: xref:finance.adoc#VestingWallet-release-address-
  222. :VestingWallet-vestedAmount: pass:normal[xref:finance.adoc#VestingWallet-vestedAmount-uint64-[`VestingWallet.vestedAmount`]]
  223. :xref-VestingWallet-vestedAmount-uint64-: xref:finance.adoc#VestingWallet-vestedAmount-uint64-
  224. :VestingWallet-vestedAmount: pass:normal[xref:finance.adoc#VestingWallet-vestedAmount-address-uint64-[`VestingWallet.vestedAmount`]]
  225. :xref-VestingWallet-vestedAmount-address-uint64-: xref:finance.adoc#VestingWallet-vestedAmount-address-uint64-
  226. :VestingWallet-_vestingSchedule: pass:normal[xref:finance.adoc#VestingWallet-_vestingSchedule-uint256-uint64-[`VestingWallet._vestingSchedule`]]
  227. :xref-VestingWallet-_vestingSchedule-uint256-uint64-: xref:finance.adoc#VestingWallet-_vestingSchedule-uint256-uint64-
  228. :VestingWallet-EtherReleased: pass:normal[xref:finance.adoc#VestingWallet-EtherReleased-uint256-[`VestingWallet.EtherReleased`]]
  229. :xref-VestingWallet-EtherReleased-uint256-: xref:finance.adoc#VestingWallet-EtherReleased-uint256-
  230. :VestingWallet-ERC20Released: pass:normal[xref:finance.adoc#VestingWallet-ERC20Released-address-uint256-[`VestingWallet.ERC20Released`]]
  231. :xref-VestingWallet-ERC20Released-address-uint256-: xref:finance.adoc#VestingWallet-ERC20Released-address-uint256-
  232. :Governor: pass:normal[xref:governance.adoc#Governor[`Governor`]]
  233. :xref-Governor: xref:governance.adoc#Governor
  234. :Governor-onlyGovernance: pass:normal[xref:governance.adoc#Governor-onlyGovernance--[`Governor.onlyGovernance`]]
  235. :xref-Governor-onlyGovernance--: xref:governance.adoc#Governor-onlyGovernance--
  236. :Governor-BALLOT_TYPEHASH: pass:normal[xref:governance.adoc#Governor-BALLOT_TYPEHASH-bytes32[`Governor.BALLOT_TYPEHASH`]]
  237. :xref-Governor-BALLOT_TYPEHASH-bytes32: xref:governance.adoc#Governor-BALLOT_TYPEHASH-bytes32
  238. :Governor-EXTENDED_BALLOT_TYPEHASH: pass:normal[xref:governance.adoc#Governor-EXTENDED_BALLOT_TYPEHASH-bytes32[`Governor.EXTENDED_BALLOT_TYPEHASH`]]
  239. :xref-Governor-EXTENDED_BALLOT_TYPEHASH-bytes32: xref:governance.adoc#Governor-EXTENDED_BALLOT_TYPEHASH-bytes32
  240. :Governor-constructor: pass:normal[xref:governance.adoc#Governor-constructor-string-[`Governor.constructor`]]
  241. :xref-Governor-constructor-string-: xref:governance.adoc#Governor-constructor-string-
  242. :Governor-receive: pass:normal[xref:governance.adoc#Governor-receive--[`Governor.receive`]]
  243. :xref-Governor-receive--: xref:governance.adoc#Governor-receive--
  244. :Governor-supportsInterface: pass:normal[xref:governance.adoc#Governor-supportsInterface-bytes4-[`Governor.supportsInterface`]]
  245. :xref-Governor-supportsInterface-bytes4-: xref:governance.adoc#Governor-supportsInterface-bytes4-
  246. :Governor-name: pass:normal[xref:governance.adoc#Governor-name--[`Governor.name`]]
  247. :xref-Governor-name--: xref:governance.adoc#Governor-name--
  248. :Governor-version: pass:normal[xref:governance.adoc#Governor-version--[`Governor.version`]]
  249. :xref-Governor-version--: xref:governance.adoc#Governor-version--
  250. :Governor-hashProposal: pass:normal[xref:governance.adoc#Governor-hashProposal-address---uint256---bytes---bytes32-[`Governor.hashProposal`]]
  251. :xref-Governor-hashProposal-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-hashProposal-address---uint256---bytes---bytes32-
  252. :Governor-state: pass:normal[xref:governance.adoc#Governor-state-uint256-[`Governor.state`]]
  253. :xref-Governor-state-uint256-: xref:governance.adoc#Governor-state-uint256-
  254. :Governor-proposalSnapshot: pass:normal[xref:governance.adoc#Governor-proposalSnapshot-uint256-[`Governor.proposalSnapshot`]]
  255. :xref-Governor-proposalSnapshot-uint256-: xref:governance.adoc#Governor-proposalSnapshot-uint256-
  256. :Governor-proposalDeadline: pass:normal[xref:governance.adoc#Governor-proposalDeadline-uint256-[`Governor.proposalDeadline`]]
  257. :xref-Governor-proposalDeadline-uint256-: xref:governance.adoc#Governor-proposalDeadline-uint256-
  258. :Governor-proposalThreshold: pass:normal[xref:governance.adoc#Governor-proposalThreshold--[`Governor.proposalThreshold`]]
  259. :xref-Governor-proposalThreshold--: xref:governance.adoc#Governor-proposalThreshold--
  260. :Governor-_quorumReached: pass:normal[xref:governance.adoc#Governor-_quorumReached-uint256-[`Governor._quorumReached`]]
  261. :xref-Governor-_quorumReached-uint256-: xref:governance.adoc#Governor-_quorumReached-uint256-
  262. :Governor-_voteSucceeded: pass:normal[xref:governance.adoc#Governor-_voteSucceeded-uint256-[`Governor._voteSucceeded`]]
  263. :xref-Governor-_voteSucceeded-uint256-: xref:governance.adoc#Governor-_voteSucceeded-uint256-
  264. :Governor-_getVotes: pass:normal[xref:governance.adoc#Governor-_getVotes-address-uint256-bytes-[`Governor._getVotes`]]
  265. :xref-Governor-_getVotes-address-uint256-bytes-: xref:governance.adoc#Governor-_getVotes-address-uint256-bytes-
  266. :Governor-_countVote: pass:normal[xref:governance.adoc#Governor-_countVote-uint256-address-uint8-uint256-bytes-[`Governor._countVote`]]
  267. :xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-: xref:governance.adoc#Governor-_countVote-uint256-address-uint8-uint256-bytes-
  268. :Governor-_defaultParams: pass:normal[xref:governance.adoc#Governor-_defaultParams--[`Governor._defaultParams`]]
  269. :xref-Governor-_defaultParams--: xref:governance.adoc#Governor-_defaultParams--
  270. :Governor-propose: pass:normal[xref:governance.adoc#Governor-propose-address---uint256---bytes---string-[`Governor.propose`]]
  271. :xref-Governor-propose-address---uint256---bytes---string-: xref:governance.adoc#Governor-propose-address---uint256---bytes---string-
  272. :Governor-execute: pass:normal[xref:governance.adoc#Governor-execute-address---uint256---bytes---bytes32-[`Governor.execute`]]
  273. :xref-Governor-execute-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-execute-address---uint256---bytes---bytes32-
  274. :Governor-_execute: pass:normal[xref:governance.adoc#Governor-_execute-uint256-address---uint256---bytes---bytes32-[`Governor._execute`]]
  275. :xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_execute-uint256-address---uint256---bytes---bytes32-
  276. :Governor-_beforeExecute: pass:normal[xref:governance.adoc#Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-[`Governor._beforeExecute`]]
  277. :xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-
  278. :Governor-_afterExecute: pass:normal[xref:governance.adoc#Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-[`Governor._afterExecute`]]
  279. :xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-
  280. :Governor-_cancel: pass:normal[xref:governance.adoc#Governor-_cancel-address---uint256---bytes---bytes32-[`Governor._cancel`]]
  281. :xref-Governor-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#Governor-_cancel-address---uint256---bytes---bytes32-
  282. :Governor-getVotes: pass:normal[xref:governance.adoc#Governor-getVotes-address-uint256-[`Governor.getVotes`]]
  283. :xref-Governor-getVotes-address-uint256-: xref:governance.adoc#Governor-getVotes-address-uint256-
  284. :Governor-getVotesWithParams: pass:normal[xref:governance.adoc#Governor-getVotesWithParams-address-uint256-bytes-[`Governor.getVotesWithParams`]]
  285. :xref-Governor-getVotesWithParams-address-uint256-bytes-: xref:governance.adoc#Governor-getVotesWithParams-address-uint256-bytes-
  286. :Governor-castVote: pass:normal[xref:governance.adoc#Governor-castVote-uint256-uint8-[`Governor.castVote`]]
  287. :xref-Governor-castVote-uint256-uint8-: xref:governance.adoc#Governor-castVote-uint256-uint8-
  288. :Governor-castVoteWithReason: pass:normal[xref:governance.adoc#Governor-castVoteWithReason-uint256-uint8-string-[`Governor.castVoteWithReason`]]
  289. :xref-Governor-castVoteWithReason-uint256-uint8-string-: xref:governance.adoc#Governor-castVoteWithReason-uint256-uint8-string-
  290. :Governor-castVoteWithReasonAndParams: pass:normal[xref:governance.adoc#Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`Governor.castVoteWithReasonAndParams`]]
  291. :xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-: xref:governance.adoc#Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-
  292. :Governor-castVoteBySig: pass:normal[xref:governance.adoc#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`Governor.castVoteBySig`]]
  293. :xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-: xref:governance.adoc#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-
  294. :Governor-castVoteWithReasonAndParamsBySig: pass:normal[xref:governance.adoc#Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`Governor.castVoteWithReasonAndParamsBySig`]]
  295. :xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-: xref:governance.adoc#Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-
  296. :Governor-_castVote: pass:normal[xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-[`Governor._castVote`]]
  297. :xref-Governor-_castVote-uint256-address-uint8-string-: xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-
  298. :Governor-_castVote: pass:normal[xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-bytes-[`Governor._castVote`]]
  299. :xref-Governor-_castVote-uint256-address-uint8-string-bytes-: xref:governance.adoc#Governor-_castVote-uint256-address-uint8-string-bytes-
  300. :Governor-relay: pass:normal[xref:governance.adoc#Governor-relay-address-uint256-bytes-[`Governor.relay`]]
  301. :xref-Governor-relay-address-uint256-bytes-: xref:governance.adoc#Governor-relay-address-uint256-bytes-
  302. :Governor-_executor: pass:normal[xref:governance.adoc#Governor-_executor--[`Governor._executor`]]
  303. :xref-Governor-_executor--: xref:governance.adoc#Governor-_executor--
  304. :Governor-onERC721Received: pass:normal[xref:governance.adoc#Governor-onERC721Received-address-address-uint256-bytes-[`Governor.onERC721Received`]]
  305. :xref-Governor-onERC721Received-address-address-uint256-bytes-: xref:governance.adoc#Governor-onERC721Received-address-address-uint256-bytes-
  306. :Governor-onERC1155Received: pass:normal[xref:governance.adoc#Governor-onERC1155Received-address-address-uint256-uint256-bytes-[`Governor.onERC1155Received`]]
  307. :xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-: xref:governance.adoc#Governor-onERC1155Received-address-address-uint256-uint256-bytes-
  308. :Governor-onERC1155BatchReceived: pass:normal[xref:governance.adoc#Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`Governor.onERC1155BatchReceived`]]
  309. :xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:governance.adoc#Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  310. :Governor-ProposalCore: pass:normal[xref:governance.adoc#Governor-ProposalCore[`Governor.ProposalCore`]]
  311. :xref-Governor-ProposalCore: xref:governance.adoc#Governor-ProposalCore
  312. :IGovernor: pass:normal[xref:governance.adoc#IGovernor[`IGovernor`]]
  313. :xref-IGovernor: xref:governance.adoc#IGovernor
  314. :IGovernor-name: pass:normal[xref:governance.adoc#IGovernor-name--[`IGovernor.name`]]
  315. :xref-IGovernor-name--: xref:governance.adoc#IGovernor-name--
  316. :IGovernor-version: pass:normal[xref:governance.adoc#IGovernor-version--[`IGovernor.version`]]
  317. :xref-IGovernor-version--: xref:governance.adoc#IGovernor-version--
  318. :IGovernor-COUNTING_MODE: pass:normal[xref:governance.adoc#IGovernor-COUNTING_MODE--[`IGovernor.COUNTING_MODE`]]
  319. :xref-IGovernor-COUNTING_MODE--: xref:governance.adoc#IGovernor-COUNTING_MODE--
  320. :IGovernor-hashProposal: pass:normal[xref:governance.adoc#IGovernor-hashProposal-address---uint256---bytes---bytes32-[`IGovernor.hashProposal`]]
  321. :xref-IGovernor-hashProposal-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernor-hashProposal-address---uint256---bytes---bytes32-
  322. :IGovernor-state: pass:normal[xref:governance.adoc#IGovernor-state-uint256-[`IGovernor.state`]]
  323. :xref-IGovernor-state-uint256-: xref:governance.adoc#IGovernor-state-uint256-
  324. :IGovernor-proposalSnapshot: pass:normal[xref:governance.adoc#IGovernor-proposalSnapshot-uint256-[`IGovernor.proposalSnapshot`]]
  325. :xref-IGovernor-proposalSnapshot-uint256-: xref:governance.adoc#IGovernor-proposalSnapshot-uint256-
  326. :IGovernor-proposalDeadline: pass:normal[xref:governance.adoc#IGovernor-proposalDeadline-uint256-[`IGovernor.proposalDeadline`]]
  327. :xref-IGovernor-proposalDeadline-uint256-: xref:governance.adoc#IGovernor-proposalDeadline-uint256-
  328. :IGovernor-votingDelay: pass:normal[xref:governance.adoc#IGovernor-votingDelay--[`IGovernor.votingDelay`]]
  329. :xref-IGovernor-votingDelay--: xref:governance.adoc#IGovernor-votingDelay--
  330. :IGovernor-votingPeriod: pass:normal[xref:governance.adoc#IGovernor-votingPeriod--[`IGovernor.votingPeriod`]]
  331. :xref-IGovernor-votingPeriod--: xref:governance.adoc#IGovernor-votingPeriod--
  332. :IGovernor-quorum: pass:normal[xref:governance.adoc#IGovernor-quorum-uint256-[`IGovernor.quorum`]]
  333. :xref-IGovernor-quorum-uint256-: xref:governance.adoc#IGovernor-quorum-uint256-
  334. :IGovernor-getVotes: pass:normal[xref:governance.adoc#IGovernor-getVotes-address-uint256-[`IGovernor.getVotes`]]
  335. :xref-IGovernor-getVotes-address-uint256-: xref:governance.adoc#IGovernor-getVotes-address-uint256-
  336. :IGovernor-getVotesWithParams: pass:normal[xref:governance.adoc#IGovernor-getVotesWithParams-address-uint256-bytes-[`IGovernor.getVotesWithParams`]]
  337. :xref-IGovernor-getVotesWithParams-address-uint256-bytes-: xref:governance.adoc#IGovernor-getVotesWithParams-address-uint256-bytes-
  338. :IGovernor-hasVoted: pass:normal[xref:governance.adoc#IGovernor-hasVoted-uint256-address-[`IGovernor.hasVoted`]]
  339. :xref-IGovernor-hasVoted-uint256-address-: xref:governance.adoc#IGovernor-hasVoted-uint256-address-
  340. :IGovernor-propose: pass:normal[xref:governance.adoc#IGovernor-propose-address---uint256---bytes---string-[`IGovernor.propose`]]
  341. :xref-IGovernor-propose-address---uint256---bytes---string-: xref:governance.adoc#IGovernor-propose-address---uint256---bytes---string-
  342. :IGovernor-execute: pass:normal[xref:governance.adoc#IGovernor-execute-address---uint256---bytes---bytes32-[`IGovernor.execute`]]
  343. :xref-IGovernor-execute-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernor-execute-address---uint256---bytes---bytes32-
  344. :IGovernor-castVote: pass:normal[xref:governance.adoc#IGovernor-castVote-uint256-uint8-[`IGovernor.castVote`]]
  345. :xref-IGovernor-castVote-uint256-uint8-: xref:governance.adoc#IGovernor-castVote-uint256-uint8-
  346. :IGovernor-castVoteWithReason: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReason-uint256-uint8-string-[`IGovernor.castVoteWithReason`]]
  347. :xref-IGovernor-castVoteWithReason-uint256-uint8-string-: xref:governance.adoc#IGovernor-castVoteWithReason-uint256-uint8-string-
  348. :IGovernor-castVoteWithReasonAndParams: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`IGovernor.castVoteWithReasonAndParams`]]
  349. :xref-IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-: xref:governance.adoc#IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-
  350. :IGovernor-castVoteBySig: pass:normal[xref:governance.adoc#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`IGovernor.castVoteBySig`]]
  351. :xref-IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-: xref:governance.adoc#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-
  352. :IGovernor-castVoteWithReasonAndParamsBySig: pass:normal[xref:governance.adoc#IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`IGovernor.castVoteWithReasonAndParamsBySig`]]
  353. :xref-IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-: xref:governance.adoc#IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-
  354. :IGovernor-ProposalCreated: pass:normal[xref:governance.adoc#IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-[`IGovernor.ProposalCreated`]]
  355. :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-
  356. :IGovernor-ProposalCanceled: pass:normal[xref:governance.adoc#IGovernor-ProposalCanceled-uint256-[`IGovernor.ProposalCanceled`]]
  357. :xref-IGovernor-ProposalCanceled-uint256-: xref:governance.adoc#IGovernor-ProposalCanceled-uint256-
  358. :IGovernor-ProposalExecuted: pass:normal[xref:governance.adoc#IGovernor-ProposalExecuted-uint256-[`IGovernor.ProposalExecuted`]]
  359. :xref-IGovernor-ProposalExecuted-uint256-: xref:governance.adoc#IGovernor-ProposalExecuted-uint256-
  360. :IGovernor-VoteCast: pass:normal[xref:governance.adoc#IGovernor-VoteCast-address-uint256-uint8-uint256-string-[`IGovernor.VoteCast`]]
  361. :xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-: xref:governance.adoc#IGovernor-VoteCast-address-uint256-uint8-uint256-string-
  362. :IGovernor-VoteCastWithParams: pass:normal[xref:governance.adoc#IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-[`IGovernor.VoteCastWithParams`]]
  363. :xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-: xref:governance.adoc#IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-
  364. :IGovernor-ProposalState: pass:normal[xref:governance.adoc#IGovernor-ProposalState[`IGovernor.ProposalState`]]
  365. :xref-IGovernor-ProposalState: xref:governance.adoc#IGovernor-ProposalState
  366. :TimelockController: pass:normal[xref:governance.adoc#TimelockController[`TimelockController`]]
  367. :xref-TimelockController: xref:governance.adoc#TimelockController
  368. :TimelockController-onlyRoleOrOpenRole: pass:normal[xref:governance.adoc#TimelockController-onlyRoleOrOpenRole-bytes32-[`TimelockController.onlyRoleOrOpenRole`]]
  369. :xref-TimelockController-onlyRoleOrOpenRole-bytes32-: xref:governance.adoc#TimelockController-onlyRoleOrOpenRole-bytes32-
  370. :TimelockController-TIMELOCK_ADMIN_ROLE: pass:normal[xref:governance.adoc#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32[`TimelockController.TIMELOCK_ADMIN_ROLE`]]
  371. :xref-TimelockController-TIMELOCK_ADMIN_ROLE-bytes32: xref:governance.adoc#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32
  372. :TimelockController-PROPOSER_ROLE: pass:normal[xref:governance.adoc#TimelockController-PROPOSER_ROLE-bytes32[`TimelockController.PROPOSER_ROLE`]]
  373. :xref-TimelockController-PROPOSER_ROLE-bytes32: xref:governance.adoc#TimelockController-PROPOSER_ROLE-bytes32
  374. :TimelockController-EXECUTOR_ROLE: pass:normal[xref:governance.adoc#TimelockController-EXECUTOR_ROLE-bytes32[`TimelockController.EXECUTOR_ROLE`]]
  375. :xref-TimelockController-EXECUTOR_ROLE-bytes32: xref:governance.adoc#TimelockController-EXECUTOR_ROLE-bytes32
  376. :TimelockController-CANCELLER_ROLE: pass:normal[xref:governance.adoc#TimelockController-CANCELLER_ROLE-bytes32[`TimelockController.CANCELLER_ROLE`]]
  377. :xref-TimelockController-CANCELLER_ROLE-bytes32: xref:governance.adoc#TimelockController-CANCELLER_ROLE-bytes32
  378. :TimelockController-_DONE_TIMESTAMP: pass:normal[xref:governance.adoc#TimelockController-_DONE_TIMESTAMP-uint256[`TimelockController._DONE_TIMESTAMP`]]
  379. :xref-TimelockController-_DONE_TIMESTAMP-uint256: xref:governance.adoc#TimelockController-_DONE_TIMESTAMP-uint256
  380. :TimelockController-constructor: pass:normal[xref:governance.adoc#TimelockController-constructor-uint256-address---address---[`TimelockController.constructor`]]
  381. :xref-TimelockController-constructor-uint256-address---address---: xref:governance.adoc#TimelockController-constructor-uint256-address---address---
  382. :TimelockController-receive: pass:normal[xref:governance.adoc#TimelockController-receive--[`TimelockController.receive`]]
  383. :xref-TimelockController-receive--: xref:governance.adoc#TimelockController-receive--
  384. :TimelockController-supportsInterface: pass:normal[xref:governance.adoc#TimelockController-supportsInterface-bytes4-[`TimelockController.supportsInterface`]]
  385. :xref-TimelockController-supportsInterface-bytes4-: xref:governance.adoc#TimelockController-supportsInterface-bytes4-
  386. :TimelockController-isOperation: pass:normal[xref:governance.adoc#TimelockController-isOperation-bytes32-[`TimelockController.isOperation`]]
  387. :xref-TimelockController-isOperation-bytes32-: xref:governance.adoc#TimelockController-isOperation-bytes32-
  388. :TimelockController-isOperationPending: pass:normal[xref:governance.adoc#TimelockController-isOperationPending-bytes32-[`TimelockController.isOperationPending`]]
  389. :xref-TimelockController-isOperationPending-bytes32-: xref:governance.adoc#TimelockController-isOperationPending-bytes32-
  390. :TimelockController-isOperationReady: pass:normal[xref:governance.adoc#TimelockController-isOperationReady-bytes32-[`TimelockController.isOperationReady`]]
  391. :xref-TimelockController-isOperationReady-bytes32-: xref:governance.adoc#TimelockController-isOperationReady-bytes32-
  392. :TimelockController-isOperationDone: pass:normal[xref:governance.adoc#TimelockController-isOperationDone-bytes32-[`TimelockController.isOperationDone`]]
  393. :xref-TimelockController-isOperationDone-bytes32-: xref:governance.adoc#TimelockController-isOperationDone-bytes32-
  394. :TimelockController-getTimestamp: pass:normal[xref:governance.adoc#TimelockController-getTimestamp-bytes32-[`TimelockController.getTimestamp`]]
  395. :xref-TimelockController-getTimestamp-bytes32-: xref:governance.adoc#TimelockController-getTimestamp-bytes32-
  396. :TimelockController-getMinDelay: pass:normal[xref:governance.adoc#TimelockController-getMinDelay--[`TimelockController.getMinDelay`]]
  397. :xref-TimelockController-getMinDelay--: xref:governance.adoc#TimelockController-getMinDelay--
  398. :TimelockController-hashOperation: pass:normal[xref:governance.adoc#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-[`TimelockController.hashOperation`]]
  399. :xref-TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-: xref:governance.adoc#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-
  400. :TimelockController-hashOperationBatch: pass:normal[xref:governance.adoc#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-[`TimelockController.hashOperationBatch`]]
  401. :xref-TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-: xref:governance.adoc#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-
  402. :TimelockController-schedule: pass:normal[xref:governance.adoc#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-[`TimelockController.schedule`]]
  403. :xref-TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-: xref:governance.adoc#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-
  404. :TimelockController-scheduleBatch: pass:normal[xref:governance.adoc#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-[`TimelockController.scheduleBatch`]]
  405. :xref-TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-: xref:governance.adoc#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-
  406. :TimelockController-cancel: pass:normal[xref:governance.adoc#TimelockController-cancel-bytes32-[`TimelockController.cancel`]]
  407. :xref-TimelockController-cancel-bytes32-: xref:governance.adoc#TimelockController-cancel-bytes32-
  408. :TimelockController-execute: pass:normal[xref:governance.adoc#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-[`TimelockController.execute`]]
  409. :xref-TimelockController-execute-address-uint256-bytes-bytes32-bytes32-: xref:governance.adoc#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-
  410. :TimelockController-executeBatch: pass:normal[xref:governance.adoc#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-[`TimelockController.executeBatch`]]
  411. :xref-TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-: xref:governance.adoc#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-
  412. :TimelockController-updateDelay: pass:normal[xref:governance.adoc#TimelockController-updateDelay-uint256-[`TimelockController.updateDelay`]]
  413. :xref-TimelockController-updateDelay-uint256-: xref:governance.adoc#TimelockController-updateDelay-uint256-
  414. :TimelockController-onERC721Received: pass:normal[xref:governance.adoc#TimelockController-onERC721Received-address-address-uint256-bytes-[`TimelockController.onERC721Received`]]
  415. :xref-TimelockController-onERC721Received-address-address-uint256-bytes-: xref:governance.adoc#TimelockController-onERC721Received-address-address-uint256-bytes-
  416. :TimelockController-onERC1155Received: pass:normal[xref:governance.adoc#TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-[`TimelockController.onERC1155Received`]]
  417. :xref-TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-: xref:governance.adoc#TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-
  418. :TimelockController-onERC1155BatchReceived: pass:normal[xref:governance.adoc#TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`TimelockController.onERC1155BatchReceived`]]
  419. :xref-TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:governance.adoc#TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  420. :TimelockController-CallScheduled: pass:normal[xref:governance.adoc#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-[`TimelockController.CallScheduled`]]
  421. :xref-TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-: xref:governance.adoc#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-
  422. :TimelockController-CallExecuted: pass:normal[xref:governance.adoc#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-[`TimelockController.CallExecuted`]]
  423. :xref-TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-: xref:governance.adoc#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-
  424. :TimelockController-Cancelled: pass:normal[xref:governance.adoc#TimelockController-Cancelled-bytes32-[`TimelockController.Cancelled`]]
  425. :xref-TimelockController-Cancelled-bytes32-: xref:governance.adoc#TimelockController-Cancelled-bytes32-
  426. :TimelockController-MinDelayChange: pass:normal[xref:governance.adoc#TimelockController-MinDelayChange-uint256-uint256-[`TimelockController.MinDelayChange`]]
  427. :xref-TimelockController-MinDelayChange-uint256-uint256-: xref:governance.adoc#TimelockController-MinDelayChange-uint256-uint256-
  428. :GovernorCompatibilityBravo: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo[`GovernorCompatibilityBravo`]]
  429. :xref-GovernorCompatibilityBravo: xref:governance.adoc#GovernorCompatibilityBravo
  430. :GovernorCompatibilityBravo-COUNTING_MODE: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-COUNTING_MODE--[`GovernorCompatibilityBravo.COUNTING_MODE`]]
  431. :xref-GovernorCompatibilityBravo-COUNTING_MODE--: xref:governance.adoc#GovernorCompatibilityBravo-COUNTING_MODE--
  432. :GovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-[`GovernorCompatibilityBravo.propose`]]
  433. :xref-GovernorCompatibilityBravo-propose-address---uint256---bytes---string-: xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-
  434. :GovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`GovernorCompatibilityBravo.propose`]]
  435. :xref-GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-: xref:governance.adoc#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-
  436. :GovernorCompatibilityBravo-queue: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-queue-uint256-[`GovernorCompatibilityBravo.queue`]]
  437. :xref-GovernorCompatibilityBravo-queue-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-queue-uint256-
  438. :GovernorCompatibilityBravo-execute: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-execute-uint256-[`GovernorCompatibilityBravo.execute`]]
  439. :xref-GovernorCompatibilityBravo-execute-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-execute-uint256-
  440. :GovernorCompatibilityBravo-cancel: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-cancel-uint256-[`GovernorCompatibilityBravo.cancel`]]
  441. :xref-GovernorCompatibilityBravo-cancel-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-cancel-uint256-
  442. :GovernorCompatibilityBravo-proposals: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-proposals-uint256-[`GovernorCompatibilityBravo.proposals`]]
  443. :xref-GovernorCompatibilityBravo-proposals-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-proposals-uint256-
  444. :GovernorCompatibilityBravo-getActions: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-getActions-uint256-[`GovernorCompatibilityBravo.getActions`]]
  445. :xref-GovernorCompatibilityBravo-getActions-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-getActions-uint256-
  446. :GovernorCompatibilityBravo-getReceipt: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-getReceipt-uint256-address-[`GovernorCompatibilityBravo.getReceipt`]]
  447. :xref-GovernorCompatibilityBravo-getReceipt-uint256-address-: xref:governance.adoc#GovernorCompatibilityBravo-getReceipt-uint256-address-
  448. :GovernorCompatibilityBravo-quorumVotes: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-quorumVotes--[`GovernorCompatibilityBravo.quorumVotes`]]
  449. :xref-GovernorCompatibilityBravo-quorumVotes--: xref:governance.adoc#GovernorCompatibilityBravo-quorumVotes--
  450. :GovernorCompatibilityBravo-hasVoted: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-hasVoted-uint256-address-[`GovernorCompatibilityBravo.hasVoted`]]
  451. :xref-GovernorCompatibilityBravo-hasVoted-uint256-address-: xref:governance.adoc#GovernorCompatibilityBravo-hasVoted-uint256-address-
  452. :GovernorCompatibilityBravo-_quorumReached: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_quorumReached-uint256-[`GovernorCompatibilityBravo._quorumReached`]]
  453. :xref-GovernorCompatibilityBravo-_quorumReached-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-_quorumReached-uint256-
  454. :GovernorCompatibilityBravo-_voteSucceeded: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_voteSucceeded-uint256-[`GovernorCompatibilityBravo._voteSucceeded`]]
  455. :xref-GovernorCompatibilityBravo-_voteSucceeded-uint256-: xref:governance.adoc#GovernorCompatibilityBravo-_voteSucceeded-uint256-
  456. :GovernorCompatibilityBravo-_countVote: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-[`GovernorCompatibilityBravo._countVote`]]
  457. :xref-GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-: xref:governance.adoc#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-
  458. :GovernorCompatibilityBravo-ProposalDetails: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-ProposalDetails[`GovernorCompatibilityBravo.ProposalDetails`]]
  459. :xref-GovernorCompatibilityBravo-ProposalDetails: xref:governance.adoc#GovernorCompatibilityBravo-ProposalDetails
  460. :GovernorCompatibilityBravo-VoteType: pass:normal[xref:governance.adoc#GovernorCompatibilityBravo-VoteType[`GovernorCompatibilityBravo.VoteType`]]
  461. :xref-GovernorCompatibilityBravo-VoteType: xref:governance.adoc#GovernorCompatibilityBravo-VoteType
  462. :IGovernorCompatibilityBravo: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo[`IGovernorCompatibilityBravo`]]
  463. :xref-IGovernorCompatibilityBravo: xref:governance.adoc#IGovernorCompatibilityBravo
  464. :IGovernorCompatibilityBravo-quorumVotes: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-quorumVotes--[`IGovernorCompatibilityBravo.quorumVotes`]]
  465. :xref-IGovernorCompatibilityBravo-quorumVotes--: xref:governance.adoc#IGovernorCompatibilityBravo-quorumVotes--
  466. :IGovernorCompatibilityBravo-proposals: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-proposals-uint256-[`IGovernorCompatibilityBravo.proposals`]]
  467. :xref-IGovernorCompatibilityBravo-proposals-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-proposals-uint256-
  468. :IGovernorCompatibilityBravo-propose: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`IGovernorCompatibilityBravo.propose`]]
  469. :xref-IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-: xref:governance.adoc#IGovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-
  470. :IGovernorCompatibilityBravo-queue: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-queue-uint256-[`IGovernorCompatibilityBravo.queue`]]
  471. :xref-IGovernorCompatibilityBravo-queue-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-queue-uint256-
  472. :IGovernorCompatibilityBravo-execute: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-execute-uint256-[`IGovernorCompatibilityBravo.execute`]]
  473. :xref-IGovernorCompatibilityBravo-execute-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-execute-uint256-
  474. :IGovernorCompatibilityBravo-cancel: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-cancel-uint256-[`IGovernorCompatibilityBravo.cancel`]]
  475. :xref-IGovernorCompatibilityBravo-cancel-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-cancel-uint256-
  476. :IGovernorCompatibilityBravo-getActions: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-getActions-uint256-[`IGovernorCompatibilityBravo.getActions`]]
  477. :xref-IGovernorCompatibilityBravo-getActions-uint256-: xref:governance.adoc#IGovernorCompatibilityBravo-getActions-uint256-
  478. :IGovernorCompatibilityBravo-getReceipt: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-getReceipt-uint256-address-[`IGovernorCompatibilityBravo.getReceipt`]]
  479. :xref-IGovernorCompatibilityBravo-getReceipt-uint256-address-: xref:governance.adoc#IGovernorCompatibilityBravo-getReceipt-uint256-address-
  480. :IGovernorCompatibilityBravo-Proposal: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-Proposal[`IGovernorCompatibilityBravo.Proposal`]]
  481. :xref-IGovernorCompatibilityBravo-Proposal: xref:governance.adoc#IGovernorCompatibilityBravo-Proposal
  482. :IGovernorCompatibilityBravo-Receipt: pass:normal[xref:governance.adoc#IGovernorCompatibilityBravo-Receipt[`IGovernorCompatibilityBravo.Receipt`]]
  483. :xref-IGovernorCompatibilityBravo-Receipt: xref:governance.adoc#IGovernorCompatibilityBravo-Receipt
  484. :GovernorCountingSimple: pass:normal[xref:governance.adoc#GovernorCountingSimple[`GovernorCountingSimple`]]
  485. :xref-GovernorCountingSimple: xref:governance.adoc#GovernorCountingSimple
  486. :GovernorCountingSimple-COUNTING_MODE: pass:normal[xref:governance.adoc#GovernorCountingSimple-COUNTING_MODE--[`GovernorCountingSimple.COUNTING_MODE`]]
  487. :xref-GovernorCountingSimple-COUNTING_MODE--: xref:governance.adoc#GovernorCountingSimple-COUNTING_MODE--
  488. :GovernorCountingSimple-hasVoted: pass:normal[xref:governance.adoc#GovernorCountingSimple-hasVoted-uint256-address-[`GovernorCountingSimple.hasVoted`]]
  489. :xref-GovernorCountingSimple-hasVoted-uint256-address-: xref:governance.adoc#GovernorCountingSimple-hasVoted-uint256-address-
  490. :GovernorCountingSimple-proposalVotes: pass:normal[xref:governance.adoc#GovernorCountingSimple-proposalVotes-uint256-[`GovernorCountingSimple.proposalVotes`]]
  491. :xref-GovernorCountingSimple-proposalVotes-uint256-: xref:governance.adoc#GovernorCountingSimple-proposalVotes-uint256-
  492. :GovernorCountingSimple-_quorumReached: pass:normal[xref:governance.adoc#GovernorCountingSimple-_quorumReached-uint256-[`GovernorCountingSimple._quorumReached`]]
  493. :xref-GovernorCountingSimple-_quorumReached-uint256-: xref:governance.adoc#GovernorCountingSimple-_quorumReached-uint256-
  494. :GovernorCountingSimple-_voteSucceeded: pass:normal[xref:governance.adoc#GovernorCountingSimple-_voteSucceeded-uint256-[`GovernorCountingSimple._voteSucceeded`]]
  495. :xref-GovernorCountingSimple-_voteSucceeded-uint256-: xref:governance.adoc#GovernorCountingSimple-_voteSucceeded-uint256-
  496. :GovernorCountingSimple-_countVote: pass:normal[xref:governance.adoc#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-[`GovernorCountingSimple._countVote`]]
  497. :xref-GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-: xref:governance.adoc#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-
  498. :GovernorCountingSimple-ProposalVote: pass:normal[xref:governance.adoc#GovernorCountingSimple-ProposalVote[`GovernorCountingSimple.ProposalVote`]]
  499. :xref-GovernorCountingSimple-ProposalVote: xref:governance.adoc#GovernorCountingSimple-ProposalVote
  500. :GovernorCountingSimple-VoteType: pass:normal[xref:governance.adoc#GovernorCountingSimple-VoteType[`GovernorCountingSimple.VoteType`]]
  501. :xref-GovernorCountingSimple-VoteType: xref:governance.adoc#GovernorCountingSimple-VoteType
  502. :GovernorPreventLateQuorum: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum[`GovernorPreventLateQuorum`]]
  503. :xref-GovernorPreventLateQuorum: xref:governance.adoc#GovernorPreventLateQuorum
  504. :GovernorPreventLateQuorum-constructor: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-constructor-uint64-[`GovernorPreventLateQuorum.constructor`]]
  505. :xref-GovernorPreventLateQuorum-constructor-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-constructor-uint64-
  506. :GovernorPreventLateQuorum-proposalDeadline: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-proposalDeadline-uint256-[`GovernorPreventLateQuorum.proposalDeadline`]]
  507. :xref-GovernorPreventLateQuorum-proposalDeadline-uint256-: xref:governance.adoc#GovernorPreventLateQuorum-proposalDeadline-uint256-
  508. :GovernorPreventLateQuorum-_castVote: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-[`GovernorPreventLateQuorum._castVote`]]
  509. :xref-GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-: xref:governance.adoc#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-
  510. :GovernorPreventLateQuorum-lateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-lateQuorumVoteExtension--[`GovernorPreventLateQuorum.lateQuorumVoteExtension`]]
  511. :xref-GovernorPreventLateQuorum-lateQuorumVoteExtension--: xref:governance.adoc#GovernorPreventLateQuorum-lateQuorumVoteExtension--
  512. :GovernorPreventLateQuorum-setLateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-[`GovernorPreventLateQuorum.setLateQuorumVoteExtension`]]
  513. :xref-GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-
  514. :GovernorPreventLateQuorum-_setLateQuorumVoteExtension: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-[`GovernorPreventLateQuorum._setLateQuorumVoteExtension`]]
  515. :xref-GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-
  516. :GovernorPreventLateQuorum-ProposalExtended: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-[`GovernorPreventLateQuorum.ProposalExtended`]]
  517. :xref-GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-
  518. :GovernorPreventLateQuorum-LateQuorumVoteExtensionSet: pass:normal[xref:governance.adoc#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-[`GovernorPreventLateQuorum.LateQuorumVoteExtensionSet`]]
  519. :xref-GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-: xref:governance.adoc#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-
  520. :GovernorProposalThreshold: pass:normal[xref:governance.adoc#GovernorProposalThreshold[`GovernorProposalThreshold`]]
  521. :xref-GovernorProposalThreshold: xref:governance.adoc#GovernorProposalThreshold
  522. :GovernorProposalThreshold-propose: pass:normal[xref:governance.adoc#GovernorProposalThreshold-propose-address---uint256---bytes---string-[`GovernorProposalThreshold.propose`]]
  523. :xref-GovernorProposalThreshold-propose-address---uint256---bytes---string-: xref:governance.adoc#GovernorProposalThreshold-propose-address---uint256---bytes---string-
  524. :GovernorSettings: pass:normal[xref:governance.adoc#GovernorSettings[`GovernorSettings`]]
  525. :xref-GovernorSettings: xref:governance.adoc#GovernorSettings
  526. :GovernorSettings-constructor: pass:normal[xref:governance.adoc#GovernorSettings-constructor-uint256-uint256-uint256-[`GovernorSettings.constructor`]]
  527. :xref-GovernorSettings-constructor-uint256-uint256-uint256-: xref:governance.adoc#GovernorSettings-constructor-uint256-uint256-uint256-
  528. :GovernorSettings-votingDelay: pass:normal[xref:governance.adoc#GovernorSettings-votingDelay--[`GovernorSettings.votingDelay`]]
  529. :xref-GovernorSettings-votingDelay--: xref:governance.adoc#GovernorSettings-votingDelay--
  530. :GovernorSettings-votingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-votingPeriod--[`GovernorSettings.votingPeriod`]]
  531. :xref-GovernorSettings-votingPeriod--: xref:governance.adoc#GovernorSettings-votingPeriod--
  532. :GovernorSettings-proposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-proposalThreshold--[`GovernorSettings.proposalThreshold`]]
  533. :xref-GovernorSettings-proposalThreshold--: xref:governance.adoc#GovernorSettings-proposalThreshold--
  534. :GovernorSettings-setVotingDelay: pass:normal[xref:governance.adoc#GovernorSettings-setVotingDelay-uint256-[`GovernorSettings.setVotingDelay`]]
  535. :xref-GovernorSettings-setVotingDelay-uint256-: xref:governance.adoc#GovernorSettings-setVotingDelay-uint256-
  536. :GovernorSettings-setVotingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-setVotingPeriod-uint256-[`GovernorSettings.setVotingPeriod`]]
  537. :xref-GovernorSettings-setVotingPeriod-uint256-: xref:governance.adoc#GovernorSettings-setVotingPeriod-uint256-
  538. :GovernorSettings-setProposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-setProposalThreshold-uint256-[`GovernorSettings.setProposalThreshold`]]
  539. :xref-GovernorSettings-setProposalThreshold-uint256-: xref:governance.adoc#GovernorSettings-setProposalThreshold-uint256-
  540. :GovernorSettings-_setVotingDelay: pass:normal[xref:governance.adoc#GovernorSettings-_setVotingDelay-uint256-[`GovernorSettings._setVotingDelay`]]
  541. :xref-GovernorSettings-_setVotingDelay-uint256-: xref:governance.adoc#GovernorSettings-_setVotingDelay-uint256-
  542. :GovernorSettings-_setVotingPeriod: pass:normal[xref:governance.adoc#GovernorSettings-_setVotingPeriod-uint256-[`GovernorSettings._setVotingPeriod`]]
  543. :xref-GovernorSettings-_setVotingPeriod-uint256-: xref:governance.adoc#GovernorSettings-_setVotingPeriod-uint256-
  544. :GovernorSettings-_setProposalThreshold: pass:normal[xref:governance.adoc#GovernorSettings-_setProposalThreshold-uint256-[`GovernorSettings._setProposalThreshold`]]
  545. :xref-GovernorSettings-_setProposalThreshold-uint256-: xref:governance.adoc#GovernorSettings-_setProposalThreshold-uint256-
  546. :GovernorSettings-VotingDelaySet: pass:normal[xref:governance.adoc#GovernorSettings-VotingDelaySet-uint256-uint256-[`GovernorSettings.VotingDelaySet`]]
  547. :xref-GovernorSettings-VotingDelaySet-uint256-uint256-: xref:governance.adoc#GovernorSettings-VotingDelaySet-uint256-uint256-
  548. :GovernorSettings-VotingPeriodSet: pass:normal[xref:governance.adoc#GovernorSettings-VotingPeriodSet-uint256-uint256-[`GovernorSettings.VotingPeriodSet`]]
  549. :xref-GovernorSettings-VotingPeriodSet-uint256-uint256-: xref:governance.adoc#GovernorSettings-VotingPeriodSet-uint256-uint256-
  550. :GovernorSettings-ProposalThresholdSet: pass:normal[xref:governance.adoc#GovernorSettings-ProposalThresholdSet-uint256-uint256-[`GovernorSettings.ProposalThresholdSet`]]
  551. :xref-GovernorSettings-ProposalThresholdSet-uint256-uint256-: xref:governance.adoc#GovernorSettings-ProposalThresholdSet-uint256-uint256-
  552. :GovernorTimelockCompound: pass:normal[xref:governance.adoc#GovernorTimelockCompound[`GovernorTimelockCompound`]]
  553. :xref-GovernorTimelockCompound: xref:governance.adoc#GovernorTimelockCompound
  554. :GovernorTimelockCompound-constructor: pass:normal[xref:governance.adoc#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-[`GovernorTimelockCompound.constructor`]]
  555. :xref-GovernorTimelockCompound-constructor-contract-ICompoundTimelock-: xref:governance.adoc#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-
  556. :GovernorTimelockCompound-supportsInterface: pass:normal[xref:governance.adoc#GovernorTimelockCompound-supportsInterface-bytes4-[`GovernorTimelockCompound.supportsInterface`]]
  557. :xref-GovernorTimelockCompound-supportsInterface-bytes4-: xref:governance.adoc#GovernorTimelockCompound-supportsInterface-bytes4-
  558. :GovernorTimelockCompound-state: pass:normal[xref:governance.adoc#GovernorTimelockCompound-state-uint256-[`GovernorTimelockCompound.state`]]
  559. :xref-GovernorTimelockCompound-state-uint256-: xref:governance.adoc#GovernorTimelockCompound-state-uint256-
  560. :GovernorTimelockCompound-timelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-timelock--[`GovernorTimelockCompound.timelock`]]
  561. :xref-GovernorTimelockCompound-timelock--: xref:governance.adoc#GovernorTimelockCompound-timelock--
  562. :GovernorTimelockCompound-proposalEta: pass:normal[xref:governance.adoc#GovernorTimelockCompound-proposalEta-uint256-[`GovernorTimelockCompound.proposalEta`]]
  563. :xref-GovernorTimelockCompound-proposalEta-uint256-: xref:governance.adoc#GovernorTimelockCompound-proposalEta-uint256-
  564. :GovernorTimelockCompound-queue: pass:normal[xref:governance.adoc#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-[`GovernorTimelockCompound.queue`]]
  565. :xref-GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-
  566. :GovernorTimelockCompound-_execute: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-[`GovernorTimelockCompound._execute`]]
  567. :xref-GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-
  568. :GovernorTimelockCompound-_cancel: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-[`GovernorTimelockCompound._cancel`]]
  569. :xref-GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-
  570. :GovernorTimelockCompound-_executor: pass:normal[xref:governance.adoc#GovernorTimelockCompound-_executor--[`GovernorTimelockCompound._executor`]]
  571. :xref-GovernorTimelockCompound-_executor--: xref:governance.adoc#GovernorTimelockCompound-_executor--
  572. :GovernorTimelockCompound-__acceptAdmin: pass:normal[xref:governance.adoc#GovernorTimelockCompound-__acceptAdmin--[`GovernorTimelockCompound.__acceptAdmin`]]
  573. :xref-GovernorTimelockCompound-__acceptAdmin--: xref:governance.adoc#GovernorTimelockCompound-__acceptAdmin--
  574. :GovernorTimelockCompound-updateTimelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-[`GovernorTimelockCompound.updateTimelock`]]
  575. :xref-GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-: xref:governance.adoc#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-
  576. :GovernorTimelockCompound-TimelockChange: pass:normal[xref:governance.adoc#GovernorTimelockCompound-TimelockChange-address-address-[`GovernorTimelockCompound.TimelockChange`]]
  577. :xref-GovernorTimelockCompound-TimelockChange-address-address-: xref:governance.adoc#GovernorTimelockCompound-TimelockChange-address-address-
  578. :GovernorTimelockCompound-ProposalTimelock: pass:normal[xref:governance.adoc#GovernorTimelockCompound-ProposalTimelock[`GovernorTimelockCompound.ProposalTimelock`]]
  579. :xref-GovernorTimelockCompound-ProposalTimelock: xref:governance.adoc#GovernorTimelockCompound-ProposalTimelock
  580. :GovernorTimelockControl: pass:normal[xref:governance.adoc#GovernorTimelockControl[`GovernorTimelockControl`]]
  581. :xref-GovernorTimelockControl: xref:governance.adoc#GovernorTimelockControl
  582. :GovernorTimelockControl-constructor: pass:normal[xref:governance.adoc#GovernorTimelockControl-constructor-contract-TimelockController-[`GovernorTimelockControl.constructor`]]
  583. :xref-GovernorTimelockControl-constructor-contract-TimelockController-: xref:governance.adoc#GovernorTimelockControl-constructor-contract-TimelockController-
  584. :GovernorTimelockControl-supportsInterface: pass:normal[xref:governance.adoc#GovernorTimelockControl-supportsInterface-bytes4-[`GovernorTimelockControl.supportsInterface`]]
  585. :xref-GovernorTimelockControl-supportsInterface-bytes4-: xref:governance.adoc#GovernorTimelockControl-supportsInterface-bytes4-
  586. :GovernorTimelockControl-state: pass:normal[xref:governance.adoc#GovernorTimelockControl-state-uint256-[`GovernorTimelockControl.state`]]
  587. :xref-GovernorTimelockControl-state-uint256-: xref:governance.adoc#GovernorTimelockControl-state-uint256-
  588. :GovernorTimelockControl-timelock: pass:normal[xref:governance.adoc#GovernorTimelockControl-timelock--[`GovernorTimelockControl.timelock`]]
  589. :xref-GovernorTimelockControl-timelock--: xref:governance.adoc#GovernorTimelockControl-timelock--
  590. :GovernorTimelockControl-proposalEta: pass:normal[xref:governance.adoc#GovernorTimelockControl-proposalEta-uint256-[`GovernorTimelockControl.proposalEta`]]
  591. :xref-GovernorTimelockControl-proposalEta-uint256-: xref:governance.adoc#GovernorTimelockControl-proposalEta-uint256-
  592. :GovernorTimelockControl-queue: pass:normal[xref:governance.adoc#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-[`GovernorTimelockControl.queue`]]
  593. :xref-GovernorTimelockControl-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-
  594. :GovernorTimelockControl-_execute: pass:normal[xref:governance.adoc#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-[`GovernorTimelockControl._execute`]]
  595. :xref-GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-
  596. :GovernorTimelockControl-_cancel: pass:normal[xref:governance.adoc#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-[`GovernorTimelockControl._cancel`]]
  597. :xref-GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-: xref:governance.adoc#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-
  598. :GovernorTimelockControl-_executor: pass:normal[xref:governance.adoc#GovernorTimelockControl-_executor--[`GovernorTimelockControl._executor`]]
  599. :xref-GovernorTimelockControl-_executor--: xref:governance.adoc#GovernorTimelockControl-_executor--
  600. :GovernorTimelockControl-updateTimelock: pass:normal[xref:governance.adoc#GovernorTimelockControl-updateTimelock-contract-TimelockController-[`GovernorTimelockControl.updateTimelock`]]
  601. :xref-GovernorTimelockControl-updateTimelock-contract-TimelockController-: xref:governance.adoc#GovernorTimelockControl-updateTimelock-contract-TimelockController-
  602. :GovernorTimelockControl-TimelockChange: pass:normal[xref:governance.adoc#GovernorTimelockControl-TimelockChange-address-address-[`GovernorTimelockControl.TimelockChange`]]
  603. :xref-GovernorTimelockControl-TimelockChange-address-address-: xref:governance.adoc#GovernorTimelockControl-TimelockChange-address-address-
  604. :GovernorVotes: pass:normal[xref:governance.adoc#GovernorVotes[`GovernorVotes`]]
  605. :xref-GovernorVotes: xref:governance.adoc#GovernorVotes
  606. :GovernorVotes-token: pass:normal[xref:governance.adoc#GovernorVotes-token-contract-IVotes[`GovernorVotes.token`]]
  607. :xref-GovernorVotes-token-contract-IVotes: xref:governance.adoc#GovernorVotes-token-contract-IVotes
  608. :GovernorVotes-constructor: pass:normal[xref:governance.adoc#GovernorVotes-constructor-contract-IVotes-[`GovernorVotes.constructor`]]
  609. :xref-GovernorVotes-constructor-contract-IVotes-: xref:governance.adoc#GovernorVotes-constructor-contract-IVotes-
  610. :GovernorVotes-_getVotes: pass:normal[xref:governance.adoc#GovernorVotes-_getVotes-address-uint256-bytes-[`GovernorVotes._getVotes`]]
  611. :xref-GovernorVotes-_getVotes-address-uint256-bytes-: xref:governance.adoc#GovernorVotes-_getVotes-address-uint256-bytes-
  612. :GovernorVotesComp: pass:normal[xref:governance.adoc#GovernorVotesComp[`GovernorVotesComp`]]
  613. :xref-GovernorVotesComp: xref:governance.adoc#GovernorVotesComp
  614. :GovernorVotesComp-token: pass:normal[xref:governance.adoc#GovernorVotesComp-token-contract-ERC20VotesComp[`GovernorVotesComp.token`]]
  615. :xref-GovernorVotesComp-token-contract-ERC20VotesComp: xref:governance.adoc#GovernorVotesComp-token-contract-ERC20VotesComp
  616. :GovernorVotesComp-constructor: pass:normal[xref:governance.adoc#GovernorVotesComp-constructor-contract-ERC20VotesComp-[`GovernorVotesComp.constructor`]]
  617. :xref-GovernorVotesComp-constructor-contract-ERC20VotesComp-: xref:governance.adoc#GovernorVotesComp-constructor-contract-ERC20VotesComp-
  618. :GovernorVotesComp-_getVotes: pass:normal[xref:governance.adoc#GovernorVotesComp-_getVotes-address-uint256-bytes-[`GovernorVotesComp._getVotes`]]
  619. :xref-GovernorVotesComp-_getVotes-address-uint256-bytes-: xref:governance.adoc#GovernorVotesComp-_getVotes-address-uint256-bytes-
  620. :GovernorVotesQuorumFraction: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction[`GovernorVotesQuorumFraction`]]
  621. :xref-GovernorVotesQuorumFraction: xref:governance.adoc#GovernorVotesQuorumFraction
  622. :GovernorVotesQuorumFraction-constructor: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-constructor-uint256-[`GovernorVotesQuorumFraction.constructor`]]
  623. :xref-GovernorVotesQuorumFraction-constructor-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-constructor-uint256-
  624. :GovernorVotesQuorumFraction-quorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator--[`GovernorVotesQuorumFraction.quorumNumerator`]]
  625. :xref-GovernorVotesQuorumFraction-quorumNumerator--: xref:governance.adoc#GovernorVotesQuorumFraction-quorumNumerator--
  626. :GovernorVotesQuorumFraction-quorumDenominator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorumDenominator--[`GovernorVotesQuorumFraction.quorumDenominator`]]
  627. :xref-GovernorVotesQuorumFraction-quorumDenominator--: xref:governance.adoc#GovernorVotesQuorumFraction-quorumDenominator--
  628. :GovernorVotesQuorumFraction-quorum: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-quorum-uint256-[`GovernorVotesQuorumFraction.quorum`]]
  629. :xref-GovernorVotesQuorumFraction-quorum-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-quorum-uint256-
  630. :GovernorVotesQuorumFraction-updateQuorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-[`GovernorVotesQuorumFraction.updateQuorumNumerator`]]
  631. :xref-GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-
  632. :GovernorVotesQuorumFraction-_updateQuorumNumerator: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-[`GovernorVotesQuorumFraction._updateQuorumNumerator`]]
  633. :xref-GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-
  634. :GovernorVotesQuorumFraction-QuorumNumeratorUpdated: pass:normal[xref:governance.adoc#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-[`GovernorVotesQuorumFraction.QuorumNumeratorUpdated`]]
  635. :xref-GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-: xref:governance.adoc#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-
  636. :IGovernorTimelock: pass:normal[xref:governance.adoc#IGovernorTimelock[`IGovernorTimelock`]]
  637. :xref-IGovernorTimelock: xref:governance.adoc#IGovernorTimelock
  638. :IGovernorTimelock-timelock: pass:normal[xref:governance.adoc#IGovernorTimelock-timelock--[`IGovernorTimelock.timelock`]]
  639. :xref-IGovernorTimelock-timelock--: xref:governance.adoc#IGovernorTimelock-timelock--
  640. :IGovernorTimelock-proposalEta: pass:normal[xref:governance.adoc#IGovernorTimelock-proposalEta-uint256-[`IGovernorTimelock.proposalEta`]]
  641. :xref-IGovernorTimelock-proposalEta-uint256-: xref:governance.adoc#IGovernorTimelock-proposalEta-uint256-
  642. :IGovernorTimelock-queue: pass:normal[xref:governance.adoc#IGovernorTimelock-queue-address---uint256---bytes---bytes32-[`IGovernorTimelock.queue`]]
  643. :xref-IGovernorTimelock-queue-address---uint256---bytes---bytes32-: xref:governance.adoc#IGovernorTimelock-queue-address---uint256---bytes---bytes32-
  644. :IGovernorTimelock-ProposalQueued: pass:normal[xref:governance.adoc#IGovernorTimelock-ProposalQueued-uint256-uint256-[`IGovernorTimelock.ProposalQueued`]]
  645. :xref-IGovernorTimelock-ProposalQueued-uint256-uint256-: xref:governance.adoc#IGovernorTimelock-ProposalQueued-uint256-uint256-
  646. :IVotes: pass:normal[xref:governance.adoc#IVotes[`IVotes`]]
  647. :xref-IVotes: xref:governance.adoc#IVotes
  648. :IVotes-getVotes: pass:normal[xref:governance.adoc#IVotes-getVotes-address-[`IVotes.getVotes`]]
  649. :xref-IVotes-getVotes-address-: xref:governance.adoc#IVotes-getVotes-address-
  650. :IVotes-getPastVotes: pass:normal[xref:governance.adoc#IVotes-getPastVotes-address-uint256-[`IVotes.getPastVotes`]]
  651. :xref-IVotes-getPastVotes-address-uint256-: xref:governance.adoc#IVotes-getPastVotes-address-uint256-
  652. :IVotes-getPastTotalSupply: pass:normal[xref:governance.adoc#IVotes-getPastTotalSupply-uint256-[`IVotes.getPastTotalSupply`]]
  653. :xref-IVotes-getPastTotalSupply-uint256-: xref:governance.adoc#IVotes-getPastTotalSupply-uint256-
  654. :IVotes-delegates: pass:normal[xref:governance.adoc#IVotes-delegates-address-[`IVotes.delegates`]]
  655. :xref-IVotes-delegates-address-: xref:governance.adoc#IVotes-delegates-address-
  656. :IVotes-delegate: pass:normal[xref:governance.adoc#IVotes-delegate-address-[`IVotes.delegate`]]
  657. :xref-IVotes-delegate-address-: xref:governance.adoc#IVotes-delegate-address-
  658. :IVotes-delegateBySig: pass:normal[xref:governance.adoc#IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`IVotes.delegateBySig`]]
  659. :xref-IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:governance.adoc#IVotes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  660. :IVotes-DelegateChanged: pass:normal[xref:governance.adoc#IVotes-DelegateChanged-address-address-address-[`IVotes.DelegateChanged`]]
  661. :xref-IVotes-DelegateChanged-address-address-address-: xref:governance.adoc#IVotes-DelegateChanged-address-address-address-
  662. :IVotes-DelegateVotesChanged: pass:normal[xref:governance.adoc#IVotes-DelegateVotesChanged-address-uint256-uint256-[`IVotes.DelegateVotesChanged`]]
  663. :xref-IVotes-DelegateVotesChanged-address-uint256-uint256-: xref:governance.adoc#IVotes-DelegateVotesChanged-address-uint256-uint256-
  664. :Votes: pass:normal[xref:governance.adoc#Votes[`Votes`]]
  665. :xref-Votes: xref:governance.adoc#Votes
  666. :Votes-getVotes: pass:normal[xref:governance.adoc#Votes-getVotes-address-[`Votes.getVotes`]]
  667. :xref-Votes-getVotes-address-: xref:governance.adoc#Votes-getVotes-address-
  668. :Votes-getPastVotes: pass:normal[xref:governance.adoc#Votes-getPastVotes-address-uint256-[`Votes.getPastVotes`]]
  669. :xref-Votes-getPastVotes-address-uint256-: xref:governance.adoc#Votes-getPastVotes-address-uint256-
  670. :Votes-getPastTotalSupply: pass:normal[xref:governance.adoc#Votes-getPastTotalSupply-uint256-[`Votes.getPastTotalSupply`]]
  671. :xref-Votes-getPastTotalSupply-uint256-: xref:governance.adoc#Votes-getPastTotalSupply-uint256-
  672. :Votes-_getTotalSupply: pass:normal[xref:governance.adoc#Votes-_getTotalSupply--[`Votes._getTotalSupply`]]
  673. :xref-Votes-_getTotalSupply--: xref:governance.adoc#Votes-_getTotalSupply--
  674. :Votes-delegates: pass:normal[xref:governance.adoc#Votes-delegates-address-[`Votes.delegates`]]
  675. :xref-Votes-delegates-address-: xref:governance.adoc#Votes-delegates-address-
  676. :Votes-delegate: pass:normal[xref:governance.adoc#Votes-delegate-address-[`Votes.delegate`]]
  677. :xref-Votes-delegate-address-: xref:governance.adoc#Votes-delegate-address-
  678. :Votes-delegateBySig: pass:normal[xref:governance.adoc#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`Votes.delegateBySig`]]
  679. :xref-Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:governance.adoc#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  680. :Votes-_delegate: pass:normal[xref:governance.adoc#Votes-_delegate-address-address-[`Votes._delegate`]]
  681. :xref-Votes-_delegate-address-address-: xref:governance.adoc#Votes-_delegate-address-address-
  682. :Votes-_transferVotingUnits: pass:normal[xref:governance.adoc#Votes-_transferVotingUnits-address-address-uint256-[`Votes._transferVotingUnits`]]
  683. :xref-Votes-_transferVotingUnits-address-address-uint256-: xref:governance.adoc#Votes-_transferVotingUnits-address-address-uint256-
  684. :Votes-_useNonce: pass:normal[xref:governance.adoc#Votes-_useNonce-address-[`Votes._useNonce`]]
  685. :xref-Votes-_useNonce-address-: xref:governance.adoc#Votes-_useNonce-address-
  686. :Votes-nonces: pass:normal[xref:governance.adoc#Votes-nonces-address-[`Votes.nonces`]]
  687. :xref-Votes-nonces-address-: xref:governance.adoc#Votes-nonces-address-
  688. :Votes-DOMAIN_SEPARATOR: pass:normal[xref:governance.adoc#Votes-DOMAIN_SEPARATOR--[`Votes.DOMAIN_SEPARATOR`]]
  689. :xref-Votes-DOMAIN_SEPARATOR--: xref:governance.adoc#Votes-DOMAIN_SEPARATOR--
  690. :Votes-_getVotingUnits: pass:normal[xref:governance.adoc#Votes-_getVotingUnits-address-[`Votes._getVotingUnits`]]
  691. :xref-Votes-_getVotingUnits-address-: xref:governance.adoc#Votes-_getVotingUnits-address-
  692. :IERC1271: pass:normal[xref:interfaces.adoc#IERC1271[`IERC1271`]]
  693. :xref-IERC1271: xref:interfaces.adoc#IERC1271
  694. :IERC1271-isValidSignature: pass:normal[xref:interfaces.adoc#IERC1271-isValidSignature-bytes32-bytes-[`IERC1271.isValidSignature`]]
  695. :xref-IERC1271-isValidSignature-bytes32-bytes-: xref:interfaces.adoc#IERC1271-isValidSignature-bytes32-bytes-
  696. :IERC1363: pass:normal[xref:interfaces.adoc#IERC1363[`IERC1363`]]
  697. :xref-IERC1363: xref:interfaces.adoc#IERC1363
  698. :IERC1363-transferAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-[`IERC1363.transferAndCall`]]
  699. :xref-IERC1363-transferAndCall-address-uint256-: xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-
  700. :IERC1363-transferAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-bytes-[`IERC1363.transferAndCall`]]
  701. :xref-IERC1363-transferAndCall-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-transferAndCall-address-uint256-bytes-
  702. :IERC1363-transferFromAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-[`IERC1363.transferFromAndCall`]]
  703. :xref-IERC1363-transferFromAndCall-address-address-uint256-: xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-
  704. :IERC1363-transferFromAndCall: pass:normal[xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-bytes-[`IERC1363.transferFromAndCall`]]
  705. :xref-IERC1363-transferFromAndCall-address-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-transferFromAndCall-address-address-uint256-bytes-
  706. :IERC1363-approveAndCall: pass:normal[xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-[`IERC1363.approveAndCall`]]
  707. :xref-IERC1363-approveAndCall-address-uint256-: xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-
  708. :IERC1363-approveAndCall: pass:normal[xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-bytes-[`IERC1363.approveAndCall`]]
  709. :xref-IERC1363-approveAndCall-address-uint256-bytes-: xref:interfaces.adoc#IERC1363-approveAndCall-address-uint256-bytes-
  710. :IERC1363Receiver: pass:normal[xref:interfaces.adoc#IERC1363Receiver[`IERC1363Receiver`]]
  711. :xref-IERC1363Receiver: xref:interfaces.adoc#IERC1363Receiver
  712. :IERC1363Receiver-onTransferReceived: pass:normal[xref:interfaces.adoc#IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-[`IERC1363Receiver.onTransferReceived`]]
  713. :xref-IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-: xref:interfaces.adoc#IERC1363Receiver-onTransferReceived-address-address-uint256-bytes-
  714. :IERC1363Spender: pass:normal[xref:interfaces.adoc#IERC1363Spender[`IERC1363Spender`]]
  715. :xref-IERC1363Spender: xref:interfaces.adoc#IERC1363Spender
  716. :IERC1363Spender-onApprovalReceived: pass:normal[xref:interfaces.adoc#IERC1363Spender-onApprovalReceived-address-uint256-bytes-[`IERC1363Spender.onApprovalReceived`]]
  717. :xref-IERC1363Spender-onApprovalReceived-address-uint256-bytes-: xref:interfaces.adoc#IERC1363Spender-onApprovalReceived-address-uint256-bytes-
  718. :IERC2981: pass:normal[xref:interfaces.adoc#IERC2981[`IERC2981`]]
  719. :xref-IERC2981: xref:interfaces.adoc#IERC2981
  720. :IERC2981-royaltyInfo: pass:normal[xref:interfaces.adoc#IERC2981-royaltyInfo-uint256-uint256-[`IERC2981.royaltyInfo`]]
  721. :xref-IERC2981-royaltyInfo-uint256-uint256-: xref:interfaces.adoc#IERC2981-royaltyInfo-uint256-uint256-
  722. :IERC3156FlashBorrower: pass:normal[xref:interfaces.adoc#IERC3156FlashBorrower[`IERC3156FlashBorrower`]]
  723. :xref-IERC3156FlashBorrower: xref:interfaces.adoc#IERC3156FlashBorrower
  724. :IERC3156FlashBorrower-onFlashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-[`IERC3156FlashBorrower.onFlashLoan`]]
  725. :xref-IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-: xref:interfaces.adoc#IERC3156FlashBorrower-onFlashLoan-address-address-uint256-uint256-bytes-
  726. :IERC3156FlashLender: pass:normal[xref:interfaces.adoc#IERC3156FlashLender[`IERC3156FlashLender`]]
  727. :xref-IERC3156FlashLender: xref:interfaces.adoc#IERC3156FlashLender
  728. :IERC3156FlashLender-maxFlashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-maxFlashLoan-address-[`IERC3156FlashLender.maxFlashLoan`]]
  729. :xref-IERC3156FlashLender-maxFlashLoan-address-: xref:interfaces.adoc#IERC3156FlashLender-maxFlashLoan-address-
  730. :IERC3156FlashLender-flashFee: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-flashFee-address-uint256-[`IERC3156FlashLender.flashFee`]]
  731. :xref-IERC3156FlashLender-flashFee-address-uint256-: xref:interfaces.adoc#IERC3156FlashLender-flashFee-address-uint256-
  732. :IERC3156FlashLender-flashLoan: pass:normal[xref:interfaces.adoc#IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-[`IERC3156FlashLender.flashLoan`]]
  733. :xref-IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-: xref:interfaces.adoc#IERC3156FlashLender-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-
  734. :IERC1822Proxiable: pass:normal[xref:interfaces.adoc#IERC1822Proxiable[`IERC1822Proxiable`]]
  735. :xref-IERC1822Proxiable: xref:interfaces.adoc#IERC1822Proxiable
  736. :IERC1822Proxiable-proxiableUUID: pass:normal[xref:interfaces.adoc#IERC1822Proxiable-proxiableUUID--[`IERC1822Proxiable.proxiableUUID`]]
  737. :xref-IERC1822Proxiable-proxiableUUID--: xref:interfaces.adoc#IERC1822Proxiable-proxiableUUID--
  738. :IERC2612: pass:normal[xref:interfaces.adoc#IERC2612[`IERC2612`]]
  739. :xref-IERC2612: xref:interfaces.adoc#IERC2612
  740. :ERC2771Context: pass:normal[xref:metatx.adoc#ERC2771Context[`ERC2771Context`]]
  741. :xref-ERC2771Context: xref:metatx.adoc#ERC2771Context
  742. :ERC2771Context-constructor: pass:normal[xref:metatx.adoc#ERC2771Context-constructor-address-[`ERC2771Context.constructor`]]
  743. :xref-ERC2771Context-constructor-address-: xref:metatx.adoc#ERC2771Context-constructor-address-
  744. :ERC2771Context-isTrustedForwarder: pass:normal[xref:metatx.adoc#ERC2771Context-isTrustedForwarder-address-[`ERC2771Context.isTrustedForwarder`]]
  745. :xref-ERC2771Context-isTrustedForwarder-address-: xref:metatx.adoc#ERC2771Context-isTrustedForwarder-address-
  746. :ERC2771Context-_msgSender: pass:normal[xref:metatx.adoc#ERC2771Context-_msgSender--[`ERC2771Context._msgSender`]]
  747. :xref-ERC2771Context-_msgSender--: xref:metatx.adoc#ERC2771Context-_msgSender--
  748. :ERC2771Context-_msgData: pass:normal[xref:metatx.adoc#ERC2771Context-_msgData--[`ERC2771Context._msgData`]]
  749. :xref-ERC2771Context-_msgData--: xref:metatx.adoc#ERC2771Context-_msgData--
  750. :MinimalForwarder: pass:normal[xref:metatx.adoc#MinimalForwarder[`MinimalForwarder`]]
  751. :xref-MinimalForwarder: xref:metatx.adoc#MinimalForwarder
  752. :MinimalForwarder-getNonce: pass:normal[xref:metatx.adoc#MinimalForwarder-getNonce-address-[`MinimalForwarder.getNonce`]]
  753. :xref-MinimalForwarder-getNonce-address-: xref:metatx.adoc#MinimalForwarder-getNonce-address-
  754. :MinimalForwarder-verify: pass:normal[xref:metatx.adoc#MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-[`MinimalForwarder.verify`]]
  755. :xref-MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-: xref:metatx.adoc#MinimalForwarder-verify-struct-MinimalForwarder-ForwardRequest-bytes-
  756. :MinimalForwarder-execute: pass:normal[xref:metatx.adoc#MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-[`MinimalForwarder.execute`]]
  757. :xref-MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-: xref:metatx.adoc#MinimalForwarder-execute-struct-MinimalForwarder-ForwardRequest-bytes-
  758. :MinimalForwarder-ForwardRequest: pass:normal[xref:metatx.adoc#MinimalForwarder-ForwardRequest[`MinimalForwarder.ForwardRequest`]]
  759. :xref-MinimalForwarder-ForwardRequest: xref:metatx.adoc#MinimalForwarder-ForwardRequest
  760. :Clones: pass:normal[xref:proxy.adoc#Clones[`Clones`]]
  761. :xref-Clones: xref:proxy.adoc#Clones
  762. :Clones-clone: pass:normal[xref:proxy.adoc#Clones-clone-address-[`Clones.clone`]]
  763. :xref-Clones-clone-address-: xref:proxy.adoc#Clones-clone-address-
  764. :Clones-cloneDeterministic: pass:normal[xref:proxy.adoc#Clones-cloneDeterministic-address-bytes32-[`Clones.cloneDeterministic`]]
  765. :xref-Clones-cloneDeterministic-address-bytes32-: xref:proxy.adoc#Clones-cloneDeterministic-address-bytes32-
  766. :Clones-predictDeterministicAddress: pass:normal[xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-address-[`Clones.predictDeterministicAddress`]]
  767. :xref-Clones-predictDeterministicAddress-address-bytes32-address-: xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-address-
  768. :Clones-predictDeterministicAddress: pass:normal[xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-[`Clones.predictDeterministicAddress`]]
  769. :xref-Clones-predictDeterministicAddress-address-bytes32-: xref:proxy.adoc#Clones-predictDeterministicAddress-address-bytes32-
  770. :ERC1967Proxy: pass:normal[xref:proxy.adoc#ERC1967Proxy[`ERC1967Proxy`]]
  771. :xref-ERC1967Proxy: xref:proxy.adoc#ERC1967Proxy
  772. :ERC1967Proxy-constructor: pass:normal[xref:proxy.adoc#ERC1967Proxy-constructor-address-bytes-[`ERC1967Proxy.constructor`]]
  773. :xref-ERC1967Proxy-constructor-address-bytes-: xref:proxy.adoc#ERC1967Proxy-constructor-address-bytes-
  774. :ERC1967Proxy-_implementation: pass:normal[xref:proxy.adoc#ERC1967Proxy-_implementation--[`ERC1967Proxy._implementation`]]
  775. :xref-ERC1967Proxy-_implementation--: xref:proxy.adoc#ERC1967Proxy-_implementation--
  776. :ERC1967Upgrade: pass:normal[xref:proxy.adoc#ERC1967Upgrade[`ERC1967Upgrade`]]
  777. :xref-ERC1967Upgrade: xref:proxy.adoc#ERC1967Upgrade
  778. :ERC1967Upgrade-_IMPLEMENTATION_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32[`ERC1967Upgrade._IMPLEMENTATION_SLOT`]]
  779. :xref-ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_IMPLEMENTATION_SLOT-bytes32
  780. :ERC1967Upgrade-_ADMIN_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_ADMIN_SLOT-bytes32[`ERC1967Upgrade._ADMIN_SLOT`]]
  781. :xref-ERC1967Upgrade-_ADMIN_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_ADMIN_SLOT-bytes32
  782. :ERC1967Upgrade-_BEACON_SLOT: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_BEACON_SLOT-bytes32[`ERC1967Upgrade._BEACON_SLOT`]]
  783. :xref-ERC1967Upgrade-_BEACON_SLOT-bytes32: xref:proxy.adoc#ERC1967Upgrade-_BEACON_SLOT-bytes32
  784. :ERC1967Upgrade-_getImplementation: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getImplementation--[`ERC1967Upgrade._getImplementation`]]
  785. :xref-ERC1967Upgrade-_getImplementation--: xref:proxy.adoc#ERC1967Upgrade-_getImplementation--
  786. :ERC1967Upgrade-_upgradeTo: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeTo-address-[`ERC1967Upgrade._upgradeTo`]]
  787. :xref-ERC1967Upgrade-_upgradeTo-address-: xref:proxy.adoc#ERC1967Upgrade-_upgradeTo-address-
  788. :ERC1967Upgrade-_upgradeToAndCall: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-[`ERC1967Upgrade._upgradeToAndCall`]]
  789. :xref-ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCall-address-bytes-bool-
  790. :ERC1967Upgrade-_upgradeToAndCallUUPS: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-[`ERC1967Upgrade._upgradeToAndCallUUPS`]]
  791. :xref-ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeToAndCallUUPS-address-bytes-bool-
  792. :ERC1967Upgrade-_getAdmin: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getAdmin--[`ERC1967Upgrade._getAdmin`]]
  793. :xref-ERC1967Upgrade-_getAdmin--: xref:proxy.adoc#ERC1967Upgrade-_getAdmin--
  794. :ERC1967Upgrade-_changeAdmin: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_changeAdmin-address-[`ERC1967Upgrade._changeAdmin`]]
  795. :xref-ERC1967Upgrade-_changeAdmin-address-: xref:proxy.adoc#ERC1967Upgrade-_changeAdmin-address-
  796. :ERC1967Upgrade-_getBeacon: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_getBeacon--[`ERC1967Upgrade._getBeacon`]]
  797. :xref-ERC1967Upgrade-_getBeacon--: xref:proxy.adoc#ERC1967Upgrade-_getBeacon--
  798. :ERC1967Upgrade-_upgradeBeaconToAndCall: pass:normal[xref:proxy.adoc#ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-[`ERC1967Upgrade._upgradeBeaconToAndCall`]]
  799. :xref-ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-: xref:proxy.adoc#ERC1967Upgrade-_upgradeBeaconToAndCall-address-bytes-bool-
  800. :ERC1967Upgrade-Upgraded: pass:normal[xref:proxy.adoc#ERC1967Upgrade-Upgraded-address-[`ERC1967Upgrade.Upgraded`]]
  801. :xref-ERC1967Upgrade-Upgraded-address-: xref:proxy.adoc#ERC1967Upgrade-Upgraded-address-
  802. :ERC1967Upgrade-AdminChanged: pass:normal[xref:proxy.adoc#ERC1967Upgrade-AdminChanged-address-address-[`ERC1967Upgrade.AdminChanged`]]
  803. :xref-ERC1967Upgrade-AdminChanged-address-address-: xref:proxy.adoc#ERC1967Upgrade-AdminChanged-address-address-
  804. :ERC1967Upgrade-BeaconUpgraded: pass:normal[xref:proxy.adoc#ERC1967Upgrade-BeaconUpgraded-address-[`ERC1967Upgrade.BeaconUpgraded`]]
  805. :xref-ERC1967Upgrade-BeaconUpgraded-address-: xref:proxy.adoc#ERC1967Upgrade-BeaconUpgraded-address-
  806. :Proxy: pass:normal[xref:proxy.adoc#Proxy[`Proxy`]]
  807. :xref-Proxy: xref:proxy.adoc#Proxy
  808. :Proxy-_delegate: pass:normal[xref:proxy.adoc#Proxy-_delegate-address-[`Proxy._delegate`]]
  809. :xref-Proxy-_delegate-address-: xref:proxy.adoc#Proxy-_delegate-address-
  810. :Proxy-_implementation: pass:normal[xref:proxy.adoc#Proxy-_implementation--[`Proxy._implementation`]]
  811. :xref-Proxy-_implementation--: xref:proxy.adoc#Proxy-_implementation--
  812. :Proxy-_fallback: pass:normal[xref:proxy.adoc#Proxy-_fallback--[`Proxy._fallback`]]
  813. :xref-Proxy-_fallback--: xref:proxy.adoc#Proxy-_fallback--
  814. :Proxy-fallback: pass:normal[xref:proxy.adoc#Proxy-fallback--[`Proxy.fallback`]]
  815. :xref-Proxy-fallback--: xref:proxy.adoc#Proxy-fallback--
  816. :Proxy-receive: pass:normal[xref:proxy.adoc#Proxy-receive--[`Proxy.receive`]]
  817. :xref-Proxy-receive--: xref:proxy.adoc#Proxy-receive--
  818. :Proxy-_beforeFallback: pass:normal[xref:proxy.adoc#Proxy-_beforeFallback--[`Proxy._beforeFallback`]]
  819. :xref-Proxy-_beforeFallback--: xref:proxy.adoc#Proxy-_beforeFallback--
  820. :BeaconProxy: pass:normal[xref:proxy.adoc#BeaconProxy[`BeaconProxy`]]
  821. :xref-BeaconProxy: xref:proxy.adoc#BeaconProxy
  822. :BeaconProxy-constructor: pass:normal[xref:proxy.adoc#BeaconProxy-constructor-address-bytes-[`BeaconProxy.constructor`]]
  823. :xref-BeaconProxy-constructor-address-bytes-: xref:proxy.adoc#BeaconProxy-constructor-address-bytes-
  824. :BeaconProxy-_beacon: pass:normal[xref:proxy.adoc#BeaconProxy-_beacon--[`BeaconProxy._beacon`]]
  825. :xref-BeaconProxy-_beacon--: xref:proxy.adoc#BeaconProxy-_beacon--
  826. :BeaconProxy-_implementation: pass:normal[xref:proxy.adoc#BeaconProxy-_implementation--[`BeaconProxy._implementation`]]
  827. :xref-BeaconProxy-_implementation--: xref:proxy.adoc#BeaconProxy-_implementation--
  828. :BeaconProxy-_setBeacon: pass:normal[xref:proxy.adoc#BeaconProxy-_setBeacon-address-bytes-[`BeaconProxy._setBeacon`]]
  829. :xref-BeaconProxy-_setBeacon-address-bytes-: xref:proxy.adoc#BeaconProxy-_setBeacon-address-bytes-
  830. :IBeacon: pass:normal[xref:proxy.adoc#IBeacon[`IBeacon`]]
  831. :xref-IBeacon: xref:proxy.adoc#IBeacon
  832. :IBeacon-implementation: pass:normal[xref:proxy.adoc#IBeacon-implementation--[`IBeacon.implementation`]]
  833. :xref-IBeacon-implementation--: xref:proxy.adoc#IBeacon-implementation--
  834. :UpgradeableBeacon: pass:normal[xref:proxy.adoc#UpgradeableBeacon[`UpgradeableBeacon`]]
  835. :xref-UpgradeableBeacon: xref:proxy.adoc#UpgradeableBeacon
  836. :UpgradeableBeacon-constructor: pass:normal[xref:proxy.adoc#UpgradeableBeacon-constructor-address-[`UpgradeableBeacon.constructor`]]
  837. :xref-UpgradeableBeacon-constructor-address-: xref:proxy.adoc#UpgradeableBeacon-constructor-address-
  838. :UpgradeableBeacon-implementation: pass:normal[xref:proxy.adoc#UpgradeableBeacon-implementation--[`UpgradeableBeacon.implementation`]]
  839. :xref-UpgradeableBeacon-implementation--: xref:proxy.adoc#UpgradeableBeacon-implementation--
  840. :UpgradeableBeacon-upgradeTo: pass:normal[xref:proxy.adoc#UpgradeableBeacon-upgradeTo-address-[`UpgradeableBeacon.upgradeTo`]]
  841. :xref-UpgradeableBeacon-upgradeTo-address-: xref:proxy.adoc#UpgradeableBeacon-upgradeTo-address-
  842. :UpgradeableBeacon-Upgraded: pass:normal[xref:proxy.adoc#UpgradeableBeacon-Upgraded-address-[`UpgradeableBeacon.Upgraded`]]
  843. :xref-UpgradeableBeacon-Upgraded-address-: xref:proxy.adoc#UpgradeableBeacon-Upgraded-address-
  844. :ProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin[`ProxyAdmin`]]
  845. :xref-ProxyAdmin: xref:proxy.adoc#ProxyAdmin
  846. :ProxyAdmin-getProxyImplementation: pass:normal[xref:proxy.adoc#ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-[`ProxyAdmin.getProxyImplementation`]]
  847. :xref-ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-: xref:proxy.adoc#ProxyAdmin-getProxyImplementation-contract-TransparentUpgradeableProxy-
  848. :ProxyAdmin-getProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-[`ProxyAdmin.getProxyAdmin`]]
  849. :xref-ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-: xref:proxy.adoc#ProxyAdmin-getProxyAdmin-contract-TransparentUpgradeableProxy-
  850. :ProxyAdmin-changeProxyAdmin: pass:normal[xref:proxy.adoc#ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-[`ProxyAdmin.changeProxyAdmin`]]
  851. :xref-ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-: xref:proxy.adoc#ProxyAdmin-changeProxyAdmin-contract-TransparentUpgradeableProxy-address-
  852. :ProxyAdmin-upgrade: pass:normal[xref:proxy.adoc#ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-[`ProxyAdmin.upgrade`]]
  853. :xref-ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-: xref:proxy.adoc#ProxyAdmin-upgrade-contract-TransparentUpgradeableProxy-address-
  854. :ProxyAdmin-upgradeAndCall: pass:normal[xref:proxy.adoc#ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-[`ProxyAdmin.upgradeAndCall`]]
  855. :xref-ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-: xref:proxy.adoc#ProxyAdmin-upgradeAndCall-contract-TransparentUpgradeableProxy-address-bytes-
  856. :TransparentUpgradeableProxy: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy[`TransparentUpgradeableProxy`]]
  857. :xref-TransparentUpgradeableProxy: xref:proxy.adoc#TransparentUpgradeableProxy
  858. :TransparentUpgradeableProxy-ifAdmin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-ifAdmin--[`TransparentUpgradeableProxy.ifAdmin`]]
  859. :xref-TransparentUpgradeableProxy-ifAdmin--: xref:proxy.adoc#TransparentUpgradeableProxy-ifAdmin--
  860. :TransparentUpgradeableProxy-constructor: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-constructor-address-address-bytes-[`TransparentUpgradeableProxy.constructor`]]
  861. :xref-TransparentUpgradeableProxy-constructor-address-address-bytes-: xref:proxy.adoc#TransparentUpgradeableProxy-constructor-address-address-bytes-
  862. :TransparentUpgradeableProxy-admin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-admin--[`TransparentUpgradeableProxy.admin`]]
  863. :xref-TransparentUpgradeableProxy-admin--: xref:proxy.adoc#TransparentUpgradeableProxy-admin--
  864. :TransparentUpgradeableProxy-implementation: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-implementation--[`TransparentUpgradeableProxy.implementation`]]
  865. :xref-TransparentUpgradeableProxy-implementation--: xref:proxy.adoc#TransparentUpgradeableProxy-implementation--
  866. :TransparentUpgradeableProxy-changeAdmin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-changeAdmin-address-[`TransparentUpgradeableProxy.changeAdmin`]]
  867. :xref-TransparentUpgradeableProxy-changeAdmin-address-: xref:proxy.adoc#TransparentUpgradeableProxy-changeAdmin-address-
  868. :TransparentUpgradeableProxy-upgradeTo: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-upgradeTo-address-[`TransparentUpgradeableProxy.upgradeTo`]]
  869. :xref-TransparentUpgradeableProxy-upgradeTo-address-: xref:proxy.adoc#TransparentUpgradeableProxy-upgradeTo-address-
  870. :TransparentUpgradeableProxy-upgradeToAndCall: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-[`TransparentUpgradeableProxy.upgradeToAndCall`]]
  871. :xref-TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-: xref:proxy.adoc#TransparentUpgradeableProxy-upgradeToAndCall-address-bytes-
  872. :TransparentUpgradeableProxy-_admin: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-_admin--[`TransparentUpgradeableProxy._admin`]]
  873. :xref-TransparentUpgradeableProxy-_admin--: xref:proxy.adoc#TransparentUpgradeableProxy-_admin--
  874. :TransparentUpgradeableProxy-_beforeFallback: pass:normal[xref:proxy.adoc#TransparentUpgradeableProxy-_beforeFallback--[`TransparentUpgradeableProxy._beforeFallback`]]
  875. :xref-TransparentUpgradeableProxy-_beforeFallback--: xref:proxy.adoc#TransparentUpgradeableProxy-_beforeFallback--
  876. :Initializable: pass:normal[xref:proxy.adoc#Initializable[`Initializable`]]
  877. :xref-Initializable: xref:proxy.adoc#Initializable
  878. :Initializable-initializer: pass:normal[xref:proxy.adoc#Initializable-initializer--[`Initializable.initializer`]]
  879. :xref-Initializable-initializer--: xref:proxy.adoc#Initializable-initializer--
  880. :Initializable-reinitializer: pass:normal[xref:proxy.adoc#Initializable-reinitializer-uint8-[`Initializable.reinitializer`]]
  881. :xref-Initializable-reinitializer-uint8-: xref:proxy.adoc#Initializable-reinitializer-uint8-
  882. :Initializable-onlyInitializing: pass:normal[xref:proxy.adoc#Initializable-onlyInitializing--[`Initializable.onlyInitializing`]]
  883. :xref-Initializable-onlyInitializing--: xref:proxy.adoc#Initializable-onlyInitializing--
  884. :Initializable-_disableInitializers: pass:normal[xref:proxy.adoc#Initializable-_disableInitializers--[`Initializable._disableInitializers`]]
  885. :xref-Initializable-_disableInitializers--: xref:proxy.adoc#Initializable-_disableInitializers--
  886. :Initializable-Initialized: pass:normal[xref:proxy.adoc#Initializable-Initialized-uint8-[`Initializable.Initialized`]]
  887. :xref-Initializable-Initialized-uint8-: xref:proxy.adoc#Initializable-Initialized-uint8-
  888. :UUPSUpgradeable: pass:normal[xref:proxy.adoc#UUPSUpgradeable[`UUPSUpgradeable`]]
  889. :xref-UUPSUpgradeable: xref:proxy.adoc#UUPSUpgradeable
  890. :UUPSUpgradeable-onlyProxy: pass:normal[xref:proxy.adoc#UUPSUpgradeable-onlyProxy--[`UUPSUpgradeable.onlyProxy`]]
  891. :xref-UUPSUpgradeable-onlyProxy--: xref:proxy.adoc#UUPSUpgradeable-onlyProxy--
  892. :UUPSUpgradeable-notDelegated: pass:normal[xref:proxy.adoc#UUPSUpgradeable-notDelegated--[`UUPSUpgradeable.notDelegated`]]
  893. :xref-UUPSUpgradeable-notDelegated--: xref:proxy.adoc#UUPSUpgradeable-notDelegated--
  894. :UUPSUpgradeable-proxiableUUID: pass:normal[xref:proxy.adoc#UUPSUpgradeable-proxiableUUID--[`UUPSUpgradeable.proxiableUUID`]]
  895. :xref-UUPSUpgradeable-proxiableUUID--: xref:proxy.adoc#UUPSUpgradeable-proxiableUUID--
  896. :UUPSUpgradeable-upgradeTo: pass:normal[xref:proxy.adoc#UUPSUpgradeable-upgradeTo-address-[`UUPSUpgradeable.upgradeTo`]]
  897. :xref-UUPSUpgradeable-upgradeTo-address-: xref:proxy.adoc#UUPSUpgradeable-upgradeTo-address-
  898. :UUPSUpgradeable-upgradeToAndCall: pass:normal[xref:proxy.adoc#UUPSUpgradeable-upgradeToAndCall-address-bytes-[`UUPSUpgradeable.upgradeToAndCall`]]
  899. :xref-UUPSUpgradeable-upgradeToAndCall-address-bytes-: xref:proxy.adoc#UUPSUpgradeable-upgradeToAndCall-address-bytes-
  900. :UUPSUpgradeable-_authorizeUpgrade: pass:normal[xref:proxy.adoc#UUPSUpgradeable-_authorizeUpgrade-address-[`UUPSUpgradeable._authorizeUpgrade`]]
  901. :xref-UUPSUpgradeable-_authorizeUpgrade-address-: xref:proxy.adoc#UUPSUpgradeable-_authorizeUpgrade-address-
  902. :Pausable: pass:normal[xref:security.adoc#Pausable[`Pausable`]]
  903. :xref-Pausable: xref:security.adoc#Pausable
  904. :Pausable-whenNotPaused: pass:normal[xref:security.adoc#Pausable-whenNotPaused--[`Pausable.whenNotPaused`]]
  905. :xref-Pausable-whenNotPaused--: xref:security.adoc#Pausable-whenNotPaused--
  906. :Pausable-whenPaused: pass:normal[xref:security.adoc#Pausable-whenPaused--[`Pausable.whenPaused`]]
  907. :xref-Pausable-whenPaused--: xref:security.adoc#Pausable-whenPaused--
  908. :Pausable-constructor: pass:normal[xref:security.adoc#Pausable-constructor--[`Pausable.constructor`]]
  909. :xref-Pausable-constructor--: xref:security.adoc#Pausable-constructor--
  910. :Pausable-paused: pass:normal[xref:security.adoc#Pausable-paused--[`Pausable.paused`]]
  911. :xref-Pausable-paused--: xref:security.adoc#Pausable-paused--
  912. :Pausable-_pause: pass:normal[xref:security.adoc#Pausable-_pause--[`Pausable._pause`]]
  913. :xref-Pausable-_pause--: xref:security.adoc#Pausable-_pause--
  914. :Pausable-_unpause: pass:normal[xref:security.adoc#Pausable-_unpause--[`Pausable._unpause`]]
  915. :xref-Pausable-_unpause--: xref:security.adoc#Pausable-_unpause--
  916. :Pausable-Paused: pass:normal[xref:security.adoc#Pausable-Paused-address-[`Pausable.Paused`]]
  917. :xref-Pausable-Paused-address-: xref:security.adoc#Pausable-Paused-address-
  918. :Pausable-Unpaused: pass:normal[xref:security.adoc#Pausable-Unpaused-address-[`Pausable.Unpaused`]]
  919. :xref-Pausable-Unpaused-address-: xref:security.adoc#Pausable-Unpaused-address-
  920. :PullPayment: pass:normal[xref:security.adoc#PullPayment[`PullPayment`]]
  921. :xref-PullPayment: xref:security.adoc#PullPayment
  922. :PullPayment-constructor: pass:normal[xref:security.adoc#PullPayment-constructor--[`PullPayment.constructor`]]
  923. :xref-PullPayment-constructor--: xref:security.adoc#PullPayment-constructor--
  924. :PullPayment-withdrawPayments: pass:normal[xref:security.adoc#PullPayment-withdrawPayments-address-payable-[`PullPayment.withdrawPayments`]]
  925. :xref-PullPayment-withdrawPayments-address-payable-: xref:security.adoc#PullPayment-withdrawPayments-address-payable-
  926. :PullPayment-payments: pass:normal[xref:security.adoc#PullPayment-payments-address-[`PullPayment.payments`]]
  927. :xref-PullPayment-payments-address-: xref:security.adoc#PullPayment-payments-address-
  928. :PullPayment-_asyncTransfer: pass:normal[xref:security.adoc#PullPayment-_asyncTransfer-address-uint256-[`PullPayment._asyncTransfer`]]
  929. :xref-PullPayment-_asyncTransfer-address-uint256-: xref:security.adoc#PullPayment-_asyncTransfer-address-uint256-
  930. :ReentrancyGuard: pass:normal[xref:security.adoc#ReentrancyGuard[`ReentrancyGuard`]]
  931. :xref-ReentrancyGuard: xref:security.adoc#ReentrancyGuard
  932. :ReentrancyGuard-nonReentrant: pass:normal[xref:security.adoc#ReentrancyGuard-nonReentrant--[`ReentrancyGuard.nonReentrant`]]
  933. :xref-ReentrancyGuard-nonReentrant--: xref:security.adoc#ReentrancyGuard-nonReentrant--
  934. :ReentrancyGuard-constructor: pass:normal[xref:security.adoc#ReentrancyGuard-constructor--[`ReentrancyGuard.constructor`]]
  935. :xref-ReentrancyGuard-constructor--: xref:security.adoc#ReentrancyGuard-constructor--
  936. :Address: pass:normal[xref:utils.adoc#Address[`Address`]]
  937. :xref-Address: xref:utils.adoc#Address
  938. :Address-isContract: pass:normal[xref:utils.adoc#Address-isContract-address-[`Address.isContract`]]
  939. :xref-Address-isContract-address-: xref:utils.adoc#Address-isContract-address-
  940. :Address-sendValue: pass:normal[xref:utils.adoc#Address-sendValue-address-payable-uint256-[`Address.sendValue`]]
  941. :xref-Address-sendValue-address-payable-uint256-: xref:utils.adoc#Address-sendValue-address-payable-uint256-
  942. :Address-functionCall: pass:normal[xref:utils.adoc#Address-functionCall-address-bytes-[`Address.functionCall`]]
  943. :xref-Address-functionCall-address-bytes-: xref:utils.adoc#Address-functionCall-address-bytes-
  944. :Address-functionCall: pass:normal[xref:utils.adoc#Address-functionCall-address-bytes-string-[`Address.functionCall`]]
  945. :xref-Address-functionCall-address-bytes-string-: xref:utils.adoc#Address-functionCall-address-bytes-string-
  946. :Address-functionCallWithValue: pass:normal[xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-[`Address.functionCallWithValue`]]
  947. :xref-Address-functionCallWithValue-address-bytes-uint256-: xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-
  948. :Address-functionCallWithValue: pass:normal[xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-string-[`Address.functionCallWithValue`]]
  949. :xref-Address-functionCallWithValue-address-bytes-uint256-string-: xref:utils.adoc#Address-functionCallWithValue-address-bytes-uint256-string-
  950. :Address-functionStaticCall: pass:normal[xref:utils.adoc#Address-functionStaticCall-address-bytes-[`Address.functionStaticCall`]]
  951. :xref-Address-functionStaticCall-address-bytes-: xref:utils.adoc#Address-functionStaticCall-address-bytes-
  952. :Address-functionStaticCall: pass:normal[xref:utils.adoc#Address-functionStaticCall-address-bytes-string-[`Address.functionStaticCall`]]
  953. :xref-Address-functionStaticCall-address-bytes-string-: xref:utils.adoc#Address-functionStaticCall-address-bytes-string-
  954. :Address-functionDelegateCall: pass:normal[xref:utils.adoc#Address-functionDelegateCall-address-bytes-[`Address.functionDelegateCall`]]
  955. :xref-Address-functionDelegateCall-address-bytes-: xref:utils.adoc#Address-functionDelegateCall-address-bytes-
  956. :Address-functionDelegateCall: pass:normal[xref:utils.adoc#Address-functionDelegateCall-address-bytes-string-[`Address.functionDelegateCall`]]
  957. :xref-Address-functionDelegateCall-address-bytes-string-: xref:utils.adoc#Address-functionDelegateCall-address-bytes-string-
  958. :Address-verifyCallResult: pass:normal[xref:utils.adoc#Address-verifyCallResult-bool-bytes-string-[`Address.verifyCallResult`]]
  959. :xref-Address-verifyCallResult-bool-bytes-string-: xref:utils.adoc#Address-verifyCallResult-bool-bytes-string-
  960. :Arrays: pass:normal[xref:utils.adoc#Arrays[`Arrays`]]
  961. :xref-Arrays: xref:utils.adoc#Arrays
  962. :Arrays-findUpperBound: pass:normal[xref:utils.adoc#Arrays-findUpperBound-uint256---uint256-[`Arrays.findUpperBound`]]
  963. :xref-Arrays-findUpperBound-uint256---uint256-: xref:utils.adoc#Arrays-findUpperBound-uint256---uint256-
  964. :Base64: pass:normal[xref:utils.adoc#Base64[`Base64`]]
  965. :xref-Base64: xref:utils.adoc#Base64
  966. :Base64-_TABLE: pass:normal[xref:utils.adoc#Base64-_TABLE-string[`Base64._TABLE`]]
  967. :xref-Base64-_TABLE-string: xref:utils.adoc#Base64-_TABLE-string
  968. :Base64-encode: pass:normal[xref:utils.adoc#Base64-encode-bytes-[`Base64.encode`]]
  969. :xref-Base64-encode-bytes-: xref:utils.adoc#Base64-encode-bytes-
  970. :Checkpoints: pass:normal[xref:utils.adoc#Checkpoints[`Checkpoints`]]
  971. :xref-Checkpoints: xref:utils.adoc#Checkpoints
  972. :Checkpoints-latest: pass:normal[xref:utils.adoc#Checkpoints-latest-struct-Checkpoints-History-[`Checkpoints.latest`]]
  973. :xref-Checkpoints-latest-struct-Checkpoints-History-: xref:utils.adoc#Checkpoints-latest-struct-Checkpoints-History-
  974. :Checkpoints-getAtBlock: pass:normal[xref:utils.adoc#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-[`Checkpoints.getAtBlock`]]
  975. :xref-Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-: xref:utils.adoc#Checkpoints-getAtBlock-struct-Checkpoints-History-uint256-
  976. :Checkpoints-push: pass:normal[xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-uint256-[`Checkpoints.push`]]
  977. :xref-Checkpoints-push-struct-Checkpoints-History-uint256-: xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-uint256-
  978. :Checkpoints-push: pass:normal[xref:utils.adoc#Checkpoints-push-struct-Checkpoints-History-function--uint256-uint256--view-returns--uint256--uint256-[`Checkpoints.push`]]
  979. :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-
  980. :Checkpoints-Checkpoint: pass:normal[xref:utils.adoc#Checkpoints-Checkpoint[`Checkpoints.Checkpoint`]]
  981. :xref-Checkpoints-Checkpoint: xref:utils.adoc#Checkpoints-Checkpoint
  982. :Checkpoints-History: pass:normal[xref:utils.adoc#Checkpoints-History[`Checkpoints.History`]]
  983. :xref-Checkpoints-History: xref:utils.adoc#Checkpoints-History
  984. :Context: pass:normal[xref:utils.adoc#Context[`Context`]]
  985. :xref-Context: xref:utils.adoc#Context
  986. :Context-_msgSender: pass:normal[xref:utils.adoc#Context-_msgSender--[`Context._msgSender`]]
  987. :xref-Context-_msgSender--: xref:utils.adoc#Context-_msgSender--
  988. :Context-_msgData: pass:normal[xref:utils.adoc#Context-_msgData--[`Context._msgData`]]
  989. :xref-Context-_msgData--: xref:utils.adoc#Context-_msgData--
  990. :Counters: pass:normal[xref:utils.adoc#Counters[`Counters`]]
  991. :xref-Counters: xref:utils.adoc#Counters
  992. :Counters-current: pass:normal[xref:utils.adoc#Counters-current-struct-Counters-Counter-[`Counters.current`]]
  993. :xref-Counters-current-struct-Counters-Counter-: xref:utils.adoc#Counters-current-struct-Counters-Counter-
  994. :Counters-increment: pass:normal[xref:utils.adoc#Counters-increment-struct-Counters-Counter-[`Counters.increment`]]
  995. :xref-Counters-increment-struct-Counters-Counter-: xref:utils.adoc#Counters-increment-struct-Counters-Counter-
  996. :Counters-decrement: pass:normal[xref:utils.adoc#Counters-decrement-struct-Counters-Counter-[`Counters.decrement`]]
  997. :xref-Counters-decrement-struct-Counters-Counter-: xref:utils.adoc#Counters-decrement-struct-Counters-Counter-
  998. :Counters-reset: pass:normal[xref:utils.adoc#Counters-reset-struct-Counters-Counter-[`Counters.reset`]]
  999. :xref-Counters-reset-struct-Counters-Counter-: xref:utils.adoc#Counters-reset-struct-Counters-Counter-
  1000. :Counters-Counter: pass:normal[xref:utils.adoc#Counters-Counter[`Counters.Counter`]]
  1001. :xref-Counters-Counter: xref:utils.adoc#Counters-Counter
  1002. :Create2: pass:normal[xref:utils.adoc#Create2[`Create2`]]
  1003. :xref-Create2: xref:utils.adoc#Create2
  1004. :Create2-deploy: pass:normal[xref:utils.adoc#Create2-deploy-uint256-bytes32-bytes-[`Create2.deploy`]]
  1005. :xref-Create2-deploy-uint256-bytes32-bytes-: xref:utils.adoc#Create2-deploy-uint256-bytes32-bytes-
  1006. :Create2-computeAddress: pass:normal[xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-[`Create2.computeAddress`]]
  1007. :xref-Create2-computeAddress-bytes32-bytes32-: xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-
  1008. :Create2-computeAddress: pass:normal[xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-address-[`Create2.computeAddress`]]
  1009. :xref-Create2-computeAddress-bytes32-bytes32-address-: xref:utils.adoc#Create2-computeAddress-bytes32-bytes32-address-
  1010. :Multicall: pass:normal[xref:utils.adoc#Multicall[`Multicall`]]
  1011. :xref-Multicall: xref:utils.adoc#Multicall
  1012. :Multicall-multicall: pass:normal[xref:utils.adoc#Multicall-multicall-bytes---[`Multicall.multicall`]]
  1013. :xref-Multicall-multicall-bytes---: xref:utils.adoc#Multicall-multicall-bytes---
  1014. :StorageSlot: pass:normal[xref:utils.adoc#StorageSlot[`StorageSlot`]]
  1015. :xref-StorageSlot: xref:utils.adoc#StorageSlot
  1016. :StorageSlot-getAddressSlot: pass:normal[xref:utils.adoc#StorageSlot-getAddressSlot-bytes32-[`StorageSlot.getAddressSlot`]]
  1017. :xref-StorageSlot-getAddressSlot-bytes32-: xref:utils.adoc#StorageSlot-getAddressSlot-bytes32-
  1018. :StorageSlot-getBooleanSlot: pass:normal[xref:utils.adoc#StorageSlot-getBooleanSlot-bytes32-[`StorageSlot.getBooleanSlot`]]
  1019. :xref-StorageSlot-getBooleanSlot-bytes32-: xref:utils.adoc#StorageSlot-getBooleanSlot-bytes32-
  1020. :StorageSlot-getBytes32Slot: pass:normal[xref:utils.adoc#StorageSlot-getBytes32Slot-bytes32-[`StorageSlot.getBytes32Slot`]]
  1021. :xref-StorageSlot-getBytes32Slot-bytes32-: xref:utils.adoc#StorageSlot-getBytes32Slot-bytes32-
  1022. :StorageSlot-getUint256Slot: pass:normal[xref:utils.adoc#StorageSlot-getUint256Slot-bytes32-[`StorageSlot.getUint256Slot`]]
  1023. :xref-StorageSlot-getUint256Slot-bytes32-: xref:utils.adoc#StorageSlot-getUint256Slot-bytes32-
  1024. :StorageSlot-AddressSlot: pass:normal[xref:utils.adoc#StorageSlot-AddressSlot[`StorageSlot.AddressSlot`]]
  1025. :xref-StorageSlot-AddressSlot: xref:utils.adoc#StorageSlot-AddressSlot
  1026. :StorageSlot-BooleanSlot: pass:normal[xref:utils.adoc#StorageSlot-BooleanSlot[`StorageSlot.BooleanSlot`]]
  1027. :xref-StorageSlot-BooleanSlot: xref:utils.adoc#StorageSlot-BooleanSlot
  1028. :StorageSlot-Bytes32Slot: pass:normal[xref:utils.adoc#StorageSlot-Bytes32Slot[`StorageSlot.Bytes32Slot`]]
  1029. :xref-StorageSlot-Bytes32Slot: xref:utils.adoc#StorageSlot-Bytes32Slot
  1030. :StorageSlot-Uint256Slot: pass:normal[xref:utils.adoc#StorageSlot-Uint256Slot[`StorageSlot.Uint256Slot`]]
  1031. :xref-StorageSlot-Uint256Slot: xref:utils.adoc#StorageSlot-Uint256Slot
  1032. :Strings: pass:normal[xref:utils.adoc#Strings[`Strings`]]
  1033. :xref-Strings: xref:utils.adoc#Strings
  1034. :Strings-toString: pass:normal[xref:utils.adoc#Strings-toString-uint256-[`Strings.toString`]]
  1035. :xref-Strings-toString-uint256-: xref:utils.adoc#Strings-toString-uint256-
  1036. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-uint256-[`Strings.toHexString`]]
  1037. :xref-Strings-toHexString-uint256-: xref:utils.adoc#Strings-toHexString-uint256-
  1038. :Strings-toHexString: pass:normal[xref:utils.adoc#Strings-toHexString-uint256-uint256-[`Strings.toHexString`]]
  1039. :xref-Strings-toHexString-uint256-uint256-: xref:utils.adoc#Strings-toHexString-uint256-uint256-
  1040. :Timers: pass:normal[xref:utils.adoc#Timers[`Timers`]]
  1041. :xref-Timers: xref:utils.adoc#Timers
  1042. :Timers-getDeadline: pass:normal[xref:utils.adoc#Timers-getDeadline-struct-Timers-Timestamp-[`Timers.getDeadline`]]
  1043. :xref-Timers-getDeadline-struct-Timers-Timestamp-: xref:utils.adoc#Timers-getDeadline-struct-Timers-Timestamp-
  1044. :Timers-setDeadline: pass:normal[xref:utils.adoc#Timers-setDeadline-struct-Timers-Timestamp-uint64-[`Timers.setDeadline`]]
  1045. :xref-Timers-setDeadline-struct-Timers-Timestamp-uint64-: xref:utils.adoc#Timers-setDeadline-struct-Timers-Timestamp-uint64-
  1046. :Timers-reset: pass:normal[xref:utils.adoc#Timers-reset-struct-Timers-Timestamp-[`Timers.reset`]]
  1047. :xref-Timers-reset-struct-Timers-Timestamp-: xref:utils.adoc#Timers-reset-struct-Timers-Timestamp-
  1048. :Timers-isUnset: pass:normal[xref:utils.adoc#Timers-isUnset-struct-Timers-Timestamp-[`Timers.isUnset`]]
  1049. :xref-Timers-isUnset-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isUnset-struct-Timers-Timestamp-
  1050. :Timers-isStarted: pass:normal[xref:utils.adoc#Timers-isStarted-struct-Timers-Timestamp-[`Timers.isStarted`]]
  1051. :xref-Timers-isStarted-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isStarted-struct-Timers-Timestamp-
  1052. :Timers-isPending: pass:normal[xref:utils.adoc#Timers-isPending-struct-Timers-Timestamp-[`Timers.isPending`]]
  1053. :xref-Timers-isPending-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isPending-struct-Timers-Timestamp-
  1054. :Timers-isExpired: pass:normal[xref:utils.adoc#Timers-isExpired-struct-Timers-Timestamp-[`Timers.isExpired`]]
  1055. :xref-Timers-isExpired-struct-Timers-Timestamp-: xref:utils.adoc#Timers-isExpired-struct-Timers-Timestamp-
  1056. :Timers-getDeadline: pass:normal[xref:utils.adoc#Timers-getDeadline-struct-Timers-BlockNumber-[`Timers.getDeadline`]]
  1057. :xref-Timers-getDeadline-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-getDeadline-struct-Timers-BlockNumber-
  1058. :Timers-setDeadline: pass:normal[xref:utils.adoc#Timers-setDeadline-struct-Timers-BlockNumber-uint64-[`Timers.setDeadline`]]
  1059. :xref-Timers-setDeadline-struct-Timers-BlockNumber-uint64-: xref:utils.adoc#Timers-setDeadline-struct-Timers-BlockNumber-uint64-
  1060. :Timers-reset: pass:normal[xref:utils.adoc#Timers-reset-struct-Timers-BlockNumber-[`Timers.reset`]]
  1061. :xref-Timers-reset-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-reset-struct-Timers-BlockNumber-
  1062. :Timers-isUnset: pass:normal[xref:utils.adoc#Timers-isUnset-struct-Timers-BlockNumber-[`Timers.isUnset`]]
  1063. :xref-Timers-isUnset-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isUnset-struct-Timers-BlockNumber-
  1064. :Timers-isStarted: pass:normal[xref:utils.adoc#Timers-isStarted-struct-Timers-BlockNumber-[`Timers.isStarted`]]
  1065. :xref-Timers-isStarted-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isStarted-struct-Timers-BlockNumber-
  1066. :Timers-isPending: pass:normal[xref:utils.adoc#Timers-isPending-struct-Timers-BlockNumber-[`Timers.isPending`]]
  1067. :xref-Timers-isPending-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isPending-struct-Timers-BlockNumber-
  1068. :Timers-isExpired: pass:normal[xref:utils.adoc#Timers-isExpired-struct-Timers-BlockNumber-[`Timers.isExpired`]]
  1069. :xref-Timers-isExpired-struct-Timers-BlockNumber-: xref:utils.adoc#Timers-isExpired-struct-Timers-BlockNumber-
  1070. :Timers-Timestamp: pass:normal[xref:utils.adoc#Timers-Timestamp[`Timers.Timestamp`]]
  1071. :xref-Timers-Timestamp: xref:utils.adoc#Timers-Timestamp
  1072. :Timers-BlockNumber: pass:normal[xref:utils.adoc#Timers-BlockNumber[`Timers.BlockNumber`]]
  1073. :xref-Timers-BlockNumber: xref:utils.adoc#Timers-BlockNumber
  1074. :ECDSA: pass:normal[xref:utils.adoc#ECDSA[`ECDSA`]]
  1075. :xref-ECDSA: xref:utils.adoc#ECDSA
  1076. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes-[`ECDSA.tryRecover`]]
  1077. :xref-ECDSA-tryRecover-bytes32-bytes-: xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes-
  1078. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-bytes-[`ECDSA.recover`]]
  1079. :xref-ECDSA-recover-bytes32-bytes-: xref:utils.adoc#ECDSA-recover-bytes32-bytes-
  1080. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes32-bytes32-[`ECDSA.tryRecover`]]
  1081. :xref-ECDSA-tryRecover-bytes32-bytes32-bytes32-: xref:utils.adoc#ECDSA-tryRecover-bytes32-bytes32-bytes32-
  1082. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-bytes32-bytes32-[`ECDSA.recover`]]
  1083. :xref-ECDSA-recover-bytes32-bytes32-bytes32-: xref:utils.adoc#ECDSA-recover-bytes32-bytes32-bytes32-
  1084. :ECDSA-tryRecover: pass:normal[xref:utils.adoc#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-[`ECDSA.tryRecover`]]
  1085. :xref-ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-: xref:utils.adoc#ECDSA-tryRecover-bytes32-uint8-bytes32-bytes32-
  1086. :ECDSA-recover: pass:normal[xref:utils.adoc#ECDSA-recover-bytes32-uint8-bytes32-bytes32-[`ECDSA.recover`]]
  1087. :xref-ECDSA-recover-bytes32-uint8-bytes32-bytes32-: xref:utils.adoc#ECDSA-recover-bytes32-uint8-bytes32-bytes32-
  1088. :ECDSA-toEthSignedMessageHash: pass:normal[xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes32-[`ECDSA.toEthSignedMessageHash`]]
  1089. :xref-ECDSA-toEthSignedMessageHash-bytes32-: xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes32-
  1090. :ECDSA-toEthSignedMessageHash: pass:normal[xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes-[`ECDSA.toEthSignedMessageHash`]]
  1091. :xref-ECDSA-toEthSignedMessageHash-bytes-: xref:utils.adoc#ECDSA-toEthSignedMessageHash-bytes-
  1092. :ECDSA-toTypedDataHash: pass:normal[xref:utils.adoc#ECDSA-toTypedDataHash-bytes32-bytes32-[`ECDSA.toTypedDataHash`]]
  1093. :xref-ECDSA-toTypedDataHash-bytes32-bytes32-: xref:utils.adoc#ECDSA-toTypedDataHash-bytes32-bytes32-
  1094. :ECDSA-RecoverError: pass:normal[xref:utils.adoc#ECDSA-RecoverError[`ECDSA.RecoverError`]]
  1095. :xref-ECDSA-RecoverError: xref:utils.adoc#ECDSA-RecoverError
  1096. :MerkleProof: pass:normal[xref:utils.adoc#MerkleProof[`MerkleProof`]]
  1097. :xref-MerkleProof: xref:utils.adoc#MerkleProof
  1098. :MerkleProof-verify: pass:normal[xref:utils.adoc#MerkleProof-verify-bytes32---bytes32-bytes32-[`MerkleProof.verify`]]
  1099. :xref-MerkleProof-verify-bytes32---bytes32-bytes32-: xref:utils.adoc#MerkleProof-verify-bytes32---bytes32-bytes32-
  1100. :MerkleProof-processProof: pass:normal[xref:utils.adoc#MerkleProof-processProof-bytes32---bytes32-[`MerkleProof.processProof`]]
  1101. :xref-MerkleProof-processProof-bytes32---bytes32-: xref:utils.adoc#MerkleProof-processProof-bytes32---bytes32-
  1102. :SignatureChecker: pass:normal[xref:utils.adoc#SignatureChecker[`SignatureChecker`]]
  1103. :xref-SignatureChecker: xref:utils.adoc#SignatureChecker
  1104. :SignatureChecker-isValidSignatureNow: pass:normal[xref:utils.adoc#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-[`SignatureChecker.isValidSignatureNow`]]
  1105. :xref-SignatureChecker-isValidSignatureNow-address-bytes32-bytes-: xref:utils.adoc#SignatureChecker-isValidSignatureNow-address-bytes32-bytes-
  1106. :EIP712: pass:normal[xref:utils.adoc#EIP712[`EIP712`]]
  1107. :xref-EIP712: xref:utils.adoc#EIP712
  1108. :EIP712-constructor: pass:normal[xref:utils.adoc#EIP712-constructor-string-string-[`EIP712.constructor`]]
  1109. :xref-EIP712-constructor-string-string-: xref:utils.adoc#EIP712-constructor-string-string-
  1110. :EIP712-_domainSeparatorV4: pass:normal[xref:utils.adoc#EIP712-_domainSeparatorV4--[`EIP712._domainSeparatorV4`]]
  1111. :xref-EIP712-_domainSeparatorV4--: xref:utils.adoc#EIP712-_domainSeparatorV4--
  1112. :EIP712-_hashTypedDataV4: pass:normal[xref:utils.adoc#EIP712-_hashTypedDataV4-bytes32-[`EIP712._hashTypedDataV4`]]
  1113. :xref-EIP712-_hashTypedDataV4-bytes32-: xref:utils.adoc#EIP712-_hashTypedDataV4-bytes32-
  1114. :ConditionalEscrow: pass:normal[xref:utils.adoc#ConditionalEscrow[`ConditionalEscrow`]]
  1115. :xref-ConditionalEscrow: xref:utils.adoc#ConditionalEscrow
  1116. :ConditionalEscrow-withdrawalAllowed: pass:normal[xref:utils.adoc#ConditionalEscrow-withdrawalAllowed-address-[`ConditionalEscrow.withdrawalAllowed`]]
  1117. :xref-ConditionalEscrow-withdrawalAllowed-address-: xref:utils.adoc#ConditionalEscrow-withdrawalAllowed-address-
  1118. :ConditionalEscrow-withdraw: pass:normal[xref:utils.adoc#ConditionalEscrow-withdraw-address-payable-[`ConditionalEscrow.withdraw`]]
  1119. :xref-ConditionalEscrow-withdraw-address-payable-: xref:utils.adoc#ConditionalEscrow-withdraw-address-payable-
  1120. :Escrow: pass:normal[xref:utils.adoc#Escrow[`Escrow`]]
  1121. :xref-Escrow: xref:utils.adoc#Escrow
  1122. :Escrow-depositsOf: pass:normal[xref:utils.adoc#Escrow-depositsOf-address-[`Escrow.depositsOf`]]
  1123. :xref-Escrow-depositsOf-address-: xref:utils.adoc#Escrow-depositsOf-address-
  1124. :Escrow-deposit: pass:normal[xref:utils.adoc#Escrow-deposit-address-[`Escrow.deposit`]]
  1125. :xref-Escrow-deposit-address-: xref:utils.adoc#Escrow-deposit-address-
  1126. :Escrow-withdraw: pass:normal[xref:utils.adoc#Escrow-withdraw-address-payable-[`Escrow.withdraw`]]
  1127. :xref-Escrow-withdraw-address-payable-: xref:utils.adoc#Escrow-withdraw-address-payable-
  1128. :Escrow-Deposited: pass:normal[xref:utils.adoc#Escrow-Deposited-address-uint256-[`Escrow.Deposited`]]
  1129. :xref-Escrow-Deposited-address-uint256-: xref:utils.adoc#Escrow-Deposited-address-uint256-
  1130. :Escrow-Withdrawn: pass:normal[xref:utils.adoc#Escrow-Withdrawn-address-uint256-[`Escrow.Withdrawn`]]
  1131. :xref-Escrow-Withdrawn-address-uint256-: xref:utils.adoc#Escrow-Withdrawn-address-uint256-
  1132. :RefundEscrow: pass:normal[xref:utils.adoc#RefundEscrow[`RefundEscrow`]]
  1133. :xref-RefundEscrow: xref:utils.adoc#RefundEscrow
  1134. :RefundEscrow-constructor: pass:normal[xref:utils.adoc#RefundEscrow-constructor-address-payable-[`RefundEscrow.constructor`]]
  1135. :xref-RefundEscrow-constructor-address-payable-: xref:utils.adoc#RefundEscrow-constructor-address-payable-
  1136. :RefundEscrow-state: pass:normal[xref:utils.adoc#RefundEscrow-state--[`RefundEscrow.state`]]
  1137. :xref-RefundEscrow-state--: xref:utils.adoc#RefundEscrow-state--
  1138. :RefundEscrow-beneficiary: pass:normal[xref:utils.adoc#RefundEscrow-beneficiary--[`RefundEscrow.beneficiary`]]
  1139. :xref-RefundEscrow-beneficiary--: xref:utils.adoc#RefundEscrow-beneficiary--
  1140. :RefundEscrow-deposit: pass:normal[xref:utils.adoc#RefundEscrow-deposit-address-[`RefundEscrow.deposit`]]
  1141. :xref-RefundEscrow-deposit-address-: xref:utils.adoc#RefundEscrow-deposit-address-
  1142. :RefundEscrow-close: pass:normal[xref:utils.adoc#RefundEscrow-close--[`RefundEscrow.close`]]
  1143. :xref-RefundEscrow-close--: xref:utils.adoc#RefundEscrow-close--
  1144. :RefundEscrow-enableRefunds: pass:normal[xref:utils.adoc#RefundEscrow-enableRefunds--[`RefundEscrow.enableRefunds`]]
  1145. :xref-RefundEscrow-enableRefunds--: xref:utils.adoc#RefundEscrow-enableRefunds--
  1146. :RefundEscrow-beneficiaryWithdraw: pass:normal[xref:utils.adoc#RefundEscrow-beneficiaryWithdraw--[`RefundEscrow.beneficiaryWithdraw`]]
  1147. :xref-RefundEscrow-beneficiaryWithdraw--: xref:utils.adoc#RefundEscrow-beneficiaryWithdraw--
  1148. :RefundEscrow-withdrawalAllowed: pass:normal[xref:utils.adoc#RefundEscrow-withdrawalAllowed-address-[`RefundEscrow.withdrawalAllowed`]]
  1149. :xref-RefundEscrow-withdrawalAllowed-address-: xref:utils.adoc#RefundEscrow-withdrawalAllowed-address-
  1150. :RefundEscrow-RefundsClosed: pass:normal[xref:utils.adoc#RefundEscrow-RefundsClosed--[`RefundEscrow.RefundsClosed`]]
  1151. :xref-RefundEscrow-RefundsClosed--: xref:utils.adoc#RefundEscrow-RefundsClosed--
  1152. :RefundEscrow-RefundsEnabled: pass:normal[xref:utils.adoc#RefundEscrow-RefundsEnabled--[`RefundEscrow.RefundsEnabled`]]
  1153. :xref-RefundEscrow-RefundsEnabled--: xref:utils.adoc#RefundEscrow-RefundsEnabled--
  1154. :RefundEscrow-State: pass:normal[xref:utils.adoc#RefundEscrow-State[`RefundEscrow.State`]]
  1155. :xref-RefundEscrow-State: xref:utils.adoc#RefundEscrow-State
  1156. :ERC165: pass:normal[xref:utils.adoc#ERC165[`ERC165`]]
  1157. :xref-ERC165: xref:utils.adoc#ERC165
  1158. :ERC165-supportsInterface: pass:normal[xref:utils.adoc#ERC165-supportsInterface-bytes4-[`ERC165.supportsInterface`]]
  1159. :xref-ERC165-supportsInterface-bytes4-: xref:utils.adoc#ERC165-supportsInterface-bytes4-
  1160. :ERC165Checker: pass:normal[xref:utils.adoc#ERC165Checker[`ERC165Checker`]]
  1161. :xref-ERC165Checker: xref:utils.adoc#ERC165Checker
  1162. :ERC165Checker-supportsERC165: pass:normal[xref:utils.adoc#ERC165Checker-supportsERC165-address-[`ERC165Checker.supportsERC165`]]
  1163. :xref-ERC165Checker-supportsERC165-address-: xref:utils.adoc#ERC165Checker-supportsERC165-address-
  1164. :ERC165Checker-supportsInterface: pass:normal[xref:utils.adoc#ERC165Checker-supportsInterface-address-bytes4-[`ERC165Checker.supportsInterface`]]
  1165. :xref-ERC165Checker-supportsInterface-address-bytes4-: xref:utils.adoc#ERC165Checker-supportsInterface-address-bytes4-
  1166. :ERC165Checker-getSupportedInterfaces: pass:normal[xref:utils.adoc#ERC165Checker-getSupportedInterfaces-address-bytes4---[`ERC165Checker.getSupportedInterfaces`]]
  1167. :xref-ERC165Checker-getSupportedInterfaces-address-bytes4---: xref:utils.adoc#ERC165Checker-getSupportedInterfaces-address-bytes4---
  1168. :ERC165Checker-supportsAllInterfaces: pass:normal[xref:utils.adoc#ERC165Checker-supportsAllInterfaces-address-bytes4---[`ERC165Checker.supportsAllInterfaces`]]
  1169. :xref-ERC165Checker-supportsAllInterfaces-address-bytes4---: xref:utils.adoc#ERC165Checker-supportsAllInterfaces-address-bytes4---
  1170. :ERC165Storage: pass:normal[xref:utils.adoc#ERC165Storage[`ERC165Storage`]]
  1171. :xref-ERC165Storage: xref:utils.adoc#ERC165Storage
  1172. :ERC165Storage-supportsInterface: pass:normal[xref:utils.adoc#ERC165Storage-supportsInterface-bytes4-[`ERC165Storage.supportsInterface`]]
  1173. :xref-ERC165Storage-supportsInterface-bytes4-: xref:utils.adoc#ERC165Storage-supportsInterface-bytes4-
  1174. :ERC165Storage-_registerInterface: pass:normal[xref:utils.adoc#ERC165Storage-_registerInterface-bytes4-[`ERC165Storage._registerInterface`]]
  1175. :xref-ERC165Storage-_registerInterface-bytes4-: xref:utils.adoc#ERC165Storage-_registerInterface-bytes4-
  1176. :ERC1820Implementer: pass:normal[xref:utils.adoc#ERC1820Implementer[`ERC1820Implementer`]]
  1177. :xref-ERC1820Implementer: xref:utils.adoc#ERC1820Implementer
  1178. :ERC1820Implementer-canImplementInterfaceForAddress: pass:normal[xref:utils.adoc#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`ERC1820Implementer.canImplementInterfaceForAddress`]]
  1179. :xref-ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-: xref:utils.adoc#ERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-
  1180. :ERC1820Implementer-_registerInterfaceForAddress: pass:normal[xref:utils.adoc#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-[`ERC1820Implementer._registerInterfaceForAddress`]]
  1181. :xref-ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-: xref:utils.adoc#ERC1820Implementer-_registerInterfaceForAddress-bytes32-address-
  1182. :IERC165: pass:normal[xref:utils.adoc#IERC165[`IERC165`]]
  1183. :xref-IERC165: xref:utils.adoc#IERC165
  1184. :IERC165-supportsInterface: pass:normal[xref:utils.adoc#IERC165-supportsInterface-bytes4-[`IERC165.supportsInterface`]]
  1185. :xref-IERC165-supportsInterface-bytes4-: xref:utils.adoc#IERC165-supportsInterface-bytes4-
  1186. :IERC1820Implementer: pass:normal[xref:utils.adoc#IERC1820Implementer[`IERC1820Implementer`]]
  1187. :xref-IERC1820Implementer: xref:utils.adoc#IERC1820Implementer
  1188. :IERC1820Implementer-canImplementInterfaceForAddress: pass:normal[xref:utils.adoc#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-[`IERC1820Implementer.canImplementInterfaceForAddress`]]
  1189. :xref-IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-: xref:utils.adoc#IERC1820Implementer-canImplementInterfaceForAddress-bytes32-address-
  1190. :IERC1820Registry: pass:normal[xref:utils.adoc#IERC1820Registry[`IERC1820Registry`]]
  1191. :xref-IERC1820Registry: xref:utils.adoc#IERC1820Registry
  1192. :IERC1820Registry-setManager: pass:normal[xref:utils.adoc#IERC1820Registry-setManager-address-address-[`IERC1820Registry.setManager`]]
  1193. :xref-IERC1820Registry-setManager-address-address-: xref:utils.adoc#IERC1820Registry-setManager-address-address-
  1194. :IERC1820Registry-getManager: pass:normal[xref:utils.adoc#IERC1820Registry-getManager-address-[`IERC1820Registry.getManager`]]
  1195. :xref-IERC1820Registry-getManager-address-: xref:utils.adoc#IERC1820Registry-getManager-address-
  1196. :IERC1820Registry-setInterfaceImplementer: pass:normal[xref:utils.adoc#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-[`IERC1820Registry.setInterfaceImplementer`]]
  1197. :xref-IERC1820Registry-setInterfaceImplementer-address-bytes32-address-: xref:utils.adoc#IERC1820Registry-setInterfaceImplementer-address-bytes32-address-
  1198. :IERC1820Registry-getInterfaceImplementer: pass:normal[xref:utils.adoc#IERC1820Registry-getInterfaceImplementer-address-bytes32-[`IERC1820Registry.getInterfaceImplementer`]]
  1199. :xref-IERC1820Registry-getInterfaceImplementer-address-bytes32-: xref:utils.adoc#IERC1820Registry-getInterfaceImplementer-address-bytes32-
  1200. :IERC1820Registry-interfaceHash: pass:normal[xref:utils.adoc#IERC1820Registry-interfaceHash-string-[`IERC1820Registry.interfaceHash`]]
  1201. :xref-IERC1820Registry-interfaceHash-string-: xref:utils.adoc#IERC1820Registry-interfaceHash-string-
  1202. :IERC1820Registry-updateERC165Cache: pass:normal[xref:utils.adoc#IERC1820Registry-updateERC165Cache-address-bytes4-[`IERC1820Registry.updateERC165Cache`]]
  1203. :xref-IERC1820Registry-updateERC165Cache-address-bytes4-: xref:utils.adoc#IERC1820Registry-updateERC165Cache-address-bytes4-
  1204. :IERC1820Registry-implementsERC165Interface: pass:normal[xref:utils.adoc#IERC1820Registry-implementsERC165Interface-address-bytes4-[`IERC1820Registry.implementsERC165Interface`]]
  1205. :xref-IERC1820Registry-implementsERC165Interface-address-bytes4-: xref:utils.adoc#IERC1820Registry-implementsERC165Interface-address-bytes4-
  1206. :IERC1820Registry-implementsERC165InterfaceNoCache: pass:normal[xref:utils.adoc#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-[`IERC1820Registry.implementsERC165InterfaceNoCache`]]
  1207. :xref-IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-: xref:utils.adoc#IERC1820Registry-implementsERC165InterfaceNoCache-address-bytes4-
  1208. :IERC1820Registry-InterfaceImplementerSet: pass:normal[xref:utils.adoc#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-[`IERC1820Registry.InterfaceImplementerSet`]]
  1209. :xref-IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-: xref:utils.adoc#IERC1820Registry-InterfaceImplementerSet-address-bytes32-address-
  1210. :IERC1820Registry-ManagerChanged: pass:normal[xref:utils.adoc#IERC1820Registry-ManagerChanged-address-address-[`IERC1820Registry.ManagerChanged`]]
  1211. :xref-IERC1820Registry-ManagerChanged-address-address-: xref:utils.adoc#IERC1820Registry-ManagerChanged-address-address-
  1212. :Math: pass:normal[xref:utils.adoc#Math[`Math`]]
  1213. :xref-Math: xref:utils.adoc#Math
  1214. :Math-max: pass:normal[xref:utils.adoc#Math-max-uint256-uint256-[`Math.max`]]
  1215. :xref-Math-max-uint256-uint256-: xref:utils.adoc#Math-max-uint256-uint256-
  1216. :Math-min: pass:normal[xref:utils.adoc#Math-min-uint256-uint256-[`Math.min`]]
  1217. :xref-Math-min-uint256-uint256-: xref:utils.adoc#Math-min-uint256-uint256-
  1218. :Math-average: pass:normal[xref:utils.adoc#Math-average-uint256-uint256-[`Math.average`]]
  1219. :xref-Math-average-uint256-uint256-: xref:utils.adoc#Math-average-uint256-uint256-
  1220. :Math-ceilDiv: pass:normal[xref:utils.adoc#Math-ceilDiv-uint256-uint256-[`Math.ceilDiv`]]
  1221. :xref-Math-ceilDiv-uint256-uint256-: xref:utils.adoc#Math-ceilDiv-uint256-uint256-
  1222. :SafeCast: pass:normal[xref:utils.adoc#SafeCast[`SafeCast`]]
  1223. :xref-SafeCast: xref:utils.adoc#SafeCast
  1224. :SafeCast-toUint224: pass:normal[xref:utils.adoc#SafeCast-toUint224-uint256-[`SafeCast.toUint224`]]
  1225. :xref-SafeCast-toUint224-uint256-: xref:utils.adoc#SafeCast-toUint224-uint256-
  1226. :SafeCast-toUint128: pass:normal[xref:utils.adoc#SafeCast-toUint128-uint256-[`SafeCast.toUint128`]]
  1227. :xref-SafeCast-toUint128-uint256-: xref:utils.adoc#SafeCast-toUint128-uint256-
  1228. :SafeCast-toUint96: pass:normal[xref:utils.adoc#SafeCast-toUint96-uint256-[`SafeCast.toUint96`]]
  1229. :xref-SafeCast-toUint96-uint256-: xref:utils.adoc#SafeCast-toUint96-uint256-
  1230. :SafeCast-toUint64: pass:normal[xref:utils.adoc#SafeCast-toUint64-uint256-[`SafeCast.toUint64`]]
  1231. :xref-SafeCast-toUint64-uint256-: xref:utils.adoc#SafeCast-toUint64-uint256-
  1232. :SafeCast-toUint32: pass:normal[xref:utils.adoc#SafeCast-toUint32-uint256-[`SafeCast.toUint32`]]
  1233. :xref-SafeCast-toUint32-uint256-: xref:utils.adoc#SafeCast-toUint32-uint256-
  1234. :SafeCast-toUint16: pass:normal[xref:utils.adoc#SafeCast-toUint16-uint256-[`SafeCast.toUint16`]]
  1235. :xref-SafeCast-toUint16-uint256-: xref:utils.adoc#SafeCast-toUint16-uint256-
  1236. :SafeCast-toUint8: pass:normal[xref:utils.adoc#SafeCast-toUint8-uint256-[`SafeCast.toUint8`]]
  1237. :xref-SafeCast-toUint8-uint256-: xref:utils.adoc#SafeCast-toUint8-uint256-
  1238. :SafeCast-toUint256: pass:normal[xref:utils.adoc#SafeCast-toUint256-int256-[`SafeCast.toUint256`]]
  1239. :xref-SafeCast-toUint256-int256-: xref:utils.adoc#SafeCast-toUint256-int256-
  1240. :SafeCast-toInt128: pass:normal[xref:utils.adoc#SafeCast-toInt128-int256-[`SafeCast.toInt128`]]
  1241. :xref-SafeCast-toInt128-int256-: xref:utils.adoc#SafeCast-toInt128-int256-
  1242. :SafeCast-toInt64: pass:normal[xref:utils.adoc#SafeCast-toInt64-int256-[`SafeCast.toInt64`]]
  1243. :xref-SafeCast-toInt64-int256-: xref:utils.adoc#SafeCast-toInt64-int256-
  1244. :SafeCast-toInt32: pass:normal[xref:utils.adoc#SafeCast-toInt32-int256-[`SafeCast.toInt32`]]
  1245. :xref-SafeCast-toInt32-int256-: xref:utils.adoc#SafeCast-toInt32-int256-
  1246. :SafeCast-toInt16: pass:normal[xref:utils.adoc#SafeCast-toInt16-int256-[`SafeCast.toInt16`]]
  1247. :xref-SafeCast-toInt16-int256-: xref:utils.adoc#SafeCast-toInt16-int256-
  1248. :SafeCast-toInt8: pass:normal[xref:utils.adoc#SafeCast-toInt8-int256-[`SafeCast.toInt8`]]
  1249. :xref-SafeCast-toInt8-int256-: xref:utils.adoc#SafeCast-toInt8-int256-
  1250. :SafeCast-toInt256: pass:normal[xref:utils.adoc#SafeCast-toInt256-uint256-[`SafeCast.toInt256`]]
  1251. :xref-SafeCast-toInt256-uint256-: xref:utils.adoc#SafeCast-toInt256-uint256-
  1252. :SafeMath: pass:normal[xref:utils.adoc#SafeMath[`SafeMath`]]
  1253. :xref-SafeMath: xref:utils.adoc#SafeMath
  1254. :SafeMath-tryAdd: pass:normal[xref:utils.adoc#SafeMath-tryAdd-uint256-uint256-[`SafeMath.tryAdd`]]
  1255. :xref-SafeMath-tryAdd-uint256-uint256-: xref:utils.adoc#SafeMath-tryAdd-uint256-uint256-
  1256. :SafeMath-trySub: pass:normal[xref:utils.adoc#SafeMath-trySub-uint256-uint256-[`SafeMath.trySub`]]
  1257. :xref-SafeMath-trySub-uint256-uint256-: xref:utils.adoc#SafeMath-trySub-uint256-uint256-
  1258. :SafeMath-tryMul: pass:normal[xref:utils.adoc#SafeMath-tryMul-uint256-uint256-[`SafeMath.tryMul`]]
  1259. :xref-SafeMath-tryMul-uint256-uint256-: xref:utils.adoc#SafeMath-tryMul-uint256-uint256-
  1260. :SafeMath-tryDiv: pass:normal[xref:utils.adoc#SafeMath-tryDiv-uint256-uint256-[`SafeMath.tryDiv`]]
  1261. :xref-SafeMath-tryDiv-uint256-uint256-: xref:utils.adoc#SafeMath-tryDiv-uint256-uint256-
  1262. :SafeMath-tryMod: pass:normal[xref:utils.adoc#SafeMath-tryMod-uint256-uint256-[`SafeMath.tryMod`]]
  1263. :xref-SafeMath-tryMod-uint256-uint256-: xref:utils.adoc#SafeMath-tryMod-uint256-uint256-
  1264. :SafeMath-add: pass:normal[xref:utils.adoc#SafeMath-add-uint256-uint256-[`SafeMath.add`]]
  1265. :xref-SafeMath-add-uint256-uint256-: xref:utils.adoc#SafeMath-add-uint256-uint256-
  1266. :SafeMath-sub: pass:normal[xref:utils.adoc#SafeMath-sub-uint256-uint256-[`SafeMath.sub`]]
  1267. :xref-SafeMath-sub-uint256-uint256-: xref:utils.adoc#SafeMath-sub-uint256-uint256-
  1268. :SafeMath-mul: pass:normal[xref:utils.adoc#SafeMath-mul-uint256-uint256-[`SafeMath.mul`]]
  1269. :xref-SafeMath-mul-uint256-uint256-: xref:utils.adoc#SafeMath-mul-uint256-uint256-
  1270. :SafeMath-div: pass:normal[xref:utils.adoc#SafeMath-div-uint256-uint256-[`SafeMath.div`]]
  1271. :xref-SafeMath-div-uint256-uint256-: xref:utils.adoc#SafeMath-div-uint256-uint256-
  1272. :SafeMath-mod: pass:normal[xref:utils.adoc#SafeMath-mod-uint256-uint256-[`SafeMath.mod`]]
  1273. :xref-SafeMath-mod-uint256-uint256-: xref:utils.adoc#SafeMath-mod-uint256-uint256-
  1274. :SafeMath-sub: pass:normal[xref:utils.adoc#SafeMath-sub-uint256-uint256-string-[`SafeMath.sub`]]
  1275. :xref-SafeMath-sub-uint256-uint256-string-: xref:utils.adoc#SafeMath-sub-uint256-uint256-string-
  1276. :SafeMath-div: pass:normal[xref:utils.adoc#SafeMath-div-uint256-uint256-string-[`SafeMath.div`]]
  1277. :xref-SafeMath-div-uint256-uint256-string-: xref:utils.adoc#SafeMath-div-uint256-uint256-string-
  1278. :SafeMath-mod: pass:normal[xref:utils.adoc#SafeMath-mod-uint256-uint256-string-[`SafeMath.mod`]]
  1279. :xref-SafeMath-mod-uint256-uint256-string-: xref:utils.adoc#SafeMath-mod-uint256-uint256-string-
  1280. :SignedMath: pass:normal[xref:utils.adoc#SignedMath[`SignedMath`]]
  1281. :xref-SignedMath: xref:utils.adoc#SignedMath
  1282. :SignedMath-max: pass:normal[xref:utils.adoc#SignedMath-max-int256-int256-[`SignedMath.max`]]
  1283. :xref-SignedMath-max-int256-int256-: xref:utils.adoc#SignedMath-max-int256-int256-
  1284. :SignedMath-min: pass:normal[xref:utils.adoc#SignedMath-min-int256-int256-[`SignedMath.min`]]
  1285. :xref-SignedMath-min-int256-int256-: xref:utils.adoc#SignedMath-min-int256-int256-
  1286. :SignedMath-average: pass:normal[xref:utils.adoc#SignedMath-average-int256-int256-[`SignedMath.average`]]
  1287. :xref-SignedMath-average-int256-int256-: xref:utils.adoc#SignedMath-average-int256-int256-
  1288. :SignedMath-abs: pass:normal[xref:utils.adoc#SignedMath-abs-int256-[`SignedMath.abs`]]
  1289. :xref-SignedMath-abs-int256-: xref:utils.adoc#SignedMath-abs-int256-
  1290. :SignedSafeMath: pass:normal[xref:utils.adoc#SignedSafeMath[`SignedSafeMath`]]
  1291. :xref-SignedSafeMath: xref:utils.adoc#SignedSafeMath
  1292. :SignedSafeMath-mul: pass:normal[xref:utils.adoc#SignedSafeMath-mul-int256-int256-[`SignedSafeMath.mul`]]
  1293. :xref-SignedSafeMath-mul-int256-int256-: xref:utils.adoc#SignedSafeMath-mul-int256-int256-
  1294. :SignedSafeMath-div: pass:normal[xref:utils.adoc#SignedSafeMath-div-int256-int256-[`SignedSafeMath.div`]]
  1295. :xref-SignedSafeMath-div-int256-int256-: xref:utils.adoc#SignedSafeMath-div-int256-int256-
  1296. :SignedSafeMath-sub: pass:normal[xref:utils.adoc#SignedSafeMath-sub-int256-int256-[`SignedSafeMath.sub`]]
  1297. :xref-SignedSafeMath-sub-int256-int256-: xref:utils.adoc#SignedSafeMath-sub-int256-int256-
  1298. :SignedSafeMath-add: pass:normal[xref:utils.adoc#SignedSafeMath-add-int256-int256-[`SignedSafeMath.add`]]
  1299. :xref-SignedSafeMath-add-int256-int256-: xref:utils.adoc#SignedSafeMath-add-int256-int256-
  1300. :BitMaps: pass:normal[xref:utils.adoc#BitMaps[`BitMaps`]]
  1301. :xref-BitMaps: xref:utils.adoc#BitMaps
  1302. :BitMaps-get: pass:normal[xref:utils.adoc#BitMaps-get-struct-BitMaps-BitMap-uint256-[`BitMaps.get`]]
  1303. :xref-BitMaps-get-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-get-struct-BitMaps-BitMap-uint256-
  1304. :BitMaps-setTo: pass:normal[xref:utils.adoc#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-[`BitMaps.setTo`]]
  1305. :xref-BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-: xref:utils.adoc#BitMaps-setTo-struct-BitMaps-BitMap-uint256-bool-
  1306. :BitMaps-set: pass:normal[xref:utils.adoc#BitMaps-set-struct-BitMaps-BitMap-uint256-[`BitMaps.set`]]
  1307. :xref-BitMaps-set-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-set-struct-BitMaps-BitMap-uint256-
  1308. :BitMaps-unset: pass:normal[xref:utils.adoc#BitMaps-unset-struct-BitMaps-BitMap-uint256-[`BitMaps.unset`]]
  1309. :xref-BitMaps-unset-struct-BitMaps-BitMap-uint256-: xref:utils.adoc#BitMaps-unset-struct-BitMaps-BitMap-uint256-
  1310. :BitMaps-BitMap: pass:normal[xref:utils.adoc#BitMaps-BitMap[`BitMaps.BitMap`]]
  1311. :xref-BitMaps-BitMap: xref:utils.adoc#BitMaps-BitMap
  1312. :DoubleEndedQueue: pass:normal[xref:utils.adoc#DoubleEndedQueue[`DoubleEndedQueue`]]
  1313. :xref-DoubleEndedQueue: xref:utils.adoc#DoubleEndedQueue
  1314. :DoubleEndedQueue-pushBack: pass:normal[xref:utils.adoc#DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-[`DoubleEndedQueue.pushBack`]]
  1315. :xref-DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-: xref:utils.adoc#DoubleEndedQueue-pushBack-struct-DoubleEndedQueue-Bytes32Deque-bytes32-
  1316. :DoubleEndedQueue-popBack: pass:normal[xref:utils.adoc#DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.popBack`]]
  1317. :xref-DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-popBack-struct-DoubleEndedQueue-Bytes32Deque-
  1318. :DoubleEndedQueue-pushFront: pass:normal[xref:utils.adoc#DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-[`DoubleEndedQueue.pushFront`]]
  1319. :xref-DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-: xref:utils.adoc#DoubleEndedQueue-pushFront-struct-DoubleEndedQueue-Bytes32Deque-bytes32-
  1320. :DoubleEndedQueue-popFront: pass:normal[xref:utils.adoc#DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.popFront`]]
  1321. :xref-DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-popFront-struct-DoubleEndedQueue-Bytes32Deque-
  1322. :DoubleEndedQueue-front: pass:normal[xref:utils.adoc#DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.front`]]
  1323. :xref-DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-front-struct-DoubleEndedQueue-Bytes32Deque-
  1324. :DoubleEndedQueue-back: pass:normal[xref:utils.adoc#DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.back`]]
  1325. :xref-DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-back-struct-DoubleEndedQueue-Bytes32Deque-
  1326. :DoubleEndedQueue-at: pass:normal[xref:utils.adoc#DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-[`DoubleEndedQueue.at`]]
  1327. :xref-DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-: xref:utils.adoc#DoubleEndedQueue-at-struct-DoubleEndedQueue-Bytes32Deque-uint256-
  1328. :DoubleEndedQueue-clear: pass:normal[xref:utils.adoc#DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.clear`]]
  1329. :xref-DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-clear-struct-DoubleEndedQueue-Bytes32Deque-
  1330. :DoubleEndedQueue-length: pass:normal[xref:utils.adoc#DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.length`]]
  1331. :xref-DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-length-struct-DoubleEndedQueue-Bytes32Deque-
  1332. :DoubleEndedQueue-empty: pass:normal[xref:utils.adoc#DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-[`DoubleEndedQueue.empty`]]
  1333. :xref-DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-: xref:utils.adoc#DoubleEndedQueue-empty-struct-DoubleEndedQueue-Bytes32Deque-
  1334. :DoubleEndedQueue-Bytes32Deque: pass:normal[xref:utils.adoc#DoubleEndedQueue-Bytes32Deque[`DoubleEndedQueue.Bytes32Deque`]]
  1335. :xref-DoubleEndedQueue-Bytes32Deque: xref:utils.adoc#DoubleEndedQueue-Bytes32Deque
  1336. :EnumerableMap: pass:normal[xref:utils.adoc#EnumerableMap[`EnumerableMap`]]
  1337. :xref-EnumerableMap: xref:utils.adoc#EnumerableMap
  1338. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-[`EnumerableMap.set`]]
  1339. :xref-EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-bytes32-
  1340. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.remove`]]
  1341. :xref-EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1342. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.contains`]]
  1343. :xref-EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1344. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-[`EnumerableMap.length`]]
  1345. :xref-EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-Bytes32ToBytes32Map-
  1346. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-[`EnumerableMap.at`]]
  1347. :xref-EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-Bytes32ToBytes32Map-uint256-
  1348. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.tryGet`]]
  1349. :xref-EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1350. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-[`EnumerableMap.get`]]
  1351. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-
  1352. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-[`EnumerableMap.get`]]
  1353. :xref-EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-Bytes32ToBytes32Map-bytes32-string-
  1354. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-[`EnumerableMap.set`]]
  1355. :xref-EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-UintToAddressMap-uint256-address-
  1356. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.remove`]]
  1357. :xref-EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-UintToAddressMap-uint256-
  1358. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.contains`]]
  1359. :xref-EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-UintToAddressMap-uint256-
  1360. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-[`EnumerableMap.length`]]
  1361. :xref-EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-UintToAddressMap-
  1362. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.at`]]
  1363. :xref-EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-UintToAddressMap-uint256-
  1364. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.tryGet`]]
  1365. :xref-EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-UintToAddressMap-uint256-
  1366. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-[`EnumerableMap.get`]]
  1367. :xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-
  1368. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-[`EnumerableMap.get`]]
  1369. :xref-EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-UintToAddressMap-uint256-string-
  1370. :EnumerableMap-set: pass:normal[xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-[`EnumerableMap.set`]]
  1371. :xref-EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-: xref:utils.adoc#EnumerableMap-set-struct-EnumerableMap-AddressToUintMap-address-uint256-
  1372. :EnumerableMap-remove: pass:normal[xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.remove`]]
  1373. :xref-EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-remove-struct-EnumerableMap-AddressToUintMap-address-
  1374. :EnumerableMap-contains: pass:normal[xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.contains`]]
  1375. :xref-EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-contains-struct-EnumerableMap-AddressToUintMap-address-
  1376. :EnumerableMap-length: pass:normal[xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-[`EnumerableMap.length`]]
  1377. :xref-EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-: xref:utils.adoc#EnumerableMap-length-struct-EnumerableMap-AddressToUintMap-
  1378. :EnumerableMap-at: pass:normal[xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-[`EnumerableMap.at`]]
  1379. :xref-EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-: xref:utils.adoc#EnumerableMap-at-struct-EnumerableMap-AddressToUintMap-uint256-
  1380. :EnumerableMap-tryGet: pass:normal[xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.tryGet`]]
  1381. :xref-EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-tryGet-struct-EnumerableMap-AddressToUintMap-address-
  1382. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-[`EnumerableMap.get`]]
  1383. :xref-EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-
  1384. :EnumerableMap-get: pass:normal[xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-[`EnumerableMap.get`]]
  1385. :xref-EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-: xref:utils.adoc#EnumerableMap-get-struct-EnumerableMap-AddressToUintMap-address-string-
  1386. :EnumerableMap-Bytes32ToBytes32Map: pass:normal[xref:utils.adoc#EnumerableMap-Bytes32ToBytes32Map[`EnumerableMap.Bytes32ToBytes32Map`]]
  1387. :xref-EnumerableMap-Bytes32ToBytes32Map: xref:utils.adoc#EnumerableMap-Bytes32ToBytes32Map
  1388. :EnumerableMap-UintToAddressMap: pass:normal[xref:utils.adoc#EnumerableMap-UintToAddressMap[`EnumerableMap.UintToAddressMap`]]
  1389. :xref-EnumerableMap-UintToAddressMap: xref:utils.adoc#EnumerableMap-UintToAddressMap
  1390. :EnumerableMap-AddressToUintMap: pass:normal[xref:utils.adoc#EnumerableMap-AddressToUintMap[`EnumerableMap.AddressToUintMap`]]
  1391. :xref-EnumerableMap-AddressToUintMap: xref:utils.adoc#EnumerableMap-AddressToUintMap
  1392. :EnumerableSet: pass:normal[xref:utils.adoc#EnumerableSet[`EnumerableSet`]]
  1393. :xref-EnumerableSet: xref:utils.adoc#EnumerableSet
  1394. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.add`]]
  1395. :xref-EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-Bytes32Set-bytes32-
  1396. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.remove`]]
  1397. :xref-EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-Bytes32Set-bytes32-
  1398. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-[`EnumerableSet.contains`]]
  1399. :xref-EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-Bytes32Set-bytes32-
  1400. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-[`EnumerableSet.length`]]
  1401. :xref-EnumerableSet-length-struct-EnumerableSet-Bytes32Set-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-Bytes32Set-
  1402. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-[`EnumerableSet.at`]]
  1403. :xref-EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-Bytes32Set-uint256-
  1404. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-[`EnumerableSet.values`]]
  1405. :xref-EnumerableSet-values-struct-EnumerableSet-Bytes32Set-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-Bytes32Set-
  1406. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.add`]]
  1407. :xref-EnumerableSet-add-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-AddressSet-address-
  1408. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.remove`]]
  1409. :xref-EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-AddressSet-address-
  1410. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-[`EnumerableSet.contains`]]
  1411. :xref-EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-AddressSet-address-
  1412. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-AddressSet-[`EnumerableSet.length`]]
  1413. :xref-EnumerableSet-length-struct-EnumerableSet-AddressSet-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-AddressSet-
  1414. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-[`EnumerableSet.at`]]
  1415. :xref-EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-AddressSet-uint256-
  1416. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-AddressSet-[`EnumerableSet.values`]]
  1417. :xref-EnumerableSet-values-struct-EnumerableSet-AddressSet-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-AddressSet-
  1418. :EnumerableSet-add: pass:normal[xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.add`]]
  1419. :xref-EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-add-struct-EnumerableSet-UintSet-uint256-
  1420. :EnumerableSet-remove: pass:normal[xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.remove`]]
  1421. :xref-EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-remove-struct-EnumerableSet-UintSet-uint256-
  1422. :EnumerableSet-contains: pass:normal[xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.contains`]]
  1423. :xref-EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-contains-struct-EnumerableSet-UintSet-uint256-
  1424. :EnumerableSet-length: pass:normal[xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-UintSet-[`EnumerableSet.length`]]
  1425. :xref-EnumerableSet-length-struct-EnumerableSet-UintSet-: xref:utils.adoc#EnumerableSet-length-struct-EnumerableSet-UintSet-
  1426. :EnumerableSet-at: pass:normal[xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-[`EnumerableSet.at`]]
  1427. :xref-EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-: xref:utils.adoc#EnumerableSet-at-struct-EnumerableSet-UintSet-uint256-
  1428. :EnumerableSet-values: pass:normal[xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-UintSet-[`EnumerableSet.values`]]
  1429. :xref-EnumerableSet-values-struct-EnumerableSet-UintSet-: xref:utils.adoc#EnumerableSet-values-struct-EnumerableSet-UintSet-
  1430. :EnumerableSet-Set: pass:normal[xref:utils.adoc#EnumerableSet-Set[`EnumerableSet.Set`]]
  1431. :xref-EnumerableSet-Set: xref:utils.adoc#EnumerableSet-Set
  1432. :EnumerableSet-Bytes32Set: pass:normal[xref:utils.adoc#EnumerableSet-Bytes32Set[`EnumerableSet.Bytes32Set`]]
  1433. :xref-EnumerableSet-Bytes32Set: xref:utils.adoc#EnumerableSet-Bytes32Set
  1434. :EnumerableSet-AddressSet: pass:normal[xref:utils.adoc#EnumerableSet-AddressSet[`EnumerableSet.AddressSet`]]
  1435. :xref-EnumerableSet-AddressSet: xref:utils.adoc#EnumerableSet-AddressSet
  1436. :EnumerableSet-UintSet: pass:normal[xref:utils.adoc#EnumerableSet-UintSet[`EnumerableSet.UintSet`]]
  1437. :xref-EnumerableSet-UintSet: xref:utils.adoc#EnumerableSet-UintSet
  1438. :ERC1155: pass:normal[xref:token/ERC1155.adoc#ERC1155[`ERC1155`]]
  1439. :xref-ERC1155: xref:token/ERC1155.adoc#ERC1155
  1440. :ERC1155-constructor: pass:normal[xref:token/ERC1155.adoc#ERC1155-constructor-string-[`ERC1155.constructor`]]
  1441. :xref-ERC1155-constructor-string-: xref:token/ERC1155.adoc#ERC1155-constructor-string-
  1442. :ERC1155-supportsInterface: pass:normal[xref:token/ERC1155.adoc#ERC1155-supportsInterface-bytes4-[`ERC1155.supportsInterface`]]
  1443. :xref-ERC1155-supportsInterface-bytes4-: xref:token/ERC1155.adoc#ERC1155-supportsInterface-bytes4-
  1444. :ERC1155-uri: pass:normal[xref:token/ERC1155.adoc#ERC1155-uri-uint256-[`ERC1155.uri`]]
  1445. :xref-ERC1155-uri-uint256-: xref:token/ERC1155.adoc#ERC1155-uri-uint256-
  1446. :ERC1155-balanceOf: pass:normal[xref:token/ERC1155.adoc#ERC1155-balanceOf-address-uint256-[`ERC1155.balanceOf`]]
  1447. :xref-ERC1155-balanceOf-address-uint256-: xref:token/ERC1155.adoc#ERC1155-balanceOf-address-uint256-
  1448. :ERC1155-balanceOfBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-balanceOfBatch-address---uint256---[`ERC1155.balanceOfBatch`]]
  1449. :xref-ERC1155-balanceOfBatch-address---uint256---: xref:token/ERC1155.adoc#ERC1155-balanceOfBatch-address---uint256---
  1450. :ERC1155-setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-setApprovalForAll-address-bool-[`ERC1155.setApprovalForAll`]]
  1451. :xref-ERC1155-setApprovalForAll-address-bool-: xref:token/ERC1155.adoc#ERC1155-setApprovalForAll-address-bool-
  1452. :ERC1155-isApprovedForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-isApprovedForAll-address-address-[`ERC1155.isApprovedForAll`]]
  1453. :xref-ERC1155-isApprovedForAll-address-address-: xref:token/ERC1155.adoc#ERC1155-isApprovedForAll-address-address-
  1454. :ERC1155-safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-[`ERC1155.safeTransferFrom`]]
  1455. :xref-ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-
  1456. :ERC1155-safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`ERC1155.safeBatchTransferFrom`]]
  1457. :xref-ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1458. :ERC1155-_safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-[`ERC1155._safeTransferFrom`]]
  1459. :xref-ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-_safeTransferFrom-address-address-uint256-uint256-bytes-
  1460. :ERC1155-_safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`ERC1155._safeBatchTransferFrom`]]
  1461. :xref-ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1462. :ERC1155-_setURI: pass:normal[xref:token/ERC1155.adoc#ERC1155-_setURI-string-[`ERC1155._setURI`]]
  1463. :xref-ERC1155-_setURI-string-: xref:token/ERC1155.adoc#ERC1155-_setURI-string-
  1464. :ERC1155-_mint: pass:normal[xref:token/ERC1155.adoc#ERC1155-_mint-address-uint256-uint256-bytes-[`ERC1155._mint`]]
  1465. :xref-ERC1155-_mint-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155-_mint-address-uint256-uint256-bytes-
  1466. :ERC1155-_mintBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-_mintBatch-address-uint256---uint256---bytes-[`ERC1155._mintBatch`]]
  1467. :xref-ERC1155-_mintBatch-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_mintBatch-address-uint256---uint256---bytes-
  1468. :ERC1155-_burn: pass:normal[xref:token/ERC1155.adoc#ERC1155-_burn-address-uint256-uint256-[`ERC1155._burn`]]
  1469. :xref-ERC1155-_burn-address-uint256-uint256-: xref:token/ERC1155.adoc#ERC1155-_burn-address-uint256-uint256-
  1470. :ERC1155-_burnBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155-_burnBatch-address-uint256---uint256---[`ERC1155._burnBatch`]]
  1471. :xref-ERC1155-_burnBatch-address-uint256---uint256---: xref:token/ERC1155.adoc#ERC1155-_burnBatch-address-uint256---uint256---
  1472. :ERC1155-_setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#ERC1155-_setApprovalForAll-address-address-bool-[`ERC1155._setApprovalForAll`]]
  1473. :xref-ERC1155-_setApprovalForAll-address-address-bool-: xref:token/ERC1155.adoc#ERC1155-_setApprovalForAll-address-address-bool-
  1474. :ERC1155-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155._beforeTokenTransfer`]]
  1475. :xref-ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1476. :ERC1155-_afterTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155-_afterTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155._afterTokenTransfer`]]
  1477. :xref-ERC1155-_afterTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155-_afterTokenTransfer-address-address-address-uint256---uint256---bytes-
  1478. :IERC1155: pass:normal[xref:token/ERC1155.adoc#IERC1155[`IERC1155`]]
  1479. :xref-IERC1155: xref:token/ERC1155.adoc#IERC1155
  1480. :IERC1155-balanceOf: pass:normal[xref:token/ERC1155.adoc#IERC1155-balanceOf-address-uint256-[`IERC1155.balanceOf`]]
  1481. :xref-IERC1155-balanceOf-address-uint256-: xref:token/ERC1155.adoc#IERC1155-balanceOf-address-uint256-
  1482. :IERC1155-balanceOfBatch: pass:normal[xref:token/ERC1155.adoc#IERC1155-balanceOfBatch-address---uint256---[`IERC1155.balanceOfBatch`]]
  1483. :xref-IERC1155-balanceOfBatch-address---uint256---: xref:token/ERC1155.adoc#IERC1155-balanceOfBatch-address---uint256---
  1484. :IERC1155-setApprovalForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-setApprovalForAll-address-bool-[`IERC1155.setApprovalForAll`]]
  1485. :xref-IERC1155-setApprovalForAll-address-bool-: xref:token/ERC1155.adoc#IERC1155-setApprovalForAll-address-bool-
  1486. :IERC1155-isApprovedForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-isApprovedForAll-address-address-[`IERC1155.isApprovedForAll`]]
  1487. :xref-IERC1155-isApprovedForAll-address-address-: xref:token/ERC1155.adoc#IERC1155-isApprovedForAll-address-address-
  1488. :IERC1155-safeTransferFrom: pass:normal[xref:token/ERC1155.adoc#IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-[`IERC1155.safeTransferFrom`]]
  1489. :xref-IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#IERC1155-safeTransferFrom-address-address-uint256-uint256-bytes-
  1490. :IERC1155-safeBatchTransferFrom: pass:normal[xref:token/ERC1155.adoc#IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-[`IERC1155.safeBatchTransferFrom`]]
  1491. :xref-IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#IERC1155-safeBatchTransferFrom-address-address-uint256---uint256---bytes-
  1492. :IERC1155-TransferSingle: pass:normal[xref:token/ERC1155.adoc#IERC1155-TransferSingle-address-address-address-uint256-uint256-[`IERC1155.TransferSingle`]]
  1493. :xref-IERC1155-TransferSingle-address-address-address-uint256-uint256-: xref:token/ERC1155.adoc#IERC1155-TransferSingle-address-address-address-uint256-uint256-
  1494. :IERC1155-TransferBatch: pass:normal[xref:token/ERC1155.adoc#IERC1155-TransferBatch-address-address-address-uint256---uint256---[`IERC1155.TransferBatch`]]
  1495. :xref-IERC1155-TransferBatch-address-address-address-uint256---uint256---: xref:token/ERC1155.adoc#IERC1155-TransferBatch-address-address-address-uint256---uint256---
  1496. :IERC1155-ApprovalForAll: pass:normal[xref:token/ERC1155.adoc#IERC1155-ApprovalForAll-address-address-bool-[`IERC1155.ApprovalForAll`]]
  1497. :xref-IERC1155-ApprovalForAll-address-address-bool-: xref:token/ERC1155.adoc#IERC1155-ApprovalForAll-address-address-bool-
  1498. :IERC1155-URI: pass:normal[xref:token/ERC1155.adoc#IERC1155-URI-string-uint256-[`IERC1155.URI`]]
  1499. :xref-IERC1155-URI-string-uint256-: xref:token/ERC1155.adoc#IERC1155-URI-string-uint256-
  1500. :IERC1155Receiver: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver[`IERC1155Receiver`]]
  1501. :xref-IERC1155Receiver: xref:token/ERC1155.adoc#IERC1155Receiver
  1502. :IERC1155Receiver-onERC1155Received: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-[`IERC1155Receiver.onERC1155Received`]]
  1503. :xref-IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155Received-address-address-uint256-uint256-bytes-
  1504. :IERC1155Receiver-onERC1155BatchReceived: pass:normal[xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`IERC1155Receiver.onERC1155BatchReceived`]]
  1505. :xref-IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#IERC1155Receiver-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  1506. :ERC1155Burnable: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable[`ERC1155Burnable`]]
  1507. :xref-ERC1155Burnable: xref:token/ERC1155.adoc#ERC1155Burnable
  1508. :ERC1155Burnable-burn: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable-burn-address-uint256-uint256-[`ERC1155Burnable.burn`]]
  1509. :xref-ERC1155Burnable-burn-address-uint256-uint256-: xref:token/ERC1155.adoc#ERC1155Burnable-burn-address-uint256-uint256-
  1510. :ERC1155Burnable-burnBatch: pass:normal[xref:token/ERC1155.adoc#ERC1155Burnable-burnBatch-address-uint256---uint256---[`ERC1155Burnable.burnBatch`]]
  1511. :xref-ERC1155Burnable-burnBatch-address-uint256---uint256---: xref:token/ERC1155.adoc#ERC1155Burnable-burnBatch-address-uint256---uint256---
  1512. :ERC1155Pausable: pass:normal[xref:token/ERC1155.adoc#ERC1155Pausable[`ERC1155Pausable`]]
  1513. :xref-ERC1155Pausable: xref:token/ERC1155.adoc#ERC1155Pausable
  1514. :ERC1155Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155Pausable._beforeTokenTransfer`]]
  1515. :xref-ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Pausable-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1516. :ERC1155Supply: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply[`ERC1155Supply`]]
  1517. :xref-ERC1155Supply: xref:token/ERC1155.adoc#ERC1155Supply
  1518. :ERC1155Supply-totalSupply: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-totalSupply-uint256-[`ERC1155Supply.totalSupply`]]
  1519. :xref-ERC1155Supply-totalSupply-uint256-: xref:token/ERC1155.adoc#ERC1155Supply-totalSupply-uint256-
  1520. :ERC1155Supply-exists: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-exists-uint256-[`ERC1155Supply.exists`]]
  1521. :xref-ERC1155Supply-exists-uint256-: xref:token/ERC1155.adoc#ERC1155Supply-exists-uint256-
  1522. :ERC1155Supply-_beforeTokenTransfer: pass:normal[xref:token/ERC1155.adoc#ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155Supply._beforeTokenTransfer`]]
  1523. :xref-ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Supply-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  1524. :ERC1155URIStorage: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage[`ERC1155URIStorage`]]
  1525. :xref-ERC1155URIStorage: xref:token/ERC1155.adoc#ERC1155URIStorage
  1526. :ERC1155URIStorage-uri: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage-uri-uint256-[`ERC1155URIStorage.uri`]]
  1527. :xref-ERC1155URIStorage-uri-uint256-: xref:token/ERC1155.adoc#ERC1155URIStorage-uri-uint256-
  1528. :ERC1155URIStorage-_setURI: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage-_setURI-uint256-string-[`ERC1155URIStorage._setURI`]]
  1529. :xref-ERC1155URIStorage-_setURI-uint256-string-: xref:token/ERC1155.adoc#ERC1155URIStorage-_setURI-uint256-string-
  1530. :ERC1155URIStorage-_setBaseURI: pass:normal[xref:token/ERC1155.adoc#ERC1155URIStorage-_setBaseURI-string-[`ERC1155URIStorage._setBaseURI`]]
  1531. :xref-ERC1155URIStorage-_setBaseURI-string-: xref:token/ERC1155.adoc#ERC1155URIStorage-_setBaseURI-string-
  1532. :IERC1155MetadataURI: pass:normal[xref:token/ERC1155.adoc#IERC1155MetadataURI[`IERC1155MetadataURI`]]
  1533. :xref-IERC1155MetadataURI: xref:token/ERC1155.adoc#IERC1155MetadataURI
  1534. :IERC1155MetadataURI-uri: pass:normal[xref:token/ERC1155.adoc#IERC1155MetadataURI-uri-uint256-[`IERC1155MetadataURI.uri`]]
  1535. :xref-IERC1155MetadataURI-uri-uint256-: xref:token/ERC1155.adoc#IERC1155MetadataURI-uri-uint256-
  1536. :ERC1155Holder: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder[`ERC1155Holder`]]
  1537. :xref-ERC1155Holder: xref:token/ERC1155.adoc#ERC1155Holder
  1538. :ERC1155Holder-onERC1155Received: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-[`ERC1155Holder.onERC1155Received`]]
  1539. :xref-ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-: xref:token/ERC1155.adoc#ERC1155Holder-onERC1155Received-address-address-uint256-uint256-bytes-
  1540. :ERC1155Holder-onERC1155BatchReceived: pass:normal[xref:token/ERC1155.adoc#ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`ERC1155Holder.onERC1155BatchReceived`]]
  1541. :xref-ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-: xref:token/ERC1155.adoc#ERC1155Holder-onERC1155BatchReceived-address-address-uint256---uint256---bytes-
  1542. :ERC1155Receiver: pass:normal[xref:token/ERC1155.adoc#ERC1155Receiver[`ERC1155Receiver`]]
  1543. :xref-ERC1155Receiver: xref:token/ERC1155.adoc#ERC1155Receiver
  1544. :ERC1155Receiver-supportsInterface: pass:normal[xref:token/ERC1155.adoc#ERC1155Receiver-supportsInterface-bytes4-[`ERC1155Receiver.supportsInterface`]]
  1545. :xref-ERC1155Receiver-supportsInterface-bytes4-: xref:token/ERC1155.adoc#ERC1155Receiver-supportsInterface-bytes4-
  1546. :ERC20: pass:normal[xref:token/ERC20.adoc#ERC20[`ERC20`]]
  1547. :xref-ERC20: xref:token/ERC20.adoc#ERC20
  1548. :ERC20-constructor: pass:normal[xref:token/ERC20.adoc#ERC20-constructor-string-string-[`ERC20.constructor`]]
  1549. :xref-ERC20-constructor-string-string-: xref:token/ERC20.adoc#ERC20-constructor-string-string-
  1550. :ERC20-name: pass:normal[xref:token/ERC20.adoc#ERC20-name--[`ERC20.name`]]
  1551. :xref-ERC20-name--: xref:token/ERC20.adoc#ERC20-name--
  1552. :ERC20-symbol: pass:normal[xref:token/ERC20.adoc#ERC20-symbol--[`ERC20.symbol`]]
  1553. :xref-ERC20-symbol--: xref:token/ERC20.adoc#ERC20-symbol--
  1554. :ERC20-decimals: pass:normal[xref:token/ERC20.adoc#ERC20-decimals--[`ERC20.decimals`]]
  1555. :xref-ERC20-decimals--: xref:token/ERC20.adoc#ERC20-decimals--
  1556. :ERC20-totalSupply: pass:normal[xref:token/ERC20.adoc#ERC20-totalSupply--[`ERC20.totalSupply`]]
  1557. :xref-ERC20-totalSupply--: xref:token/ERC20.adoc#ERC20-totalSupply--
  1558. :ERC20-balanceOf: pass:normal[xref:token/ERC20.adoc#ERC20-balanceOf-address-[`ERC20.balanceOf`]]
  1559. :xref-ERC20-balanceOf-address-: xref:token/ERC20.adoc#ERC20-balanceOf-address-
  1560. :ERC20-transfer: pass:normal[xref:token/ERC20.adoc#ERC20-transfer-address-uint256-[`ERC20.transfer`]]
  1561. :xref-ERC20-transfer-address-uint256-: xref:token/ERC20.adoc#ERC20-transfer-address-uint256-
  1562. :ERC20-allowance: pass:normal[xref:token/ERC20.adoc#ERC20-allowance-address-address-[`ERC20.allowance`]]
  1563. :xref-ERC20-allowance-address-address-: xref:token/ERC20.adoc#ERC20-allowance-address-address-
  1564. :ERC20-approve: pass:normal[xref:token/ERC20.adoc#ERC20-approve-address-uint256-[`ERC20.approve`]]
  1565. :xref-ERC20-approve-address-uint256-: xref:token/ERC20.adoc#ERC20-approve-address-uint256-
  1566. :ERC20-transferFrom: pass:normal[xref:token/ERC20.adoc#ERC20-transferFrom-address-address-uint256-[`ERC20.transferFrom`]]
  1567. :xref-ERC20-transferFrom-address-address-uint256-: xref:token/ERC20.adoc#ERC20-transferFrom-address-address-uint256-
  1568. :ERC20-increaseAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-increaseAllowance-address-uint256-[`ERC20.increaseAllowance`]]
  1569. :xref-ERC20-increaseAllowance-address-uint256-: xref:token/ERC20.adoc#ERC20-increaseAllowance-address-uint256-
  1570. :ERC20-decreaseAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-decreaseAllowance-address-uint256-[`ERC20.decreaseAllowance`]]
  1571. :xref-ERC20-decreaseAllowance-address-uint256-: xref:token/ERC20.adoc#ERC20-decreaseAllowance-address-uint256-
  1572. :ERC20-_transfer: pass:normal[xref:token/ERC20.adoc#ERC20-_transfer-address-address-uint256-[`ERC20._transfer`]]
  1573. :xref-ERC20-_transfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_transfer-address-address-uint256-
  1574. :ERC20-_mint: pass:normal[xref:token/ERC20.adoc#ERC20-_mint-address-uint256-[`ERC20._mint`]]
  1575. :xref-ERC20-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20-_mint-address-uint256-
  1576. :ERC20-_burn: pass:normal[xref:token/ERC20.adoc#ERC20-_burn-address-uint256-[`ERC20._burn`]]
  1577. :xref-ERC20-_burn-address-uint256-: xref:token/ERC20.adoc#ERC20-_burn-address-uint256-
  1578. :ERC20-_approve: pass:normal[xref:token/ERC20.adoc#ERC20-_approve-address-address-uint256-[`ERC20._approve`]]
  1579. :xref-ERC20-_approve-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_approve-address-address-uint256-
  1580. :ERC20-_spendAllowance: pass:normal[xref:token/ERC20.adoc#ERC20-_spendAllowance-address-address-uint256-[`ERC20._spendAllowance`]]
  1581. :xref-ERC20-_spendAllowance-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_spendAllowance-address-address-uint256-
  1582. :ERC20-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20-_beforeTokenTransfer-address-address-uint256-[`ERC20._beforeTokenTransfer`]]
  1583. :xref-ERC20-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_beforeTokenTransfer-address-address-uint256-
  1584. :ERC20-_afterTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20-_afterTokenTransfer-address-address-uint256-[`ERC20._afterTokenTransfer`]]
  1585. :xref-ERC20-_afterTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20-_afterTokenTransfer-address-address-uint256-
  1586. :IERC20: pass:normal[xref:token/ERC20.adoc#IERC20[`IERC20`]]
  1587. :xref-IERC20: xref:token/ERC20.adoc#IERC20
  1588. :IERC20-totalSupply: pass:normal[xref:token/ERC20.adoc#IERC20-totalSupply--[`IERC20.totalSupply`]]
  1589. :xref-IERC20-totalSupply--: xref:token/ERC20.adoc#IERC20-totalSupply--
  1590. :IERC20-balanceOf: pass:normal[xref:token/ERC20.adoc#IERC20-balanceOf-address-[`IERC20.balanceOf`]]
  1591. :xref-IERC20-balanceOf-address-: xref:token/ERC20.adoc#IERC20-balanceOf-address-
  1592. :IERC20-transfer: pass:normal[xref:token/ERC20.adoc#IERC20-transfer-address-uint256-[`IERC20.transfer`]]
  1593. :xref-IERC20-transfer-address-uint256-: xref:token/ERC20.adoc#IERC20-transfer-address-uint256-
  1594. :IERC20-allowance: pass:normal[xref:token/ERC20.adoc#IERC20-allowance-address-address-[`IERC20.allowance`]]
  1595. :xref-IERC20-allowance-address-address-: xref:token/ERC20.adoc#IERC20-allowance-address-address-
  1596. :IERC20-approve: pass:normal[xref:token/ERC20.adoc#IERC20-approve-address-uint256-[`IERC20.approve`]]
  1597. :xref-IERC20-approve-address-uint256-: xref:token/ERC20.adoc#IERC20-approve-address-uint256-
  1598. :IERC20-transferFrom: pass:normal[xref:token/ERC20.adoc#IERC20-transferFrom-address-address-uint256-[`IERC20.transferFrom`]]
  1599. :xref-IERC20-transferFrom-address-address-uint256-: xref:token/ERC20.adoc#IERC20-transferFrom-address-address-uint256-
  1600. :IERC20-Transfer: pass:normal[xref:token/ERC20.adoc#IERC20-Transfer-address-address-uint256-[`IERC20.Transfer`]]
  1601. :xref-IERC20-Transfer-address-address-uint256-: xref:token/ERC20.adoc#IERC20-Transfer-address-address-uint256-
  1602. :IERC20-Approval: pass:normal[xref:token/ERC20.adoc#IERC20-Approval-address-address-uint256-[`IERC20.Approval`]]
  1603. :xref-IERC20-Approval-address-address-uint256-: xref:token/ERC20.adoc#IERC20-Approval-address-address-uint256-
  1604. :ERC20Burnable: pass:normal[xref:token/ERC20.adoc#ERC20Burnable[`ERC20Burnable`]]
  1605. :xref-ERC20Burnable: xref:token/ERC20.adoc#ERC20Burnable
  1606. :ERC20Burnable-burn: pass:normal[xref:token/ERC20.adoc#ERC20Burnable-burn-uint256-[`ERC20Burnable.burn`]]
  1607. :xref-ERC20Burnable-burn-uint256-: xref:token/ERC20.adoc#ERC20Burnable-burn-uint256-
  1608. :ERC20Burnable-burnFrom: pass:normal[xref:token/ERC20.adoc#ERC20Burnable-burnFrom-address-uint256-[`ERC20Burnable.burnFrom`]]
  1609. :xref-ERC20Burnable-burnFrom-address-uint256-: xref:token/ERC20.adoc#ERC20Burnable-burnFrom-address-uint256-
  1610. :ERC20Capped: pass:normal[xref:token/ERC20.adoc#ERC20Capped[`ERC20Capped`]]
  1611. :xref-ERC20Capped: xref:token/ERC20.adoc#ERC20Capped
  1612. :ERC20Capped-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Capped-constructor-uint256-[`ERC20Capped.constructor`]]
  1613. :xref-ERC20Capped-constructor-uint256-: xref:token/ERC20.adoc#ERC20Capped-constructor-uint256-
  1614. :ERC20Capped-cap: pass:normal[xref:token/ERC20.adoc#ERC20Capped-cap--[`ERC20Capped.cap`]]
  1615. :xref-ERC20Capped-cap--: xref:token/ERC20.adoc#ERC20Capped-cap--
  1616. :ERC20Capped-_mint: pass:normal[xref:token/ERC20.adoc#ERC20Capped-_mint-address-uint256-[`ERC20Capped._mint`]]
  1617. :xref-ERC20Capped-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20Capped-_mint-address-uint256-
  1618. :ERC20FlashMint: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint[`ERC20FlashMint`]]
  1619. :xref-ERC20FlashMint: xref:token/ERC20.adoc#ERC20FlashMint
  1620. :ERC20FlashMint-maxFlashLoan: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-maxFlashLoan-address-[`ERC20FlashMint.maxFlashLoan`]]
  1621. :xref-ERC20FlashMint-maxFlashLoan-address-: xref:token/ERC20.adoc#ERC20FlashMint-maxFlashLoan-address-
  1622. :ERC20FlashMint-flashFee: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-flashFee-address-uint256-[`ERC20FlashMint.flashFee`]]
  1623. :xref-ERC20FlashMint-flashFee-address-uint256-: xref:token/ERC20.adoc#ERC20FlashMint-flashFee-address-uint256-
  1624. :ERC20FlashMint-flashLoan: pass:normal[xref:token/ERC20.adoc#ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-[`ERC20FlashMint.flashLoan`]]
  1625. :xref-ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-: xref:token/ERC20.adoc#ERC20FlashMint-flashLoan-contract-IERC3156FlashBorrower-address-uint256-bytes-
  1626. :ERC20Pausable: pass:normal[xref:token/ERC20.adoc#ERC20Pausable[`ERC20Pausable`]]
  1627. :xref-ERC20Pausable: xref:token/ERC20.adoc#ERC20Pausable
  1628. :ERC20Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Pausable-_beforeTokenTransfer-address-address-uint256-[`ERC20Pausable._beforeTokenTransfer`]]
  1629. :xref-ERC20Pausable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Pausable-_beforeTokenTransfer-address-address-uint256-
  1630. :ERC20Snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot[`ERC20Snapshot`]]
  1631. :xref-ERC20Snapshot: xref:token/ERC20.adoc#ERC20Snapshot
  1632. :ERC20Snapshot-_snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_snapshot--[`ERC20Snapshot._snapshot`]]
  1633. :xref-ERC20Snapshot-_snapshot--: xref:token/ERC20.adoc#ERC20Snapshot-_snapshot--
  1634. :ERC20Snapshot-_getCurrentSnapshotId: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_getCurrentSnapshotId--[`ERC20Snapshot._getCurrentSnapshotId`]]
  1635. :xref-ERC20Snapshot-_getCurrentSnapshotId--: xref:token/ERC20.adoc#ERC20Snapshot-_getCurrentSnapshotId--
  1636. :ERC20Snapshot-balanceOfAt: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-balanceOfAt-address-uint256-[`ERC20Snapshot.balanceOfAt`]]
  1637. :xref-ERC20Snapshot-balanceOfAt-address-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-balanceOfAt-address-uint256-
  1638. :ERC20Snapshot-totalSupplyAt: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-totalSupplyAt-uint256-[`ERC20Snapshot.totalSupplyAt`]]
  1639. :xref-ERC20Snapshot-totalSupplyAt-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-totalSupplyAt-uint256-
  1640. :ERC20Snapshot-_beforeTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-[`ERC20Snapshot._beforeTokenTransfer`]]
  1641. :xref-ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-_beforeTokenTransfer-address-address-uint256-
  1642. :ERC20Snapshot-Snapshot: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-Snapshot-uint256-[`ERC20Snapshot.Snapshot`]]
  1643. :xref-ERC20Snapshot-Snapshot-uint256-: xref:token/ERC20.adoc#ERC20Snapshot-Snapshot-uint256-
  1644. :ERC20Snapshot-Snapshots: pass:normal[xref:token/ERC20.adoc#ERC20Snapshot-Snapshots[`ERC20Snapshot.Snapshots`]]
  1645. :xref-ERC20Snapshot-Snapshots: xref:token/ERC20.adoc#ERC20Snapshot-Snapshots
  1646. :ERC20Votes: pass:normal[xref:token/ERC20.adoc#ERC20Votes[`ERC20Votes`]]
  1647. :xref-ERC20Votes: xref:token/ERC20.adoc#ERC20Votes
  1648. :ERC20Votes-checkpoints: pass:normal[xref:token/ERC20.adoc#ERC20Votes-checkpoints-address-uint32-[`ERC20Votes.checkpoints`]]
  1649. :xref-ERC20Votes-checkpoints-address-uint32-: xref:token/ERC20.adoc#ERC20Votes-checkpoints-address-uint32-
  1650. :ERC20Votes-numCheckpoints: pass:normal[xref:token/ERC20.adoc#ERC20Votes-numCheckpoints-address-[`ERC20Votes.numCheckpoints`]]
  1651. :xref-ERC20Votes-numCheckpoints-address-: xref:token/ERC20.adoc#ERC20Votes-numCheckpoints-address-
  1652. :ERC20Votes-delegates: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegates-address-[`ERC20Votes.delegates`]]
  1653. :xref-ERC20Votes-delegates-address-: xref:token/ERC20.adoc#ERC20Votes-delegates-address-
  1654. :ERC20Votes-getVotes: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getVotes-address-[`ERC20Votes.getVotes`]]
  1655. :xref-ERC20Votes-getVotes-address-: xref:token/ERC20.adoc#ERC20Votes-getVotes-address-
  1656. :ERC20Votes-getPastVotes: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getPastVotes-address-uint256-[`ERC20Votes.getPastVotes`]]
  1657. :xref-ERC20Votes-getPastVotes-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-getPastVotes-address-uint256-
  1658. :ERC20Votes-getPastTotalSupply: pass:normal[xref:token/ERC20.adoc#ERC20Votes-getPastTotalSupply-uint256-[`ERC20Votes.getPastTotalSupply`]]
  1659. :xref-ERC20Votes-getPastTotalSupply-uint256-: xref:token/ERC20.adoc#ERC20Votes-getPastTotalSupply-uint256-
  1660. :ERC20Votes-delegate: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegate-address-[`ERC20Votes.delegate`]]
  1661. :xref-ERC20Votes-delegate-address-: xref:token/ERC20.adoc#ERC20Votes-delegate-address-
  1662. :ERC20Votes-delegateBySig: pass:normal[xref:token/ERC20.adoc#ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`ERC20Votes.delegateBySig`]]
  1663. :xref-ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#ERC20Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-
  1664. :ERC20Votes-_maxSupply: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_maxSupply--[`ERC20Votes._maxSupply`]]
  1665. :xref-ERC20Votes-_maxSupply--: xref:token/ERC20.adoc#ERC20Votes-_maxSupply--
  1666. :ERC20Votes-_mint: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_mint-address-uint256-[`ERC20Votes._mint`]]
  1667. :xref-ERC20Votes-_mint-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_mint-address-uint256-
  1668. :ERC20Votes-_burn: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_burn-address-uint256-[`ERC20Votes._burn`]]
  1669. :xref-ERC20Votes-_burn-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_burn-address-uint256-
  1670. :ERC20Votes-_afterTokenTransfer: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_afterTokenTransfer-address-address-uint256-[`ERC20Votes._afterTokenTransfer`]]
  1671. :xref-ERC20Votes-_afterTokenTransfer-address-address-uint256-: xref:token/ERC20.adoc#ERC20Votes-_afterTokenTransfer-address-address-uint256-
  1672. :ERC20Votes-_delegate: pass:normal[xref:token/ERC20.adoc#ERC20Votes-_delegate-address-address-[`ERC20Votes._delegate`]]
  1673. :xref-ERC20Votes-_delegate-address-address-: xref:token/ERC20.adoc#ERC20Votes-_delegate-address-address-
  1674. :ERC20Votes-Checkpoint: pass:normal[xref:token/ERC20.adoc#ERC20Votes-Checkpoint[`ERC20Votes.Checkpoint`]]
  1675. :xref-ERC20Votes-Checkpoint: xref:token/ERC20.adoc#ERC20Votes-Checkpoint
  1676. :ERC20VotesComp: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp[`ERC20VotesComp`]]
  1677. :xref-ERC20VotesComp: xref:token/ERC20.adoc#ERC20VotesComp
  1678. :ERC20VotesComp-getCurrentVotes: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-getCurrentVotes-address-[`ERC20VotesComp.getCurrentVotes`]]
  1679. :xref-ERC20VotesComp-getCurrentVotes-address-: xref:token/ERC20.adoc#ERC20VotesComp-getCurrentVotes-address-
  1680. :ERC20VotesComp-getPriorVotes: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-getPriorVotes-address-uint256-[`ERC20VotesComp.getPriorVotes`]]
  1681. :xref-ERC20VotesComp-getPriorVotes-address-uint256-: xref:token/ERC20.adoc#ERC20VotesComp-getPriorVotes-address-uint256-
  1682. :ERC20VotesComp-_maxSupply: pass:normal[xref:token/ERC20.adoc#ERC20VotesComp-_maxSupply--[`ERC20VotesComp._maxSupply`]]
  1683. :xref-ERC20VotesComp-_maxSupply--: xref:token/ERC20.adoc#ERC20VotesComp-_maxSupply--
  1684. :ERC20Wrapper: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper[`ERC20Wrapper`]]
  1685. :xref-ERC20Wrapper: xref:token/ERC20.adoc#ERC20Wrapper
  1686. :ERC20Wrapper-underlying: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-underlying-contract-IERC20[`ERC20Wrapper.underlying`]]
  1687. :xref-ERC20Wrapper-underlying-contract-IERC20: xref:token/ERC20.adoc#ERC20Wrapper-underlying-contract-IERC20
  1688. :ERC20Wrapper-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-constructor-contract-IERC20-[`ERC20Wrapper.constructor`]]
  1689. :xref-ERC20Wrapper-constructor-contract-IERC20-: xref:token/ERC20.adoc#ERC20Wrapper-constructor-contract-IERC20-
  1690. :ERC20Wrapper-decimals: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-decimals--[`ERC20Wrapper.decimals`]]
  1691. :xref-ERC20Wrapper-decimals--: xref:token/ERC20.adoc#ERC20Wrapper-decimals--
  1692. :ERC20Wrapper-depositFor: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-depositFor-address-uint256-[`ERC20Wrapper.depositFor`]]
  1693. :xref-ERC20Wrapper-depositFor-address-uint256-: xref:token/ERC20.adoc#ERC20Wrapper-depositFor-address-uint256-
  1694. :ERC20Wrapper-withdrawTo: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-withdrawTo-address-uint256-[`ERC20Wrapper.withdrawTo`]]
  1695. :xref-ERC20Wrapper-withdrawTo-address-uint256-: xref:token/ERC20.adoc#ERC20Wrapper-withdrawTo-address-uint256-
  1696. :ERC20Wrapper-_recover: pass:normal[xref:token/ERC20.adoc#ERC20Wrapper-_recover-address-[`ERC20Wrapper._recover`]]
  1697. :xref-ERC20Wrapper-_recover-address-: xref:token/ERC20.adoc#ERC20Wrapper-_recover-address-
  1698. :IERC20Metadata: pass:normal[xref:token/ERC20.adoc#IERC20Metadata[`IERC20Metadata`]]
  1699. :xref-IERC20Metadata: xref:token/ERC20.adoc#IERC20Metadata
  1700. :IERC20Metadata-name: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-name--[`IERC20Metadata.name`]]
  1701. :xref-IERC20Metadata-name--: xref:token/ERC20.adoc#IERC20Metadata-name--
  1702. :IERC20Metadata-symbol: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-symbol--[`IERC20Metadata.symbol`]]
  1703. :xref-IERC20Metadata-symbol--: xref:token/ERC20.adoc#IERC20Metadata-symbol--
  1704. :IERC20Metadata-decimals: pass:normal[xref:token/ERC20.adoc#IERC20Metadata-decimals--[`IERC20Metadata.decimals`]]
  1705. :xref-IERC20Metadata-decimals--: xref:token/ERC20.adoc#IERC20Metadata-decimals--
  1706. :ERC20Permit: pass:normal[xref:token/ERC20.adoc#ERC20Permit[`ERC20Permit`]]
  1707. :xref-ERC20Permit: xref:token/ERC20.adoc#ERC20Permit
  1708. :ERC20Permit-constructor: pass:normal[xref:token/ERC20.adoc#ERC20Permit-constructor-string-[`ERC20Permit.constructor`]]
  1709. :xref-ERC20Permit-constructor-string-: xref:token/ERC20.adoc#ERC20Permit-constructor-string-
  1710. :ERC20Permit-permit: pass:normal[xref:token/ERC20.adoc#ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`ERC20Permit.permit`]]
  1711. :xref-ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#ERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1712. :ERC20Permit-nonces: pass:normal[xref:token/ERC20.adoc#ERC20Permit-nonces-address-[`ERC20Permit.nonces`]]
  1713. :xref-ERC20Permit-nonces-address-: xref:token/ERC20.adoc#ERC20Permit-nonces-address-
  1714. :ERC20Permit-DOMAIN_SEPARATOR: pass:normal[xref:token/ERC20.adoc#ERC20Permit-DOMAIN_SEPARATOR--[`ERC20Permit.DOMAIN_SEPARATOR`]]
  1715. :xref-ERC20Permit-DOMAIN_SEPARATOR--: xref:token/ERC20.adoc#ERC20Permit-DOMAIN_SEPARATOR--
  1716. :ERC20Permit-_useNonce: pass:normal[xref:token/ERC20.adoc#ERC20Permit-_useNonce-address-[`ERC20Permit._useNonce`]]
  1717. :xref-ERC20Permit-_useNonce-address-: xref:token/ERC20.adoc#ERC20Permit-_useNonce-address-
  1718. :IERC20Permit: pass:normal[xref:token/ERC20.adoc#IERC20Permit[`IERC20Permit`]]
  1719. :xref-IERC20Permit: xref:token/ERC20.adoc#IERC20Permit
  1720. :IERC20Permit-permit: pass:normal[xref:token/ERC20.adoc#IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-[`IERC20Permit.permit`]]
  1721. :xref-IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-: xref:token/ERC20.adoc#IERC20Permit-permit-address-address-uint256-uint256-uint8-bytes32-bytes32-
  1722. :IERC20Permit-nonces: pass:normal[xref:token/ERC20.adoc#IERC20Permit-nonces-address-[`IERC20Permit.nonces`]]
  1723. :xref-IERC20Permit-nonces-address-: xref:token/ERC20.adoc#IERC20Permit-nonces-address-
  1724. :IERC20Permit-DOMAIN_SEPARATOR: pass:normal[xref:token/ERC20.adoc#IERC20Permit-DOMAIN_SEPARATOR--[`IERC20Permit.DOMAIN_SEPARATOR`]]
  1725. :xref-IERC20Permit-DOMAIN_SEPARATOR--: xref:token/ERC20.adoc#IERC20Permit-DOMAIN_SEPARATOR--
  1726. :SafeERC20: pass:normal[xref:token/ERC20.adoc#SafeERC20[`SafeERC20`]]
  1727. :xref-SafeERC20: xref:token/ERC20.adoc#SafeERC20
  1728. :SafeERC20-safeTransfer: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeTransfer-contract-IERC20-address-uint256-[`SafeERC20.safeTransfer`]]
  1729. :xref-SafeERC20-safeTransfer-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeTransfer-contract-IERC20-address-uint256-
  1730. :SafeERC20-safeTransferFrom: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-[`SafeERC20.safeTransferFrom`]]
  1731. :xref-SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeTransferFrom-contract-IERC20-address-address-uint256-
  1732. :SafeERC20-safeApprove: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeApprove-contract-IERC20-address-uint256-[`SafeERC20.safeApprove`]]
  1733. :xref-SafeERC20-safeApprove-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeApprove-contract-IERC20-address-uint256-
  1734. :SafeERC20-safeIncreaseAllowance: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-[`SafeERC20.safeIncreaseAllowance`]]
  1735. :xref-SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeIncreaseAllowance-contract-IERC20-address-uint256-
  1736. :SafeERC20-safeDecreaseAllowance: pass:normal[xref:token/ERC20.adoc#SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-[`SafeERC20.safeDecreaseAllowance`]]
  1737. :xref-SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#SafeERC20-safeDecreaseAllowance-contract-IERC20-address-uint256-
  1738. :TokenTimelock: pass:normal[xref:token/ERC20.adoc#TokenTimelock[`TokenTimelock`]]
  1739. :xref-TokenTimelock: xref:token/ERC20.adoc#TokenTimelock
  1740. :TokenTimelock-constructor: pass:normal[xref:token/ERC20.adoc#TokenTimelock-constructor-contract-IERC20-address-uint256-[`TokenTimelock.constructor`]]
  1741. :xref-TokenTimelock-constructor-contract-IERC20-address-uint256-: xref:token/ERC20.adoc#TokenTimelock-constructor-contract-IERC20-address-uint256-
  1742. :TokenTimelock-token: pass:normal[xref:token/ERC20.adoc#TokenTimelock-token--[`TokenTimelock.token`]]
  1743. :xref-TokenTimelock-token--: xref:token/ERC20.adoc#TokenTimelock-token--
  1744. :TokenTimelock-beneficiary: pass:normal[xref:token/ERC20.adoc#TokenTimelock-beneficiary--[`TokenTimelock.beneficiary`]]
  1745. :xref-TokenTimelock-beneficiary--: xref:token/ERC20.adoc#TokenTimelock-beneficiary--
  1746. :TokenTimelock-releaseTime: pass:normal[xref:token/ERC20.adoc#TokenTimelock-releaseTime--[`TokenTimelock.releaseTime`]]
  1747. :xref-TokenTimelock-releaseTime--: xref:token/ERC20.adoc#TokenTimelock-releaseTime--
  1748. :TokenTimelock-release: pass:normal[xref:token/ERC20.adoc#TokenTimelock-release--[`TokenTimelock.release`]]
  1749. :xref-TokenTimelock-release--: xref:token/ERC20.adoc#TokenTimelock-release--
  1750. :ERC721: pass:normal[xref:token/ERC721.adoc#ERC721[`ERC721`]]
  1751. :xref-ERC721: xref:token/ERC721.adoc#ERC721
  1752. :ERC721-constructor: pass:normal[xref:token/ERC721.adoc#ERC721-constructor-string-string-[`ERC721.constructor`]]
  1753. :xref-ERC721-constructor-string-string-: xref:token/ERC721.adoc#ERC721-constructor-string-string-
  1754. :ERC721-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721-supportsInterface-bytes4-[`ERC721.supportsInterface`]]
  1755. :xref-ERC721-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721-supportsInterface-bytes4-
  1756. :ERC721-balanceOf: pass:normal[xref:token/ERC721.adoc#ERC721-balanceOf-address-[`ERC721.balanceOf`]]
  1757. :xref-ERC721-balanceOf-address-: xref:token/ERC721.adoc#ERC721-balanceOf-address-
  1758. :ERC721-ownerOf: pass:normal[xref:token/ERC721.adoc#ERC721-ownerOf-uint256-[`ERC721.ownerOf`]]
  1759. :xref-ERC721-ownerOf-uint256-: xref:token/ERC721.adoc#ERC721-ownerOf-uint256-
  1760. :ERC721-name: pass:normal[xref:token/ERC721.adoc#ERC721-name--[`ERC721.name`]]
  1761. :xref-ERC721-name--: xref:token/ERC721.adoc#ERC721-name--
  1762. :ERC721-symbol: pass:normal[xref:token/ERC721.adoc#ERC721-symbol--[`ERC721.symbol`]]
  1763. :xref-ERC721-symbol--: xref:token/ERC721.adoc#ERC721-symbol--
  1764. :ERC721-tokenURI: pass:normal[xref:token/ERC721.adoc#ERC721-tokenURI-uint256-[`ERC721.tokenURI`]]
  1765. :xref-ERC721-tokenURI-uint256-: xref:token/ERC721.adoc#ERC721-tokenURI-uint256-
  1766. :ERC721-_baseURI: pass:normal[xref:token/ERC721.adoc#ERC721-_baseURI--[`ERC721._baseURI`]]
  1767. :xref-ERC721-_baseURI--: xref:token/ERC721.adoc#ERC721-_baseURI--
  1768. :ERC721-approve: pass:normal[xref:token/ERC721.adoc#ERC721-approve-address-uint256-[`ERC721.approve`]]
  1769. :xref-ERC721-approve-address-uint256-: xref:token/ERC721.adoc#ERC721-approve-address-uint256-
  1770. :ERC721-getApproved: pass:normal[xref:token/ERC721.adoc#ERC721-getApproved-uint256-[`ERC721.getApproved`]]
  1771. :xref-ERC721-getApproved-uint256-: xref:token/ERC721.adoc#ERC721-getApproved-uint256-
  1772. :ERC721-setApprovalForAll: pass:normal[xref:token/ERC721.adoc#ERC721-setApprovalForAll-address-bool-[`ERC721.setApprovalForAll`]]
  1773. :xref-ERC721-setApprovalForAll-address-bool-: xref:token/ERC721.adoc#ERC721-setApprovalForAll-address-bool-
  1774. :ERC721-isApprovedForAll: pass:normal[xref:token/ERC721.adoc#ERC721-isApprovedForAll-address-address-[`ERC721.isApprovedForAll`]]
  1775. :xref-ERC721-isApprovedForAll-address-address-: xref:token/ERC721.adoc#ERC721-isApprovedForAll-address-address-
  1776. :ERC721-transferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-transferFrom-address-address-uint256-[`ERC721.transferFrom`]]
  1777. :xref-ERC721-transferFrom-address-address-uint256-: xref:token/ERC721.adoc#ERC721-transferFrom-address-address-uint256-
  1778. :ERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-[`ERC721.safeTransferFrom`]]
  1779. :xref-ERC721-safeTransferFrom-address-address-uint256-: xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-
  1780. :ERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-bytes-[`ERC721.safeTransferFrom`]]
  1781. :xref-ERC721-safeTransferFrom-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-safeTransferFrom-address-address-uint256-bytes-
  1782. :ERC721-_safeTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_safeTransfer-address-address-uint256-bytes-[`ERC721._safeTransfer`]]
  1783. :xref-ERC721-_safeTransfer-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-_safeTransfer-address-address-uint256-bytes-
  1784. :ERC721-_exists: pass:normal[xref:token/ERC721.adoc#ERC721-_exists-uint256-[`ERC721._exists`]]
  1785. :xref-ERC721-_exists-uint256-: xref:token/ERC721.adoc#ERC721-_exists-uint256-
  1786. :ERC721-_isApprovedOrOwner: pass:normal[xref:token/ERC721.adoc#ERC721-_isApprovedOrOwner-address-uint256-[`ERC721._isApprovedOrOwner`]]
  1787. :xref-ERC721-_isApprovedOrOwner-address-uint256-: xref:token/ERC721.adoc#ERC721-_isApprovedOrOwner-address-uint256-
  1788. :ERC721-_safeMint: pass:normal[xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-[`ERC721._safeMint`]]
  1789. :xref-ERC721-_safeMint-address-uint256-: xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-
  1790. :ERC721-_safeMint: pass:normal[xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-bytes-[`ERC721._safeMint`]]
  1791. :xref-ERC721-_safeMint-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721-_safeMint-address-uint256-bytes-
  1792. :ERC721-_mint: pass:normal[xref:token/ERC721.adoc#ERC721-_mint-address-uint256-[`ERC721._mint`]]
  1793. :xref-ERC721-_mint-address-uint256-: xref:token/ERC721.adoc#ERC721-_mint-address-uint256-
  1794. :ERC721-_burn: pass:normal[xref:token/ERC721.adoc#ERC721-_burn-uint256-[`ERC721._burn`]]
  1795. :xref-ERC721-_burn-uint256-: xref:token/ERC721.adoc#ERC721-_burn-uint256-
  1796. :ERC721-_transfer: pass:normal[xref:token/ERC721.adoc#ERC721-_transfer-address-address-uint256-[`ERC721._transfer`]]
  1797. :xref-ERC721-_transfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_transfer-address-address-uint256-
  1798. :ERC721-_approve: pass:normal[xref:token/ERC721.adoc#ERC721-_approve-address-uint256-[`ERC721._approve`]]
  1799. :xref-ERC721-_approve-address-uint256-: xref:token/ERC721.adoc#ERC721-_approve-address-uint256-
  1800. :ERC721-_setApprovalForAll: pass:normal[xref:token/ERC721.adoc#ERC721-_setApprovalForAll-address-address-bool-[`ERC721._setApprovalForAll`]]
  1801. :xref-ERC721-_setApprovalForAll-address-address-bool-: xref:token/ERC721.adoc#ERC721-_setApprovalForAll-address-address-bool-
  1802. :ERC721-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_beforeTokenTransfer-address-address-uint256-[`ERC721._beforeTokenTransfer`]]
  1803. :xref-ERC721-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_beforeTokenTransfer-address-address-uint256-
  1804. :ERC721-_afterTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721-_afterTokenTransfer-address-address-uint256-[`ERC721._afterTokenTransfer`]]
  1805. :xref-ERC721-_afterTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721-_afterTokenTransfer-address-address-uint256-
  1806. :IERC721: pass:normal[xref:token/ERC721.adoc#IERC721[`IERC721`]]
  1807. :xref-IERC721: xref:token/ERC721.adoc#IERC721
  1808. :IERC721-balanceOf: pass:normal[xref:token/ERC721.adoc#IERC721-balanceOf-address-[`IERC721.balanceOf`]]
  1809. :xref-IERC721-balanceOf-address-: xref:token/ERC721.adoc#IERC721-balanceOf-address-
  1810. :IERC721-ownerOf: pass:normal[xref:token/ERC721.adoc#IERC721-ownerOf-uint256-[`IERC721.ownerOf`]]
  1811. :xref-IERC721-ownerOf-uint256-: xref:token/ERC721.adoc#IERC721-ownerOf-uint256-
  1812. :IERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-bytes-[`IERC721.safeTransferFrom`]]
  1813. :xref-IERC721-safeTransferFrom-address-address-uint256-bytes-: xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-bytes-
  1814. :IERC721-safeTransferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-[`IERC721.safeTransferFrom`]]
  1815. :xref-IERC721-safeTransferFrom-address-address-uint256-: xref:token/ERC721.adoc#IERC721-safeTransferFrom-address-address-uint256-
  1816. :IERC721-transferFrom: pass:normal[xref:token/ERC721.adoc#IERC721-transferFrom-address-address-uint256-[`IERC721.transferFrom`]]
  1817. :xref-IERC721-transferFrom-address-address-uint256-: xref:token/ERC721.adoc#IERC721-transferFrom-address-address-uint256-
  1818. :IERC721-approve: pass:normal[xref:token/ERC721.adoc#IERC721-approve-address-uint256-[`IERC721.approve`]]
  1819. :xref-IERC721-approve-address-uint256-: xref:token/ERC721.adoc#IERC721-approve-address-uint256-
  1820. :IERC721-setApprovalForAll: pass:normal[xref:token/ERC721.adoc#IERC721-setApprovalForAll-address-bool-[`IERC721.setApprovalForAll`]]
  1821. :xref-IERC721-setApprovalForAll-address-bool-: xref:token/ERC721.adoc#IERC721-setApprovalForAll-address-bool-
  1822. :IERC721-getApproved: pass:normal[xref:token/ERC721.adoc#IERC721-getApproved-uint256-[`IERC721.getApproved`]]
  1823. :xref-IERC721-getApproved-uint256-: xref:token/ERC721.adoc#IERC721-getApproved-uint256-
  1824. :IERC721-isApprovedForAll: pass:normal[xref:token/ERC721.adoc#IERC721-isApprovedForAll-address-address-[`IERC721.isApprovedForAll`]]
  1825. :xref-IERC721-isApprovedForAll-address-address-: xref:token/ERC721.adoc#IERC721-isApprovedForAll-address-address-
  1826. :IERC721-Transfer: pass:normal[xref:token/ERC721.adoc#IERC721-Transfer-address-address-uint256-[`IERC721.Transfer`]]
  1827. :xref-IERC721-Transfer-address-address-uint256-: xref:token/ERC721.adoc#IERC721-Transfer-address-address-uint256-
  1828. :IERC721-Approval: pass:normal[xref:token/ERC721.adoc#IERC721-Approval-address-address-uint256-[`IERC721.Approval`]]
  1829. :xref-IERC721-Approval-address-address-uint256-: xref:token/ERC721.adoc#IERC721-Approval-address-address-uint256-
  1830. :IERC721-ApprovalForAll: pass:normal[xref:token/ERC721.adoc#IERC721-ApprovalForAll-address-address-bool-[`IERC721.ApprovalForAll`]]
  1831. :xref-IERC721-ApprovalForAll-address-address-bool-: xref:token/ERC721.adoc#IERC721-ApprovalForAll-address-address-bool-
  1832. :IERC721Receiver: pass:normal[xref:token/ERC721.adoc#IERC721Receiver[`IERC721Receiver`]]
  1833. :xref-IERC721Receiver: xref:token/ERC721.adoc#IERC721Receiver
  1834. :IERC721Receiver-onERC721Received: pass:normal[xref:token/ERC721.adoc#IERC721Receiver-onERC721Received-address-address-uint256-bytes-[`IERC721Receiver.onERC721Received`]]
  1835. :xref-IERC721Receiver-onERC721Received-address-address-uint256-bytes-: xref:token/ERC721.adoc#IERC721Receiver-onERC721Received-address-address-uint256-bytes-
  1836. :ERC721Burnable: pass:normal[xref:token/ERC721.adoc#ERC721Burnable[`ERC721Burnable`]]
  1837. :xref-ERC721Burnable: xref:token/ERC721.adoc#ERC721Burnable
  1838. :ERC721Burnable-burn: pass:normal[xref:token/ERC721.adoc#ERC721Burnable-burn-uint256-[`ERC721Burnable.burn`]]
  1839. :xref-ERC721Burnable-burn-uint256-: xref:token/ERC721.adoc#ERC721Burnable-burn-uint256-
  1840. :ERC721Enumerable: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable[`ERC721Enumerable`]]
  1841. :xref-ERC721Enumerable: xref:token/ERC721.adoc#ERC721Enumerable
  1842. :ERC721Enumerable-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-supportsInterface-bytes4-[`ERC721Enumerable.supportsInterface`]]
  1843. :xref-ERC721Enumerable-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721Enumerable-supportsInterface-bytes4-
  1844. :ERC721Enumerable-tokenOfOwnerByIndex: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-[`ERC721Enumerable.tokenOfOwnerByIndex`]]
  1845. :xref-ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-tokenOfOwnerByIndex-address-uint256-
  1846. :ERC721Enumerable-totalSupply: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-totalSupply--[`ERC721Enumerable.totalSupply`]]
  1847. :xref-ERC721Enumerable-totalSupply--: xref:token/ERC721.adoc#ERC721Enumerable-totalSupply--
  1848. :ERC721Enumerable-tokenByIndex: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-tokenByIndex-uint256-[`ERC721Enumerable.tokenByIndex`]]
  1849. :xref-ERC721Enumerable-tokenByIndex-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-tokenByIndex-uint256-
  1850. :ERC721Enumerable-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-[`ERC721Enumerable._beforeTokenTransfer`]]
  1851. :xref-ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Enumerable-_beforeTokenTransfer-address-address-uint256-
  1852. :ERC721Pausable: pass:normal[xref:token/ERC721.adoc#ERC721Pausable[`ERC721Pausable`]]
  1853. :xref-ERC721Pausable: xref:token/ERC721.adoc#ERC721Pausable
  1854. :ERC721Pausable-_beforeTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Pausable-_beforeTokenTransfer-address-address-uint256-[`ERC721Pausable._beforeTokenTransfer`]]
  1855. :xref-ERC721Pausable-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Pausable-_beforeTokenTransfer-address-address-uint256-
  1856. :ERC721Royalty: pass:normal[xref:token/ERC721.adoc#ERC721Royalty[`ERC721Royalty`]]
  1857. :xref-ERC721Royalty: xref:token/ERC721.adoc#ERC721Royalty
  1858. :ERC721Royalty-supportsInterface: pass:normal[xref:token/ERC721.adoc#ERC721Royalty-supportsInterface-bytes4-[`ERC721Royalty.supportsInterface`]]
  1859. :xref-ERC721Royalty-supportsInterface-bytes4-: xref:token/ERC721.adoc#ERC721Royalty-supportsInterface-bytes4-
  1860. :ERC721Royalty-_burn: pass:normal[xref:token/ERC721.adoc#ERC721Royalty-_burn-uint256-[`ERC721Royalty._burn`]]
  1861. :xref-ERC721Royalty-_burn-uint256-: xref:token/ERC721.adoc#ERC721Royalty-_burn-uint256-
  1862. :ERC721URIStorage: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage[`ERC721URIStorage`]]
  1863. :xref-ERC721URIStorage: xref:token/ERC721.adoc#ERC721URIStorage
  1864. :ERC721URIStorage-tokenURI: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-tokenURI-uint256-[`ERC721URIStorage.tokenURI`]]
  1865. :xref-ERC721URIStorage-tokenURI-uint256-: xref:token/ERC721.adoc#ERC721URIStorage-tokenURI-uint256-
  1866. :ERC721URIStorage-_setTokenURI: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-_setTokenURI-uint256-string-[`ERC721URIStorage._setTokenURI`]]
  1867. :xref-ERC721URIStorage-_setTokenURI-uint256-string-: xref:token/ERC721.adoc#ERC721URIStorage-_setTokenURI-uint256-string-
  1868. :ERC721URIStorage-_burn: pass:normal[xref:token/ERC721.adoc#ERC721URIStorage-_burn-uint256-[`ERC721URIStorage._burn`]]
  1869. :xref-ERC721URIStorage-_burn-uint256-: xref:token/ERC721.adoc#ERC721URIStorage-_burn-uint256-
  1870. :IERC721Enumerable: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable[`IERC721Enumerable`]]
  1871. :xref-IERC721Enumerable: xref:token/ERC721.adoc#IERC721Enumerable
  1872. :IERC721Enumerable-totalSupply: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-totalSupply--[`IERC721Enumerable.totalSupply`]]
  1873. :xref-IERC721Enumerable-totalSupply--: xref:token/ERC721.adoc#IERC721Enumerable-totalSupply--
  1874. :IERC721Enumerable-tokenOfOwnerByIndex: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-[`IERC721Enumerable.tokenOfOwnerByIndex`]]
  1875. :xref-IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-: xref:token/ERC721.adoc#IERC721Enumerable-tokenOfOwnerByIndex-address-uint256-
  1876. :IERC721Enumerable-tokenByIndex: pass:normal[xref:token/ERC721.adoc#IERC721Enumerable-tokenByIndex-uint256-[`IERC721Enumerable.tokenByIndex`]]
  1877. :xref-IERC721Enumerable-tokenByIndex-uint256-: xref:token/ERC721.adoc#IERC721Enumerable-tokenByIndex-uint256-
  1878. :IERC721Metadata: pass:normal[xref:token/ERC721.adoc#IERC721Metadata[`IERC721Metadata`]]
  1879. :xref-IERC721Metadata: xref:token/ERC721.adoc#IERC721Metadata
  1880. :IERC721Metadata-name: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-name--[`IERC721Metadata.name`]]
  1881. :xref-IERC721Metadata-name--: xref:token/ERC721.adoc#IERC721Metadata-name--
  1882. :IERC721Metadata-symbol: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-symbol--[`IERC721Metadata.symbol`]]
  1883. :xref-IERC721Metadata-symbol--: xref:token/ERC721.adoc#IERC721Metadata-symbol--
  1884. :IERC721Metadata-tokenURI: pass:normal[xref:token/ERC721.adoc#IERC721Metadata-tokenURI-uint256-[`IERC721Metadata.tokenURI`]]
  1885. :xref-IERC721Metadata-tokenURI-uint256-: xref:token/ERC721.adoc#IERC721Metadata-tokenURI-uint256-
  1886. :ERC721Votes: pass:normal[xref:token/ERC721.adoc#ERC721Votes[`ERC721Votes`]]
  1887. :xref-ERC721Votes: xref:token/ERC721.adoc#ERC721Votes
  1888. :ERC721Votes-_afterTokenTransfer: pass:normal[xref:token/ERC721.adoc#ERC721Votes-_afterTokenTransfer-address-address-uint256-[`ERC721Votes._afterTokenTransfer`]]
  1889. :xref-ERC721Votes-_afterTokenTransfer-address-address-uint256-: xref:token/ERC721.adoc#ERC721Votes-_afterTokenTransfer-address-address-uint256-
  1890. :ERC721Votes-_getVotingUnits: pass:normal[xref:token/ERC721.adoc#ERC721Votes-_getVotingUnits-address-[`ERC721Votes._getVotingUnits`]]
  1891. :xref-ERC721Votes-_getVotingUnits-address-: xref:token/ERC721.adoc#ERC721Votes-_getVotingUnits-address-
  1892. :ERC721Holder: pass:normal[xref:token/ERC721.adoc#ERC721Holder[`ERC721Holder`]]
  1893. :xref-ERC721Holder: xref:token/ERC721.adoc#ERC721Holder
  1894. :ERC721Holder-onERC721Received: pass:normal[xref:token/ERC721.adoc#ERC721Holder-onERC721Received-address-address-uint256-bytes-[`ERC721Holder.onERC721Received`]]
  1895. :xref-ERC721Holder-onERC721Received-address-address-uint256-bytes-: xref:token/ERC721.adoc#ERC721Holder-onERC721Received-address-address-uint256-bytes-
  1896. :ERC777: pass:normal[xref:token/ERC777.adoc#ERC777[`ERC777`]]
  1897. :xref-ERC777: xref:token/ERC777.adoc#ERC777
  1898. :ERC777-_ERC1820_REGISTRY: pass:normal[xref:token/ERC777.adoc#ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry[`ERC777._ERC1820_REGISTRY`]]
  1899. :xref-ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry: xref:token/ERC777.adoc#ERC777-_ERC1820_REGISTRY-contract-IERC1820Registry
  1900. :ERC777-constructor: pass:normal[xref:token/ERC777.adoc#ERC777-constructor-string-string-address---[`ERC777.constructor`]]
  1901. :xref-ERC777-constructor-string-string-address---: xref:token/ERC777.adoc#ERC777-constructor-string-string-address---
  1902. :ERC777-name: pass:normal[xref:token/ERC777.adoc#ERC777-name--[`ERC777.name`]]
  1903. :xref-ERC777-name--: xref:token/ERC777.adoc#ERC777-name--
  1904. :ERC777-symbol: pass:normal[xref:token/ERC777.adoc#ERC777-symbol--[`ERC777.symbol`]]
  1905. :xref-ERC777-symbol--: xref:token/ERC777.adoc#ERC777-symbol--
  1906. :ERC777-decimals: pass:normal[xref:token/ERC777.adoc#ERC777-decimals--[`ERC777.decimals`]]
  1907. :xref-ERC777-decimals--: xref:token/ERC777.adoc#ERC777-decimals--
  1908. :ERC777-granularity: pass:normal[xref:token/ERC777.adoc#ERC777-granularity--[`ERC777.granularity`]]
  1909. :xref-ERC777-granularity--: xref:token/ERC777.adoc#ERC777-granularity--
  1910. :ERC777-totalSupply: pass:normal[xref:token/ERC777.adoc#ERC777-totalSupply--[`ERC777.totalSupply`]]
  1911. :xref-ERC777-totalSupply--: xref:token/ERC777.adoc#ERC777-totalSupply--
  1912. :ERC777-balanceOf: pass:normal[xref:token/ERC777.adoc#ERC777-balanceOf-address-[`ERC777.balanceOf`]]
  1913. :xref-ERC777-balanceOf-address-: xref:token/ERC777.adoc#ERC777-balanceOf-address-
  1914. :ERC777-send: pass:normal[xref:token/ERC777.adoc#ERC777-send-address-uint256-bytes-[`ERC777.send`]]
  1915. :xref-ERC777-send-address-uint256-bytes-: xref:token/ERC777.adoc#ERC777-send-address-uint256-bytes-
  1916. :ERC777-transfer: pass:normal[xref:token/ERC777.adoc#ERC777-transfer-address-uint256-[`ERC777.transfer`]]
  1917. :xref-ERC777-transfer-address-uint256-: xref:token/ERC777.adoc#ERC777-transfer-address-uint256-
  1918. :ERC777-burn: pass:normal[xref:token/ERC777.adoc#ERC777-burn-uint256-bytes-[`ERC777.burn`]]
  1919. :xref-ERC777-burn-uint256-bytes-: xref:token/ERC777.adoc#ERC777-burn-uint256-bytes-
  1920. :ERC777-isOperatorFor: pass:normal[xref:token/ERC777.adoc#ERC777-isOperatorFor-address-address-[`ERC777.isOperatorFor`]]
  1921. :xref-ERC777-isOperatorFor-address-address-: xref:token/ERC777.adoc#ERC777-isOperatorFor-address-address-
  1922. :ERC777-authorizeOperator: pass:normal[xref:token/ERC777.adoc#ERC777-authorizeOperator-address-[`ERC777.authorizeOperator`]]
  1923. :xref-ERC777-authorizeOperator-address-: xref:token/ERC777.adoc#ERC777-authorizeOperator-address-
  1924. :ERC777-revokeOperator: pass:normal[xref:token/ERC777.adoc#ERC777-revokeOperator-address-[`ERC777.revokeOperator`]]
  1925. :xref-ERC777-revokeOperator-address-: xref:token/ERC777.adoc#ERC777-revokeOperator-address-
  1926. :ERC777-defaultOperators: pass:normal[xref:token/ERC777.adoc#ERC777-defaultOperators--[`ERC777.defaultOperators`]]
  1927. :xref-ERC777-defaultOperators--: xref:token/ERC777.adoc#ERC777-defaultOperators--
  1928. :ERC777-operatorSend: pass:normal[xref:token/ERC777.adoc#ERC777-operatorSend-address-address-uint256-bytes-bytes-[`ERC777.operatorSend`]]
  1929. :xref-ERC777-operatorSend-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-operatorSend-address-address-uint256-bytes-bytes-
  1930. :ERC777-operatorBurn: pass:normal[xref:token/ERC777.adoc#ERC777-operatorBurn-address-uint256-bytes-bytes-[`ERC777.operatorBurn`]]
  1931. :xref-ERC777-operatorBurn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-operatorBurn-address-uint256-bytes-bytes-
  1932. :ERC777-allowance: pass:normal[xref:token/ERC777.adoc#ERC777-allowance-address-address-[`ERC777.allowance`]]
  1933. :xref-ERC777-allowance-address-address-: xref:token/ERC777.adoc#ERC777-allowance-address-address-
  1934. :ERC777-approve: pass:normal[xref:token/ERC777.adoc#ERC777-approve-address-uint256-[`ERC777.approve`]]
  1935. :xref-ERC777-approve-address-uint256-: xref:token/ERC777.adoc#ERC777-approve-address-uint256-
  1936. :ERC777-transferFrom: pass:normal[xref:token/ERC777.adoc#ERC777-transferFrom-address-address-uint256-[`ERC777.transferFrom`]]
  1937. :xref-ERC777-transferFrom-address-address-uint256-: xref:token/ERC777.adoc#ERC777-transferFrom-address-address-uint256-
  1938. :ERC777-_mint: pass:normal[xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-[`ERC777._mint`]]
  1939. :xref-ERC777-_mint-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-
  1940. :ERC777-_mint: pass:normal[xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-bool-[`ERC777._mint`]]
  1941. :xref-ERC777-_mint-address-uint256-bytes-bytes-bool-: xref:token/ERC777.adoc#ERC777-_mint-address-uint256-bytes-bytes-bool-
  1942. :ERC777-_send: pass:normal[xref:token/ERC777.adoc#ERC777-_send-address-address-uint256-bytes-bytes-bool-[`ERC777._send`]]
  1943. :xref-ERC777-_send-address-address-uint256-bytes-bytes-bool-: xref:token/ERC777.adoc#ERC777-_send-address-address-uint256-bytes-bytes-bool-
  1944. :ERC777-_burn: pass:normal[xref:token/ERC777.adoc#ERC777-_burn-address-uint256-bytes-bytes-[`ERC777._burn`]]
  1945. :xref-ERC777-_burn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#ERC777-_burn-address-uint256-bytes-bytes-
  1946. :ERC777-_approve: pass:normal[xref:token/ERC777.adoc#ERC777-_approve-address-address-uint256-[`ERC777._approve`]]
  1947. :xref-ERC777-_approve-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_approve-address-address-uint256-
  1948. :ERC777-_spendAllowance: pass:normal[xref:token/ERC777.adoc#ERC777-_spendAllowance-address-address-uint256-[`ERC777._spendAllowance`]]
  1949. :xref-ERC777-_spendAllowance-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_spendAllowance-address-address-uint256-
  1950. :ERC777-_beforeTokenTransfer: pass:normal[xref:token/ERC777.adoc#ERC777-_beforeTokenTransfer-address-address-address-uint256-[`ERC777._beforeTokenTransfer`]]
  1951. :xref-ERC777-_beforeTokenTransfer-address-address-address-uint256-: xref:token/ERC777.adoc#ERC777-_beforeTokenTransfer-address-address-address-uint256-
  1952. :IERC777: pass:normal[xref:token/ERC777.adoc#IERC777[`IERC777`]]
  1953. :xref-IERC777: xref:token/ERC777.adoc#IERC777
  1954. :IERC777-name: pass:normal[xref:token/ERC777.adoc#IERC777-name--[`IERC777.name`]]
  1955. :xref-IERC777-name--: xref:token/ERC777.adoc#IERC777-name--
  1956. :IERC777-symbol: pass:normal[xref:token/ERC777.adoc#IERC777-symbol--[`IERC777.symbol`]]
  1957. :xref-IERC777-symbol--: xref:token/ERC777.adoc#IERC777-symbol--
  1958. :IERC777-granularity: pass:normal[xref:token/ERC777.adoc#IERC777-granularity--[`IERC777.granularity`]]
  1959. :xref-IERC777-granularity--: xref:token/ERC777.adoc#IERC777-granularity--
  1960. :IERC777-totalSupply: pass:normal[xref:token/ERC777.adoc#IERC777-totalSupply--[`IERC777.totalSupply`]]
  1961. :xref-IERC777-totalSupply--: xref:token/ERC777.adoc#IERC777-totalSupply--
  1962. :IERC777-balanceOf: pass:normal[xref:token/ERC777.adoc#IERC777-balanceOf-address-[`IERC777.balanceOf`]]
  1963. :xref-IERC777-balanceOf-address-: xref:token/ERC777.adoc#IERC777-balanceOf-address-
  1964. :IERC777-send: pass:normal[xref:token/ERC777.adoc#IERC777-send-address-uint256-bytes-[`IERC777.send`]]
  1965. :xref-IERC777-send-address-uint256-bytes-: xref:token/ERC777.adoc#IERC777-send-address-uint256-bytes-
  1966. :IERC777-burn: pass:normal[xref:token/ERC777.adoc#IERC777-burn-uint256-bytes-[`IERC777.burn`]]
  1967. :xref-IERC777-burn-uint256-bytes-: xref:token/ERC777.adoc#IERC777-burn-uint256-bytes-
  1968. :IERC777-isOperatorFor: pass:normal[xref:token/ERC777.adoc#IERC777-isOperatorFor-address-address-[`IERC777.isOperatorFor`]]
  1969. :xref-IERC777-isOperatorFor-address-address-: xref:token/ERC777.adoc#IERC777-isOperatorFor-address-address-
  1970. :IERC777-authorizeOperator: pass:normal[xref:token/ERC777.adoc#IERC777-authorizeOperator-address-[`IERC777.authorizeOperator`]]
  1971. :xref-IERC777-authorizeOperator-address-: xref:token/ERC777.adoc#IERC777-authorizeOperator-address-
  1972. :IERC777-revokeOperator: pass:normal[xref:token/ERC777.adoc#IERC777-revokeOperator-address-[`IERC777.revokeOperator`]]
  1973. :xref-IERC777-revokeOperator-address-: xref:token/ERC777.adoc#IERC777-revokeOperator-address-
  1974. :IERC777-defaultOperators: pass:normal[xref:token/ERC777.adoc#IERC777-defaultOperators--[`IERC777.defaultOperators`]]
  1975. :xref-IERC777-defaultOperators--: xref:token/ERC777.adoc#IERC777-defaultOperators--
  1976. :IERC777-operatorSend: pass:normal[xref:token/ERC777.adoc#IERC777-operatorSend-address-address-uint256-bytes-bytes-[`IERC777.operatorSend`]]
  1977. :xref-IERC777-operatorSend-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-operatorSend-address-address-uint256-bytes-bytes-
  1978. :IERC777-operatorBurn: pass:normal[xref:token/ERC777.adoc#IERC777-operatorBurn-address-uint256-bytes-bytes-[`IERC777.operatorBurn`]]
  1979. :xref-IERC777-operatorBurn-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-operatorBurn-address-uint256-bytes-bytes-
  1980. :IERC777-Minted: pass:normal[xref:token/ERC777.adoc#IERC777-Minted-address-address-uint256-bytes-bytes-[`IERC777.Minted`]]
  1981. :xref-IERC777-Minted-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Minted-address-address-uint256-bytes-bytes-
  1982. :IERC777-Burned: pass:normal[xref:token/ERC777.adoc#IERC777-Burned-address-address-uint256-bytes-bytes-[`IERC777.Burned`]]
  1983. :xref-IERC777-Burned-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Burned-address-address-uint256-bytes-bytes-
  1984. :IERC777-AuthorizedOperator: pass:normal[xref:token/ERC777.adoc#IERC777-AuthorizedOperator-address-address-[`IERC777.AuthorizedOperator`]]
  1985. :xref-IERC777-AuthorizedOperator-address-address-: xref:token/ERC777.adoc#IERC777-AuthorizedOperator-address-address-
  1986. :IERC777-RevokedOperator: pass:normal[xref:token/ERC777.adoc#IERC777-RevokedOperator-address-address-[`IERC777.RevokedOperator`]]
  1987. :xref-IERC777-RevokedOperator-address-address-: xref:token/ERC777.adoc#IERC777-RevokedOperator-address-address-
  1988. :IERC777-Sent: pass:normal[xref:token/ERC777.adoc#IERC777-Sent-address-address-address-uint256-bytes-bytes-[`IERC777.Sent`]]
  1989. :xref-IERC777-Sent-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777-Sent-address-address-address-uint256-bytes-bytes-
  1990. :IERC777Recipient: pass:normal[xref:token/ERC777.adoc#IERC777Recipient[`IERC777Recipient`]]
  1991. :xref-IERC777Recipient: xref:token/ERC777.adoc#IERC777Recipient
  1992. :IERC777Recipient-tokensReceived: pass:normal[xref:token/ERC777.adoc#IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-[`IERC777Recipient.tokensReceived`]]
  1993. :xref-IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777Recipient-tokensReceived-address-address-address-uint256-bytes-bytes-
  1994. :IERC777Sender: pass:normal[xref:token/ERC777.adoc#IERC777Sender[`IERC777Sender`]]
  1995. :xref-IERC777Sender: xref:token/ERC777.adoc#IERC777Sender
  1996. :IERC777Sender-tokensToSend: pass:normal[xref:token/ERC777.adoc#IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-[`IERC777Sender.tokensToSend`]]
  1997. :xref-IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-: xref:token/ERC777.adoc#IERC777Sender-tokensToSend-address-address-address-uint256-bytes-bytes-
  1998. :ERC777PresetFixedSupply: pass:normal[xref:token/ERC777.adoc#ERC777PresetFixedSupply[`ERC777PresetFixedSupply`]]
  1999. :xref-ERC777PresetFixedSupply: xref:token/ERC777.adoc#ERC777PresetFixedSupply
  2000. :ERC777PresetFixedSupply-constructor: pass:normal[xref:token/ERC777.adoc#ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-[`ERC777PresetFixedSupply.constructor`]]
  2001. :xref-ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-: xref:token/ERC777.adoc#ERC777PresetFixedSupply-constructor-string-string-address---uint256-address-
  2002. :ERC2981: pass:normal[xref:token/common.adoc#ERC2981[`ERC2981`]]
  2003. :xref-ERC2981: xref:token/common.adoc#ERC2981
  2004. :ERC2981-supportsInterface: pass:normal[xref:token/common.adoc#ERC2981-supportsInterface-bytes4-[`ERC2981.supportsInterface`]]
  2005. :xref-ERC2981-supportsInterface-bytes4-: xref:token/common.adoc#ERC2981-supportsInterface-bytes4-
  2006. :ERC2981-royaltyInfo: pass:normal[xref:token/common.adoc#ERC2981-royaltyInfo-uint256-uint256-[`ERC2981.royaltyInfo`]]
  2007. :xref-ERC2981-royaltyInfo-uint256-uint256-: xref:token/common.adoc#ERC2981-royaltyInfo-uint256-uint256-
  2008. :ERC2981-_feeDenominator: pass:normal[xref:token/common.adoc#ERC2981-_feeDenominator--[`ERC2981._feeDenominator`]]
  2009. :xref-ERC2981-_feeDenominator--: xref:token/common.adoc#ERC2981-_feeDenominator--
  2010. :ERC2981-_setDefaultRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_setDefaultRoyalty-address-uint96-[`ERC2981._setDefaultRoyalty`]]
  2011. :xref-ERC2981-_setDefaultRoyalty-address-uint96-: xref:token/common.adoc#ERC2981-_setDefaultRoyalty-address-uint96-
  2012. :ERC2981-_deleteDefaultRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_deleteDefaultRoyalty--[`ERC2981._deleteDefaultRoyalty`]]
  2013. :xref-ERC2981-_deleteDefaultRoyalty--: xref:token/common.adoc#ERC2981-_deleteDefaultRoyalty--
  2014. :ERC2981-_setTokenRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_setTokenRoyalty-uint256-address-uint96-[`ERC2981._setTokenRoyalty`]]
  2015. :xref-ERC2981-_setTokenRoyalty-uint256-address-uint96-: xref:token/common.adoc#ERC2981-_setTokenRoyalty-uint256-address-uint96-
  2016. :ERC2981-_resetTokenRoyalty: pass:normal[xref:token/common.adoc#ERC2981-_resetTokenRoyalty-uint256-[`ERC2981._resetTokenRoyalty`]]
  2017. :xref-ERC2981-_resetTokenRoyalty-uint256-: xref:token/common.adoc#ERC2981-_resetTokenRoyalty-uint256-
  2018. :ERC2981-RoyaltyInfo: pass:normal[xref:token/common.adoc#ERC2981-RoyaltyInfo[`ERC2981.RoyaltyInfo`]]
  2019. :xref-ERC2981-RoyaltyInfo: xref:token/common.adoc#ERC2981-RoyaltyInfo
  2020. :ERC1155PresetMinterPauser: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser[`ERC1155PresetMinterPauser`]]
  2021. :xref-ERC1155PresetMinterPauser: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser
  2022. :ERC1155PresetMinterPauser-MINTER_ROLE: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-MINTER_ROLE-bytes32[`ERC1155PresetMinterPauser.MINTER_ROLE`]]
  2023. :xref-ERC1155PresetMinterPauser-MINTER_ROLE-bytes32: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-MINTER_ROLE-bytes32
  2024. :ERC1155PresetMinterPauser-PAUSER_ROLE: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32[`ERC1155PresetMinterPauser.PAUSER_ROLE`]]
  2025. :xref-ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-PAUSER_ROLE-bytes32
  2026. :ERC1155PresetMinterPauser-constructor: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-constructor-string-[`ERC1155PresetMinterPauser.constructor`]]
  2027. :xref-ERC1155PresetMinterPauser-constructor-string-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-constructor-string-
  2028. :ERC1155PresetMinterPauser-mint: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-[`ERC1155PresetMinterPauser.mint`]]
  2029. :xref-ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mint-address-uint256-uint256-bytes-
  2030. :ERC1155PresetMinterPauser-mintBatch: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-[`ERC1155PresetMinterPauser.mintBatch`]]
  2031. :xref-ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-mintBatch-address-uint256---uint256---bytes-
  2032. :ERC1155PresetMinterPauser-pause: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-pause--[`ERC1155PresetMinterPauser.pause`]]
  2033. :xref-ERC1155PresetMinterPauser-pause--: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-pause--
  2034. :ERC1155PresetMinterPauser-unpause: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-unpause--[`ERC1155PresetMinterPauser.unpause`]]
  2035. :xref-ERC1155PresetMinterPauser-unpause--: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-unpause--
  2036. :ERC1155PresetMinterPauser-supportsInterface: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-supportsInterface-bytes4-[`ERC1155PresetMinterPauser.supportsInterface`]]
  2037. :xref-ERC1155PresetMinterPauser-supportsInterface-bytes4-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-supportsInterface-bytes4-
  2038. :ERC1155PresetMinterPauser-_beforeTokenTransfer: pass:normal[xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-[`ERC1155PresetMinterPauser._beforeTokenTransfer`]]
  2039. :xref-ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-: xref:token/ERC1155/presets.md#ERC1155PresetMinterPauser-_beforeTokenTransfer-address-address-address-uint256---uint256---bytes-
  2040. :ERC20PresetFixedSupply: pass:normal[xref:token/ERC20/presets.md#ERC20PresetFixedSupply[`ERC20PresetFixedSupply`]]
  2041. :xref-ERC20PresetFixedSupply: xref:token/ERC20/presets.md#ERC20PresetFixedSupply
  2042. :ERC20PresetFixedSupply-constructor: pass:normal[xref:token/ERC20/presets.md#ERC20PresetFixedSupply-constructor-string-string-uint256-address-[`ERC20PresetFixedSupply.constructor`]]
  2043. :xref-ERC20PresetFixedSupply-constructor-string-string-uint256-address-: xref:token/ERC20/presets.md#ERC20PresetFixedSupply-constructor-string-string-uint256-address-
  2044. :ERC20PresetMinterPauser: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser[`ERC20PresetMinterPauser`]]
  2045. :xref-ERC20PresetMinterPauser: xref:token/ERC20/presets.md#ERC20PresetMinterPauser
  2046. :ERC20PresetMinterPauser-MINTER_ROLE: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-MINTER_ROLE-bytes32[`ERC20PresetMinterPauser.MINTER_ROLE`]]
  2047. :xref-ERC20PresetMinterPauser-MINTER_ROLE-bytes32: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-MINTER_ROLE-bytes32
  2048. :ERC20PresetMinterPauser-PAUSER_ROLE: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-PAUSER_ROLE-bytes32[`ERC20PresetMinterPauser.PAUSER_ROLE`]]
  2049. :xref-ERC20PresetMinterPauser-PAUSER_ROLE-bytes32: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-PAUSER_ROLE-bytes32
  2050. :ERC20PresetMinterPauser-constructor: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-constructor-string-string-[`ERC20PresetMinterPauser.constructor`]]
  2051. :xref-ERC20PresetMinterPauser-constructor-string-string-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-constructor-string-string-
  2052. :ERC20PresetMinterPauser-mint: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-mint-address-uint256-[`ERC20PresetMinterPauser.mint`]]
  2053. :xref-ERC20PresetMinterPauser-mint-address-uint256-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-mint-address-uint256-
  2054. :ERC20PresetMinterPauser-pause: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-pause--[`ERC20PresetMinterPauser.pause`]]
  2055. :xref-ERC20PresetMinterPauser-pause--: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-pause--
  2056. :ERC20PresetMinterPauser-unpause: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-unpause--[`ERC20PresetMinterPauser.unpause`]]
  2057. :xref-ERC20PresetMinterPauser-unpause--: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-unpause--
  2058. :ERC20PresetMinterPauser-_beforeTokenTransfer: pass:normal[xref:token/ERC20/presets.md#ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-[`ERC20PresetMinterPauser._beforeTokenTransfer`]]
  2059. :xref-ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC20/presets.md#ERC20PresetMinterPauser-_beforeTokenTransfer-address-address-uint256-
  2060. :ERC721PresetMinterPauserAutoId: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId[`ERC721PresetMinterPauserAutoId`]]
  2061. :xref-ERC721PresetMinterPauserAutoId: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId
  2062. :ERC721PresetMinterPauserAutoId-MINTER_ROLE: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32[`ERC721PresetMinterPauserAutoId.MINTER_ROLE`]]
  2063. :xref-ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-MINTER_ROLE-bytes32
  2064. :ERC721PresetMinterPauserAutoId-PAUSER_ROLE: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32[`ERC721PresetMinterPauserAutoId.PAUSER_ROLE`]]
  2065. :xref-ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-PAUSER_ROLE-bytes32
  2066. :ERC721PresetMinterPauserAutoId-constructor: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-constructor-string-string-string-[`ERC721PresetMinterPauserAutoId.constructor`]]
  2067. :xref-ERC721PresetMinterPauserAutoId-constructor-string-string-string-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-constructor-string-string-string-
  2068. :ERC721PresetMinterPauserAutoId-_baseURI: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_baseURI--[`ERC721PresetMinterPauserAutoId._baseURI`]]
  2069. :xref-ERC721PresetMinterPauserAutoId-_baseURI--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_baseURI--
  2070. :ERC721PresetMinterPauserAutoId-mint: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-mint-address-[`ERC721PresetMinterPauserAutoId.mint`]]
  2071. :xref-ERC721PresetMinterPauserAutoId-mint-address-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-mint-address-
  2072. :ERC721PresetMinterPauserAutoId-pause: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-pause--[`ERC721PresetMinterPauserAutoId.pause`]]
  2073. :xref-ERC721PresetMinterPauserAutoId-pause--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-pause--
  2074. :ERC721PresetMinterPauserAutoId-unpause: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-unpause--[`ERC721PresetMinterPauserAutoId.unpause`]]
  2075. :xref-ERC721PresetMinterPauserAutoId-unpause--: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-unpause--
  2076. :ERC721PresetMinterPauserAutoId-_beforeTokenTransfer: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-[`ERC721PresetMinterPauserAutoId._beforeTokenTransfer`]]
  2077. :xref-ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-_beforeTokenTransfer-address-address-uint256-
  2078. :ERC721PresetMinterPauserAutoId-supportsInterface: pass:normal[xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-[`ERC721PresetMinterPauserAutoId.supportsInterface`]]
  2079. :xref-ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-: xref:token/ERC721/presets.md#ERC721PresetMinterPauserAutoId-supportsInterface-bytes4-
  2080. = Governance
  2081. [.readme-notice]
  2082. NOTE: This document is better viewed at https://docs.openzeppelin.com/contracts/api/governance
  2083. This directory includes primitives for on-chain governance.
  2084. == Governor
  2085. 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.
  2086. [TIP]
  2087. ====
  2088. For a guided experience, set up your Governor contract using https://wizard.openzeppelin.com/#governor[Contracts Wizard].
  2089. For a written walkthrough, check out our guide on xref:ROOT:governance.adoc[How to set up on-chain governance].
  2090. ====
  2091. * {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.
  2092. Votes modules determine the source of voting power, and sometimes quorum number.
  2093. * {GovernorVotes}: Extracts voting weight from an {ERC20Votes} token.
  2094. * {GovernorVotesComp}: Extracts voting weight from a COMP-like or {ERC20VotesComp} token.
  2095. * {GovernorVotesQuorumFraction}: Combines with `GovernorVotes` to set the quorum as a fraction of the total token supply.
  2096. Counting modules determine valid voting options.
  2097. * {GovernorCountingSimple}: Simple voting mechanism with 3 voting options: Against, For and Abstain.
  2098. 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.
  2099. * {GovernorTimelockControl}: Connects with an instance of {TimelockController}. Allows multiple proposers and executors, in addition to the Governor itself.
  2100. * {GovernorTimelockCompound}: Connects with an instance of Compound's https://github.com/compound-finance/compound-protocol/blob/master/contracts/Timelock.sol[`Timelock`] contract.
  2101. Other extensions can customize the behavior or interface in multiple ways.
  2102. * {GovernorCompatibilityBravo}: Extends the interface to be fully `GovernorBravo`-compatible. Note that events are compatible regardless of whether this extension is included or not.
  2103. * {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.
  2104. * {GovernorPreventLateQuorum}: Ensures there is a minimum voting period after quorum is reached as a security protection against large voters.
  2105. In addition to modules and extensions, the core contract requires a few virtual functions to be implemented to your particular specifications:
  2106. * <<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.
  2107. * <<Governor-votingPeriod-,`votingPeriod()`>>: Delay (in number of blocks) since the proposal starts until voting ends.
  2108. * <<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`.
  2109. 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.
  2110. === Core
  2111. :IGovernor: pass:normal[xref:#IGovernor[`++IGovernor++`]]
  2112. :name: pass:normal[xref:#IGovernor-name--[`++name++`]]
  2113. :version: pass:normal[xref:#IGovernor-version--[`++version++`]]
  2114. :COUNTING_MODE: pass:normal[xref:#IGovernor-COUNTING_MODE--[`++COUNTING_MODE++`]]
  2115. :hashProposal: pass:normal[xref:#IGovernor-hashProposal-address---uint256---bytes---bytes32-[`++hashProposal++`]]
  2116. :state: pass:normal[xref:#IGovernor-state-uint256-[`++state++`]]
  2117. :proposalSnapshot: pass:normal[xref:#IGovernor-proposalSnapshot-uint256-[`++proposalSnapshot++`]]
  2118. :proposalDeadline: pass:normal[xref:#IGovernor-proposalDeadline-uint256-[`++proposalDeadline++`]]
  2119. :votingDelay: pass:normal[xref:#IGovernor-votingDelay--[`++votingDelay++`]]
  2120. :votingPeriod: pass:normal[xref:#IGovernor-votingPeriod--[`++votingPeriod++`]]
  2121. :quorum: pass:normal[xref:#IGovernor-quorum-uint256-[`++quorum++`]]
  2122. :getVotes: pass:normal[xref:#IGovernor-getVotes-address-uint256-[`++getVotes++`]]
  2123. :getVotesWithParams: pass:normal[xref:#IGovernor-getVotesWithParams-address-uint256-bytes-[`++getVotesWithParams++`]]
  2124. :hasVoted: pass:normal[xref:#IGovernor-hasVoted-uint256-address-[`++hasVoted++`]]
  2125. :propose: pass:normal[xref:#IGovernor-propose-address---uint256---bytes---string-[`++propose++`]]
  2126. :execute: pass:normal[xref:#IGovernor-execute-address---uint256---bytes---bytes32-[`++execute++`]]
  2127. :castVote: pass:normal[xref:#IGovernor-castVote-uint256-uint8-[`++castVote++`]]
  2128. :castVoteWithReason: pass:normal[xref:#IGovernor-castVoteWithReason-uint256-uint8-string-[`++castVoteWithReason++`]]
  2129. :castVoteWithReasonAndParams: pass:normal[xref:#IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`++castVoteWithReasonAndParams++`]]
  2130. :castVoteBySig: pass:normal[xref:#IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`++castVoteBySig++`]]
  2131. :castVoteWithReasonAndParamsBySig: pass:normal[xref:#IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`++castVoteWithReasonAndParamsBySig++`]]
  2132. :ProposalCreated: pass:normal[xref:#IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-[`++ProposalCreated++`]]
  2133. :ProposalCanceled: pass:normal[xref:#IGovernor-ProposalCanceled-uint256-[`++ProposalCanceled++`]]
  2134. :ProposalExecuted: pass:normal[xref:#IGovernor-ProposalExecuted-uint256-[`++ProposalExecuted++`]]
  2135. :VoteCast: pass:normal[xref:#IGovernor-VoteCast-address-uint256-uint8-uint256-string-[`++VoteCast++`]]
  2136. :VoteCastWithParams: pass:normal[xref:#IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-[`++VoteCastWithParams++`]]
  2137. :ProposalState: pass:normal[xref:#IGovernor-ProposalState[`++ProposalState++`]]
  2138. [.contract]
  2139. [[IGovernor]]
  2140. === `++IGovernor++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/IGovernor.sol[{github-icon},role=heading-link]
  2141. [.hljs-theme-light.nopadding]
  2142. ```solidity
  2143. import "@openzeppelin/contracts/governance/IGovernor.sol";
  2144. ```
  2145. Interface of the {Governor} core.
  2146. _Available since v4.3._
  2147. [.contract-index]
  2148. .Functions
  2149. --
  2150. * {xref-IGovernor-name--}[`++name()++`]
  2151. * {xref-IGovernor-version--}[`++version()++`]
  2152. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  2153. * {xref-IGovernor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  2154. * {xref-IGovernor-state-uint256-}[`++state(proposalId)++`]
  2155. * {xref-IGovernor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  2156. * {xref-IGovernor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  2157. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  2158. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  2159. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  2160. * {xref-IGovernor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  2161. * {xref-IGovernor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  2162. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  2163. * {xref-IGovernor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  2164. * {xref-IGovernor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  2165. * {xref-IGovernor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  2166. * {xref-IGovernor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  2167. * {xref-IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  2168. * {xref-IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  2169. * {xref-IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  2170. [.contract-subindex-inherited]
  2171. .IERC165
  2172. * {xref-IERC165-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2173. --
  2174. [.contract-index]
  2175. .Events
  2176. --
  2177. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  2178. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  2179. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  2180. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  2181. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  2182. [.contract-subindex-inherited]
  2183. .IERC165
  2184. --
  2185. [.contract-item]
  2186. [[IGovernor-name--]]
  2187. ==== `[.contract-item-name]#++name++#++() → string++` [.item-kind]#public#
  2188. Name of the governor instance (used in building the ERC712 domain separator).
  2189. [.contract-item]
  2190. [[IGovernor-version--]]
  2191. ==== `[.contract-item-name]#++version++#++() → string++` [.item-kind]#public#
  2192. Version of the governor instance (used in building the ERC712 domain separator). Default: "1"
  2193. [.contract-item]
  2194. [[IGovernor-COUNTING_MODE--]]
  2195. ==== `[.contract-item-name]#++COUNTING_MODE++#++() → string++` [.item-kind]#public#
  2196. A description of the possible `support` values for {castVote} and the way these votes are counted, meant to
  2197. be consumed by UIs to show correct vote options and interpret the results. The string is a URL-encoded sequence of
  2198. key-value pairs that each describe one aspect, for example `support=bravo&quorum=for,abstain`.
  2199. There are 2 standard keys: `support` and `quorum`.
  2200. - `support=bravo` refers to the vote options 0 = Against, 1 = For, 2 = Abstain, as in `GovernorBravo`.
  2201. - `quorum=bravo` means that only For votes are counted towards quorum.
  2202. - `quorum=for,abstain` means that both For and Abstain votes are counted towards quorum.
  2203. If a counting module makes use of encoded `params`, it should include this under a `params` key with a unique
  2204. name that describes the behavior. For example:
  2205. - `params=fractional` might refer to a scheme where votes are divided fractionally between for/against/abstain.
  2206. - `params=erc721` might refer to a scheme where specific NFTs are delegated to vote.
  2207. NOTE: The string can be decoded by the standard
  2208. https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams[`URLSearchParams`]
  2209. JavaScript class.
  2210. [.contract-item]
  2211. [[IGovernor-hashProposal-address---uint256---bytes---bytes32-]]
  2212. ==== `[.contract-item-name]#++hashProposal++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  2213. Hashing function used to (re)build the proposal id from the proposal details..
  2214. [.contract-item]
  2215. [[IGovernor-state-uint256-]]
  2216. ==== `[.contract-item-name]#++state++#++(uint256 proposalId) → enum IGovernor.ProposalState++` [.item-kind]#public#
  2217. Current state of a proposal, following Compound's convention
  2218. [.contract-item]
  2219. [[IGovernor-proposalSnapshot-uint256-]]
  2220. ==== `[.contract-item-name]#++proposalSnapshot++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  2221. Block number used to retrieve user's votes and quorum. As per Compound's Comp and OpenZeppelin's
  2222. ERC20Votes, the snapshot is performed at the end of this block. Hence, voting for this proposal starts at the
  2223. beginning of the following block.
  2224. [.contract-item]
  2225. [[IGovernor-proposalDeadline-uint256-]]
  2226. ==== `[.contract-item-name]#++proposalDeadline++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  2227. Block number at which votes close. Votes close at the end of this block, so it is possible to cast a vote
  2228. during this block.
  2229. [.contract-item]
  2230. [[IGovernor-votingDelay--]]
  2231. ==== `[.contract-item-name]#++votingDelay++#++() → uint256++` [.item-kind]#public#
  2232. Delay, in number of block, between the proposal is created and the vote starts. This can be increassed to
  2233. leave time for users to buy voting power, of delegate it, before the voting of a proposal starts.
  2234. [.contract-item]
  2235. [[IGovernor-votingPeriod--]]
  2236. ==== `[.contract-item-name]#++votingPeriod++#++() → uint256++` [.item-kind]#public#
  2237. Delay, in number of blocks, between the vote start and vote ends.
  2238. NOTE: The {votingDelay} can delay the start of the vote. This must be considered when setting the voting
  2239. duration compared to the voting delay.
  2240. [.contract-item]
  2241. [[IGovernor-quorum-uint256-]]
  2242. ==== `[.contract-item-name]#++quorum++#++(uint256 blockNumber) → uint256++` [.item-kind]#public#
  2243. Minimum number of cast voted required for a proposal to be successful.
  2244. Note: The `blockNumber` parameter corresponds to the snapshot used for counting vote. This allows to scale the
  2245. quorum depending on values such as the totalSupply of a token at this block (see {ERC20Votes}).
  2246. [.contract-item]
  2247. [[IGovernor-getVotes-address-uint256-]]
  2248. ==== `[.contract-item-name]#++getVotes++#++(address account, uint256 blockNumber) → uint256++` [.item-kind]#public#
  2249. Voting power of an `account` at a specific `blockNumber`.
  2250. Note: this can be implemented in a number of ways, for example by reading the delegated balance from one (or
  2251. multiple), {ERC20Votes} tokens.
  2252. [.contract-item]
  2253. [[IGovernor-getVotesWithParams-address-uint256-bytes-]]
  2254. ==== `[.contract-item-name]#++getVotesWithParams++#++(address account, uint256 blockNumber, bytes params) → uint256++` [.item-kind]#public#
  2255. Voting power of an `account` at a specific `blockNumber` given additional encoded parameters.
  2256. [.contract-item]
  2257. [[IGovernor-hasVoted-uint256-address-]]
  2258. ==== `[.contract-item-name]#++hasVoted++#++(uint256 proposalId, address account) → bool++` [.item-kind]#public#
  2259. Returns weither `account` has cast a vote on `proposalId`.
  2260. [.contract-item]
  2261. [[IGovernor-propose-address---uint256---bytes---string-]]
  2262. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, bytes[] calldatas, string description) → uint256 proposalId++` [.item-kind]#public#
  2263. Create a new proposal. Vote start {IGovernor-votingDelay} blocks after the proposal is created and ends
  2264. {IGovernor-votingPeriod} blocks after the voting starts.
  2265. Emits a {ProposalCreated} event.
  2266. [.contract-item]
  2267. [[IGovernor-execute-address---uint256---bytes---bytes32-]]
  2268. ==== `[.contract-item-name]#++execute++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256 proposalId++` [.item-kind]#public#
  2269. Execute a successful proposal. This requires the quorum to be reached, the vote to be successful, and the
  2270. deadline to be reached.
  2271. Emits a {ProposalExecuted} event.
  2272. Note: some module can modify the requirements for execution, for example by adding an additional timelock.
  2273. [.contract-item]
  2274. [[IGovernor-castVote-uint256-uint8-]]
  2275. ==== `[.contract-item-name]#++castVote++#++(uint256 proposalId, uint8 support) → uint256 balance++` [.item-kind]#public#
  2276. Cast a vote
  2277. Emits a {VoteCast} event.
  2278. [.contract-item]
  2279. [[IGovernor-castVoteWithReason-uint256-uint8-string-]]
  2280. ==== `[.contract-item-name]#++castVoteWithReason++#++(uint256 proposalId, uint8 support, string reason) → uint256 balance++` [.item-kind]#public#
  2281. Cast a vote with a reason
  2282. Emits a {VoteCast} event.
  2283. [.contract-item]
  2284. [[IGovernor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-]]
  2285. ==== `[.contract-item-name]#++castVoteWithReasonAndParams++#++(uint256 proposalId, uint8 support, string reason, bytes params) → uint256 balance++` [.item-kind]#public#
  2286. Cast a vote with a reason and additional encoded parameters
  2287. Emits a {VoteCast} or {VoteCastWithParams} event depending on the length of params.
  2288. [.contract-item]
  2289. [[IGovernor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-]]
  2290. ==== `[.contract-item-name]#++castVoteBySig++#++(uint256 proposalId, uint8 support, uint8 v, bytes32 r, bytes32 s) → uint256 balance++` [.item-kind]#public#
  2291. Cast a vote using the user's cryptographic signature.
  2292. Emits a {VoteCast} event.
  2293. [.contract-item]
  2294. [[IGovernor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-]]
  2295. ==== `[.contract-item-name]#++castVoteWithReasonAndParamsBySig++#++(uint256 proposalId, uint8 support, string reason, bytes params, uint8 v, bytes32 r, bytes32 s) → uint256 balance++` [.item-kind]#public#
  2296. Cast a vote with a reason and additional encoded parameters using the user's cryptographic signature.
  2297. Emits a {VoteCast} or {VoteCastWithParams} event depending on the length of params.
  2298. [.contract-item]
  2299. [[IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-]]
  2300. ==== `[.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#
  2301. Emitted when a proposal is created.
  2302. [.contract-item]
  2303. [[IGovernor-ProposalCanceled-uint256-]]
  2304. ==== `[.contract-item-name]#++ProposalCanceled++#++(uint256 proposalId)++` [.item-kind]#event#
  2305. Emitted when a proposal is canceled.
  2306. [.contract-item]
  2307. [[IGovernor-ProposalExecuted-uint256-]]
  2308. ==== `[.contract-item-name]#++ProposalExecuted++#++(uint256 proposalId)++` [.item-kind]#event#
  2309. Emitted when a proposal is executed.
  2310. [.contract-item]
  2311. [[IGovernor-VoteCast-address-uint256-uint8-uint256-string-]]
  2312. ==== `[.contract-item-name]#++VoteCast++#++(address voter, uint256 proposalId, uint8 support, uint256 weight, string reason)++` [.item-kind]#event#
  2313. Emitted when a vote is cast without params.
  2314. Note: `support` values should be seen as buckets. Their interpretation depends on the voting module used.
  2315. [.contract-item]
  2316. [[IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-]]
  2317. ==== `[.contract-item-name]#++VoteCastWithParams++#++(address voter, uint256 proposalId, uint8 support, uint256 weight, string reason, bytes params)++` [.item-kind]#event#
  2318. Emitted when a vote is cast with params.
  2319. Note: `support` values should be seen as buckets. Their interpretation depends on the voting module used.
  2320. `params` are additional encoded parameters. Their intepepretation also depends on the voting module used.
  2321. :Governor: pass:normal[xref:#Governor[`++Governor++`]]
  2322. :onlyGovernance: pass:normal[xref:#Governor-onlyGovernance--[`++onlyGovernance++`]]
  2323. :BALLOT_TYPEHASH: pass:normal[xref:#Governor-BALLOT_TYPEHASH-bytes32[`++BALLOT_TYPEHASH++`]]
  2324. :EXTENDED_BALLOT_TYPEHASH: pass:normal[xref:#Governor-EXTENDED_BALLOT_TYPEHASH-bytes32[`++EXTENDED_BALLOT_TYPEHASH++`]]
  2325. :constructor: pass:normal[xref:#Governor-constructor-string-[`++constructor++`]]
  2326. :receive: pass:normal[xref:#Governor-receive--[`++receive++`]]
  2327. :supportsInterface: pass:normal[xref:#Governor-supportsInterface-bytes4-[`++supportsInterface++`]]
  2328. :name: pass:normal[xref:#Governor-name--[`++name++`]]
  2329. :version: pass:normal[xref:#Governor-version--[`++version++`]]
  2330. :hashProposal: pass:normal[xref:#Governor-hashProposal-address---uint256---bytes---bytes32-[`++hashProposal++`]]
  2331. :state: pass:normal[xref:#Governor-state-uint256-[`++state++`]]
  2332. :proposalSnapshot: pass:normal[xref:#Governor-proposalSnapshot-uint256-[`++proposalSnapshot++`]]
  2333. :proposalDeadline: pass:normal[xref:#Governor-proposalDeadline-uint256-[`++proposalDeadline++`]]
  2334. :proposalThreshold: pass:normal[xref:#Governor-proposalThreshold--[`++proposalThreshold++`]]
  2335. :_quorumReached: pass:normal[xref:#Governor-_quorumReached-uint256-[`++_quorumReached++`]]
  2336. :_voteSucceeded: pass:normal[xref:#Governor-_voteSucceeded-uint256-[`++_voteSucceeded++`]]
  2337. :_getVotes: pass:normal[xref:#Governor-_getVotes-address-uint256-bytes-[`++_getVotes++`]]
  2338. :_countVote: pass:normal[xref:#Governor-_countVote-uint256-address-uint8-uint256-bytes-[`++_countVote++`]]
  2339. :_defaultParams: pass:normal[xref:#Governor-_defaultParams--[`++_defaultParams++`]]
  2340. :propose: pass:normal[xref:#Governor-propose-address---uint256---bytes---string-[`++propose++`]]
  2341. :execute: pass:normal[xref:#Governor-execute-address---uint256---bytes---bytes32-[`++execute++`]]
  2342. :_execute: pass:normal[xref:#Governor-_execute-uint256-address---uint256---bytes---bytes32-[`++_execute++`]]
  2343. :_beforeExecute: pass:normal[xref:#Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-[`++_beforeExecute++`]]
  2344. :_afterExecute: pass:normal[xref:#Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-[`++_afterExecute++`]]
  2345. :_cancel: pass:normal[xref:#Governor-_cancel-address---uint256---bytes---bytes32-[`++_cancel++`]]
  2346. :getVotes: pass:normal[xref:#Governor-getVotes-address-uint256-[`++getVotes++`]]
  2347. :getVotesWithParams: pass:normal[xref:#Governor-getVotesWithParams-address-uint256-bytes-[`++getVotesWithParams++`]]
  2348. :castVote: pass:normal[xref:#Governor-castVote-uint256-uint8-[`++castVote++`]]
  2349. :castVoteWithReason: pass:normal[xref:#Governor-castVoteWithReason-uint256-uint8-string-[`++castVoteWithReason++`]]
  2350. :castVoteWithReasonAndParams: pass:normal[xref:#Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-[`++castVoteWithReasonAndParams++`]]
  2351. :castVoteBySig: pass:normal[xref:#Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-[`++castVoteBySig++`]]
  2352. :castVoteWithReasonAndParamsBySig: pass:normal[xref:#Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-[`++castVoteWithReasonAndParamsBySig++`]]
  2353. :_castVote: pass:normal[xref:#Governor-_castVote-uint256-address-uint8-string-[`++_castVote++`]]
  2354. :_castVote: pass:normal[xref:#Governor-_castVote-uint256-address-uint8-string-bytes-[`++_castVote++`]]
  2355. :relay: pass:normal[xref:#Governor-relay-address-uint256-bytes-[`++relay++`]]
  2356. :_executor: pass:normal[xref:#Governor-_executor--[`++_executor++`]]
  2357. :onERC721Received: pass:normal[xref:#Governor-onERC721Received-address-address-uint256-bytes-[`++onERC721Received++`]]
  2358. :onERC1155Received: pass:normal[xref:#Governor-onERC1155Received-address-address-uint256-uint256-bytes-[`++onERC1155Received++`]]
  2359. :onERC1155BatchReceived: pass:normal[xref:#Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`++onERC1155BatchReceived++`]]
  2360. :ProposalCore: pass:normal[xref:#Governor-ProposalCore[`++ProposalCore++`]]
  2361. [.contract]
  2362. [[Governor]]
  2363. === `++Governor++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/Governor.sol[{github-icon},role=heading-link]
  2364. [.hljs-theme-light.nopadding]
  2365. ```solidity
  2366. import "@openzeppelin/contracts/governance/Governor.sol";
  2367. ```
  2368. Core of the governance system, designed to be extended though various modules.
  2369. This contract is abstract and requires several function to be implemented in various modules:
  2370. - A counting module must implement {quorum}, {_quorumReached}, {_voteSucceeded} and {_countVote}
  2371. - A voting module must implement {_getVotes}
  2372. - Additionanly, the {votingPeriod} must also be implemented
  2373. _Available since v4.3._
  2374. [.contract-index]
  2375. .Modifiers
  2376. --
  2377. * {xref-Governor-onlyGovernance--}[`++onlyGovernance()++`]
  2378. --
  2379. [.contract-index]
  2380. .Functions
  2381. --
  2382. * {xref-Governor-constructor-string-}[`++constructor(name_)++`]
  2383. * {xref-Governor-receive--}[`++receive()++`]
  2384. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2385. * {xref-Governor-name--}[`++name()++`]
  2386. * {xref-Governor-version--}[`++version()++`]
  2387. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  2388. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  2389. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  2390. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  2391. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  2392. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  2393. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  2394. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  2395. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  2396. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  2397. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  2398. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  2399. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  2400. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  2401. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  2402. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  2403. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  2404. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  2405. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  2406. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  2407. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  2408. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  2409. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  2410. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  2411. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  2412. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  2413. * {xref-Governor-_executor--}[`++_executor()++`]
  2414. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  2415. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  2416. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  2417. [.contract-subindex-inherited]
  2418. .IERC1155Receiver
  2419. [.contract-subindex-inherited]
  2420. .IERC721Receiver
  2421. [.contract-subindex-inherited]
  2422. .IGovernor
  2423. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  2424. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  2425. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  2426. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  2427. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  2428. [.contract-subindex-inherited]
  2429. .EIP712
  2430. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  2431. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  2432. [.contract-subindex-inherited]
  2433. .ERC165
  2434. [.contract-subindex-inherited]
  2435. .IERC165
  2436. --
  2437. [.contract-index]
  2438. .Events
  2439. --
  2440. [.contract-subindex-inherited]
  2441. .IERC1155Receiver
  2442. [.contract-subindex-inherited]
  2443. .IERC721Receiver
  2444. [.contract-subindex-inherited]
  2445. .IGovernor
  2446. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  2447. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  2448. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  2449. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  2450. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  2451. [.contract-subindex-inherited]
  2452. .EIP712
  2453. [.contract-subindex-inherited]
  2454. .ERC165
  2455. [.contract-subindex-inherited]
  2456. .IERC165
  2457. [.contract-subindex-inherited]
  2458. .Context
  2459. --
  2460. [.contract-item]
  2461. [[Governor-onlyGovernance--]]
  2462. ==== `[.contract-item-name]#++onlyGovernance++#++()++` [.item-kind]#modifier#
  2463. Restricts a function so it can only be executed through governance proposals. For example, governance
  2464. parameter setters in {GovernorSettings} are protected using this modifier.
  2465. The governance executing address may be different from the Governor's own address, for example it could be a
  2466. timelock. This can be customized by modules by overriding {_executor}. The executor is only able to invoke these
  2467. functions during the execution of the governor's {execute} function, and not under any other circumstances. Thus,
  2468. for example, additional timelock proposers are not able to change governance parameters without going through the
  2469. governance protocol (since v4.6).
  2470. [.contract-item]
  2471. [[Governor-constructor-string-]]
  2472. ==== `[.contract-item-name]#++constructor++#++(string name_)++` [.item-kind]#internal#
  2473. Sets the value for {name} and {version}
  2474. [.contract-item]
  2475. [[Governor-receive--]]
  2476. ==== `[.contract-item-name]#++receive++#++()++` [.item-kind]#external#
  2477. Function to receive ETH that will be handled by the governor (disabled if executor is a third party contract)
  2478. [.contract-item]
  2479. [[Governor-supportsInterface-bytes4-]]
  2480. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  2481. See {IERC165-supportsInterface}.
  2482. [.contract-item]
  2483. [[Governor-name--]]
  2484. ==== `[.contract-item-name]#++name++#++() → string++` [.item-kind]#public#
  2485. See {IGovernor-name}.
  2486. [.contract-item]
  2487. [[Governor-version--]]
  2488. ==== `[.contract-item-name]#++version++#++() → string++` [.item-kind]#public#
  2489. See {IGovernor-version}.
  2490. [.contract-item]
  2491. [[Governor-hashProposal-address---uint256---bytes---bytes32-]]
  2492. ==== `[.contract-item-name]#++hashProposal++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  2493. See {IGovernor-hashProposal}.
  2494. The proposal id is produced by hashing the RLC encoded `targets` array, the `values` array, the `calldatas` array
  2495. and the descriptionHash (bytes32 which itself is the keccak256 hash of the description string). This proposal id
  2496. can be produced from the proposal data which is part of the {ProposalCreated} event. It can even be computed in
  2497. advance, before the proposal is submitted.
  2498. Note that the chainId and the governor address are not part of the proposal id computation. Consequently, the
  2499. same proposal (with same operation and same description) will have the same id if submitted on multiple governors
  2500. across multiple networks. This also means that in order to execute the same operation twice (on the same
  2501. governor) the proposer will have to change the description in order to avoid proposal id conflicts.
  2502. [.contract-item]
  2503. [[Governor-state-uint256-]]
  2504. ==== `[.contract-item-name]#++state++#++(uint256 proposalId) → enum IGovernor.ProposalState++` [.item-kind]#public#
  2505. See {IGovernor-state}.
  2506. [.contract-item]
  2507. [[Governor-proposalSnapshot-uint256-]]
  2508. ==== `[.contract-item-name]#++proposalSnapshot++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  2509. See {IGovernor-proposalSnapshot}.
  2510. [.contract-item]
  2511. [[Governor-proposalDeadline-uint256-]]
  2512. ==== `[.contract-item-name]#++proposalDeadline++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  2513. See {IGovernor-proposalDeadline}.
  2514. [.contract-item]
  2515. [[Governor-proposalThreshold--]]
  2516. ==== `[.contract-item-name]#++proposalThreshold++#++() → uint256++` [.item-kind]#public#
  2517. Part of the Governor Bravo's interface: _"The number of votes required in order for a voter to become a proposer"_.
  2518. [.contract-item]
  2519. [[Governor-_quorumReached-uint256-]]
  2520. ==== `[.contract-item-name]#++_quorumReached++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  2521. Amount of votes already cast passes the threshold limit.
  2522. [.contract-item]
  2523. [[Governor-_voteSucceeded-uint256-]]
  2524. ==== `[.contract-item-name]#++_voteSucceeded++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  2525. Is the proposal successful or not.
  2526. [.contract-item]
  2527. [[Governor-_getVotes-address-uint256-bytes-]]
  2528. ==== `[.contract-item-name]#++_getVotes++#++(address account, uint256 blockNumber, bytes params) → uint256++` [.item-kind]#internal#
  2529. Get the voting weight of `account` at a specific `blockNumber`, for a vote as described by `params`.
  2530. [.contract-item]
  2531. [[Governor-_countVote-uint256-address-uint8-uint256-bytes-]]
  2532. ==== `[.contract-item-name]#++_countVote++#++(uint256 proposalId, address account, uint8 support, uint256 weight, bytes params)++` [.item-kind]#internal#
  2533. Register a vote for `proposalId` by `account` with a given `support`, voting `weight` and voting `params`.
  2534. Note: Support is generic and can represent various things depending on the voting system used.
  2535. [.contract-item]
  2536. [[Governor-_defaultParams--]]
  2537. ==== `[.contract-item-name]#++_defaultParams++#++() → bytes++` [.item-kind]#internal#
  2538. Default additional encoded parameters used by castVote methods that don't include them
  2539. Note: Should be overridden by specific implementations to use an appropriate value, the
  2540. meaning of the additional params, in the context of that implementation
  2541. [.contract-item]
  2542. [[Governor-propose-address---uint256---bytes---string-]]
  2543. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, bytes[] calldatas, string description) → uint256++` [.item-kind]#public#
  2544. See {IGovernor-propose}.
  2545. [.contract-item]
  2546. [[Governor-execute-address---uint256---bytes---bytes32-]]
  2547. ==== `[.contract-item-name]#++execute++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  2548. See {IGovernor-execute}.
  2549. [.contract-item]
  2550. [[Governor-_execute-uint256-address---uint256---bytes---bytes32-]]
  2551. ==== `[.contract-item-name]#++_execute++#++(uint256, address[] targets, uint256[] values, bytes[] calldatas, bytes32)++` [.item-kind]#internal#
  2552. Internal execution mechanism. Can be overridden to implement different execution mechanism
  2553. [.contract-item]
  2554. [[Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-]]
  2555. ==== `[.contract-item-name]#++_beforeExecute++#++(uint256, address[] targets, uint256[], bytes[] calldatas, bytes32)++` [.item-kind]#internal#
  2556. Hook before execution is triggered.
  2557. [.contract-item]
  2558. [[Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-]]
  2559. ==== `[.contract-item-name]#++_afterExecute++#++(uint256, address[], uint256[], bytes[], bytes32)++` [.item-kind]#internal#
  2560. Hook after execution is triggered.
  2561. [.contract-item]
  2562. [[Governor-_cancel-address---uint256---bytes---bytes32-]]
  2563. ==== `[.contract-item-name]#++_cancel++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#internal#
  2564. Internal cancel mechanism: locks up the proposal timer, preventing it from being re-submitted. Marks it as
  2565. canceled to allow distinguishing it from executed proposals.
  2566. Emits a {IGovernor-ProposalCanceled} event.
  2567. [.contract-item]
  2568. [[Governor-getVotes-address-uint256-]]
  2569. ==== `[.contract-item-name]#++getVotes++#++(address account, uint256 blockNumber) → uint256++` [.item-kind]#public#
  2570. See {IGovernor-getVotes}.
  2571. [.contract-item]
  2572. [[Governor-getVotesWithParams-address-uint256-bytes-]]
  2573. ==== `[.contract-item-name]#++getVotesWithParams++#++(address account, uint256 blockNumber, bytes params) → uint256++` [.item-kind]#public#
  2574. See {IGovernor-getVotesWithParams}.
  2575. [.contract-item]
  2576. [[Governor-castVote-uint256-uint8-]]
  2577. ==== `[.contract-item-name]#++castVote++#++(uint256 proposalId, uint8 support) → uint256++` [.item-kind]#public#
  2578. See {IGovernor-castVote}.
  2579. [.contract-item]
  2580. [[Governor-castVoteWithReason-uint256-uint8-string-]]
  2581. ==== `[.contract-item-name]#++castVoteWithReason++#++(uint256 proposalId, uint8 support, string reason) → uint256++` [.item-kind]#public#
  2582. See {IGovernor-castVoteWithReason}.
  2583. [.contract-item]
  2584. [[Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-]]
  2585. ==== `[.contract-item-name]#++castVoteWithReasonAndParams++#++(uint256 proposalId, uint8 support, string reason, bytes params) → uint256++` [.item-kind]#public#
  2586. See {IGovernor-castVoteWithReasonAndParams}.
  2587. [.contract-item]
  2588. [[Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-]]
  2589. ==== `[.contract-item-name]#++castVoteBySig++#++(uint256 proposalId, uint8 support, uint8 v, bytes32 r, bytes32 s) → uint256++` [.item-kind]#public#
  2590. See {IGovernor-castVoteBySig}.
  2591. [.contract-item]
  2592. [[Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-]]
  2593. ==== `[.contract-item-name]#++castVoteWithReasonAndParamsBySig++#++(uint256 proposalId, uint8 support, string reason, bytes params, uint8 v, bytes32 r, bytes32 s) → uint256++` [.item-kind]#public#
  2594. See {IGovernor-castVoteWithReasonAndParamsBySig}.
  2595. [.contract-item]
  2596. [[Governor-_castVote-uint256-address-uint8-string-]]
  2597. ==== `[.contract-item-name]#++_castVote++#++(uint256 proposalId, address account, uint8 support, string reason) → uint256++` [.item-kind]#internal#
  2598. Internal vote casting mechanism: Check that the vote is pending, that it has not been cast yet, retrieve
  2599. voting weight using {IGovernor-getVotes} and call the {_countVote} internal function. Uses the _defaultParams().
  2600. Emits a {IGovernor-VoteCast} event.
  2601. [.contract-item]
  2602. [[Governor-_castVote-uint256-address-uint8-string-bytes-]]
  2603. ==== `[.contract-item-name]#++_castVote++#++(uint256 proposalId, address account, uint8 support, string reason, bytes params) → uint256++` [.item-kind]#internal#
  2604. Internal vote casting mechanism: Check that the vote is pending, that it has not been cast yet, retrieve
  2605. voting weight using {IGovernor-getVotes} and call the {_countVote} internal function.
  2606. Emits a {IGovernor-VoteCast} event.
  2607. [.contract-item]
  2608. [[Governor-relay-address-uint256-bytes-]]
  2609. ==== `[.contract-item-name]#++relay++#++(address target, uint256 value, bytes data)++` [.item-kind]#external#
  2610. Relays a transaction or function call to an arbitrary target. In cases where the governance executor
  2611. is some contract other than the governor itself, like when using a timelock, this function can be invoked
  2612. in a governance proposal to recover tokens or Ether that was sent to the governor contract by mistake.
  2613. Note that if the executor is simply the governor itself, use of `relay` is redundant.
  2614. [.contract-item]
  2615. [[Governor-_executor--]]
  2616. ==== `[.contract-item-name]#++_executor++#++() → address++` [.item-kind]#internal#
  2617. Address through which the governor executes action. Will be overloaded by module that execute actions
  2618. through another contract such as a timelock.
  2619. [.contract-item]
  2620. [[Governor-onERC721Received-address-address-uint256-bytes-]]
  2621. ==== `[.contract-item-name]#++onERC721Received++#++(address, address, uint256, bytes) → bytes4++` [.item-kind]#public#
  2622. See {IERC721Receiver-onERC721Received}.
  2623. [.contract-item]
  2624. [[Governor-onERC1155Received-address-address-uint256-uint256-bytes-]]
  2625. ==== `[.contract-item-name]#++onERC1155Received++#++(address, address, uint256, uint256, bytes) → bytes4++` [.item-kind]#public#
  2626. See {IERC1155Receiver-onERC1155Received}.
  2627. [.contract-item]
  2628. [[Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-]]
  2629. ==== `[.contract-item-name]#++onERC1155BatchReceived++#++(address, address, uint256[], uint256[], bytes) → bytes4++` [.item-kind]#public#
  2630. See {IERC1155Receiver-onERC1155BatchReceived}.
  2631. === Modules
  2632. :GovernorCountingSimple: pass:normal[xref:#GovernorCountingSimple[`++GovernorCountingSimple++`]]
  2633. :COUNTING_MODE: pass:normal[xref:#GovernorCountingSimple-COUNTING_MODE--[`++COUNTING_MODE++`]]
  2634. :hasVoted: pass:normal[xref:#GovernorCountingSimple-hasVoted-uint256-address-[`++hasVoted++`]]
  2635. :proposalVotes: pass:normal[xref:#GovernorCountingSimple-proposalVotes-uint256-[`++proposalVotes++`]]
  2636. :_quorumReached: pass:normal[xref:#GovernorCountingSimple-_quorumReached-uint256-[`++_quorumReached++`]]
  2637. :_voteSucceeded: pass:normal[xref:#GovernorCountingSimple-_voteSucceeded-uint256-[`++_voteSucceeded++`]]
  2638. :_countVote: pass:normal[xref:#GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-[`++_countVote++`]]
  2639. :ProposalVote: pass:normal[xref:#GovernorCountingSimple-ProposalVote[`++ProposalVote++`]]
  2640. :VoteType: pass:normal[xref:#GovernorCountingSimple-VoteType[`++VoteType++`]]
  2641. [.contract]
  2642. [[GovernorCountingSimple]]
  2643. === `++GovernorCountingSimple++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/extensions/GovernorCountingSimple.sol[{github-icon},role=heading-link]
  2644. [.hljs-theme-light.nopadding]
  2645. ```solidity
  2646. import "@openzeppelin/contracts/governance/extensions/GovernorCountingSimple.sol";
  2647. ```
  2648. Extension of {Governor} for simple, 3 options, vote counting.
  2649. _Available since v4.3._
  2650. [.contract-index]
  2651. .Functions
  2652. --
  2653. * {xref-GovernorCountingSimple-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  2654. * {xref-GovernorCountingSimple-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  2655. * {xref-GovernorCountingSimple-proposalVotes-uint256-}[`++proposalVotes(proposalId)++`]
  2656. * {xref-GovernorCountingSimple-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  2657. * {xref-GovernorCountingSimple-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  2658. * {xref-GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, _)++`]
  2659. [.contract-subindex-inherited]
  2660. .Governor
  2661. * {xref-Governor-constructor-string-}[`++constructor(name_)++`]
  2662. * {xref-Governor-receive--}[`++receive()++`]
  2663. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2664. * {xref-Governor-name--}[`++name()++`]
  2665. * {xref-Governor-version--}[`++version()++`]
  2666. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  2667. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  2668. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  2669. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  2670. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  2671. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  2672. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  2673. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  2674. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  2675. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  2676. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  2677. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  2678. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  2679. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  2680. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  2681. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  2682. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  2683. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  2684. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  2685. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  2686. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  2687. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  2688. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  2689. * {xref-Governor-_executor--}[`++_executor()++`]
  2690. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  2691. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  2692. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  2693. [.contract-subindex-inherited]
  2694. .IERC1155Receiver
  2695. [.contract-subindex-inherited]
  2696. .IERC721Receiver
  2697. [.contract-subindex-inherited]
  2698. .IGovernor
  2699. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  2700. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  2701. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  2702. [.contract-subindex-inherited]
  2703. .EIP712
  2704. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  2705. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  2706. [.contract-subindex-inherited]
  2707. .ERC165
  2708. [.contract-subindex-inherited]
  2709. .IERC165
  2710. --
  2711. [.contract-index]
  2712. .Events
  2713. --
  2714. [.contract-subindex-inherited]
  2715. .Governor
  2716. [.contract-subindex-inherited]
  2717. .IERC1155Receiver
  2718. [.contract-subindex-inherited]
  2719. .IERC721Receiver
  2720. [.contract-subindex-inherited]
  2721. .IGovernor
  2722. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  2723. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  2724. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  2725. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  2726. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  2727. [.contract-subindex-inherited]
  2728. .EIP712
  2729. [.contract-subindex-inherited]
  2730. .ERC165
  2731. [.contract-subindex-inherited]
  2732. .IERC165
  2733. [.contract-subindex-inherited]
  2734. .Context
  2735. --
  2736. [.contract-item]
  2737. [[GovernorCountingSimple-COUNTING_MODE--]]
  2738. ==== `[.contract-item-name]#++COUNTING_MODE++#++() → string++` [.item-kind]#public#
  2739. See {IGovernor-COUNTING_MODE}.
  2740. [.contract-item]
  2741. [[GovernorCountingSimple-hasVoted-uint256-address-]]
  2742. ==== `[.contract-item-name]#++hasVoted++#++(uint256 proposalId, address account) → bool++` [.item-kind]#public#
  2743. See {IGovernor-hasVoted}.
  2744. [.contract-item]
  2745. [[GovernorCountingSimple-proposalVotes-uint256-]]
  2746. ==== `[.contract-item-name]#++proposalVotes++#++(uint256 proposalId) → uint256 againstVotes, uint256 forVotes, uint256 abstainVotes++` [.item-kind]#public#
  2747. Accessor to the internal vote counts.
  2748. [.contract-item]
  2749. [[GovernorCountingSimple-_quorumReached-uint256-]]
  2750. ==== `[.contract-item-name]#++_quorumReached++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  2751. See {Governor-_quorumReached}.
  2752. [.contract-item]
  2753. [[GovernorCountingSimple-_voteSucceeded-uint256-]]
  2754. ==== `[.contract-item-name]#++_voteSucceeded++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  2755. See {Governor-_voteSucceeded}. In this module, the forVotes must be strictly over the againstVotes.
  2756. [.contract-item]
  2757. [[GovernorCountingSimple-_countVote-uint256-address-uint8-uint256-bytes-]]
  2758. ==== `[.contract-item-name]#++_countVote++#++(uint256 proposalId, address account, uint8 support, uint256 weight, bytes)++` [.item-kind]#internal#
  2759. See {Governor-_countVote}. In this module, the support follows the `VoteType` enum (from Governor Bravo).
  2760. :GovernorVotes: pass:normal[xref:#GovernorVotes[`++GovernorVotes++`]]
  2761. :token: pass:normal[xref:#GovernorVotes-token-contract-IVotes[`++token++`]]
  2762. :constructor: pass:normal[xref:#GovernorVotes-constructor-contract-IVotes-[`++constructor++`]]
  2763. :_getVotes: pass:normal[xref:#GovernorVotes-_getVotes-address-uint256-bytes-[`++_getVotes++`]]
  2764. [.contract]
  2765. [[GovernorVotes]]
  2766. === `++GovernorVotes++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/extensions/GovernorVotes.sol[{github-icon},role=heading-link]
  2767. [.hljs-theme-light.nopadding]
  2768. ```solidity
  2769. import "@openzeppelin/contracts/governance/extensions/GovernorVotes.sol";
  2770. ```
  2771. Extension of {Governor} for voting weight extraction from an {ERC20Votes} token, or since v4.5 an {ERC721Votes} token.
  2772. _Available since v4.3._
  2773. [.contract-index]
  2774. .Functions
  2775. --
  2776. * {xref-GovernorVotes-constructor-contract-IVotes-}[`++constructor(tokenAddress)++`]
  2777. * {xref-GovernorVotes-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, _)++`]
  2778. [.contract-subindex-inherited]
  2779. .Governor
  2780. * {xref-Governor-receive--}[`++receive()++`]
  2781. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2782. * {xref-Governor-name--}[`++name()++`]
  2783. * {xref-Governor-version--}[`++version()++`]
  2784. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  2785. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  2786. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  2787. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  2788. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  2789. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  2790. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  2791. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  2792. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  2793. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  2794. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  2795. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  2796. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  2797. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  2798. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  2799. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  2800. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  2801. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  2802. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  2803. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  2804. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  2805. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  2806. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  2807. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  2808. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  2809. * {xref-Governor-_executor--}[`++_executor()++`]
  2810. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  2811. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  2812. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  2813. [.contract-subindex-inherited]
  2814. .IERC1155Receiver
  2815. [.contract-subindex-inherited]
  2816. .IERC721Receiver
  2817. [.contract-subindex-inherited]
  2818. .IGovernor
  2819. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  2820. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  2821. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  2822. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  2823. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  2824. [.contract-subindex-inherited]
  2825. .EIP712
  2826. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  2827. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  2828. [.contract-subindex-inherited]
  2829. .ERC165
  2830. [.contract-subindex-inherited]
  2831. .IERC165
  2832. --
  2833. [.contract-index]
  2834. .Events
  2835. --
  2836. [.contract-subindex-inherited]
  2837. .Governor
  2838. [.contract-subindex-inherited]
  2839. .IERC1155Receiver
  2840. [.contract-subindex-inherited]
  2841. .IERC721Receiver
  2842. [.contract-subindex-inherited]
  2843. .IGovernor
  2844. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  2845. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  2846. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  2847. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  2848. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  2849. [.contract-subindex-inherited]
  2850. .EIP712
  2851. [.contract-subindex-inherited]
  2852. .ERC165
  2853. [.contract-subindex-inherited]
  2854. .IERC165
  2855. [.contract-subindex-inherited]
  2856. .Context
  2857. --
  2858. [.contract-item]
  2859. [[GovernorVotes-constructor-contract-IVotes-]]
  2860. ==== `[.contract-item-name]#++constructor++#++(contract IVotes tokenAddress)++` [.item-kind]#internal#
  2861. [.contract-item]
  2862. [[GovernorVotes-_getVotes-address-uint256-bytes-]]
  2863. ==== `[.contract-item-name]#++_getVotes++#++(address account, uint256 blockNumber, bytes) → uint256++` [.item-kind]#internal#
  2864. :GovernorVotesQuorumFraction: pass:normal[xref:#GovernorVotesQuorumFraction[`++GovernorVotesQuorumFraction++`]]
  2865. :constructor: pass:normal[xref:#GovernorVotesQuorumFraction-constructor-uint256-[`++constructor++`]]
  2866. :quorumNumerator: pass:normal[xref:#GovernorVotesQuorumFraction-quorumNumerator--[`++quorumNumerator++`]]
  2867. :quorumDenominator: pass:normal[xref:#GovernorVotesQuorumFraction-quorumDenominator--[`++quorumDenominator++`]]
  2868. :quorum: pass:normal[xref:#GovernorVotesQuorumFraction-quorum-uint256-[`++quorum++`]]
  2869. :updateQuorumNumerator: pass:normal[xref:#GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-[`++updateQuorumNumerator++`]]
  2870. :_updateQuorumNumerator: pass:normal[xref:#GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-[`++_updateQuorumNumerator++`]]
  2871. :QuorumNumeratorUpdated: pass:normal[xref:#GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-[`++QuorumNumeratorUpdated++`]]
  2872. [.contract]
  2873. [[GovernorVotesQuorumFraction]]
  2874. === `++GovernorVotesQuorumFraction++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/extensions/GovernorVotesQuorumFraction.sol[{github-icon},role=heading-link]
  2875. [.hljs-theme-light.nopadding]
  2876. ```solidity
  2877. import "@openzeppelin/contracts/governance/extensions/GovernorVotesQuorumFraction.sol";
  2878. ```
  2879. Extension of {Governor} for voting weight extraction from an {ERC20Votes} token and a quorum expressed as a
  2880. fraction of the total supply.
  2881. _Available since v4.3._
  2882. [.contract-index]
  2883. .Functions
  2884. --
  2885. * {xref-GovernorVotesQuorumFraction-constructor-uint256-}[`++constructor(quorumNumeratorValue)++`]
  2886. * {xref-GovernorVotesQuorumFraction-quorumNumerator--}[`++quorumNumerator()++`]
  2887. * {xref-GovernorVotesQuorumFraction-quorumDenominator--}[`++quorumDenominator()++`]
  2888. * {xref-GovernorVotesQuorumFraction-quorum-uint256-}[`++quorum(blockNumber)++`]
  2889. * {xref-GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-}[`++updateQuorumNumerator(newQuorumNumerator)++`]
  2890. * {xref-GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-}[`++_updateQuorumNumerator(newQuorumNumerator)++`]
  2891. [.contract-subindex-inherited]
  2892. .GovernorVotes
  2893. * {xref-GovernorVotes-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, _)++`]
  2894. [.contract-subindex-inherited]
  2895. .Governor
  2896. * {xref-Governor-receive--}[`++receive()++`]
  2897. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  2898. * {xref-Governor-name--}[`++name()++`]
  2899. * {xref-Governor-version--}[`++version()++`]
  2900. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  2901. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  2902. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  2903. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  2904. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  2905. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  2906. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  2907. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  2908. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  2909. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  2910. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  2911. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  2912. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  2913. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  2914. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  2915. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  2916. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  2917. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  2918. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  2919. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  2920. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  2921. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  2922. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  2923. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  2924. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  2925. * {xref-Governor-_executor--}[`++_executor()++`]
  2926. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  2927. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  2928. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  2929. [.contract-subindex-inherited]
  2930. .IERC1155Receiver
  2931. [.contract-subindex-inherited]
  2932. .IERC721Receiver
  2933. [.contract-subindex-inherited]
  2934. .IGovernor
  2935. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  2936. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  2937. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  2938. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  2939. [.contract-subindex-inherited]
  2940. .EIP712
  2941. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  2942. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  2943. [.contract-subindex-inherited]
  2944. .ERC165
  2945. [.contract-subindex-inherited]
  2946. .IERC165
  2947. --
  2948. [.contract-index]
  2949. .Events
  2950. --
  2951. * {xref-GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-}[`++QuorumNumeratorUpdated(oldQuorumNumerator, newQuorumNumerator)++`]
  2952. [.contract-subindex-inherited]
  2953. .GovernorVotes
  2954. [.contract-subindex-inherited]
  2955. .Governor
  2956. [.contract-subindex-inherited]
  2957. .IERC1155Receiver
  2958. [.contract-subindex-inherited]
  2959. .IERC721Receiver
  2960. [.contract-subindex-inherited]
  2961. .IGovernor
  2962. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  2963. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  2964. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  2965. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  2966. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  2967. [.contract-subindex-inherited]
  2968. .EIP712
  2969. [.contract-subindex-inherited]
  2970. .ERC165
  2971. [.contract-subindex-inherited]
  2972. .IERC165
  2973. [.contract-subindex-inherited]
  2974. .Context
  2975. --
  2976. [.contract-item]
  2977. [[GovernorVotesQuorumFraction-constructor-uint256-]]
  2978. ==== `[.contract-item-name]#++constructor++#++(uint256 quorumNumeratorValue)++` [.item-kind]#internal#
  2979. Initialize quorum as a fraction of the token's total supply.
  2980. The fraction is specified as `numerator / denominator`. By default the denominator is 100, so quorum is
  2981. specified as a percent: a numerator of 10 corresponds to quorum being 10% of total supply. The denominator can be
  2982. customized by overriding {quorumDenominator}.
  2983. [.contract-item]
  2984. [[GovernorVotesQuorumFraction-quorumNumerator--]]
  2985. ==== `[.contract-item-name]#++quorumNumerator++#++() → uint256++` [.item-kind]#public#
  2986. Returns the current quorum numerator. See {quorumDenominator}.
  2987. [.contract-item]
  2988. [[GovernorVotesQuorumFraction-quorumDenominator--]]
  2989. ==== `[.contract-item-name]#++quorumDenominator++#++() → uint256++` [.item-kind]#public#
  2990. Returns the quorum denominator. Defaults to 100, but may be overridden.
  2991. [.contract-item]
  2992. [[GovernorVotesQuorumFraction-quorum-uint256-]]
  2993. ==== `[.contract-item-name]#++quorum++#++(uint256 blockNumber) → uint256++` [.item-kind]#public#
  2994. Returns the quorum for a block number, in terms of number of votes: `supply * numerator / denominator`.
  2995. [.contract-item]
  2996. [[GovernorVotesQuorumFraction-updateQuorumNumerator-uint256-]]
  2997. ==== `[.contract-item-name]#++updateQuorumNumerator++#++(uint256 newQuorumNumerator)++` [.item-kind]#external#
  2998. Changes the quorum numerator.
  2999. Emits a {QuorumNumeratorUpdated} event.
  3000. Requirements:
  3001. - Must be called through a governance proposal.
  3002. - New numerator must be smaller or equal to the denominator.
  3003. [.contract-item]
  3004. [[GovernorVotesQuorumFraction-_updateQuorumNumerator-uint256-]]
  3005. ==== `[.contract-item-name]#++_updateQuorumNumerator++#++(uint256 newQuorumNumerator)++` [.item-kind]#internal#
  3006. Changes the quorum numerator.
  3007. Emits a {QuorumNumeratorUpdated} event.
  3008. Requirements:
  3009. - New numerator must be smaller or equal to the denominator.
  3010. [.contract-item]
  3011. [[GovernorVotesQuorumFraction-QuorumNumeratorUpdated-uint256-uint256-]]
  3012. ==== `[.contract-item-name]#++QuorumNumeratorUpdated++#++(uint256 oldQuorumNumerator, uint256 newQuorumNumerator)++` [.item-kind]#event#
  3013. :GovernorVotesComp: pass:normal[xref:#GovernorVotesComp[`++GovernorVotesComp++`]]
  3014. :token: pass:normal[xref:#GovernorVotesComp-token-contract-ERC20VotesComp[`++token++`]]
  3015. :constructor: pass:normal[xref:#GovernorVotesComp-constructor-contract-ERC20VotesComp-[`++constructor++`]]
  3016. :_getVotes: pass:normal[xref:#GovernorVotesComp-_getVotes-address-uint256-bytes-[`++_getVotes++`]]
  3017. [.contract]
  3018. [[GovernorVotesComp]]
  3019. === `++GovernorVotesComp++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/extensions/GovernorVotesComp.sol[{github-icon},role=heading-link]
  3020. [.hljs-theme-light.nopadding]
  3021. ```solidity
  3022. import "@openzeppelin/contracts/governance/extensions/GovernorVotesComp.sol";
  3023. ```
  3024. Extension of {Governor} for voting weight extraction from a Comp token.
  3025. _Available since v4.3._
  3026. [.contract-index]
  3027. .Functions
  3028. --
  3029. * {xref-GovernorVotesComp-constructor-contract-ERC20VotesComp-}[`++constructor(token_)++`]
  3030. * {xref-GovernorVotesComp-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, _)++`]
  3031. [.contract-subindex-inherited]
  3032. .Governor
  3033. * {xref-Governor-receive--}[`++receive()++`]
  3034. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3035. * {xref-Governor-name--}[`++name()++`]
  3036. * {xref-Governor-version--}[`++version()++`]
  3037. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3038. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  3039. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3040. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3041. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3042. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3043. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3044. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3045. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3046. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3047. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3048. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  3049. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3050. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3051. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3052. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3053. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3054. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3055. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3056. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3057. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3058. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3059. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3060. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3061. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3062. * {xref-Governor-_executor--}[`++_executor()++`]
  3063. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3064. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3065. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3066. [.contract-subindex-inherited]
  3067. .IERC1155Receiver
  3068. [.contract-subindex-inherited]
  3069. .IERC721Receiver
  3070. [.contract-subindex-inherited]
  3071. .IGovernor
  3072. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3073. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3074. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3075. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3076. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3077. [.contract-subindex-inherited]
  3078. .EIP712
  3079. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3080. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3081. [.contract-subindex-inherited]
  3082. .ERC165
  3083. [.contract-subindex-inherited]
  3084. .IERC165
  3085. --
  3086. [.contract-index]
  3087. .Events
  3088. --
  3089. [.contract-subindex-inherited]
  3090. .Governor
  3091. [.contract-subindex-inherited]
  3092. .IERC1155Receiver
  3093. [.contract-subindex-inherited]
  3094. .IERC721Receiver
  3095. [.contract-subindex-inherited]
  3096. .IGovernor
  3097. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3098. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3099. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3100. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3101. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3102. [.contract-subindex-inherited]
  3103. .EIP712
  3104. [.contract-subindex-inherited]
  3105. .ERC165
  3106. [.contract-subindex-inherited]
  3107. .IERC165
  3108. [.contract-subindex-inherited]
  3109. .Context
  3110. --
  3111. [.contract-item]
  3112. [[GovernorVotesComp-constructor-contract-ERC20VotesComp-]]
  3113. ==== `[.contract-item-name]#++constructor++#++(contract ERC20VotesComp token_)++` [.item-kind]#internal#
  3114. [.contract-item]
  3115. [[GovernorVotesComp-_getVotes-address-uint256-bytes-]]
  3116. ==== `[.contract-item-name]#++_getVotes++#++(address account, uint256 blockNumber, bytes) → uint256++` [.item-kind]#internal#
  3117. === Extensions
  3118. :GovernorTimelockControl: pass:normal[xref:#GovernorTimelockControl[`++GovernorTimelockControl++`]]
  3119. :constructor: pass:normal[xref:#GovernorTimelockControl-constructor-contract-TimelockController-[`++constructor++`]]
  3120. :supportsInterface: pass:normal[xref:#GovernorTimelockControl-supportsInterface-bytes4-[`++supportsInterface++`]]
  3121. :state: pass:normal[xref:#GovernorTimelockControl-state-uint256-[`++state++`]]
  3122. :timelock: pass:normal[xref:#GovernorTimelockControl-timelock--[`++timelock++`]]
  3123. :proposalEta: pass:normal[xref:#GovernorTimelockControl-proposalEta-uint256-[`++proposalEta++`]]
  3124. :queue: pass:normal[xref:#GovernorTimelockControl-queue-address---uint256---bytes---bytes32-[`++queue++`]]
  3125. :_execute: pass:normal[xref:#GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-[`++_execute++`]]
  3126. :_cancel: pass:normal[xref:#GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-[`++_cancel++`]]
  3127. :_executor: pass:normal[xref:#GovernorTimelockControl-_executor--[`++_executor++`]]
  3128. :updateTimelock: pass:normal[xref:#GovernorTimelockControl-updateTimelock-contract-TimelockController-[`++updateTimelock++`]]
  3129. :TimelockChange: pass:normal[xref:#GovernorTimelockControl-TimelockChange-address-address-[`++TimelockChange++`]]
  3130. [.contract]
  3131. [[GovernorTimelockControl]]
  3132. === `++GovernorTimelockControl++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/extensions/GovernorTimelockControl.sol[{github-icon},role=heading-link]
  3133. [.hljs-theme-light.nopadding]
  3134. ```solidity
  3135. import "@openzeppelin/contracts/governance/extensions/GovernorTimelockControl.sol";
  3136. ```
  3137. Extension of {Governor} that binds the execution process to an instance of {TimelockController}. This adds a
  3138. delay, enforced by the {TimelockController} to all successful proposal (in addition to the voting duration). The
  3139. {Governor} needs the proposer (and ideally the executor) roles for the {Governor} to work properly.
  3140. Using this model means the proposal will be operated by the {TimelockController} and not by the {Governor}. Thus,
  3141. the assets and permissions must be attached to the {TimelockController}. Any asset sent to the {Governor} will be
  3142. inaccessible.
  3143. WARNING: Setting up the TimelockController to have additional proposers besides the governor is very risky, as it
  3144. grants them powers that they must be trusted or known not to use: 1) {onlyGovernance} functions like {relay} are
  3145. available to them through the timelock, and 2) approved governance proposals can be blocked by them, effectively
  3146. executing a Denial of Service attack. This risk will be mitigated in a future release.
  3147. _Available since v4.3._
  3148. [.contract-index]
  3149. .Functions
  3150. --
  3151. * {xref-GovernorTimelockControl-constructor-contract-TimelockController-}[`++constructor(timelockAddress)++`]
  3152. * {xref-GovernorTimelockControl-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3153. * {xref-GovernorTimelockControl-state-uint256-}[`++state(proposalId)++`]
  3154. * {xref-GovernorTimelockControl-timelock--}[`++timelock()++`]
  3155. * {xref-GovernorTimelockControl-proposalEta-uint256-}[`++proposalEta(proposalId)++`]
  3156. * {xref-GovernorTimelockControl-queue-address---uint256---bytes---bytes32-}[`++queue(targets, values, calldatas, descriptionHash)++`]
  3157. * {xref-GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, descriptionHash)++`]
  3158. * {xref-GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3159. * {xref-GovernorTimelockControl-_executor--}[`++_executor()++`]
  3160. * {xref-GovernorTimelockControl-updateTimelock-contract-TimelockController-}[`++updateTimelock(newTimelock)++`]
  3161. [.contract-subindex-inherited]
  3162. .Governor
  3163. * {xref-Governor-receive--}[`++receive()++`]
  3164. * {xref-Governor-name--}[`++name()++`]
  3165. * {xref-Governor-version--}[`++version()++`]
  3166. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3167. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3168. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3169. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3170. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3171. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3172. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  3173. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3174. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3175. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3176. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3177. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3178. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  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-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3190. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3191. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3192. [.contract-subindex-inherited]
  3193. .IERC1155Receiver
  3194. [.contract-subindex-inherited]
  3195. .IERC721Receiver
  3196. [.contract-subindex-inherited]
  3197. .IGovernorTimelock
  3198. [.contract-subindex-inherited]
  3199. .IGovernor
  3200. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3201. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3202. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3203. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3204. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3205. [.contract-subindex-inherited]
  3206. .EIP712
  3207. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3208. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3209. [.contract-subindex-inherited]
  3210. .ERC165
  3211. [.contract-subindex-inherited]
  3212. .IERC165
  3213. --
  3214. [.contract-index]
  3215. .Events
  3216. --
  3217. * {xref-GovernorTimelockControl-TimelockChange-address-address-}[`++TimelockChange(oldTimelock, newTimelock)++`]
  3218. [.contract-subindex-inherited]
  3219. .Governor
  3220. [.contract-subindex-inherited]
  3221. .IERC1155Receiver
  3222. [.contract-subindex-inherited]
  3223. .IERC721Receiver
  3224. [.contract-subindex-inherited]
  3225. .IGovernorTimelock
  3226. * {xref-IGovernorTimelock-ProposalQueued-uint256-uint256-}[`++ProposalQueued(proposalId, eta)++`]
  3227. [.contract-subindex-inherited]
  3228. .IGovernor
  3229. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3230. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3231. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3232. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3233. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3234. [.contract-subindex-inherited]
  3235. .EIP712
  3236. [.contract-subindex-inherited]
  3237. .ERC165
  3238. [.contract-subindex-inherited]
  3239. .IERC165
  3240. [.contract-subindex-inherited]
  3241. .Context
  3242. --
  3243. [.contract-item]
  3244. [[GovernorTimelockControl-constructor-contract-TimelockController-]]
  3245. ==== `[.contract-item-name]#++constructor++#++(contract TimelockController timelockAddress)++` [.item-kind]#internal#
  3246. Set the timelock.
  3247. [.contract-item]
  3248. [[GovernorTimelockControl-supportsInterface-bytes4-]]
  3249. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  3250. See {IERC165-supportsInterface}.
  3251. [.contract-item]
  3252. [[GovernorTimelockControl-state-uint256-]]
  3253. ==== `[.contract-item-name]#++state++#++(uint256 proposalId) → enum IGovernor.ProposalState++` [.item-kind]#public#
  3254. Overridden version of the {Governor-state} function with added support for the `Queued` status.
  3255. [.contract-item]
  3256. [[GovernorTimelockControl-timelock--]]
  3257. ==== `[.contract-item-name]#++timelock++#++() → address++` [.item-kind]#public#
  3258. Public accessor to check the address of the timelock
  3259. [.contract-item]
  3260. [[GovernorTimelockControl-proposalEta-uint256-]]
  3261. ==== `[.contract-item-name]#++proposalEta++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  3262. Public accessor to check the eta of a queued proposal
  3263. [.contract-item]
  3264. [[GovernorTimelockControl-queue-address---uint256---bytes---bytes32-]]
  3265. ==== `[.contract-item-name]#++queue++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  3266. Function to queue a proposal to the timelock.
  3267. [.contract-item]
  3268. [[GovernorTimelockControl-_execute-uint256-address---uint256---bytes---bytes32-]]
  3269. ==== `[.contract-item-name]#++_execute++#++(uint256, address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash)++` [.item-kind]#internal#
  3270. Overridden execute function that run the already queued proposal through the timelock.
  3271. [.contract-item]
  3272. [[GovernorTimelockControl-_cancel-address---uint256---bytes---bytes32-]]
  3273. ==== `[.contract-item-name]#++_cancel++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#internal#
  3274. Overridden version of the {Governor-_cancel} function to cancel the timelocked proposal if it as already
  3275. been queued.
  3276. [.contract-item]
  3277. [[GovernorTimelockControl-_executor--]]
  3278. ==== `[.contract-item-name]#++_executor++#++() → address++` [.item-kind]#internal#
  3279. Address through which the governor executes action. In this case, the timelock.
  3280. [.contract-item]
  3281. [[GovernorTimelockControl-updateTimelock-contract-TimelockController-]]
  3282. ==== `[.contract-item-name]#++updateTimelock++#++(contract TimelockController newTimelock)++` [.item-kind]#external#
  3283. Public endpoint to update the underlying timelock instance. Restricted to the timelock itself, so updates
  3284. must be proposed, scheduled, and executed through governance proposals.
  3285. CAUTION: It is not recommended to change the timelock while there are other queued governance proposals.
  3286. [.contract-item]
  3287. [[GovernorTimelockControl-TimelockChange-address-address-]]
  3288. ==== `[.contract-item-name]#++TimelockChange++#++(address oldTimelock, address newTimelock)++` [.item-kind]#event#
  3289. Emitted when the timelock controller used for proposal execution is modified.
  3290. :GovernorTimelockCompound: pass:normal[xref:#GovernorTimelockCompound[`++GovernorTimelockCompound++`]]
  3291. :constructor: pass:normal[xref:#GovernorTimelockCompound-constructor-contract-ICompoundTimelock-[`++constructor++`]]
  3292. :supportsInterface: pass:normal[xref:#GovernorTimelockCompound-supportsInterface-bytes4-[`++supportsInterface++`]]
  3293. :state: pass:normal[xref:#GovernorTimelockCompound-state-uint256-[`++state++`]]
  3294. :timelock: pass:normal[xref:#GovernorTimelockCompound-timelock--[`++timelock++`]]
  3295. :proposalEta: pass:normal[xref:#GovernorTimelockCompound-proposalEta-uint256-[`++proposalEta++`]]
  3296. :queue: pass:normal[xref:#GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-[`++queue++`]]
  3297. :_execute: pass:normal[xref:#GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-[`++_execute++`]]
  3298. :_cancel: pass:normal[xref:#GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-[`++_cancel++`]]
  3299. :_executor: pass:normal[xref:#GovernorTimelockCompound-_executor--[`++_executor++`]]
  3300. :__acceptAdmin: pass:normal[xref:#GovernorTimelockCompound-__acceptAdmin--[`++__acceptAdmin++`]]
  3301. :updateTimelock: pass:normal[xref:#GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-[`++updateTimelock++`]]
  3302. :TimelockChange: pass:normal[xref:#GovernorTimelockCompound-TimelockChange-address-address-[`++TimelockChange++`]]
  3303. :ProposalTimelock: pass:normal[xref:#GovernorTimelockCompound-ProposalTimelock[`++ProposalTimelock++`]]
  3304. [.contract]
  3305. [[GovernorTimelockCompound]]
  3306. === `++GovernorTimelockCompound++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/extensions/GovernorTimelockCompound.sol[{github-icon},role=heading-link]
  3307. [.hljs-theme-light.nopadding]
  3308. ```solidity
  3309. import "@openzeppelin/contracts/governance/extensions/GovernorTimelockCompound.sol";
  3310. ```
  3311. Extension of {Governor} that binds the execution process to a Compound Timelock. This adds a delay, enforced by
  3312. the external timelock to all successful proposal (in addition to the voting duration). The {Governor} needs to be
  3313. the admin of the timelock for any operation to be performed. A public, unrestricted,
  3314. {GovernorTimelockCompound-__acceptAdmin} is available to accept ownership of the timelock.
  3315. Using this model means the proposal will be operated by the {TimelockController} and not by the {Governor}. Thus,
  3316. the assets and permissions must be attached to the {TimelockController}. Any asset sent to the {Governor} will be
  3317. inaccessible.
  3318. _Available since v4.3._
  3319. [.contract-index]
  3320. .Functions
  3321. --
  3322. * {xref-GovernorTimelockCompound-constructor-contract-ICompoundTimelock-}[`++constructor(timelockAddress)++`]
  3323. * {xref-GovernorTimelockCompound-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3324. * {xref-GovernorTimelockCompound-state-uint256-}[`++state(proposalId)++`]
  3325. * {xref-GovernorTimelockCompound-timelock--}[`++timelock()++`]
  3326. * {xref-GovernorTimelockCompound-proposalEta-uint256-}[`++proposalEta(proposalId)++`]
  3327. * {xref-GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-}[`++queue(targets, values, calldatas, descriptionHash)++`]
  3328. * {xref-GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(proposalId, targets, values, calldatas, _)++`]
  3329. * {xref-GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3330. * {xref-GovernorTimelockCompound-_executor--}[`++_executor()++`]
  3331. * {xref-GovernorTimelockCompound-__acceptAdmin--}[`++__acceptAdmin()++`]
  3332. * {xref-GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-}[`++updateTimelock(newTimelock)++`]
  3333. [.contract-subindex-inherited]
  3334. .Governor
  3335. * {xref-Governor-receive--}[`++receive()++`]
  3336. * {xref-Governor-name--}[`++name()++`]
  3337. * {xref-Governor-version--}[`++version()++`]
  3338. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3339. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3340. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3341. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3342. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3343. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3344. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  3345. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3346. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3347. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3348. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3349. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3350. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3351. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3352. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3353. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3354. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3355. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3356. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3357. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3358. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3359. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3360. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3361. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3362. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3363. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3364. [.contract-subindex-inherited]
  3365. .IERC1155Receiver
  3366. [.contract-subindex-inherited]
  3367. .IERC721Receiver
  3368. [.contract-subindex-inherited]
  3369. .IGovernorTimelock
  3370. [.contract-subindex-inherited]
  3371. .IGovernor
  3372. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3373. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3374. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3375. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3376. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3377. [.contract-subindex-inherited]
  3378. .EIP712
  3379. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3380. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3381. [.contract-subindex-inherited]
  3382. .ERC165
  3383. [.contract-subindex-inherited]
  3384. .IERC165
  3385. --
  3386. [.contract-index]
  3387. .Events
  3388. --
  3389. * {xref-GovernorTimelockCompound-TimelockChange-address-address-}[`++TimelockChange(oldTimelock, newTimelock)++`]
  3390. [.contract-subindex-inherited]
  3391. .Governor
  3392. [.contract-subindex-inherited]
  3393. .IERC1155Receiver
  3394. [.contract-subindex-inherited]
  3395. .IERC721Receiver
  3396. [.contract-subindex-inherited]
  3397. .IGovernorTimelock
  3398. * {xref-IGovernorTimelock-ProposalQueued-uint256-uint256-}[`++ProposalQueued(proposalId, eta)++`]
  3399. [.contract-subindex-inherited]
  3400. .IGovernor
  3401. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3402. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3403. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3404. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3405. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3406. [.contract-subindex-inherited]
  3407. .EIP712
  3408. [.contract-subindex-inherited]
  3409. .ERC165
  3410. [.contract-subindex-inherited]
  3411. .IERC165
  3412. [.contract-subindex-inherited]
  3413. .Context
  3414. --
  3415. [.contract-item]
  3416. [[GovernorTimelockCompound-constructor-contract-ICompoundTimelock-]]
  3417. ==== `[.contract-item-name]#++constructor++#++(contract ICompoundTimelock timelockAddress)++` [.item-kind]#internal#
  3418. Set the timelock.
  3419. [.contract-item]
  3420. [[GovernorTimelockCompound-supportsInterface-bytes4-]]
  3421. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  3422. See {IERC165-supportsInterface}.
  3423. [.contract-item]
  3424. [[GovernorTimelockCompound-state-uint256-]]
  3425. ==== `[.contract-item-name]#++state++#++(uint256 proposalId) → enum IGovernor.ProposalState++` [.item-kind]#public#
  3426. Overridden version of the {Governor-state} function with added support for the `Queued` and `Expired` status.
  3427. [.contract-item]
  3428. [[GovernorTimelockCompound-timelock--]]
  3429. ==== `[.contract-item-name]#++timelock++#++() → address++` [.item-kind]#public#
  3430. Public accessor to check the address of the timelock
  3431. [.contract-item]
  3432. [[GovernorTimelockCompound-proposalEta-uint256-]]
  3433. ==== `[.contract-item-name]#++proposalEta++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  3434. Public accessor to check the eta of a queued proposal
  3435. [.contract-item]
  3436. [[GovernorTimelockCompound-queue-address---uint256---bytes---bytes32-]]
  3437. ==== `[.contract-item-name]#++queue++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#public#
  3438. Function to queue a proposal to the timelock.
  3439. [.contract-item]
  3440. [[GovernorTimelockCompound-_execute-uint256-address---uint256---bytes---bytes32-]]
  3441. ==== `[.contract-item-name]#++_execute++#++(uint256 proposalId, address[] targets, uint256[] values, bytes[] calldatas, bytes32)++` [.item-kind]#internal#
  3442. Overridden execute function that run the already queued proposal through the timelock.
  3443. [.contract-item]
  3444. [[GovernorTimelockCompound-_cancel-address---uint256---bytes---bytes32-]]
  3445. ==== `[.contract-item-name]#++_cancel++#++(address[] targets, uint256[] values, bytes[] calldatas, bytes32 descriptionHash) → uint256++` [.item-kind]#internal#
  3446. Overridden version of the {Governor-_cancel} function to cancel the timelocked proposal if it as already
  3447. been queued.
  3448. [.contract-item]
  3449. [[GovernorTimelockCompound-_executor--]]
  3450. ==== `[.contract-item-name]#++_executor++#++() → address++` [.item-kind]#internal#
  3451. Address through which the governor executes action. In this case, the timelock.
  3452. [.contract-item]
  3453. [[GovernorTimelockCompound-__acceptAdmin--]]
  3454. ==== `[.contract-item-name]#++__acceptAdmin++#++()++` [.item-kind]#public#
  3455. Accept admin right over the timelock.
  3456. [.contract-item]
  3457. [[GovernorTimelockCompound-updateTimelock-contract-ICompoundTimelock-]]
  3458. ==== `[.contract-item-name]#++updateTimelock++#++(contract ICompoundTimelock newTimelock)++` [.item-kind]#external#
  3459. Public endpoint to update the underlying timelock instance. Restricted to the timelock itself, so updates
  3460. must be proposed, scheduled, and executed through governance proposals.
  3461. For security reasons, the timelock must be handed over to another admin before setting up a new one. The two
  3462. operations (hand over the timelock) and do the update can be batched in a single proposal.
  3463. Note that if the timelock admin has been handed over in a previous operation, we refuse updates made through the
  3464. timelock if admin of the timelock has already been accepted and the operation is executed outside the scope of
  3465. governance.
  3466. CAUTION: It is not recommended to change the timelock while there are other queued governance proposals.
  3467. [.contract-item]
  3468. [[GovernorTimelockCompound-TimelockChange-address-address-]]
  3469. ==== `[.contract-item-name]#++TimelockChange++#++(address oldTimelock, address newTimelock)++` [.item-kind]#event#
  3470. Emitted when the timelock controller used for proposal execution is modified.
  3471. :GovernorSettings: pass:normal[xref:#GovernorSettings[`++GovernorSettings++`]]
  3472. :constructor: pass:normal[xref:#GovernorSettings-constructor-uint256-uint256-uint256-[`++constructor++`]]
  3473. :votingDelay: pass:normal[xref:#GovernorSettings-votingDelay--[`++votingDelay++`]]
  3474. :votingPeriod: pass:normal[xref:#GovernorSettings-votingPeriod--[`++votingPeriod++`]]
  3475. :proposalThreshold: pass:normal[xref:#GovernorSettings-proposalThreshold--[`++proposalThreshold++`]]
  3476. :setVotingDelay: pass:normal[xref:#GovernorSettings-setVotingDelay-uint256-[`++setVotingDelay++`]]
  3477. :setVotingPeriod: pass:normal[xref:#GovernorSettings-setVotingPeriod-uint256-[`++setVotingPeriod++`]]
  3478. :setProposalThreshold: pass:normal[xref:#GovernorSettings-setProposalThreshold-uint256-[`++setProposalThreshold++`]]
  3479. :_setVotingDelay: pass:normal[xref:#GovernorSettings-_setVotingDelay-uint256-[`++_setVotingDelay++`]]
  3480. :_setVotingPeriod: pass:normal[xref:#GovernorSettings-_setVotingPeriod-uint256-[`++_setVotingPeriod++`]]
  3481. :_setProposalThreshold: pass:normal[xref:#GovernorSettings-_setProposalThreshold-uint256-[`++_setProposalThreshold++`]]
  3482. :VotingDelaySet: pass:normal[xref:#GovernorSettings-VotingDelaySet-uint256-uint256-[`++VotingDelaySet++`]]
  3483. :VotingPeriodSet: pass:normal[xref:#GovernorSettings-VotingPeriodSet-uint256-uint256-[`++VotingPeriodSet++`]]
  3484. :ProposalThresholdSet: pass:normal[xref:#GovernorSettings-ProposalThresholdSet-uint256-uint256-[`++ProposalThresholdSet++`]]
  3485. [.contract]
  3486. [[GovernorSettings]]
  3487. === `++GovernorSettings++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/extensions/GovernorSettings.sol[{github-icon},role=heading-link]
  3488. [.hljs-theme-light.nopadding]
  3489. ```solidity
  3490. import "@openzeppelin/contracts/governance/extensions/GovernorSettings.sol";
  3491. ```
  3492. Extension of {Governor} for settings updatable through governance.
  3493. _Available since v4.4._
  3494. [.contract-index]
  3495. .Functions
  3496. --
  3497. * {xref-GovernorSettings-constructor-uint256-uint256-uint256-}[`++constructor(initialVotingDelay, initialVotingPeriod, initialProposalThreshold)++`]
  3498. * {xref-GovernorSettings-votingDelay--}[`++votingDelay()++`]
  3499. * {xref-GovernorSettings-votingPeriod--}[`++votingPeriod()++`]
  3500. * {xref-GovernorSettings-proposalThreshold--}[`++proposalThreshold()++`]
  3501. * {xref-GovernorSettings-setVotingDelay-uint256-}[`++setVotingDelay(newVotingDelay)++`]
  3502. * {xref-GovernorSettings-setVotingPeriod-uint256-}[`++setVotingPeriod(newVotingPeriod)++`]
  3503. * {xref-GovernorSettings-setProposalThreshold-uint256-}[`++setProposalThreshold(newProposalThreshold)++`]
  3504. * {xref-GovernorSettings-_setVotingDelay-uint256-}[`++_setVotingDelay(newVotingDelay)++`]
  3505. * {xref-GovernorSettings-_setVotingPeriod-uint256-}[`++_setVotingPeriod(newVotingPeriod)++`]
  3506. * {xref-GovernorSettings-_setProposalThreshold-uint256-}[`++_setProposalThreshold(newProposalThreshold)++`]
  3507. [.contract-subindex-inherited]
  3508. .Governor
  3509. * {xref-Governor-receive--}[`++receive()++`]
  3510. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3511. * {xref-Governor-name--}[`++name()++`]
  3512. * {xref-Governor-version--}[`++version()++`]
  3513. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3514. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  3515. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3516. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3517. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3518. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3519. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  3520. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3521. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3522. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3523. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3524. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  3525. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3526. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3527. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3528. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3529. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3530. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3531. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3532. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3533. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3534. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3535. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3536. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3537. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3538. * {xref-Governor-_executor--}[`++_executor()++`]
  3539. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3540. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3541. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3542. [.contract-subindex-inherited]
  3543. .IERC1155Receiver
  3544. [.contract-subindex-inherited]
  3545. .IERC721Receiver
  3546. [.contract-subindex-inherited]
  3547. .IGovernor
  3548. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3549. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3550. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3551. [.contract-subindex-inherited]
  3552. .EIP712
  3553. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3554. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3555. [.contract-subindex-inherited]
  3556. .ERC165
  3557. [.contract-subindex-inherited]
  3558. .IERC165
  3559. --
  3560. [.contract-index]
  3561. .Events
  3562. --
  3563. * {xref-GovernorSettings-VotingDelaySet-uint256-uint256-}[`++VotingDelaySet(oldVotingDelay, newVotingDelay)++`]
  3564. * {xref-GovernorSettings-VotingPeriodSet-uint256-uint256-}[`++VotingPeriodSet(oldVotingPeriod, newVotingPeriod)++`]
  3565. * {xref-GovernorSettings-ProposalThresholdSet-uint256-uint256-}[`++ProposalThresholdSet(oldProposalThreshold, newProposalThreshold)++`]
  3566. [.contract-subindex-inherited]
  3567. .Governor
  3568. [.contract-subindex-inherited]
  3569. .IERC1155Receiver
  3570. [.contract-subindex-inherited]
  3571. .IERC721Receiver
  3572. [.contract-subindex-inherited]
  3573. .IGovernor
  3574. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3575. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3576. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3577. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3578. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3579. [.contract-subindex-inherited]
  3580. .EIP712
  3581. [.contract-subindex-inherited]
  3582. .ERC165
  3583. [.contract-subindex-inherited]
  3584. .IERC165
  3585. [.contract-subindex-inherited]
  3586. .Context
  3587. --
  3588. [.contract-item]
  3589. [[GovernorSettings-constructor-uint256-uint256-uint256-]]
  3590. ==== `[.contract-item-name]#++constructor++#++(uint256 initialVotingDelay, uint256 initialVotingPeriod, uint256 initialProposalThreshold)++` [.item-kind]#internal#
  3591. Initialize the governance parameters.
  3592. [.contract-item]
  3593. [[GovernorSettings-votingDelay--]]
  3594. ==== `[.contract-item-name]#++votingDelay++#++() → uint256++` [.item-kind]#public#
  3595. See {IGovernor-votingDelay}.
  3596. [.contract-item]
  3597. [[GovernorSettings-votingPeriod--]]
  3598. ==== `[.contract-item-name]#++votingPeriod++#++() → uint256++` [.item-kind]#public#
  3599. See {IGovernor-votingPeriod}.
  3600. [.contract-item]
  3601. [[GovernorSettings-proposalThreshold--]]
  3602. ==== `[.contract-item-name]#++proposalThreshold++#++() → uint256++` [.item-kind]#public#
  3603. See {Governor-proposalThreshold}.
  3604. [.contract-item]
  3605. [[GovernorSettings-setVotingDelay-uint256-]]
  3606. ==== `[.contract-item-name]#++setVotingDelay++#++(uint256 newVotingDelay)++` [.item-kind]#public#
  3607. Update the voting delay. This operation can only be performed through a governance proposal.
  3608. Emits a {VotingDelaySet} event.
  3609. [.contract-item]
  3610. [[GovernorSettings-setVotingPeriod-uint256-]]
  3611. ==== `[.contract-item-name]#++setVotingPeriod++#++(uint256 newVotingPeriod)++` [.item-kind]#public#
  3612. Update the voting period. This operation can only be performed through a governance proposal.
  3613. Emits a {VotingPeriodSet} event.
  3614. [.contract-item]
  3615. [[GovernorSettings-setProposalThreshold-uint256-]]
  3616. ==== `[.contract-item-name]#++setProposalThreshold++#++(uint256 newProposalThreshold)++` [.item-kind]#public#
  3617. Update the proposal threshold. This operation can only be performed through a governance proposal.
  3618. Emits a {ProposalThresholdSet} event.
  3619. [.contract-item]
  3620. [[GovernorSettings-_setVotingDelay-uint256-]]
  3621. ==== `[.contract-item-name]#++_setVotingDelay++#++(uint256 newVotingDelay)++` [.item-kind]#internal#
  3622. Internal setter for the voting delay.
  3623. Emits a {VotingDelaySet} event.
  3624. [.contract-item]
  3625. [[GovernorSettings-_setVotingPeriod-uint256-]]
  3626. ==== `[.contract-item-name]#++_setVotingPeriod++#++(uint256 newVotingPeriod)++` [.item-kind]#internal#
  3627. Internal setter for the voting period.
  3628. Emits a {VotingPeriodSet} event.
  3629. [.contract-item]
  3630. [[GovernorSettings-_setProposalThreshold-uint256-]]
  3631. ==== `[.contract-item-name]#++_setProposalThreshold++#++(uint256 newProposalThreshold)++` [.item-kind]#internal#
  3632. Internal setter for the proposal threshold.
  3633. Emits a {ProposalThresholdSet} event.
  3634. [.contract-item]
  3635. [[GovernorSettings-VotingDelaySet-uint256-uint256-]]
  3636. ==== `[.contract-item-name]#++VotingDelaySet++#++(uint256 oldVotingDelay, uint256 newVotingDelay)++` [.item-kind]#event#
  3637. [.contract-item]
  3638. [[GovernorSettings-VotingPeriodSet-uint256-uint256-]]
  3639. ==== `[.contract-item-name]#++VotingPeriodSet++#++(uint256 oldVotingPeriod, uint256 newVotingPeriod)++` [.item-kind]#event#
  3640. [.contract-item]
  3641. [[GovernorSettings-ProposalThresholdSet-uint256-uint256-]]
  3642. ==== `[.contract-item-name]#++ProposalThresholdSet++#++(uint256 oldProposalThreshold, uint256 newProposalThreshold)++` [.item-kind]#event#
  3643. :GovernorPreventLateQuorum: pass:normal[xref:#GovernorPreventLateQuorum[`++GovernorPreventLateQuorum++`]]
  3644. :constructor: pass:normal[xref:#GovernorPreventLateQuorum-constructor-uint64-[`++constructor++`]]
  3645. :proposalDeadline: pass:normal[xref:#GovernorPreventLateQuorum-proposalDeadline-uint256-[`++proposalDeadline++`]]
  3646. :_castVote: pass:normal[xref:#GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-[`++_castVote++`]]
  3647. :lateQuorumVoteExtension: pass:normal[xref:#GovernorPreventLateQuorum-lateQuorumVoteExtension--[`++lateQuorumVoteExtension++`]]
  3648. :setLateQuorumVoteExtension: pass:normal[xref:#GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-[`++setLateQuorumVoteExtension++`]]
  3649. :_setLateQuorumVoteExtension: pass:normal[xref:#GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-[`++_setLateQuorumVoteExtension++`]]
  3650. :ProposalExtended: pass:normal[xref:#GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-[`++ProposalExtended++`]]
  3651. :LateQuorumVoteExtensionSet: pass:normal[xref:#GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-[`++LateQuorumVoteExtensionSet++`]]
  3652. [.contract]
  3653. [[GovernorPreventLateQuorum]]
  3654. === `++GovernorPreventLateQuorum++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/extensions/GovernorPreventLateQuorum.sol[{github-icon},role=heading-link]
  3655. [.hljs-theme-light.nopadding]
  3656. ```solidity
  3657. import "@openzeppelin/contracts/governance/extensions/GovernorPreventLateQuorum.sol";
  3658. ```
  3659. A module that ensures there is a minimum voting period after quorum is reached. This prevents a large voter from
  3660. swaying a vote and triggering quorum at the last minute, by ensuring there is always time for other voters to react
  3661. and try to oppose the decision.
  3662. If a vote causes quorum to be reached, the proposal's voting period may be extended so that it does not end before at
  3663. least a given number of blocks have passed (the "vote extension" parameter). This parameter can be set by the
  3664. governance executor (e.g. through a governance proposal).
  3665. _Available since v4.5._
  3666. [.contract-index]
  3667. .Functions
  3668. --
  3669. * {xref-GovernorPreventLateQuorum-constructor-uint64-}[`++constructor(initialVoteExtension)++`]
  3670. * {xref-GovernorPreventLateQuorum-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3671. * {xref-GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3672. * {xref-GovernorPreventLateQuorum-lateQuorumVoteExtension--}[`++lateQuorumVoteExtension()++`]
  3673. * {xref-GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-}[`++setLateQuorumVoteExtension(newVoteExtension)++`]
  3674. * {xref-GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-}[`++_setLateQuorumVoteExtension(newVoteExtension)++`]
  3675. [.contract-subindex-inherited]
  3676. .Governor
  3677. * {xref-Governor-receive--}[`++receive()++`]
  3678. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3679. * {xref-Governor-name--}[`++name()++`]
  3680. * {xref-Governor-version--}[`++version()++`]
  3681. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3682. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  3683. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3684. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3685. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3686. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3687. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  3688. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  3689. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3690. * {xref-Governor-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3691. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3692. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  3693. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3694. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3695. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3696. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3697. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3698. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3699. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3700. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3701. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3702. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3703. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3704. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3705. * {xref-Governor-_executor--}[`++_executor()++`]
  3706. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3707. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3708. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3709. [.contract-subindex-inherited]
  3710. .IERC1155Receiver
  3711. [.contract-subindex-inherited]
  3712. .IERC721Receiver
  3713. [.contract-subindex-inherited]
  3714. .IGovernor
  3715. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3716. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3717. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3718. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3719. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3720. [.contract-subindex-inherited]
  3721. .EIP712
  3722. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3723. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3724. [.contract-subindex-inherited]
  3725. .ERC165
  3726. [.contract-subindex-inherited]
  3727. .IERC165
  3728. --
  3729. [.contract-index]
  3730. .Events
  3731. --
  3732. * {xref-GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-}[`++ProposalExtended(proposalId, extendedDeadline)++`]
  3733. * {xref-GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-}[`++LateQuorumVoteExtensionSet(oldVoteExtension, newVoteExtension)++`]
  3734. [.contract-subindex-inherited]
  3735. .Governor
  3736. [.contract-subindex-inherited]
  3737. .IERC1155Receiver
  3738. [.contract-subindex-inherited]
  3739. .IERC721Receiver
  3740. [.contract-subindex-inherited]
  3741. .IGovernor
  3742. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3743. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3744. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3745. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3746. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3747. [.contract-subindex-inherited]
  3748. .EIP712
  3749. [.contract-subindex-inherited]
  3750. .ERC165
  3751. [.contract-subindex-inherited]
  3752. .IERC165
  3753. [.contract-subindex-inherited]
  3754. .Context
  3755. --
  3756. [.contract-item]
  3757. [[GovernorPreventLateQuorum-constructor-uint64-]]
  3758. ==== `[.contract-item-name]#++constructor++#++(uint64 initialVoteExtension)++` [.item-kind]#internal#
  3759. Initializes the vote extension parameter: the number of blocks that are required to pass since a proposal
  3760. reaches quorum until its voting period ends. If necessary the voting period will be extended beyond the one set
  3761. at proposal creation.
  3762. [.contract-item]
  3763. [[GovernorPreventLateQuorum-proposalDeadline-uint256-]]
  3764. ==== `[.contract-item-name]#++proposalDeadline++#++(uint256 proposalId) → uint256++` [.item-kind]#public#
  3765. Returns the proposal deadline, which may have been extended beyond that set at proposal creation, if the
  3766. proposal reached quorum late in the voting period. See {Governor-proposalDeadline}.
  3767. [.contract-item]
  3768. [[GovernorPreventLateQuorum-_castVote-uint256-address-uint8-string-bytes-]]
  3769. ==== `[.contract-item-name]#++_castVote++#++(uint256 proposalId, address account, uint8 support, string reason, bytes params) → uint256++` [.item-kind]#internal#
  3770. Casts a vote and detects if it caused quorum to be reached, potentially extending the voting period. See
  3771. {Governor-_castVote}.
  3772. May emit a {ProposalExtended} event.
  3773. [.contract-item]
  3774. [[GovernorPreventLateQuorum-lateQuorumVoteExtension--]]
  3775. ==== `[.contract-item-name]#++lateQuorumVoteExtension++#++() → uint64++` [.item-kind]#public#
  3776. Returns the current value of the vote extension parameter: the number of blocks that are required to pass
  3777. from the time a proposal reaches quorum until its voting period ends.
  3778. [.contract-item]
  3779. [[GovernorPreventLateQuorum-setLateQuorumVoteExtension-uint64-]]
  3780. ==== `[.contract-item-name]#++setLateQuorumVoteExtension++#++(uint64 newVoteExtension)++` [.item-kind]#public#
  3781. Changes the {lateQuorumVoteExtension}. This operation can only be performed by the governance executor,
  3782. generally through a governance proposal.
  3783. Emits a {LateQuorumVoteExtensionSet} event.
  3784. [.contract-item]
  3785. [[GovernorPreventLateQuorum-_setLateQuorumVoteExtension-uint64-]]
  3786. ==== `[.contract-item-name]#++_setLateQuorumVoteExtension++#++(uint64 newVoteExtension)++` [.item-kind]#internal#
  3787. Changes the {lateQuorumVoteExtension}. This is an internal function that can be exposed in a public function
  3788. like {setLateQuorumVoteExtension} if another access control mechanism is needed.
  3789. Emits a {LateQuorumVoteExtensionSet} event.
  3790. [.contract-item]
  3791. [[GovernorPreventLateQuorum-ProposalExtended-uint256-uint64-]]
  3792. ==== `[.contract-item-name]#++ProposalExtended++#++(uint256 proposalId, uint64 extendedDeadline)++` [.item-kind]#event#
  3793. Emitted when a proposal deadline is pushed back due to reaching quorum late in its voting period.
  3794. [.contract-item]
  3795. [[GovernorPreventLateQuorum-LateQuorumVoteExtensionSet-uint64-uint64-]]
  3796. ==== `[.contract-item-name]#++LateQuorumVoteExtensionSet++#++(uint64 oldVoteExtension, uint64 newVoteExtension)++` [.item-kind]#event#
  3797. Emitted when the {lateQuorumVoteExtension} parameter is changed.
  3798. :GovernorCompatibilityBravo: pass:normal[xref:#GovernorCompatibilityBravo[`++GovernorCompatibilityBravo++`]]
  3799. :COUNTING_MODE: pass:normal[xref:#GovernorCompatibilityBravo-COUNTING_MODE--[`++COUNTING_MODE++`]]
  3800. :propose: pass:normal[xref:#GovernorCompatibilityBravo-propose-address---uint256---bytes---string-[`++propose++`]]
  3801. :propose: pass:normal[xref:#GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-[`++propose++`]]
  3802. :queue: pass:normal[xref:#GovernorCompatibilityBravo-queue-uint256-[`++queue++`]]
  3803. :execute: pass:normal[xref:#GovernorCompatibilityBravo-execute-uint256-[`++execute++`]]
  3804. :cancel: pass:normal[xref:#GovernorCompatibilityBravo-cancel-uint256-[`++cancel++`]]
  3805. :proposals: pass:normal[xref:#GovernorCompatibilityBravo-proposals-uint256-[`++proposals++`]]
  3806. :getActions: pass:normal[xref:#GovernorCompatibilityBravo-getActions-uint256-[`++getActions++`]]
  3807. :getReceipt: pass:normal[xref:#GovernorCompatibilityBravo-getReceipt-uint256-address-[`++getReceipt++`]]
  3808. :quorumVotes: pass:normal[xref:#GovernorCompatibilityBravo-quorumVotes--[`++quorumVotes++`]]
  3809. :hasVoted: pass:normal[xref:#GovernorCompatibilityBravo-hasVoted-uint256-address-[`++hasVoted++`]]
  3810. :_quorumReached: pass:normal[xref:#GovernorCompatibilityBravo-_quorumReached-uint256-[`++_quorumReached++`]]
  3811. :_voteSucceeded: pass:normal[xref:#GovernorCompatibilityBravo-_voteSucceeded-uint256-[`++_voteSucceeded++`]]
  3812. :_countVote: pass:normal[xref:#GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-[`++_countVote++`]]
  3813. :ProposalDetails: pass:normal[xref:#GovernorCompatibilityBravo-ProposalDetails[`++ProposalDetails++`]]
  3814. :VoteType: pass:normal[xref:#GovernorCompatibilityBravo-VoteType[`++VoteType++`]]
  3815. [.contract]
  3816. [[GovernorCompatibilityBravo]]
  3817. === `++GovernorCompatibilityBravo++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/compatibility/GovernorCompatibilityBravo.sol[{github-icon},role=heading-link]
  3818. [.hljs-theme-light.nopadding]
  3819. ```solidity
  3820. import "@openzeppelin/contracts/governance/compatibility/GovernorCompatibilityBravo.sol";
  3821. ```
  3822. Compatibility layer that implements GovernorBravo compatibility on to of {Governor}.
  3823. This compatibility layer includes a voting system and requires a {IGovernorTimelock} compatible module to be added
  3824. through inheritance. It does not include token bindings, not does it include any variable upgrade patterns.
  3825. NOTE: When using this module, you may need to enable the Solidity optimizer to avoid hitting the contract size limit.
  3826. _Available since v4.3._
  3827. [.contract-index]
  3828. .Functions
  3829. --
  3830. * {xref-GovernorCompatibilityBravo-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  3831. * {xref-GovernorCompatibilityBravo-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  3832. * {xref-GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-}[`++propose(targets, values, signatures, calldatas, description)++`]
  3833. * {xref-GovernorCompatibilityBravo-queue-uint256-}[`++queue(proposalId)++`]
  3834. * {xref-GovernorCompatibilityBravo-execute-uint256-}[`++execute(proposalId)++`]
  3835. * {xref-GovernorCompatibilityBravo-cancel-uint256-}[`++cancel(proposalId)++`]
  3836. * {xref-GovernorCompatibilityBravo-proposals-uint256-}[`++proposals(proposalId)++`]
  3837. * {xref-GovernorCompatibilityBravo-getActions-uint256-}[`++getActions(proposalId)++`]
  3838. * {xref-GovernorCompatibilityBravo-getReceipt-uint256-address-}[`++getReceipt(proposalId, voter)++`]
  3839. * {xref-GovernorCompatibilityBravo-quorumVotes--}[`++quorumVotes()++`]
  3840. * {xref-GovernorCompatibilityBravo-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  3841. * {xref-GovernorCompatibilityBravo-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  3842. * {xref-GovernorCompatibilityBravo-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  3843. * {xref-GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, _)++`]
  3844. [.contract-subindex-inherited]
  3845. .Governor
  3846. * {xref-Governor-constructor-string-}[`++constructor(name_)++`]
  3847. * {xref-Governor-receive--}[`++receive()++`]
  3848. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  3849. * {xref-Governor-name--}[`++name()++`]
  3850. * {xref-Governor-version--}[`++version()++`]
  3851. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  3852. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  3853. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  3854. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  3855. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  3856. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  3857. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  3858. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  3859. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  3860. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  3861. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  3862. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  3863. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  3864. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  3865. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  3866. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  3867. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  3868. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  3869. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  3870. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  3871. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  3872. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  3873. * {xref-Governor-_executor--}[`++_executor()++`]
  3874. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  3875. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  3876. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  3877. [.contract-subindex-inherited]
  3878. .IERC1155Receiver
  3879. [.contract-subindex-inherited]
  3880. .IERC721Receiver
  3881. [.contract-subindex-inherited]
  3882. .IGovernorCompatibilityBravo
  3883. [.contract-subindex-inherited]
  3884. .IGovernorTimelock
  3885. * {xref-IGovernorTimelock-timelock--}[`++timelock()++`]
  3886. * {xref-IGovernorTimelock-proposalEta-uint256-}[`++proposalEta(proposalId)++`]
  3887. * {xref-IGovernorTimelock-queue-address---uint256---bytes---bytes32-}[`++queue(targets, values, calldatas, descriptionHash)++`]
  3888. [.contract-subindex-inherited]
  3889. .IGovernor
  3890. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  3891. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  3892. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  3893. [.contract-subindex-inherited]
  3894. .EIP712
  3895. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  3896. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  3897. [.contract-subindex-inherited]
  3898. .ERC165
  3899. [.contract-subindex-inherited]
  3900. .IERC165
  3901. --
  3902. [.contract-index]
  3903. .Events
  3904. --
  3905. [.contract-subindex-inherited]
  3906. .Governor
  3907. [.contract-subindex-inherited]
  3908. .IERC1155Receiver
  3909. [.contract-subindex-inherited]
  3910. .IERC721Receiver
  3911. [.contract-subindex-inherited]
  3912. .IGovernorCompatibilityBravo
  3913. [.contract-subindex-inherited]
  3914. .IGovernorTimelock
  3915. * {xref-IGovernorTimelock-ProposalQueued-uint256-uint256-}[`++ProposalQueued(proposalId, eta)++`]
  3916. [.contract-subindex-inherited]
  3917. .IGovernor
  3918. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  3919. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  3920. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  3921. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  3922. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  3923. [.contract-subindex-inherited]
  3924. .EIP712
  3925. [.contract-subindex-inherited]
  3926. .ERC165
  3927. [.contract-subindex-inherited]
  3928. .IERC165
  3929. [.contract-subindex-inherited]
  3930. .Context
  3931. --
  3932. [.contract-item]
  3933. [[GovernorCompatibilityBravo-COUNTING_MODE--]]
  3934. ==== `[.contract-item-name]#++COUNTING_MODE++#++() → string++` [.item-kind]#public#
  3935. [.contract-item]
  3936. [[GovernorCompatibilityBravo-propose-address---uint256---bytes---string-]]
  3937. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, bytes[] calldatas, string description) → uint256++` [.item-kind]#public#
  3938. See {IGovernor-propose}.
  3939. [.contract-item]
  3940. [[GovernorCompatibilityBravo-propose-address---uint256---string---bytes---string-]]
  3941. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, string[] signatures, bytes[] calldatas, string description) → uint256++` [.item-kind]#public#
  3942. See {IGovernorCompatibilityBravo-propose}.
  3943. [.contract-item]
  3944. [[GovernorCompatibilityBravo-queue-uint256-]]
  3945. ==== `[.contract-item-name]#++queue++#++(uint256 proposalId)++` [.item-kind]#public#
  3946. See {IGovernorCompatibilityBravo-queue}.
  3947. [.contract-item]
  3948. [[GovernorCompatibilityBravo-execute-uint256-]]
  3949. ==== `[.contract-item-name]#++execute++#++(uint256 proposalId)++` [.item-kind]#public#
  3950. See {IGovernorCompatibilityBravo-execute}.
  3951. [.contract-item]
  3952. [[GovernorCompatibilityBravo-cancel-uint256-]]
  3953. ==== `[.contract-item-name]#++cancel++#++(uint256 proposalId)++` [.item-kind]#public#
  3954. [.contract-item]
  3955. [[GovernorCompatibilityBravo-proposals-uint256-]]
  3956. ==== `[.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#
  3957. See {IGovernorCompatibilityBravo-proposals}.
  3958. [.contract-item]
  3959. [[GovernorCompatibilityBravo-getActions-uint256-]]
  3960. ==== `[.contract-item-name]#++getActions++#++(uint256 proposalId) → address[] targets, uint256[] values, string[] signatures, bytes[] calldatas++` [.item-kind]#public#
  3961. See {IGovernorCompatibilityBravo-getActions}.
  3962. [.contract-item]
  3963. [[GovernorCompatibilityBravo-getReceipt-uint256-address-]]
  3964. ==== `[.contract-item-name]#++getReceipt++#++(uint256 proposalId, address voter) → struct IGovernorCompatibilityBravo.Receipt++` [.item-kind]#public#
  3965. See {IGovernorCompatibilityBravo-getReceipt}.
  3966. [.contract-item]
  3967. [[GovernorCompatibilityBravo-quorumVotes--]]
  3968. ==== `[.contract-item-name]#++quorumVotes++#++() → uint256++` [.item-kind]#public#
  3969. See {IGovernorCompatibilityBravo-quorumVotes}.
  3970. [.contract-item]
  3971. [[GovernorCompatibilityBravo-hasVoted-uint256-address-]]
  3972. ==== `[.contract-item-name]#++hasVoted++#++(uint256 proposalId, address account) → bool++` [.item-kind]#public#
  3973. See {IGovernor-hasVoted}.
  3974. [.contract-item]
  3975. [[GovernorCompatibilityBravo-_quorumReached-uint256-]]
  3976. ==== `[.contract-item-name]#++_quorumReached++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  3977. See {Governor-_quorumReached}. In this module, only forVotes count toward the quorum.
  3978. [.contract-item]
  3979. [[GovernorCompatibilityBravo-_voteSucceeded-uint256-]]
  3980. ==== `[.contract-item-name]#++_voteSucceeded++#++(uint256 proposalId) → bool++` [.item-kind]#internal#
  3981. See {Governor-_voteSucceeded}. In this module, the forVotes must be scritly over the againstVotes.
  3982. [.contract-item]
  3983. [[GovernorCompatibilityBravo-_countVote-uint256-address-uint8-uint256-bytes-]]
  3984. ==== `[.contract-item-name]#++_countVote++#++(uint256 proposalId, address account, uint8 support, uint256 weight, bytes)++` [.item-kind]#internal#
  3985. See {Governor-_countVote}. In this module, the support follows Governor Bravo.
  3986. === Deprecated
  3987. :GovernorProposalThreshold: pass:normal[xref:#GovernorProposalThreshold[`++GovernorProposalThreshold++`]]
  3988. :propose: pass:normal[xref:#GovernorProposalThreshold-propose-address---uint256---bytes---string-[`++propose++`]]
  3989. [.contract]
  3990. [[GovernorProposalThreshold]]
  3991. === `++GovernorProposalThreshold++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/extensions/GovernorProposalThreshold.sol[{github-icon},role=heading-link]
  3992. [.hljs-theme-light.nopadding]
  3993. ```solidity
  3994. import "@openzeppelin/contracts/governance/extensions/GovernorProposalThreshold.sol";
  3995. ```
  3996. Extension of {Governor} for proposal restriction to token holders with a minimum balance.
  3997. _Available since v4.3._
  3998. _Deprecated since v4.4._
  3999. [.contract-index]
  4000. .Functions
  4001. --
  4002. * {xref-GovernorProposalThreshold-propose-address---uint256---bytes---string-}[`++propose(targets, values, calldatas, description)++`]
  4003. [.contract-subindex-inherited]
  4004. .Governor
  4005. * {xref-Governor-constructor-string-}[`++constructor(name_)++`]
  4006. * {xref-Governor-receive--}[`++receive()++`]
  4007. * {xref-Governor-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  4008. * {xref-Governor-name--}[`++name()++`]
  4009. * {xref-Governor-version--}[`++version()++`]
  4010. * {xref-Governor-hashProposal-address---uint256---bytes---bytes32-}[`++hashProposal(targets, values, calldatas, descriptionHash)++`]
  4011. * {xref-Governor-state-uint256-}[`++state(proposalId)++`]
  4012. * {xref-Governor-proposalSnapshot-uint256-}[`++proposalSnapshot(proposalId)++`]
  4013. * {xref-Governor-proposalDeadline-uint256-}[`++proposalDeadline(proposalId)++`]
  4014. * {xref-Governor-proposalThreshold--}[`++proposalThreshold()++`]
  4015. * {xref-Governor-_quorumReached-uint256-}[`++_quorumReached(proposalId)++`]
  4016. * {xref-Governor-_voteSucceeded-uint256-}[`++_voteSucceeded(proposalId)++`]
  4017. * {xref-Governor-_getVotes-address-uint256-bytes-}[`++_getVotes(account, blockNumber, params)++`]
  4018. * {xref-Governor-_countVote-uint256-address-uint8-uint256-bytes-}[`++_countVote(proposalId, account, support, weight, params)++`]
  4019. * {xref-Governor-_defaultParams--}[`++_defaultParams()++`]
  4020. * {xref-Governor-execute-address---uint256---bytes---bytes32-}[`++execute(targets, values, calldatas, descriptionHash)++`]
  4021. * {xref-Governor-_execute-uint256-address---uint256---bytes---bytes32-}[`++_execute(_, targets, values, calldatas, _)++`]
  4022. * {xref-Governor-_beforeExecute-uint256-address---uint256---bytes---bytes32-}[`++_beforeExecute(_, targets, _, calldatas, _)++`]
  4023. * {xref-Governor-_afterExecute-uint256-address---uint256---bytes---bytes32-}[`++_afterExecute(_, _, _, _, _)++`]
  4024. * {xref-Governor-_cancel-address---uint256---bytes---bytes32-}[`++_cancel(targets, values, calldatas, descriptionHash)++`]
  4025. * {xref-Governor-getVotes-address-uint256-}[`++getVotes(account, blockNumber)++`]
  4026. * {xref-Governor-getVotesWithParams-address-uint256-bytes-}[`++getVotesWithParams(account, blockNumber, params)++`]
  4027. * {xref-Governor-castVote-uint256-uint8-}[`++castVote(proposalId, support)++`]
  4028. * {xref-Governor-castVoteWithReason-uint256-uint8-string-}[`++castVoteWithReason(proposalId, support, reason)++`]
  4029. * {xref-Governor-castVoteWithReasonAndParams-uint256-uint8-string-bytes-}[`++castVoteWithReasonAndParams(proposalId, support, reason, params)++`]
  4030. * {xref-Governor-castVoteBySig-uint256-uint8-uint8-bytes32-bytes32-}[`++castVoteBySig(proposalId, support, v, r, s)++`]
  4031. * {xref-Governor-castVoteWithReasonAndParamsBySig-uint256-uint8-string-bytes-uint8-bytes32-bytes32-}[`++castVoteWithReasonAndParamsBySig(proposalId, support, reason, params, v, r, s)++`]
  4032. * {xref-Governor-_castVote-uint256-address-uint8-string-}[`++_castVote(proposalId, account, support, reason)++`]
  4033. * {xref-Governor-_castVote-uint256-address-uint8-string-bytes-}[`++_castVote(proposalId, account, support, reason, params)++`]
  4034. * {xref-Governor-relay-address-uint256-bytes-}[`++relay(target, value, data)++`]
  4035. * {xref-Governor-_executor--}[`++_executor()++`]
  4036. * {xref-Governor-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  4037. * {xref-Governor-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  4038. * {xref-Governor-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  4039. [.contract-subindex-inherited]
  4040. .IERC1155Receiver
  4041. [.contract-subindex-inherited]
  4042. .IERC721Receiver
  4043. [.contract-subindex-inherited]
  4044. .IGovernor
  4045. * {xref-IGovernor-COUNTING_MODE--}[`++COUNTING_MODE()++`]
  4046. * {xref-IGovernor-votingDelay--}[`++votingDelay()++`]
  4047. * {xref-IGovernor-votingPeriod--}[`++votingPeriod()++`]
  4048. * {xref-IGovernor-quorum-uint256-}[`++quorum(blockNumber)++`]
  4049. * {xref-IGovernor-hasVoted-uint256-address-}[`++hasVoted(proposalId, account)++`]
  4050. [.contract-subindex-inherited]
  4051. .EIP712
  4052. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  4053. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  4054. [.contract-subindex-inherited]
  4055. .ERC165
  4056. [.contract-subindex-inherited]
  4057. .IERC165
  4058. --
  4059. [.contract-index]
  4060. .Events
  4061. --
  4062. [.contract-subindex-inherited]
  4063. .Governor
  4064. [.contract-subindex-inherited]
  4065. .IERC1155Receiver
  4066. [.contract-subindex-inherited]
  4067. .IERC721Receiver
  4068. [.contract-subindex-inherited]
  4069. .IGovernor
  4070. * {xref-IGovernor-ProposalCreated-uint256-address-address---uint256---string---bytes---uint256-uint256-string-}[`++ProposalCreated(proposalId, proposer, targets, values, signatures, calldatas, startBlock, endBlock, description)++`]
  4071. * {xref-IGovernor-ProposalCanceled-uint256-}[`++ProposalCanceled(proposalId)++`]
  4072. * {xref-IGovernor-ProposalExecuted-uint256-}[`++ProposalExecuted(proposalId)++`]
  4073. * {xref-IGovernor-VoteCast-address-uint256-uint8-uint256-string-}[`++VoteCast(voter, proposalId, support, weight, reason)++`]
  4074. * {xref-IGovernor-VoteCastWithParams-address-uint256-uint8-uint256-string-bytes-}[`++VoteCastWithParams(voter, proposalId, support, weight, reason, params)++`]
  4075. [.contract-subindex-inherited]
  4076. .EIP712
  4077. [.contract-subindex-inherited]
  4078. .ERC165
  4079. [.contract-subindex-inherited]
  4080. .IERC165
  4081. [.contract-subindex-inherited]
  4082. .Context
  4083. --
  4084. [.contract-item]
  4085. [[GovernorProposalThreshold-propose-address---uint256---bytes---string-]]
  4086. ==== `[.contract-item-name]#++propose++#++(address[] targets, uint256[] values, bytes[] calldatas, string description) → uint256++` [.item-kind]#public#
  4087. == Utils
  4088. :Votes: pass:normal[xref:#Votes[`++Votes++`]]
  4089. :getVotes: pass:normal[xref:#Votes-getVotes-address-[`++getVotes++`]]
  4090. :getPastVotes: pass:normal[xref:#Votes-getPastVotes-address-uint256-[`++getPastVotes++`]]
  4091. :getPastTotalSupply: pass:normal[xref:#Votes-getPastTotalSupply-uint256-[`++getPastTotalSupply++`]]
  4092. :_getTotalSupply: pass:normal[xref:#Votes-_getTotalSupply--[`++_getTotalSupply++`]]
  4093. :delegates: pass:normal[xref:#Votes-delegates-address-[`++delegates++`]]
  4094. :delegate: pass:normal[xref:#Votes-delegate-address-[`++delegate++`]]
  4095. :delegateBySig: pass:normal[xref:#Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-[`++delegateBySig++`]]
  4096. :_delegate: pass:normal[xref:#Votes-_delegate-address-address-[`++_delegate++`]]
  4097. :_transferVotingUnits: pass:normal[xref:#Votes-_transferVotingUnits-address-address-uint256-[`++_transferVotingUnits++`]]
  4098. :_useNonce: pass:normal[xref:#Votes-_useNonce-address-[`++_useNonce++`]]
  4099. :nonces: pass:normal[xref:#Votes-nonces-address-[`++nonces++`]]
  4100. :DOMAIN_SEPARATOR: pass:normal[xref:#Votes-DOMAIN_SEPARATOR--[`++DOMAIN_SEPARATOR++`]]
  4101. :_getVotingUnits: pass:normal[xref:#Votes-_getVotingUnits-address-[`++_getVotingUnits++`]]
  4102. [.contract]
  4103. [[Votes]]
  4104. === `++Votes++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/utils/Votes.sol[{github-icon},role=heading-link]
  4105. [.hljs-theme-light.nopadding]
  4106. ```solidity
  4107. import "@openzeppelin/contracts/governance/utils/Votes.sol";
  4108. ```
  4109. This is a base abstract contract that tracks voting units, which are a measure of voting power that can be
  4110. transferred, and provides a system of vote delegation, where an account can delegate its voting units to a sort of
  4111. "representative" that will pool delegated voting units from different accounts and can then use it to vote in
  4112. decisions. In fact, voting units _must_ be delegated in order to count as actual votes, and an account has to
  4113. delegate those votes to itself if it wishes to participate in decisions and does not have a trusted representative.
  4114. This contract is often combined with a token contract such that voting units correspond to token units. For an
  4115. example, see {ERC721Votes}.
  4116. The full history of delegate votes is tracked on-chain so that governance protocols can consider votes as distributed
  4117. at a particular block number to protect against flash loans and double voting. The opt-in delegate system makes the
  4118. cost of this history tracking optional.
  4119. When using this module the derived contract must implement {_getVotingUnits} (for example, make it return
  4120. {ERC721-balanceOf}), and can use {_transferVotingUnits} to track a change in the distribution of those units (in the
  4121. previous example, it would be included in {ERC721-_beforeTokenTransfer}).
  4122. _Available since v4.5._
  4123. [.contract-index]
  4124. .Functions
  4125. --
  4126. * {xref-Votes-getVotes-address-}[`++getVotes(account)++`]
  4127. * {xref-Votes-getPastVotes-address-uint256-}[`++getPastVotes(account, blockNumber)++`]
  4128. * {xref-Votes-getPastTotalSupply-uint256-}[`++getPastTotalSupply(blockNumber)++`]
  4129. * {xref-Votes-_getTotalSupply--}[`++_getTotalSupply()++`]
  4130. * {xref-Votes-delegates-address-}[`++delegates(account)++`]
  4131. * {xref-Votes-delegate-address-}[`++delegate(delegatee)++`]
  4132. * {xref-Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-}[`++delegateBySig(delegatee, nonce, expiry, v, r, s)++`]
  4133. * {xref-Votes-_delegate-address-address-}[`++_delegate(account, delegatee)++`]
  4134. * {xref-Votes-_transferVotingUnits-address-address-uint256-}[`++_transferVotingUnits(from, to, amount)++`]
  4135. * {xref-Votes-_useNonce-address-}[`++_useNonce(owner)++`]
  4136. * {xref-Votes-nonces-address-}[`++nonces(owner)++`]
  4137. * {xref-Votes-DOMAIN_SEPARATOR--}[`++DOMAIN_SEPARATOR()++`]
  4138. * {xref-Votes-_getVotingUnits-address-}[`++_getVotingUnits(_)++`]
  4139. [.contract-subindex-inherited]
  4140. .EIP712
  4141. * {xref-EIP712-constructor-string-string-}[`++constructor(name, version)++`]
  4142. * {xref-EIP712-_domainSeparatorV4--}[`++_domainSeparatorV4()++`]
  4143. * {xref-EIP712-_hashTypedDataV4-bytes32-}[`++_hashTypedDataV4(structHash)++`]
  4144. [.contract-subindex-inherited]
  4145. .IVotes
  4146. --
  4147. [.contract-index]
  4148. .Events
  4149. --
  4150. [.contract-subindex-inherited]
  4151. .EIP712
  4152. [.contract-subindex-inherited]
  4153. .Context
  4154. [.contract-subindex-inherited]
  4155. .IVotes
  4156. * {xref-IVotes-DelegateChanged-address-address-address-}[`++DelegateChanged(delegator, fromDelegate, toDelegate)++`]
  4157. * {xref-IVotes-DelegateVotesChanged-address-uint256-uint256-}[`++DelegateVotesChanged(delegate, previousBalance, newBalance)++`]
  4158. --
  4159. [.contract-item]
  4160. [[Votes-getVotes-address-]]
  4161. ==== `[.contract-item-name]#++getVotes++#++(address account) → uint256++` [.item-kind]#public#
  4162. Returns the current amount of votes that `account` has.
  4163. [.contract-item]
  4164. [[Votes-getPastVotes-address-uint256-]]
  4165. ==== `[.contract-item-name]#++getPastVotes++#++(address account, uint256 blockNumber) → uint256++` [.item-kind]#public#
  4166. Returns the amount of votes that `account` had at the end of a past block (`blockNumber`).
  4167. Requirements:
  4168. - `blockNumber` must have been already mined
  4169. [.contract-item]
  4170. [[Votes-getPastTotalSupply-uint256-]]
  4171. ==== `[.contract-item-name]#++getPastTotalSupply++#++(uint256 blockNumber) → uint256++` [.item-kind]#public#
  4172. Returns the total supply of votes available at the end of a past block (`blockNumber`).
  4173. NOTE: This value is the sum of all available votes, which is not necessarily the sum of all delegated votes.
  4174. Votes that have not been delegated are still part of total supply, even though they would not participate in a
  4175. vote.
  4176. Requirements:
  4177. - `blockNumber` must have been already mined
  4178. [.contract-item]
  4179. [[Votes-_getTotalSupply--]]
  4180. ==== `[.contract-item-name]#++_getTotalSupply++#++() → uint256++` [.item-kind]#internal#
  4181. Returns the current total supply of votes.
  4182. [.contract-item]
  4183. [[Votes-delegates-address-]]
  4184. ==== `[.contract-item-name]#++delegates++#++(address account) → address++` [.item-kind]#public#
  4185. Returns the delegate that `account` has chosen.
  4186. [.contract-item]
  4187. [[Votes-delegate-address-]]
  4188. ==== `[.contract-item-name]#++delegate++#++(address delegatee)++` [.item-kind]#public#
  4189. Delegates votes from the sender to `delegatee`.
  4190. [.contract-item]
  4191. [[Votes-delegateBySig-address-uint256-uint256-uint8-bytes32-bytes32-]]
  4192. ==== `[.contract-item-name]#++delegateBySig++#++(address delegatee, uint256 nonce, uint256 expiry, uint8 v, bytes32 r, bytes32 s)++` [.item-kind]#public#
  4193. Delegates votes from signer to `delegatee`.
  4194. [.contract-item]
  4195. [[Votes-_delegate-address-address-]]
  4196. ==== `[.contract-item-name]#++_delegate++#++(address account, address delegatee)++` [.item-kind]#internal#
  4197. Delegate all of `account`'s voting units to `delegatee`.
  4198. Emits events {DelegateChanged} and {DelegateVotesChanged}.
  4199. [.contract-item]
  4200. [[Votes-_transferVotingUnits-address-address-uint256-]]
  4201. ==== `[.contract-item-name]#++_transferVotingUnits++#++(address from, address to, uint256 amount)++` [.item-kind]#internal#
  4202. Transfers, mints, or burns voting units. To register a mint, `from` should be zero. To register a burn, `to`
  4203. should be zero. Total supply of voting units will be adjusted with mints and burns.
  4204. [.contract-item]
  4205. [[Votes-_useNonce-address-]]
  4206. ==== `[.contract-item-name]#++_useNonce++#++(address owner) → uint256 current++` [.item-kind]#internal#
  4207. Consumes a nonce.
  4208. Returns the current value and increments nonce.
  4209. [.contract-item]
  4210. [[Votes-nonces-address-]]
  4211. ==== `[.contract-item-name]#++nonces++#++(address owner) → uint256++` [.item-kind]#public#
  4212. Returns an address nonce.
  4213. [.contract-item]
  4214. [[Votes-DOMAIN_SEPARATOR--]]
  4215. ==== `[.contract-item-name]#++DOMAIN_SEPARATOR++#++() → bytes32++` [.item-kind]#external#
  4216. Returns the contract's {EIP712} domain separator.
  4217. [.contract-item]
  4218. [[Votes-_getVotingUnits-address-]]
  4219. ==== `[.contract-item-name]#++_getVotingUnits++#++(address) → uint256++` [.item-kind]#internal#
  4220. Must return the voting units held by an account.
  4221. == Timelock
  4222. 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}.
  4223. :TimelockController: pass:normal[xref:#TimelockController[`++TimelockController++`]]
  4224. :onlyRoleOrOpenRole: pass:normal[xref:#TimelockController-onlyRoleOrOpenRole-bytes32-[`++onlyRoleOrOpenRole++`]]
  4225. :TIMELOCK_ADMIN_ROLE: pass:normal[xref:#TimelockController-TIMELOCK_ADMIN_ROLE-bytes32[`++TIMELOCK_ADMIN_ROLE++`]]
  4226. :PROPOSER_ROLE: pass:normal[xref:#TimelockController-PROPOSER_ROLE-bytes32[`++PROPOSER_ROLE++`]]
  4227. :EXECUTOR_ROLE: pass:normal[xref:#TimelockController-EXECUTOR_ROLE-bytes32[`++EXECUTOR_ROLE++`]]
  4228. :CANCELLER_ROLE: pass:normal[xref:#TimelockController-CANCELLER_ROLE-bytes32[`++CANCELLER_ROLE++`]]
  4229. :_DONE_TIMESTAMP: pass:normal[xref:#TimelockController-_DONE_TIMESTAMP-uint256[`++_DONE_TIMESTAMP++`]]
  4230. :constructor: pass:normal[xref:#TimelockController-constructor-uint256-address---address---[`++constructor++`]]
  4231. :receive: pass:normal[xref:#TimelockController-receive--[`++receive++`]]
  4232. :supportsInterface: pass:normal[xref:#TimelockController-supportsInterface-bytes4-[`++supportsInterface++`]]
  4233. :isOperation: pass:normal[xref:#TimelockController-isOperation-bytes32-[`++isOperation++`]]
  4234. :isOperationPending: pass:normal[xref:#TimelockController-isOperationPending-bytes32-[`++isOperationPending++`]]
  4235. :isOperationReady: pass:normal[xref:#TimelockController-isOperationReady-bytes32-[`++isOperationReady++`]]
  4236. :isOperationDone: pass:normal[xref:#TimelockController-isOperationDone-bytes32-[`++isOperationDone++`]]
  4237. :getTimestamp: pass:normal[xref:#TimelockController-getTimestamp-bytes32-[`++getTimestamp++`]]
  4238. :getMinDelay: pass:normal[xref:#TimelockController-getMinDelay--[`++getMinDelay++`]]
  4239. :hashOperation: pass:normal[xref:#TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-[`++hashOperation++`]]
  4240. :hashOperationBatch: pass:normal[xref:#TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-[`++hashOperationBatch++`]]
  4241. :schedule: pass:normal[xref:#TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-[`++schedule++`]]
  4242. :scheduleBatch: pass:normal[xref:#TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-[`++scheduleBatch++`]]
  4243. :cancel: pass:normal[xref:#TimelockController-cancel-bytes32-[`++cancel++`]]
  4244. :execute: pass:normal[xref:#TimelockController-execute-address-uint256-bytes-bytes32-bytes32-[`++execute++`]]
  4245. :executeBatch: pass:normal[xref:#TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-[`++executeBatch++`]]
  4246. :updateDelay: pass:normal[xref:#TimelockController-updateDelay-uint256-[`++updateDelay++`]]
  4247. :onERC721Received: pass:normal[xref:#TimelockController-onERC721Received-address-address-uint256-bytes-[`++onERC721Received++`]]
  4248. :onERC1155Received: pass:normal[xref:#TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-[`++onERC1155Received++`]]
  4249. :onERC1155BatchReceived: pass:normal[xref:#TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-[`++onERC1155BatchReceived++`]]
  4250. :CallScheduled: pass:normal[xref:#TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-[`++CallScheduled++`]]
  4251. :CallExecuted: pass:normal[xref:#TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-[`++CallExecuted++`]]
  4252. :Cancelled: pass:normal[xref:#TimelockController-Cancelled-bytes32-[`++Cancelled++`]]
  4253. :MinDelayChange: pass:normal[xref:#TimelockController-MinDelayChange-uint256-uint256-[`++MinDelayChange++`]]
  4254. [.contract]
  4255. [[TimelockController]]
  4256. === `++TimelockController++` link:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.6.0/contracts/governance/TimelockController.sol[{github-icon},role=heading-link]
  4257. [.hljs-theme-light.nopadding]
  4258. ```solidity
  4259. import "@openzeppelin/contracts/governance/TimelockController.sol";
  4260. ```
  4261. Contract module which acts as a timelocked controller. When set as the
  4262. owner of an `Ownable` smart contract, it enforces a timelock on all
  4263. `onlyOwner` maintenance operations. This gives time for users of the
  4264. controlled contract to exit before a potentially dangerous maintenance
  4265. operation is applied.
  4266. By default, this contract is self administered, meaning administration tasks
  4267. have to go through the timelock process. The proposer (resp executor) role
  4268. is in charge of proposing (resp executing) operations. A common use case is
  4269. to position this {TimelockController} as the owner of a smart contract, with
  4270. a multisig or a DAO as the sole proposer.
  4271. _Available since v3.3._
  4272. [.contract-index]
  4273. .Modifiers
  4274. --
  4275. * {xref-TimelockController-onlyRoleOrOpenRole-bytes32-}[`++onlyRoleOrOpenRole(role)++`]
  4276. --
  4277. [.contract-index]
  4278. .Functions
  4279. --
  4280. * {xref-TimelockController-constructor-uint256-address---address---}[`++constructor(minDelay, proposers, executors)++`]
  4281. * {xref-TimelockController-receive--}[`++receive()++`]
  4282. * {xref-TimelockController-supportsInterface-bytes4-}[`++supportsInterface(interfaceId)++`]
  4283. * {xref-TimelockController-isOperation-bytes32-}[`++isOperation(id)++`]
  4284. * {xref-TimelockController-isOperationPending-bytes32-}[`++isOperationPending(id)++`]
  4285. * {xref-TimelockController-isOperationReady-bytes32-}[`++isOperationReady(id)++`]
  4286. * {xref-TimelockController-isOperationDone-bytes32-}[`++isOperationDone(id)++`]
  4287. * {xref-TimelockController-getTimestamp-bytes32-}[`++getTimestamp(id)++`]
  4288. * {xref-TimelockController-getMinDelay--}[`++getMinDelay()++`]
  4289. * {xref-TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-}[`++hashOperation(target, value, data, predecessor, salt)++`]
  4290. * {xref-TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-}[`++hashOperationBatch(targets, values, payloads, predecessor, salt)++`]
  4291. * {xref-TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-}[`++schedule(target, value, data, predecessor, salt, delay)++`]
  4292. * {xref-TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-}[`++scheduleBatch(targets, values, payloads, predecessor, salt, delay)++`]
  4293. * {xref-TimelockController-cancel-bytes32-}[`++cancel(id)++`]
  4294. * {xref-TimelockController-execute-address-uint256-bytes-bytes32-bytes32-}[`++execute(target, value, data, predecessor, salt)++`]
  4295. * {xref-TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-}[`++executeBatch(targets, values, payloads, predecessor, salt)++`]
  4296. * {xref-TimelockController-updateDelay-uint256-}[`++updateDelay(newDelay)++`]
  4297. * {xref-TimelockController-onERC721Received-address-address-uint256-bytes-}[`++onERC721Received(_, _, _, _)++`]
  4298. * {xref-TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-}[`++onERC1155Received(_, _, _, _, _)++`]
  4299. * {xref-TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-}[`++onERC1155BatchReceived(_, _, _, _, _)++`]
  4300. [.contract-subindex-inherited]
  4301. .IERC1155Receiver
  4302. [.contract-subindex-inherited]
  4303. .IERC721Receiver
  4304. [.contract-subindex-inherited]
  4305. .AccessControl
  4306. * {xref-AccessControl-hasRole-bytes32-address-}[`++hasRole(role, account)++`]
  4307. * {xref-AccessControl-_checkRole-bytes32-}[`++_checkRole(role)++`]
  4308. * {xref-AccessControl-_checkRole-bytes32-address-}[`++_checkRole(role, account)++`]
  4309. * {xref-AccessControl-getRoleAdmin-bytes32-}[`++getRoleAdmin(role)++`]
  4310. * {xref-AccessControl-grantRole-bytes32-address-}[`++grantRole(role, account)++`]
  4311. * {xref-AccessControl-revokeRole-bytes32-address-}[`++revokeRole(role, account)++`]
  4312. * {xref-AccessControl-renounceRole-bytes32-address-}[`++renounceRole(role, account)++`]
  4313. * {xref-AccessControl-_setupRole-bytes32-address-}[`++_setupRole(role, account)++`]
  4314. * {xref-AccessControl-_setRoleAdmin-bytes32-bytes32-}[`++_setRoleAdmin(role, adminRole)++`]
  4315. * {xref-AccessControl-_grantRole-bytes32-address-}[`++_grantRole(role, account)++`]
  4316. * {xref-AccessControl-_revokeRole-bytes32-address-}[`++_revokeRole(role, account)++`]
  4317. [.contract-subindex-inherited]
  4318. .ERC165
  4319. [.contract-subindex-inherited]
  4320. .IERC165
  4321. [.contract-subindex-inherited]
  4322. .IAccessControl
  4323. --
  4324. [.contract-index]
  4325. .Events
  4326. --
  4327. * {xref-TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-}[`++CallScheduled(id, index, target, value, data, predecessor, delay)++`]
  4328. * {xref-TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-}[`++CallExecuted(id, index, target, value, data)++`]
  4329. * {xref-TimelockController-Cancelled-bytes32-}[`++Cancelled(id)++`]
  4330. * {xref-TimelockController-MinDelayChange-uint256-uint256-}[`++MinDelayChange(oldDuration, newDuration)++`]
  4331. [.contract-subindex-inherited]
  4332. .IERC1155Receiver
  4333. [.contract-subindex-inherited]
  4334. .IERC721Receiver
  4335. [.contract-subindex-inherited]
  4336. .AccessControl
  4337. [.contract-subindex-inherited]
  4338. .ERC165
  4339. [.contract-subindex-inherited]
  4340. .IERC165
  4341. [.contract-subindex-inherited]
  4342. .IAccessControl
  4343. * {xref-IAccessControl-RoleAdminChanged-bytes32-bytes32-bytes32-}[`++RoleAdminChanged(role, previousAdminRole, newAdminRole)++`]
  4344. * {xref-IAccessControl-RoleGranted-bytes32-address-address-}[`++RoleGranted(role, account, sender)++`]
  4345. * {xref-IAccessControl-RoleRevoked-bytes32-address-address-}[`++RoleRevoked(role, account, sender)++`]
  4346. [.contract-subindex-inherited]
  4347. .Context
  4348. --
  4349. [.contract-item]
  4350. [[TimelockController-onlyRoleOrOpenRole-bytes32-]]
  4351. ==== `[.contract-item-name]#++onlyRoleOrOpenRole++#++(bytes32 role)++` [.item-kind]#modifier#
  4352. Modifier to make a function callable only by a certain role. In
  4353. addition to checking the sender's role, `address(0)` 's role is also
  4354. considered. Granting a role to `address(0)` is equivalent to enabling
  4355. this role for everyone.
  4356. [.contract-item]
  4357. [[TimelockController-constructor-uint256-address---address---]]
  4358. ==== `[.contract-item-name]#++constructor++#++(uint256 minDelay, address[] proposers, address[] executors)++` [.item-kind]#public#
  4359. Initializes the contract with a given `minDelay`, and a list of
  4360. initial proposers and executors. The proposers receive both the
  4361. proposer and the canceller role (for backward compatibility). The
  4362. executors receive the executor role.
  4363. NOTE: At construction, both the deployer and the timelock itself are
  4364. administrators. This helps further configuration of the timelock by the
  4365. deployer. After configuration is done, it is recommended that the
  4366. deployer renounces its admin position and relies on timelocked
  4367. operations to perform future maintenance.
  4368. [.contract-item]
  4369. [[TimelockController-receive--]]
  4370. ==== `[.contract-item-name]#++receive++#++()++` [.item-kind]#external#
  4371. Contract might receive/hold ETH as part of the maintenance process.
  4372. [.contract-item]
  4373. [[TimelockController-supportsInterface-bytes4-]]
  4374. ==== `[.contract-item-name]#++supportsInterface++#++(bytes4 interfaceId) → bool++` [.item-kind]#public#
  4375. See {IERC165-supportsInterface}.
  4376. [.contract-item]
  4377. [[TimelockController-isOperation-bytes32-]]
  4378. ==== `[.contract-item-name]#++isOperation++#++(bytes32 id) → bool pending++` [.item-kind]#public#
  4379. Returns whether an id correspond to a registered operation. This
  4380. includes both Pending, Ready and Done operations.
  4381. [.contract-item]
  4382. [[TimelockController-isOperationPending-bytes32-]]
  4383. ==== `[.contract-item-name]#++isOperationPending++#++(bytes32 id) → bool pending++` [.item-kind]#public#
  4384. Returns whether an operation is pending or not.
  4385. [.contract-item]
  4386. [[TimelockController-isOperationReady-bytes32-]]
  4387. ==== `[.contract-item-name]#++isOperationReady++#++(bytes32 id) → bool ready++` [.item-kind]#public#
  4388. Returns whether an operation is ready or not.
  4389. [.contract-item]
  4390. [[TimelockController-isOperationDone-bytes32-]]
  4391. ==== `[.contract-item-name]#++isOperationDone++#++(bytes32 id) → bool done++` [.item-kind]#public#
  4392. Returns whether an operation is done or not.
  4393. [.contract-item]
  4394. [[TimelockController-getTimestamp-bytes32-]]
  4395. ==== `[.contract-item-name]#++getTimestamp++#++(bytes32 id) → uint256 timestamp++` [.item-kind]#public#
  4396. Returns the timestamp at with an operation becomes ready (0 for
  4397. unset operations, 1 for done operations).
  4398. [.contract-item]
  4399. [[TimelockController-getMinDelay--]]
  4400. ==== `[.contract-item-name]#++getMinDelay++#++() → uint256 duration++` [.item-kind]#public#
  4401. Returns the minimum delay for an operation to become valid.
  4402. This value can be changed by executing an operation that calls `updateDelay`.
  4403. [.contract-item]
  4404. [[TimelockController-hashOperation-address-uint256-bytes-bytes32-bytes32-]]
  4405. ==== `[.contract-item-name]#++hashOperation++#++(address target, uint256 value, bytes data, bytes32 predecessor, bytes32 salt) → bytes32 hash++` [.item-kind]#public#
  4406. Returns the identifier of an operation containing a single
  4407. transaction.
  4408. [.contract-item]
  4409. [[TimelockController-hashOperationBatch-address---uint256---bytes---bytes32-bytes32-]]
  4410. ==== `[.contract-item-name]#++hashOperationBatch++#++(address[] targets, uint256[] values, bytes[] payloads, bytes32 predecessor, bytes32 salt) → bytes32 hash++` [.item-kind]#public#
  4411. Returns the identifier of an operation containing a batch of
  4412. transactions.
  4413. [.contract-item]
  4414. [[TimelockController-schedule-address-uint256-bytes-bytes32-bytes32-uint256-]]
  4415. ==== `[.contract-item-name]#++schedule++#++(address target, uint256 value, bytes data, bytes32 predecessor, bytes32 salt, uint256 delay)++` [.item-kind]#public#
  4416. Schedule an operation containing a single transaction.
  4417. Emits a {CallScheduled} event.
  4418. Requirements:
  4419. - the caller must have the 'proposer' role.
  4420. [.contract-item]
  4421. [[TimelockController-scheduleBatch-address---uint256---bytes---bytes32-bytes32-uint256-]]
  4422. ==== `[.contract-item-name]#++scheduleBatch++#++(address[] targets, uint256[] values, bytes[] payloads, bytes32 predecessor, bytes32 salt, uint256 delay)++` [.item-kind]#public#
  4423. Schedule an operation containing a batch of transactions.
  4424. Emits one {CallScheduled} event per transaction in the batch.
  4425. Requirements:
  4426. - the caller must have the 'proposer' role.
  4427. [.contract-item]
  4428. [[TimelockController-cancel-bytes32-]]
  4429. ==== `[.contract-item-name]#++cancel++#++(bytes32 id)++` [.item-kind]#public#
  4430. Cancel an operation.
  4431. Requirements:
  4432. - the caller must have the 'canceller' role.
  4433. [.contract-item]
  4434. [[TimelockController-execute-address-uint256-bytes-bytes32-bytes32-]]
  4435. ==== `[.contract-item-name]#++execute++#++(address target, uint256 value, bytes data, bytes32 predecessor, bytes32 salt)++` [.item-kind]#public#
  4436. Execute an (ready) operation containing a single transaction.
  4437. Emits a {CallExecuted} event.
  4438. Requirements:
  4439. - the caller must have the 'executor' role.
  4440. [.contract-item]
  4441. [[TimelockController-executeBatch-address---uint256---bytes---bytes32-bytes32-]]
  4442. ==== `[.contract-item-name]#++executeBatch++#++(address[] targets, uint256[] values, bytes[] payloads, bytes32 predecessor, bytes32 salt)++` [.item-kind]#public#
  4443. Execute an (ready) operation containing a batch of transactions.
  4444. Emits one {CallExecuted} event per transaction in the batch.
  4445. Requirements:
  4446. - the caller must have the 'executor' role.
  4447. [.contract-item]
  4448. [[TimelockController-updateDelay-uint256-]]
  4449. ==== `[.contract-item-name]#++updateDelay++#++(uint256 newDelay)++` [.item-kind]#external#
  4450. Changes the minimum timelock duration for future operations.
  4451. Emits a {MinDelayChange} event.
  4452. Requirements:
  4453. - the caller must be the timelock itself. This can only be achieved by scheduling and later executing
  4454. an operation where the timelock is the target and the data is the ABI-encoded call to this function.
  4455. [.contract-item]
  4456. [[TimelockController-onERC721Received-address-address-uint256-bytes-]]
  4457. ==== `[.contract-item-name]#++onERC721Received++#++(address, address, uint256, bytes) → bytes4++` [.item-kind]#public#
  4458. See {IERC721Receiver-onERC721Received}.
  4459. [.contract-item]
  4460. [[TimelockController-onERC1155Received-address-address-uint256-uint256-bytes-]]
  4461. ==== `[.contract-item-name]#++onERC1155Received++#++(address, address, uint256, uint256, bytes) → bytes4++` [.item-kind]#public#
  4462. See {IERC1155Receiver-onERC1155Received}.
  4463. [.contract-item]
  4464. [[TimelockController-onERC1155BatchReceived-address-address-uint256---uint256---bytes-]]
  4465. ==== `[.contract-item-name]#++onERC1155BatchReceived++#++(address, address, uint256[], uint256[], bytes) → bytes4++` [.item-kind]#public#
  4466. See {IERC1155Receiver-onERC1155BatchReceived}.
  4467. [.contract-item]
  4468. [[TimelockController-CallScheduled-bytes32-uint256-address-uint256-bytes-bytes32-uint256-]]
  4469. ==== `[.contract-item-name]#++CallScheduled++#++(bytes32 id, uint256 index, address target, uint256 value, bytes data, bytes32 predecessor, uint256 delay)++` [.item-kind]#event#
  4470. Emitted when a call is scheduled as part of operation `id`.
  4471. [.contract-item]
  4472. [[TimelockController-CallExecuted-bytes32-uint256-address-uint256-bytes-]]
  4473. ==== `[.contract-item-name]#++CallExecuted++#++(bytes32 id, uint256 index, address target, uint256 value, bytes data)++` [.item-kind]#event#
  4474. Emitted when a call is performed as part of operation `id`.
  4475. [.contract-item]
  4476. [[TimelockController-Cancelled-bytes32-]]
  4477. ==== `[.contract-item-name]#++Cancelled++#++(bytes32 id)++` [.item-kind]#event#
  4478. Emitted when operation `id` is cancelled.
  4479. [.contract-item]
  4480. [[TimelockController-MinDelayChange-uint256-uint256-]]
  4481. ==== `[.contract-item-name]#++MinDelayChange++#++(uint256 oldDuration, uint256 newDuration)++` [.item-kind]#event#
  4482. Emitted when the minimum delay for future operations is modified.
  4483. [[timelock-terminology]]
  4484. ==== Terminology
  4485. * *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.
  4486. * *Operation status:*
  4487. ** *Unset:* An operation that is not part of the timelock mechanism.
  4488. ** *Pending:* An operation that has been scheduled, before the timer expires.
  4489. ** *Ready:* An operation that has been scheduled, after the timer expires.
  4490. ** *Done:* An operation that has been executed.
  4491. * *Predecessor*: An (optional) dependency between operations. An operation can depend on another operation (its predecessor), forcing the execution order of these two operations.
  4492. * *Role*:
  4493. ** *Admin:* An address (smart contract or EOA) that is in charge of granting the roles of Proposer and Executor.
  4494. ** *Proposer:* An address (smart contract or EOA) that is in charge of scheduling (and cancelling) operations.
  4495. ** *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.
  4496. [[timelock-operation]]
  4497. ==== Operation structure
  4498. 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.
  4499. Both operations contain:
  4500. * *Target*, the address of the smart contract that the timelock should operate on.
  4501. * *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.
  4502. * *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:
  4503. ```javascript
  4504. const data = timelock.contract.methods.grantRole(ROLE, ACCOUNT).encodeABI()
  4505. ```
  4506. * *Predecessor*, that specifies a dependency between operations. This dependency is optional. Use `bytes32(0)` if the operation does not have any dependency.
  4507. * *Salt*, used to disambiguate two otherwise identical operations. This can be any random value.
  4508. In the case of batched operations, `target`, `value` and `data` are specified as arrays, which must be of the same length.
  4509. [[timelock-operation-lifecycle]]
  4510. ==== Operation lifecycle
  4511. Timelocked operations are identified by a unique id (their hash) and follow a specific lifecycle:
  4512. `Unset` -> `Pending` -> `Pending` + `Ready` -> `Done`
  4513. * 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.
  4514. * Once the timer expires, the operation automatically gets the `Ready` state. At this point, it can be executed.
  4515. * 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.
  4516. * 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.
  4517. Operations status can be queried using the functions:
  4518. * xref:api:governance.adoc#TimelockController-isOperationPending-bytes32-[`isOperationPending(bytes32)`]
  4519. * xref:api:governance.adoc#TimelockController-isOperationReady-bytes32-[`isOperationReady(bytes32)`]
  4520. * xref:api:governance.adoc#TimelockController-isOperationDone-bytes32-[`isOperationDone(bytes32)`]
  4521. [[timelock-roles]]
  4522. ==== Roles
  4523. [[timelock-admin]]
  4524. ===== Admin
  4525. 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.
  4526. This role is identified by the *TIMELOCK_ADMIN_ROLE* value: `0x5f58e3a2316349923ce3780f8d587db2d72378aed66a8261c916544fa6846ca5`
  4527. [[timelock-proposer]]
  4528. ===== Proposer
  4529. 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.
  4530. 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.
  4531. This role is identified by the *PROPOSER_ROLE* value: `0xb09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1`
  4532. [[timelock-executor]]
  4533. ===== Executor
  4534. 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.
  4535. This role is identified by the *EXECUTOR_ROLE* value: `0xd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63`
  4536. 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.