Add script to simulate Hush supply
This commit is contained in:
26
contrib/hush_supply
Executable file
26
contrib/hush_supply
Executable file
@@ -0,0 +1,26 @@
|
|||||||
|
#!/usr/bin/env perl
|
||||||
|
use warnings;
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
my $supply = 0.0;
|
||||||
|
my $block = 0;
|
||||||
|
my $amount = 12.5;
|
||||||
|
my $halvings = 0;
|
||||||
|
|
||||||
|
while ($supply <= 21_000_000) {
|
||||||
|
#while ($halvings <= 64 && $amount >= 1e-8) {
|
||||||
|
$block++;
|
||||||
|
if ($block < 5) {
|
||||||
|
$amount = 40_000;
|
||||||
|
} else {
|
||||||
|
# Halving every 840000 blocks
|
||||||
|
if ($block % 840_000 == 0) {
|
||||||
|
$amount /= 2;
|
||||||
|
$halvings++;
|
||||||
|
}
|
||||||
|
$amount = 12.5 / (2**$halvings);
|
||||||
|
}
|
||||||
|
$supply += $amount;
|
||||||
|
# block, current supply, block reward amount, number of halvings
|
||||||
|
print "$block,$supply,$amount,$halvings\n";
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user