I hereby claim:
- I am snario on github.
- I am liamhorne (https://keybase.io/liamhorne) on keybase.
- I have a public key whose fingerprint is 30FC 640B C0A3 51B2 FCB9 693F 7335 D28F BBFB 7CE7
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
0000000000000000000000000000000000000000000000000000000000000001 op | |
000000000000000000000000aef082d339d227646db914f0ca9ff02c8544f30b to | |
000000000000000000000000000000000000000000000000000000000001869f val | |
0000000000000000000000000000000000000000000000000000000000000080 ??? | |
0000000000000000000000000000000000000000000000000000000000000204 dataLength | |
951c67dc00000000000000000000000000000000000000000000000000000000 | |
0000004000000000000000000000000000000000000000000000000000000000 | |
0000014000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000 | |
000000a0a07d99bbe594109aece6ff66d9875984dd924531cd474c4c519fde49 |
pragma solidity 0.5; | |
/// @title Proxy - Generic proxy contract allows to execute all transactions applying the code of a master contract. | |
/// @author Stefan George - <[email protected]> | |
contract Proxy { | |
// masterCopy always needs to be first declared variable, to ensure that it is at the same location in the contracts to which calls are delegated. | |
address masterCopy; |
{ | |
"name": "@counterfactual/tic-tac-toe-bot", | |
"version": "0.0.15", | |
"lockfileVersion": 1, | |
"requires": true, | |
"dependencies": { | |
"@babel/code-frame": { | |
"version": "7.0.0", | |
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", | |
"integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", |
pragma solidity 0.5.9; | |
pragma experimental ABIEncoderV2; | |
library TicTacToe { | |
enum OutcomeType { | |
PLAYER_X_WON, | |
PLAYER_O_WON, | |
DRAW |
pragma solidity ^0.5.2; | |
pragma experimental ABIEncoderV2; | |
import "fmg-core/contracts/Commitment.sol"; | |
import "fmg-core/contracts/Rules.sol"; | |
import "openzeppelin-solidity/contracts/math/SafeMath.sol"; | |
/** | |
* Liam's comments: | |
* |
const ethers = require("ethers"); | |
const getAddress = ethers.utils.getAddress; | |
const solidityKeccak256 = ethers.utils.solidityKeccak256; | |
const keccak256 = ethers.utils.keccak256; | |
const solidityPack = ethers.utils.solidityPack; | |
const Interface = ethers.utils.Interface; | |
const defaultAbiCoder = ethers.utils.defaultAbiCoder; | |
const hexDataSlice = ethers.utils.hexDataSlice; |
----------------------------- MODULE ForceMove ----------------------------- | |
EXTENDS Integers, TLC, Utils | |
CONSTANTS | |
StartingTurnNumber, | |
NumParticipants, | |
NULL | |
(***************************************************************************) | |
(* The purpose of this specification is to outline an algorithm that *) | |
(* guarantees that a challenge is registered on chain with turnNumber *) | |
(* equal to LatestTurnNumber. It is guaranteed even with an antagonist *) |
[ | |
"Zvishavane", | |
"Victoria Falls", | |
"Shurugwi", | |
"Rusape", | |
"Redcliff", | |
"Norton", | |
"Mutare", | |
"Masvingo", | |
"Marondera", |