Source on GitHub

ComputorControlledFund

Idx 08·Since e192·5 ABI versions
IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABXSH
2Procedures
7Functions
7Structs
5ABI Versions

Current ABI

e192Open Snapshot →

Procedures

2State-changing
procSetProposal#1
in 324Bout 2B
input7 fields · 324B
nametypeoffsetbyteslayout
proposalProposalDataT0304
isSubscriptionuint83041
weeksPerPerioduint83051
_padding0uint8[2]3062
startEpochuint323084
amountPerPerioduint643128
numberOfPeriodsuint323204
output1 field · 2B
nametypeoffsetbyteslayout
proposalIndexuint1602
procVote#2
in 16Bout 1B
input4 fields · 16B
nametypeoffsetbyteslayout
proposalIndexuint1602
proposalTypeuint1622
proposalTickuint3244
voteValuesint6488
output1 field · 1B
nametypeoffsetbyteslayout
okayuint801

Functions

7Read-only
funcGetProposalIndices#1
in 5Bout 130B
input2 fields · 5B
nametypeoffsetbyteslayout
activeProposalsuint801
prevProposalIndexsint3214
output2 fields · 130B
nametypeoffsetbyteslayout
numOfIndicesuint1602
indicesuint16[64]2128
funcGetProposal#2
in 34Bout 996B
input2 fields · 34B
nametypeoffsetbyteslayout
subscriptionDestinationid032
proposalIndexuint16322
output9 fields · 996B
nametypeoffsetbyteslayout
okayuint801
hasSubscriptionProposaluint811
hasActiveSubscriptionuint821
_padding0uint8[1]31
_padding1uint8[4]44
proposerPublicKeyid832
proposalProposalDataT40304
subscriptionSubscriptionData344312
subscriptionProposalSubscriptionProposalData656340
funcGetVote#3
in 34Bout 17B
input2 fields · 34B
nametypeoffsetbyteslayout
voterid032
proposalIndexuint16322
output2 fields · 17B
nametypeoffsetbyteslayout
okayuint801
voteProposalSingleVoteDataV1116
funcGetVotingResults#4
in 2Bout 49B
input1 field · 2B
nametypeoffsetbyteslayout
proposalIndexuint1602
output2 fields · 49B
nametypeoffsetbyteslayout
okayuint801
resultsProposalSummarizedVotingDataV1148
funcGetLatestTransfers#5
in 0Bout 38528B
output1 field · 38528B
nametypeoffsetbyteslayout
dataLatestTransfersEntry[128]038528
funcGetProposalFee#6
in 0Bout 4B
output1 field · 4B
nametypeoffsetbyteslayout
proposalFeeuint3204
funcGetRegularPayments#7
in 0Bout 39424B
output1 field · 39424B
nametypeoffsetbyteslayout
dataRegularPaymentEntry[128]039424

Structs

7Shared types
structProposalDataT
304B5 fields
fields
nametypeoffsetbyteslayout
urlbytes0256
epochuint162562
typeuint162582
tickuint322604
databytes26440
structSubscriptionData
312B9 fields
fields
nametypeoffsetbyteslayout
destinationid032
urluint8[256]32256
weeksPerPerioduint82881
_padding1uint8[1]2891
_padding2uint8[2]2902
numberOfPeriodsuint322924
amountPerPerioduint642968
startEpochuint323044
currentPeriodsint323084
structSubscriptionProposalData
340B9 fields
fields
nametypeoffsetbyteslayout
proposerIdid032
destinationid3232
urluint8[256]64256
weeksPerPerioduint83201
_padding0uint8[1]3211
_padding1uint8[2]3222
numberOfPeriodsuint323244
amountPerPerioduint643288
startEpochuint323364
structProposalSingleVoteDataV1
16B4 fields
fields
nametypeoffsetbyteslayout
proposalIndexuint1602
proposalTypeuint1622
proposalTickuint3244
voteValuesint6488
structProposalSummarizedVotingDataV1
48B6 fields
fields
nametypeoffsetbyteslayout
proposalIndexuint1602
optionCountuint1622
proposalTickuint3244
totalVotesAuthorizeduint3284
totalVotesCasteduint32124
optionVoteCountuint32[8]1632
structLatestTransfersEntry
301B5 fields
fields
nametypeoffsetbyteslayout
destinationid032
urluint8[256]32256
amountsint642888
tickuint322964
successuint83001
structRegularPaymentEntry
308B8 fields
fields
nametypeoffsetbyteslayout
destinationid032
urluint8[256]32256
amountsint642888
tickuint322964
periodIndexsint323004
successuint83041
_padding0uint8[1]3051
_padding1uint8[2]3062

Raw JSON

/v1/contracts/8
contracts/8.json
{
  "contractIndex": 8,
  "contractName": "ComputorControlledFund",
  "contractAddress": "IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABXSH",
  "epoch": 192,
  "coreVersion": "v1.272.0",
  "structs": {
    "ProposalDataT": {
      "name": "ProposalDataT",
      "byteLength": 304,
      "fields": [
        {
          "name": "url",
          "type": "bytes",
          "offset": 0,
          "byteLength": 256
        },
        {
          "name": "epoch",
          "type": "uint16",
          "offset": 256,
          "byteLength": 2
        },
        {
          "name": "type",
          "type": "uint16",
          "offset": 258,
          "byteLength": 2
        },
        {
          "name": "tick",
          "type": "uint32",
          "offset": 260,
          "byteLength": 4
        },
        {
          "name": "data",
          "type": "bytes",
          "offset": 264,
          "byteLength": 40
        }
      ]
    },
    "SubscriptionData": {
      "name": "SubscriptionData",
      "fields": [
        {
          "name": "destination",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "url",
          "type": "array",
          "offset": 32,
          "byteLength": 256,
          "arrayLength": 256,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "weeksPerPeriod",
          "type": "uint8",
          "offset": 288,
          "byteLength": 1
        },
        {
          "name": "_padding1",
          "type": "array",
          "offset": 289,
          "byteLength": 1,
          "arrayLength": 1,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "_padding2",
          "type": "array",
          "offset": 290,
          "byteLength": 2,
          "arrayLength": 2,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "numberOfPeriods",
          "type": "uint32",
          "offset": 292,
          "byteLength": 4
        },
        {
          "name": "amountPerPeriod",
          "type": "uint64",
          "offset": 296,
          "byteLength": 8
        },
        {
          "name": "startEpoch",
          "type": "uint32",
          "offset": 304,
          "byteLength": 4
        },
        {
          "name": "currentPeriod",
          "type": "sint32",
          "offset": 308,
          "byteLength": 4
        }
      ],
      "byteLength": 312
    },
    "SubscriptionProposalData": {
      "name": "SubscriptionProposalData",
      "fields": [
        {
          "name": "proposerId",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "destination",
          "type": "id",
          "offset": 32,
          "byteLength": 32
        },
        {
          "name": "url",
          "type": "array",
          "offset": 64,
          "byteLength": 256,
          "arrayLength": 256,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "weeksPerPeriod",
          "type": "uint8",
          "offset": 320,
          "byteLength": 1
        },
        {
          "name": "_padding0",
          "type": "array",
          "offset": 321,
          "byteLength": 1,
          "arrayLength": 1,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "_padding1",
          "type": "array",
          "offset": 322,
          "byteLength": 2,
          "arrayLength": 2,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "numberOfPeriods",
          "type": "uint32",
          "offset": 324,
          "byteLength": 4
        },
        {
          "name": "amountPerPeriod",
          "type": "uint64",
          "offset": 328,
          "byteLength": 8
        },
        {
          "name": "startEpoch",
          "type": "uint32",
          "offset": 336,
          "byteLength": 4
        }
      ],
      "byteLength": 340
    },
    "ProposalSingleVoteDataV1": {
      "name": "ProposalSingleVoteDataV1",
      "byteLength": 16,
      "fields": [
        {
          "name": "proposalIndex",
          "type": "uint16",
          "offset": 0,
          "byteLength": 2
        },
        {
          "name": "proposalType",
          "type": "uint16",
          "offset": 2,
          "byteLength": 2
        },
        {
          "name": "proposalTick",
          "type": "uint32",
          "offset": 4,
          "byteLength": 4
        },
        {
          "name": "voteValue",
          "type": "sint64",
          "offset": 8,
          "byteLength": 8
        }
      ]
    },
    "ProposalSummarizedVotingDataV1": {
      "name": "ProposalSummarizedVotingDataV1",
      "byteLength": 48,
      "fields": [
        {
          "name": "proposalIndex",
          "type": "uint16",
          "offset": 0,
          "byteLength": 2
        },
        {
          "name": "optionCount",
          "type": "uint16",
          "offset": 2,
          "byteLength": 2
        },
        {
          "name": "proposalTick",
          "type": "uint32",
          "offset": 4,
          "byteLength": 4
        },
        {
          "name": "totalVotesAuthorized",
          "type": "uint32",
          "offset": 8,
          "byteLength": 4
        },
        {
          "name": "totalVotesCasted",
          "type": "uint32",
          "offset": 12,
          "byteLength": 4
        },
        {
          "name": "optionVoteCount",
          "type": "array",
          "offset": 16,
          "byteLength": 32,
          "arrayLength": 8,
          "arrayItemType": "uint32",
          "arrayItemByteLength": 4
        }
      ]
    },
    "LatestTransfersEntry": {
      "name": "LatestTransfersEntry",
      "fields": [
        {
          "name": "destination",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "url",
          "type": "array",
          "offset": 32,
          "byteLength": 256,
          "arrayLength": 256,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "amount",
          "type": "sint64",
          "offset": 288,
          "byteLength": 8
        },
        {
          "name": "tick",
          "type": "uint32",
          "offset": 296,
          "byteLength": 4
        },
        {
          "name": "success",
          "type": "uint8",
          "offset": 300,
          "byteLength": 1
        }
      ],
      "byteLength": 301
    },
    "RegularPaymentEntry": {
      "name": "RegularPaymentEntry",
      "fields": [
        {
          "name": "destination",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "url",
          "type": "array",
          "offset": 32,
          "byteLength": 256,
          "arrayLength": 256,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "amount",
          "type": "sint64",
          "offset": 288,
          "byteLength": 8
        },
        {
          "name": "tick",
          "type": "uint32",
          "offset": 296,
          "byteLength": 4
        },
        {
          "name": "periodIndex",
          "type": "sint32",
          "offset": 300,
          "byteLength": 4
        },
        {
          "name": "success",
          "type": "uint8",
          "offset": 304,
          "byteLength": 1
        },
        {
          "name": "_padding0",
          "type": "array",
          "offset": 305,
          "byteLength": 1,
          "arrayLength": 1,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "_padding1",
          "type": "array",
          "offset": 306,
          "byteLength": 2,
          "arrayLength": 2,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        }
      ],
      "byteLength": 308
    }
  },
  "procedures": [
    {
      "kind": "procedure",
      "inputType": 1,
      "name": "SetProposal",
      "inputFields": [
        {
          "name": "proposal",
          "type": "struct",
          "offset": 0,
          "byteLength": 304,
          "structRef": "ProposalDataT"
        },
        {
          "name": "isSubscription",
          "type": "uint8",
          "offset": 304,
          "byteLength": 1
        },
        {
          "name": "weeksPerPeriod",
          "type": "uint8",
          "offset": 305,
          "byteLength": 1
        },
        {
          "name": "_padding0",
          "type": "array",
          "offset": 306,
          "byteLength": 2,
          "arrayLength": 2,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "startEpoch",
          "type": "uint32",
          "offset": 308,
          "byteLength": 4
        },
        {
          "name": "amountPerPeriod",
          "type": "uint64",
          "offset": 312,
          "byteLength": 8
        },
        {
          "name": "numberOfPeriods",
          "type": "uint32",
          "offset": 320,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "proposalIndex",
          "type": "uint16",
          "offset": 0,
          "byteLength": 2
        }
      ],
      "inputSize": 324,
      "outputSize": 2
    },
    {
      "kind": "procedure",
      "inputType": 2,
      "name": "Vote",
      "inputFields": [
        {
          "name": "proposalIndex",
          "type": "uint16",
          "offset": 0,
          "byteLength": 2
        },
        {
          "name": "proposalType",
          "type": "uint16",
          "offset": 2,
          "byteLength": 2
        },
        {
          "name": "proposalTick",
          "type": "uint32",
          "offset": 4,
          "byteLength": 4
        },
        {
          "name": "voteValue",
          "type": "sint64",
          "offset": 8,
          "byteLength": 8
        }
      ],
      "outputFields": [
        {
          "name": "okay",
          "type": "uint8",
          "offset": 0,
          "byteLength": 1
        }
      ],
      "inputSize": 16,
      "outputSize": 1
    }
  ],
  "functions": [
    {
      "kind": "function",
      "inputType": 1,
      "name": "GetProposalIndices",
      "inputFields": [
        {
          "name": "activeProposals",
          "type": "uint8",
          "offset": 0,
          "byteLength": 1
        },
        {
          "name": "prevProposalIndex",
          "type": "sint32",
          "offset": 1,
          "byteLength": 4
        }
      ],
      "outputFields": [
        {
          "name": "numOfIndices",
          "type": "uint16",
          "offset": 0,
          "byteLength": 2
        },
        {
          "name": "indices",
          "type": "array",
          "offset": 2,
          "byteLength": 128,
          "arrayLength": 64,
          "arrayItemType": "uint16",
          "arrayItemByteLength": 2
        }
      ],
      "inputSize": 5,
      "outputSize": 130
    },
    {
      "kind": "function",
      "inputType": 2,
      "name": "GetProposal",
      "inputFields": [
        {
          "name": "subscriptionDestination",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "proposalIndex",
          "type": "uint16",
          "offset": 32,
          "byteLength": 2
        }
      ],
      "outputFields": [
        {
          "name": "okay",
          "type": "uint8",
          "offset": 0,
          "byteLength": 1
        },
        {
          "name": "hasSubscriptionProposal",
          "type": "uint8",
          "offset": 1,
          "byteLength": 1
        },
        {
          "name": "hasActiveSubscription",
          "type": "uint8",
          "offset": 2,
          "byteLength": 1
        },
        {
          "name": "_padding0",
          "type": "array",
          "offset": 3,
          "byteLength": 1,
          "arrayLength": 1,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "_padding1",
          "type": "array",
          "offset": 4,
          "byteLength": 4,
          "arrayLength": 4,
          "arrayItemType": "uint8",
          "arrayItemByteLength": 1
        },
        {
          "name": "proposerPublicKey",
          "type": "id",
          "offset": 8,
          "byteLength": 32
        },
        {
          "name": "proposal",
          "type": "struct",
          "offset": 40,
          "byteLength": 304,
          "structRef": "ProposalDataT"
        },
        {
          "name": "subscription",
          "type": "struct",
          "offset": 344,
          "byteLength": 312,
          "structRef": "SubscriptionData"
        },
        {
          "name": "subscriptionProposal",
          "type": "struct",
          "offset": 656,
          "byteLength": 340,
          "structRef": "SubscriptionProposalData"
        }
      ],
      "inputSize": 34,
      "outputSize": 996
    },
    {
      "kind": "function",
      "inputType": 3,
      "name": "GetVote",
      "inputFields": [
        {
          "name": "voter",
          "type": "id",
          "offset": 0,
          "byteLength": 32
        },
        {
          "name": "proposalIndex",
          "type": "uint16",
          "offset": 32,
          "byteLength": 2
        }
      ],
      "outputFields": [
        {
          "name": "okay",
          "type": "uint8",
          "offset": 0,
          "byteLength": 1
        },
        {
          "name": "vote",
          "type": "struct",
          "offset": 1,
          "byteLength": 16,
          "structRef": "ProposalSingleVoteDataV1"
        }
      ],
      "inputSize": 34,
      "outputSize": 17
    },
    {
      "kind": "function",
      "inputType": 4,
      "name": "GetVotingResults",
      "inputFields": [
        {
          "name": "proposalIndex",
          "type": "uint16",
          "offset": 0,
          "byteLength": 2
        }
      ],
      "outputFields": [
        {
          "name": "okay",
          "type": "uint8",
          "offset": 0,
          "byteLength": 1
        },
        {
          "name": "results",
          "type": "struct",
          "offset": 1,
          "byteLength": 48,
          "structRef": "ProposalSummarizedVotingDataV1"
        }
      ],
      "inputSize": 2,
      "outputSize": 49
    },
    {
      "kind": "function",
      "inputType": 5,
      "name": "GetLatestTransfers",
      "inputFields": [],
      "outputFields": [
        {
          "name": "data",
          "type": "array",
          "offset": 0,
          "byteLength": 38528,
          "arrayLength": 128,
          "arrayItemStructRef": "LatestTransfersEntry",
          "arrayItemByteLength": 301
        }
      ],
      "inputSize": 0,
      "outputSize": 38528
    },
    {
      "kind": "function",
      "inputType": 6,
      "name": "GetProposalFee",
      "inputFields": [],
      "outputFields": [
        {
          "name": "proposalFee",
          "type": "uint32",
          "offset": 0,
          "byteLength": 4
        }
      ],
      "inputSize": 0,
      "outputSize": 4
    },
    {
      "kind": "function",
      "inputType": 7,
      "name": "GetRegularPayments",
      "inputFields": [],
      "outputFields": [
        {
          "name": "data",
          "type": "array",
          "offset": 0,
          "byteLength": 39424,
          "arrayLength": 128,
          "arrayItemStructRef": "RegularPaymentEntry",
          "arrayItemByteLength": 308
        }
      ],
      "inputSize": 0,
      "outputSize": 39424
    }
  ],
  "effectiveFromEpoch": 192,
  "effectiveToEpoch": null
}