{
  "abi": [
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "supervisor",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address[]",
          "name": "participants",
          "type": "address[]"
        }
      ],
      "name": "ApproveForParticipants",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "caller",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "protocolFeeAmount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "protocolFeeBeneficiary",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "creatorFeeAmount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "creatorFeeBeneficiary",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "supervisorTipAmount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "address[]",
          "name": "supervisors",
          "type": "address[]"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "supervisorShare",
          "type": "uint256"
        }
      ],
      "name": "DistributeFees",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "caller",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address[]",
          "name": "beneficiaries",
          "type": "address[]"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "beneficiaryShare",
          "type": "uint256"
        }
      ],
      "name": "DistributeSponsorContribution",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "caller",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address[]",
          "name": "beneficiaries",
          "type": "address[]"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "beneficiaryShare",
          "type": "uint256"
        }
      ],
      "name": "DistributeUnreturnedStake",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "caller",
          "type": "address"
        }
      ],
      "name": "PostCompletionWindowDistribution",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "participant",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "stakeAmount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "fee",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "returnAmount",
          "type": "uint256"
        }
      ],
      "name": "ReturnStake",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "sponsor",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "Sponsor",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "participant",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "Stake",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "PROJECT_ID",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address[]",
          "name": "_participants",
          "type": "address[]"
        }
      ],
      "name": "approveForParticipants",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_oracleDelegate",
          "type": "address"
        },
        {
          "internalType": "address[]",
          "name": "_participants",
          "type": "address[]"
        }
      ],
      "name": "checkOracle",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "postCompletionWindowDistribution",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "sponsor",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "stake",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    }
  ],
  "bytecode": {
    "object": "0x",
    "sourceMap": "",
    "linkReferences": {}
  },
  "deployedBytecode": {
    "object": "0x",
    "sourceMap": "",
    "linkReferences": {}
  },
  "methodIdentifiers": {
    "PROJECT_ID()": "56539f39",
    "approveForParticipants(address[])": "b468aca7",
    "checkOracle(address,address[])": "dcfba2ba",
    "postCompletionWindowDistribution()": "db231a4f",
    "sponsor()": "77c93662",
    "stake()": "3a4b66f1"
  },
  "rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"supervisor\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"participants\",\"type\":\"address[]\"}],\"name\":\"ApproveForParticipants\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"protocolFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"protocolFeeBeneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"creatorFeeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"creatorFeeBeneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"supervisorTipAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"supervisors\",\"type\":\"address[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"supervisorShare\",\"type\":\"uint256\"}],\"name\":\"DistributeFees\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"beneficiaries\",\"type\":\"address[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"beneficiaryShare\",\"type\":\"uint256\"}],\"name\":\"DistributeSponsorContribution\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"beneficiaries\",\"type\":\"address[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"beneficiaryShare\",\"type\":\"uint256\"}],\"name\":\"DistributeUnreturnedStake\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"PostCompletionWindowDistribution\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"participant\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"stakeAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"returnAmount\",\"type\":\"uint256\"}],\"name\":\"ReturnStake\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sponsor\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Sponsor\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"participant\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Stake\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"PROJECT_ID\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_participants\",\"type\":\"address[]\"}],\"name\":\"approveForParticipants\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_oracleDelegate\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"_participants\",\"type\":\"address[]\"}],\"name\":\"checkOracle\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"postCompletionWindowDistribution\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sponsor\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stake\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IPepperStake.sol\":\"IPepperStake\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@prb/contracts/=lib/prb-contracts/src/\",\":@prb/math/=lib/prb-contracts/lib/prb-math/contracts/\",\":@prb/test/=lib/prb-contracts/lib/prb-test/src/\",\":ds-test/=lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\",\":prb-contracts/=lib/prb-contracts/src/\",\":prb-math/=lib/prb-contracts/lib/prb-math/contracts/\",\":prb-test/=lib/prb-contracts/lib/prb-test/src/\"]},\"sources\":{\"src/interfaces/IPepperStake.sol\":{\"keccak256\":\"0xc6ac6776d6271d2a2bb1818740c8e72f899427434d91af0767b3426515dfb510\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://d05b3690f9aca46f1cad78a14f43dbcaf7897ed1b1ffa3665e068c96f4a928e5\",\"dweb:/ipfs/QmdD6tMj2wsspNuSbq611xxkrRtgaRBavnF533uw3y9eiN\"]}},\"version\":1}",
  "metadata": {
    "compiler": {
      "version": "0.8.17+commit.8df45f5f"
    },
    "language": "Solidity",
    "output": {
      "abi": [
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "supervisor",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "address[]",
              "name": "participants",
              "type": "address[]",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "ApproveForParticipants",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "caller",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "uint256",
              "name": "protocolFeeAmount",
              "type": "uint256",
              "indexed": false
            },
            {
              "internalType": "address",
              "name": "protocolFeeBeneficiary",
              "type": "address",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "creatorFeeAmount",
              "type": "uint256",
              "indexed": false
            },
            {
              "internalType": "address",
              "name": "creatorFeeBeneficiary",
              "type": "address",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "supervisorTipAmount",
              "type": "uint256",
              "indexed": false
            },
            {
              "internalType": "address[]",
              "name": "supervisors",
              "type": "address[]",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "supervisorShare",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "DistributeFees",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "caller",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "address[]",
              "name": "beneficiaries",
              "type": "address[]",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "amount",
              "type": "uint256",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "beneficiaryShare",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "DistributeSponsorContribution",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "caller",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "address[]",
              "name": "beneficiaries",
              "type": "address[]",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "amount",
              "type": "uint256",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "beneficiaryShare",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "DistributeUnreturnedStake",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "caller",
              "type": "address",
              "indexed": true
            }
          ],
          "type": "event",
          "name": "PostCompletionWindowDistribution",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "participant",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "uint256",
              "name": "stakeAmount",
              "type": "uint256",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "fee",
              "type": "uint256",
              "indexed": false
            },
            {
              "internalType": "uint256",
              "name": "returnAmount",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "ReturnStake",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "sponsor",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "uint256",
              "name": "amount",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "Sponsor",
          "anonymous": false
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "participant",
              "type": "address",
              "indexed": true
            },
            {
              "internalType": "uint256",
              "name": "amount",
              "type": "uint256",
              "indexed": false
            }
          ],
          "type": "event",
          "name": "Stake",
          "anonymous": false
        },
        {
          "inputs": [],
          "stateMutability": "view",
          "type": "function",
          "name": "PROJECT_ID",
          "outputs": [
            {
              "internalType": "uint256",
              "name": "",
              "type": "uint256"
            }
          ]
        },
        {
          "inputs": [
            {
              "internalType": "address[]",
              "name": "_participants",
              "type": "address[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "approveForParticipants"
        },
        {
          "inputs": [
            {
              "internalType": "address",
              "name": "_oracleDelegate",
              "type": "address"
            },
            {
              "internalType": "address[]",
              "name": "_participants",
              "type": "address[]"
            }
          ],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "checkOracle"
        },
        {
          "inputs": [],
          "stateMutability": "nonpayable",
          "type": "function",
          "name": "postCompletionWindowDistribution"
        },
        {
          "inputs": [],
          "stateMutability": "payable",
          "type": "function",
          "name": "sponsor"
        },
        {
          "inputs": [],
          "stateMutability": "payable",
          "type": "function",
          "name": "stake"
        }
      ],
      "devdoc": {
        "kind": "dev",
        "methods": {},
        "version": 1
      },
      "userdoc": {
        "kind": "user",
        "methods": {},
        "version": 1
      }
    },
    "settings": {
      "remappings": [
        ":@prb/contracts/=lib/prb-contracts/src/",
        ":@prb/math/=lib/prb-contracts/lib/prb-math/contracts/",
        ":@prb/test/=lib/prb-contracts/lib/prb-test/src/",
        ":ds-test/=lib/ds-test/src/",
        ":forge-std/=lib/forge-std/src/",
        ":prb-contracts/=lib/prb-contracts/src/",
        ":prb-math/=lib/prb-contracts/lib/prb-math/contracts/",
        ":prb-test/=lib/prb-contracts/lib/prb-test/src/"
      ],
      "optimizer": {
        "enabled": true,
        "runs": 200
      },
      "metadata": {
        "bytecodeHash": "ipfs"
      },
      "compilationTarget": {
        "src/interfaces/IPepperStake.sol": "IPepperStake"
      },
      "libraries": {}
    },
    "sources": {
      "src/interfaces/IPepperStake.sol": {
        "keccak256": "0xc6ac6776d6271d2a2bb1818740c8e72f899427434d91af0767b3426515dfb510",
        "urls": [
          "bzz-raw://d05b3690f9aca46f1cad78a14f43dbcaf7897ed1b1ffa3665e068c96f4a928e5",
          "dweb:/ipfs/QmdD6tMj2wsspNuSbq611xxkrRtgaRBavnF533uw3y9eiN"
        ],
        "license": "UNLICENSED"
      }
    },
    "version": 1
  },
  "ast": {
    "absolutePath": "src/interfaces/IPepperStake.sol",
    "id": 27652,
    "exportedSymbols": {
      "IPepperStake": [
        27651
      ]
    },
    "nodeType": "SourceUnit",
    "src": "39:1542:20",
    "nodes": [
      {
        "id": 27548,
        "nodeType": "PragmaDirective",
        "src": "39:24:20",
        "literals": [
          "solidity",
          "^",
          "0.8",
          ".13"
        ]
      },
      {
        "id": 27651,
        "nodeType": "ContractDefinition",
        "src": "65:1515:20",
        "nodes": [
          {
            "id": 27554,
            "nodeType": "EventDefinition",
            "src": "94:57:20",
            "anonymous": false,
            "eventSelector": "ebedb8b3c678666e7f36970bc8f57abf6d8fa2e828c0da91ea5b75bf68ed101a",
            "name": "Stake",
            "nameLocation": "100:5:20",
            "parameters": {
              "id": 27553,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27550,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "participant",
                  "nameLocation": "122:11:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27554,
                  "src": "106:27:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27549,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "106:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27552,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "amount",
                  "nameLocation": "143:6:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27554,
                  "src": "135:14:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27551,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "135:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "105:45:20"
            }
          },
          {
            "id": 27560,
            "nodeType": "EventDefinition",
            "src": "156:55:20",
            "anonymous": false,
            "eventSelector": "74194cee4daf68c6858b41efe9729cf57988cee7f447442f39a1e2adafd4e021",
            "name": "Sponsor",
            "nameLocation": "162:7:20",
            "parameters": {
              "id": 27559,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27556,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "sponsor",
                  "nameLocation": "186:7:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27560,
                  "src": "170:23:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27555,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "170:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27558,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "amount",
                  "nameLocation": "203:6:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27560,
                  "src": "195:14:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27557,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "195:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "169:41:20"
            }
          },
          {
            "id": 27567,
            "nodeType": "EventDefinition",
            "src": "216:103:20",
            "anonymous": false,
            "eventSelector": "440c93edea69d1cf0502a6e259d2bcaf3e0a4f16428ddd3b6f5b68081e27eea3",
            "name": "ApproveForParticipants",
            "nameLocation": "222:22:20",
            "parameters": {
              "id": 27566,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27562,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "supervisor",
                  "nameLocation": "270:10:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27567,
                  "src": "254:26:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27561,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "254:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27565,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "participants",
                  "nameLocation": "300:12:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27567,
                  "src": "290:22:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 27563,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "290:7:20",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 27564,
                    "nodeType": "ArrayTypeName",
                    "src": "290:9:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "244:74:20"
            }
          },
          {
            "id": 27577,
            "nodeType": "EventDefinition",
            "src": "324:141:20",
            "anonymous": false,
            "eventSelector": "3c6d034538fc1be4c1c02283083c593ad4546ace8a6713cb5fb2ecb705a41446",
            "name": "ReturnStake",
            "nameLocation": "330:11:20",
            "parameters": {
              "id": 27576,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27569,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "participant",
                  "nameLocation": "367:11:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27577,
                  "src": "351:27:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27568,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "351:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27571,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "stakeAmount",
                  "nameLocation": "396:11:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27577,
                  "src": "388:19:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27570,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "388:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27573,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "fee",
                  "nameLocation": "425:3:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27577,
                  "src": "417:11:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27572,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "417:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27575,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "returnAmount",
                  "nameLocation": "446:12:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27577,
                  "src": "438:20:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27574,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "438:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "341:123:20"
            }
          },
          {
            "id": 27588,
            "nodeType": "EventDefinition",
            "src": "470:165:20",
            "anonymous": false,
            "eventSelector": "2114d896257ce5a58e1c18ae0d1cb1bd56f2f18c8b5a78e4541b48f40883b5af",
            "name": "DistributeSponsorContribution",
            "nameLocation": "476:29:20",
            "parameters": {
              "id": 27587,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27579,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "caller",
                  "nameLocation": "531:6:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27588,
                  "src": "515:22:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27578,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "515:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27582,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "beneficiaries",
                  "nameLocation": "557:13:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27588,
                  "src": "547:23:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 27580,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "547:7:20",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 27581,
                    "nodeType": "ArrayTypeName",
                    "src": "547:9:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27584,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "amount",
                  "nameLocation": "588:6:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27588,
                  "src": "580:14:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27583,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "580:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27586,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "beneficiaryShare",
                  "nameLocation": "612:16:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27588,
                  "src": "604:24:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27585,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "604:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "505:129:20"
            }
          },
          {
            "id": 27607,
            "nodeType": "EventDefinition",
            "src": "640:308:20",
            "anonymous": false,
            "eventSelector": "f50e8e029e43d877ce362cea5cb5693fcf553b41d0bc26d03ee286b56964bafb",
            "name": "DistributeFees",
            "nameLocation": "646:14:20",
            "parameters": {
              "id": 27606,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27590,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "caller",
                  "nameLocation": "686:6:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27607,
                  "src": "670:22:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27589,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "670:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27592,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "protocolFeeAmount",
                  "nameLocation": "710:17:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27607,
                  "src": "702:25:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27591,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "702:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27594,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "protocolFeeBeneficiary",
                  "nameLocation": "745:22:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27607,
                  "src": "737:30:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27593,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "737:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27596,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "creatorFeeAmount",
                  "nameLocation": "785:16:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27607,
                  "src": "777:24:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27595,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "777:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27598,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "creatorFeeBeneficiary",
                  "nameLocation": "819:21:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27607,
                  "src": "811:29:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27597,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "811:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27600,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "supervisorTipAmount",
                  "nameLocation": "858:19:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27607,
                  "src": "850:27:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27599,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "850:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27603,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "supervisors",
                  "nameLocation": "897:11:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27607,
                  "src": "887:21:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 27601,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "887:7:20",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 27602,
                    "nodeType": "ArrayTypeName",
                    "src": "887:9:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27605,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "supervisorShare",
                  "nameLocation": "926:15:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27607,
                  "src": "918:23:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27604,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "918:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "660:287:20"
            }
          },
          {
            "id": 27618,
            "nodeType": "EventDefinition",
            "src": "953:161:20",
            "anonymous": false,
            "eventSelector": "1a50eba3476dd09ccdbee500a30b43381479c55b92f8ea25850f819ec591a520",
            "name": "DistributeUnreturnedStake",
            "nameLocation": "959:25:20",
            "parameters": {
              "id": 27617,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27609,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "caller",
                  "nameLocation": "1010:6:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27618,
                  "src": "994:22:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27608,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "994:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27612,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "beneficiaries",
                  "nameLocation": "1036:13:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27618,
                  "src": "1026:23:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 27610,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1026:7:20",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 27611,
                    "nodeType": "ArrayTypeName",
                    "src": "1026:9:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27614,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "amount",
                  "nameLocation": "1067:6:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27618,
                  "src": "1059:14:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27613,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1059:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27616,
                  "indexed": false,
                  "mutability": "mutable",
                  "name": "beneficiaryShare",
                  "nameLocation": "1091:16:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27618,
                  "src": "1083:24:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27615,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1083:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "984:129:20"
            }
          },
          {
            "id": 27622,
            "nodeType": "EventDefinition",
            "src": "1120:63:20",
            "anonymous": false,
            "eventSelector": "8e4581edbcde6e54b523f4d359eb0eff7308e8d3e14ff8eac7e7705b4b98a62a",
            "name": "PostCompletionWindowDistribution",
            "nameLocation": "1126:32:20",
            "parameters": {
              "id": 27621,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27620,
                  "indexed": true,
                  "mutability": "mutable",
                  "name": "caller",
                  "nameLocation": "1175:6:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27622,
                  "src": "1159:22:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27619,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1159:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1158:24:20"
            }
          },
          {
            "id": 27625,
            "nodeType": "FunctionDefinition",
            "src": "1189:34:20",
            "functionSelector": "3a4b66f1",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "stake",
            "nameLocation": "1198:5:20",
            "parameters": {
              "id": 27623,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1203:2:20"
            },
            "returnParameters": {
              "id": 27624,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1222:0:20"
            },
            "scope": 27651,
            "stateMutability": "payable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 27628,
            "nodeType": "FunctionDefinition",
            "src": "1229:36:20",
            "functionSelector": "77c93662",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "sponsor",
            "nameLocation": "1238:7:20",
            "parameters": {
              "id": 27626,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1245:2:20"
            },
            "returnParameters": {
              "id": 27627,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1264:0:20"
            },
            "scope": 27651,
            "stateMutability": "payable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 27634,
            "nodeType": "FunctionDefinition",
            "src": "1271:73:20",
            "functionSelector": "b468aca7",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "approveForParticipants",
            "nameLocation": "1280:22:20",
            "parameters": {
              "id": 27632,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27631,
                  "mutability": "mutable",
                  "name": "_participants",
                  "nameLocation": "1320:13:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27634,
                  "src": "1303:30:20",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 27629,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1303:7:20",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 27630,
                    "nodeType": "ArrayTypeName",
                    "src": "1303:9:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1302:32:20"
            },
            "returnParameters": {
              "id": 27633,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1343:0:20"
            },
            "scope": 27651,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 27642,
            "nodeType": "FunctionDefinition",
            "src": "1350:109:20",
            "functionSelector": "dcfba2ba",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "checkOracle",
            "nameLocation": "1359:11:20",
            "parameters": {
              "id": 27640,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27636,
                  "mutability": "mutable",
                  "name": "_oracleDelegate",
                  "nameLocation": "1388:15:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27642,
                  "src": "1380:23:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 27635,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1380:7:20",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 27639,
                  "mutability": "mutable",
                  "name": "_participants",
                  "nameLocation": "1430:13:20",
                  "nodeType": "VariableDeclaration",
                  "scope": 27642,
                  "src": "1413:30:20",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 27637,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1413:7:20",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 27638,
                    "nodeType": "ArrayTypeName",
                    "src": "1413:9:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1370:79:20"
            },
            "returnParameters": {
              "id": 27641,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1458:0:20"
            },
            "scope": 27651,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 27645,
            "nodeType": "FunctionDefinition",
            "src": "1465:53:20",
            "functionSelector": "db231a4f",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "postCompletionWindowDistribution",
            "nameLocation": "1474:32:20",
            "parameters": {
              "id": 27643,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1506:2:20"
            },
            "returnParameters": {
              "id": 27644,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1517:0:20"
            },
            "scope": 27651,
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "id": 27650,
            "nodeType": "FunctionDefinition",
            "src": "1524:54:20",
            "functionSelector": "56539f39",
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "PROJECT_ID",
            "nameLocation": "1533:10:20",
            "parameters": {
              "id": 27646,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1543:2:20"
            },
            "returnParameters": {
              "id": 27649,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 27648,
                  "mutability": "mutable",
                  "name": "",
                  "nameLocation": "-1:-1:-1",
                  "nodeType": "VariableDeclaration",
                  "scope": 27650,
                  "src": "1569:7:20",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 27647,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1569:7:20",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1568:9:20"
            },
            "scope": 27651,
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "abstract": false,
        "baseContracts": [],
        "canonicalName": "IPepperStake",
        "contractDependencies": [],
        "contractKind": "interface",
        "fullyImplemented": false,
        "linearizedBaseContracts": [
          27651
        ],
        "name": "IPepperStake",
        "nameLocation": "75:12:20",
        "scope": 27652,
        "usedErrors": []
      }
    ],
    "license": "UNLICENSED"
  },
  "id": 20
}