Contract Address 0x73c084388F5423c991030C3FA22249D3e02b1960

 

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:
0x73c084388F5423c991030C3FA22249D3e02b1960

Creator:
0x7d528109c7Db392E92740C982A4e36f37c4ca684

Decimal:
8

Issuing Time :
2023-05-04 11:23

Official Website:
#

Social Profiles:
Balance
0.818 MDR

Value
$0.00

Txn Hash
Method
Age
From
To
Quantity
0x5de07f7700310da8e51c64bb920f6b2e2ccb45464008de51926dbec9e16e31dd Transfer 2024-03-18 14:02:58 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0x8222d6b3d570b8607a612e69384881bf890b0d0f 19,895.0000 MDR
0x1f1d87123b0806b8d98ef79790c6076591b0baf023466704bde35674898d04f4 Transfer 2024-03-18 12:06:55 0x14041a8fe5b6cd1aca6d8abf2e8df687fe14c033 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 2,610.6000 MDR
0x390cc4b876a9e20b1eb9dc01e8917baab2fc514de6747ed4336eb9adabd21e4c Transfer 2024-03-18 09:48:55 0xe1482fb0f4d59a1ef6305c0c458063b8bcd139b6 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 811.3000 MDR
0x63f5d4561a4780fb53db080e096970bf1bd8a4ebb6ae21aec3cf626be2c937a0 Transfer 2024-03-13 18:27:09 0x87460eb680c695ef861694424e7fadb6749e0dbf IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 31.3500 MDR
0x0b57ce3b2bfd57d94f1e8ed3f1b9f2587c34524f8e2a2b191a736ba8785905be Transfer 2024-03-13 18:26:33 0xfba1e2961e0174f4efd11b113c8ecdd24fd40d1b IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 15.2000 MDR
0xec8de11df27494dea32b932799897df31b5085e3ebf7cf908162f1830eca5229 Transfer 2024-03-13 18:25:39 0x52aecd05b746756255d4fcd4ac91c9679a0d6277 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 1,060.2000 MDR
0x0912c5c5f3e221f1597ccd13612729950351567a7a26d3ef2f9a11677a189e16 Transfer 2024-03-13 18:24:33 0x9fd1ab7b49fc9cb4195db9cd5f890ecec718d0dd IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 119.1680 MDR
0x83a66173fdc97aeb4e36de38448d113fb7a1257d035d7fb978c5deb925a0969e Transfer 2024-03-13 18:23:54 0xb8cead215df1198fb87c3510a9a14c8574c8b578 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 66.5000 MDR
0x2b740cc3bcfb22cc66e4690ea35a9f44a0db36fab36ac330eaea468784fa8e3e Transfer 2024-03-13 18:20:54 0xbd883bcac78026c34942af1b4e777cea83857ca2 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 4,278.7500 MDR
0x2c59a2f19ce934ee9d19a46071aea96749ec9b34803866d030cc6bb4270d0a70 Transfer 2024-03-13 18:18:45 0x3c415602f6cf84bcd4c5100032952e49b898f976 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 3,407.6000 MDR
0x17ed536c66426a4c0ad1ec9c609fd42e3d5c4cc9e44f6d7978fe7bdfb1e5f954 Transfer 2024-03-13 18:17:45 0x14041a8fe5b6cd1aca6d8abf2e8df687fe14c033 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 3,296.0000 MDR
0x21c0d06fbd219c3cfea93f7e1e56c112f9086082202d6e09afa4a4c35125ec72 Transfer 2024-03-13 17:39:54 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 4,199.0000 MDR
0x4065678fe15b2774546f581759bc6fff17ef551563e36f362de27669e919fa24 Transfer 2024-02-16 12:41:13 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0xaf800d08fe305f27580907019035bcf7488a82dd 5,089.0000 MDR
0xe7003c1eff9a52ac97f1c78dd43b46ef04bd5fc912f3fb7bbfd8242d7a2c4d09 Transfer 2024-02-15 16:34:48 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 5,089.1500 MDR
0xdc87c29609c867d8dd8dcc30f53097ab8bb092f3eb93390dccefc9d5c242a5fe Transfer 2024-02-08 08:46:10 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0x9060d073d713fce1e51ec7496be1756d8bb0b187 11,563.5630 MDR
0x7af22fc00632c107c97bff53f5a0bc5fabacddf3b5254d66c800f6e55257c4d9 Transfer 2024-02-08 07:42:43 0xe1482fb0f4d59a1ef6305c0c458063b8bcd139b6 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 3,633.7500 MDR
0x3c442dc49dc4fad2e708c7fda8e7080016b3f37c2bd84890d9e1ffc58ecfa06d Transfer 2024-02-08 07:41:34 0x52aecd05b746756255d4fcd4ac91c9679a0d6277 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 264.1000 MDR
0xc3c730fedb6b714d340a1eeed843d52bd555d607452f0ad506646d6a531bf4f6 Transfer 2024-02-08 07:40:46 0x4a9b5f22c2b073eaed87f437d3bd212ef246c6a2 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 70.3000 MDR
0x765418e7429288f6fab20d09390f22fb965551d1298b577600f02b18c08f68c4 Transfer 2024-02-08 07:39:43 0xb55317d655c9683e17655b8690db1a05169b3c80 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 194.7500 MDR
0xeb94d3a6589db7caa22060557a424df68d832ccf4c00363cf175a2d100a41547 Transfer 2024-02-08 07:37:28 0x3c415602f6cf84bcd4c5100032952e49b898f976 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 3,700.2500 MDR
0x620ba382b30cb1c2413da32d992e5684c0e4f4d4cc983d70e40426f3c9ec262e Transfer 2024-01-26 15:23:47 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0xfadb471d007be01cc497754209e118d448e21f69 25,000.0000 MDR
0x008c5169caac5a1963364b0e53ee3b0979cd14d7a59d42afd951bdf885e709f8 Transfer 2024-01-26 15:08:05 0x9fd1ab7b49fc9cb4195db9cd5f890ecec718d0dd IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 23,700.0000 MDR
0x956c0566eb84bac40f35aba3e4bcf2379e6c4824d12fe29bad3c61a73873cd39 Transfer 2024-01-04 13:10:42 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0xdb147f7f8feb0db196a28d3e4ba5c19f5b924929 10,000.0000 MDR
0xce32a4204258c968f2474034dc6ca0402cac23dbfc14a8510a19419d66ad13ba Transfer 2024-01-04 07:39:33 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0xdb147f7f8feb0db196a28d3e4ba5c19f5b924929 4,682.0000 MDR
0x17258e5857e0935a5081cdc649e207b7a7e08c3cf2722560f321260fc655b3d9 Transfer 2024-01-01 10:47:18 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 3,689.8000 MDR
0x44b94edd53e77a05d1c418696757fb044e4f879ad8877c9735d064c3e63a3be3 Transfer 2023-12-20 20:21:43 0x4a9b5f22c2b073eaed87f437d3bd212ef246c6a2 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 77.9000 MDR
0x682c41427847adc55007a1fcf1bfa5aad262d2c7a9b8e826491fc6cfa99313ff Transfer 2023-12-20 20:20:37 0x14041a8fe5b6cd1aca6d8abf2e8df687fe14c033 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 312.5500 MDR
0x3835da211fd4e64bd8e62e4c0cbec2c26bbabd787af324d37a54f78f43213941 Transfer 2023-12-20 20:19:40 0x2f9e0973647f077b86b0058e41954137ae33ea94 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 199.5000 MDR
0x4611cdd2a6d332acc2439e3eb8fae1f06897e02482abfb71cc318c0cb38ae36a Transfer 2023-12-20 05:46:08 0x52aecd05b746756255d4fcd4ac91c9679a0d6277 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 433.2000 MDR
0x3eaea8327558cb557c57edc1f34157c9e1d75b7073d163b1a8233daeb50ef474 Transfer 2023-12-20 05:44:47 0x95b7ceed7ac809757fb8152b2e6697fe469e96a0 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 308.7500 MDR
0x742f906068a0fe2c867161006f094de7923dd8e5a20f5eed1e68e0bd6362388d Transfer 2023-12-17 11:51:14 0xac8e586835af4d800a6a1c3ff2530a0bafaa0bda IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 71.2500 MDR
0xb98918e86180621335a4e7a9e4e531e4b9185d068308faf249a2e303221fcd70 Transfer 2023-12-17 11:48:53 0x2939205ea8ead6ee1c1c9c4681ce523d53b7f8e6 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 120.6500 MDR
0xf58b024c8d2ed24d584c8da7e6a234201acd04423b3c2d38c18b9823a2e8089a Transfer 2023-12-17 11:47:59 0x2f9e0973647f077b86b0058e41954137ae33ea94 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 222.3000 MDR
0xaa6ae2f554be41fe067fc50e12e0dea37478dacb6e97981dd0e6e2ab8ec40573 Transfer 2023-12-17 11:46:35 0xe69fc254cdbae9dead9e928ad9e7ceae502095a4 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 172.9000 MDR
0xb721c8c5574019f76fe44ce8430cbda399b6cff3af175e0a59a0851ea8b5ca53 Transfer 2023-12-17 11:45:32 0xe6435365455d040ede9d3ad7c9e48470d08abe2a IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 1,022.5800 MDR
0xcebe1e01900a051256b9248976f2d0864cbef17a88a73a2772edfedf9cd65fab Transfer 2023-12-17 11:44:05 0xe4b70e6275933a1f9dc77a7c5594555e4b099bce IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 77.9000 MDR
0x9be35d066f31be278868fd6c74dd9c2e5d46033523e97fe5de9884d1a3d56a24 Transfer 2023-12-17 11:43:05 0xfa705a7051c3575d80dc5126eb223e49d4b2dd95 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 1,643.5000 MDR
0x5a43dcaf17f29dd3e5bd9329716c49ca8e6fd16e3eb34907d2707c3e772b4af9 Transfer 2023-12-17 11:42:14 0x4a9b5f22c2b073eaed87f437d3bd212ef246c6a2 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 85.5000 MDR
0x4efe39c621d214c19c21ba2ff78bdb6296f51433c7b789a884196161d3433966 Transfer 2023-12-17 11:41:11 0xb55317d655c9683e17655b8690db1a05169b3c80 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 769.5000 MDR
0x9d4fdc81e656d2fc6f111bf8e02925ac24715f71e8fd5abd11264fdb66b30fef Transfer 2023-12-17 11:39:23 0x52aecd05b746756255d4fcd4ac91c9679a0d6277 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 481.6500 MDR
0xb37e68a84d52561c2347bae155721b596e083cdf22b2598b8724b561b16f1007 Transfer 2023-12-17 11:38:41 0x9fd1ab7b49fc9cb4195db9cd5f890ecec718d0dd IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 252.7000 MDR
0xf399633ec66471e5f1cdc0dc1ec58969eaca6cdb270da0e9057b01596920be49 Transfer 2023-12-14 13:48:55 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0x95b7ceed7ac809757fb8152b2e6697fe469e96a0 267.9000 MDR
0xbebff5c2cd09f95f918576712b4b1a08b8c01607395114d24d607169bb0037cc Transfer 2023-12-12 15:43:17 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0xdb147f7f8feb0db196a28d3e4ba5c19f5b924929 2,250.0000 MDR
0x2270ba21bb6f55780f209a0855351ff45539efe87af968eb6f33e0a16a253196 Transfer 2023-12-06 10:57:48 0x95b7ceed7ac809757fb8152b2e6697fe469e96a0 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 267.9000 MDR
0xbd2c4ea5d49fb72430b9c76f96d171bb463378427444c01cdb1ae5e40b107ee5 Transfer 2023-12-02 13:59:24 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 3,689.8000 MDR
0x6e7425362204309d9b4528565083dc3b9f3c6c0e533f9f7c7e0d6f11910eb20e Transfer 2023-11-11 21:47:39 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0xdb147f7f8feb0db196a28d3e4ba5c19f5b924929 7,100.0000 MDR
0x5dd4de7c2d982647ac8d400fd30808918483832436cad1433d96fe1c1099a9bc Transfer 2023-11-05 15:41:04 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0xdb147f7f8feb0db196a28d3e4ba5c19f5b924929 21,000.0000 MDR
0x0f30f063196b7ce6f41c8fd1c40cd979d20dffb377cd3be46b69944f117c271d Transfer 2023-11-05 13:12:01 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 1,400.3000 MDR
0xcc082be71fad3e81074312532dc500f579ee33768cded6ae106be9cf6e434d71 Transfer 2023-11-04 07:03:04 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0xdb147f7f8feb0db196a28d3e4ba5c19f5b924929 2,649.0000 MDR
0x11695a0f162c83eb0a44a3dbeec20e579243c8ee7048d0ed22ed3b8a8489b966 Transfer 2023-10-26 06:29:16 0x2f9e0973647f077b86b0058e41954137ae33ea94 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 247.0000 MDR
0x65b0f6c76113847879de3abca25d5fbdf577734c32885b158e385128bc03c2cd Transfer 2023-10-26 06:27:31 0xe69fc254cdbae9dead9e928ad9e7ceae502095a4 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 191.9500 MDR
0xfc5f88fa9c10cb4f144314dc2ad55d0cd12f62e98b2863c39d0be0d1102014ae Transfer 2023-10-26 06:26:19 0xe6435365455d040ede9d3ad7c9e48470d08abe2a IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 948.1000 MDR
0x8a28e70c1bc01775690a0ac9e7cdc96407ae592373ac91012db1ea25424cddd2 Transfer 2023-10-26 06:23:25 0xfa705a7051c3575d80dc5126eb223e49d4b2dd95 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 1,826.9000 MDR
0xcfbdef40b1d29a8f95d1ffce65b4b0a0091e5fb16c4aeab1cb5b33cd5a30eb64 Transfer 2023-10-26 06:22:16 0xb55317d655c9683e17655b8690db1a05169b3c80 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 563.3500 MDR
0x1b3e0152ad35c86275bbf29d97f1a9c842448f26dec43c2d53bdcb6b59b092de Transfer 2023-10-25 13:31:13 0xc5b6e9134aca33b27ede77d19574d18adaa2cc31 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 8,930.0000 MDR
0xf8701cfa5e81c57162a74e908ae06e823b56d0dd15a8215470116ceb9d9c45a4 Transfer 2023-10-25 12:50:40 0x52aecd05b746756255d4fcd4ac91c9679a0d6277 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 1,829.1230 MDR
0x0f517acc608c46b97e43c23070e3b9d512b44ecf94649c24954cefc56b426c91 Transfer 2023-10-23 10:08:04 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 1,532.3500 MDR
0x6be1e9e84867ba0deefe4d58994fdda680665d3e20ced320e1bdd54fd1cd6cf6 Transfer 2023-10-11 12:45:04 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 1,520.0000 MDR
0x1d5043f46807184cb461de643ae3f8c05701137143c1c126e4d29b9c4a5fcc5d Transfer 2023-10-03 06:34:25 0x9fd1ab7b49fc9cb4195db9cd5f890ecec718d0dd IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 13,000.0000 MDR
0x39a99936a6547839f7e63497c2e716aefea9774375ce53ff681839be6e4c9a06 Transfer 2023-10-01 17:00:07 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 2,122.3000 MDR
0x0cf15561583e6330e24a222b0894144a33a4b1ebbce1b78c490e85c0fd6a62f9 Transfer 2023-09-26 16:13:28 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 4,938.1000 MDR
0x6705e81dbd028d0413d49723fe4c19b59df93c976fd854d75e5b440575da6e4f Transfer 2023-07-27 16:28:24 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 OUT 0x9fd1ab7b49fc9cb4195db9cd5f890ecec718d0dd 3,890.2400 MDR
0x71f53de9d07a6931fda31b1ee53654d27b0779560f2a7c3bbb79ba4560018092 Transfer 2023-07-27 15:16:21 0x20133264da3139b659df04cbf889b98864c7cb66 IN 0xcb2e2fad865d7ea478230cf39caf8b87aacb13c3 3,890.2500 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.