Remove classic, kotti, mordor, expanse (#52)
This commit is contained in:
parent
ae312bcb01
commit
698fa6e8f6
File diff suppressed because it is too large
Load Diff
@ -1,134 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "Expanse",
|
|
||||||
"dataDir": "expanse",
|
|
||||||
"engine": {
|
|
||||||
"Ethash": {
|
|
||||||
"params": {
|
|
||||||
"minimumDifficulty": "0x020000",
|
|
||||||
"difficultyBoundDivisor": "0x0800",
|
|
||||||
"difficultyIncrementDivisor": "0x3C",
|
|
||||||
"durationLimit": "0x3C",
|
|
||||||
"blockReward": {
|
|
||||||
"0x0": "0x6f05b59d3b200000",
|
|
||||||
"0xC3500": "0x3782DACE9D900000"
|
|
||||||
},
|
|
||||||
"homesteadTransition": "0x30d40",
|
|
||||||
"difficultyHardforkTransition": "0x59d9",
|
|
||||||
"difficultyHardforkBoundDivisor": "0x0200",
|
|
||||||
"bombDefuseTransition": "0x30d40",
|
|
||||||
"eip100bTransition": "0xC3500",
|
|
||||||
"metropolisDifficultyIncrementDivisor": "0x1E",
|
|
||||||
"difficultyBombDelays": {
|
|
||||||
"0xC3500": 3000000
|
|
||||||
},
|
|
||||||
"expip2Transition": "0xC3500",
|
|
||||||
"expip2DurationLimit": "0x1E"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"params": {
|
|
||||||
"gasLimitBoundDivisor": "0x0400",
|
|
||||||
"registrar" : "0x6c221ca53705f3497ec90ca7b84c59ae7382fc21",
|
|
||||||
"accountStartNonce": "0x00",
|
|
||||||
"maximumExtraDataSize": "0x20",
|
|
||||||
"minGasLimit": "0x1388",
|
|
||||||
"networkID": "0x1",
|
|
||||||
"chainID": "0x2",
|
|
||||||
"forkBlock": "0xDBBA0",
|
|
||||||
"forkCanonHash": "0x8e7bed51e24f5174090408664ac476b90b5e1199a947af7442f1ac88263fc8c7",
|
|
||||||
"subprotocolName": "exp",
|
|
||||||
"eip150Transition": "0x927C0",
|
|
||||||
"eip160Transition": "0x927C0",
|
|
||||||
"eip161abcTransition": "0x927C0",
|
|
||||||
"eip161dTransition": "0x927C0",
|
|
||||||
"eip155Transition": "0x927C0",
|
|
||||||
"eip140Transition": "0xC3500",
|
|
||||||
"eip211Transition": "0xC3500",
|
|
||||||
"eip214Transition": "0xC3500",
|
|
||||||
"eip658Transition": "0xC3500"
|
|
||||||
},
|
|
||||||
"genesis": {
|
|
||||||
"seal": {
|
|
||||||
"ethereum": {
|
|
||||||
"nonce": "0x214652414e4b4f21",
|
|
||||||
"mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"difficulty": "0x40000000",
|
|
||||||
"author": "0x93decab0cd745598860f782ac1e8f046cb99e898",
|
|
||||||
"timestamp": "0x00",
|
|
||||||
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"extraData": "0x4672616e6b6f497346726565646f6d",
|
|
||||||
"gasLimit": "0x1388"
|
|
||||||
},
|
|
||||||
"nodes": [
|
|
||||||
"enode://7f335a047654f3e70d6f91312a7cf89c39704011f1a584e2698250db3d63817e74b88e26b7854111e16b2c9d0c7173c05419aeee2d0321850227b126d8b1be3f@46.101.156.249:42786",
|
|
||||||
"enode://df872f81e25f72356152b44cab662caf1f2e57c3a156ecd20e9ac9246272af68a2031b4239a0bc831f2c6ab34733a041464d46b3ea36dce88d6c11714446e06b@178.62.208.109:42786",
|
|
||||||
"enode://96d3919b903e7f5ad59ac2f73c43be9172d9d27e2771355db03fd194732b795829a31fe2ea6de109d0804786c39a807e155f065b4b94c6fce167becd0ac02383@45.55.22.34:42786",
|
|
||||||
"enode://5f6c625bf287e3c08aad568de42d868781e961cbda805c8397cfb7be97e229419bef9a5a25a75f97632787106bba8a7caf9060fab3887ad2cfbeb182ab0f433f@46.101.182.53:42786",
|
|
||||||
"enode://d33a8d4c2c38a08971ed975b750f21d54c927c0bf7415931e214465a8d01651ecffe4401e1db913f398383381413c78105656d665d83f385244ab302d6138414@128.199.183.48:42786",
|
|
||||||
"enode://df872f81e25f72356152b44cab662caf1f2e57c3a156ecd20e9ac9246272af68a2031b4239a0bc831f2c6ab34733a041464d46b3ea36dce88d6c11714446e06b@178.62.208.109:42786",
|
|
||||||
"enode://f6f0d6b9b7d02ec9e8e4a16e38675f3621ea5e69860c739a65c1597ca28aefb3cec7a6d84e471ac927d42a1b64c1cbdefad75e7ce8872d57548ddcece20afdd1@159.203.64.95:42786"
|
|
||||||
],
|
|
||||||
"accounts": {
|
|
||||||
"0000000000000000000000000000000000000001": { "builtin": { "name": "ecrecover", "pricing": { "linear": { "base": 3000, "word": 0 } } } },
|
|
||||||
"0000000000000000000000000000000000000002": { "builtin": { "name": "sha256", "pricing": { "linear": { "base": 60, "word": 12 } } } },
|
|
||||||
"0000000000000000000000000000000000000003": { "builtin": { "name": "ripemd160", "pricing": { "linear": { "base": 600, "word": 120 } } } },
|
|
||||||
"0000000000000000000000000000000000000004": { "builtin": { "name": "identity", "pricing": { "linear": { "base": 15, "word": 3 } } } },
|
|
||||||
"0000000000000000000000000000000000000005": { "builtin": { "name": "modexp", "activate_at": "0xC3500", "pricing": { "modexp": { "divisor": 20 } } } },
|
|
||||||
"0000000000000000000000000000000000000006": {
|
|
||||||
"builtin": {
|
|
||||||
"name": "alt_bn128_add",
|
|
||||||
"pricing": {
|
|
||||||
"0xC3500": {
|
|
||||||
"price": { "alt_bn128_const_operations": { "price": 500 }}
|
|
||||||
},
|
|
||||||
"0x7fffffffffffff": {
|
|
||||||
"info": "EIP 1108 transition",
|
|
||||||
"price": { "alt_bn128_const_operations": { "price": 150 }}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0000000000000000000000000000000000000007": {
|
|
||||||
"builtin": {
|
|
||||||
"name": "alt_bn128_mul",
|
|
||||||
"pricing": {
|
|
||||||
"0xC3500": {
|
|
||||||
"price": { "alt_bn128_const_operations": { "price": 40000 }}
|
|
||||||
},
|
|
||||||
"0x7fffffffffffff": {
|
|
||||||
"info": "EIP 1108 transition",
|
|
||||||
"price": { "alt_bn128_const_operations": { "price": 6000 }}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0000000000000000000000000000000000000008": {
|
|
||||||
"builtin": {
|
|
||||||
"name": "alt_bn128_pairing",
|
|
||||||
"pricing": {
|
|
||||||
"0xC3500": {
|
|
||||||
"price": { "alt_bn128_pairing": { "base": 100000, "pair": 80000 }}
|
|
||||||
},
|
|
||||||
"0x7fffffffffffff": {
|
|
||||||
"info": "EIP 1108 transition",
|
|
||||||
"price": { "alt_bn128_pairing": { "base": 45000, "pair": 34000 }}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"bb94f0ceb32257275b2a7a9c094c13e469b4563e": {
|
|
||||||
"balance": "10000000000000000000000000"
|
|
||||||
},
|
|
||||||
"15656715068ab0dbdf0ab00748a8a19e40f28192": {
|
|
||||||
"balance": "1000000000000000000000000"
|
|
||||||
},
|
|
||||||
"c075fa11f85bda3aaba67106226aaf086ac16f4e": {
|
|
||||||
"balance": "100000000000000000000000"
|
|
||||||
},
|
|
||||||
"93decab0cd745598860f782ac1e8f046cb99e898": {
|
|
||||||
"balance": "10000000000000000000000"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,924 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "Kotti Testnet",
|
|
||||||
"dataDir": "kotti",
|
|
||||||
"engine": {
|
|
||||||
"clique": {
|
|
||||||
"params": {
|
|
||||||
"period": 15,
|
|
||||||
"epoch": 30000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"params": {
|
|
||||||
"accountStartNonce": "0x0",
|
|
||||||
"chainID": "0x6",
|
|
||||||
"eip140Transition": "0xaef49",
|
|
||||||
"eip145Transition": "0x1a064d",
|
|
||||||
"eip150Transition": "0x0",
|
|
||||||
"eip155Transition": "0x0",
|
|
||||||
"eip160Transition": "0x0",
|
|
||||||
"eip161abcTransition": "0xaef49",
|
|
||||||
"eip161dTransition": "0xaef49",
|
|
||||||
"eip211Transition": "0xaef49",
|
|
||||||
"eip214Transition": "0xaef49",
|
|
||||||
"eip658Transition": "0xaef49",
|
|
||||||
"eip1014Transition": "0x1a064d",
|
|
||||||
"eip1052Transition": "0x1a064d",
|
|
||||||
"eip1283Transition": "0x1f67cf",
|
|
||||||
"eip1344Transition": "0x1f67cf",
|
|
||||||
"eip1706Transition": "0x1f67cf",
|
|
||||||
"eip2028Transition": "0x1f67cf",
|
|
||||||
"gasLimitBoundDivisor": "0x400",
|
|
||||||
"maxCodeSize": "0x6000",
|
|
||||||
"maxCodeSizeTransition": "0xaef49",
|
|
||||||
"maximumExtraDataSize": "0xffff",
|
|
||||||
"minGasLimit": "0x1388",
|
|
||||||
"networkID": "0x6"
|
|
||||||
},
|
|
||||||
"genesis": {
|
|
||||||
"author": "0x0000000000000000000000000000000000000000",
|
|
||||||
"difficulty": "0x1",
|
|
||||||
"extraData": "0x000000000000000000000000000000000000000000000000000000000000000025b7955e43adf9c2a01a9475908702cce67f302a6aaf8cba3c9255a2b863415d4db7bae4f4bbca020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"gasLimit": "0xa00000",
|
|
||||||
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"seal": {
|
|
||||||
"ethereum": {
|
|
||||||
"nonce": "0x0000000000000000",
|
|
||||||
"mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"timestamp": "0x5c2d2287"
|
|
||||||
},
|
|
||||||
"nodes": [
|
|
||||||
"enode://06333009fc9ef3c9e174768e495722a7f98fe7afd4660542e983005f85e556028410fd03278944f44cfe5437b1750b5e6bd1738f700fe7da3626d52010d2954c@51.141.15.254:30303",
|
|
||||||
"enode://93c94e999be5dd854c5d82a7cf5c14822973b5d9badb56ad4974586ec4d4f1995c815af795c20bb6e0a6226d3ee55808435c4dc89baf94ee581141b064d19dfc@80.187.116.161:25720",
|
|
||||||
"enode://ae8658da8d255d1992c3ec6e62e11d6e1c5899aa1566504bc1ff96a0c9c8bd44838372be643342553817f5cc7d78f1c83a8093dee13d77b3b0a583c050c81940@18.232.185.151:30303",
|
|
||||||
"enode://b477ca6d507a3f57070783eb62ba838847635f8b1a0cbffb8b7f8173f5894cf550f0225a5c279341e2d862a606e778b57180a4f1db3db78c51eadcfa4fdc6963@40.68.240.160:30303"
|
|
||||||
],
|
|
||||||
"accounts": {
|
|
||||||
"0x0000000000000000000000000000000000000000": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000001": {
|
|
||||||
"balance": "0x1",
|
|
||||||
"builtin": {
|
|
||||||
"name": "ecrecover",
|
|
||||||
"pricing": {
|
|
||||||
"linear": {
|
|
||||||
"base": 3000,
|
|
||||||
"word": 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000002": {
|
|
||||||
"balance": "0x1",
|
|
||||||
"builtin": {
|
|
||||||
"name": "sha256",
|
|
||||||
"pricing": {
|
|
||||||
"linear": {
|
|
||||||
"base": 60,
|
|
||||||
"word": 12
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000003": {
|
|
||||||
"balance": "0x1",
|
|
||||||
"builtin": {
|
|
||||||
"name": "ripemd160",
|
|
||||||
"pricing": {
|
|
||||||
"linear": {
|
|
||||||
"base": 600,
|
|
||||||
"word": 120
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000004": {
|
|
||||||
"balance": "0x1",
|
|
||||||
"builtin": {
|
|
||||||
"name": "identity",
|
|
||||||
"pricing": {
|
|
||||||
"linear": {
|
|
||||||
"base": 15,
|
|
||||||
"word": 3
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000005": {
|
|
||||||
"balance": "0x1",
|
|
||||||
"builtin": {
|
|
||||||
"name": "modexp",
|
|
||||||
"activate_at": "0xaef49",
|
|
||||||
"pricing": {
|
|
||||||
"modexp": {
|
|
||||||
"divisor": 20
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000006": {
|
|
||||||
"balance": "0x1",
|
|
||||||
"builtin": {
|
|
||||||
"name": "alt_bn128_add",
|
|
||||||
"pricing": {
|
|
||||||
"0xaef49": {
|
|
||||||
"price": { "alt_bn128_const_operations": { "price": 500 }}
|
|
||||||
},
|
|
||||||
"0x1f67cf": {
|
|
||||||
"info": "EIP 1108 transition",
|
|
||||||
"price": { "alt_bn128_const_operations": { "price": 150 }}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000007": {
|
|
||||||
"balance": "0x1",
|
|
||||||
"builtin": {
|
|
||||||
"name": "alt_bn128_mul",
|
|
||||||
"pricing": {
|
|
||||||
"0xaef49": {
|
|
||||||
"price": { "alt_bn128_const_operations": { "price": 40000 }}
|
|
||||||
},
|
|
||||||
"0x1f67cf": {
|
|
||||||
"info": "EIP 1108 transition",
|
|
||||||
"price": { "alt_bn128_const_operations": { "price": 6000 }}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000008": {
|
|
||||||
"balance": "0x1",
|
|
||||||
"builtin": {
|
|
||||||
"name": "alt_bn128_pairing",
|
|
||||||
"pricing": {
|
|
||||||
"0xaef49": {
|
|
||||||
"price": { "alt_bn128_pairing": { "base": 100000, "pair": 80000 }}
|
|
||||||
},
|
|
||||||
"0x1f67cf": {
|
|
||||||
"info": "EIP 1108 transition",
|
|
||||||
"price": { "alt_bn128_pairing": { "base": 45000, "pair": 34000 }}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000009": {
|
|
||||||
"balance": "0x1",
|
|
||||||
"builtin": {
|
|
||||||
"name": "blake2_f",
|
|
||||||
"activate_at": "0x1f67cf",
|
|
||||||
"pricing": {
|
|
||||||
"blake2_f": {
|
|
||||||
"gas_per_round": 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000000a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000000b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000000c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000000d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000000e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000000f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000010": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000011": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000012": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000013": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000014": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000015": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000016": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000017": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000018": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000019": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000001a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000001b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000001c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000001d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000001e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000001f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000020": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000021": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000022": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000023": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000024": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000025": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000026": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000027": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000028": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000029": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000002a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000002b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000002c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000002d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000002e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000002f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000030": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000031": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000032": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000033": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000034": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000035": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000036": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000037": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000038": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000039": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000003a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000003b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000003c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000003d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000003e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000003f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000040": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000041": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000042": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000043": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000044": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000045": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000046": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000047": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000048": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000049": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000004a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000004b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000004c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000004d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000004e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000004f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000050": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000051": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000052": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000053": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000054": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000055": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000056": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000057": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000058": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000059": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000005a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000005b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000005c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000005d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000005e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000005f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000060": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000061": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000062": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000063": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000064": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000065": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000066": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000067": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000068": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000069": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000006a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000006b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000006c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000006d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000006e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000006f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000070": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000071": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000072": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000073": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000074": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000075": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000076": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000077": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000078": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000079": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000007a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000007b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000007c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000007d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000007e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000007f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000080": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000081": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000082": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000083": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000084": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000085": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000086": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000087": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000088": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000089": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000008a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000008b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000008c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000008d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000008e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000008f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000090": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000091": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000092": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000093": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000094": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000095": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000096": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000097": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000098": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000099": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000009a": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000009b": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000009c": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000009d": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000009e": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x000000000000000000000000000000000000009f": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a0": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a1": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a2": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a3": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a4": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a5": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a6": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a7": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a8": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000a9": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000aa": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ab": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ac": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ad": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ae": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000af": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b0": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b1": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b2": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b3": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b4": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b5": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b6": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b7": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b8": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000b9": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ba": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000bb": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000bc": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000bd": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000be": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000bf": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c0": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c1": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c2": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c3": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c4": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c5": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c6": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c7": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c8": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000c9": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ca": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000cb": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000cc": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000cd": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ce": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000cf": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d0": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d1": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d2": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d3": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d4": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d5": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d6": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d7": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d8": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000d9": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000da": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000db": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000dc": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000dd": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000de": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000df": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e0": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e1": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e2": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e3": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e4": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e5": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e6": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e7": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e8": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000e9": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ea": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000eb": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ec": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ed": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ee": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ef": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f0": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f1": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f2": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f3": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f4": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f5": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f6": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f7": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f8": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000f9": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000fa": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000fb": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000fc": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000fd": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000fe": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x00000000000000000000000000000000000000ff": {
|
|
||||||
"balance": "0x1"
|
|
||||||
},
|
|
||||||
"0x25b7955e43adf9c2a01a9475908702cce67f302a": {
|
|
||||||
"balance": "0x84595161401484a000000"
|
|
||||||
},
|
|
||||||
"0x6aaf8cba3c9255a2b863415d4db7bae4f4bbca02": {
|
|
||||||
"balance": "0x4a723dc6b40b8a9a000000"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -9,8 +9,6 @@
|
|||||||
"durationLimit": "0x0d",
|
"durationLimit": "0x0d",
|
||||||
"blockReward": "0x4563918244F40000",
|
"blockReward": "0x4563918244F40000",
|
||||||
"homesteadTransition": "0x789b0",
|
"homesteadTransition": "0x789b0",
|
||||||
"ecip1010PauseTransition": "0x1d3878",
|
|
||||||
"ecip1010ContinueTransition": "0x341bd8",
|
|
||||||
"ecip1017EraRounds": "0x1e8480",
|
"ecip1017EraRounds": "0x1e8480",
|
||||||
"eip100bTransition": "0x4829ba",
|
"eip100bTransition": "0x4829ba",
|
||||||
"bombDefuseTransition": "0x231860"
|
"bombDefuseTransition": "0x231860"
|
||||||
|
@ -1,206 +0,0 @@
|
|||||||
{
|
|
||||||
"name":"Mordor Classic Testnet",
|
|
||||||
"dataDir":"mordor",
|
|
||||||
"engine":{
|
|
||||||
"Ethash":{
|
|
||||||
"params":{
|
|
||||||
"minimumDifficulty":"0x20000",
|
|
||||||
"difficultyBoundDivisor":"0x800",
|
|
||||||
"durationLimit":"0xd",
|
|
||||||
"blockReward":"0x4563918244F40000",
|
|
||||||
"homesteadTransition":"0x0",
|
|
||||||
"ecip1010PauseTransition":"0x0",
|
|
||||||
"ecip1010ContinueTransition":"0x0",
|
|
||||||
"ecip1017EraRounds":"0x1e8480",
|
|
||||||
"bombDefuseTransition":"0x0",
|
|
||||||
"eip100bTransition":"0x0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"params":{
|
|
||||||
"gasLimitBoundDivisor":"0x400",
|
|
||||||
"accountStartNonce":"0x0",
|
|
||||||
"maximumExtraDataSize":"0x20",
|
|
||||||
"minGasLimit":"0x1388",
|
|
||||||
"networkID":"0x7",
|
|
||||||
"chainID":"0x3f",
|
|
||||||
"eip150Transition":"0x0",
|
|
||||||
"eip160Transition":"0x0",
|
|
||||||
"eip161abcTransition":"0x0",
|
|
||||||
"eip161dTransition":"0x0",
|
|
||||||
"eip155Transition":"0x0",
|
|
||||||
"maxCodeSize":"0x6000",
|
|
||||||
"maxCodeSizeTransition":"0x0",
|
|
||||||
"eip140Transition":"0x0",
|
|
||||||
"eip211Transition":"0x0",
|
|
||||||
"eip214Transition":"0x0",
|
|
||||||
"eip658Transition":"0x0",
|
|
||||||
"eip145Transition":"0x498bb",
|
|
||||||
"eip1014Transition":"0x498bb",
|
|
||||||
"eip1052Transition":"0x498bb",
|
|
||||||
"eip1283Transition":"0xbe10b",
|
|
||||||
"eip1344Transition":"0xbe10b",
|
|
||||||
"eip1706Transition":"0xbe10b",
|
|
||||||
"eip2028Transition":"0xbe10b"
|
|
||||||
},
|
|
||||||
"genesis":{
|
|
||||||
"seal":{
|
|
||||||
"ethereum":{
|
|
||||||
"nonce":"0x0000000000000000",
|
|
||||||
"mixHash":"0x0000000000000000000000000000000000000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"difficulty":"0x20000",
|
|
||||||
"author":"0x0000000000000000000000000000000000000000",
|
|
||||||
"timestamp":"0x5d9676db",
|
|
||||||
"parentHash":"0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
||||||
"extraData":"0x70686f656e697820636869636b656e206162737572642062616e616e61",
|
|
||||||
"gasLimit":"0x2fefd8"
|
|
||||||
},
|
|
||||||
"nodes":[
|
|
||||||
"enode://03b133f731049e3f7be827339c3759be92778c05e54a1847d178c0fdb56fa168aa1e7e61fc77791a7afdd0328a00318f73c01212eb3f3bbe919f5ce8f5b4a314@192.227.105.4:32000",
|
|
||||||
"enode://06fdbeb591d26f53b2e7250025fe955ca013431ded930920cf1e3cd1f0c920e9a5e727949d209bc25a07288327b525279b11c5551315c50ff0db483e69fc159b@34.218.225.178:32000",
|
|
||||||
"enode://1813e90a0afdd7c1e4892c5376960e3577a9e6c5a4f86fa405a405c7421a4a1608248d77cc90333842f13d8954d82113dec480cfb76b4fef8cb475157cf4d5f2@10.28.224.3:30000",
|
|
||||||
"enode://2b69a3926f36a7748c9021c34050be5e0b64346225e477fe7377070f6289bd363b2be73a06010fd516e6ea3ee90778dd0399bc007bb1281923a79374f842675a@51.15.116.226:30303",
|
|
||||||
"enode://621e28e529146fd501709194885f50540c494f1a2985d1fb4ec8769226b5cb0b0d1a11545926077821474c2767cdd87888ead8a2509a2c9069dd5584e4b1c3b8@10.28.223.8:30000",
|
|
||||||
"enode://a59e33ccd2b3e52d578f1fbd70c6f9babda2650f0760d6ff3b37742fdcdfdb3defba5d56d315b40c46b70198c7621e63ffa3f987389c7118634b0fefbbdfa7fd@51.15.116.226:30303",
|
|
||||||
"enode://f840b007500f50c98ea6f9c9e56dabf4690bbbbb7036d43682c531204341aff8315013547e5bee54117eb22bd3603585ae6bf713d9fa710659533fcab65d5b84@35.238.101.58:30000",
|
|
||||||
"enode://19eda672030ad5debb98c9069b3e99d12438b96506325d9f3f82d76c5f8ce4942d345f41700a5223900e75ad48e76713b74c1b694d67a10c2112540035922256@35.238.101.58:30000"
|
|
||||||
],
|
|
||||||
"accounts":{
|
|
||||||
"0x0000000000000000000000000000000000000001":{
|
|
||||||
"builtin":{
|
|
||||||
"name":"ecrecover",
|
|
||||||
"pricing":{
|
|
||||||
"linear":{
|
|
||||||
"base":3000,
|
|
||||||
"word":0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000002":{
|
|
||||||
"builtin":{
|
|
||||||
"name":"sha256",
|
|
||||||
"pricing":{
|
|
||||||
"linear":{
|
|
||||||
"base":60,
|
|
||||||
"word":12
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000003":{
|
|
||||||
"builtin":{
|
|
||||||
"name":"ripemd160",
|
|
||||||
"pricing":{
|
|
||||||
"linear":{
|
|
||||||
"base":600,
|
|
||||||
"word":120
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000004":{
|
|
||||||
"builtin":{
|
|
||||||
"name":"identity",
|
|
||||||
"pricing":{
|
|
||||||
"linear":{
|
|
||||||
"base":15,
|
|
||||||
"word":3
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000005":{
|
|
||||||
"builtin":{
|
|
||||||
"activate_at":"0x0",
|
|
||||||
"name":"modexp",
|
|
||||||
"pricing":{
|
|
||||||
"modexp":{
|
|
||||||
"divisor":20
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000006":{
|
|
||||||
"builtin":{
|
|
||||||
"name":"alt_bn128_add",
|
|
||||||
"pricing":{
|
|
||||||
"0x0":{
|
|
||||||
"price":{
|
|
||||||
"alt_bn128_const_operations":{
|
|
||||||
"price":500
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0xbe10b":{
|
|
||||||
"info":"EIP 1108 transition",
|
|
||||||
"price":{
|
|
||||||
"alt_bn128_const_operations":{
|
|
||||||
"price":150
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000007":{
|
|
||||||
"builtin":{
|
|
||||||
"name":"alt_bn128_mul",
|
|
||||||
"pricing":{
|
|
||||||
"0x0":{
|
|
||||||
"price":{
|
|
||||||
"alt_bn128_const_operations":{
|
|
||||||
"price":40000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0xbe10b":{
|
|
||||||
"info":"EIP 1108 transition",
|
|
||||||
"price":{
|
|
||||||
"alt_bn128_const_operations":{
|
|
||||||
"price":6000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000008":{
|
|
||||||
"builtin":{
|
|
||||||
"name":"alt_bn128_pairing",
|
|
||||||
"pricing":{
|
|
||||||
"0x0":{
|
|
||||||
"price":{
|
|
||||||
"alt_bn128_pairing":{
|
|
||||||
"base":100000,
|
|
||||||
"pair":80000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0xbe10b":{
|
|
||||||
"info":"EIP 1108 transition",
|
|
||||||
"price":{
|
|
||||||
"alt_bn128_pairing":{
|
|
||||||
"base":45000,
|
|
||||||
"pair":34000
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"0x0000000000000000000000000000000000000009": {
|
|
||||||
"builtin": {
|
|
||||||
"name": "blake2_f",
|
|
||||||
"activate_at": "0xbe10b",
|
|
||||||
"pricing": {
|
|
||||||
"blake2_f": {
|
|
||||||
"gas_per_round": 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -93,10 +93,6 @@ pub struct EthashParams {
|
|||||||
pub bomb_defuse_transition: u64,
|
pub bomb_defuse_transition: u64,
|
||||||
/// Number of first block where EIP-100 rules begin.
|
/// Number of first block where EIP-100 rules begin.
|
||||||
pub eip100b_transition: u64,
|
pub eip100b_transition: u64,
|
||||||
/// Number of first block where ECIP-1010 begins.
|
|
||||||
pub ecip1010_pause_transition: u64,
|
|
||||||
/// Number of first block where ECIP-1010 ends.
|
|
||||||
pub ecip1010_continue_transition: u64,
|
|
||||||
/// Total block number for one ECIP-1017 era.
|
/// Total block number for one ECIP-1017 era.
|
||||||
pub ecip1017_era_rounds: u64,
|
pub ecip1017_era_rounds: u64,
|
||||||
/// Block reward in base units.
|
/// Block reward in base units.
|
||||||
@ -136,12 +132,6 @@ impl From<ethjson::spec::EthashParams> for EthashParams {
|
|||||||
.bomb_defuse_transition
|
.bomb_defuse_transition
|
||||||
.map_or(u64::max_value(), Into::into),
|
.map_or(u64::max_value(), Into::into),
|
||||||
eip100b_transition: p.eip100b_transition.map_or(u64::max_value(), Into::into),
|
eip100b_transition: p.eip100b_transition.map_or(u64::max_value(), Into::into),
|
||||||
ecip1010_pause_transition: p
|
|
||||||
.ecip1010_pause_transition
|
|
||||||
.map_or(u64::max_value(), Into::into),
|
|
||||||
ecip1010_continue_transition: p
|
|
||||||
.ecip1010_continue_transition
|
|
||||||
.map_or(u64::max_value(), Into::into),
|
|
||||||
ecip1017_era_rounds: p.ecip1017_era_rounds.map_or(u64::max_value(), Into::into),
|
ecip1017_era_rounds: p.ecip1017_era_rounds.map_or(u64::max_value(), Into::into),
|
||||||
block_reward: p.block_reward.map_or_else(
|
block_reward: p.block_reward.map_or_else(
|
||||||
|| {
|
|| {
|
||||||
@ -522,7 +512,6 @@ impl Ethash {
|
|||||||
};
|
};
|
||||||
target = cmp::max(min_difficulty, target);
|
target = cmp::max(min_difficulty, target);
|
||||||
if header.number() < self.ethash_params.bomb_defuse_transition {
|
if header.number() < self.ethash_params.bomb_defuse_transition {
|
||||||
if header.number() < self.ethash_params.ecip1010_pause_transition {
|
|
||||||
let mut number = header.number();
|
let mut number = header.number();
|
||||||
let original_number = number;
|
let original_number = number;
|
||||||
for (block, delay) in &self.ethash_params.difficulty_bomb_delays {
|
for (block, delay) in &self.ethash_params.difficulty_bomb_delays {
|
||||||
@ -534,20 +523,6 @@ impl Ethash {
|
|||||||
if period > 1 {
|
if period > 1 {
|
||||||
target = cmp::max(min_difficulty, target + (U256::from(1) << (period - 2)));
|
target = cmp::max(min_difficulty, target + (U256::from(1) << (period - 2)));
|
||||||
}
|
}
|
||||||
} else if header.number() < self.ethash_params.ecip1010_continue_transition {
|
|
||||||
let fixed_difficulty =
|
|
||||||
((self.ethash_params.ecip1010_pause_transition / EXP_DIFF_PERIOD) - 2) as usize;
|
|
||||||
target = cmp::max(min_difficulty, target + (U256::from(1) << fixed_difficulty));
|
|
||||||
} else {
|
|
||||||
let period = ((parent.number() + 1) / EXP_DIFF_PERIOD) as usize;
|
|
||||||
let delay = ((self.ethash_params.ecip1010_continue_transition
|
|
||||||
- self.ethash_params.ecip1010_pause_transition)
|
|
||||||
/ EXP_DIFF_PERIOD) as usize;
|
|
||||||
target = cmp::max(
|
|
||||||
min_difficulty,
|
|
||||||
target + (U256::from(1) << (period - delay - 2)),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
target
|
target
|
||||||
}
|
}
|
||||||
@ -607,8 +582,6 @@ mod tests {
|
|||||||
difficulty_hardfork_bound_divisor: U256::from(0),
|
difficulty_hardfork_bound_divisor: U256::from(0),
|
||||||
bomb_defuse_transition: u64::max_value(),
|
bomb_defuse_transition: u64::max_value(),
|
||||||
eip100b_transition: u64::max_value(),
|
eip100b_transition: u64::max_value(),
|
||||||
ecip1010_pause_transition: u64::max_value(),
|
|
||||||
ecip1010_continue_transition: u64::max_value(),
|
|
||||||
ecip1017_era_rounds: u64::max_value(),
|
ecip1017_era_rounds: u64::max_value(),
|
||||||
expip2_transition: u64::max_value(),
|
expip2_transition: u64::max_value(),
|
||||||
expip2_duration_limit: 30,
|
expip2_duration_limit: 30,
|
||||||
@ -1016,91 +989,6 @@ mod tests {
|
|||||||
assert_eq!(U256::from_str("1fc50f118efe").unwrap(), difficulty);
|
assert_eq!(U256::from_str("1fc50f118efe").unwrap(), difficulty);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn difficulty_classic_bomb_delay() {
|
|
||||||
let machine = new_homestead_test_machine();
|
|
||||||
let ethparams = EthashParams {
|
|
||||||
ecip1010_pause_transition: 3000000,
|
|
||||||
..get_default_ethash_params()
|
|
||||||
};
|
|
||||||
let tempdir = TempDir::new("").unwrap();
|
|
||||||
let ethash = Ethash::new(tempdir.path(), ethparams, machine, None);
|
|
||||||
|
|
||||||
let mut parent_header = Header::default();
|
|
||||||
parent_header.set_number(3500000);
|
|
||||||
parent_header.set_difficulty(U256::from_str("6F62EAF8D3C").unwrap());
|
|
||||||
parent_header.set_timestamp(1452838500);
|
|
||||||
let mut header = Header::default();
|
|
||||||
header.set_number(parent_header.number() + 1);
|
|
||||||
|
|
||||||
header.set_timestamp(parent_header.timestamp() + 20);
|
|
||||||
assert_eq!(
|
|
||||||
U256::from_str("6F55FE9B74B").unwrap(),
|
|
||||||
ethash.calculate_difficulty(&header, &parent_header)
|
|
||||||
);
|
|
||||||
header.set_timestamp(parent_header.timestamp() + 5);
|
|
||||||
assert_eq!(
|
|
||||||
U256::from_str("6F71D75632D").unwrap(),
|
|
||||||
ethash.calculate_difficulty(&header, &parent_header)
|
|
||||||
);
|
|
||||||
header.set_timestamp(parent_header.timestamp() + 80);
|
|
||||||
assert_eq!(
|
|
||||||
U256::from_str("6F02746B3A5").unwrap(),
|
|
||||||
ethash.calculate_difficulty(&header, &parent_header)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn test_difficulty_bomb_continue() {
|
|
||||||
let machine = new_homestead_test_machine();
|
|
||||||
let ethparams = EthashParams {
|
|
||||||
ecip1010_pause_transition: 3000000,
|
|
||||||
ecip1010_continue_transition: 5000000,
|
|
||||||
..get_default_ethash_params()
|
|
||||||
};
|
|
||||||
let tempdir = TempDir::new("").unwrap();
|
|
||||||
let ethash = Ethash::new(tempdir.path(), ethparams, machine, None);
|
|
||||||
|
|
||||||
let mut parent_header = Header::default();
|
|
||||||
parent_header.set_number(5000102);
|
|
||||||
parent_header.set_difficulty(U256::from_str("14944397EE8B").unwrap());
|
|
||||||
parent_header.set_timestamp(1513175023);
|
|
||||||
let mut header = Header::default();
|
|
||||||
header.set_number(parent_header.number() + 1);
|
|
||||||
header.set_timestamp(parent_header.timestamp() + 6);
|
|
||||||
assert_eq!(
|
|
||||||
U256::from_str("1496E6206188").unwrap(),
|
|
||||||
ethash.calculate_difficulty(&header, &parent_header)
|
|
||||||
);
|
|
||||||
parent_header.set_number(5100123);
|
|
||||||
parent_header.set_difficulty(U256::from_str("14D24B39C7CF").unwrap());
|
|
||||||
parent_header.set_timestamp(1514609324);
|
|
||||||
header.set_number(parent_header.number() + 1);
|
|
||||||
header.set_timestamp(parent_header.timestamp() + 41);
|
|
||||||
assert_eq!(
|
|
||||||
U256::from_str("14CA9C5D9227").unwrap(),
|
|
||||||
ethash.calculate_difficulty(&header, &parent_header)
|
|
||||||
);
|
|
||||||
parent_header.set_number(6150001);
|
|
||||||
parent_header.set_difficulty(U256::from_str("305367B57227").unwrap());
|
|
||||||
parent_header.set_timestamp(1529664575);
|
|
||||||
header.set_number(parent_header.number() + 1);
|
|
||||||
header.set_timestamp(parent_header.timestamp() + 105);
|
|
||||||
assert_eq!(
|
|
||||||
U256::from_str("309D09E0C609").unwrap(),
|
|
||||||
ethash.calculate_difficulty(&header, &parent_header)
|
|
||||||
);
|
|
||||||
parent_header.set_number(8000000);
|
|
||||||
parent_header.set_difficulty(U256::from_str("1180B36D4CE5B6A").unwrap());
|
|
||||||
parent_header.set_timestamp(1535431724);
|
|
||||||
header.set_number(parent_header.number() + 1);
|
|
||||||
header.set_timestamp(parent_header.timestamp() + 420);
|
|
||||||
assert_eq!(
|
|
||||||
U256::from_str("5126FFD5BCBB9E7").unwrap(),
|
|
||||||
ethash.calculate_difficulty(&header, &parent_header)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn difficulty_max_timestamp() {
|
fn difficulty_max_timestamp() {
|
||||||
let machine = new_homestead_test_machine();
|
let machine = new_homestead_test_machine();
|
||||||
|
@ -50,14 +50,6 @@ pub fn new_foundation<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Create a new Classic mainnet chain spec without the DAO hardfork.
|
|
||||||
pub fn new_classic<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
|
||||||
load(
|
|
||||||
params.into(),
|
|
||||||
include_bytes!("../../res/ethereum/classic.json"),
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Create a new POA Network mainnet chain spec.
|
/// Create a new POA Network mainnet chain spec.
|
||||||
pub fn new_poanet<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
pub fn new_poanet<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
||||||
load(
|
load(
|
||||||
@ -87,14 +79,6 @@ pub fn new_ewc<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
|||||||
load(params.into(), include_bytes!("../../res/ethereum/ewc.json"))
|
load(params.into(), include_bytes!("../../res/ethereum/ewc.json"))
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Create a new Expanse mainnet chain spec.
|
|
||||||
pub fn new_expanse<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
|
||||||
load(
|
|
||||||
params.into(),
|
|
||||||
include_bytes!("../../res/ethereum/expanse.json"),
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Create a new Musicoin mainnet chain spec.
|
/// Create a new Musicoin mainnet chain spec.
|
||||||
pub fn new_musicoin<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
pub fn new_musicoin<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
||||||
// The musicoin chain spec uses a block reward contract which can be found at
|
// The musicoin chain spec uses a block reward contract which can be found at
|
||||||
@ -166,14 +150,6 @@ pub fn new_goerli<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Create a new Kotti testnet chain spec.
|
|
||||||
pub fn new_kotti<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
|
||||||
load(
|
|
||||||
params.into(),
|
|
||||||
include_bytes!("../../res/ethereum/kotti.json"),
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Create a new POA Sokol testnet chain spec.
|
/// Create a new POA Sokol testnet chain spec.
|
||||||
pub fn new_sokol<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
pub fn new_sokol<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
||||||
load(
|
load(
|
||||||
@ -182,14 +158,6 @@ pub fn new_sokol<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Create a new Morodor testnet chain spec.
|
|
||||||
pub fn new_mordor<'a, T: Into<SpecParams<'a>>>(params: T) -> Spec {
|
|
||||||
load(
|
|
||||||
params.into(),
|
|
||||||
include_bytes!("../../res/ethereum/mordor.json"),
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
// For tests
|
// For tests
|
||||||
|
|
||||||
/// Create a new Foundation Frontier-era chain spec as though it never changes to Homestead.
|
/// Create a new Foundation Frontier-era chain spec as though it never changes to Homestead.
|
||||||
|
@ -80,11 +80,6 @@ pub struct EthashParams {
|
|||||||
/// See main EthashParams docs.
|
/// See main EthashParams docs.
|
||||||
pub eip100b_transition: Option<Uint>,
|
pub eip100b_transition: Option<Uint>,
|
||||||
|
|
||||||
/// See main EthashParams docs.
|
|
||||||
pub ecip1010_pause_transition: Option<Uint>,
|
|
||||||
/// See main EthashParams docs.
|
|
||||||
pub ecip1010_continue_transition: Option<Uint>,
|
|
||||||
|
|
||||||
/// See main EthashParams docs.
|
/// See main EthashParams docs.
|
||||||
pub ecip1017_era_rounds: Option<Uint>,
|
pub ecip1017_era_rounds: Option<Uint>,
|
||||||
|
|
||||||
@ -202,8 +197,6 @@ mod tests {
|
|||||||
difficulty_hardfork_bound_divisor: Some(Uint(U256::from(0x0200))),
|
difficulty_hardfork_bound_divisor: Some(Uint(U256::from(0x0200))),
|
||||||
bomb_defuse_transition: Some(Uint(U256::from(0x41))),
|
bomb_defuse_transition: Some(Uint(U256::from(0x41))),
|
||||||
eip100b_transition: Some(Uint(U256::from(0x42))),
|
eip100b_transition: Some(Uint(U256::from(0x42))),
|
||||||
ecip1010_pause_transition: None,
|
|
||||||
ecip1010_continue_transition: None,
|
|
||||||
ecip1017_era_rounds: None,
|
ecip1017_era_rounds: None,
|
||||||
expip2_transition: None,
|
expip2_transition: None,
|
||||||
expip2_duration_limit: None,
|
expip2_duration_limit: None,
|
||||||
@ -245,8 +238,6 @@ mod tests {
|
|||||||
difficulty_hardfork_bound_divisor: None,
|
difficulty_hardfork_bound_divisor: None,
|
||||||
bomb_defuse_transition: None,
|
bomb_defuse_transition: None,
|
||||||
eip100b_transition: None,
|
eip100b_transition: None,
|
||||||
ecip1010_pause_transition: None,
|
|
||||||
ecip1010_continue_transition: None,
|
|
||||||
ecip1017_era_rounds: None,
|
ecip1017_era_rounds: None,
|
||||||
expip2_transition: None,
|
expip2_transition: None,
|
||||||
expip2_duration_limit: None,
|
expip2_duration_limit: None,
|
||||||
|
@ -98,11 +98,9 @@ mod accounts {
|
|||||||
unlock_keep_secret: cfg.enable_fast_unlock,
|
unlock_keep_secret: cfg.enable_fast_unlock,
|
||||||
blacklisted_accounts: match *spec {
|
blacklisted_accounts: match *spec {
|
||||||
SpecType::Morden
|
SpecType::Morden
|
||||||
| SpecType::Mordor
|
|
||||||
| SpecType::Ropsten
|
| SpecType::Ropsten
|
||||||
| SpecType::Kovan
|
| SpecType::Kovan
|
||||||
| SpecType::Goerli
|
| SpecType::Goerli
|
||||||
| SpecType::Kotti
|
|
||||||
| SpecType::Sokol
|
| SpecType::Sokol
|
||||||
| SpecType::Dev => vec![],
|
| SpecType::Dev => vec![],
|
||||||
_ => vec!["00a329c0648769a73afac7f9381e08fb43dbea72".into()],
|
_ => vec!["00a329c0648769a73afac7f9381e08fb43dbea72".into()],
|
||||||
|
@ -248,7 +248,7 @@ usage! {
|
|||||||
|
|
||||||
ARG arg_chain: (String) = "foundation", or |c: &Config| c.parity.as_ref()?.chain.clone(),
|
ARG arg_chain: (String) = "foundation", or |c: &Config| c.parity.as_ref()?.chain.clone(),
|
||||||
"--chain=[CHAIN]",
|
"--chain=[CHAIN]",
|
||||||
"Specify the blockchain type. CHAIN may be either a JSON chain specification file or ethereum, classic, poacore, xdai, volta, ewc, musicoin, ellaism, mix, callisto, morden, mordor, ropsten, kovan, rinkeby, goerli, kotti, poasokol, testnet, or dev.",
|
"Specify the blockchain type. CHAIN may be either a JSON chain specification file or ethereum, poacore, xdai, volta, ewc, musicoin, ellaism, mix, callisto, morden, ropsten, kovan, rinkeby, goerli, poasokol, testnet, or dev.",
|
||||||
|
|
||||||
ARG arg_keys_path: (String) = "$BASE/keys", or |c: &Config| c.parity.as_ref()?.keys_path.clone(),
|
ARG arg_keys_path: (String) = "$BASE/keys", or |c: &Config| c.parity.as_ref()?.keys_path.clone(),
|
||||||
"--keys-path=[PATH]",
|
"--keys-path=[PATH]",
|
||||||
@ -1160,14 +1160,14 @@ mod tests {
|
|||||||
// given
|
// given
|
||||||
let mut config = Config::default();
|
let mut config = Config::default();
|
||||||
let mut operating = Operating::default();
|
let mut operating = Operating::default();
|
||||||
operating.chain = Some("mordor".into());
|
operating.chain = Some("goerli".into());
|
||||||
config.parity = Some(operating);
|
config.parity = Some(operating);
|
||||||
|
|
||||||
// when
|
// when
|
||||||
let args = Args::parse_with_config(&["parity"], config).unwrap();
|
let args = Args::parse_with_config(&["parity"], config).unwrap();
|
||||||
|
|
||||||
// then
|
// then
|
||||||
assert_eq!(args.arg_chain, "mordor".to_owned());
|
assert_eq!(args.arg_chain, "goerli".to_owned());
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
@ -1175,7 +1175,7 @@ mod tests {
|
|||||||
// given
|
// given
|
||||||
let mut config = Config::default();
|
let mut config = Config::default();
|
||||||
let mut operating = Operating::default();
|
let mut operating = Operating::default();
|
||||||
operating.chain = Some("mordor".into());
|
operating.chain = Some("goerli".into());
|
||||||
config.parity = Some(operating);
|
config.parity = Some(operating);
|
||||||
|
|
||||||
// when
|
// when
|
||||||
|
@ -37,23 +37,19 @@ use crate::configuration;
|
|||||||
#[derive(Debug, PartialEq)]
|
#[derive(Debug, PartialEq)]
|
||||||
pub enum SpecType {
|
pub enum SpecType {
|
||||||
Foundation,
|
Foundation,
|
||||||
Classic,
|
|
||||||
Poanet,
|
Poanet,
|
||||||
Xdai,
|
Xdai,
|
||||||
Volta,
|
Volta,
|
||||||
Ewc,
|
Ewc,
|
||||||
Expanse,
|
|
||||||
Musicoin,
|
Musicoin,
|
||||||
Ellaism,
|
Ellaism,
|
||||||
Mix,
|
Mix,
|
||||||
Callisto,
|
Callisto,
|
||||||
Morden,
|
Morden,
|
||||||
Mordor,
|
|
||||||
Ropsten,
|
Ropsten,
|
||||||
Kovan,
|
Kovan,
|
||||||
Rinkeby,
|
Rinkeby,
|
||||||
Goerli,
|
Goerli,
|
||||||
Kotti,
|
|
||||||
Sokol,
|
Sokol,
|
||||||
Dev,
|
Dev,
|
||||||
Custom(String),
|
Custom(String),
|
||||||
@ -71,23 +67,19 @@ impl str::FromStr for SpecType {
|
|||||||
fn from_str(s: &str) -> Result<Self, Self::Err> {
|
fn from_str(s: &str) -> Result<Self, Self::Err> {
|
||||||
let spec = match s {
|
let spec = match s {
|
||||||
"eth" | "ethereum" | "foundation" | "mainnet" => SpecType::Foundation,
|
"eth" | "ethereum" | "foundation" | "mainnet" => SpecType::Foundation,
|
||||||
"etc" | "classic" => SpecType::Classic,
|
|
||||||
"poanet" | "poacore" => SpecType::Poanet,
|
"poanet" | "poacore" => SpecType::Poanet,
|
||||||
"xdai" => SpecType::Xdai,
|
"xdai" => SpecType::Xdai,
|
||||||
"volta" => SpecType::Volta,
|
"volta" => SpecType::Volta,
|
||||||
"ewc" | "energyweb" => SpecType::Ewc,
|
"ewc" | "energyweb" => SpecType::Ewc,
|
||||||
"expanse" => SpecType::Expanse,
|
|
||||||
"musicoin" => SpecType::Musicoin,
|
"musicoin" => SpecType::Musicoin,
|
||||||
"ellaism" => SpecType::Ellaism,
|
"ellaism" => SpecType::Ellaism,
|
||||||
"mix" => SpecType::Mix,
|
"mix" => SpecType::Mix,
|
||||||
"callisto" => SpecType::Callisto,
|
"callisto" => SpecType::Callisto,
|
||||||
"morden" => SpecType::Morden,
|
"morden" => SpecType::Morden,
|
||||||
"mordor" | "classic-testnet" => SpecType::Mordor,
|
|
||||||
"ropsten" => SpecType::Ropsten,
|
"ropsten" => SpecType::Ropsten,
|
||||||
"kovan" => SpecType::Kovan,
|
"kovan" => SpecType::Kovan,
|
||||||
"rinkeby" => SpecType::Rinkeby,
|
"rinkeby" => SpecType::Rinkeby,
|
||||||
"goerli" | "görli" | "testnet" => SpecType::Goerli,
|
"goerli" | "görli" | "testnet" => SpecType::Goerli,
|
||||||
"kotti" => SpecType::Kotti,
|
|
||||||
"sokol" | "poasokol" => SpecType::Sokol,
|
"sokol" | "poasokol" => SpecType::Sokol,
|
||||||
"dev" => SpecType::Dev,
|
"dev" => SpecType::Dev,
|
||||||
other => SpecType::Custom(other.into()),
|
other => SpecType::Custom(other.into()),
|
||||||
@ -100,23 +92,19 @@ impl fmt::Display for SpecType {
|
|||||||
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||||||
f.write_str(match *self {
|
f.write_str(match *self {
|
||||||
SpecType::Foundation => "foundation",
|
SpecType::Foundation => "foundation",
|
||||||
SpecType::Classic => "classic",
|
|
||||||
SpecType::Poanet => "poanet",
|
SpecType::Poanet => "poanet",
|
||||||
SpecType::Xdai => "xdai",
|
SpecType::Xdai => "xdai",
|
||||||
SpecType::Volta => "volta",
|
SpecType::Volta => "volta",
|
||||||
SpecType::Ewc => "energyweb",
|
SpecType::Ewc => "energyweb",
|
||||||
SpecType::Expanse => "expanse",
|
|
||||||
SpecType::Musicoin => "musicoin",
|
SpecType::Musicoin => "musicoin",
|
||||||
SpecType::Ellaism => "ellaism",
|
SpecType::Ellaism => "ellaism",
|
||||||
SpecType::Mix => "mix",
|
SpecType::Mix => "mix",
|
||||||
SpecType::Callisto => "callisto",
|
SpecType::Callisto => "callisto",
|
||||||
SpecType::Morden => "morden",
|
SpecType::Morden => "morden",
|
||||||
SpecType::Mordor => "mordor",
|
|
||||||
SpecType::Ropsten => "ropsten",
|
SpecType::Ropsten => "ropsten",
|
||||||
SpecType::Kovan => "kovan",
|
SpecType::Kovan => "kovan",
|
||||||
SpecType::Rinkeby => "rinkeby",
|
SpecType::Rinkeby => "rinkeby",
|
||||||
SpecType::Goerli => "goerli",
|
SpecType::Goerli => "goerli",
|
||||||
SpecType::Kotti => "kotti",
|
|
||||||
SpecType::Sokol => "sokol",
|
SpecType::Sokol => "sokol",
|
||||||
SpecType::Dev => "dev",
|
SpecType::Dev => "dev",
|
||||||
SpecType::Custom(ref custom) => custom,
|
SpecType::Custom(ref custom) => custom,
|
||||||
@ -129,23 +117,19 @@ impl SpecType {
|
|||||||
let params = params.into();
|
let params = params.into();
|
||||||
match *self {
|
match *self {
|
||||||
SpecType::Foundation => Ok(ethereum::new_foundation(params)),
|
SpecType::Foundation => Ok(ethereum::new_foundation(params)),
|
||||||
SpecType::Classic => Ok(ethereum::new_classic(params)),
|
|
||||||
SpecType::Poanet => Ok(ethereum::new_poanet(params)),
|
SpecType::Poanet => Ok(ethereum::new_poanet(params)),
|
||||||
SpecType::Xdai => Ok(ethereum::new_xdai(params)),
|
SpecType::Xdai => Ok(ethereum::new_xdai(params)),
|
||||||
SpecType::Volta => Ok(ethereum::new_volta(params)),
|
SpecType::Volta => Ok(ethereum::new_volta(params)),
|
||||||
SpecType::Ewc => Ok(ethereum::new_ewc(params)),
|
SpecType::Ewc => Ok(ethereum::new_ewc(params)),
|
||||||
SpecType::Expanse => Ok(ethereum::new_expanse(params)),
|
|
||||||
SpecType::Musicoin => Ok(ethereum::new_musicoin(params)),
|
SpecType::Musicoin => Ok(ethereum::new_musicoin(params)),
|
||||||
SpecType::Ellaism => Ok(ethereum::new_ellaism(params)),
|
SpecType::Ellaism => Ok(ethereum::new_ellaism(params)),
|
||||||
SpecType::Mix => Ok(ethereum::new_mix(params)),
|
SpecType::Mix => Ok(ethereum::new_mix(params)),
|
||||||
SpecType::Callisto => Ok(ethereum::new_callisto(params)),
|
SpecType::Callisto => Ok(ethereum::new_callisto(params)),
|
||||||
SpecType::Morden => Ok(ethereum::new_morden(params)),
|
SpecType::Morden => Ok(ethereum::new_morden(params)),
|
||||||
SpecType::Mordor => Ok(ethereum::new_mordor(params)),
|
|
||||||
SpecType::Ropsten => Ok(ethereum::new_ropsten(params)),
|
SpecType::Ropsten => Ok(ethereum::new_ropsten(params)),
|
||||||
SpecType::Kovan => Ok(ethereum::new_kovan(params)),
|
SpecType::Kovan => Ok(ethereum::new_kovan(params)),
|
||||||
SpecType::Rinkeby => Ok(ethereum::new_rinkeby(params)),
|
SpecType::Rinkeby => Ok(ethereum::new_rinkeby(params)),
|
||||||
SpecType::Goerli => Ok(ethereum::new_goerli(params)),
|
SpecType::Goerli => Ok(ethereum::new_goerli(params)),
|
||||||
SpecType::Kotti => Ok(ethereum::new_kotti(params)),
|
|
||||||
SpecType::Sokol => Ok(ethereum::new_sokol(params)),
|
SpecType::Sokol => Ok(ethereum::new_sokol(params)),
|
||||||
SpecType::Dev => Ok(Spec::new_instant()),
|
SpecType::Dev => Ok(Spec::new_instant()),
|
||||||
SpecType::Custom(ref filename) => {
|
SpecType::Custom(ref filename) => {
|
||||||
@ -159,8 +143,6 @@ impl SpecType {
|
|||||||
|
|
||||||
pub fn legacy_fork_name(&self) -> Option<String> {
|
pub fn legacy_fork_name(&self) -> Option<String> {
|
||||||
match *self {
|
match *self {
|
||||||
SpecType::Classic => Some("classic".to_owned()),
|
|
||||||
SpecType::Expanse => Some("expanse".to_owned()),
|
|
||||||
SpecType::Musicoin => Some("musicoin".to_owned()),
|
SpecType::Musicoin => Some("musicoin".to_owned()),
|
||||||
_ => None,
|
_ => None,
|
||||||
}
|
}
|
||||||
@ -397,29 +379,23 @@ mod tests {
|
|||||||
assert_eq!(SpecType::Foundation, "ethereum".parse().unwrap());
|
assert_eq!(SpecType::Foundation, "ethereum".parse().unwrap());
|
||||||
assert_eq!(SpecType::Foundation, "foundation".parse().unwrap());
|
assert_eq!(SpecType::Foundation, "foundation".parse().unwrap());
|
||||||
assert_eq!(SpecType::Foundation, "mainnet".parse().unwrap());
|
assert_eq!(SpecType::Foundation, "mainnet".parse().unwrap());
|
||||||
assert_eq!(SpecType::Classic, "etc".parse().unwrap());
|
|
||||||
assert_eq!(SpecType::Classic, "classic".parse().unwrap());
|
|
||||||
assert_eq!(SpecType::Poanet, "poanet".parse().unwrap());
|
assert_eq!(SpecType::Poanet, "poanet".parse().unwrap());
|
||||||
assert_eq!(SpecType::Poanet, "poacore".parse().unwrap());
|
assert_eq!(SpecType::Poanet, "poacore".parse().unwrap());
|
||||||
assert_eq!(SpecType::Xdai, "xdai".parse().unwrap());
|
assert_eq!(SpecType::Xdai, "xdai".parse().unwrap());
|
||||||
assert_eq!(SpecType::Volta, "volta".parse().unwrap());
|
assert_eq!(SpecType::Volta, "volta".parse().unwrap());
|
||||||
assert_eq!(SpecType::Ewc, "ewc".parse().unwrap());
|
assert_eq!(SpecType::Ewc, "ewc".parse().unwrap());
|
||||||
assert_eq!(SpecType::Ewc, "energyweb".parse().unwrap());
|
assert_eq!(SpecType::Ewc, "energyweb".parse().unwrap());
|
||||||
assert_eq!(SpecType::Expanse, "expanse".parse().unwrap());
|
|
||||||
assert_eq!(SpecType::Musicoin, "musicoin".parse().unwrap());
|
assert_eq!(SpecType::Musicoin, "musicoin".parse().unwrap());
|
||||||
assert_eq!(SpecType::Ellaism, "ellaism".parse().unwrap());
|
assert_eq!(SpecType::Ellaism, "ellaism".parse().unwrap());
|
||||||
assert_eq!(SpecType::Mix, "mix".parse().unwrap());
|
assert_eq!(SpecType::Mix, "mix".parse().unwrap());
|
||||||
assert_eq!(SpecType::Callisto, "callisto".parse().unwrap());
|
assert_eq!(SpecType::Callisto, "callisto".parse().unwrap());
|
||||||
assert_eq!(SpecType::Morden, "morden".parse().unwrap());
|
assert_eq!(SpecType::Morden, "morden".parse().unwrap());
|
||||||
assert_eq!(SpecType::Mordor, "mordor".parse().unwrap());
|
|
||||||
assert_eq!(SpecType::Mordor, "classic-testnet".parse().unwrap());
|
|
||||||
assert_eq!(SpecType::Ropsten, "ropsten".parse().unwrap());
|
assert_eq!(SpecType::Ropsten, "ropsten".parse().unwrap());
|
||||||
assert_eq!(SpecType::Kovan, "kovan".parse().unwrap());
|
assert_eq!(SpecType::Kovan, "kovan".parse().unwrap());
|
||||||
assert_eq!(SpecType::Rinkeby, "rinkeby".parse().unwrap());
|
assert_eq!(SpecType::Rinkeby, "rinkeby".parse().unwrap());
|
||||||
assert_eq!(SpecType::Goerli, "goerli".parse().unwrap());
|
assert_eq!(SpecType::Goerli, "goerli".parse().unwrap());
|
||||||
assert_eq!(SpecType::Goerli, "görli".parse().unwrap());
|
assert_eq!(SpecType::Goerli, "görli".parse().unwrap());
|
||||||
assert_eq!(SpecType::Goerli, "testnet".parse().unwrap());
|
assert_eq!(SpecType::Goerli, "testnet".parse().unwrap());
|
||||||
assert_eq!(SpecType::Kotti, "kotti".parse().unwrap());
|
|
||||||
assert_eq!(SpecType::Sokol, "sokol".parse().unwrap());
|
assert_eq!(SpecType::Sokol, "sokol".parse().unwrap());
|
||||||
assert_eq!(SpecType::Sokol, "poasokol".parse().unwrap());
|
assert_eq!(SpecType::Sokol, "poasokol".parse().unwrap());
|
||||||
}
|
}
|
||||||
@ -432,23 +408,19 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
fn test_spec_type_display() {
|
fn test_spec_type_display() {
|
||||||
assert_eq!(format!("{}", SpecType::Foundation), "foundation");
|
assert_eq!(format!("{}", SpecType::Foundation), "foundation");
|
||||||
assert_eq!(format!("{}", SpecType::Classic), "classic");
|
|
||||||
assert_eq!(format!("{}", SpecType::Poanet), "poanet");
|
assert_eq!(format!("{}", SpecType::Poanet), "poanet");
|
||||||
assert_eq!(format!("{}", SpecType::Xdai), "xdai");
|
assert_eq!(format!("{}", SpecType::Xdai), "xdai");
|
||||||
assert_eq!(format!("{}", SpecType::Volta), "volta");
|
assert_eq!(format!("{}", SpecType::Volta), "volta");
|
||||||
assert_eq!(format!("{}", SpecType::Ewc), "energyweb");
|
assert_eq!(format!("{}", SpecType::Ewc), "energyweb");
|
||||||
assert_eq!(format!("{}", SpecType::Expanse), "expanse");
|
|
||||||
assert_eq!(format!("{}", SpecType::Musicoin), "musicoin");
|
assert_eq!(format!("{}", SpecType::Musicoin), "musicoin");
|
||||||
assert_eq!(format!("{}", SpecType::Ellaism), "ellaism");
|
assert_eq!(format!("{}", SpecType::Ellaism), "ellaism");
|
||||||
assert_eq!(format!("{}", SpecType::Mix), "mix");
|
assert_eq!(format!("{}", SpecType::Mix), "mix");
|
||||||
assert_eq!(format!("{}", SpecType::Callisto), "callisto");
|
assert_eq!(format!("{}", SpecType::Callisto), "callisto");
|
||||||
assert_eq!(format!("{}", SpecType::Morden), "morden");
|
assert_eq!(format!("{}", SpecType::Morden), "morden");
|
||||||
assert_eq!(format!("{}", SpecType::Mordor), "mordor");
|
|
||||||
assert_eq!(format!("{}", SpecType::Ropsten), "ropsten");
|
assert_eq!(format!("{}", SpecType::Ropsten), "ropsten");
|
||||||
assert_eq!(format!("{}", SpecType::Kovan), "kovan");
|
assert_eq!(format!("{}", SpecType::Kovan), "kovan");
|
||||||
assert_eq!(format!("{}", SpecType::Rinkeby), "rinkeby");
|
assert_eq!(format!("{}", SpecType::Rinkeby), "rinkeby");
|
||||||
assert_eq!(format!("{}", SpecType::Goerli), "goerli");
|
assert_eq!(format!("{}", SpecType::Goerli), "goerli");
|
||||||
assert_eq!(format!("{}", SpecType::Kotti), "kotti");
|
|
||||||
assert_eq!(format!("{}", SpecType::Sokol), "sokol");
|
assert_eq!(format!("{}", SpecType::Sokol), "sokol");
|
||||||
assert_eq!(format!("{}", SpecType::Dev), "dev");
|
assert_eq!(format!("{}", SpecType::Dev), "dev");
|
||||||
assert_eq!(format!("{}", SpecType::Custom("foo/bar".into())), "foo/bar");
|
assert_eq!(format!("{}", SpecType::Custom("foo/bar".into())), "foo/bar");
|
||||||
|
Loading…
Reference in New Issue
Block a user