Board
Height
820945
Voting ELA
6,809,002.66
Rank
12
Annual Rate Of Return
0.161165%
Your Vote
0
Balance To Be Paid
0
Total Reward
0
Pool Vote
6,228,681.06
Deposit Address Remaining Balance
55.46227389
Balance To Be Distributed
1.6240716
Total Distributed Balance
13,950.11090452
Current Voters
1345
Pool Statistic
Distribution Script
/**
* Copyright (c) 2019 The Elabank Developers
*
* Distributed under the MIT software license, see the accompanying file
* LICENSE or https://opensource.org/licenses/mit-license.php
*/
package compiler;
import java.util.List;
public class CustomReward implements net.elabank.classloader.Compiler.Reward {
private static double votes = 0.0;
private static double ActiveNode = 0.0;
/**
* Calculate each voter's reward except the whitelist addresses , go to tutorials to see how to set a whitelist.
* Remaining amount after reward voters will go to the super node owner. if you have set a shareholder list,
* the shareholder will share the super node reward by their share.
*
* @param currentVoterVotes current voter's votes
* @param totalVotes total votes from the voters
* @param totalDposReward total Dpos reward from Elastos BlockChain
* @param currentVoterVotedSuperNodeList super node public key list which voted by the current voter
* @param voterAddress voter's address
* @return
*/
public double voter(double currentVoterVotes , double totalVotes , double totalDposReward, final List currentVoterVotedSuperNodeList, String voterAddress) {
// Copying both the totalVotes and totalDposReward variable to be used in the first and second part of the script.
votes = totalVotes;
ActiveNode = totalDposReward;
// Performing Voter Return caclulations based off of Total Vote Percent and Active Node Status.
if (votes <= 1250000){
return currentVoterVotes/totalVotes * totalDposReward * 0.75; //0.55;
}else if(votes <= 2400000){
return currentVoterVotes/totalVotes * totalDposReward * 0.75; //0.6;
}else if(ActiveNode <= 1.3){
return currentVoterVotes/totalVotes * totalDposReward * 0.75; //0.75; // 0.65 previously
}else if(votes <= 4300000){
return currentVoterVotes/totalVotes * totalDposReward * 0.75; //0.75;
}else{
return currentVoterVotes/totalVotes * totalDposReward * 0.75; //0.80;
}
}
/**
* Calculate each shareholder's reward ,Remaining amount after reward shareholder's will go to the super node owner.
* Go to tutorials to see how to set shareholder list.
* If you don't have any shareholders,You can leave this method as it is .
*
* @param share the share of the current shareholder. the total share is 5000.0
* @param totalSuperNodeReward total super node reward which equals to the Dpos reward minus the distributed voter's reward.
* @param shareholderAddress current shareholder address
* @return
*/
public double shareholder(double share , double totalSuperNodeReward , String shareholderAddress) {
if (votes <= 1250000){
// Lottery Wallet Distribution
if("EHafe3gHhyS2e3r7pJM3sqKKhvCvNMML22".equals(shareholderAddress)){
return totalSuperNodeReward * 0;
// Expense Wallet Distribution
}else if("EWgdfwohScg3SPHr9PL14iu8odZJLc76u5".equals(shareholderAddress)){
return totalSuperNodeReward * 0.6;
// Supernode Delegate Distribution
}else if("EK5TPYQVP4AuS9i1ytY5j8xuG5x4qWL9a6".equals(shareholderAddress)
|| "EdLxD8j8639sXvdrTdxEJjAY4KX8HD9eCi".equals(shareholderAddress)
|| "EXnTnfzbz3xdnarzruf9rLzawGrw7ENnMd".equals(shareholderAddress)
|| "EZhpy7yvSVRmU8cxLhtqnpVmb1xGqQQVGG".equals(shareholderAddress)
|| "EHfrRdx716YwAGmGxGWgQNwL2WHjYe6fRp".equals(shareholderAddress)){
return totalSuperNodeReward * 0.08;
}
}
else if (votes <= 2400000){
if("EHafe3gHhyS2e3r7pJM3sqKKhvCvNMML22".equals(shareholderAddress)){
return totalSuperNodeReward * 0;
}else if("EWgdfwohScg3SPHr9PL14iu8odZJLc76u5".equals(shareholderAddress)){
return totalSuperNodeReward * 0.5;
}else if("EK5TPYQVP4AuS9i1ytY5j8xuG5x4qWL9a6".equals(shareholderAddress)
|| "EdLxD8j8639sXvdrTdxEJjAY4KX8HD9eCi".equals(shareholderAddress)
|| "EXnTnfzbz3xdnarzruf9rLzawGrw7ENnMd".equals(shareholderAddress)
|| "EZhpy7yvSVRmU8cxLhtqnpVmb1xGqQQVGG".equals(shareholderAddress)
|| "EHfrRdx716YwAGmGxGWgQNwL2WHjYe6fRp".equals(shareholderAddress)){
return totalSuperNodeReward * 0.1;
}
}
else if (ActiveNode <= 1.3){
if("EHafe3gHhyS2e3r7pJM3sqKKhvCvNMML22".equals(shareholderAddress)){
return totalSuperNodeReward * 0;
}else if("EWgdfwohScg3SPHr9PL14iu8odZJLc76u5".equals(shareholderAddress)){
return totalSuperNodeReward * 0.45;
}else if("EK5TPYQVP4AuS9i1ytY5j8xuG5x4qWL9a6".equals(shareholderAddress)
|| "EdLxD8j8639sXvdrTdxEJjAY4KX8HD9eCi".equals(shareholderAddress)
|| "EXnTnfzbz3xdnarzruf9rLzawGrw7ENnMd".equals(shareholderAddress)
|| "EZhpy7yvSVRmU8cxLhtqnpVmb1xGqQQVGG".equals(shareholderAddress)
|| "EHfrRdx716YwAGmGxGWgQNwL2WHjYe6fRp".equals(shareholderAddress)){
return totalSuperNodeReward * 0.11;
}
}
else if (votes <= 4300000){
if("EHafe3gHhyS2e3r7pJM3sqKKhvCvNMML22".equals(shareholderAddress)){
return totalSuperNodeReward * 0;
}else if("EWgdfwohScg3SPHr9PL14iu8odZJLc76u5".equals(shareholderAddress)){
return totalSuperNodeReward * 0.35;
}else if("EK5TPYQVP4AuS9i1ytY5j8xuG5x4qWL9a6".equals(shareholderAddress)
|| "EdLxD8j8639sXvdrTdxEJjAY4KX8HD9eCi".equals(shareholderAddress)
|| "EXnTnfzbz3xdnarzruf9rLzawGrw7ENnMd".equals(shareholderAddress)
|| "EZhpy7yvSVRmU8cxLhtqnpVmb1xGqQQVGG".equals(shareholderAddress)
|| "EHfrRdx716YwAGmGxGWgQNwL2WHjYe6fRp".equals(shareholderAddress)){
return totalSuperNodeReward * 0.13;
}
}
else if (votes > 4300000){
if("EHafe3gHhyS2e3r7pJM3sqKKhvCvNMML22".equals(shareholderAddress)){
return totalSuperNodeReward * 0;
}else if("EWgdfwohScg3SPHr9PL14iu8odZJLc76u5".equals(shareholderAddress)){
return totalSuperNodeReward * 0.35;
}else if("EK5TPYQVP4AuS9i1ytY5j8xuG5x4qWL9a6".equals(shareholderAddress)
|| "EdLxD8j8639sXvdrTdxEJjAY4KX8HD9eCi".equals(shareholderAddress)
|| "EXnTnfzbz3xdnarzruf9rLzawGrw7ENnMd".equals(shareholderAddress)
|| "EZhpy7yvSVRmU8cxLhtqnpVmb1xGqQQVGG".equals(shareholderAddress)
|| "EHfrRdx716YwAGmGxGWgQNwL2WHjYe6fRp".equals(shareholderAddress)){
return totalSuperNodeReward * 0.13;
}
}
return 0.0;
}
}