Source on GitHub

QUtil

Idx 04·Since e210·10 ABI versions
EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVWRF
13Procedures
9Functions
4Structs
10ABI Versions

Current ABI

e210Open Snapshot →

Procedures

13State-changing
procSendToManyV1#1
in 40Bout 4B
input2 fields · 40B
nametypeoffsetbyteslayout
dst0id032
amt0sint64328
output1 field · 4B
nametypeoffsetbyteslayout
returnCodesint3204
procBurnQubic#2
in 8Bout 8B
input1 field · 8B
nametypeoffsetbyteslayout
amountsint6408
output1 field · 8B
nametypeoffsetbyteslayout
amountsint6408
procSendToManyBenchmark#3
in 16Bout 20B
input2 fields · 16B
nametypeoffsetbyteslayout
dstCountsint6408
numTransfersEachsint6488
output3 fields · 20B
nametypeoffsetbyteslayout
dstCountsint6408
returnCodesint3284
totalsint64128
procCreatePoll#4
in 952Bout 8B
input6 fields · 952B
nametypeoffsetbyteslayout
poll_nameid032
poll_typeuint64328
min_amountuint64408
github_linkuint8[256]48256
allowed_assetsAsset[16]304640
num_assetsuint649448
output1 field · 8B
nametypeoffsetbyteslayout
poll_iduint6408
procVote#5
in 56Bout 1B
input4 fields · 56B
nametypeoffsetbyteslayout
poll_iduint6408
addressid832
amountuint64408
chosen_optionuint64488
output1 field · 1B
nametypeoffsetbyteslayout
successuint801
procCancelPoll#6
in 8Bout 1B
input1 field · 8B
nametypeoffsetbyteslayout
poll_iduint6408
output1 field · 1B
nametypeoffsetbyteslayout
successuint801
procDistributeQuToShareholders#7
in 40Bout 32B
input1 field · 40B
nametypeoffsetbyteslayout
assetAsset040
output4 fields · 32B
nametypeoffsetbyteslayout
shareholderssint6408
totalSharessint6488
amountPerSharesint64168
feessint64248
procBurnQubicForContract#8
in 4Bout 8B
input1 field · 4B
nametypeoffsetbyteslayout
contractIndexBurnedForuint3204
output1 field · 8B
nametypeoffsetbyteslayout
amountsint6408
procTransferSharesToManyV1#9
in 80Bout 4B
input4 fields · 80B
nametypeoffsetbyteslayout
issuerid032
assetNameuint64328
dst0id4032
amt0sint64728
output1 field · 4B
nametypeoffsetbyteslayout
returnCodesint3204
procTransferSharesManagementRights#10
in 52Bout 8B
input3 fields · 52B
nametypeoffsetbyteslayout
assetAsset040
numberOfSharessint64408
newManagingContractIndexuint32484
output1 field · 8B
nametypeoffsetbyteslayout
transferredNumberOfSharessint6408
procQueryPriceOracle#100
in 108Bout 8B
input2 fields · 108B
nametypeoffsetbyteslayout
priceOracleQueryOI::Price::OracleQuery0104
timeoutMillisecondsuint321044
output1 field · 8B
nametypeoffsetbyteslayout
oracleQueryIdsint6408
procSubscribePriceOracle#101
in 109Bout 4B
input3 fields · 109B
nametypeoffsetbyteslayout
priceOracleQueryOI::Price::OracleQuery0104
subscriptionPeriodMillisecondsuint321044
notifyPreviousValueuint81081
output1 field · 4B
nametypeoffsetbyteslayout
oracleSubscriptionIdsint3204
procUnsubscribeOracle#102
in 4Bout 1B
input1 field · 4B
nametypeoffsetbyteslayout
subscriptionIdsint3204
output1 field · 1B
nametypeoffsetbyteslayout
successuint801

Functions

9Read-only
funcGetSendToManyV1Fee#1
in 0Bout 8B
output1 field · 8B
nametypeoffsetbyteslayout
feesint6408
funcGetTotalNumberOfAssetShares#2
in 40Bout 8B
input2 fields · 40B
nametypeoffsetbyteslayout
issuerid032
assetNameuint64328
output1 field · 8B
nametypeoffsetbyteslayout
valuesint6408
funcGetCurrentResult#3
in 8Bout 1032B
input1 field · 8B
nametypeoffsetbyteslayout
poll_iduint6408
output3 fields · 1032B
nametypeoffsetbyteslayout
resultuint64[64]0512
voter_countuint64[64]512512
is_activeuint6410248
funcGetPollsByCreator#4
in 32Bout 520B
input1 field · 32B
nametypeoffsetbyteslayout
creatorid032
output2 fields · 520B
nametypeoffsetbyteslayout
poll_idsuint64[64]0512
countuint645128
funcGetCurrentPollId#5
in 0Bout 528B
output3 fields · 528B
nametypeoffsetbyteslayout
current_poll_iduint6408
active_poll_idsuint64[64]8512
active_countuint645208
funcGetPollInfo#6
in 8Bout 1000B
input1 field · 8B
nametypeoffsetbyteslayout
poll_iduint6408
output3 fields · 1000B
nametypeoffsetbyteslayout
founduint6408
poll_infoPoll8736
poll_linkuint8[256]744256
funcGetFees#7
in 0Bout 88B
output11 fields · 88B
nametypeoffsetbyteslayout
smt1InvocationFeesint6408
pollCreationFeesint6488
pollVoteFeesint64168
distributeQuToShareholderFeePerShareholdersint64248
shareholderProposalFeesint64328
_futureFeePlaceholder0sint64408
_futureFeePlaceholder1sint64488
_futureFeePlaceholder2sint64568
_futureFeePlaceholder3sint64648
_futureFeePlaceholder4sint64728
_futureFeePlaceholder5sint64808
funcQueryFeeReserve#8
in 4Bout 8B
input1 field · 4B
nametypeoffsetbyteslayout
contractIndexuint3204
output1 field · 8B
nametypeoffsetbyteslayout
reserveAmountsint6408
funcGetBalances16#9
in 512Bout 128B
input1 field · 512B
nametypeoffsetbyteslayout
publicKeysid[16]0512
output1 field · 128B
nametypeoffsetbyteslayout
balancessint64[16]0128

Structs

4Shared types
structAsset
40B2 fields
fields
nametypeoffsetbyteslayout
issuerid032
assetNameuint64328
structOI::Price::OracleQuery
104B4 fields
fields
nametypeoffsetbyteslayout
oracleid032
timestampDateAndTime328
currency1id4032
currency2id7232
structPoll
736B7 fields
fields
nametypeoffsetbyteslayout
poll_nameid032
poll_typeuint64328
min_amountuint64408
is_activeuint64488
creatorid5632
allowed_assetsAsset[16]88640
num_assetsuint647288
structDateAndTime
8B1 field
fields
nametypeoffsetbyteslayout
valueuint6408

Raw JSON

/v1/contracts/4
contracts/4.json
{
  "contractIndex": 4,
  "contractName": "QUtil",
  "contractAddress": "EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVWRF",
  "epoch": 210,
  "coreVersion": "v1.288.0",
  "structs": {
    "Asset": {
      "name": "Asset",
      "byteLength": 40,
      "fields": [
        {
          "name": "issuer",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "assetName",
          "type": "uint64",
          "offset": 32,
          "byteLength": 8
        }
      ]
    },
    "OI::Price::OracleQuery": {
      "name": "OI::Price::OracleQuery",
      "byteLength": 104,
      "fields": [
        {
          "name": "oracle",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "timestamp",
          "type": "struct",
          "offset": 32,
          "byteLength": 8,
          "structRef": "DateAndTime"
        },
        {
          "name": "currency1",
          "type": "id",
          "offset": 40,
          "byteLength": 32
        },
        {
          "name": "currency2",
          "type": "id",
          "offset": 72,
          "byteLength": 32
        }
      ]
    },
    "Poll": {
      "name": "Poll",
      "fields": [
        {
          "name": "poll_name",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "poll_type",
          "type": "uint64",
          "offset": 32,
          "byteLength": 8
        },
        {
          "name": "min_amount",
          "type": "uint64",
          "offset": 40,
          "byteLength": 8
        },
        {
          "name": "is_active",
          "type": "uint64",
          "offset": 48,
          "byteLength": 8
        },
        {
          "name": "creator",
          "type": "id",
          "offset": 56,
          "byteLength": 32
        },
        {
          "name": "allowed_assets",
          "type": "array",
          "offset": 88,
          "byteLength": 640,
          "arrayLength": 16,
          "arrayItemStructRef": "Asset",
          "arrayItemByteLength": 40
        },
        {
          "name": "num_assets",
          "type": "uint64",
          "offset": 728,
          "byteLength": 8
        }
      ],
      "byteLength": 736
    },
    "DateAndTime": {
      "name": "DateAndTime",
      "byteLength": 8,
      "fields": [
        {
          "name": "value",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        }
      ]
    }
  },
  "procedures": [
    {
      "kind": "procedure",
      "inputType": 1,
      "name": "SendToManyV1",
      "inputFields": [
        {
          "name": "dst0",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "amt0",
          "type": "sint64",
          "offset": 32,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "returnCode",
          "type": "sint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "inputSize": 40,
      "outputSize": 4
    },
    {
      "kind": "procedure",
      "inputType": 2,
      "name": "BurnQubic",
      "inputFields": [
        {
          "name": "amount",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "amount",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 8,
      "outputSize": 8
    },
    {
      "kind": "procedure",
      "inputType": 3,
      "name": "SendToManyBenchmark",
      "inputFields": [
        {
          "name": "dstCount",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "numTransfersEach",
          "type": "sint64",
          "offset": 8,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "dstCount",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "returnCode",
          "type": "sint32",
          "offset": 8,
          "byteLength": 4
        },
        {
          "name": "total",
          "type": "sint64",
          "offset": 12,
          "byteLength": 8
        }
      ],
      "inputSize": 16,
      "outputSize": 20
    },
    {
      "kind": "procedure",
      "inputType": 4,
      "name": "CreatePoll",
      "inputFields": [
        {
          "name": "poll_name",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "poll_type",
          "type": "uint64",
          "offset": 32,
          "byteLength": 8
        },
        {
          "name": "min_amount",
          "type": "uint64",
          "offset": 40,
          "byteLength": 8
        },
        {
          "name": "github_link",
          "type": "array",
          "offset": 48,
          "byteLength": 256,
          "arrayLength": 256,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "allowed_assets",
          "type": "array",
          "offset": 304,
          "byteLength": 640,
          "arrayLength": 16,
          "arrayItemStructRef": "Asset",
          "arrayItemByteLength": 40
        },
        {
          "name": "num_assets",
          "type": "uint64",
          "offset": 944,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "poll_id",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 952,
      "outputSize": 8
    },
    {
      "kind": "procedure",
      "inputType": 5,
      "name": "Vote",
      "inputFields": [
        {
          "name": "poll_id",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "address",
          "type": "id",
          "offset": 8,
          "byteLength": 32
        },
        {
          "name": "amount",
          "type": "uint64",
          "offset": 40,
          "byteLength": 8
        },
        {
          "name": "chosen_option",
          "type": "uint64",
          "offset": 48,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "success",
          "type": "uint8",
          "offset": 0,
          "byteLength": 1
        }
      ],
      "inputSize": 56,
      "outputSize": 1
    },
    {
      "kind": "procedure",
      "inputType": 6,
      "name": "CancelPoll",
      "inputFields": [
        {
          "name": "poll_id",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "success",
          "type": "uint8",
          "offset": 0,
          "byteLength": 1
        }
      ],
      "inputSize": 8,
      "outputSize": 1
    },
    {
      "kind": "procedure",
      "inputType": 7,
      "name": "DistributeQuToShareholders",
      "inputFields": [
        {
          "name": "asset",
          "type": "struct",
          "offset": 0,
          "byteLength": 40,
          "structRef": "Asset"
        }
      ],
      "outputFields": [
        {
          "name": "shareholders",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "totalShares",
          "type": "sint64",
          "offset": 8,
          "byteLength": 8
        },
        {
          "name": "amountPerShare",
          "type": "sint64",
          "offset": 16,
          "byteLength": 8
        },
        {
          "name": "fees",
          "type": "sint64",
          "offset": 24,
          "byteLength": 8
        }
      ],
      "inputSize": 40,
      "outputSize": 32
    },
    {
      "kind": "procedure",
      "inputType": 8,
      "name": "BurnQubicForContract",
      "inputFields": [
        {
          "name": "contractIndexBurnedFor",
          "type": "uint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "amount",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 4,
      "outputSize": 8
    },
    {
      "kind": "procedure",
      "inputType": 9,
      "name": "TransferSharesToManyV1",
      "inputFields": [
        {
          "name": "issuer",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "assetName",
          "type": "uint64",
          "offset": 32,
          "byteLength": 8
        },
        {
          "name": "dst0",
          "type": "id",
          "offset": 40,
          "byteLength": 32
        },
        {
          "name": "amt0",
          "type": "sint64",
          "offset": 72,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "returnCode",
          "type": "sint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "inputSize": 80,
      "outputSize": 4
    },
    {
      "kind": "procedure",
      "inputType": 10,
      "name": "TransferSharesManagementRights",
      "inputFields": [
        {
          "name": "asset",
          "type": "struct",
          "offset": 0,
          "byteLength": 40,
          "structRef": "Asset"
        },
        {
          "name": "numberOfShares",
          "type": "sint64",
          "offset": 40,
          "byteLength": 8
        },
        {
          "name": "newManagingContractIndex",
          "type": "uint32",
          "offset": 48,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "transferredNumberOfShares",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 52,
      "outputSize": 8
    },
    {
      "kind": "procedure",
      "inputType": 100,
      "name": "QueryPriceOracle",
      "inputFields": [
        {
          "name": "priceOracleQuery",
          "type": "struct",
          "offset": 0,
          "byteLength": 104,
          "structRef": "OI::Price::OracleQuery"
        },
        {
          "name": "timeoutMilliseconds",
          "type": "uint32",
          "offset": 104,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "oracleQueryId",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 108,
      "outputSize": 8
    },
    {
      "kind": "procedure",
      "inputType": 101,
      "name": "SubscribePriceOracle",
      "inputFields": [
        {
          "name": "priceOracleQuery",
          "type": "struct",
          "offset": 0,
          "byteLength": 104,
          "structRef": "OI::Price::OracleQuery"
        },
        {
          "name": "subscriptionPeriodMilliseconds",
          "type": "uint32",
          "offset": 104,
          "byteLength": 4
        },
        {
          "name": "notifyPreviousValue",
          "type": "uint8",
          "offset": 108,
          "byteLength": 1
        }
      ],
      "outputFields": [
        {
          "name": "oracleSubscriptionId",
          "type": "sint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "inputSize": 109,
      "outputSize": 4
    },
    {
      "kind": "procedure",
      "inputType": 102,
      "name": "UnsubscribeOracle",
      "inputFields": [
        {
          "name": "subscriptionId",
          "type": "sint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "success",
          "type": "uint8",
          "offset": 0,
          "byteLength": 1
        }
      ],
      "inputSize": 4,
      "outputSize": 1
    }
  ],
  "functions": [
    {
      "kind": "function",
      "inputType": 1,
      "name": "GetSendToManyV1Fee",
      "inputFields": [],
      "outputFields": [
        {
          "name": "fee",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 0,
      "outputSize": 8
    },
    {
      "kind": "function",
      "inputType": 2,
      "name": "GetTotalNumberOfAssetShares",
      "inputFields": [
        {
          "name": "issuer",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "assetName",
          "type": "uint64",
          "offset": 32,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "value",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 40,
      "outputSize": 8
    },
    {
      "kind": "function",
      "inputType": 3,
      "name": "GetCurrentResult",
      "inputFields": [
        {
          "name": "poll_id",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "result",
          "type": "array",
          "offset": 0,
          "byteLength": 512,
          "arrayLength": 64,
          "arrayItemType": "uint64",
          "arrayItemByteLength": 8
        },
        {
          "name": "voter_count",
          "type": "array",
          "offset": 512,
          "byteLength": 512,
          "arrayLength": 64,
          "arrayItemType": "uint64",
          "arrayItemByteLength": 8
        },
        {
          "name": "is_active",
          "type": "uint64",
          "offset": 1024,
          "byteLength": 8
        }
      ],
      "inputSize": 8,
      "outputSize": 1032
    },
    {
      "kind": "function",
      "inputType": 4,
      "name": "GetPollsByCreator",
      "inputFields": [
        {
          "name": "creator",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        }
      ],
      "outputFields": [
        {
          "name": "poll_ids",
          "type": "array",
          "offset": 0,
          "byteLength": 512,
          "arrayLength": 64,
          "arrayItemType": "uint64",
          "arrayItemByteLength": 8
        },
        {
          "name": "count",
          "type": "uint64",
          "offset": 512,
          "byteLength": 8
        }
      ],
      "inputSize": 32,
      "outputSize": 520
    },
    {
      "kind": "function",
      "inputType": 5,
      "name": "GetCurrentPollId",
      "inputFields": [],
      "outputFields": [
        {
          "name": "current_poll_id",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "active_poll_ids",
          "type": "array",
          "offset": 8,
          "byteLength": 512,
          "arrayLength": 64,
          "arrayItemType": "uint64",
          "arrayItemByteLength": 8
        },
        {
          "name": "active_count",
          "type": "uint64",
          "offset": 520,
          "byteLength": 8
        }
      ],
      "inputSize": 0,
      "outputSize": 528
    },
    {
      "kind": "function",
      "inputType": 6,
      "name": "GetPollInfo",
      "inputFields": [
        {
          "name": "poll_id",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "found",
          "type": "uint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "poll_info",
          "type": "struct",
          "offset": 8,
          "byteLength": 736,
          "structRef": "Poll"
        },
        {
          "name": "poll_link",
          "type": "array",
          "offset": 744,
          "byteLength": 256,
          "arrayLength": 256,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        }
      ],
      "inputSize": 8,
      "outputSize": 1000
    },
    {
      "kind": "function",
      "inputType": 7,
      "name": "GetFees",
      "inputFields": [],
      "outputFields": [
        {
          "name": "smt1InvocationFee",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        },
        {
          "name": "pollCreationFee",
          "type": "sint64",
          "offset": 8,
          "byteLength": 8
        },
        {
          "name": "pollVoteFee",
          "type": "sint64",
          "offset": 16,
          "byteLength": 8
        },
        {
          "name": "distributeQuToShareholderFeePerShareholder",
          "type": "sint64",
          "offset": 24,
          "byteLength": 8
        },
        {
          "name": "shareholderProposalFee",
          "type": "sint64",
          "offset": 32,
          "byteLength": 8
        },
        {
          "name": "_futureFeePlaceholder0",
          "type": "sint64",
          "offset": 40,
          "byteLength": 8
        },
        {
          "name": "_futureFeePlaceholder1",
          "type": "sint64",
          "offset": 48,
          "byteLength": 8
        },
        {
          "name": "_futureFeePlaceholder2",
          "type": "sint64",
          "offset": 56,
          "byteLength": 8
        },
        {
          "name": "_futureFeePlaceholder3",
          "type": "sint64",
          "offset": 64,
          "byteLength": 8
        },
        {
          "name": "_futureFeePlaceholder4",
          "type": "sint64",
          "offset": 72,
          "byteLength": 8
        },
        {
          "name": "_futureFeePlaceholder5",
          "type": "sint64",
          "offset": 80,
          "byteLength": 8
        }
      ],
      "inputSize": 0,
      "outputSize": 88
    },
    {
      "kind": "function",
      "inputType": 8,
      "name": "QueryFeeReserve",
      "inputFields": [
        {
          "name": "contractIndex",
          "type": "uint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "reserveAmount",
          "type": "sint64",
          "offset": 0,
          "byteLength": 8
        }
      ],
      "inputSize": 4,
      "outputSize": 8
    },
    {
      "kind": "function",
      "inputType": 9,
      "name": "GetBalances16",
      "inputFields": [
        {
          "name": "publicKeys",
          "type": "array",
          "offset": 0,
          "byteLength": 512,
          "arrayLength": 16,
          "arrayItemType": "id",
          "arrayItemByteLength": 32
        }
      ],
      "outputFields": [
        {
          "name": "balances",
          "type": "array",
          "offset": 0,
          "byteLength": 128,
          "arrayLength": 16,
          "arrayItemType": "sint64",
          "arrayItemByteLength": 8
        }
      ],
      "inputSize": 512,
      "outputSize": 128
    }
  ],
  "effectiveFromEpoch": 210,
  "effectiveToEpoch": null
}