OpenTermLoanManager
\
Functions
HUNDRED_PERCENT
HUNDRED_PERCENT
Returns the value considered as the hundred percent.
function HUNDRED_PERCENT()
view
returns (
uint256
);
Return Values:
0
uint256
uint256
\
PRECISION
PRECISION
Returns the precision used for the contract.
function PRECISION()
view
returns (
uint256
);
Return Values:
0
uint256
uint256
\
accountedInterest
accountedInterest
Gets the amount of accounted interest.
function accountedInterest()
view
returns (
uint112
);
Return Values:
0
uint112
uint112
\
accruedInterest
accruedInterest
Gets the amount of accrued interest up until this point in time.
function accruedInterest()
view
returns (
uint256 accruedInterest_
);
Return Values:
0
accruedInterest_
uint256
uint256
The amount of accrued interest up until this point in time.
\
assetsUnderManagement
assetsUnderManagement
Gets the amount of assets under the management of the contract.
function assetsUnderManagement()
view
returns (
uint256 assetsUnderManagement_
);
Return Values:
0
assetsUnderManagement_
uint256
uint256
The amount of assets under the management of the contract.
\
callPrincipal
callPrincipal
Calls a loan.
function callPrincipal(
address loan_,
uint256 principal_
)
nonpayable;
Parameters:
0
loan_
address
address
Loan to be called.
1
principal_
uint256
uint256
Amount of principal to call the Loan with.
\
claim
claim
Called by loans when payments are made, updating the accounting.
function claim(
int256 principal_,
uint256 interest_,
uint256 delegateServiceFee_,
uint256 platformServiceFee_,
uint40 nextPaymentDueDate_
)
nonpayable;
Parameters:
0
principal_
int256
int256
The difference in principal. Positive if net principal change moves funds into pool, negative if it moves funds out of pool.
1
interest_
uint256
uint256
The amount of interest paid.
2
delegateServiceFee_
uint256
uint256
The amount of delegate service fee paid.
3
platformServiceFee_
uint256
uint256
The amount of platform service fee paid.
4
nextPaymentDueDate_
uint40
uint40
\
domainStart
domainStart
Gets the timestamp of the domain start.
function domainStart()
view
returns (
uint40
);
Return Values:
0
uint40
uint40
\
factory
factory
The address of the proxy factory.
function factory()
view
returns (
address factory_
);
Return Values:
0
factory_
address
address
\
fund
fund
Funds a new loan.
function fund(
address loan_
)
nonpayable;
Parameters:
0
loan_
address
address
Loan to be funded.
\
fundsAsset
fundsAsset
Gets the address of the funds asset.
function fundsAsset()
view
returns (
address
);
Return Values:
0
address
address
\
impairLoan
impairLoan
Triggers the impairment of a loan.
function impairLoan(
address loan_
)
nonpayable;
Parameters:
0
loan_
address
address
Loan to trigger the loan impairment.
\
impairmentFor
impairmentFor
Gets the information for an impairment.
function impairmentFor(
address
)
view
returns (
uint40 impairedDate,
bool impairedByGovernor
);
Parameters:
0
``
address
address
Return Values:
0
impairedDate
uint40
uint40
The date the impairment was triggered.
1
impairedByGovernor
bool
bool
True if the impairment was triggered by the governor.
\
implementation
implementation
The address of the implementation contract being proxied.
function implementation()
view
returns (
address implementation_
);
Return Values:
0
implementation_
address
address
\
issuanceRate
issuanceRate
Gets the current issuance rate.
function issuanceRate()
view
returns (
uint256
);
Return Values:
0
uint256
uint256
\
migrate
migrate
Modifies the proxy's storage by delegate-calling a migrator contract with some arguments. Access control logic critical since caller can force a selfdestruct via a malicious `migrator_` which is delegatecalled.
function migrate(
address migrator_,
bytes arguments_
)
nonpayable;
Parameters:
0
migrator_
address
address
The address of a migrator contract.
1
arguments_
bytes
bytes
Some encoded arguments to use for the migration.
\
paymentFor
paymentFor
Gets the information for a payment.
function paymentFor(
address
)
view
returns (
uint24 platformManagementFeeRate,
uint24 delegateManagementFeeRate,
uint40 startDate,
uint168 issuanceRate
);
Parameters:
0
``
address
address
Return Values:
0
platformManagementFeeRate
uint24
uint24
The value for the platform management fee rate.
1
delegateManagementFeeRate
uint24
uint24
The value for the delegate management fee rate.
2
startDate
uint40
uint40
The start date of the payment.
3
issuanceRate
uint168
uint168
The issuance rate for the loan.
\
poolManager
poolManager
Gets the address of the pool manager.
function poolManager()
view
returns (
address
);
Return Values:
0
address
address
\
principalOut
principalOut
Gets the amount of principal out.
function principalOut()
view
returns (
uint128
);
Return Values:
0
uint128
uint128
\
proposeNewTerms
proposeNewTerms
Proposes new terms for a loan.
function proposeNewTerms(
address loan_,
address refinancer_,
uint256 deadline_,
bytes[] calls_
)
nonpayable;
Parameters:
0
loan_
address
address
The loan to propose new changes to.
1
refinancer_
address
address
The refinancer to use in the refinance.
2
deadline_
uint256
uint256
The deadline by which the borrower must accept the new terms.
3
calls_
bytes[]
bytes[]
The array of calls to be made to the refinancer.
\
rejectNewTerms
rejectNewTerms
Reject/cancel proposed new terms for a loan.
function rejectNewTerms(
address loan_,
address refinancer_,
uint256 deadline_,
bytes[] calls_
)
nonpayable;
Parameters:
0
loan_
address
address
The loan with the proposed new changes.
1
refinancer_
address
address
The refinancer to use in the refinance.
2
deadline_
uint256
uint256
The deadline by which the borrower must accept the new terms.
3
calls_
bytes[]
bytes[]
The array of calls to be made to the refinancer.
\
removeCall
removeCall
Removes a loan call.
function removeCall(
address loan_
)
nonpayable;
Parameters:
0
loan_
address
address
Loan to remove call for.
\
removeLoanImpairment
removeLoanImpairment
Removes the loan impairment for a loan.
function removeLoanImpairment(
address loan_
)
nonpayable;
Parameters:
0
loan_
address
address
Loan to remove the loan impairment.
\
setImplementation
setImplementation
Modifies the proxy's implementation address.
function setImplementation(
address implementation_
)
nonpayable;
Parameters:
0
implementation_
address
address
\
triggerDefault
triggerDefault
Triggers the default of a loan.
function triggerDefault(
address loan_,
address liquidatorFactory_
)
nonpayable
returns (
bool liquidationComplete_,
uint256 remainingLosses_,
uint256 unrecoveredPlatformFees_
);
Parameters:
0
loan_
address
address
Loan to trigger the default.
1
liquidatorFactory_
address
address
Return Values:
0
liquidationComplete_
bool
bool
1
remainingLosses_
uint256
uint256
The amount of un-recovered principal and interest (net of management fees).
2
unrecoveredPlatformFees_
uint256
uint256
The amount of un-recovered platform fees.
\
triggerDefault
triggerDefault
Triggers the default of a loan.
function triggerDefault(
address loan_
)
nonpayable
returns (
uint256 remainingLosses_,
uint256 unrecoveredPlatformFees_
);
Parameters:
0
loan_
address
address
Loan to trigger the default.
Return Values:
0
remainingLosses_
uint256
uint256
The amount of un-recovered principal and interest (net of management fees).
1
unrecoveredPlatformFees_
uint256
uint256
The amount of un-recovered platform fees.
\
unrealizedLosses
unrealizedLosses
Returns the amount unrealized losses.
function unrealizedLosses()
view
returns (
uint128
);
Return Values:
0
uint128
uint128
\
upgrade
upgrade
Upgrades a contract implementation to a specific version. Access control logic critical since caller can force a selfdestruct via a malicious `migrator_` which is delegatecalled.
function upgrade(
uint256 version_,
bytes arguments_
)
nonpayable;
Parameters:
0
version_
uint256
uint256
1
arguments_
bytes
bytes
Some encoded arguments to use for the upgrade.
\
Events
AccountingStateUpdated
AccountingStateUpdated
Emitted when the accounting state of the loan manager is updated.
event AccountingStateUpdated(
uint256 issuanceRate_,
uint112 accountedInterest_
);
Parameters:
0
issuanceRate_
uint256
uint256
New value for the issuance rate.
1
accountedInterest_
uint112
uint112
The amount of accounted interest.
\
ClaimedFundsDistributed
ClaimedFundsDistributed
Funds have been claimed and distributed to the Pool, Pool Delegate, and Maple Treasury.
event ClaimedFundsDistributed(
address loan_,
uint256 principal_,
uint256 netInterest_,
uint256 delegateManagementFee_,
uint256 delegateServiceFee_,
uint256 platformManagementFee_,
uint256 platformServiceFee_
);
Parameters:
0
loan_
address
address
The address of the loan contract.
1
principal_
uint256
uint256
The amount of principal paid.
2
netInterest_
uint256
uint256
The amount of net interest paid.
3
delegateManagementFee_
uint256
uint256
The amount of delegate management fees paid.
4
delegateServiceFee_
uint256
uint256
The amount of delegate service fees paid.
5
platformManagementFee_
uint256
uint256
The amount of platform management fees paid.
6
platformServiceFee_
uint256
uint256
The amount of platform service fees paid.
\
ExpectedClaim
ExpectedClaim
Funds that were expected to be claimed and distributed to the Pool and Maple Treasury.
event ExpectedClaim(
address loan_,
uint256 principal_,
uint256 netInterest_,
uint256 platformManagementFee_,
uint256 platformServiceFee_
);
Parameters:
0
loan_
address
address
The address of the loan contract.
1
principal_
uint256
uint256
The amount of principal that was expected to be paid.
2
netInterest_
uint256
uint256
The amount of net interest that was expected to be paid.
3
platformManagementFee_
uint256
uint256
The amount of platform management fees that were expected to be paid.
4
platformServiceFee_
uint256
uint256
The amount of platform service fees that were expected to paid.
\
LiquidatedFundsDistributed
LiquidatedFundsDistributed
Funds that were liquidated and distributed to the Pool, Maple Treasury, and Borrower.
event LiquidatedFundsDistributed(
address loan_,
uint256 toBorrower_,
uint256 toPool_,
uint256 toTreasury_
);
Parameters:
0
loan_
address
address
The address of the loan contract that defaulted and was liquidated.
1
toBorrower_
uint256
uint256
The amount of recovered funds transferred to the Borrower.
2
toPool_
uint256
uint256
The amount of recovered funds transferred to the Pool.
3
toTreasury_
uint256
uint256
The amount of recovered funds transferred to the Treasury.
\
PaymentAdded
PaymentAdded
Emitted when a payment is added to the LoanManager payments mapping.
event PaymentAdded(
address loan_,
uint256 platformManagementFeeRate_,
uint256 delegateManagementFeeRate_,
uint256 paymentDueDate_,
uint256 issuanceRate_
);
Parameters:
0
loan_
address
address
The address of the loan.
1
platformManagementFeeRate_
uint256
uint256
The amount of platform management rate that will be used for the payment distribution.
2
delegateManagementFeeRate_
uint256
uint256
The amount of delegate management rate that will be used for the payment distribution.
3
paymentDueDate_
uint256
uint256
The due date of the payment.
4
issuanceRate_
uint256
uint256
The issuance of the payment, 1e27 precision.
\
PaymentRemoved
PaymentRemoved
Emitted when a payment is removed from the LoanManager payments mapping.
event PaymentRemoved(
address loan_
);
Parameters:
0
loan_
address
address
The address of the loan.
\
PrincipalOutUpdated
PrincipalOutUpdated
Emitted when principal out is updated
event PrincipalOutUpdated(
uint128 principalOut_
);
Parameters:
0
principalOut_
uint128
uint128
The new value for principal out.
\
UnrealizedLossesUpdated
UnrealizedLossesUpdated
Emitted when unrealized losses is updated.
event UnrealizedLossesUpdated(
uint128 unrealizedLosses_
);
Parameters:
0
unrealizedLosses_
uint128
uint128
The new value for unrealized losses.
\
Upgraded
Upgraded
The instance was upgraded.
event Upgraded(
uint256 toVersion_,
bytes arguments_
);
Parameters:
0
toVersion_
uint256
uint256
The new version of the loan.
1
arguments_
bytes
bytes
The upgrade arguments, if any.
\
Last updated