Source on GitHub

Qearn

Idx 09·Since e144·3 ABI versions
JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVKHO
2Procedures
8Functions
0Structs
3ABI Versions

Current ABI

e144Open Snapshot →

Procedures

2State-changing
proclock#1
in 0Bout 4B
output1 field · 4B
nametypeoffsetbyteslayout
returnCodesint3204
procunlock#2
in 12Bout 4B
input2 fields · 12B
nametypeoffsetbyteslayout
amountuint6408
lockedEpochuint3284
output1 field · 4B
nametypeoffsetbyteslayout
returnCodesint3204

Functions

8Read-only
funcgetLockInfoPerEpoch#1
in 4Bout 40B
input1 field · 4B
nametypeoffsetbyteslayout
Epochuint3204
output5 fields · 40B
nametypeoffsetbyteslayout
lockedAmountuint6408
bonusAmountuint6488
currentLockedAmountuint64168
currentBonusAmountuint64248
yielduint64328
funcgetUserLockedInfo#2
in 36Bout 8B
input2 fields · 36B
nametypeoffsetbyteslayout
userid032
epochuint32324
output1 field · 8B
nametypeoffsetbyteslayout
lockedAmountuint6408
funcgetStateOfRound#3
in 4Bout 4B
input1 field · 4B
nametypeoffsetbyteslayout
epochuint3204
output1 field · 4B
nametypeoffsetbyteslayout
stateuint3204
funcgetUserLockStatus#4
in 32Bout 8B
input1 field · 32B
nametypeoffsetbyteslayout
userid032
output1 field · 8B
nametypeoffsetbyteslayout
statusuint6408
funcgetEndedStatus#5
in 32Bout 32B
input1 field · 32B
nametypeoffsetbyteslayout
userid032
output4 fields · 32B
nametypeoffsetbyteslayout
fullyUnlockedAmountuint6408
fullyRewardedAmountuint6488
earlyUnlockedAmountuint64168
earlyRewardedAmountuint64248
funcgetStatsPerEpoch#6
in 4Bout 32B
input1 field · 4B
nametypeoffsetbyteslayout
epochuint3204
output4 fields · 32B
nametypeoffsetbyteslayout
earlyUnlockedAmountuint6408
earlyUnlockedPercentuint6488
totalLockedAmountuint64168
averageAPYuint64248
funcgetBurnedAndBoostedStats#7
in 0Bout 48B
output6 fields · 48B
nametypeoffsetbyteslayout
burnedAmountuint6408
averageBurnedPercentuint6488
boostedAmountuint64168
averageBoostedPercentuint64248
rewardedAmountuint64328
averageRewardedPercentuint64408
funcgetBurnedAndBoostedStatsPerEpoch#8
in 4Bout 48B
input1 field · 4B
nametypeoffsetbyteslayout
epochuint3204
output6 fields · 48B
nametypeoffsetbyteslayout
burnedAmountuint6408
burnedPercentuint6488
boostedAmountuint64168
boostedPercentuint64248
rewardedAmountuint64328
rewardedPercentuint64408

Raw JSON

/v1/contracts/9
contracts/9.json
{
  "contractIndex": 9,
  "contractName": "Qearn",
  "contractAddress": "JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVKHO",
  "epoch": 144,
  "coreVersion": "v1.232.0",
  "structs": {},
  "procedures": [
    {
      "kind": "procedure",
      "inputType": 1,
      "name": "lock",
      "inputFields": [],
      "outputFields": [
        {
          "name": "returnCode",
          "type": "sint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "inputSize": 0,
      "outputSize": 4
    },
    {
      "kind": "procedure",
      "inputType": 2,
      "name": "unlock",
      "inputFields": [
        {
          "name": "amount",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "lockedEpoch",
          "type": "uint32",
          "offset": 8,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "returnCode",
          "type": "sint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "inputSize": 12,
      "outputSize": 4
    }
  ],
  "functions": [
    {
      "kind": "function",
      "inputType": 1,
      "name": "getLockInfoPerEpoch",
      "inputFields": [
        {
          "name": "Epoch",
          "type": "uint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "lockedAmount",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "bonusAmount",
          "type": "uint64",
          "offset": 8,
          "byteLength": 8
        },
        {
          "name": "currentLockedAmount",
          "type": "uint64",
          "offset": 16,
          "byteLength": 8
        },
        {
          "name": "currentBonusAmount",
          "type": "uint64",
          "offset": 24,
          "byteLength": 8
        },
        {
          "name": "yield",
          "type": "uint64",
          "offset": 32,
          "byteLength": 8
        }
      ],
      "inputSize": 4,
      "outputSize": 40
    },
    {
      "kind": "function",
      "inputType": 2,
      "name": "getUserLockedInfo",
      "inputFields": [
        {
          "name": "user",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "epoch",
          "type": "uint32",
          "offset": 32,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "lockedAmount",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 36,
      "outputSize": 8
    },
    {
      "kind": "function",
      "inputType": 3,
      "name": "getStateOfRound",
      "inputFields": [
        {
          "name": "epoch",
          "type": "uint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "state",
          "type": "uint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "inputSize": 4,
      "outputSize": 4
    },
    {
      "kind": "function",
      "inputType": 4,
      "name": "getUserLockStatus",
      "inputFields": [
        {
          "name": "user",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        }
      ],
      "outputFields": [
        {
          "name": "status",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 32,
      "outputSize": 8
    },
    {
      "kind": "function",
      "inputType": 5,
      "name": "getEndedStatus",
      "inputFields": [
        {
          "name": "user",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        }
      ],
      "outputFields": [
        {
          "name": "fullyUnlockedAmount",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "fullyRewardedAmount",
          "type": "uint64",
          "offset": 8,
          "byteLength": 8
        },
        {
          "name": "earlyUnlockedAmount",
          "type": "uint64",
          "offset": 16,
          "byteLength": 8
        },
        {
          "name": "earlyRewardedAmount",
          "type": "uint64",
          "offset": 24,
          "byteLength": 8
        }
      ],
      "inputSize": 32,
      "outputSize": 32
    },
    {
      "kind": "function",
      "inputType": 6,
      "name": "getStatsPerEpoch",
      "inputFields": [
        {
          "name": "epoch",
          "type": "uint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "earlyUnlockedAmount",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "earlyUnlockedPercent",
          "type": "uint64",
          "offset": 8,
          "byteLength": 8
        },
        {
          "name": "totalLockedAmount",
          "type": "uint64",
          "offset": 16,
          "byteLength": 8
        },
        {
          "name": "averageAPY",
          "type": "uint64",
          "offset": 24,
          "byteLength": 8
        }
      ],
      "inputSize": 4,
      "outputSize": 32
    },
    {
      "kind": "function",
      "inputType": 7,
      "name": "getBurnedAndBoostedStats",
      "inputFields": [],
      "outputFields": [
        {
          "name": "burnedAmount",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "averageBurnedPercent",
          "type": "uint64",
          "offset": 8,
          "byteLength": 8
        },
        {
          "name": "boostedAmount",
          "type": "uint64",
          "offset": 16,
          "byteLength": 8
        },
        {
          "name": "averageBoostedPercent",
          "type": "uint64",
          "offset": 24,
          "byteLength": 8
        },
        {
          "name": "rewardedAmount",
          "type": "uint64",
          "offset": 32,
          "byteLength": 8
        },
        {
          "name": "averageRewardedPercent",
          "type": "uint64",
          "offset": 40,
          "byteLength": 8
        }
      ],
      "inputSize": 0,
      "outputSize": 48
    },
    {
      "kind": "function",
      "inputType": 8,
      "name": "getBurnedAndBoostedStatsPerEpoch",
      "inputFields": [
        {
          "name": "epoch",
          "type": "uint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "burnedAmount",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "burnedPercent",
          "type": "uint64",
          "offset": 8,
          "byteLength": 8
        },
        {
          "name": "boostedAmount",
          "type": "uint64",
          "offset": 16,
          "byteLength": 8
        },
        {
          "name": "boostedPercent",
          "type": "uint64",
          "offset": 24,
          "byteLength": 8
        },
        {
          "name": "rewardedAmount",
          "type": "uint64",
          "offset": 32,
          "byteLength": 8
        },
        {
          "name": "rewardedPercent",
          "type": "uint64",
          "offset": 40,
          "byteLength": 8
        }
      ],
      "inputSize": 4,
      "outputSize": 48
    }
  ],
  "effectiveFromEpoch": 144,
  "effectiveToEpoch": null
}