From 1d30852221223a68939f23d60d9baec68d2954a1 Mon Sep 17 00:00:00 2001 From: lumat Date: Mon, 14 Oct 2019 09:19:47 +0200 Subject: [PATCH] Introduce halving at eras 33-44. Enable Atlantis features. --- core/assets/assets.go | 282 ++++++++++++++++++++++----------------- core/config/mainnet.json | 16 +++ core/config/morden.json | 14 +- core/state_processor.go | 17 ++- core/state_transition.go | 2 +- 5 files changed, 205 insertions(+), 126 deletions(-) diff --git a/core/assets/assets.go b/core/assets/assets.go index 192a4b19c..63e7347b3 100644 --- a/core/assets/assets.go +++ b/core/assets/assets.go @@ -76,7 +76,7 @@ func (f *File) Close() error { } // Readdir implements http.File.Readdir -func (f *File) Readdir(count int) ([]os.FileInfo, error) { +func (f *File) Readdir(_ int) ([]os.FileInfo, error) { return nil, os.ErrNotExist } @@ -123,7 +123,7 @@ func (f *FileInfo) IsDir() bool { } // Readdir implements os.FileInfo.Readdir -func (f *FileInfo) Readdir(count int) ([]os.FileInfo, error) { +func (f *FileInfo) Readdir(_ int) ([]os.FileInfo, error) { return f.files, nil } @@ -310,47 +310,84 @@ func init() { 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x2c, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x61, 0x64, 0x48, 0x61, - 0x73, 0x68, 0x65, 0x73, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, - 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x6f, 0x6f, 0x74, 0x73, - 0x74, 0x72, 0x61, 0x70, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x65, 0x6e, 0x6f, 0x64, 0x65, 0x3a, - 0x2f, 0x2f, 0x63, 0x36, 0x65, 0x63, 0x39, 0x61, 0x66, 0x35, 0x30, 0x62, - 0x65, 0x38, 0x30, 0x34, 0x65, 0x33, 0x32, 0x62, 0x37, 0x33, 0x66, 0x30, - 0x61, 0x32, 0x34, 0x66, 0x31, 0x34, 0x35, 0x62, 0x35, 0x35, 0x30, 0x33, - 0x35, 0x64, 0x34, 0x38, 0x64, 0x61, 0x34, 0x34, 0x39, 0x37, 0x66, 0x39, - 0x66, 0x31, 0x63, 0x64, 0x66, 0x64, 0x38, 0x64, 0x66, 0x65, 0x36, 0x36, - 0x39, 0x32, 0x38, 0x38, 0x64, 0x64, 0x30, 0x61, 0x64, 0x33, 0x39, 0x39, - 0x31, 0x38, 0x62, 0x66, 0x64, 0x35, 0x39, 0x61, 0x33, 0x32, 0x65, 0x34, - 0x61, 0x30, 0x36, 0x38, 0x64, 0x61, 0x61, 0x65, 0x63, 0x31, 0x34, 0x36, - 0x65, 0x32, 0x33, 0x33, 0x38, 0x31, 0x63, 0x31, 0x30, 0x63, 0x37, 0x66, - 0x35, 0x35, 0x62, 0x34, 0x35, 0x66, 0x35, 0x38, 0x36, 0x65, 0x36, 0x61, - 0x64, 0x31, 0x34, 0x62, 0x32, 0x30, 0x37, 0x31, 0x62, 0x63, 0x40, 0x32, - 0x31, 0x32, 0x2e, 0x33, 0x32, 0x2e, 0x32, 0x35, 0x35, 0x2e, 0x38, 0x30, - 0x3a, 0x33, 0x31, 0x34, 0x34, 0x30, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x65, 0x6e, 0x6f, 0x64, 0x65, 0x3a, - 0x2f, 0x2f, 0x33, 0x33, 0x66, 0x31, 0x63, 0x36, 0x61, 0x39, 0x66, 0x63, - 0x37, 0x65, 0x33, 0x32, 0x30, 0x37, 0x30, 0x62, 0x38, 0x64, 0x66, 0x61, - 0x36, 0x35, 0x34, 0x64, 0x64, 0x64, 0x31, 0x38, 0x66, 0x64, 0x33, 0x63, - 0x63, 0x38, 0x63, 0x31, 0x31, 0x66, 0x39, 0x66, 0x32, 0x31, 0x64, 0x33, - 0x37, 0x31, 0x34, 0x31, 0x34, 0x36, 0x33, 0x34, 0x65, 0x38, 0x63, 0x61, - 0x63, 0x61, 0x37, 0x35, 0x38, 0x61, 0x34, 0x31, 0x36, 0x36, 0x63, 0x35, - 0x63, 0x61, 0x63, 0x61, 0x37, 0x66, 0x35, 0x35, 0x35, 0x63, 0x30, 0x64, - 0x38, 0x34, 0x38, 0x31, 0x65, 0x38, 0x30, 0x34, 0x35, 0x32, 0x34, 0x39, - 0x32, 0x64, 0x31, 0x62, 0x34, 0x66, 0x62, 0x36, 0x62, 0x35, 0x63, 0x63, - 0x37, 0x31, 0x30, 0x32, 0x34, 0x38, 0x35, 0x38, 0x34, 0x39, 0x32, 0x66, - 0x33, 0x35, 0x63, 0x36, 0x33, 0x37, 0x33, 0x37, 0x64, 0x34, 0x40, 0x32, - 0x31, 0x32, 0x2e, 0x33, 0x32, 0x2e, 0x32, 0x35, 0x35, 0x2e, 0x31, 0x39, - 0x35, 0x3a, 0x33, 0x31, 0x34, 0x34, 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x5d, 0x0a, 0x7d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x3a, 0x20, 0x22, 0x41, 0x74, 0x6c, 0x61, 0x6e, 0x74, 0x69, 0x73, 0x22, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x22, 0x3a, 0x20, 0x33, 0x33, 0x30, 0x30, 0x30, 0x30, 0x31, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, + 0x73, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x69, 0x64, 0x22, 0x3a, 0x20, 0x22, 0x64, + 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x22, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3a, 0x20, 0x7b, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3a, + 0x20, 0x22, 0x61, 0x74, 0x6c, 0x61, 0x6e, 0x74, 0x69, 0x73, 0x22, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x20, 0x22, + 0x48, 0x61, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x22, 0x2c, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3a, 0x20, 0x33, + 0x33, 0x30, 0x30, 0x30, 0x30, 0x31, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x61, 0x64, 0x48, 0x61, 0x73, 0x68, + 0x65, 0x73, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, + 0x61, 0x70, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x65, 0x6e, 0x6f, 0x64, 0x65, 0x3a, 0x2f, 0x2f, + 0x63, 0x36, 0x65, 0x63, 0x39, 0x61, 0x66, 0x35, 0x30, 0x62, 0x65, 0x38, + 0x30, 0x34, 0x65, 0x33, 0x32, 0x62, 0x37, 0x33, 0x66, 0x30, 0x61, 0x32, + 0x34, 0x66, 0x31, 0x34, 0x35, 0x62, 0x35, 0x35, 0x30, 0x33, 0x35, 0x64, + 0x34, 0x38, 0x64, 0x61, 0x34, 0x34, 0x39, 0x37, 0x66, 0x39, 0x66, 0x31, + 0x63, 0x64, 0x66, 0x64, 0x38, 0x64, 0x66, 0x65, 0x36, 0x36, 0x39, 0x32, + 0x38, 0x38, 0x64, 0x64, 0x30, 0x61, 0x64, 0x33, 0x39, 0x39, 0x31, 0x38, + 0x62, 0x66, 0x64, 0x35, 0x39, 0x61, 0x33, 0x32, 0x65, 0x34, 0x61, 0x30, + 0x36, 0x38, 0x64, 0x61, 0x61, 0x65, 0x63, 0x31, 0x34, 0x36, 0x65, 0x32, + 0x33, 0x33, 0x38, 0x31, 0x63, 0x31, 0x30, 0x63, 0x37, 0x66, 0x35, 0x35, + 0x62, 0x34, 0x35, 0x66, 0x35, 0x38, 0x36, 0x65, 0x36, 0x61, 0x64, 0x31, + 0x34, 0x62, 0x32, 0x30, 0x37, 0x31, 0x62, 0x63, 0x40, 0x32, 0x31, 0x32, + 0x2e, 0x33, 0x32, 0x2e, 0x32, 0x35, 0x35, 0x2e, 0x38, 0x30, 0x3a, 0x33, + 0x31, 0x34, 0x34, 0x30, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x65, 0x6e, 0x6f, 0x64, 0x65, 0x3a, 0x2f, 0x2f, + 0x33, 0x33, 0x66, 0x31, 0x63, 0x36, 0x61, 0x39, 0x66, 0x63, 0x37, 0x65, + 0x33, 0x32, 0x30, 0x37, 0x30, 0x62, 0x38, 0x64, 0x66, 0x61, 0x36, 0x35, + 0x34, 0x64, 0x64, 0x64, 0x31, 0x38, 0x66, 0x64, 0x33, 0x63, 0x63, 0x38, + 0x63, 0x31, 0x31, 0x66, 0x39, 0x66, 0x32, 0x31, 0x64, 0x33, 0x37, 0x31, + 0x34, 0x31, 0x34, 0x36, 0x33, 0x34, 0x65, 0x38, 0x63, 0x61, 0x63, 0x61, + 0x37, 0x35, 0x38, 0x61, 0x34, 0x31, 0x36, 0x36, 0x63, 0x35, 0x63, 0x61, + 0x63, 0x61, 0x37, 0x66, 0x35, 0x35, 0x35, 0x63, 0x30, 0x64, 0x38, 0x34, + 0x38, 0x31, 0x65, 0x38, 0x30, 0x34, 0x35, 0x32, 0x34, 0x39, 0x32, 0x64, + 0x31, 0x62, 0x34, 0x66, 0x62, 0x36, 0x62, 0x35, 0x63, 0x63, 0x37, 0x31, + 0x30, 0x32, 0x34, 0x38, 0x35, 0x38, 0x34, 0x39, 0x32, 0x66, 0x33, 0x35, + 0x63, 0x36, 0x33, 0x37, 0x33, 0x37, 0x64, 0x34, 0x40, 0x32, 0x31, 0x32, + 0x2e, 0x33, 0x32, 0x2e, 0x32, 0x35, 0x35, 0x2e, 0x31, 0x39, 0x35, 0x3a, + 0x33, 0x31, 0x34, 0x34, 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x5d, + 0x0a, 0x7d, 0x0a, }, fi: FileInfo{ name: "mainnet.json", - size: 2477, - modTime: time.Unix(0, 1566974647612905121), + size: 2919, + modTime: time.Unix(0, 1571037183279753001), isDir: false, }, }, "/core/config/morden.json": File{ @@ -436,126 +473,133 @@ func init() { 0x22, 0x3a, 0x20, 0x22, 0x48, 0x61, 0x72, 0x64, 0x66, 0x6f, 0x72, 0x6b, 0x31, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x6c, 0x6f, - 0x63, 0x6b, 0x22, 0x3a, 0x20, 0x31, 0x30, 0x2c, 0x0a, 0x20, 0x20, 0x20, + 0x63, 0x6b, 0x22, 0x3a, 0x20, 0x31, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x48, 0x61, - 0x73, 0x68, 0x22, 0x3a, 0x20, 0x22, 0x30, 0x78, 0x30, 0x30, 0x30, 0x30, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x48, 0x61, 0x73, + 0x68, 0x22, 0x3a, 0x20, 0x22, 0x30, 0x78, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x66, 0x65, 0x61, 0x74, - 0x75, 0x72, 0x65, 0x73, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x22, + 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x66, 0x65, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x73, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x69, 0x64, 0x22, 0x3a, - 0x20, 0x22, 0x65, 0x69, 0x70, 0x31, 0x35, 0x35, 0x22, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, - 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3a, 0x20, 0x7b, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x69, 0x64, 0x22, 0x3a, 0x20, + 0x22, 0x65, 0x69, 0x70, 0x31, 0x35, 0x35, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3a, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x22, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x44, - 0x22, 0x3a, 0x20, 0x32, 0x34, 0x34, 0x38, 0x35, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x49, 0x44, 0x22, + 0x3a, 0x20, 0x32, 0x34, 0x34, 0x38, 0x35, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x4c, 0x59, 0x52, - 0x41, 0x32, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x6c, - 0x6f, 0x63, 0x6b, 0x22, 0x3a, 0x20, 0x31, 0x30, 0x2c, 0x0a, 0x20, 0x20, + 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x4c, 0x59, 0x52, 0x41, + 0x32, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x22, 0x3a, 0x20, 0x31, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x48, - 0x61, 0x73, 0x68, 0x22, 0x3a, 0x20, 0x22, 0x30, 0x78, 0x30, 0x30, 0x30, - 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x48, 0x61, 0x73, + 0x68, 0x22, 0x3a, 0x20, 0x22, 0x30, 0x78, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x48, 0x61, 0x72, - 0x64, 0x66, 0x6f, 0x72, 0x6b, 0x32, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x22, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x6e, + 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x48, 0x61, 0x72, 0x64, 0x66, + 0x6f, 0x72, 0x6b, 0x32, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3a, 0x20, 0x31, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3a, 0x20, 0x33, 0x34, - 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x22, 0x3a, 0x20, 0x22, 0x30, - 0x78, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x20, 0x20, 0x20, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x48, 0x61, 0x73, 0x68, 0x22, 0x3a, 0x20, 0x22, 0x30, 0x78, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x30, 0x30, 0x30, 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, + 0x30, 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x20, - 0x22, 0x4c, 0x59, 0x52, 0x41, 0x32, 0x76, 0x32, 0x22, 0x2c, 0x0a, 0x20, + 0x20, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x4c, 0x59, + 0x52, 0x41, 0x32, 0x76, 0x32, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3a, 0x20, - 0x33, 0x34, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x72, 0x65, 0x71, - 0x75, 0x69, 0x72, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x22, 0x3a, 0x20, - 0x22, 0x30, 0x78, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3a, 0x20, 0x31, 0x2c, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x22, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x48, 0x61, 0x73, 0x68, 0x22, 0x3a, 0x20, 0x22, 0x30, 0x78, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, - 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, - 0x3a, 0x20, 0x22, 0x41, 0x74, 0x6c, 0x61, 0x6e, 0x74, 0x69, 0x73, 0x22, - 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, - 0x22, 0x3a, 0x20, 0x31, 0x38, 0x30, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x22, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x22, 0x3a, 0x20, - 0x5b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, + 0x20, 0x20, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x41, + 0x74, 0x6c, 0x61, 0x6e, 0x74, 0x69, 0x73, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, 0x3a, 0x20, 0x31, + 0x30, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x66, 0x65, 0x61, 0x74, + 0x75, 0x72, 0x65, 0x73, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x22, 0x69, 0x64, 0x22, 0x3a, 0x20, 0x22, 0x64, 0x69, 0x66, 0x66, 0x69, - 0x63, 0x75, 0x6c, 0x74, 0x79, 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x6f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3a, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x69, 0x64, 0x22, 0x3a, + 0x20, 0x22, 0x64, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, + 0x22, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x22, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, + 0x3a, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x22, 0x74, 0x79, 0x70, 0x65, 0x22, 0x3a, 0x20, 0x22, 0x61, 0x74, - 0x6c, 0x61, 0x6e, 0x74, 0x69, 0x73, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x74, 0x79, 0x70, + 0x65, 0x22, 0x3a, 0x20, 0x22, 0x61, 0x74, 0x6c, 0x61, 0x6e, 0x74, 0x69, + 0x73, 0x22, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x0a, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x7d, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x5d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, - 0x62, 0x61, 0x64, 0x48, 0x61, 0x73, 0x68, 0x65, 0x73, 0x22, 0x3a, 0x20, - 0x5b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x0a, - 0x20, 0x20, 0x20, 0x20, 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x22, - 0x62, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x22, 0x3a, 0x20, - 0x5b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x0a, - 0x7d, 0x0a, + 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x3a, 0x20, 0x22, 0x48, 0x61, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x22, 0x2c, + 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x22, + 0x3a, 0x20, 0x33, 0x33, 0x30, 0x30, 0x30, 0x30, 0x31, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0x0a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x2c, 0x0a, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x61, 0x64, 0x48, + 0x61, 0x73, 0x68, 0x65, 0x73, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x0a, 0x20, 0x20, 0x20, 0x20, + 0x7d, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x22, 0x62, 0x6f, 0x6f, 0x74, + 0x73, 0x74, 0x72, 0x61, 0x70, 0x22, 0x3a, 0x20, 0x5b, 0x0a, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x5d, 0x0a, 0x7d, 0x0a, }, fi: FileInfo{ name: "morden.json", - size: 2342, - modTime: time.Unix(0, 1566893818099058732), + size: 2434, + modTime: time.Unix(0, 1570520277458923693), isDir: false, }, }, diff --git a/core/config/mainnet.json b/core/config/mainnet.json index a1e9a8903..aaf714e13 100644 --- a/core/config/mainnet.json +++ b/core/config/mainnet.json @@ -62,6 +62,22 @@ "name": "LYRA2v2", "block": 2619000, "requiredHash": "0x0000000000000000000000000000000000000000000000000000000000000000" + }, + { + "name": "Atlantis", + "block": 3300001, + "features": [ + { + "id": "difficulty", + "options": { + "type": "atlantis" + } + } + ] + }, + { + "name": "Halving", + "block": 3300001 } ], "badHashes": [ diff --git a/core/config/morden.json b/core/config/morden.json index d1c68efcf..8150ca90d 100644 --- a/core/config/morden.json +++ b/core/config/morden.json @@ -34,7 +34,7 @@ }, { "name": "Hardfork1", - "block": 10, + "block": 1, "requiredHash": "0x0000000000000000000000000000000000000000000000000000000000000000", "features": [ { @@ -47,22 +47,22 @@ }, { "name": "LYRA2", - "block": 10, + "block": 1, "requiredHash": "0x0000000000000000000000000000000000000000000000000000000000000000" }, { "name": "Hardfork2", - "block": 34, + "block": 1, "requiredHash": "0x0000000000000000000000000000000000000000000000000000000000000000" }, { "name": "LYRA2v2", - "block": 34, + "block": 1, "requiredHash": "0x0000000000000000000000000000000000000000000000000000000000000000" }, { "name": "Atlantis", - "block": 180, + "block": 10, "features": [ { "id": "difficulty", @@ -71,6 +71,10 @@ } } ] + }, + { + "name": "Halving", + "block": 3300001 } ], "badHashes": [ diff --git a/core/state_processor.go b/core/state_processor.go index 37345da86..e84ca3bc2 100644 --- a/core/state_processor.go +++ b/core/state_processor.go @@ -199,14 +199,20 @@ func GetBlockWinnerRewardForUnclesByEra(era *big.Int, uncles []*types.Header) *b // GetRewardByEra gets a block reward at disinflation rate. // Constants MaxBlockReward, DisinflationRateQuotient, and DisinflationRateDivisor assumed. -func GetBlockWinnerRewardByEra(era *big.Int) *big.Int { +func GetBlockWinnerRewardByEra(eraOrig *big.Int) *big.Int { MaximumBlockReward := big.NewInt(5e+18) // 5 WEB MaximumBlockReward.Mul(MaximumBlockReward, big.NewInt(10)) // 50 WEB + era := new(big.Int).Set(eraOrig) + if era.Cmp(big.NewInt(0)) == 0 { return new(big.Int).Set(MaximumBlockReward) } + if era.Cmp(big.NewInt(45)) >= 0 { + era.Add(era, big.NewInt(162)) // skip 162 eras due to halving + } + // MaxBlockReward _r_ * (249/250)**era == MaxBlockReward * (249**era) / (250**era) // since (q/d)**n == q**n / d**n // qed @@ -218,6 +224,15 @@ func GetBlockWinnerRewardByEra(era *big.Int) *big.Int { r.Mul(MaximumBlockReward, q) r.Div(r, d) + if era.Cmp(big.NewInt(33)) >= 0 && era.Cmp(big.NewInt(45)) < 0 { + // r - (r/2/(45-33) * (era-33+1)) + r = GetBlockWinnerRewardByEra(big.NewInt(33-1)) + r2 := new(big.Int) + r2.Div(r, big.NewInt(2*(45-33))) + r2.Mul(r2, big.NewInt(era.Int64()-33+1)) + r.Sub(r, r2) + } + return r } diff --git a/core/state_transition.go b/core/state_transition.go index 72418f556..d58a985bc 100644 --- a/core/state_transition.go +++ b/core/state_transition.go @@ -144,7 +144,7 @@ func (st *StateTransition) to() common.Address { to := st.msg.To() if !st.state.Exist(*to) && !st.env.RuleSet().IsAtlantis(st.env.BlockNumber()) { // for backward compatibility with webchain before full Atlantis hardfork st.state.CreateAccount(*to) - } + } return *st.msg.To() }