Errors

Git Source

Author: Daniel Yamagata & Jerry Qi & Naveen Ailawadi

A library for all errors that can be thrown in the Mezzanine Protocol. All errors in Mezzanine follow the following syntax:

error ContractNameErrorName(arg1, arg2, ...)

where ContractName is the name of the contract that the error originates, and ErrorName is the name of the error. The arguments are optional and are used to provide additional context to the error.

This part of the documentation is not meant to be read. It is meant to act as a resource for developers who may have a difficult time tracing errors when building on top of the Mezzanine protocol. The Ctrl-F command should be used to locate the error name or selector that is causing a reversion.

Errors

AlreadySet

The state variable to set is already set to the given value or part of a given set or mapping

Selector: 0xa741a045

error AlreadySet();

NotSet

The state variable to remove is not set or is not part of a given set or mapping

Selector: 0x441dfbd6

error NotSet();

SelfAddress

The provided address is the address of the contract

Selector: 0x2007aa4c

error SelfAddress();

ZeroAddress

The passed-in address is the zero address, i.e. address(0)

Selector: 0xd92e233d

error ZeroAddress();

ZeroAmount

The passed-in amount is zero

Selector: 0x1f2a2005

error ZeroAmount();

NullCoreId

The passed-in core ID is the null, i.e. bytes32(0)

Selector: 0x256d6403

error NullCoreId();

EmptyArray

The passed-in array is empty

Selector: 0x521299a9

error EmptyArray();

InvalidSignature

An invalid signature was provided for 'account'

Selector: 0xd855c4f4

error InvalidSignature(address account);

InputLengthMismatch

Multiple arrays are passed in but not of the same length

Selector: 0xaaad13f7

error InputLengthMismatch();

CallerNotAuthorizedToPatch

The 'caller' is not authorized to patch via 'resetToPatchedLatestVersion()' in a contract that inherits from 'Patchable'

Selector: 0x15d92cf7

error CallerNotAuthorizedToPatch(address caller);

TreasuryMismatch

The 'expectedTreasury' does not match the 'providedTreasury'. Thrown when inserting a department as a child and adding an asset into the capital stack

Selector: 0x4c4808fc

error TreasuryMismatch(address expectedTreasury, address providedTreasury);

InvalidShares

The passed-in 'shares' to use for the token timelock, priced round, shareclass governor, etc. is not tracked by the treasury

Selector: 0xc645bc49

error InvalidShares(address shares);

ProvidedTreasuryDoesNotSupportTreasuryInterface

The 'treasury' passed in during initialization does not support the treasury interface

Selector: 0xd7cb9b7a

error ProvidedTreasuryDoesNotSupportTreasuryInterface(address treasury);

SafeModulesDisabled

Safe modules are disabled. This error is thrown when:

  1. A call is made to 'execTransactionFromModule()' of a Team, which inherits from Safe

  2. A call is made to 'checkModuleTransaction()' in a Mezz Guard

Selector: 0x3965d7af

error SafeModulesDisabled();

InvalidDenominationAsset

The passed-in denomination asset is not whitelisted within the Mezz Hub

Selector: 0x6b044bae

error InvalidDenominationAsset(address denominationAsset);

TransactionFailed

An arbitrary call to an address failed. Thrown when:

  • A Safe, which Team inherits, calls 'checkAfterExecution()' during 'execTransaction()'

  • The 'execTransaction()' during a Team's 'execMultipleTransactions()' failed

Selector: 0xbf961a28

error TransactionFailed();

CannotReceiveNativeToken

The contract is unable to receive the blockchain's native token

Selector: 0xa02752ed

error CannotReceiveNativeToken();

PrecisionLoss

Arithmetic produced a value of zero when it should have been greater than zero Precision loss in the protocol is almost always dependent on time-based calculations with extremely small values. Functions that cause this error are likely to function correctly once enough time has passed

Selector: 0x63c8f3fb

error PrecisionLoss();

MaliciousUpgradeCalldata

The calldata used to call 'upgradeToAndCall()' is another call to 'upgradeToAndCall()', which is likely to be malicious

Selector: 0x03c16f1f

error MaliciousUpgradeCalldata();

HubOwnableCallerNotHubOwner

The 'caller' is not the 'owner' of the Mezz Hub

Selector: 0x206e1fcc

error HubOwnableCallerNotHubOwner(address caller);

DelayedUUPSUpgradeableERC1967InvalidImplementation

The proposed upgrade has a code length of zero

Selector: 0x4c719dc1

error DelayedUUPSUpgradeableERC1967InvalidImplementation(address newImplementation);

DelayedUUPSUpgradeableNewImplementationIsCurrentImplementation

The proposed upgrade is the same as the current implementation

Selector: 0x972744aa

error DelayedUUPSUpgradeableNewImplementationIsCurrentImplementation();

DelayedUUPSUpgradeablePendingUpgradeInProgress

An upgrade was proposed. However, there is already an upgrade pending. The current pending upgrade must be canceled for a new upgrade to be proposed Selector:

0xcee95171

error DelayedUUPSUpgradeablePendingUpgradeInProgress(address pendingUpgrade);

DelayedUUPSUpgradeableNoUpgradeProposed

'upgradeToAndCall()' was called. However, there is no pending upgrade

Selector: 0x5ba5b862

error DelayedUUPSUpgradeableNoUpgradeProposed();

DelayedUUPSUpgradeableImplementationNotProposed

An attempt at an upgrade to 'newImplementation' was made. However, 'newImplementation' was not proposed

Selector: 0xb3f596ce

error DelayedUUPSUpgradeableImplementationNotProposed(address newImplementation);

DelayedUUPSUpgradeableUpgradeNotReady

An attempt at an upgrade occurred. However, the 'pendingUpgradeSnapshot' has not passed yet

Selector: 0x923c0d33

error DelayedUUPSUpgradeableUpgradeNotReady(uint256 pendingUpgradeSnapshot);

DelayedUUPSUpgradeableNoPendingUpgradeToCancel

An attempt to cancel the pending upgrade occurred. However, there is no upgrade pending

Selector: 0x642d5ec5

error DelayedUUPSUpgradeableNoPendingUpgradeToCancel();

MezzHubCallerNotOwnerOrDefender

The caller attempted to call a function that is only callable by the 'owner' or a 'defender'

Selector: 0xffa1c3e7

error MezzHubCallerNotOwnerOrDefender(address caller);

MezzHubOwnershipTransferAlreadyPending

An ownership transfer cannot be initiated because there is already an ownership transfer pending

Selector: 0xf9cd2b72

error MezzHubOwnershipTransferAlreadyPending();

MezzHubOwnershipTransferNotReady

An attempt to accept an ownership transfer was made. However, the owner transfership is not ready

Selector: 0x567b3c3d

error MezzHubOwnershipTransferNotReady(uint256 transferSnapshot);

MezzHubNoPendingOwnershipTransferToCancel

An attemp to cancel an ownership transfer that is non-existent

Selector: 0x8b4f3e71

error MezzHubNoPendingOwnershipTransferToCancel();

MezzHubOwnershipRenouncementDisabled

Attempt to renounce ownership by the 'owner'. This is disabled to prevent griefing by a compromised 'owner'

Selector: 0xecb099ff

error MezzHubOwnershipRenouncementDisabled();

MezzHubInvalidFreezeDuration

The passed in 'freezeDuration' is invalid, meaning it is either zero or greater than Constants.MAX_FREEZE_DURATION

Selector: 0x5f7a0e96

error MezzHubInvalidFreezeDuration(uint256 freezeDuration);

MezzHubDocumentRegistryNotSet

Attempt to query the Document Registry when it has not been set

Selector: 0xe110a858

error MezzHubDocumentRegistryNotSet();

MezzHubFeeControllerNotSet

Attempt to query the Fee Controller when it has not been set

Selector: 0x495b7e87

error MezzHubFeeControllerNotSet();

MezzHubMezzDeployerNotSet

Attempt to query the Mezz Deployer when it has not been set

Selector: 0x90e07ad0

error MezzHubMezzDeployerNotSet();

StateAwareProtocolStateFrozen

The protocol state is frozen in the Mezz Hub

Selector: 0x893c4631

error StateAwareProtocolStateFrozen();

StateAwareProtocolStatePausedOrFrozen

The protocol state is paused or frozen in the Mezz Hub. The value of 'state' is reflected by the following enum:

  • 0 = Active

  • 1 = Paused

  • 2 = Frozen

Selector: 0x8619d7e0

error StateAwareProtocolStatePausedOrFrozen(uint8 state);

StateAwareImplementationFrozen

The 'implementation' is frozen in the Mezz Hub

Selector: 0x9aa84a98

error StateAwareImplementationFrozen(address implementation);

StateAwareDeploymentFrozen

The 'deployment' is frozen in the Mezz Hub

Selector: 0x4bfafc15

error StateAwareDeploymentFrozen(address deployment);

HubOwnableUUPSUpgradeableCallerNotAuthorizedToCancelUpgrade

The caller attempted to cancel an upgrade and is not the owner of the Mezz Hub nor a defender

Selector: 0x16e79c7b

error HubOwnableUUPSUpgradeableCallerNotAuthorizedToCancelUpgrade(address caller);

MezzDeployerInvalidCompanyNameLength

The passed in company name has a length of zero or is greater than the max length

Selector: 0x60a7a170

error MezzDeployerInvalidCompanyNameLength(uint256 length);

MezzDeployerInvalidCompanySymbolLength

The passed in company symbol has a length of zero or is greater than the max length

Selector: 0x56ec764b

error MezzDeployerInvalidCompanySymbolLength(uint256 length);

MezzDeployerImplementationNotMezzGuard

The queried 'implementation' associated with 'coreId' does not support the mezz guard interface

Selector: 0x0b46223a

error MezzDeployerImplementationNotMezzGuard(bytes32 coreId, address implementation);

MezzDeployerImplementationNotDepartment

The queried 'implementation' associated with 'coreId' does not support the department interface

Selector: 0x6b02f768

error MezzDeployerImplementationNotDepartment(bytes32 coreId, address implementation);

MezzDeployerImplementationNotModule

The queried 'implementation' associated with 'coreId' does not support the module interface

Selector: 0xb1a808c0

error MezzDeployerImplementationNotModule(bytes32 coreId, address implementation);

MezzDeployerImplementationNotAsset

The queried 'implementation' associated with 'coreId' does not support the asset interface

Selector: 0xa93515ef

error MezzDeployerImplementationNotAsset(bytes32 coreId, address implementation);

MezzDeployerThresholdExceedsNumberOfOwners

The initial threshold to set is greater than the number of owners. 'owners' refer to a Safe's signers

Selector: 0xa93515ef

error MezzDeployerThresholdExceedsNumberOfOwners();

MezzDeployerCompanyNameTaken

The company name is already taken

Selector: 0x4a16a7b5

error MezzDeployerCompanyNameTaken(string companyName);

MezzDeployerCompanySymbolTaken

The company symbol is already taken

Selector: 0x88adf994

error MezzDeployerCompanySymbolTaken(string companySymbol);

MezzDeployerInvalidGovernorCoreId

The provided 'coreId' for a governor is invalid

Selector: 0x8e810482

error MezzDeployerInvalidGovernorCoreId(bytes32 coreId);

MezzDeployerInvalidCharacter

A company's name or symbol contains 'char', which is an invalid character

Selector: 0xf8f3b4e6

error MezzDeployerInvalidCharacter(bytes1 char);

DocumentRegistryDocumentDoesNotExist

The document associated with 'documentIndex' for 'owner' does not exist

Selector: 0xe1f5423e

error DocumentRegistryDocumentDoesNotExist(address owner, uint256 documentIndex);

FeeControllerNewImplementationFeeAboveMaxFee

The 'implementationFee' to set is above the maximum

Selector: 0x689f650e

error FeeControllerNewImplementationFeeAboveMaxFee(uint256 implementationFee);

BillingRouterInvalidDueDate

The provided 'dueDate' is in the past

Selector: 0xe5acd993

error BillingRouterInvalidDueDate(uint256 dueDate);

BillingRouterInvoiceAlreadyExists

The invoice already exists in the billing router

Selector: 0xb2e02be8

error BillingRouterInvoiceAlreadyExists(bytes32 invoiceId);

BillingRouterCannotCancelPaidInvoice

The 'vendor' attempted to cancel an invoice that has already been paid

Selector: 0x5fa6f33b

error BillingRouterCannotCancelPaidInvoice(bytes32 invoiceId);

BillingRouterCallerNotVendor

The 'caller' of the function is not the vendor

Selector: 0x975582f5

error BillingRouterCallerNotVendor(address caller);

BillingRouterInvoiceDoesNotExist

There is no existing invoice associated with 'invoiceId'

Selector: 0x588a04d6

error BillingRouterInvoiceDoesNotExist(bytes32 invoiceId);

MezzMigratorRedundantCoreIdProvidedDuringV1SetUp

A redundant 'coreId' was provided during the Mezz Migrator initialization

Selector: 0xc975fc2a

error MezzMigratorRedundantCoreIdProvidedDuringV1SetUp(bytes32 coreId);

MezzMigratorImplementationDoesNotSupportCredentialedInterface

The 'implementation' does not support the 'ICredentialed' interface

Selector: 0x7862e552

error MezzMigratorImplementationDoesNotSupportCredentialedInterface(address implementation);

MezzMigratorImplementationCoreIdMismatch

The 'implementationCoreId' does not match the passed-in 'coreId'. Thrown when setting a new core version, resetting the latest core version, or during the Mezz Migrator initialization

Selector: 0x54144ed4

error MezzMigratorImplementationCoreIdMismatch(bytes32 coreId, bytes32 implementationCoreId);

MezzMigratorInvalidVersion

The provided 'version' is either zero or greater than the latest version

Selector: 0xad0fc8ec

error MezzMigratorInvalidVersion(uint256 version);

MezzMigratorCallerAlreadyProposedVersion

The caller's version is greater than or equal to the new version that they are trying to upgrade to

Selector: 0xa1eb9229

error MezzMigratorCallerAlreadyProposedVersion();

MezzMigratorVersionMismatch

The provided implementation's version is not equal to the passed in version

Selector: 0x3160ebdc

error MezzMigratorVersionMismatch(uint256 expectedVersion, uint256 implementationVersion);

MezzMigratorCannotResetWhileImplementationActive

The caller cannot reset to the latest patched version while 'implementation' is active, meaning the protocol state is 'Active' and the implementation is not frozen

Selector: 0x43ee0da5

error MezzMigratorCannotResetWhileImplementationActive(address implementation);

MezzMigratorLatestVersionZero

The latest version is zero when trying to patch a given implementation

Selector: 0x87a8f6c6

error MezzMigratorLatestVersionZero();

MezzMigratorImplementationNotSet

The caller attempted to query an implementation or version for a 'coreId' whose implementation has not been set

Selector: 0xfdf8145a

error MezzMigratorImplementationNotSet(bytes32 coreId);

VestingDurationZero

The passed-in vesting duration is zero

Selector: 0x0dd7221d

error VestingDurationZero();

VestingInvalidInitialUnlockPercentage

The 'initialUnlockPercentage' is greater than Constants.PRECISION_FACTOR, which represents 100%

Selector: 0x3bf7bcf6

error VestingInvalidInitialUnlockPercentage(uint256 initialUnlockPercentage);

VestingCliffGreaterThanDuration

The passed-in vesting 'cliff' is greater than 'duration'

Selector: 0x1c5412a1

error VestingCliffGreaterThanDuration(uint256 duration, uint256 cliff);

VestingInitialUnlockGreaterThanVestingAmount

The nominal 'initialUnlock' is greater than the 'vestingAmount'

Selector: 0xeb373431

error VestingInitialUnlockGreaterThanVestingAmount(uint256 vestingAmount, uint256 initialUnlock);

VestingDifferenceBetweenAmountAndUnlockInsufficcient

The difference between the vesting amount and the initial unlock amount msut be greater than 1e10 to prevent potential reversion due to precision loss

Selector: 0x4f08e754

error VestingDifferenceBetweenAmountAndUnlockInsufficcient(uint256 vestingAmount, uint256 initialUnlock);

VestingStartDateTooFarInFuture

The 'startDate' for the vesting is too far in the future as determined by Constants.MAX_VESTING_START_DATE

Selector: 0x03161d8a

error VestingStartDateTooFarInFuture(uint256 startDate);

VestingDurationIncreaseOverflow

The sum of the proposed 'durationExtension' and 'currentDuration' exceeds type(uint32).max

Selector: 0x8d3d6a4c

error VestingDurationIncreaseOverflow(uint256 currentDuration, uint256 durationExtension);

MezzUUPSUpgradeableCallerUnauthorizedUpgrader

The 'caller' attempted to upgrade a proxy of a 'core' implementation to a new implementation. However, the 'caller' is not the Mezz Migrator

Selector: 0x81607921

error MezzUUPSUpgradeableCallerUnauthorizedUpgrader(address caller);

TeamControlledTeamDoesNotSupportTeamInterface

The 'team' passed in during the team-controlled contract's initialization does not support the Team Interface

Selector: 0x2d20894c

error TeamControlledTeamDoesNotSupportTeamInterface(address team);

TeamControlledCallerNotTeam

The caller is not the 'team', which acts as the admin of the contract

Selector: 0x771ddc97

error TeamControlledCallerNotTeam(address caller);

BoardControlledCallerNotBoard

The 'caller' is not the Treasury, whose signers are the board of directors

Selector: 0xc052d844

error BoardControlledCallerNotBoard(address caller);

BoardControlledCallerNotGovernance

The 'caller' is not the Treasury's governor

Selector: 0xbfc0ce9d

error BoardControlledCallerNotGovernance(address caller);

AdminControlledCallerNotAdminOrBoard

The 'caller' is not an admin or the Treasury, whose signers are the board of directors

Selector: 0xa1ac51e3

error AdminControlledCallerNotAdminOrBoard(address caller);

TeamChildToInsertParentMismatch

The parent of the 'childToInsert' does not match the address of the 'team' that it is being inserted into

Selector: 0xe07ff662

error TeamChildToInsertParentMismatch(address childToInsert, address parentOfChild);

TeamChildToInsertDoesNotSupportDepartmentOrModuleInterface

The 'childToInsert' does not support the Department or Module interface. Checked via ERC165 supportsInterface()

Selector: 0x0a0f12cf

error TeamChildToInsertDoesNotSupportDepartmentOrModuleInterface(address childToInsert);

TeamChildToInsertEquityFinancingModule

The child to insert is an Equity Financing Module. Checked by querying the 'coreId' of the child

Selector: 0x9eed88ed

error TeamChildToInsertEquityFinancingModule();

TeamOwnerManagementInvalidSelector

error TeamOwnerManagementInvalidSelector(bytes4 action);

TeamInvalidExecTransactionInMultiCall

The 'functionSelector' provided in the multicall does not refert to execTransaction() but another function

Selector: 0x3d8cb1c1

error TeamInvalidExecTransactionInMultiCall(bytes4 functionSelector);

TeamCallerNotChildOrThis

The caller is not a 'child' of the team or the team, itself

Selector: 0xf04214db

error TeamCallerNotChildOrThis(address caller);

TeamCallerNotChild

The 'caller' is not a 'child' of the team

Selector: 0x1644c4f0

error TeamCallerNotChild(address caller);

NotSolvent

The function within the team is only callable while solvent

Selector: 0xe081c8f3

error NotSolvent();

NotLiquidating

The function within the team is only callable while liquidating

Selector: 0xa97f9f86

error NotLiquidating();

MezzERC721CallerNotTokenOwner

The 'caller' is not the owner of 'tokenId'

Selector: 0x81021dbf

error MezzERC721CallerNotTokenOwner(uint256 tokenId, address caller);

VotesDelegatorCallerNotDelegateRegistry

The 'caller' is not the delegate registry

Selector: 0x48454317

error VotesDelegatorCallerNotDelegateRegistry(address caller);

AncestorLogicCallerNotAncestor

The 'caller' is not an ancestor of the 'team'

Selector: 0x3fb3c6b8

error AncestorLogicCallerNotAncestor(address caller, address team);

AncestorLogicCallerNotAncestorOrAuthorized

The 'caller' is not the 'team', itself, or an ancestor of the 'team'

Selector: 0x7ceae545

error AncestorLogicCallerNotAncestorOrAuthorized(address caller, address team);

SafeTxValdiationOwnerManagementDisabled

The following errors are thrown when a team attempts to modify its:

  • Owners

  • Threshold

  • Guard

  • Modules Changing these aspects of a team must follow strict logic set in the team, itself. This logic is bespoke and up to the implementation of the team to determine. A team attempted to add, remove, or swap one of its owners, i.e. signers. The 'selector' is the function selector which corresponds to adding, removing, or swapping an owner in a Safe

Selector: 0x7d3024de

error SafeTxValdiationOwnerManagementDisabled(bytes4 selector);

SafeTxValdiationThresholdManagementDisabled

A team attempted to change is threshold

Selector: 0xcdf5a018

error SafeTxValdiationThresholdManagementDisabled();

SafeTxValidationGuardManagementDisabled

A team attempted to change its guard

Selector: 0xd099c4aa

error SafeTxValidationGuardManagementDisabled();

SafeTxValidationModuleManagementDisabled

A team attempted to enable a Safe module

Selector: 0x7c52a6bc

error SafeTxValidationModuleManagementDisabled();

DepartmentChildToInsertIsAncestor

The 'childToInsert' is an ancestor of the department

Selector: 0x7f6155bf

error DepartmentChildToInsertIsAncestor(address childToInsert);

GeneralDepartmentInvalidName

The provided department name is longer than 32 characters or null

Selector: 0x19c72ab3

error GeneralDepartmentInvalidName();

MezzGuardCallerNotController

The 'caller' is not the controller of the Mezz Guard

Selector: 0x31f36af0

error MezzGuardCallerNotController(address caller);

MezzGuardDelegateCallDisabled

Delegate calls are disabled for all teams

Selector: 0x6021a295

error MezzGuardDelegateCallDisabled();

BlacklistGuardBlacklistedOperation

The team who uses the blacklist guard attempted to execute a blacklisted operation

Selector: 0x737c920a

error BlacklistGuardBlacklistedOperation(address to, bytes4 selector);

WhitelistGuardNonWhitelistedOperation

The team who uses whitelist guard attempted to execute a non-whitelisted operation

Selector: 0xc278988a

error WhitelistGuardNonWhitelistedOperation(address to, bytes4 selector);

TreasuryCallerNotGovernance

The caller is not the governor of the Treasury

Selector: 0x016045e1

error TreasuryCallerNotGovernance(address caller);

TreasuryAddingAssetReentrancy

'addAssetToCapitalStack' was reentered

Selector: 0xdcfc03c8

error TreasuryAddingAssetReentrancy();

TreasuryCannotAddCommonShares

An attempt was made to add Common Shares. However, a company can only have a single class of common shares

Selector: 0xfe009a20

error TreasuryCannotAddCommonShares();

TreasuryMaxShareClassesReached

The addition of a new share class would exceed the maximum number of shares classes

Selector: 0x9eae310b

error TreasuryMaxShareClassesReached();

TreasuryProposedGovernorChangeInvalid

The Treasury's current governor is the same type as the proposed change. If this attempt was done to upgrade to a new version, upgrades should be completed via the Mezz Migrator

Selector: 0x83e563bb

error TreasuryProposedGovernorChangeInvalid();

TreasuryCallerNotPayrollManager

The caller is not the Payroll Manager

Selector: 0x027fafad

error TreasuryCallerNotPayrollManager(address caller);

TreasuryCannotRemoveEquityFinancingModule

The Treasury is unable to remove the Equity Financing Module

Selector: 0xe3ca07a5

error TreasuryCannotRemoveEquityFinancingModule();

TreasuryPayrollInvalidAsset

The payroll manager attempted to spend an asset that is not the common shares or the denomination asset

Selector: 0x2b4ae809

error TreasuryPayrollInvalidAsset(address asset);

TreasuryCannotRemoveCommonShares

The board of directors is attempting to remove the common shares from the capital stack

Selector: 0xe64cf198

error TreasuryCannotRemoveCommonShares();

TreasurySharesToRemoveNotRemovable

The 'removable()' of 'sharesToRemove' returned false, meaning the total supply is greater than zero

Selector: 0xe64cf198

error TreasurySharesToRemoveNotRemovable(address sharesToRemove);

MezzSharesInsufficientAuthorizedSharesForIssuance

The 'sharesToIssue' exceeds the number of authorized shares

Selector: 0xc3b42604

error MezzSharesInsufficientAuthorizedSharesForIssuance(uint256 authorizedShares, uint256 sharesToIssue);

MezzSharesInsufficientBalanceForBurn

The 'sharesToBurn' exceeds the 'callerBalance'

Selector: 0x0cddc40a

error MezzSharesInsufficientBalanceForBurn(uint256 callerBalance, uint256 sharesToBurn);

MezzSharesNewAuthorizedSharesExceedsMaxSupply

The authorized shares exceeds _maxSupply, which is overridden to return type(uint192).max

Selector: 0x69352a66

error MezzSharesNewAuthorizedSharesExceedsMaxSupply();

MezzSharesVotingWeightExceedsMax

The 'votingWeight' to initialize the shares exceds the max

Selector: 0x97e67d47

error MezzSharesVotingWeightExceedsMax(uint256 votingWeight);

MezzSharesMisinputDuringIssuance

The duration is non-zero during the issuance of shares but at least one of the other arguments for vesting is non-null

Selector: 0x12e5c2dd

error MezzSharesMisinputDuringIssuance();

MezzSharesDelegateDisabled

The caller attempted to delegate via the Mezz Shares rather than the delegate registry

Selector: 0x61cb0201

error MezzSharesDelegateDisabled();

CommonSharesInvalidInitialAuthorizedShares

The initial authorized shares was below the minimum of 1e18 or above the maximum of 1_000_000_000_000e18

Selector: 0xcc6ffc47

error CommonSharesInvalidInitialAuthorizedShares(uint256 initialAuthorizedShares);

PreferredSharesInvalidLiquidationPreference

The passed-in liquidation preference value to set during the Preferred Shares initialization exceeds the maximum

Selector: 0x97712678

error PreferredSharesInvalidLiquidationPreference(uint256 liquidationPreference, uint256 maxLiquidationPreference);

CapitalStackMaxSeniorityLevelsReached

The maximum number of seniority levels has been reached

Selector: 0x42da71f8

error CapitalStackMaxSeniorityLevelsReached();

CapitalStackMaxAssetsForSeniorityLevelReached

The max number of assets for the seniority level with 'seniorityLevelIndex' has been reached

Selector: 0xbb3513f6

error CapitalStackMaxAssetsForSeniorityLevelReached(uint256 seniorityLevelIndex);

CapitalStackProposedAssetClassIsInvalidForSeniorityLevelInsertion

The proposed 'assetClass' of the seniority level to insert is invalid

Selector: 0x3851e38e

error CapitalStackProposedAssetClassIsInvalidForSeniorityLevelInsertion(uint8 assetClass);

CapitalStackInvalidPreviousSeniorityLevelIndexForInsertion

The 'previousSeniorityLevelIndex' has a null asset class and does not equal zero. This indicates that an an insertion was attempted to be made at a non-existent seniority level

Selector: 0x9a9048a1

error CapitalStackInvalidPreviousSeniorityLevelIndexForInsertion(uint256 previousSeniorityLevelIndex);

CapitalStackPreviousAssetClassIsSeniorToProposedAssetClass

The 'previousSeniorityLevelAssetClass' is senior to the 'proposedAssetClass', violating the rules regarding the ordering of the capital stack

Selector: 0xe9724aee

error CapitalStackPreviousAssetClassIsSeniorToProposedAssetClass(
    uint8 previousSeniorityLevelAssetClass, uint8 proposedAssetClass
);

CapitalStackNextAssetClassIsJuniorToProposedAssetClass

The 'previousNextSeniorityLevelAssetClass', which is the asset class of the next seniority level, is junior to the 'proposedAssetClass', violating the rules regarding the ordering of the capital stack

Selector: 0x120f4a9e

error CapitalStackNextAssetClassIsJuniorToProposedAssetClass(
    uint8 previousNextSeniorityLevelAssetClass, uint8 proposedAssetClass
);

CapitalStackInvalidSeniorityLevel

The seniority level with 'seniorityLevelIndex' does not exist

Selector: 0x20ae3881

error CapitalStackInvalidSeniorityLevel(uint256 seniorityLevelIndex);

CapitalStackCannotRemoveSeniorityLevelWithAssets

The seniority level with 'seniorityLevelIndexToRemove' still has assets in it, making it unremovable

Selector: 0xc6e766ba

error CapitalStackCannotRemoveSeniorityLevelWithAssets(uint256 seniorityLevelIndexToRemove);

CapitalStackAssetToAddAlreadyInStack

The 'assetToAdd' is already in the capital stack

Selector: 0xe928901b

error CapitalStackAssetToAddAlreadyInStack(address assetToAdd);

CapitalStackAssetToInsertDoesNotSupportAssetInterface

The 'assetToAdd' does not support the IAsset interface

Selector: 0xc8026364

error CapitalStackAssetToInsertDoesNotSupportAssetInterface(address assetToAdd);

CapitalStackAssetSeniorityLevelClassMismatch

The asset to add differs in its class from the asset class of the seniority level that it is trying to be inserted into

Selector: 0x131227b0

error CapitalStackAssetSeniorityLevelClassMismatch(uint8 assetClassOfAsset, uint8 assetClassOfSeniorityLevel);

CapitalStackTreasuryAddingAssetHookFalse

The treasury is attempting to add an asset, but the Treasury's 'isAddingAsset' hook returned false

Selector: 0x77cd8e11

error CapitalStackTreasuryAddingAssetHookFalse();

CapitalStackTreasuryRemovingAssetHookFalse

The treasury is attempting to remove an asset, but the Treasury's 'isRemovingAsset' hook returned false

Selector: 0xbf03703f

error CapitalStackTreasuryRemovingAssetHookFalse();

CapitalStackAssetNotInStack

'asset' is not in the capital stack. Thrown when attempting to remove an asset from the capital stack or updating an asset's document

Selector: 0xcb83406f

error CapitalStackAssetNotInStack(address asset);

CapitalStackCannotRemoveCommonShares

The initial common shares of a company cannot be removed

Selector: 0x0bea455e

error CapitalStackCannotRemoveCommonShares();

CapitalStackAssetNotRemovable

The 'removable()' condition built into 'asset' returned false, making it unremovable

Selector: 0x6bdc2b25

error CapitalStackAssetNotRemovable(address asset);

TokenTimelockTokenIsObligatory

An admin or the board of directors attempted to cancel a vesting schedule that is obligatory

Selector: 0xdd6f12e2

error TokenTimelockTokenIsObligatory(uint256 tokenId);

TokenTimelockNoReleaseableAmountForToken

An attempt was made to release an amount of vested tokens when there is no releasable amount

Selector: 0x40e45f70

error TokenTimelockNoReleaseableAmountForToken(uint256 tokenId);

TokenTimelockCallerNotTokenOwnerOrAdmin

The caller is not the owner of the token nor an admin

Selector: 0x805cccbf

error TokenTimelockCallerNotTokenOwnerOrAdmin(address caller);

TokenTimelockInvalidTimepointForCancel

A user tried to cancel vesting with an invalid 'timepoint'. 'timepoint' is after the vesting end date or in the past

Selector: 0xc7fa0aae

error TokenTimelockInvalidTimepointForCancel(uint256 timepoint);

TokenTimelockVotesFutureLookup

The 'timepoint' when trying to query past votes is in the present or future

Selector: 0xfba51db7

error TokenTimelockVotesFutureLookup(uint256 timepoint, uint256 currentTimepoint);

PayrollManagerStartDateInPastOrTooSoon

The 'startDate' when hiring an employee is in the past or too soon

Selector: 0x68f559f6

error PayrollManagerStartDateInPastOrTooSoon(uint256 startDate);

PayrollManagerStartDateTooFarInFuture

The 'startDate' when hiring an employee is too far into the future

Selector: 0x3391a3c8

error PayrollManagerStartDateTooFarInFuture(uint256 startDate);

PayrollManagerInvalidParamsLength

The 'paramsLength' is not equal to the expected length

Selector: 0x3c1e54aa

error PayrollManagerInvalidParamsLength(uint256 paramsLength, uint256 expectedLength);

PayrollManagerNonExistentEquityPayments

'payrollTokenId' does not have a corresponding 'tokenTimelockTokenId' that exists This is either due to the completion of the previous equity vesting or a lack of a vesting schedule

Selector: 0x58169333

error PayrollManagerNonExistentEquityPayments(uint256 payrollTokenId, uint256 tokenTimelockTokenId);

PayrollManagerInvalidResignationEndDate

The 'endDate' provided by the resigning employee is either in the past or too far in the future

Selector: 0xe417ad1d

error PayrollManagerInvalidResignationEndDate(uint256 endDate);

PayrollManagerInvalidUnpaidTimeOff

The passed-in 'timeOff' to increase by is invalid. It is either zero or exceeds the maximum

Selector: 0xded6374e

error PayrollManagerInvalidUnpaidTimeOff(uint256 timeOff);

PayrollManagerNoCollectibleCash

There is no collectible cash for 'tokenId'

Selector: 0x00b9d8fa

error PayrollManagerNoCollectibleCash(uint256 tokenId);

PayrollManagerNoCollectableEquity

There is no collectible equity for 'tokenId'

Selector: 0xba62285c

error PayrollManagerNoCollectibleEquity(uint256 tokenId);

PayrollManagerActionAlreadyPending

The proposed action with 'actionId' is already pending

Selector: 0xf04013b8

error PayrollManagerActionAlreadyPending(bytes32 actionId);

PayrollManagerInvalidAction

The proposed 'action' does not correspond to a valid action. The 'action' is a function selector that does not match the ones that require an action to be proposed in the Payroll Manager

Selector: 0x0f84a91a

error PayrollManagerInvalidAction(bytes4 action);

PayrollManagerActionNotPending

The pending action with 'actionId' to cancel was executed or does not exist

Selector: 0xc0bbb966

error PayrollManagerActionNotPending(bytes32 actionId);

PayrollManagerCallerNotAuthorizedToCancel

The 'caller' is not authorized to cancel the pending action. The caller must be the board of directors, an admin, the 'owner' of the Mezz Hub, or a 'defender'

error PayrollManagerCallerNotAuthorizedToCancel(address caller);

PayrollManagerInvalidEquityExtension

The proposed equity extension has an equity and a duration extension of zero

Selector: 0x3fce7621

error PayrollManagerInvalidEquityExtension();

PayrollManagerEquityPaymentsAlreadyExist

'tokenId' already has equity payments corresponding to the 'tokenTimelockTokenId'

Selector: 0x5332635d

error PayrollManagerEquityPaymentsAlreadyExist(uint256 tokenId, uint256 tokenTimelockTokenId);

PayrollManagerActionNotReady

The pending action with 'actionId' is not ready to be executed

Selector: 0xfca49f9b

error PayrollManagerActionNotReady(bytes32 actionId, uint256 snapshot);

PayrollManagerNotEmployee

The provided 'tokenId' does not correspond to an active employee

Selector: 0x48a42e6b

error PayrollManagerNotEmployee(uint256 tokenId);

PayrollManagerCashSalaryAboveMaximum

The proposed 'cashSalary' is above the maximum

Selector: 0xb4862033

error PayrollManagerCashSalaryAboveMaximum(uint256 cashSalary);

PayrollManagerNewCashSalarySameAsCurrent

The 'newCashSalary' is the same as the current cash salary

Selector: 0x9924bb05

error PayrollManagerNewCashSalarySameAsCurrent();

PayrollManagerCashPaymentAboveMaximum

The 'cashPayment' is above the maximum

Selector: 0x48033d83

error PayrollManagerCashPaymentAboveMaximum(uint256 cashPayment);

PayrollManagerInsufficientTreasurySharesBalance

The 'equityToTransfer' exceeds the treasury's balance of common shares. Thrown when hiring an employee, extending equity payments, setting new equity payments, or making a direct equity payment

Selector: 0x50f401e2

error PayrollManagerInsufficientTreasurySharesBalance(uint256 equityToTransfer, uint256 treasuryBalance);

PayrollManagerInsufficientTreasuryCashBalance

The 'cashToTransfer' exceeds the treasury's balance of cash. Thrown only when paying a cash directly to an employee. If there is insufficcient cash during the collection of an employee's salary, their 'cashOwed' will be udpated such that they are able to redeem cash in the future

Selector: 0xdd1f58be

error PayrollManagerInsufficientTreasuryCashBalance(address cashAsset, uint256 cashToTransfer, uint256 treasuryBalance);

PayrollManagerVestingEndDateGreaterThanEmployeeEndDate

The proposed new vesting schedule has an end date greater than the employee's end date

Selector: 0x0b316f70

error PayrollManagerVestingEndDateGreaterThanEmployeeEndDate(uint256 vestingEndDate, uint256 endDate);

PayrollManagerInvalidEncodedDirectPaymentDetails

The direct payment details did not indicate that the payment was a 'Bonus' and/or a 'ContractorPayment'

Selector: 0x11bd820a

error PayrollManagerInvalidEncodedDirectPaymentDetails(bytes32 encodedPaymentDetails);

PayrollManagerERC721BurnDisabled

Payroll Manager ERC721s cannot be burned

Selector: 0x8ed8f671

error PayrollManagerERC721BurnDisabled();

PayrollManagerERC721Soulbound

Payroll Manager ERC721s are soulbound and cannot be transferred or approved for transfers

Selector: 0x9a88eaad

error PayrollManagerERC721Soulbound();

PayrollManagerCannotReceiveERC721WhileNotTransacting

An account tried to 'safeTransfer' an ERC721 to the payroll manager while it was not transacting

Selector: 0xa9398378

error PayrollManagerCannotReceiveERC721WhileNotTransacting();

MezzGovernorCallerNotGovernance

The 'caller' is not the governor contract, itself

Selector: 0x05c401ea

error MezzGovernorCallerNotGovernance(address caller);

GovernorThresholdZero

The following errors are thrown both by the Share Class and Late Stage Governor and are not part of a a base class. Both governors throw the same errors to improve off-chain composability as well as to reduce redundancy The calculated proposal threshold is zero from precision loss or a total votes of zero

Selector: 0x0b52725f

error GovernorThresholdZero();

GovernorQuorumZero

The calculated quorum is zero from precision loss or a total votes of zero

Selector: 0x0c84d9ac

error GovernorQuorumZero();

GovernorSuperMajorityZero

The super majority is zero from precision loss or a total votes of zero

Selector: 0x6066539f

error GovernorSuperMajorityZero();

GovernorCallerInvalidCanceler

The 'caller' is not the proposer or the 'owner' of the Mezz Hub

Selector: 0xf50a2c1c

error GovernorCallerInvalidCanceler(address caller);

ProposalGovernorInvalidProposalThresholdPercentage

The 'newProposalThresholdPercentage' to set is greater than the max threshold percentage or less than the minimum threshold percentage

Selector: 0xa6aaa345

error ProposalGovernorInvalidProposalThresholdPercentage(uint256 newProposalThresholdPercentage);

ProposalGovernorInvalidQuorumPercentage

The 'newQuorumPercentage' to set is greater than the max quorum percentage or less than the minimum quorum percentage

Selector: 0x790521cb

error ProposalGovernorInvalidQuorumPercentage(uint256 newQuorumPercentage);

ProposalGovernorInvalidVotingDelay

The 'newVotingDelay' to set is greater than the max delay or less than the minimum delay

Selector: 0x84378e36

error ProposalGovernorInvalidVotingDelay(uint256 newVotingDelay);

ProposalGovernorInvalidVotingPeriod

The 'newVotingPeriod' to set is greater than the max period or less than the minimum period

Selector: 0x88bc198a

error ProposalGovernorInvalidVotingPeriod(uint256 newVotingPeriod);

ProposalGovernorInvalidVoteType

An invalid vote type was passed in

Selector: 0x05703834

error ProposalGovernorInvalidVoteType(uint8 support);

ProposalGovernorAlreadyCastVote

The account has already voted on the proposal

Selector: 0xc1e97f61

error ProposalGovernorAlreadyCastVote(address account);

StartupGovernorDeadlinePassed

The 'deadline' has passed for the proposed transaction

Selector: 0xfab68f04

error StartupGovernorDeadlinePassed(uint256 deadline);

StartupGovernorInsufficcientBalance

The startup governor has the blockchain native currency balance of less than 'value' Selector: 0xe7df6f6b

error StartupGovernorInsufficcientBalance(uint256 value);

ShareClassGovernorBoardMemberAlreadySet

A proposal is attempting to add a board member that is already a board member

Selector: 0x9612c52e

error ShareClassGovernorBoardMemberAlreadySet(address ownerToAdd);

ShareClassGovernorOwnerNotAddedByShareClass

A proposal for the a shareclass is attempting to remove a board member that was not added by the share class

Selector: 0xb6693aa5

error ShareClassGovernorOwnerNotAddedByShareClass(address ownerToRemove, address shareClass);

ShareClassGovernorNoBoardSeatsAvailableForShareClass

There are no available board seats for the given share class

Selector: 0x2d007190

error ShareClassGovernorNoBoardSeatsAvailableForShareClass(address shareClass);

ShareClassGovernorMaxPreferredBoardSeatsReached

The new allocated board seats from an increase is greater than the maximum for preferred shares

Selector: 0x21af2cc0

error ShareClassGovernorMaxPreferredBoardSeatsReached(uint256 newAllocatedBoardSeats);

ShareClassGovernorInvalidAction

The provided action of a proposal does not correspond to managing owners in a treasury

Selector: 0xf1133f15

error ShareClassGovernorInvalidAction(bytes4 action);

ShareClassGovernorInsufficcientProposerVotes

The proposer has less votes than the proposal threshold

Selector: 0x00750c26

error ShareClassGovernorInsufficcientProposerVotes(address proposer, uint256 proposerVotes, uint256 votesThreshold);

ShareClassGovernorOwnerManagementDisabled

The board attempted to manage its signers via the Share Class Governor's executeTx()

Selector: 0xa6c0564f

error ShareClassGovernorOwnerManagementDisabled();

ShareClassGovernorInvalidNewTreasuryThreshold

The 'newTreasuryThreshold' is greater than the number of signers or is zero

Selector: 0x8788b74f

error ShareClassGovernorInvalidNewTreasuryThreshold(uint256 newTreasuryThreshold);

PricedRoundAllocationExceedsRemainingShares

The investor allocation to set or the increase to the investor allocation exceeds the 'remainingShares'

Selector: 0x3ec91170

error PricedRoundAllocationExceedsRemainingShares(uint256 remainingShares);

PricedRoundDecreaseGreaterThanInvestorAllocation

The 'decreaseAmount' is larger than the 'sharesAllocation' of an investor

Selector: 0x8e6d8f4e

error PricedRoundDecreaseGreaterThanInvestorAllocation(uint256 decreaseAmount, uint256 sharesAllocation);

PricedRoundNumberOfSharesMismatch

An investor's 'expectedNumberOfShares' does not equal their 'allocatedNumberOfShares' when investing in the round. Functions as frontrunning protection

Selector: 0x15c069b1

error PricedRoundNumberOfSharesMismatch(uint256 expectedNumberOfShares, uint256 allocatedNumberOfShares);

PricedRoundDiscountOrPremiumMismatch

An investor's 'expectedDiscountOrPremium' does not equal their 'allocatedDiscountOrPremium' when investing in the round Functions as frontrunning protection

Selector: 0xd3bfc752

error PricedRoundDiscountOrPremiumMismatch(int256 expectedDiscountOrPremium, int256 allocatedDiscountOrPremium);

PricedRoundInvestmentExceedsRemainingSharesForRound

The allotted shares following the investment would exceed the total shares for the round

Selector: 0xcda9d7d9

error PricedRoundInvestmentExceedsRemainingSharesForRound(uint256 allocationShares, uint256 remainingShares);

PricedRoundInvestmentExceedsRemainingDenomAssetForRound

The 'investmentAmount' exceeds the 'remainingDenominationAsset' for the round

Selector: 0x90f90b7a

error PricedRoundInvestmentExceedsRemainingDenomAssetForRound(
    uint256 investmentAmount, uint256 remainingDenominationAsset
);

PricedRoundUnexpectedRoundState

The round state is invalid for a given action

Selector: 0x4ea2935c

error PricedRoundUnexpectedRoundState(uint8 state);

PricedRoundInvalidRaiseAmounts

The 'minimumRaise' is greater than the 'targetRaise'

Selector: 0xef90e3cd

error PricedRoundInvalidRaiseAmounts(uint256 minimumRaise, uint256 targetRaise);

PricedRoundInvalidDiscount

The discount is larger than Constants.PRECISION_FACTOR

Selector: 0x07fffa63

error PricedRoundInvalidDiscount(uint256 discount);

PricedRoundInvalidPremium

The premium is larger than Constants.MAX_PREMIUM

Selector: 0xef9bd2a9

error PricedRoundInvalidPremium(uint256 premium);

PricedRoundCallerAllocationBelowMinimum

The 'caller' has an 'allocation' below the minimum, as defined by Constants.MIN_INVESTOR_ALLOCATION Thrown to prevent future precision loss

Selector: 0xbdae0077

error PricedRoundCallerAllocationBelowMinimum(address caller, uint256 allocation);

PricedRoundInvestorNoInvestment

The 'investor' did not invest any tokens. Thrown when reversing an investment, whether that be recouping or revoking an investment

Selector: 0xed42eb34

error PricedRoundInvestorNoInvestment(address investor);

PricedRoundInvestorNoShares

The 'investor' has no shares to claim

Selector: 0xf0c98b72

error PricedRoundInvestorNoShares(address investor);

PricedRoundInsufficientRaise

'totalRaised' is not greater than the minimum raise

Selector: 0x41efbf4a

error PricedRoundInsufficientRaise();

EquityFinancingModuleTeamNotDepartmentOrTreasury

The 'team' used for initialization does not support either the Treasury or Department interface

Selector: 0x18cd71f6

error EquityFinancingModuleTeamNotDepartmentOrTreasury(address team);

EquityFinancingModuleCurrentPricedRoundUnexpectedState

An ancestor attempted to open a priced round, but the state of the current priced round is open or filled 'state' is defined by the DataTypes.RoundState enum:

  • 0: Open

  • 1: Closed

  • 2: Filled

  • 3: Cancelled

Selector: 0x0c61feb2

error EquityFinancingModuleCurrentPricedRoundUnexpectedState(uint8 state);

Last updated