Loading Preparing the Explorer shell…
Skip to content Realm detail
gsfarmv8 gno.land/r/g1mv0052e7r6s09f5t9xsqf00nj3tqsgt9dg52jr/gvs/gsfarmv8
Indexed deployment identity with independently loaded latest RPC source, functions, and Render.
Indexed deployment
Identity
Package path gno.land/r/g1mv0052e7r6s09f5t9xsqf00nj3tqsgt9dg52jr/gvs/gsfarmv8
Deployed (UTC) 6 Sept 2026, 06:03:15 farm.gno gnomod.toml harvest.gno slot.gno package gsfarmv8
// syncBookToCash sets the share book to the WUGNOT this slot actually
// holds after unwind so PreviewRedeem never promises more than cash.
func syncBookToCash(f *slot) {
have := f.cash
booked := f.book.TotalAssets()
if booked > have {
f.book.TakeLoss(booked - have)
return
}
if have > booked && f.book.TotalShares() > 0 {
f.book.AddProfit(have - booked)
}
}
Latest RPC state
Exported functions 2026-09-10T04:36:39.683Z IsFactory() bool Admin() string Treasury() string VaultAddress() string Paused() bool BufferBPS() int64 StakeEnabled() bool MinStakeAssets() int64 MaxAssets() int64 AmountOutMin() string Count() int Want() string DefaultPool() string PoolPaths() []string Has(poolPath string) bool TotalAssets() int64 TotalShares() int64 SharesOf(a string) int64 PreviewDeposit(a int64) int64 PreviewRedeem(s int64) int64 IdleWugnot() int64 TargetIdleWugnot() int64 PositionID() uint64 ProtocolEarned() int64 LastHarvest() int64 SharePriceE6() int64 PendingGns() int64 CashWugnot() int64 TotalAssetsOf(poolPath string) int64 TotalSharesOf(poolPath string) int64 SharesOfPool(poolPath string, a string) int64 PreviewDepositOf(poolPath string, a int64) int64 PreviewRedeemOf(poolPath string, s int64) int64 IdleOf(poolPath string) int64 TargetIdleOf(poolPath string) int64 PositionIDOf(poolPath string) uint64 ProtocolEarnedOf(poolPath string) int64 LastHarvestOf(poolPath string) int64 Latest RPC state · Realm Render 2026-09-10T04:36:39.350Z
Gno Vault Strategy — v4 multi-pool factory
WUGNOT in. One isolated book + LP per GnoSwap WUGNOT pair. Ensure / first Deposit opens a missing pool (no new realm).
Open farms : 1
TVL (all books) : 100000000 wugnot
Vault : g142kkjdj43aghzjk07v23wez63udpp2tp2zv49u
Admin : g1mv0052e7r6s09f5t9xsqf00nj3tqsgt9dg52jr
| Pool | TVL | Idle | Shares | LP |
|---|---:|---:|---:|---:|
| gno\.land/r/gnoland/wugnot\.wugnot:gno\.land/r/gnoswap/gns\.GNS:3000 | 100000000 | 100000000 | 100000000 | 0 |
SharePriceE6Of(poolPath string) int64
PendingOtherOf(poolPath string) int64
UserAssets(a string) int64
Ensure(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, poolPath string) string
Deposit(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, poolPath string, amount int64) int64
Withdraw(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, poolPath string, shares int64) int64
WithdrawTo(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, poolPath string, shares int64, dest string) int64
Reinvest(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, poolPath string) int64
SetBufferBPS(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, bps int64)
TransferAdmin(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, next string)
SetTreasury(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, next string)
SetFees(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, callerBPS int64, protocolBPS int64)
SetPaused(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, next bool)
SetStakeEnabled(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, next bool)
SetMaxAssets(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, capAmt int64)
SetAmountOutMin(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, minOut string)
StakedOf(poolPath string) bool
Render(path string) string