wugnotTokenKey
untyped stringSapphire Gnoswap registry keys / role addresses (sapphire-1).
Value
"gno.land/r/gnoland/wugnot.wugnot"
gnsTokenKey
untyped stringSapphire Gnoswap registry keys / role addresses (sapphire-1).
Value
"gno.land/r/gnoswap/gns.GNS"
gnoswapPoolAddrStr
untyped stringSapphire Gnoswap registry keys / role addresses (sapphire-1).
Value
"g1dexaf6aqkkyr9yfy9d5up69lsn7ra80af34g5v"
gnoswapRouterAddrStr
untyped stringSapphire Gnoswap registry keys / role addresses (sapphire-1).
Value
"g1vc883gshu5z7ytk5cdynhc8c2dh67pdp4cszkp"
tryListOnGnoswap
func(l *padv11.Launch, raisedUgnot int64, remainingTokens int64) booltryListOnGnoswap seeds a Gnoswap CL pool with remaining meme tokens + raised-sized WUGNOT as LP. CreatePool fee (fixed GNS amount) is paid from: 1. pre-funded GNS on pad (preferred — immune to GNOT/GNS price moves), else 2. ExactOut WUGNOT→GNS using SURPLUS inventory only (above raised), so LP depth stays equal to raised even when GNS is expensive. Returns true on success. Soft failure sets l.GnoswapNote and returns false (caller keeps internal CPMM). Note: wugnot.Deposit is EOA-only — protocol must pre-fund pad with WUGNOT (and ideally GNS). Raised ugnot stays on pad as wrap-back backlog.
- OID
- 087ba8…2057:3
tryListOnGnoswap details
swapWugnotForGNS
func(amountOutGNS int64, maxInWugnot int64) (spent int64, ok bool)swapWugnotForGNS ExactOut-swaps WUGNOT→GNS. maxInWugnot is a hard ceiling (slippage / price protection): if market needs more GNOT for amountOutGNS, swap reverts.
- OID
- 087ba8…2057:5
swapWugnotForGNS details
computeSqrtPriceX96
func(amount0 int64, amount1 int64) stringcomputeSqrtPriceX96 returns sqrt(amount1/amount0) \* 2^96 as decimal string.
- OID
- 087ba8…2057:6
computeSqrtPriceX96 details
u256Sqrt
func(x *uint256.Uint) *uint256.Uint- OID
- 087ba8…2057:7
u256Sqrt details
alignedFullRangeTicks
func(spacing int32) (int32, int32)- OID
- 087ba8…2057:8
alignedFullRangeTicks details
GnoswapListedOf
func(id string) boolGnoswapListedOf reports whether a launch was auto-listed on Gnoswap.
- OID
- 087ba8…2057:9
GnoswapListedOf details
GnoswapPoolPathOf
func(id string) stringGnoswapPoolPathOf returns the Gnoswap pool path after listing (or empty).
- OID
- 087ba8…2057:10
GnoswapPoolPathOf details
GnoswapNoteOf
func(id string) stringGnoswapNoteOf returns the listing status note.
- OID
- 087ba8…2057:11
GnoswapNoteOf details
launches
v0.Tree// id -> \*Launch
- OID
- 087ba8…2057:13
launches details
bySymbol
v0.Tree// symbol -> id string
- OID
- 087ba8…2057:15
bySymbol details
nextID
v0.IDValue
<zero>
nextTokenID
v0.ID// GRC20 identity sequence (shared for all launches)
Value
<zero>
padAddr
.uverse.addressValue
<gnolang.StringValue>
protocolAddr
.uverse.addressValue
<gnolang.StringValue>
protocolFees
int64Value
20861267
protocolFeesPaid
int64Value
0
inited
boolValue
true
testSkipBanker
boolValue
false
pointsEnabled
boolValue
false
init.23
func()- OID
- 087ba8…2057:25
init.23 details
Trade
typeTrade is one price sample for charts (capped history per launch).
Value
padv11.Trade
Launch
typeLaunch is one meme market: curve phase then locked pool phase. token/ledger are unexported so external packages cannot Mint/Burn via field access.
Value
padv11.Launch
Init
func()Init sets the protocol treasury. First EOA caller becomes fee recipient (protocolAddr). Protocol trade fees accrue on-pad until ClaimProtocolFees (treasury only) or PushProtocolFees (anyone may push to treasury). Creator fees always need ClaimCreatorFees by the token creator. Deploy note: call Init with the wallet that should receive protocol fees (or TransferProtocol later). Gnoswap CreatePool GNS fee is paid to Gnoswap, not to this treasury.
- OID
- 087ba8…2057:27
Init details
creditProtocol
func(amt int64)creditProtocol accrues protocol ugnot liability on the pad realm. Cash stays in pad until ClaimProtocolFees / PushProtocolFees.
- OID
- 087ba8…2057:28
creditProtocol details
requireInit
func()- OID
- 087ba8…2057:29
requireInit details
SetPointsEnabled
func(on bool)SetPointsEnabled toggles pointsv2 notifications (protocol admin only). pointsv2 must AllowPad(this package path) or OnTrade/OnCreate will panic and revert the trade.
- OID
- 087ba8…2057:30
SetPointsEnabled details
PointsEnabled
func() boolPointsEnabled reports whether pad notifies pointsv2 after trades/creates.
- OID
- 087ba8…2057:31
PointsEnabled details
notifyTrade
func(trader .uverse.address, id string, side int64, volumeUgnot int64)- OID
- 087ba8…2057:32
notifyTrade details
notifyCreate
func(creator .uverse.address, id string)- OID
- 087ba8…2057:33
notifyCreate details
mustLaunch
func(id string) *padv11.Launch- OID
- 087ba8…2057:34
mustLaunch details
balOf
func(l *padv11.Launch, addr .uverse.address) int64- OID
- 087ba8…2057:35
balOf details
addBal
func(l *padv11.Launch, addr .uverse.address, delta int64)addBal mints (delta>0) or burns (delta\<0) GRC20 via pad-owned PrivateLedger.
- OID
- 087ba8…2057:36
addBal details
requireMinOut
func(got int64, minOut int64, what string)- OID
- 087ba8…2057:37
requireMinOut details
snipeBoughtOf
func(l *padv11.Launch, buyer .uverse.address) int64- OID
- 087ba8…2057:38
snipeBoughtOf details
checkAndAddSnipe
func(l *padv11.Launch, buyer .uverse.address, tokensOut int64)- OID
- 087ba8…2057:39
checkAndAddSnipe details
sendUgnot
func(to .uverse.address, amount int64)- OID
- 087ba8…2057:40
sendUgnot details
requireUserPayment
func() int64- OID
- 087ba8…2057:41
requireUserPayment details
noteBuyer
func(l *padv11.Launch, buyer .uverse.address)- OID
- 087ba8…2057:42
noteBuyer details
tradeKey
func(n int64) string- OID
- 087ba8…2057:43
tradeKey details
spotPriceScaled
func(l *padv11.Launch) int64spotPriceScaled returns ugnot/token \* 1e6 from current curve or pool reserves.
- OID
- 087ba8…2057:44
spotPriceScaled details
recordTrade
func(l *padv11.Launch, side int, ugnot int64, tokens int64)- OID
- 087ba8…2057:45
recordTrade details
maybeRefundBond
func(l *padv11.Launch)- OID
- 087ba8…2057:46
maybeRefundBond details
requiredCreateBond
func() int64requiredCreateBond returns ugnot the creator must send. Production: createbond.CurrentBondUgnot() (promo or normal). Unit tests (testSkipBanker): local CreateBondUgnot constant.
- OID
- 087ba8…2057:47
requiredCreateBond details
CreateBondRequired
func() int64CreateBondRequired is a public alias for UIs / qeval (same as requiredCreateBond).
- OID
- 087ba8…2057:48
CreateBondRequired details
Create
func(name string, symbol string, uri string) stringCreate deploys a fair-launch meme. Bond amount from bond realm (or fallback const). No pre-mint; all tradeable float starts on the bonding curve.
- OID
- 087ba8…2057:49
Create details
AdenaPathOf
func(id string) stringAdenaPathOf returns the grc20reg / Adena token key: packagePath.SYMBOL (Token.ID is packagePath.SYMBOL.seq — Adena rejects that form).
- OID
- 087ba8…2057:50
AdenaPathOf details
adenaKeyFromTokenID
func(tokenID string, symbol string) stringadenaKeyFromTokenID strips the trailing .seq from Token.ID when present.
- OID
- 087ba8…2057:51
adenaKeyFromTokenID details
maxGrossForNetIn
func(maxNet int64, sentMax int64) int64maxGrossForNetIn finds largest gross ugnot ≤ sentMax whose fee-split netIn ≤ maxNet.
- OID
- 087ba8…2057:52
maxGrossForNetIn details
readyToGraduate
func(l *padv11.Launch) boolreadyToGraduate is true when raise met the threshold, or the entire curve float is sold (sold-out escape: threshold may be unreachable with bad virtuals).
- OID
- 087ba8…2057:53
readyToGraduate details
Buy
func(id string, minTokensOut int64) int64Buy spends -send ugnot on the bonding curve; credits tokens to the caller. minTokensOut: slippage floor (0 = disabled). Auto-graduates at threshold or sold-out. Last-fill (no overshoot): 1. Cap net ugnot so RaisedUgnot never exceeds GraduationThreshold (refund excess). 2. Cap by remaining curve tokens (CurveSupply - RealSold), same as before. Concurrent large buys serialize per-tx; each fill only the remaining raise/tokens. If the curve is already sold out (or raise already filled), Buy refunds the full send and graduates when ready — no panic so users are not stuck mid-tx.
- OID
- 087ba8…2057:54
Buy details
RemainingRaiseUgnot
func(id string) int64RemainingRaiseUgnot is net ugnot still needed to hit GraduationThreshold (0 if met/over).
- OID
- 087ba8…2057:55
RemainingRaiseUgnot details
Sell
func(id string, tokensIn int64, minUgnotOut int64) int64Sell burns curve tokens and pays ugnot (fee on output). minUgnotOut: slippage floor (0 = disabled).
- OID
- 087ba8…2057:56
Sell details
Graduate
func(id string)Graduate permissionlessly moves a ready curve into a permanently locked CPMM. Ready when RaisedUgnot >= GraduationThreshold, or when RealSold >= CurveSupply with RaisedUgnot > 0 (sold-out before threshold — escape hatch for unreachable raise).
- OID
- 087ba8…2057:57
Graduate details
graduate
func(l *padv11.Launch)- OID
- 087ba8…2057:58
graduate details
TokenIDOf
func(id string) stringTokenIDOf returns the GRC20 Token.ID() for a launch.
- OID
- 087ba8…2057:59
TokenIDOf details
GRC20Bank
func(id string) *grc20.TokenGRC20Bank returns the underlying \*grc20.Token for interop (metadata / external DEX). Does not expose PrivateLedger — mint/burn stay pad-only.
- OID
- 087ba8…2057:60
GRC20Bank details
SwapBuy
func(id string, minTokensOut int64) int64SwapBuy buys tokens from the graduated pool with -send ugnot. minTokensOut: slippage floor (0 = disabled). Disabled when the launch was auto-listed on Gnoswap (trade there instead).
- OID
- 087ba8…2057:61
SwapBuy details
SwapSell
func(id string, tokensIn int64, minUgnotOut int64) int64SwapSell sells tokens into the graduated pool for ugnot. minUgnotOut: slippage floor (0 = disabled).
- OID
- 087ba8…2057:62
SwapSell details
Transfer
func(id string, to .uverse.address, amount int64)Transfer moves GRC20 tokens between addresses (user-initiated).
- OID
- 087ba8…2057:63
Transfer details
Approve
func(id string, spender .uverse.address, amount int64)Approve sets GRC20 allowance so DEX/contracts can TransferFrom.
- OID
- 087ba8…2057:64
Approve details
TransferFrom
func(id string, from .uverse.address, to .uverse.address, amount int64)TransferFrom spends allowance: spender = MsgCall EOA caller. Enables DEX / routers that hold allowance from Approve.
- OID
- 087ba8…2057:65
TransferFrom details
ClaimCreatorFees
func(id string) int64ClaimCreatorFees withdraws accrued creator fees for a launch. Only the token creator may claim. Fees stay on pad until claimed.
- OID
- 087ba8…2057:66
ClaimCreatorFees details
payoutProtocolFees
func() int64payoutProtocolFees sends all pending protocolFees to protocolAddr. Shared by ClaimProtocolFees and PushProtocolFees.
- OID
- 087ba8…2057:67
payoutProtocolFees details
ClaimProtocolFees
func() int64ClaimProtocolFees withdraws pending protocol fees to protocolAddr. Only the current protocol treasury key may call (same wallet that Init'd, unless TransferProtocol was used).
- OID
- 087ba8…2057:68
ClaimProtocolFees details
PushProtocolFees
func() int64PushProtocolFees sends pending protocol fees to protocolAddr. Permissionless: anyone may call so treasury can be paid without the protocol key signing (still only pays the configured protocolAddr).
- OID
- 087ba8…2057:69
PushProtocolFees details
TransferProtocol
func(newAddr .uverse.address)TransferProtocol rotates the protocol fee recipient (current protocol only). Pending protocolFees stay on pad until claimed/pushed to the \*new\* address.
- OID
- 087ba8…2057:70
TransferProtocol details
ProtocolAddress
func() stringProtocolAddress returns the current protocol treasury address (bech32).
- OID
- 087ba8…2057:71
ProtocolAddress details
ProtocolFeesPaid
func() int64ProtocolFeesPaid returns lifetime ugnot already paid out to the treasury.
- OID
- 087ba8…2057:72
ProtocolFeesPaid details
FeeInfo
func() stringFeeInfo returns protocolAddr|pendingUgnot|paidUgnot for UIs.
- OID
- 087ba8…2057:73
FeeInfo details
PadAddress
func() stringPadAddress returns this pad realm's bech32 package address (fund WUGNOT here).
- OID
- 087ba8…2057:74
PadAddress details
AdminInfo
func() stringAdminInfo is a single-line dashboard snapshot for the ops UI: protocolAddr|pendingFees|paidFees|reservedUgnot|launchCount|pointsOn|inited|padAddr pointsOn/inited are 0|1.
- OID
- 087ba8…2057:75
AdminInfo details
IsProtocol
func(addr string) boolIsProtocol reports whether addr is the current treasury (for UI gating).
- OID
- 087ba8…2057:76
IsProtocol details
reservedUgnot
func() int64reservedUgnot is ugnot the pad must keep to honor user/creator liabilities and active markets (curve raised, internal CPMM, bonds, pending fees).
- OID
- 087ba8…2057:77
reservedUgnot details
ReservedUgnot
func() int64ReservedUgnot is ugnot the pad must keep for markets + pending claims.
- OID
- 087ba8…2057:78
ReservedUgnot details
freeUgnot
func() int64freeUgnot reports bank ugnot above reserved liabilities (0 if short/test).
- OID
- 087ba8…2057:79
freeUgnot details
WithdrawProtocolUgnot
func(amount int64) int64WithdrawProtocolUgnot lets the treasury pull free ugnot from the pad bank (e.g. raised backlog after Gnoswap list, to re-wrap as WUGNOT inventory). Capped by free balance; panics if amount > free.
- OID
- 087ba8…2057:80
WithdrawProtocolUgnot details
BalanceOf
func(id string, owner .uverse.address) int64- OID
- 087ba8…2057:81
BalanceOf details
ListBuyers
func(id string) stringListBuyers returns unique buyer addresses (one per line), capped for query size. Only addresses that bought at least once on this pad (UniqueBuyers). Not full GRC20 holders who received tokens via transfer.
- OID
- 087ba8…2057:82
ListBuyers details
GetStatus
func(id string) int- OID
- 087ba8…2057:83
GetStatus details
GetRaised
func(id string) int64- OID
- 087ba8…2057:84
GetRaised details
GetPool
func(id string) (ugnot int64, token int64)- OID
- 087ba8…2057:85
GetPool details
GetCreatorFees
func(id string) int64- OID
- 087ba8…2057:86
GetCreatorFees details
ProtocolFees
func() int64- OID
- 087ba8…2057:87
ProtocolFees details
LaunchCount
func() int- OID
- 087ba8…2057:88
LaunchCount details
ResolveSymbol
func(symbol string) string- OID
- 087ba8…2057:89
ResolveSymbol details
ListIDs
func() stringListIDs returns newline-separated launch IDs (sorted by AVL key / creation order).
- OID
- 087ba8…2057:90
ListIDs details
LaunchInfo
func(id string) stringLaunchInfo returns a single-line pipe-delimited summary for UIs/indexers: id|name|symbol|status|raised|sold|buyers|creatorFees|poolUgnot|poolToken|uri|creator|virtualUgnot|virtualToken|created|tokenID|gnoswapReady|gnoswapListed|gnoswapPoolPath status: 0=curve 1=graduated; gnoswapReady/listed: 0|1
- OID
- 087ba8…2057:91
LaunchInfo details
ParamsInfo
func() stringParamsInfo returns parameters for UI display. total|curve|poolSeed|gradThreshold|feeBps|createBond createBond is live from bond realm when not in unit-test mode.
- OID
- 087ba8…2057:92
ParamsInfo details
TradeHistory
func(id string) stringTradeHistory returns newline-separated chart points: height|side|ugnot|tokens|priceScaled side: 0=buy 1=sell 2=open/graduate. Ordered oldest → newest.
- OID
- 087ba8…2057:93
TradeHistory details
TradeCount
func(id string) intTradeCount returns number of stored chart samples for a launch.
- OID
- 087ba8…2057:94
TradeCount details
resetForTest
func()resetForTest clears package state between unit tests.
- OID
- 087ba8…2057:95
resetForTest details
TotalSupply
int64Value
1000000000
CurveSupply
int64// sold on bonding curve
Value
800000000
PoolSeed
int64Value
200000000
VirtualUgnot0
int64// 30 GNOT virtual
Value
30000000
VirtualToken0
int64// virtual token side
Value
1020000000
GraduationThreshold
int64Value
100000000
FeeBPS
int64Value
120
CreatorFeeShareBPS
int64Value
4000
ProtocolFeeShareBPS
int64Value
4000
CreateBondUgnot
int64Value
2000000
BondRefundBuyers
intValue
5
BondRefundMinRaised
int64// ≥5 GNOT raised
Value
10000000
BondRefundMaxHeights
int64Value
100000
AntiSnipeHeights
int64Value
30
AntiSnipeMaxBuyBPS
int64// 5% per address in window
Value
300
StatusCurve
untyped bigintValue
(0 <untyped> bigint)
StatusGraduated
untyped bigintValue
(1 <untyped> bigint)
MaxTradeHistory
untyped bigintValue
(256 <untyped> bigint)
TradeSideBuy
untyped bigintValue
(0 <untyped> bigint)
TradeSideSell
untyped bigintValue
(1 <untyped> bigint)
TradeSideOpen
untyped bigint// initial listing mark
Value
(2 <untyped> bigint)
DenomUgnot
untyped stringValue
"ugnot"
GnoswapFeeTier
uint32// 0.3% meme tier
Value
3000
GnoswapTickSpacing
int32Value
60
GnoswapMinTick
int32Value
-887272
GnoswapMaxTick
int32Value
887272
GnoswapMaxFeeWugnot
int64// 5000 GNOT
Value
5000000000
Render
func(path string) stringRender provides on-chain discovery (gnoweb). Read-only by convention. Paths: "" — home / list token/{id} — launch detail help — API help
- OID
- 087ba8…2057:96
Render details
sanitize
func(s string) string- OID
- 087ba8…2057:98
sanitize details
renderHome
func() string- OID
- 087ba8…2057:99
renderHome details
renderToken
func(id string) string- OID
- 087ba8…2057:100
renderToken details
progressBar
func(pct int64) string- OID
- 087ba8…2057:101
progressBar details
renderHelp
func() string- OID
- 087ba8…2057:102