Board
Height
846086
Voting ELA
6,248,334.22
Rank
3
Annual Rate Of Return
0.181612%
Your Vote
0
Balance To Be Paid
0
Total Reward
0
Pool Vote
5,893,753.2
Deposit Address Remaining Balance
223.85951057
Balance To Be Distributed
42.20339223
Total Distributed Balance
19,969.29312152
Current Voters
1451
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 {
/**
* 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) {
List delegates = new java.util.ArrayList();
delegates.add("EN1y8rc3jF28iCYGbFnGPhqxJjW9YdHyhP");
delegates.add("EKAUkbX867WHqjdMuJ8QjJxz2RVo8hbGQm");
delegates.add("EXxSESEBFFvkgZdHiCMz4WwPHPAMLknLyU");
delegates.add("EYnMoYiEpzwaAhFKHbJ2TTEe1wYnVRJjzN");
delegates.add("EXmd7Ep3MpvRcsMgxNRxCWpFkfxVgXXbYK");
delegates.add("ES2VB5Umz6JGzdMUv21s5Frwbun8WTUWdg");
delegates.add("EHmvQBXLnt9DvU5CSFFAU6BobCifzjX4JT");
delegates.add("EHyFYpyHjvXnybwtYJVHenm8WZuzLzAHmB");
delegates.add("EevggFv6Ayk2q8vcY7pR4xYNd1emMcBTXB");
delegates.add("ETMESgfa5Hsp1KfugCDWDfqwyuHLLdWBdi");
delegates.add("ELYWPKAHgjULoD5fpuAeiuBVVQYdG7n7hM");
//TODO add your reward logic here
//Below is a example
if (totalDposReward < 7000.0/7300.0d){
if(delegates.contains(voterAddress)){
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.675 + totalDposReward * 0.92 * 0.325/11;
}else{
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.675;
}
}else if(totalDposReward < 8500.0/7300.0d){
if(delegates.contains(voterAddress)){
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.775 + totalDposReward * 0.92 * 0.225/11;
}else{
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.775;
}
}else if(totalDposReward < 9500.0/7300.0d){
if(delegates.contains(voterAddress)){
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.8 + totalDposReward * 0.92 * 0.2/11;
}else{
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.8;
}
}else if(totalDposReward < 10000.0/7300.0d){
if(delegates.contains(voterAddress)){
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.825 + totalDposReward * 0.92 * 0.175/11;
}else{
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.825;
}
}else if(totalDposReward < 10500.0/7300.0d){
if(delegates.contains(voterAddress)){
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.835 + totalDposReward * 0.92 * 0.165/11;
}else{
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.835;
}
}else{
if(delegates.contains(voterAddress)){
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.845 + totalDposReward * 0.92 * 0.155/11;
}else{
return currentVoterVotes/totalVotes * totalDposReward * 0.92 * 0.845;
}
}
}
/**
* 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) {
//TODO add your reward logic here
//Below is a example
if("EfUJNKuDap6Hgdsb31iAmTbUYHUa2kmoRq".equals(shareholderAddress)){
return totalSuperNodeReward;
}
return 0.0;
}
}