88from multiversx_sdk_cli .accounts import Account
99from multiversx_sdk_cli .cli_password import load_password
1010from multiversx_sdk_cli .config import (GAS_PER_DATA_BYTE , MIN_GAS_LIMIT ,
11- MetaChainSystemSCsCost )
11+ MetaChainSystemSCsCost , get_address_hrp )
1212from multiversx_sdk_cli .contracts import prepare_execute_transaction_data
1313from multiversx_sdk_cli .errors import BadUsage
1414from multiversx_sdk_cli .validators .validators_file import ValidatorsFile
1515
1616logger = logging .getLogger ("validators" )
1717
18- VALIDATORS_SMART_CONTRACT_ADDRESS = "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqplllst77y4l "
18+ VALIDATORS_SMART_CONTRACT_ADDRESS_HEX = "000000000000000000010000000000000000000000000000000000000001ffff "
1919
2020
2121def prepare_args_for_stake (args : Any ):
@@ -36,7 +36,7 @@ def prepare_args_for_stake(args: Any):
3636
3737 data , gas_limit = prepare_transaction_data_for_stake (node_operator .address , validators_file_path , reward_address )
3838 args .data = data
39- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
39+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
4040
4141 if args .estimate_gas :
4242 args .gas_limit = gas_limit
@@ -74,7 +74,7 @@ def prepare_transaction_data_for_stake(node_operator_address: Address, validator
7474
7575def prepare_args_for_top_up (args : Any ):
7676 args .data = 'stake'
77- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
77+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
7878
7979 if args .estimate_gas :
8080 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .STAKE , 1 )
@@ -83,7 +83,7 @@ def prepare_args_for_top_up(args: Any):
8383def prepare_args_for_unstake (args : Any ):
8484 parsed_keys , num_keys = utils .parse_keys (args .nodes_public_keys )
8585 args .data = 'unStake' + parsed_keys
86- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
86+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
8787
8888 if args .estimate_gas :
8989 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .UNSTAKE , num_keys )
@@ -92,7 +92,7 @@ def prepare_args_for_unstake(args: Any):
9292def prepare_args_for_unbond (args : Any ):
9393 parsed_keys , num_keys = utils .parse_keys (args .nodes_public_keys )
9494 args .data = 'unBond' + parsed_keys
95- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
95+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
9696
9797 if args .estimate_gas :
9898 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .UNBOND , num_keys )
@@ -101,7 +101,7 @@ def prepare_args_for_unbond(args: Any):
101101def prepare_args_for_unjail (args : Any ):
102102 parsed_keys , num_keys = utils .parse_keys (args .nodes_public_keys )
103103 args .data = 'unJail' + parsed_keys
104- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
104+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
105105
106106 if args .estimate_gas :
107107 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .UNJAIL , num_keys )
@@ -110,15 +110,15 @@ def prepare_args_for_unjail(args: Any):
110110def prepare_args_for_change_reward_address (args : Any ):
111111 reward_address = Address .new_from_bech32 (args .reward_address )
112112 args .data = 'changeRewardAddress@' + reward_address .hex ()
113- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
113+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
114114
115115 if args .estimate_gas :
116116 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .CHANGE_REWARD_ADDRESS )
117117
118118
119119def prepare_args_for_claim (args : Any ):
120120 args .data = 'claim'
121- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
121+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
122122
123123 if args .estimate_gas :
124124 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .CLAIM )
@@ -128,7 +128,7 @@ def prepare_args_for_unstake_nodes(args: Any):
128128 parsed_keys , num_keys = utils .parse_keys (args .nodes_public_keys )
129129 args .data = 'unStakeNodes' + parsed_keys
130130
131- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
131+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
132132 if args .estimate_gas :
133133 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .UNSTAKE , num_keys )
134134
@@ -137,7 +137,7 @@ def prepare_args_for_unstake_tokens(args: Any):
137137 args .data = 'unStakeTokens'
138138 args .data += '@' + utils .str_int_to_hex_str (str (args .unstake_value ))
139139
140- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
140+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
141141 if args .estimate_gas :
142142 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .UNSTAKE_TOKENS )
143143
@@ -146,7 +146,7 @@ def prepare_args_for_unbond_nodes(args: Any):
146146 parsed_keys , num_keys = utils .parse_keys (args .nodes_public_keys )
147147 args .data = 'unBondNodes' + parsed_keys
148148
149- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
149+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
150150 if args .estimate_gas :
151151 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .UNBOND , num_keys )
152152
@@ -155,15 +155,15 @@ def prepare_args_for_unbond_tokens(args: Any):
155155 args .data = 'unBondTokens'
156156 args .data += '@' + utils .str_int_to_hex_str (str (args .unbond_value ))
157157
158- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
158+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
159159 if args .estimate_gas :
160160 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .UNBOND_TOKENS )
161161
162162
163163def prepare_args_for_clean_registered_data (args : Any ):
164164 args .data = 'cleanRegisteredData'
165165
166- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
166+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
167167 if args .estimate_gas :
168168 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .STAKE )
169169
@@ -172,7 +172,7 @@ def prepare_args_for_restake_unstaked_nodes(args: Any):
172172 parsed_keys , num_keys = utils .parse_keys (args .nodes_public_keys )
173173 args .data = 'reStakeUnStakedNodes' + parsed_keys
174174
175- args .receiver = VALIDATORS_SMART_CONTRACT_ADDRESS
175+ args .receiver = Address . new_from_hex ( VALIDATORS_SMART_CONTRACT_ADDRESS_HEX , get_address_hrp ()). to_bech32 ()
176176 if args .estimate_gas :
177177 args .gas_limit = estimate_system_sc_call (args .data , MetaChainSystemSCsCost .STAKE , num_keys )
178178
0 commit comments