Contract Address 0xea8DfeBBd4DB9E93513b7d797adF14b7b3e15edb

 

Overview

Total Supply:
1,000,000,000 MDR

Circulating Supply:
300,000,000 MDR

Holders:
Addresses

Price:
$0.07

Market Cap/Fully MC:
$400,000,000 (@ $0.07)

Token:
My Name Tag:
Not Available, login to update

Contract:
0xea8DfeBBd4DB9E93513b7d797adF14b7b3e15edb

Creator:
0x44B87A2a404DA6393e16b2e69aC86A40d4EF474c

Decimal:
8

Issuing Time :
2023-05-04 11:23

Official Website:
#

Social Profiles:
Balance
124078.7 MDR

Value
$0.00

Txn Hash
Method
Age
From
To
Quantity
0x88a971ba3a6f95bb622f86efa73a93447048b93602567e995a7e5a139b1f9da9 Transfer 2024-12-18 13:03:02 0x395d3b45e250c6b7709c32feeb5251350b674211 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 4,078.3500 MDR
0xa0a9aba95416f32cfa2967a465f9d72ebab1a1825075eb4b04e4569179d41bf3 Transfer 2024-12-13 09:06:32 0x446793712ab347e6bcad2d4f914410469ee5f003 OUT 0x040f14ffd64eb691467c252bd8dd2f84f02119dc 45,000.0000 MDR
0x25d129a6917376e6f9c0f8cf0b5ff0c3cb942e188816d497d3864276ca019017 Transfer 2024-11-30 13:57:41 0x446793712ab347e6bcad2d4f914410469ee5f003 OUT 0xb855ae8ad4130fa70b346eeb95695b807a74a714 35,000.0000 MDR
0x6d1ab892e0b255ccb9c2d01617efb7f27884c1a513956093c09fb3365e4f7530 Transfer 2024-11-20 15:05:17 0x446793712ab347e6bcad2d4f914410469ee5f003 OUT 0x040f14ffd64eb691467c252bd8dd2f84f02119dc 45,248.0000 MDR
0x08bb0d7d445e4b297701cca7066087e1a70923875e0fab49f84ebab5c45063d7 Transfer 2024-11-20 10:44:05 0x395d3b45e250c6b7709c32feeb5251350b674211 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 2,748.3500 MDR
0x573e5403b85988688017d05c95825077ed0a9984f5edfeb0be5c66ec431969ca Transfer 2024-11-14 11:53:56 0x446793712ab347e6bcad2d4f914410469ee5f003 OUT 0x040f14ffd64eb691467c252bd8dd2f84f02119dc 12,500.0000 MDR
0x42ec12a688da7b1b91986a876ec2aee1cbb76f2bd7c8d4e248f369a2336122a2 Transfer 2024-10-17 11:51:15 0x446793712ab347e6bcad2d4f914410469ee5f003 OUT 0x9009ae98306d7619254cc95f7589597633248267 35,000.0000 MDR
0x7e9a7b16a5d6fabd7cc2a653d1d78266d168d618915f9d76ee00fa8ab7db7b5f Transfer 2024-10-16 12:13:30 0x446793712ab347e6bcad2d4f914410469ee5f003 OUT 0x040f14ffd64eb691467c252bd8dd2f84f02119dc 10,000.0000 MDR
0x17620f5092b6b39848098410c963b5da04bc7afd32f8ec5476de77ba344bb8de Transfer 2024-10-05 15:29:15 0x446793712ab347e6bcad2d4f914410469ee5f003 OUT 0x040f14ffd64eb691467c252bd8dd2f84f02119dc 14,208.6500 MDR
0xcb7534215c73b3e4f3a2a574aa8a758d7eed3136da1cb1188e72bbddd3a71a5c Transfer 2024-10-05 15:20:00 0xce9d9dd5fa4710508514726e81a54e01623194cd IN 0x446793712ab347e6bcad2d4f914410469ee5f003 5,130.0000 MDR
0xd4def05e9a623716241bd9f38d6a30a5c31e589357ae159c6e503987dafafb0c Transfer 2024-10-05 15:19:00 0x4d48b3d2f5243a824068b7e25d1e9b70e3d3571b IN 0x446793712ab347e6bcad2d4f914410469ee5f003 5,386.5000 MDR
0x24b92cb45d4e27426fa6c3562ccaacccedbc166c6a8c1f1fd091abbda5bf4dc0 Transfer 2024-10-05 15:18:00 0xf51667d3c7a7e8f604386e7f07829d252f762bec IN 0x446793712ab347e6bcad2d4f914410469ee5f003 4,617.0000 MDR
0x688e19e914b81448af56d3414f302f703759f0d9978f8a73e8a404d46593cbdd Transfer 2024-10-05 15:17:03 0xaebcef756849a96590ab5311e0834647b692389e IN 0x446793712ab347e6bcad2d4f914410469ee5f003 5,386.5000 MDR
0xf2e30874dd3049f36e20f06ebef69e2ea766e61af476b4d5105850673ce818a2 Transfer 2024-10-05 15:16:21 0x25187333aae7e02ccc45161e2a697db16b11a7fc IN 0x446793712ab347e6bcad2d4f914410469ee5f003 5,386.5000 MDR
0x600a5743469650338fe0ba692c9e332b66553ad3d970b698f12e546b9f57e4d6 Transfer 2024-10-05 15:15:15 0x1029c6fd62dbcee16b29f0b6b53d63b691ba17a7 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 6,156.0000 MDR
0x20f7a4a05d60b360b875ed7d9c9a75988cd4c569fbb55017e29697550b5fdc1a Transfer 2024-10-05 15:12:06 0x555426afd5649d7fd687a72a5f9a7ae95811398d IN 0x446793712ab347e6bcad2d4f914410469ee5f003 6,156.0000 MDR
0xfdee268c06dbfe305ad24abe7893479178695453c069ca66bf06cbaa9ef4cf42 Transfer 2024-10-05 15:11:18 0x8e2caf065314c845d0396d5f680b590118b8d791 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 3,240.4500 MDR
0xae7fbc5b16c5f5a2f5f2cfd105cb415bfe45935a3fa290302399fd9508645a18 Transfer 2024-10-05 15:10:21 0xfa3dd0748f3b5f0dee58ebb5dfe228ae25d642d7 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 9,725.3500 MDR
0x9cb91309253a34a78914661a1a4018567e318e1409b0477dad9cdf0aadb0d19f Transfer 2024-10-05 15:09:21 0x538916073e1c6c38a06ca3d489cd53c996913d98 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 7,160.1500 MDR
0x3a0c0f6dc55124db8548973e68f6957276a971651d356b7c564889902960293f Transfer 2024-10-05 15:08:06 0x035faadfeba911d4553b423c3c9c24f4ce4b19b0 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 2,473.8000 MDR
0xc65ab5b47372f1a3a2229e65fbdb111822cc39127b4c06437cf9a5459547fc05 Transfer 2024-10-05 15:07:03 0x5e919944d545984a9980eb59a188acd1ab46fe4f IN 0x446793712ab347e6bcad2d4f914410469ee5f003 6,852.3500 MDR
0x47ece39dab6d6e1e418c0ba15be2dea3133a7147e8e60d92aaa424e65ef2e6c4 Transfer 2024-10-05 15:06:00 0xbad157bf429ee2f1a87c6a8eaf4d9f0622b2ac23 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 7,160.1500 MDR
0xacff08763330ec0e34206ddd02a4580295409216934bcdb597bec903fec8052b Transfer 2024-10-04 12:15:06 0xbea7f8e3baf335291257c1aabd3289702657d563 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 4,174.3000 MDR
0xbea4a724080d9553cdac3db104a9a78cebba8ae49ae5fa111c00c8f973e44674 Transfer 2024-10-03 18:42:33 0x11fd683569c96c17579352b1881f22d21bb1402c IN 0x446793712ab347e6bcad2d4f914410469ee5f003 12,198.0000 MDR
0x88546baa094c705e317a4601a389bdeb82574692cea4f79080bea11fa7e62e49 Transfer 2024-10-02 17:32:06 0x87c0110685cc25c37759347b59bf0e9b531a26ab IN 0x446793712ab347e6bcad2d4f914410469ee5f003 807.5000 MDR
0x413d0a20c25d970cb78fc3db9b5bed0ac5dee1be2768d4bc86873fa1df4ca6dc Transfer 2024-10-02 17:28:36 0x5a5e2d3c1827cefb74b0c69e6a070dc171b07395 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 17,085.7500 MDR
0xabe2a0b0c13ae178741544f86fd5242997abd525ebbf8bc645e3f48b3b8d99f2 Transfer 2024-10-02 00:06:48 0xbf283753d800e9fe520617c317edaf9fd272644e IN 0x446793712ab347e6bcad2d4f914410469ee5f003 4,096.4000 MDR
0x18eccffc29ce243690a8aa8c12260390d935271e3e05adc88c4f0484b1be6018 Transfer 2024-10-02 00:05:09 0x7b8c5aff2bd1f7ca8c829601e1f01636450f8bc2 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 305.9000 MDR
0x0d74b3c9f98eb53cb136bfdfc033746b77fc0775455f538f0f257dfbcbe499b2 Transfer 2024-10-02 00:04:27 0xa400a0f628fd101a556c15f91cf4b6f1ae18bac0 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 4,599.9000 MDR
0xda1d1dd84e58a54be126d051eb518a05d29e70f04e728a9a9cb5e82faacdb976 Transfer 2024-10-02 00:03:51 0xbd2b1ea8ffd9ce88746e73b15d9c604843245efc IN 0x446793712ab347e6bcad2d4f914410469ee5f003 6,524.6000 MDR
0x22332115ab9102d771cb7fdfb8baf6e93b2b596e6e5bc21e7c4139224c02cb55 Transfer 2024-10-02 00:03:09 0x2a0c3b57ef196491376b081a63ec13bd06a68f90 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 2,199.2500 MDR
0xbbf3ca3d0522417401e97fe54436bc2b7dfc041a8e6de9cc655a51e40d368b5c Transfer 2024-10-02 00:02:33 0x45514a4da384a0045cc1de4d25649199dd05f687 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 7,829.9000 MDR
0x6669a1f603bed1ef705e55a12d564b5bd1bbbf714a1580e044a13512dd095afb Transfer 2024-10-02 00:01:48 0xc1940f2982506d56e3c12110ab0aa9e22d4e41c4 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 2,925.0500 MDR
0x87fc202cd9802ea9918601f07e4c08f5f7b24974a28b41836372cb5d617c9544 Transfer 2024-10-02 00:01:03 0x172c2059f123afbcdb4639a4e8397a948c70bfed IN 0x446793712ab347e6bcad2d4f914410469ee5f003 4,174.3000 MDR
0x847e356f027b4b3e0b693d3e6fcdc02e32f34ee0d2647c293695ab31cdc4377a Transfer 2024-10-02 00:00:27 0x053057e4669ee614fd07134733628123197ab7eb IN 0x446793712ab347e6bcad2d4f914410469ee5f003 7,748.2000 MDR
0x5c016d036c8ce4c9809304f7da081836c7d65d423bc80a6a495b5d6adfc30d52 Transfer 2024-10-01 23:59:51 0xefde909ab55f00824277da5d0d0351717ec5a6c0 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 243.2000 MDR
0x3af1b095101c62518755c2f77dcc0898ba41656ad67294f808661490172d97e5 Transfer 2024-10-01 23:59:09 0x7e7da0e8936c8619d0517447e7c9b6faca46558a IN 0x446793712ab347e6bcad2d4f914410469ee5f003 8,865.4000 MDR
0x3bbf229256d6ca943fdb877951f792c1aba7327f2f2378c2bb0b072c7382ba0c Transfer 2024-10-01 23:58:36 0xeb3672b4a78dc2c2756ca95626388f3901f3dc07 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 406.6000 MDR
0x884b095da7af8fa12af31684ba1bc303b5c9633b3ffa3d1003827875f08dfa24 Transfer 2024-10-01 23:57:54 0x1bd4183cd5107ea1d2d0d2000fbb0564f2d86462 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 2,267.6500 MDR
0x3da8c78037aad51b5811ae6afafee5e8822f07825da332b2b4075eec0d57fea4 Transfer 2024-09-13 12:13:58 0x9009ae98306d7619254cc95f7589597633248267 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 150,000.0000 MDR
0x54ccd54c0ff730ff1e655e278a0a3caf2c3932b1674f2126520e5db766c2c994 Transfer 2024-09-03 15:57:30 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 2,926.0000 MDR
0x701859f0f2a0129c979854221a93832dcaf287c558b9229d28e60f654b2ebdea Transfer 2024-08-01 12:55:06 0x446793712ab347e6bcad2d4f914410469ee5f003 OUT 0x9009ae98306d7619254cc95f7589597633248267 2,748.3500 MDR
0x4784f231730090efb4a2b16e4a2a6e08cea59b8814478a2f72d1e113ba3e5db6 Transfer 2024-07-31 10:26:00 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 2,748.3500 MDR
0xf79d0a4a017bdaea7e9c32581669833a84141383a0fd40402c0a2f3df88880e2 Transfer 2024-07-02 16:12:43 0x446793712ab347e6bcad2d4f914410469ee5f003 OUT 0x9009ae98306d7619254cc95f7589597633248267 1,330.0000 MDR
0x5ed84361a9d2bfebe13274b346c82a636deae0e1d7c09d6fb4a80b43b4f84486 Transfer 2024-07-01 21:58:24 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0x446793712ab347e6bcad2d4f914410469ee5f003 1,330.0000 MDR

 Latest 9 ERC-20 Token Transfer Events

Txn Hash
Block
From
To
Value [Txn Fee]
0x4c8599fa5db502d29d78ad3c85e39ff7160c4775e4e645cd344af13d662eded3 16807914 2 hrs 6 mins ago 0x931cdb4f83672a7803a552414c026b7914bb72ae OUT 0x1fd1259fa8cdc60c6e8c86cfa592ca1b8403dfad 0 BLN 0.000143891192

 Latest 25 blocks (From a total of 353,417 blocks with 47,300.41 BLN in fees)

Block Transaction Gas Used Reward
16738610 31 secs ago 430 19,977,660 (99.89%)
0.16001155598032753 BLN
16738609 33 secs ago 349 19,967,071 (99.84%)
1.368512730518157196 BLN
16738608 35 secs ago 430 19,959,026 (99.80%)
1.119899900678144967 BLN

pragma solidity ^0.4.24;

contract ERC20 {
    uint256 public totalSupply;

    function balanceOf(address who) public view returns (uint256 balance);

    function allowance(address owner, address spender) public view returns (uint256 remaining);

    function transfer(address to, uint256 value) public returns (bool success);

    function approve(address spender, uint256 value) public returns (bool success);

    function transferFrom(address from, address to, uint256 value) public returns (bool success);

    event Transfer(address indexed _from, address indexed _to, uint256 _value);

    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
}

library SafeMath {
    function sub(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a - b;
        assert(b <= a && c <= a);
        return c;
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a + b;
        assert(c >= a && c>=b);
        return c;
    }
}

library SafeERC20 {
    function safeTransfer(ERC20 _token, address _to, uint256 _value) internal {
        require(_token.transfer(_to, _value));
    }
}

contract Owned {
    address public owner;

    constructor() public {
        owner = msg.sender;
    }

    modifier onlyOwner {
        require(msg.sender == owner,"O1- Owner only function");
        _;
    }

    function setOwner(address newOwner) onlyOwner public {
        owner = newOwner;
    }
}

contract Pausable is Owned {
    event Pause();
    event Unpause();

    bool public paused = false;

    modifier whenNotPaused() {
        require(!paused);
        _;
    }

    modifier whenPaused() {
        require(paused);
        _;
    }

    function pause() public onlyOwner whenNotPaused {
        paused = true;
        emit Pause();
    }

    function unpause() public onlyOwner whenPaused {
        paused = false;
        emit Unpause();
    }
}

contract AVNrich is Owned, Pausable, ERC20 {
    using SafeMath for uint256;
    using SafeERC20 for ERC20;

    mapping (address => uint256) public balances;
    mapping (address => mapping (address => uint256)) public allowed;
    mapping (address => bool) public frozenAccount;
    mapping (address => bool) public verifyPublisher;
    mapping (address => bool) public verifyWallet;

    struct fStruct { uint256 index; }
    mapping(string => fStruct) private fileHashes;
    string[] private fileIndex;

    string public constant name = "Bullion Share";
    uint8 public constant decimals = 8;
    string public constant symbol = "BLNS";
    uint256 public constant initialSupply = 21000000;
    uint256 public validationPrice = 7 * 10 ** uint(decimals);
    address public validationWallet = address(0);

    constructor() public {
        validationWallet = msg.sender;
        verifyWallet[msg.sender] = true;
        totalSupply = initialSupply * 10 ** uint(decimals);
        balances[msg.sender] = totalSupply;
        emit Transfer(address(0),owner,initialSupply);
    }

    function () public payable {
        revert();
    }

    function transfer(address _to, uint256 _value) public whenNotPaused returns (bool success) {
        require(_to != msg.sender,"T1- Recipient can not be the same as sender");
        require(_to != address(0),"T2- Please check the recipient address");
        require(balances[msg.sender] >= _value,"T3- The balance of sender is too low");
        require(!frozenAccount[msg.sender],"T4- The wallet of sender is frozen");
        require(!frozenAccount[_to],"T5- The wallet of recipient is frozen");

        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);

        emit Transfer(msg.sender, _to, _value);

        return true;
    }

    function transferFrom(address _from, address _to, uint256 _value) public whenNotPaused returns (bool success) {
        require(_to != address(0),"TF1- Please check the recipient address");
        require(balances[_from] >= _value,"TF2- The balance of sender is too low");
        require(allowed[_from][msg.sender] >= _value,"TF3- The allowance of sender is too low");
        require(!frozenAccount[_from],"TF4- The wallet of sender is frozen");
        require(!frozenAccount[_to],"TF5- The wallet of recipient is frozen");

        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);

        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);

        emit Transfer(_from, _to, _value);

        return true;
    }

    function balanceOf(address _owner) public view returns (uint256 balance) {
        return balances[_owner];
    }

    function approve(address _spender, uint256 _value) public whenNotPaused returns (bool success) {
        require((_value == 0) || (allowed[msg.sender][_spender] == 0),"A1- Reset allowance to 0 first");

        allowed[msg.sender][_spender] = _value;

        emit Approval(msg.sender, _spender, _value);

        return true;
    }

    function increaseApproval(address _spender, uint256 _addedValue) public whenNotPaused returns (bool) {
        allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);

        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);

        return true;
    }

    function decreaseApproval(address _spender, uint256 _subtractedValue) public whenNotPaused returns (bool) {
        allowed[msg.sender][_spender] = allowed[msg.sender][_spender].sub(_subtractedValue);

        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);

        return true;
    }

    function allowance(address _owner, address _spender) public view returns (uint256 remaining) {
        return allowed[_owner][_spender];
    }

    struct TKN { address sender; uint256 value; bytes data; bytes4 sig; }

    function tokenFallback(address _from, uint256 _value, bytes _data) public pure returns (bool) {
        TKN memory tkn;
        tkn.sender = _from;
        tkn.value = _value;
        tkn.data = _data;
        uint32 u = uint32(_data[3]) + (uint32(_data[2]) << 8) + (uint32(_data[1]) << 16) + (uint32(_data[0]) << 24);
        tkn.sig = bytes4(u);
        return true;
    }

    function transferToken(address tokenAddress, uint256 tokens) public onlyOwner {
        ERC20(tokenAddress).safeTransfer(owner,tokens);
    }

    function burn(uint256 _value) public onlyOwner returns (bool) {
        require(_value <= balances[msg.sender],"B1- The balance of burner is too low");

        balances[msg.sender] = balances[msg.sender].sub(_value);
        totalSupply = totalSupply.sub(_value);

        emit Burn(msg.sender, _value);

        emit Transfer(msg.sender, address(0), _value);

        return true;
    }

    function freeze(address _address, bool _state) public onlyOwner returns (bool) {
        frozenAccount[_address] = _state;

        emit Freeze(_address, _state);

        return true;
    }

    function validatePublisher(address Address, bool State, string Publisher) public onlyOwner returns (bool) {
        verifyPublisher[Address] = State;

        emit ValidatePublisher(Address,State,Publisher);

        return true;
    }

    function validateWallet(address Address, bool State, string Wallet) public onlyOwner returns (bool) {
        verifyWallet[Address] = State;

        emit ValidateWallet(Address,State,Wallet);

        return true;
    }

    function validateFile(address To, uint256 Payment, bytes Data, bool cStore, bool eLog) public whenNotPaused returns (bool) {
        require(Payment>=validationPrice,"V1- Insufficient payment provided");
        require(verifyPublisher[msg.sender],"V2- Unverified publisher address");
        require(!frozenAccount[msg.sender],"V3- The wallet of publisher is frozen");
        require(Data.length == 64,"V4- Invalid hash provided");

        if (!verifyWallet[To] || frozenAccount[To]) {
            To = validationWallet;
        }

        uint256 index = 0;
        string memory fileHash = string(Data);

        if (cStore) {
            if (fileIndex.length > 0) {
                require(fileHashes[fileHash].index == 0,"V5- This hash was previously validated");
            }

            fileHashes[fileHash].index = fileIndex.push(fileHash)-1;
            index = fileHashes[fileHash].index;
        }

        if (allowed[To][msg.sender] >= Payment) {
            allowed[To][msg.sender] = allowed[To][msg.sender].sub(Payment);
        } else {
            balances[msg.sender] = balances[msg.sender].sub(Payment);
            balances[To] = balances[To].add(Payment);
        }

        emit Transfer(msg.sender, To, Payment);

        if (eLog) {
            emit ValidateFile(index,fileHash);
        }

        return true;
    }

    function verifyFile(string fileHash) public view returns (bool) {
        if (fileIndex.length == 0) {
            return false;
        }

        bytes memory a = bytes(fileIndex[fileHashes[fileHash].index]);
        bytes memory b = bytes(fileHash);

        if (a.length != b.length) {
            return false;
        }

        for (uint256 i = 0; i < a.length; i ++) {
            if (a[i] != b[i]) {
                return false;
            }
        }

        return true;
    }

    function setPrice(uint256 newPrice) public onlyOwner {
        validationPrice = newPrice;
    }

    function setWallet(address newWallet) public onlyOwner {
        validationWallet = newWallet;
    }

    function listFiles(uint256 startAt, uint256 stopAt) onlyOwner public returns (bool) {
        if (fileIndex.length == 0) {
            return false;
        }

        require(startAt <= fileIndex.length-1,"L1- Please select a valid start");

        if (stopAt > 0) {
            require(stopAt > startAt && stopAt <= fileIndex.length-1,"L2- Please select a valid stop");
        } else {
            stopAt = fileIndex.length-1;
        }

        for (uint256 i = startAt; i <= stopAt; i++) {
            emit LogEvent(i,fileIndex[i]);
        }

        return true;
    }

    event Burn(address indexed burner, uint256 value);
    event Freeze(address target, bool frozen);

    event ValidateFile(uint256 index, string data);
    event ValidatePublisher(address indexed publisherAddress, bool state, string indexed publisherName);
    event ValidateWallet(address indexed walletAddress, bool state, string indexed walletName);

    event LogEvent(uint256 index, string data) anonymous;
}
Block Uncle Number Difficulty Gas Used Reward

Analytics data

Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.