Skip to content

Instantly share code, notes, and snippets.

@djrtwo
Created May 16, 2018 03:19
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save djrtwo/9f004d825e2ca237c7811901b0083914 to your computer and use it in GitHub Desktop.
Save djrtwo/9f004d825e2ca237c7811901b0083914 to your computer and use it in GitHub Desktop.
Casper Contract ABI for release v0.2.0
[{'name': 'Deposit', 'inputs': [{'type': 'address', 'name': '_from', 'indexed': True}, {'type': 'int128', 'name': '_validator_index', 'indexed': True}, {'type': 'address', 'name': '_validation_address', 'indexed': False}, {'type': 'int128', 'name': '_start_dyn', 'indexed': False}, {'type': 'int128', 'name': '_amount', 'indexed': False}], 'anonymous': False, 'type': 'event'}, {'name': 'Vote', 'inputs': [{'type': 'address', 'name': '_from', 'indexed': True}, {'type': 'int128', 'name': '_validator_index', 'indexed': True}, {'type': 'bytes32', 'name': '_target_hash', 'indexed': True}, {'type': 'int128', 'name': '_target_epoch', 'indexed': False}, {'type': 'int128', 'name': '_source_epoch', 'indexed': False}], 'anonymous': False, 'type': 'event'}, {'name': 'Logout', 'inputs': [{'type': 'address', 'name': '_from', 'indexed': True}, {'type': 'int128', 'name': '_validator_index', 'indexed': True}, {'type': 'int128', 'name': '_end_dyn', 'indexed': False}], 'anonymous': False, 'type': 'event'}, {'name': 'Withdraw', 'inputs': [{'type': 'address', 'name': '_to', 'indexed': True}, {'type': 'int128', 'name': '_validator_index', 'indexed': True}, {'type': 'int128', 'name': '_amount', 'indexed': False}], 'anonymous': False, 'type': 'event'}, {'name': 'Slash', 'inputs': [{'type': 'address', 'name': '_from', 'indexed': True}, {'type': 'address', 'name': '_offender', 'indexed': True}, {'type': 'int128', 'name': '_offender_index', 'indexed': True}, {'type': 'int128', 'name': '_bounty', 'indexed': False}, {'type': 'int128', 'name': '_destroyed', 'indexed': False}], 'anonymous': False, 'type': 'event'}, {'name': 'Epoch', 'inputs': [{'type': 'int128', 'name': '_number', 'indexed': True}, {'type': 'bytes32', 'name': '_checkpoint_hash', 'indexed': True}, {'type': 'bool', 'name': '_is_justified', 'indexed': False}, {'type': 'bool', 'name': '_is_finalized', 'indexed': False}], 'anonymous': False, 'type': 'event'}, {'name': 'init', 'outputs': [], 'inputs': [{'type': 'int128', 'name': 'epoch_length'}, {'type': 'int128', 'name': 'withdrawal_delay'}, {'type': 'int128', 'name': 'dynasty_logout_delay'}, {'type': 'address', 'name': 'msg_hasher'}, {'type': 'address', 'name': 'purity_checker'}, {'type': 'decimal10', 'name': 'base_interest_factor'}, {'type': 'decimal10', 'name': 'base_penalty_factor'}, {'type': 'int128', 'name': 'min_deposit_size'}], 'constant': False, 'payable': False, 'type': 'function', 'gas': 357964}, {'name': 'main_hash_voted_frac', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2989}, {'name': 'deposit_size', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'validator_index'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2991}, {'name': 'total_curdyn_deposits_in_wei', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2595}, {'name': 'total_prevdyn_deposits_in_wei', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2625}, {'name': 'slashable', 'outputs': [{'type': 'bool', 'name': 'out'}], 'inputs': [{'type': 'bytes', 'name': 'vote_msg_1'}, {'type': 'bytes', 'name': 'vote_msg_2'}], 'constant': False, 'payable': False, 'type': 'function', 'gas': 38206}, {'name': 'recommended_source_epoch', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 933}, {'name': 'recommended_target_hash', 'outputs': [{'type': 'bytes32', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 810}, {'name': 'highest_justified_epoch', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'min_total_deposits'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1882000000000000000000000000000946}, {'name': 'highest_finalized_epoch', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'min_total_deposits'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1882000000000000000000000000000976}, {'name': 'initialize_epoch', 'outputs': [], 'inputs': [{'type': 'int128', 'name': 'epoch'}], 'constant': False, 'payable': False, 'type': 'function', 'gas': 427173}, {'name': 'deposit', 'outputs': [], 'inputs': [{'type': 'address', 'name': 'validation_addr'}, {'type': 'address', 'name': 'withdrawal_addr'}], 'constant': False, 'payable': True, 'type': 'function', 'gas': 682331}, {'name': 'logout', 'outputs': [], 'inputs': [{'type': 'bytes', 'name': 'logout_msg'}], 'constant': False, 'payable': False, 'type': 'function', 'gas': 87942}, {'name': 'withdraw', 'outputs': [], 'inputs': [{'type': 'int128', 'name': 'validator_index'}], 'constant': False, 'payable': False, 'type': 'function', 'gas': 102634}, {'name': 'vote', 'outputs': [], 'inputs': [{'type': 'bytes', 'name': 'vote_msg'}], 'constant': False, 'payable': False, 'type': 'function', 'gas': 321153}, {'name': 'slash', 'outputs': [], 'inputs': [{'type': 'bytes', 'name': 'vote_msg_1'}, {'type': 'bytes', 'name': 'vote_msg_2'}], 'constant': False, 'payable': False, 'type': 'function', 'gas': 210102}, {'name': 'validators__deposit', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1500}, {'name': 'validators__start_dynasty', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1530}, {'name': 'validators__end_dynasty', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1560}, {'name': 'validators__is_slashed', 'outputs': [{'type': 'bool', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1590}, {'name': 'validators__total_deposits_at_logout', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1620}, {'name': 'validators__addr', 'outputs': [{'type': 'address', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1644}, {'name': 'validators__withdrawal_addr', 'outputs': [{'type': 'address', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1680}, {'name': 'checkpoint_hashes', 'outputs': [{'type': 'bytes32', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1632}, {'name': 'next_validator_index', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1473}, {'name': 'validator_indexes', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'address', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1641}, {'name': 'dynasty', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1533}, {'name': 'dynasty_wei_delta', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1752}, {'name': 'dynasty_start_epoch', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1782}, {'name': 'dynasty_in_epoch', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1812}, {'name': 'checkpoints__cur_dyn_deposits', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1914}, {'name': 'checkpoints__prev_dyn_deposits', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1950}, {'name': 'checkpoints__cur_dyn_votes', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}, {'type': 'int128', 'name': 'arg1'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2157}, {'name': 'checkpoints__prev_dyn_votes', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}, {'type': 'int128', 'name': 'arg1'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2187}, {'name': 'checkpoints__vote_bitmap', 'outputs': [{'type': 'uint256', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}, {'type': 'int128', 'name': 'arg1'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2217}, {'name': 'checkpoints__is_justified', 'outputs': [{'type': 'bool', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2070}, {'name': 'checkpoints__is_finalized', 'outputs': [{'type': 'bool', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2100}, {'name': 'main_hash_justified', 'outputs': [{'type': 'bool', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1863}, {'name': 'deposit_scale_factor', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2082}, {'name': 'last_nonvoter_rescale', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1923}, {'name': 'last_voter_rescale', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1953}, {'name': 'current_epoch', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 1983}, {'name': 'last_finalized_epoch', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2013}, {'name': 'last_justified_epoch', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2043}, {'name': 'reward_factor', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2073}, {'name': 'expected_source_epoch', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2103}, {'name': 'total_slashed', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [{'type': 'int128', 'name': 'arg0'}], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2322}, {'name': 'EPOCH_LENGTH', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2163}, {'name': 'WITHDRAWAL_DELAY', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2193}, {'name': 'DYNASTY_LOGOUT_DELAY', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2223}, {'name': 'BASE_INTEREST_FACTOR', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2253}, {'name': 'BASE_PENALTY_FACTOR', 'outputs': [{'type': 'decimal10', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2283}, {'name': 'MIN_DEPOSIT_SIZE', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2313}, {'name': 'START_EPOCH', 'outputs': [{'type': 'int128', 'name': 'out'}], 'inputs': [], 'constant': True, 'payable': False, 'type': 'function', 'gas': 2343}]
@aroc2021
Copy link

aroc2021 commented Oct 20, 2021

Abi for Casper owner Aaron Michael Harper.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment