Latest 25 transactions from a total of 397 transactions

TxHash Age From To Value [TxFee]
0xf1f074f5c61b84b6ea61db7f5c5fa42a826168606669a9eb9f0f3a758c675f5256 mins ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049443
0x7a569e91fdc9c27f3bcd7e9b39fcfffc1f58978e558b7b3148c828223e8722f111 hrs 56 mins ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000150939
0x331e1a7e950bb3a936ea14286d7f7641e1d72a3b1e4ba86ec688d9deee82f3db12 hrs 54 mins ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049379
0x805e8ebd518ca1a48e2e01af9b22b6f021532e55fe6a9fc9c0f8c77a0395b49f18 hrs 54 mins ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000089663
0x048c0a1425bdbe5c0964541f4d82463daad8c64da64db04b7c28d588af467bcd23 hrs 55 mins ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049443
0x1f3739a21c4445d5bdf47a756b6372bda113936f796753597579e01bf521ea911 day 56 mins ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000130819
0xe6dfba7c554988b3e080e56b66965ceb081acc645d20d9537b532d4d4e0ec39c1 day 11 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049443
0x4716ce8269d618b229a5a57b00d545e48bf313883846b335062ef4028df6edb11 day 12 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049443
0x4b5bc0f7184f5094ed3e839f9f90c1837aef2e117f728662080a467a6b3786541 day 18 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049039
0xd5fe90379ff890d748519edd7d4d3badc8c32108644d9dc083a0cd77f7a636461 day 23 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049443
0x2fecd13a087808da7e6127b411d4b3eaff6daaa15562405d93d4a163009d51452 days 56 mins ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049379
0xd81d6673a752c5f36b1360debcda94b72fdc23ed87307a927eaeaed5bb2a29e52 days 11 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000090003
0xea11bb3ce8adb2072e03e4c6209cd08183e3cb4bdeeb9fc27f5cf756f4ee2cdb2 days 12 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049443
0xaf1e9bf20936f7979f63ea620fe8f64b7ba38b9b760afd4e2b3990a66d498fb02 days 18 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000089727
0x0fd70308a24a14abef92f7562008795c8bff684e68b79e9ead355377853c7f192 days 23 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000191563
0xc439ef44b4158d246b5f7e13bef96700da805534e0fd1c7e52bfa849fa34d8263 days 56 mins ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000191627
0x80c05b6a46a537fbea71237f72ded4a23e6c1a6f7511f50512534ee4540edc603 days 11 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000191947
0x2d8aaf3f9c8f34ac6eca551db19cf08908842f41b61da55ab0a9c453142623293 days 12 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000191947
0x8084e74b99c22968a798efc5b8391e868106e99d48f5e1e45bde2662977bafd53 days 14 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000029239
0x90b94dbd548ba533877daf3d3509b53a2e7dca236d5d280d80828f658139ad6b3 days 14 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000029239
0x33f9943efff22d985e899cf822e1e3f51f7cccf8851e809602ef623846b71d2e3 days 18 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049039
0x93f25bc102a23cb10dddc5beed4f42bd40910b9578a30f59374dbb00ae691c523 days 23 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049443
0xb6a8ba4c51cf08b077e79f16095373bbc3983bd04fea9a94660eff73b4e2a0454 days 54 mins ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049443
0x8952fd4c558fc495e3c1712e56c41bb87a797067525bad3220872df30969da1d4 days 11 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000049379
0x51019551cdd9b9f5fbc7a10dd157e7b487b5b8f7f7c2a4d180bcc502d80dc50c4 days 12 hrs ago0x0d06535c3ef54c6cca7775924f64278f0e4daf07  IN   0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether0.000029239
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 25 Internal Txns, Click here To View More View All
ParentTxHash Block Age From To Value
0xf213aa7711b6288b32f3fbe69dd5e982c57a81857ddfac72d310e469b176dee0487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0xf213aa7711b6288b32f3fbe69dd5e982c57a81857ddfac72d310e469b176dee0487093057 mins ago0xbbbe9aebf16a729228f06b2f83d82366bcfc80c00xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xbbbe9aebf16a729228f06b2f83d82366bcfc80c00 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xbbbe9aebf16a729228f06b2f83d82366bcfc80c00 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xf11c0ebd11ef967918bd2ff5ecf76731c65b49180 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xf11c0ebd11ef967918bd2ff5ecf76731c65b49180 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0x47e723cf30cd55c89f1f896f2d5823ecc57890ad0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0x47e723cf30cd55c89f1f896f2d5823ecc57890ad0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xf11c0ebd11ef967918bd2ff5ecf76731c65b49180 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0x47e723cf30cd55c89f1f896f2d5823ecc57890ad0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8f8f7ac9b88a0498dad7ff854eef8938e520104f6353faf535e006bd81d52efd487093057 mins ago0xbbbe9aebf16a729228f06b2f83d82366bcfc80c00xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0 Ether
0x8cfa00e0350cd99e57a0616c357697e637ce5ecee8444ab76d8de728b374fbf0486815211 hrs 56 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xbbbe9aebf16a729228f06b2f83d82366bcfc80c00 Ether
0x8cfa00e0350cd99e57a0616c357697e637ce5ecee8444ab76d8de728b374fbf0486815211 hrs 56 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8cfa00e0350cd99e57a0616c357697e637ce5ecee8444ab76d8de728b374fbf0486815211 hrs 56 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xbbbe9aebf16a729228f06b2f83d82366bcfc80c00 Ether
0x8cfa00e0350cd99e57a0616c357697e637ce5ecee8444ab76d8de728b374fbf0486815211 hrs 56 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8cfa00e0350cd99e57a0616c357697e637ce5ecee8444ab76d8de728b374fbf0486815211 hrs 56 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xf11c0ebd11ef967918bd2ff5ecf76731c65b49180 Ether
0x8cfa00e0350cd99e57a0616c357697e637ce5ecee8444ab76d8de728b374fbf0486815211 hrs 56 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xac3e41fb70cc1914b3b9707c6151d7eb6df855cc0 Ether
0x8cfa00e0350cd99e57a0616c357697e637ce5ecee8444ab76d8de728b374fbf0486815211 hrs 56 mins ago0xdad3f15f5ca0635b95c74538f9918b4ee46ddb3a0xf11c0ebd11ef967918bd2ff5ecf76731c65b49180 Ether
[ Download CSV Export  ] 
Warning: The Compiled Contract might be susceptible to ExpExponentCleanup (medium/high-severity), EventStructWrongData (very low-severity) SolidityCompiler Bugs.

Contract Source Code Verified (Similar Match)
Note: Displaying Similar Match Verified Source Code At Contract 0xc180d882cbfe2d38b38915bea0a53fe55473daec(Excluding Constructor Arguments if any)
Contract Name: VpfsContract
Compiler Text: v0.4.24+commit.e67f0147
Optimization Enabled: Yes
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

pragma solidity ^0.4.23;

// File: contracts/VpfFactoryInterface.sol

contract VpfFactoryInterface {
    function generateNext() public;
    function isPaused() public view returns(bool);
}

// File: openzeppelin-solidity/contracts/ownership/Ownable.sol

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */
contract Ownable {
  address public owner;


  event OwnershipRenounced(address indexed previousOwner);
  event OwnershipTransferred(
    address indexed previousOwner,
    address indexed newOwner
  );


  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  constructor() public {
    owner = msg.sender;
  }

  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }

  /**
   * @dev Allows the current owner to relinquish control of the contract.
   */
  function renounceOwnership() public onlyOwner {
    emit OwnershipRenounced(owner);
    owner = address(0);
  }

  /**
   * @dev Allows the current owner to transfer control of the contract to a newOwner.
   * @param _newOwner The address to transfer ownership to.
   */
  function transferOwnership(address _newOwner) public onlyOwner {
    _transferOwnership(_newOwner);
  }

  /**
   * @dev Transfers control of the contract to a newOwner.
   * @param _newOwner The address to transfer ownership to.
   */
  function _transferOwnership(address _newOwner) internal {
    require(_newOwner != address(0));
    emit OwnershipTransferred(owner, _newOwner);
    owner = _newOwner;
  }
}

// File: contracts/oracles/OracleInterface.sol

contract OracleInterface {
    function request(
        bytes32 _assetHash,
        uint _time,
        uint8 _decimalPoints,
        uint _gasLimit) public;
}

// File: contracts/PhenomenonsContract.sol

contract PhenomenonsContract is Ownable {

    struct Phenomenon {
        string mnemonic;
        string name;
        string description;
        string category;
        uint8 valueDecimalPlaces;
        bool enabled;
        bool exists;
    }

    mapping(bytes32 => Phenomenon) public phenomenons;
    string[] public mnemonics;

    event PhenomenonAdd(bytes32 hash);
    event PhenomenonDisable(bytes32 hash);
    event PhenomenonEnable(bytes32 hash);

    function addPhenomenon(
        string _mnemonic,
        string _name,
        string _description,
        string _category,
        uint8 _valueDecimalPlaces
    ) public onlyOwner
    {
        bytes32 hash = keccak256(abi.encodePacked(_mnemonic));
        require(bytes(phenomenons[hash].mnemonic).length == 0, "Phenomenon already exists!");

        Phenomenon memory phenomenon = Phenomenon(
            _mnemonic,
            _name,
            _description,
            _category,
            _valueDecimalPlaces,
            true,
            true
        );

        phenomenons[hash] = phenomenon;
        mnemonics.push(_mnemonic);

        emit PhenomenonAdd(hash);
    }

    function disablePhenomenon(bytes32 _hash) public onlyOwner {
        require(phenomenons[_hash].enabled == true);

        phenomenons[_hash].enabled = false;

        emit PhenomenonDisable(_hash);
    }

    function enablePhenomenon(bytes32 _hash) public onlyOwner {
        require(phenomenons[_hash].exists == true);
        require(phenomenons[_hash].enabled == false);

        phenomenons[_hash].enabled = true;

        emit PhenomenonEnable(_hash);
    }

    function mnemonicsCount() public view returns(uint) {
        return mnemonics.length;
    }

    function isEnabled(bytes32 _hash) public view returns(bool) {
        return phenomenons[_hash].enabled;
    }

    function decimalPoints(bytes32 _hash) public view returns(uint8) {
        return phenomenons[_hash].valueDecimalPlaces;
    }
}

// File: contracts/ContractAddressesManager.sol

contract ContractAddressesManager is Ownable {

    OracleInterface public oracle;
    PhenomenonsContract public phenomenonsContract;
    mapping(address => bool) public factories;

    event AddFactory(address _factory);
    event RemoveFactory(address _factory);

    function addFactory(VpfFactoryInterface _factory) public onlyOwnerOrigin {
        factories[_factory] = true;
        emit AddFactory(_factory);
    }

    function removeFactory(VpfFactoryInterface _factory) public onlyOwner {
        factories[_factory] = false;
        emit RemoveFactory(_factory);
    }

    function setOracle(OracleInterface _oracle) public onlyOwner {
        oracle = _oracle;
    }

    function setPhenomenonsContract(PhenomenonsContract _phenomenonsContract) public onlyOwner {
        phenomenonsContract = _phenomenonsContract;
    }

    modifier onlyOwnerOrigin() {
        require(tx.origin == owner);
        _;
    }
}

// File: contracts/oracles/UsingOracle.sol

contract UsingOracle {
    ContractAddressesManager addressManager;

    constructor(ContractAddressesManager _manager) public {
        addressManager = _manager;
    }

    function updateValue(bytes32 _vpfHash, uint _time, uint _value) public onlyFromOracle;

    modifier onlyFromOracle() {
        require(msg.sender == address(addressManager.oracle()));
        _;
    }
}

// File: contracts/VpfsContract.sol

contract VpfsContract is UsingOracle, Ownable {

    uint public openValueGasLimit = 200000;
    uint public resolveValueGasLimit = 1000000;
    address public serverAddress;

    struct Vpf {
        bytes32 phenomenonHash;
        uint openDate;
        uint closeDate;
        uint resolveDate;
        uint maxBeta;
        uint feePercent;
        int[] intervals;
        VpfFactoryInterface vpfFactoryInterface;
        uint tradesTotal;
        uint[] virtualTradesSummed;
        uint openValue;
        uint resolveValue;
    }

    mapping(bytes32 => Vpf) public vpfs;

    event VpfAdd(bytes32 hash);
    event VpfTradesFill(bytes32 hash);
    event VpfOpenValueCheck(bytes32 hash, uint value);
    event VpfResolveValueCheck(bytes32 hash, uint value);

    constructor(ContractAddressesManager _manager, address _serverAddress) public UsingOracle(_manager) {
        serverAddress = _serverAddress;
    }

    function addVpf(
        bytes32 _phenomenonHash,
        uint _openDate,
        uint _closeDate,
        uint _resolveDate,
        uint _maxBeta,
        uint _feePercent,
        int[] _intervals
    ) public onlyValidFactory
    {
        require(addressManager.phenomenonsContract().isEnabled(_phenomenonHash));

        bytes32 hash = vpfHash(_phenomenonHash, _openDate, _resolveDate);
        vpfs[hash] = Vpf(
            _phenomenonHash,
            _openDate,
            _closeDate,
            _resolveDate,
            _maxBeta,
            _feePercent,
            _intervals,
            VpfFactoryInterface(msg.sender),
            0,
            new uint[](0),
            0,
            0
        );
        emit VpfAdd(hash);

        uint8 decimalPoints = addressManager.phenomenonsContract().decimalPoints(_phenomenonHash);

        addressManager.oracle().request(
            hash,
            _openDate,
            decimalPoints,
            openValueGasLimit
        );
        addressManager.oracle().request(
            hash,
            _resolveDate,
            decimalPoints,
            resolveValueGasLimit
        );
    }

    function fillTradesInfo(bytes32 _vpfHash, uint _tradesTotal, uint[] _virtualTradesSummed) public onlyServer {
        Vpf storage vpf = vpfs[_vpfHash];
        require(vpf.openDate > 0);
        require(vpf.tradesTotal == 0);

        vpf.tradesTotal = _tradesTotal;
        vpf.virtualTradesSummed = _virtualTradesSummed;

        emit VpfTradesFill(_vpfHash);
    }

    function updateValue(bytes32 _vpfHash, uint _time, uint _value) public onlyFromOracle {
        Vpf storage vpf = vpfs[_vpfHash];

        require(_time == vpf.openDate || _time == vpf.resolveDate, "Time of request does not match openDate nor checkDate");

        if (_time == vpf.openDate) {
            vpf.openValue = _value;
            emit VpfOpenValueCheck(_vpfHash, _value);
        } else {
            vpf.resolveValue = _value;
            emit VpfResolveValueCheck(_vpfHash, _value);

            if (vpf.vpfFactoryInterface.isPaused() == false &&
            addressManager.phenomenonsContract().isEnabled(vpf.phenomenonHash)
            ) {
                vpf.vpfFactoryInterface.generateNext();
            }
        }
    }

    function setOpenValueGasLimit(uint _openValueGasLimit) public onlyOwner {
        openValueGasLimit = _openValueGasLimit;
    }

    function setResolveValueGasLimit(uint _resolveValueGasLimit) public onlyOwner {
        resolveValueGasLimit = _resolveValueGasLimit;
    }

    function vpfHash(bytes32 _phenomenonHash, uint _openDate, uint _resolveDate) public pure returns(bytes32) {
        return keccak256(abi.encodePacked(_phenomenonHash, _openDate, _resolveDate));
    }

    function intervalsCount(bytes32 _vpfHash) public view returns(uint) {
        return vpfs[_vpfHash].intervals.length;
    }

    function virtualTradesSummedCount(bytes32 _vpfHash) public view returns(uint) {
        return vpfs[_vpfHash].virtualTradesSummed.length;
    }

    function getIntervals(bytes32 _vpfHash, uint _index) public view returns(int) {
        return vpfs[_vpfHash].intervals[_index];
    }

    function getVirtualTradesSummed(bytes32 _vpfHash, uint _index) public view returns(uint) {
        return vpfs[_vpfHash].virtualTradesSummed[_index];
    }

    modifier onlyValidFactory() {
        require(addressManager.factories(msg.sender));
        _;
    }

    modifier onlyServer() {
        require(msg.sender == serverAddress);
        _;
    }
}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"openValueGasLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_resolveValueGasLimit","type":"uint256"}],"name":"setResolveValueGasLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_vpfHash","type":"bytes32"}],"name":"virtualTradesSummedCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_vpfHash","type":"bytes32"},{"name":"_tradesTotal","type":"uint256"},{"name":"_virtualTradesSummed","type":"uint256[]"}],"name":"fillTradesInfo","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"vpfs","outputs":[{"name":"phenomenonHash","type":"bytes32"},{"name":"openDate","type":"uint256"},{"name":"closeDate","type":"uint256"},{"name":"resolveDate","type":"uint256"},{"name":"maxBeta","type":"uint256"},{"name":"feePercent","type":"uint256"},{"name":"vpfFactoryInterface","type":"address"},{"name":"tradesTotal","type":"uint256"},{"name":"openValue","type":"uint256"},{"name":"resolveValue","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_vpfHash","type":"bytes32"},{"name":"_time","type":"uint256"},{"name":"_value","type":"uint256"}],"name":"updateValue","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_openValueGasLimit","type":"uint256"}],"name":"setOpenValueGasLimit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_vpfHash","type":"bytes32"}],"name":"intervalsCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"resolveValueGasLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_phenomenonHash","type":"bytes32"},{"name":"_openDate","type":"uint256"},{"name":"_closeDate","type":"uint256"},{"name":"_resolveDate","type":"uint256"},{"name":"_maxBeta","type":"uint256"},{"name":"_feePercent","type":"uint256"},{"name":"_intervals","type":"int256[]"}],"name":"addVpf","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_phenomenonHash","type":"bytes32"},{"name":"_openDate","type":"uint256"},{"name":"_resolveDate","type":"uint256"}],"name":"vpfHash","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"serverAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_vpfHash","type":"bytes32"},{"name":"_index","type":"uint256"}],"name":"getIntervals","outputs":[{"name":"","type":"int256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_vpfHash","type":"bytes32"},{"name":"_index","type":"uint256"}],"name":"getVirtualTradesSummed","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_manager","type":"address"},{"name":"_serverAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"hash","type":"bytes32"}],"name":"VpfAdd","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"hash","type":"bytes32"}],"name":"VpfTradesFill","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"hash","type":"bytes32"},{"indexed":false,"name":"value","type":"uint256"}],"name":"VpfOpenValueCheck","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"hash","type":"bytes32"},{"indexed":false,"name":"value","type":"uint256"}],"name":"VpfResolveValueCheck","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"}],"name":"OwnershipRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

  Contract Creation Code Switch To Opcodes View
608060405262030d40600255620f424060035534801561001e57600080fd5b506040516040806112c283398101604052805160209091015160008054600160a060020a03938416600160a060020a03199182161790915560018054821633179055600480549390921692169190911790556112438061007f6000396000f3006080604052600436106100d75763ffffffff60e060020a6000350416630e0d5c7181146100dc578063257fc8381461010357806329e3ae3d1461011d5780634f0cf7e1146101355780635a510022146101935780635b5d2c8f1461020457806366f99a1114610222578063715018a61461023a5780637d61b9fe1461024f5780637eee22c7146102675780638a4cae0e1461027c5780638da5cb5b146102e9578063c510187e1461031a578063db420fe314610338578063eb49168f1461034d578063f2fde38b14610368578063f69a698214610389575b600080fd5b3480156100e857600080fd5b506100f16103a4565b60408051918252519081900360200190f35b34801561010f57600080fd5b5061011b6004356103aa565b005b34801561012957600080fd5b506100f16004356103c6565b34801561014157600080fd5b50604080516020600460443581810135838102808601850190965280855261011b9583359560248035963696956064959394920192918291850190849080828437509497506103db9650505050505050565b34801561019f57600080fd5b506101ab60043561047a565b604080519a8b5260208b0199909952898901979097526060890195909552608088019390935260a0870191909152600160a060020a031660c086015260e085015261010084015261012083015251908190036101400190f35b34801561021057600080fd5b5061011b6004356024356044356104d6565b34801561022e57600080fd5b5061011b6004356108c9565b34801561024657600080fd5b5061011b6108e5565b34801561025b57600080fd5b506100f1600435610953565b34801561027357600080fd5b506100f1610968565b34801561028857600080fd5b506040805160c4356004818101356020818102858101820190965281855261011b95833595602480359660443596606435966084359660a435963696939560e4950192918291908501908490808284375094975061096e9650505050505050565b3480156102f557600080fd5b506102fe611013565b60408051600160a060020a039092168252519081900360200190f35b34801561032657600080fd5b506100f1600435602435604435611022565b34801561034457600080fd5b506102fe6110b2565b34801561035957600080fd5b506100f16004356024356110c1565b34801561037457600080fd5b5061011b600160a060020a03600435166110f1565b34801561039557600080fd5b506100f1600435602435611114565b60025481565b600154600160a060020a031633146103c157600080fd5b600355565b60009081526005602052604090206009015490565b600454600090600160a060020a031633146103f557600080fd5b506000838152600560205260408120600181015490911061041557600080fd5b60088101541561042457600080fd5b60088101839055815161044090600983019060208501906111af565b506040805185815290517fec8583e56acc4d840988ceecf83e83ef58262b42228f1271fbdc4bc865f5d3da9181900360200190a150505050565b6005602081905260009182526040909120805460018201546002830154600384015460048501549585015460078601546008870154600a880154600b909801549698959794969395949293600160a060020a039092169290918a565b60008060009054906101000a9004600160a060020a0316600160a060020a0316637dc0d1d06040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561052a57600080fd5b505af115801561053e573d6000803e3d6000fd5b505050506040513d602081101561055457600080fd5b5051600160a060020a0316331461056a57600080fd5b506000838152600560205260409020600181015483148061058e5750806003015483145b151561062157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f54696d65206f66207265717565737420646f6573206e6f74206d61746368206f60448201527f70656e44617465206e6f7220636865636b446174650000000000000000000000606482015290519081900360840190fd5b806001015483141561067457600a8101829055604080518581526020810184905281517fe59193738628cba6f81e7c9262c9cc3b29351379aa9e19f4cd58151c02b9d265929181900390910190a16108c3565b600b8101829055604080518581526020810184905281517f42bb13414a67de904386347019689beffeb699f9344ca100eff54ba44427cbff929181900390910190a18060070160009054906101000a9004600160a060020a0316600160a060020a031663b187bd266040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561070b57600080fd5b505af115801561071f573d6000803e3d6000fd5b505050506040513d602081101561073557600080fd5b505115801561085057506000809054906101000a9004600160a060020a0316600160a060020a0316631ed6ea6d6040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561079157600080fd5b505af11580156107a5573d6000803e3d6000fd5b505050506040513d60208110156107bb57600080fd5b50518154604080517f0610e037000000000000000000000000000000000000000000000000000000008152600481019290925251600160a060020a0390921691630610e037916024808201926020929091908290030181600087803b15801561082357600080fd5b505af1158015610837573d6000803e3d6000fd5b505050506040513d602081101561084d57600080fd5b50515b156108c3578060070160009054906101000a9004600160a060020a0316600160a060020a031663aad5632a6040518163ffffffff1660e060020a028152600401600060405180830381600087803b1580156108aa57600080fd5b505af11580156108be573d6000803e3d6000fd5b505050505b50505050565b600154600160a060020a031633146108e057600080fd5b600255565b600154600160a060020a031633146108fc57600080fd5b600154604051600160a060020a03909116907ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482090600090a26001805473ffffffffffffffffffffffffffffffffffffffff19169055565b60009081526005602052604090206006015490565b60035481565b60008054604080517ffab5268900000000000000000000000000000000000000000000000000000000815233600482015290518392600160a060020a03169163fab5268991602480830192602092919082900301818787803b1580156109d357600080fd5b505af11580156109e7573d6000803e3d6000fd5b505050506040513d60208110156109fd57600080fd5b50511515610a0a57600080fd5b6000809054906101000a9004600160a060020a0316600160a060020a0316631ed6ea6d6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610a5c57600080fd5b505af1158015610a70573d6000803e3d6000fd5b505050506040513d6020811015610a8657600080fd5b5051604080517f0610e037000000000000000000000000000000000000000000000000000000008152600481018c90529051600160a060020a0390921691630610e037916024808201926020929091908290030181600087803b158015610aec57600080fd5b505af1158015610b00573d6000803e3d6000fd5b505050506040513d6020811015610b1657600080fd5b50511515610b2357600080fd5b610b2e898988611022565b9150610180604051908101604052808a60001916815260200189815260200188815260200187815260200186815260200185815260200184815260200133600160a060020a03168152602001600081526020016000604051908082528060200260200182016040528015610bac578160200160208202803883390190505b50815260006020808301829052604092830182905285825260058082529183902084518155848201516001820155928401516002840155606084015160038401556080840151600484015560a08401519183019190915560c08301518051610c1a92600685019201906111af565b5060e082015160078201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0390921691909117905561010082015160088201556101208201518051610c759160098401916020909101906111af565b50610140820151600a82015561016090910151600b909101556040805183815290517fc06c963faccb83448bc49da27b325ddf9779fe8dd25dae37033d2ddfad5a23b59181900360200190a16000809054906101000a9004600160a060020a0316600160a060020a0316631ed6ea6d6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610d1357600080fd5b505af1158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b5051604080517ff95440ba000000000000000000000000000000000000000000000000000000008152600481018c90529051600160a060020a039092169163f95440ba916024808201926020929091908290030181600087803b158015610da357600080fd5b505af1158015610db7573d6000803e3d6000fd5b505050506040513d6020811015610dcd57600080fd5b505160008054604080517f7dc0d1d00000000000000000000000000000000000000000000000000000000081529051939450600160a060020a0390911692637dc0d1d092600480840193602093929083900390910190829087803b158015610e3457600080fd5b505af1158015610e48573d6000803e3d6000fd5b505050506040513d6020811015610e5e57600080fd5b5051600254604080517f45ff8fde00000000000000000000000000000000000000000000000000000000815260048101869052602481018c905260ff85166044820152606481019290925251600160a060020a03909216916345ff8fde9160848082019260009290919082900301818387803b158015610edd57600080fd5b505af1158015610ef1573d6000803e3d6000fd5b505050506000809054906101000a9004600160a060020a0316600160a060020a0316637dc0d1d06040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015610f4757600080fd5b505af1158015610f5b573d6000803e3d6000fd5b505050506040513d6020811015610f7157600080fd5b5051600354604080517f45ff8fde00000000000000000000000000000000000000000000000000000000815260048101869052602481018a905260ff85166044820152606481019290925251600160a060020a03909216916345ff8fde9160848082019260009290919082900301818387803b158015610ff057600080fd5b505af1158015611004573d6000803e3d6000fd5b50505050505050505050505050565b600154600160a060020a031681565b6040805160208082018690528183018590526060808301859052835180840390910181526080909201928390528151600093918291908401908083835b6020831061107e5780518252601f19909201916020918201910161105f565b5181516020939093036101000a60001901801990911692169190911790526040519201829003909120979650505050505050565b600454600160a060020a031681565b60008281526005602052604081206006018054839081106110de57fe5b9060005260206000200154905092915050565b600154600160a060020a0316331461110857600080fd5b61111181611131565b50565b60008281526005602052604081206009018054839081106110de57fe5b600160a060020a038116151561114657600080fd5b600154604051600160a060020a038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a36001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b8280548282559060005260206000209081019282156111ea579160200282015b828111156111ea5782518255916020019190600101906111cf565b506111f69291506111fa565b5090565b61121491905b808211156111f65760008155600101611200565b905600a165627a7a72305820e1ce8b4ac73fb3e97189b9f0f5e73d115be1fe2a675aaf4f080ca482132e93f900290000000000000000000000004d0e3e6beec9e37eed69218f5e9d2b570dcbf8730000000000000000000000006bf0b47025f29944b1df31251a9ddc95d7949410

   Swarm Source:
bzzr://e1ce8b4ac73fb3e97189b9f0f5e73d115be1fe2a675aaf4f080ca482132e93f9

 

View All
Block Age transaction Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward