-
Notifications
You must be signed in to change notification settings - Fork 1.2k
refactor: reduce CDeterministicMNManager globals use #5933
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
src/validationinterface.cpp
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you don't need this <include> here probably, seems as just forward declaration is enough
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
validationinterface.cpp:291:25: error: by-copy capture of variable 'tip_mn_list' with incomplete type 'const CDeterministicMNList'
auto event = [vote, tip_mn_list, this] {
^
./validationinterface.h:23:7: note: forward declaration of 'CDeterministicMNList'
class CDeterministicMNList;
^
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you capture here by reference instead?
See 4a53a10#diff-ac4b2d3a8de2c4dd41ad9d75505ea6ce4dc87a476710a9ebee8acf9bebf5cca2R196
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ping: 1e0bb3b
src/rpc/governance.cpp
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe better to implement EnsureMNMan same as EnsureMempool and EnsureLLMQContext ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Don't know if we should implement Ensure(Any)* unless it's significant (like LLMQContext)
2036940 to
13f6aac
Compare
|
This pull request has conflicts, please rebase. |
src/governance/object.h
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
consider create a new class such as CGovernanceObjectVotable which is:
class CGovernanceObjectVotable
{
public:
CGovernanceObject* m_obj;
const CDeterministicMNList tip_mn_list;
CGovernanceObjectVotable(const CDeterministicMNList& mn_list, CGovernanceObject* gov_obj);
....
....
};And move all methods that requires CDeterministicMNList such as IsValidLocally, UpdateLocalValidy, etc - to this new class.
In this case code below such as rpc implementation can be rewritten and simplified like that:
const CGovernanceObjectVotable* pGovObj = Governance::MakeVotable(node.govman->FindConstGovernanceObject(hash), node.dmnman->GetListAtChainTip());
UniValue objFundingResult(UniValue::VOBJ);
objFundingResult.pushKV("AbsoluteYesCount", pGovObj->GetAbsoluteYesCount(VOTE_SIGNAL_FUNDING));
objFundingResult.pushKV("YesCount", pGovObj->GetYesCount(VOTE_SIGNAL_FUNDING));
objFundingResult.pushKV("NoCount", pGovObj->GetNoCount(VOTE_SIGNAL_FUNDING));
objFundingResult.pushKV("AbstainCount", pGovObj->GetAbstainCount(VOTE_SIGNAL_FUNDING));There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this is needed in this PR; maybe a future PR
PastaPastaPasta
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK f8d1853
knst
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please remove this freshly introduced circular dependency: 1e0bb3b
Or create follow-up PR for it.
otherwise LGTM.
src/evo/cbtx.cpp
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
seems unrelated
src/evo/deterministicmns.cpp
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think for usages like that (CheckProRegTx, CalcCbTxMerkleRootMNList) better to pass result of dmnman.GetListForBlock(pindexPrev), for CalcCbTxMerkleRootMNList even SML intead DeterministicMNManager.
Btw, it can be done later out-of-scope of this PR
src/validationinterface.cpp
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ping: 1e0bb3b
PastaPastaPasta
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(self) utACK fa6847d
knst
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK fa6847d
…icmns in validationinterface"
419a8af274356f26e72793781409f0326097f0ff fix: revert "drop circular dependencies over deterministicmns in validationinterface" (Kittywhiskers Van Gogh)
Pull request description:
## Additional Information
In https://github.com/dashpay/dash/pull/5933, a commit was added that changed a copy to a ref in the arguments of a lambda (fa6847d2fb91125fa1354c400a60784f9136ebae), which helped get rid of a circular dependency. This unfortunately also caused a functional test to start failing (`interface_zmq_dash.py`).
This is reflected in the PR itself and in `develop` with CI results:
* PR at commit before fa6847d2fb91125fa1354c400a60784f9136ebae, i.e. f8d18539038230d493403016d30b431742faa305 ([build](https://gitlab.com/dashpay/dash/-/pipelines/1219453638), passes)
* PR at commit fa6847d2fb91125fa1354c400a60784f9136ebae ([build](https://gitlab.com/dashpay/dash/-/pipelines/1221199595), fails 2/4 instances)
* `develop`, as of this writing, a7e61114f8473cbf7e2fd3e8ded6b2de5eb3ff9f ([build](https://gitlab.com/dashpay/dash/-/pipelines/1221235772), fails 3/4 instances)
This change was also confirmed locally....
<details>
<summary>
develop (a7e61114f8473cbf7e2fd3e8ded6b2de5eb3ff9f):
</summary>
```
dash@1914d5152e74:/src/dash$ ./test/functional/interface_zmq_dash.py
2024-03-21T12:18:10.643000Z TestFramework (INFO): Initializing test directory /tmp/dash_func_test_m7b0f114
2024-03-21T12:18:10.644000Z TestFramework (INFO): Creating and starting controller node
2024-03-21T12:18:10.644000Z TestFramework (INFO): Creating and starting 1 simple nodes
2024-03-21T12:18:11.587000Z TestFramework (INFO): Generating 4100 coins
2024-03-21T12:18:13.424000Z TestFramework (INFO): Activating DIP3
2024-03-21T12:18:13.427000Z TestFramework (INFO): Preparing 4 masternodes
[...]
2024-03-21T12:19:36.716000Z TestFramework (INFO): Testing 3 ChainLock publishers
2024-03-21T12:19:37.139000Z TestFramework (INFO): Testing 4 governance publishers
2024-03-21T12:19:38.547000Z TestFramework (ERROR): Unexpected exception caught during testing
Traceback (most recent call last):
File "/src/dash/test/functional/test_framework/authproxy.py", line 108, in _request
return self._get_response()
File "/src/dash/test/functional/test_framework/authproxy.py", line 170, in _get_response
http_response = self.__conn.getresponse()
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 1348, in getresponse
response.begin()
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 316, in begin
version, status, reason = self._read_status()
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 285, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/src/dash/test/functional/test_framework/test_framework.py", line 157, in main
self.run_test()
File "./test/functional/interface_zmq_dash.py", line 152, in run_test
self.test_governance_publishers()
File "./test/functional/interface_zmq_dash.py", line 409, in test_governance_publishers
self.nodes[0].gobject("vote-many", rpc_proposal_hash, map_vote_signals[1], map_vote_outcomes[1])
File "/src/dash/test/functional/test_framework/coverage.py", line 49, in __call__
return_val = self.auth_service_proxy_instance.__call__(*args, **kwargs)
File "/src/dash/test/functional/test_framework/authproxy.py", line 146, in __call__
response, status = self._request('POST', self.__url.path, postdata.encode('utf-8'))
File "/src/dash/test/functional/test_framework/authproxy.py", line 113, in _request
self.__conn.request(method, path, postdata, headers)
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 1256, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 1302, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 1251, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 1011, in _send_output
self.send(msg)
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 951, in send
self.connect()
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 922, in connect
self.sock = self._create_connection(
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/socket.py", line 808, in create_connection
raise err
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/socket.py", line 796, in create_connection
sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused
2024-03-21T12:19:39.050000Z TestFramework (INFO): Stopping nodes
2024-03-21T12:19:39.051000Z TestFramework.node0 (ERROR): Unable to stop node.
Traceback (most recent call last):
File "/src/dash/test/functional/test_framework/test_node.py", line 338, in stop_node
self.stop(wait=wait)
File "/src/dash/test/functional/test_framework/coverage.py", line 49, in __call__
return_val = self.auth_service_proxy_instance.__call__(*args, **kwargs)
File "/src/dash/test/functional/test_framework/authproxy.py", line 146, in __call__
response, status = self._request('POST', self.__url.path, postdata.encode('utf-8'))
File "/src/dash/test/functional/test_framework/authproxy.py", line 107, in _request
self.__conn.request(method, path, postdata, headers)
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 1256, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 1267, in _send_request
self.putrequest(method, url, **skips)
File "/usr/local/pyenv/versions/3.8.16/lib/python3.8/http/client.py", line 1093, in putrequest
raise CannotSendRequest(self.__state)
http.client.CannotSendRequest: Request-sent
2024-03-21T12:19:39.052000Z TestFramework (ERROR): Unexpected exception caught during shutdown
Traceback (most recent call last):
File "/src/dash/test/functional/test_framework/test_framework.py", line 324, in shutdown
self.stop_nodes()
File "/src/dash/test/functional/test_framework/test_framework.py", line 665, in stop_nodes
node.stop_node(expected_stderr=expected_stderr, wait=wait, wait_until_stopped=False)
File "/src/dash/test/functional/test_framework/test_node.py", line 352, in stop_node
raise AssertionError("Unexpected stderr {} != {}".format(stderr, expected_stderr))
AssertionError: Unexpected stderr dashd: ./immer/immer/detail/hamts/node.hpp:144: auto immer::detail::hamts::node<T, Hash, Equal, MemoryPolicy, B>::nodemap() const [with T = std::pair<uint256, std::pair<uint256, unsigned int> >; Hash = immer::map<uint256, std::pair<uint256, unsigned int>, CDeterministicMNList::ImmerHasher>::hash_key; Equal = immer::map<uint256, std::pair<uint256, unsigned int>, CDeterministicMNList::ImmerHasher>::equal_key; MemoryPolicy = immer::memory_policy<immer::free_list_heap_policy<immer::cpp_heap>, immer::refcount_policy, immer::spinlock_policy>; unsigned int B = 5]: Assertion `kind() == kind_t::inner' failed.
Posix Signal: Aborted
No debug information available for stacktrace. You should add debug information and then run:
dashd -printcrashinfo=bvcgc43iinzgc43ijfxgm3ybaacwiyltnbsbkudponuxqictnftw4ylmhiqecytpoj2gkzaaaa====== !=
2024-03-21T12:19:39.052000Z TestFramework (WARNING): Not cleaning up dir /tmp/dash_func_test_m7b0f114
2024-03-21T12:19:39.052000Z TestFramework (ERROR): Test failed. Test logging available at /tmp/dash_func_test_m7b0f114/test_framework.log
2024-03-21T12:19:39.053000Z TestFramework (ERROR):
2024-03-21T12:19:39.053000Z TestFramework (ERROR): Hint: Call /src/dash/test/functional/combine_logs.py '/tmp/dash_func_test_m7b0f114' to consolidate all logs
2024-03-21T12:19:39.053000Z TestFramework (ERROR):
2024-03-21T12:19:39.053000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2024-03-21T12:19:39.053000Z TestFramework (ERROR): https://github.com/dashpay/dash/issues
2024-03-21T12:19:39.054000Z TestFramework (ERROR):
[node 0] Cleaning up leftover process
[node 4] Cleaning up leftover process
[node 3] Cleaning up leftover process
[node 2] Cleaning up leftover process
[node 1] Cleaning up leftover process
```
</details>
<details>
<summary>
develop with revert (419a8af274356f26e72793781409f0326097f0ff)
</summary>
```
dash@1914d5152e74:/src/dash$ ./test/functional/interface_zmq_dash.py
2024-03-21T12:23:50.749000Z TestFramework (INFO): Initializing test directory /tmp/dash_func_test__2tlpe0x
2024-03-21T12:23:50.751000Z TestFramework (INFO): Creating and starting controller node
2024-03-21T12:23:50.751000Z TestFramework (INFO): Creating and starting 1 simple nodes
2024-03-21T12:23:51.717000Z TestFramework (INFO): Generating 4100 coins
2024-03-21T12:23:53.648000Z TestFramework (INFO): Activating DIP3
2024-03-21T12:23:53.651000Z TestFramework (INFO): Preparing 4 masternodes
[...]
2024-03-21T12:25:22.935000Z TestFramework (INFO): Testing 3 ChainLock publishers
2024-03-21T12:25:23.357000Z TestFramework (INFO): Testing 4 governance publishers
2024-03-21T12:25:24.750000Z TestFramework (INFO): Testing 5 InstantSend publishers
2024-03-21T12:25:30.789000Z TestFramework (INFO): Testing 5 InstantSend publishers
2024-03-21T12:25:39.270000Z TestFramework (INFO): Moved from block 1013 to 1032
2024-03-21T12:25:39.270000Z TestFramework (INFO): Testing 5 InstantSend publishers
2024-03-21T12:25:48.155000Z TestFramework (INFO): Moved from block 1033 to 1056
2024-03-21T12:25:48.155000Z TestFramework (INFO): Testing 5 InstantSend publishers
2024-03-21T12:25:56.533000Z TestFramework (INFO): Moved from block 1057 to 1080
2024-03-21T12:25:56.533000Z TestFramework (INFO): Testing 5 InstantSend publishers
2024-03-21T12:26:02.538000Z TestFramework (INFO): Mining quorum: expected_members=4, expected_connections=2, expected_contributions=4, expected_complaints=0, expected_justifications=0, expected_commitments=4
2024-03-21T12:26:04.923000Z TestFramework (INFO): Expected quorum_0 at:1104
2024-03-21T12:26:04.924000Z TestFramework (INFO): Expected quorum_0 hash:0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf
2024-03-21T12:26:04.924000Z TestFramework (INFO): quorumIndex 0: Waiting for phase 1 (init)
2024-03-21T12:26:04.928000Z TestFramework (INFO): quorumIndex 0: Waiting for quorum connections (init)
2024-03-21T12:26:05.947000Z TestFramework (INFO): Expected quorum_1 at:1105
2024-03-21T12:26:05.947000Z TestFramework (INFO): Expected quorum_1 hash:6ea7ea40198c86f773933c1fa086ea054f1b3bc3efa1b78d64a578f6019f9831
2024-03-21T12:26:05.947000Z TestFramework (INFO): quorumIndex 1: Waiting for phase 1 (init)
2024-03-21T12:26:06.458000Z TestFramework (INFO): quorumIndex 1: Waiting for quorum connections (init)
2024-03-21T12:26:07.475000Z TestFramework (INFO): quorumIndex 0: Waiting for phase 2 (contribute)
2024-03-21T12:26:09.502000Z TestFramework (INFO): quorumIndex 1: Waiting for phase 2 (contribute)
2024-03-21T12:26:11.027000Z TestFramework (INFO): quorumIndex 0: Waiting for phase 3 (complain)
2024-03-21T12:26:12.551000Z TestFramework (INFO): quorumIndex 1: Waiting for phase 3 (complain)
2024-03-21T12:26:14.075000Z TestFramework (INFO): quorumIndex 0: Waiting for phase 4 (justify)
2024-03-21T12:26:15.600000Z TestFramework (INFO): quorumIndex 1: Waiting for phase 4 (justify)
2024-03-21T12:26:17.123000Z TestFramework (INFO): quorumIndex 0: Waiting for phase 5 (commit)
2024-03-21T12:26:19.149000Z TestFramework (INFO): quorumIndex 1: Waiting for phase 5 (commit)
2024-03-21T12:26:20.674000Z TestFramework (INFO): quorumIndex 0: Waiting for phase 6 (finalization)
2024-03-21T12:26:22.267000Z TestFramework (INFO): quorumIndex 1: Waiting for phase 6 (finalization)
2024-03-21T12:26:28.780000Z TestFramework (INFO): Mining final commitments
2024-03-21T12:26:34.892000Z TestFramework (INFO): Waiting for quorum(s) to appear in the list
2024-03-21T12:26:34.894000Z TestFramework (INFO): h(1116) quorums: {'llmq_test': ['0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf', '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676'], 'llmq_test_v17': ['0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf', '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676'], 'llmq_test_dip0024': ['0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf', '6ea7ea40198c86f773933c1fa086ea054f1b3bc3efa1b78d64a578f6019f9831'], 'llmq_test_platform': []}
2024-03-21T12:26:35.047000Z TestFramework (INFO): New quorum: height=1104, quorumHash=0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf, quorumIndex=0, minedBlock=4e0193af47e244afe7ca8b4644e8b7f655afc29035de61e42b7c867bfd0469c4
2024-03-21T12:26:35.047000Z TestFramework (INFO): New quorum: height=1105, quorumHash=6ea7ea40198c86f773933c1fa086ea054f1b3bc3efa1b78d64a578f6019f9831, quorumIndex=1, minedBlock=4e0193af47e244afe7ca8b4644e8b7f655afc29035de61e42b7c867bfd0469c4
2024-03-21T12:26:35.047000Z TestFramework (INFO): quorum_info_0:{'height': 1104, 'type': 'llmq_test_dip0024', 'quorumHash': '0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf', 'quorumIndex': 0, 'minedBlock': '4e0193af47e244afe7ca8b4644e8b7f655afc29035de61e42b7c867bfd0469c4', 'previousConsecutiveDKGFailures': 4, 'members': [{'proTxHash': 'b1ff91bb4247d4883c988d40c9f847b422f20a011ae681ad0852368f3e31d266', 'service': '127.0.0.1:14125', 'pubKeyOperator': '93ec5f0eee5bfc0a24b7c95c088a60d3765b288bf975888765cd049d21c62215a558af147678162e9f5401cc44d9ed9c', 'valid': True}, {'proTxHash': '01a1dd6d7de668d3d2e8d225ded648d713c405e98d2b155e294cf2e8d8279a13', 'service': '127.0.0.1:14126', 'pubKeyOperator': '05ec4b528a5bdbdd353e4687f9187caf0399a713590bae6ebff8fc44af3dffeb953c378bd91b7416484ee55d99602498', 'valid': True}, {'proTxHash': 'cef65784031e9f1e30887474375ea1086088839d012450da1fc030e413bf330a', 'service': '127.0.0.1:14123', 'pubKeyOperator': '074729dd7f8ea073f4694550de8c6c5e258c742f6e300067646bedc09c66e53256bc7b40ae835f6fdcc5b5c420aa925a', 'valid': True}, {'proTxHash': '9c0a7c8a579ab8a3feab270b870a56fa06732a66246da291543ee93d781f5828', 'service': '127.0.0.1:14124', 'pubKeyOperator': '12dae6139d97b43b44b6d6017ee1bfc9c37337d9987d08c0308dca421ba5c2074341b59a9b35a91935e5a8ac83953335', 'valid': True}], 'quorumPublicKey': '9731adc67399062095a817c369c977ceedc5f0e8597d72b6d70a4ba1a4a496cf780d0d62e3f038f129998b8a323d20c4'}
2024-03-21T12:26:35.047000Z TestFramework (INFO): quorum_info_1:{'height': 1105, 'type': 'llmq_test_dip0024', 'quorumHash': '6ea7ea40198c86f773933c1fa086ea054f1b3bc3efa1b78d64a578f6019f9831', 'quorumIndex': 1, 'minedBlock': '4e0193af47e244afe7ca8b4644e8b7f655afc29035de61e42b7c867bfd0469c4', 'previousConsecutiveDKGFailures': 4, 'members': [{'proTxHash': 'cef65784031e9f1e30887474375ea1086088839d012450da1fc030e413bf330a', 'service': '127.0.0.1:14123', 'pubKeyOperator': '074729dd7f8ea073f4694550de8c6c5e258c742f6e300067646bedc09c66e53256bc7b40ae835f6fdcc5b5c420aa925a', 'valid': True}, {'proTxHash': '9c0a7c8a579ab8a3feab270b870a56fa06732a66246da291543ee93d781f5828', 'service': '127.0.0.1:14124', 'pubKeyOperator': '12dae6139d97b43b44b6d6017ee1bfc9c37337d9987d08c0308dca421ba5c2074341b59a9b35a91935e5a8ac83953335', 'valid': True}, {'proTxHash': 'b1ff91bb4247d4883c988d40c9f847b422f20a011ae681ad0852368f3e31d266', 'service': '127.0.0.1:14125', 'pubKeyOperator': '93ec5f0eee5bfc0a24b7c95c088a60d3765b288bf975888765cd049d21c62215a558af147678162e9f5401cc44d9ed9c', 'valid': True}, {'proTxHash': '01a1dd6d7de668d3d2e8d225ded648d713c405e98d2b155e294cf2e8d8279a13', 'service': '127.0.0.1:14126', 'pubKeyOperator': '05ec4b528a5bdbdd353e4687f9187caf0399a713590bae6ebff8fc44af3dffeb953c378bd91b7416484ee55d99602498', 'valid': True}], 'quorumPublicKey': '98e0e6f79d1697f88867bb7c4f7ef5f07dd39e34daf206f9865179dd1e63ec7d24b20592b664cc86e9278e3613db856d'}
2024-03-21T12:26:35.093000Z TestFramework (INFO): h(1124):{'extraShare': False, 'quorumSnapshotAtHMinusC': {'activeQuorumMembers': [True, True, True, True], 'mnSkipListMode': 1, 'mnSkipList': [1]}, 'quorumSnapshotAtHMinus2C': {'activeQuorumMembers': [True, True, True, True], 'mnSkipListMode': 1, 'mnSkipList': [0, 1, 1]}, 'quorumSnapshotAtHMinus3C': {'activeQuorumMembers': [True, True, True, True], 'mnSkipListMode': 1, 'mnSkipList': [0, 1, 2, -1]}, 'mnListDiffTip': {'nVersion': 1, 'baseBlockHash': '000008ca1832a4baf228eb1553c03d3a2c8e02399550dd6ea8d65cec3ef23d2e', 'blockHash': '253738c2e3254a2b784f467972ba707761ed501fb5cb3c90551da506abe5ad70', 'cbTxMerkleTree': '01000000010cae3eb3b5c3fb57b5d29d780fb31713a37b37348c91e7fd884aaf83785aeca00101', 'cbTx': '03000500010000000000000000000000000000000000000000000000000000000000000000ffffffff050264040101ffffffff03aa8b4e1e030000001976a9148708dff2bf8b31363cb4201d179b4714aa7b54a088acec36570e030000001976a914f4f68699fb7649bdfa3fb8fe578000d213917a8488acb654f70f000000001976a914eb747196393894238cb18ebd758b97c3529fae7288ac0000000046020064040000e1cb7a0efab5d02b994a4771530f7cbbbec97354a60e1189d3903837cdc310fb4550993dacee7dc971faa0a337b12825293d124aff20d939fd4b5f9addd43eb8', 'deletedMNs': [], 'mnList': [{'nVersion': 1, 'nType': 0, 'proRegTxHash': 'b1ff91bb4247d4883c988d40c9f847b422f20a011ae681ad0852368f3e31d266', 'confirmedHash': '4d6a402ef0eea8ccfb24199f1618708fc34e0461abdd4692b4c23bafbd4e3713', 'service': '127.0.0.1:14125', 'pubKeyOperator': '93ec5f0eee5bfc0a24b7c95c088a60d3765b288bf975888765cd049d21c62215a558af147678162e9f5401cc44d9ed9c', 'votingAddress': 'ybcNcsLwcyVQg7xYKhBfNdsJ349ZMebvS5', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '9c0a7c8a579ab8a3feab270b870a56fa06732a66246da291543ee93d781f5828', 'confirmedHash': '646f457335100a95018c2eb649113d1073455c962c522db363bb433968239e15', 'service': '127.0.0.1:14124', 'pubKeyOperator': '12dae6139d97b43b44b6d6017ee1bfc9c37337d9987d08c0308dca421ba5c2074341b59a9b35a91935e5a8ac83953335', 'votingAddress': 'yerSqmXyuxUZrdt7XKPg34aGyyKzNuVUiw', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': 'cef65784031e9f1e30887474375ea1086088839d012450da1fc030e413bf330a', 'confirmedHash': '0befc211c744b063cca4e02277a0f60728b42c27ace99ff9724afec226bbfd0e', 'service': '127.0.0.1:14123', 'pubKeyOperator': '074729dd7f8ea073f4694550de8c6c5e258c742f6e300067646bedc09c66e53256bc7b40ae835f6fdcc5b5c420aa925a', 'votingAddress': 'yi923TRM2dQLTA9S2zDWtFtrxrm97qZn3t', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '01a1dd6d7de668d3d2e8d225ded648d713c405e98d2b155e294cf2e8d8279a13', 'confirmedHash': '15fe17827cb7815a0e5751be60a54d7e7f37ee17f2bdf8894665ab2a88ebbf3e', 'service': '127.0.0.1:14126', 'pubKeyOperator': '05ec4b528a5bdbdd353e4687f9187caf0399a713590bae6ebff8fc44af3dffeb953c378bd91b7416484ee55d99602498', 'votingAddress': 'yQ4EppPanEhNtnrLv9PnmuYu7FeBnBCANj', 'isValid': True}], 'deletedQuorums': [], 'newQuorums': [{'version': 3, 'llmqType': 100, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'af5b4e78031a9e331a268815e34006e459be897cc6e127b166a6f5ab6673db82bfd42bc58939177fe643fba89d74a0b6', 'quorumVvecHash': 'a861a37614e2104197931ac07d39c91a2cc4a1ae69a8029c94ebbfe19d2cb926', 'quorumSig': '911808c92a4bc2619ac26551f9e8060fa1a9b29e34f10f6707a608c10fd6658eea706f0fbcbbdee0866076d5bb05d7430c4267c97c051d274202230fc54cc625511542ad6d85e93a23f55b92d0b50439b0cf1ff0734849f253e42f9cd3ea7e9f', 'membersSig': '94e8ac60c25554bb16d8707c61c40c2cef15a0eee283e962875ef85eb5a3760de0a4196ef1c02c5f5df08cea0e644b4f13c4529a6f826230a088800db7f34a2feab70959e5932690b6d8ad5276a7eca2fe4bb79abf0618bc0bab30800714eab8'}, {'version': 3, 'llmqType': 100, 'quorumHash': '0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'a5c2d937b34c8eb136b61cf3fba2ee3de855a48e3c66a229be3347eaf66163d055c48139031674b0239ed6b0ee9ca86a', 'quorumVvecHash': 'c24cb0c0b34d6b4e66a52bff65b580aae1264e3ed8d4470ef9515b7098343ffd', 'quorumSig': '9240f7c351fd4125fe6bd41b25cf77154ba71c8c045eed32d7ae5d16a59103287dda670072d5614baeb85e6f83666d91161b9fe0fd5d9754fe9bc8d1f8ff3be1b123d72546855d790a17a38f3d5e0a1ae1fb12b2730fecd942152012375b6f5c', 'membersSig': 'ab5816f66fb9ff46094a8c2e0581736ea9daa2b928e61c8c5ab286bfd99114e5eddea37583f8749ec29d87f2199a6878009c6c416ed63ec47c83ef0028522fd115791c27ec951a20dcfb85831139bd7ef4b9464ccad03edc18ead38cc8eb8d1c'}, {'version': 3, 'llmqType': 102, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 3, 'signers': '07', 'validMembersCount': 3, 'validMembers': '07', 'quorumPublicKey': 'af1ad4c55ab202ab037ebc926692e46236c1ece38a7f54fb14149ce26d14a4adb91f6786d6c37a560a8a82390541af57', 'quorumVvecHash': 'b723ccd68828dbea11ac1ab7951db69ad9682b1bc1d9e9388fa8d7078dd4c18d', 'quorumSig': '8a96a6b8acce6ad81f5f7e643e31e00f6e7407220c9e1764655940ca13ee7432add78b858eac6629d29966b97d294716061f2a6f107cf8131321da26ca718f771a41a912763bd74f4c7cf5859a02a7fe536a93223b58d691484f73e804184862', 'membersSig': 'b073fef22c18faf0ed70e3c5681419f850eac1059c3417fc126275468b6477d06287bf7cdc710c128314ec19a6a5f0961266c6ada6e84466437ec3a966c45aa31709d7af3d8b6edb196e50386d9c501ae5e247b6b850060f324c8c7031a62b90'}, {'version': 3, 'llmqType': 102, 'quorumHash': '0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf', 'quorumIndex': 0, 'signersCount': 3, 'signers': '07', 'validMembersCount': 3, 'validMembers': '07', 'quorumPublicKey': '849e7ae1ee8769979f2882ff0e66cd73bbbaf9a7d6caeddbd6cfbf1d2127dd2363f64e18b8f8659ed5bd3dd585fea08e', 'quorumVvecHash': '586e3b287b62684f8293af74942c01a3a60546e63891bd7e60ab4aecb7d2fe24', 'quorumSig': '8329edb1d468a5a0ec4d53c66311918eb06a75379942b06de77a25d9eaa97b3eda09ad5287e471afd02a9d5049337cb000ec3a8fd41c8b3b0516d138c6ec5ace54314a3f5fff0a563174a5c6a2fe9e36f7fb9e2d75e6fcc371c45f12e2a5ca53', 'membersSig': 'b95cc6c940e462d0840c530878bc4f9ff21e2ab6bb626e6a81b0804a1da4eb1d23f76cd1d421efcf54f4d9505d70328904ed7e20b2b4b674b937e377557bb87bd5c1bbcb24e3e79795d3035472e9157902946d47a5a1371e2a90f7d162a3bc0e'}, {'version': 4, 'llmqType': 103, 'quorumHash': '6ea7ea40198c86f773933c1fa086ea054f1b3bc3efa1b78d64a578f6019f9831', 'quorumIndex': 1, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': '98e0e6f79d1697f88867bb7c4f7ef5f07dd39e34daf206f9865179dd1e63ec7d24b20592b664cc86e9278e3613db856d', 'quorumVvecHash': '167be83587b1d056d0767ae711ad3cfe991ce99eb3729466c40d8a68ef5808e2', 'quorumSig': '99ba923647e8fa942cf929969be2c498853236e114cd52805529e43c778c9b6413e6bbc5e3871ee3fff4895f302eff900f0d8f773f36ed739308fdc3a157d0c5fd2caca4a8bf4fb50385489de5cf2e45b2dd5ae4fa64635ae12edcf4038c5ca5', 'membersSig': 'b4a1cc904b7570c448713e0912d77dd550a143d775fbb97750f3d675661af7bb37c11b7ca39650d7ca041bc2b241a7830f39880987834e7a0c160de9d156c2a2cba6773c14985a00521c362750ee7ea27bf0c77ce9abc056aecbd9747dd223f7'}, {'version': 4, 'llmqType': 103, 'quorumHash': '0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': '9731adc67399062095a817c369c977ceedc5f0e8597d72b6d70a4ba1a4a496cf780d0d62e3f038f129998b8a323d20c4', 'quorumVvecHash': '90ab3d4a2ffa7d6eb801032b679efef9974f2f9979c7c2cb3e8ef9b33cbee6f2', 'quorumSig': '906c32ecc9ef25466ce3f2970e9c95fc6f896866ccb45b2a140fccca15d1a3c8801c1b7a6e8de365e211ef87f69b361416d09f03d6f0779aa211aefc7658b3b2a45d990a24577956ff7fdc2307d0a943ff9945bf5fe2ef29ff8cfd42ee4e29ee', 'membersSig': 'af1aebef49703fae9144cee3543b8d79bdd191371b80bfff70d59479c1a1cbe3fb496572abc2bf58c63dce84ecb0409e07c605b1f207d34385eda8bca3277ea21e8408b4081d917eda4b07ebbe1372edd2dfe4ca8e50c0d78ddeae1f131a3d99'}], 'merkleRootMNList': 'fb10c3cd373890d389110ea65473c9bebb7c0f5371474a992bd0b5fa0e7acbe1', 'merkleRootQuorums': 'b83ed4dd9a5f4bfd39d920ff4a123d292528b137a3a0fa71c97deeac3d995045', 'quorumsCLSigs': []}, 'mnListDiffH': {'nVersion': 1, 'baseBlockHash': '000008ca1832a4baf228eb1553c03d3a2c8e02399550dd6ea8d65cec3ef23d2e', 'blockHash': '07a540b8771f23ff922ed652687f866e5efc27b94a6d922aec68d91225127939', 'cbTxMerkleTree': '0600000004ddafdc2768a33ace8cb6984492f3e8290b7e87a53eeea1a7d2574607edde4c269e1a578d8b4639335e0571893e738378ac9d97e6b5f607e730942eeadb4e378b1da3ab94d9851954b265a5f94ebe7d837ef36d555a6d7dbbb0754c53920e84022b3c986ce641cb943e56a63c085f9988c01b38fc1b5b90f76dd3345bcf0d0693010f', 'cbTx': '03000500010000000000000000000000000000000000000000000000000000000000000000ffffffff050248040101ffffffff03aa8b4e1e030000001976a9148708dff2bf8b31363cb4201d179b4714aa7b54a088acec36570e030000001976a914f4f68699fb7649bdfa3fb8fe578000d213917a8488acb654f70f000000001976a914eb747196393894238cb18ebd758b97c3529fae7288ac0000000046020048040000e1cb7a0efab5d02b994a4771530f7cbbbec97354a60e1189d3903837cdc310fba3bb79ae14a2179a5debbdc1dd4497b993f5162ba779a16fc0fc57d593f71fa0', 'deletedMNs': [], 'mnList': [{'nVersion': 1, 'nType': 0, 'proRegTxHash': 'b1ff91bb4247d4883c988d40c9f847b422f20a011ae681ad0852368f3e31d266', 'confirmedHash': '4d6a402ef0eea8ccfb24199f1618708fc34e0461abdd4692b4c23bafbd4e3713', 'service': '127.0.0.1:14125', 'pubKeyOperator': '93ec5f0eee5bfc0a24b7c95c088a60d3765b288bf975888765cd049d21c62215a558af147678162e9f5401cc44d9ed9c', 'votingAddress': 'ybcNcsLwcyVQg7xYKhBfNdsJ349ZMebvS5', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '9c0a7c8a579ab8a3feab270b870a56fa06732a66246da291543ee93d781f5828', 'confirmedHash': '646f457335100a95018c2eb649113d1073455c962c522db363bb433968239e15', 'service': '127.0.0.1:14124', 'pubKeyOperator': '12dae6139d97b43b44b6d6017ee1bfc9c37337d9987d08c0308dca421ba5c2074341b59a9b35a91935e5a8ac83953335', 'votingAddress': 'yerSqmXyuxUZrdt7XKPg34aGyyKzNuVUiw', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': 'cef65784031e9f1e30887474375ea1086088839d012450da1fc030e413bf330a', 'confirmedHash': '0befc211c744b063cca4e02277a0f60728b42c27ace99ff9724afec226bbfd0e', 'service': '127.0.0.1:14123', 'pubKeyOperator': '074729dd7f8ea073f4694550de8c6c5e258c742f6e300067646bedc09c66e53256bc7b40ae835f6fdcc5b5c420aa925a', 'votingAddress': 'yi923TRM2dQLTA9S2zDWtFtrxrm97qZn3t', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '01a1dd6d7de668d3d2e8d225ded648d713c405e98d2b155e294cf2e8d8279a13', 'confirmedHash': '15fe17827cb7815a0e5751be60a54d7e7f37ee17f2bdf8894665ab2a88ebbf3e', 'service': '127.0.0.1:14126', 'pubKeyOperator': '05ec4b528a5bdbdd353e4687f9187caf0399a713590bae6ebff8fc44af3dffeb953c378bd91b7416484ee55d99602498', 'votingAddress': 'yQ4EppPanEhNtnrLv9PnmuYu7FeBnBCANj', 'isValid': True}], 'deletedQuorums': [], 'newQuorums': [{'version': 3, 'llmqType': 100, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'af5b4e78031a9e331a268815e34006e459be897cc6e127b166a6f5ab6673db82bfd42bc58939177fe643fba89d74a0b6', 'quorumVvecHash': 'a861a37614e2104197931ac07d39c91a2cc4a1ae69a8029c94ebbfe19d2cb926', 'quorumSig': '911808c92a4bc2619ac26551f9e8060fa1a9b29e34f10f6707a608c10fd6658eea706f0fbcbbdee0866076d5bb05d7430c4267c97c051d274202230fc54cc625511542ad6d85e93a23f55b92d0b50439b0cf1ff0734849f253e42f9cd3ea7e9f', 'membersSig': '94e8ac60c25554bb16d8707c61c40c2cef15a0eee283e962875ef85eb5a3760de0a4196ef1c02c5f5df08cea0e644b4f13c4529a6f826230a088800db7f34a2feab70959e5932690b6d8ad5276a7eca2fe4bb79abf0618bc0bab30800714eab8'}, {'version': 3, 'llmqType': 102, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 3, 'signers': '07', 'validMembersCount': 3, 'validMembers': '07', 'quorumPublicKey': 'af1ad4c55ab202ab037ebc926692e46236c1ece38a7f54fb14149ce26d14a4adb91f6786d6c37a560a8a82390541af57', 'quorumVvecHash': 'b723ccd68828dbea11ac1ab7951db69ad9682b1bc1d9e9388fa8d7078dd4c18d', 'quorumSig': '8a96a6b8acce6ad81f5f7e643e31e00f6e7407220c9e1764655940ca13ee7432add78b858eac6629d29966b97d294716061f2a6f107cf8131321da26ca718f771a41a912763bd74f4c7cf5859a02a7fe536a93223b58d691484f73e804184862', 'membersSig': 'b073fef22c18faf0ed70e3c5681419f850eac1059c3417fc126275468b6477d06287bf7cdc710c128314ec19a6a5f0961266c6ada6e84466437ec3a966c45aa31709d7af3d8b6edb196e50386d9c501ae5e247b6b850060f324c8c7031a62b90'}, {'version': 4, 'llmqType': 103, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'b877734e0ed98cb7f4baf8fc8539d456eebdd64036c64987690da226ce68207b38669a8a0d91b764235bde95bc41ab16', 'quorumVvecHash': '5f1c8afcd752bfe5befa0e8a244abcdc425ed7f32f51e9711c337aab540b5dd9', 'quorumSig': 'a36e754b87a834f1ca812eb090677029e8e91a2e4e5abbef1c6fcc8762fb74532aec1a9fd106fad64357345cc2817be0056208b0669836f65fb4e875858df025707c64d933afbf8410a2f946cc2428b6ad7465e5e6a03f860856fde1b8839e2e', 'membersSig': '883188df63b21a4dc82a4f9403effd74819d9fcf1620e3ca8bb8d1666f8be65ff3c732f7c6b6f80014c611adb891fd2614a69c9ef9eba8105c90c1c6ae0e3f69dc1529e1834dbb5c44e36e7feff4b927954393c80891e3251f302f322ddec152'}, {'version': 4, 'llmqType': 103, 'quorumHash': '297c60280af8be06a9188b7c5292bd99fee26f98338759f2464fccc70111e18b', 'quorumIndex': 1, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': '9285d97ba5cb48c750f271cc03e1435fe33218760932f6480e6616816f3192d08352179a588609d03f3202e23d327a2c', 'quorumVvecHash': '5bf005cd26d533c89fe164a1f36bad1cb2ac91dc58dbdc478c2fd423711a3882', 'quorumSig': '84a1616edc76a39a0b299ffd5e1a5b35ca8a2a059bf983c3e63116b177c6e9e3e021342faac70a73f6ecaef81e141d8f0a2f711433acd1d9c4725a58f4ffcce12e5085dd3476b41b38dd3f9e1779938f0acd9f33f1c758397c9629f0b7f1d6b5', 'membersSig': 'a493232862a3c89eaea55418d66cf2b943b6ed38fda0193901e06de1258d12da09c028bdf6e87cdd6d20af14bd70c577076042815407cd5e371e4b7bc89a0457659325e085c2bafe57856a86cc6e38431f2f08116762e4ecb82af02e28b0cfad'}], 'merkleRootMNList': 'fb10c3cd373890d389110ea65473c9bebb7c0f5371474a992bd0b5fa0e7acbe1', 'merkleRootQuorums': 'a01ff793d557fcc06fa179a72b16f593b99744ddc1bdeb5d9a17a214ae79bba3', 'quorumsCLSigs': []}, 'mnListDiffAtHMinusC': {'nVersion': 1, 'baseBlockHash': '000008ca1832a4baf228eb1553c03d3a2c8e02399550dd6ea8d65cec3ef23d2e', 'blockHash': '12c7009f07b53d874420231f8f2ec5288ae5cbf51cb6476dfdd5c36fd4cbbad0', 'cbTxMerkleTree': '06000000045fa16425880430a42bef8a38474acfa2094b86a1d2bec4c8b9641997b2c39a618a2f871ab75360c9175095ef3e628b9f6d38cbfe4f4092466a280bbf4c27c1fdbef343683f1251082048bafa1b393dd61d915316cbb89fbee2c0824c144c9a94b2d012772005631a1b84112cfd307e31a02518f4a1e42967cd12c9480eafc4fb010f', 'cbTx': '03000500010000000000000000000000000000000000000000000000000000000000000000ffffffff050230040101ffffffff03aa8b4e1e030000001976a9148708dff2bf8b31363cb4201d179b4714aa7b54a088acec36570e030000001976a914f4f68699fb7649bdfa3fb8fe578000d213917a8488acb654f70f000000001976a914eb747196393894238cb18ebd758b97c3529fae7288ac0000000046020030040000e1cb7a0efab5d02b994a4771530f7cbbbec97354a60e1189d3903837cdc310fba3bb79ae14a2179a5debbdc1dd4497b993f5162ba779a16fc0fc57d593f71fa0', 'deletedMNs': [], 'mnList': [{'nVersion': 1, 'nType': 0, 'proRegTxHash': 'b1ff91bb4247d4883c988d40c9f847b422f20a011ae681ad0852368f3e31d266', 'confirmedHash': '4d6a402ef0eea8ccfb24199f1618708fc34e0461abdd4692b4c23bafbd4e3713', 'service': '127.0.0.1:14125', 'pubKeyOperator': '93ec5f0eee5bfc0a24b7c95c088a60d3765b288bf975888765cd049d21c62215a558af147678162e9f5401cc44d9ed9c', 'votingAddress': 'ybcNcsLwcyVQg7xYKhBfNdsJ349ZMebvS5', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '9c0a7c8a579ab8a3feab270b870a56fa06732a66246da291543ee93d781f5828', 'confirmedHash': '646f457335100a95018c2eb649113d1073455c962c522db363bb433968239e15', 'service': '127.0.0.1:14124', 'pubKeyOperator': '12dae6139d97b43b44b6d6017ee1bfc9c37337d9987d08c0308dca421ba5c2074341b59a9b35a91935e5a8ac83953335', 'votingAddress': 'yerSqmXyuxUZrdt7XKPg34aGyyKzNuVUiw', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': 'cef65784031e9f1e30887474375ea1086088839d012450da1fc030e413bf330a', 'confirmedHash': '0befc211c744b063cca4e02277a0f60728b42c27ace99ff9724afec226bbfd0e', 'service': '127.0.0.1:14123', 'pubKeyOperator': '074729dd7f8ea073f4694550de8c6c5e258c742f6e300067646bedc09c66e53256bc7b40ae835f6fdcc5b5c420aa925a', 'votingAddress': 'yi923TRM2dQLTA9S2zDWtFtrxrm97qZn3t', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '01a1dd6d7de668d3d2e8d225ded648d713c405e98d2b155e294cf2e8d8279a13', 'confirmedHash': '15fe17827cb7815a0e5751be60a54d7e7f37ee17f2bdf8894665ab2a88ebbf3e', 'service': '127.0.0.1:14126', 'pubKeyOperator': '05ec4b528a5bdbdd353e4687f9187caf0399a713590bae6ebff8fc44af3dffeb953c378bd91b7416484ee55d99602498', 'votingAddress': 'yQ4EppPanEhNtnrLv9PnmuYu7FeBnBCANj', 'isValid': True}], 'deletedQuorums': [], 'newQuorums': [{'version': 3, 'llmqType': 100, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'af5b4e78031a9e331a268815e34006e459be897cc6e127b166a6f5ab6673db82bfd42bc58939177fe643fba89d74a0b6', 'quorumVvecHash': 'a861a37614e2104197931ac07d39c91a2cc4a1ae69a8029c94ebbfe19d2cb926', 'quorumSig': '911808c92a4bc2619ac26551f9e8060fa1a9b29e34f10f6707a608c10fd6658eea706f0fbcbbdee0866076d5bb05d7430c4267c97c051d274202230fc54cc625511542ad6d85e93a23f55b92d0b50439b0cf1ff0734849f253e42f9cd3ea7e9f', 'membersSig': '94e8ac60c25554bb16d8707c61c40c2cef15a0eee283e962875ef85eb5a3760de0a4196ef1c02c5f5df08cea0e644b4f13c4529a6f826230a088800db7f34a2feab70959e5932690b6d8ad5276a7eca2fe4bb79abf0618bc0bab30800714eab8'}, {'version': 3, 'llmqType': 102, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 3, 'signers': '07', 'validMembersCount': 3, 'validMembers': '07', 'quorumPublicKey': 'af1ad4c55ab202ab037ebc926692e46236c1ece38a7f54fb14149ce26d14a4adb91f6786d6c37a560a8a82390541af57', 'quorumVvecHash': 'b723ccd68828dbea11ac1ab7951db69ad9682b1bc1d9e9388fa8d7078dd4c18d', 'quorumSig': '8a96a6b8acce6ad81f5f7e643e31e00f6e7407220c9e1764655940ca13ee7432add78b858eac6629d29966b97d294716061f2a6f107cf8131321da26ca718f771a41a912763bd74f4c7cf5859a02a7fe536a93223b58d691484f73e804184862', 'membersSig': 'b073fef22c18faf0ed70e3c5681419f850eac1059c3417fc126275468b6477d06287bf7cdc710c128314ec19a6a5f0961266c6ada6e84466437ec3a966c45aa31709d7af3d8b6edb196e50386d9c501ae5e247b6b850060f324c8c7031a62b90'}, {'version': 4, 'llmqType': 103, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'b877734e0ed98cb7f4baf8fc8539d456eebdd64036c64987690da226ce68207b38669a8a0d91b764235bde95bc41ab16', 'quorumVvecHash': '5f1c8afcd752bfe5befa0e8a244abcdc425ed7f32f51e9711c337aab540b5dd9', 'quorumSig': 'a36e754b87a834f1ca812eb090677029e8e91a2e4e5abbef1c6fcc8762fb74532aec1a9fd106fad64357345cc2817be0056208b0669836f65fb4e875858df025707c64d933afbf8410a2f946cc2428b6ad7465e5e6a03f860856fde1b8839e2e', 'membersSig': '883188df63b21a4dc82a4f9403effd74819d9fcf1620e3ca8bb8d1666f8be65ff3c732f7c6b6f80014c611adb891fd2614a69c9ef9eba8105c90c1c6ae0e3f69dc1529e1834dbb5c44e36e7feff4b927954393c80891e3251f302f322ddec152'}, {'version': 4, 'llmqType': 103, 'quorumHash': '297c60280af8be06a9188b7c5292bd99fee26f98338759f2464fccc70111e18b', 'quorumIndex': 1, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': '9285d97ba5cb48c750f271cc03e1435fe33218760932f6480e6616816f3192d08352179a588609d03f3202e23d327a2c', 'quorumVvecHash': '5bf005cd26d533c89fe164a1f36bad1cb2ac91dc58dbdc478c2fd423711a3882', 'quorumSig': '84a1616edc76a39a0b299ffd5e1a5b35ca8a2a059bf983c3e63116b177c6e9e3e021342faac70a73f6ecaef81e141d8f0a2f711433acd1d9c4725a58f4ffcce12e5085dd3476b41b38dd3f9e1779938f0acd9f33f1c758397c9629f0b7f1d6b5', 'membersSig': 'a493232862a3c89eaea55418d66cf2b943b6ed38fda0193901e06de1258d12da09c028bdf6e87cdd6d20af14bd70c577076042815407cd5e371e4b7bc89a0457659325e085c2bafe57856a86cc6e38431f2f08116762e4ecb82af02e28b0cfad'}], 'merkleRootMNList': 'fb10c3cd373890d389110ea65473c9bebb7c0f5371474a992bd0b5fa0e7acbe1', 'merkleRootQuorums': 'a01ff793d557fcc06fa179a72b16f593b99744ddc1bdeb5d9a17a214ae79bba3', 'quorumsCLSigs': []}, 'mnListDiffAtHMinus2C': {'nVersion': 1, 'baseBlockHash': '000008ca1832a4baf228eb1553c03d3a2c8e02399550dd6ea8d65cec3ef23d2e', 'blockHash': '42fcbde4cc4dcf7099d0eccb217724e67cd188c7cbd881ab1c98fedfb976b572', 'cbTxMerkleTree': '060000000400177b12c13e03602a6cccb93fa168d936aa9e2b5bfc31745123d9dbd20a3b807d7d6c62591b7eb9302cc2c0a0f6188b4f051da48469dbef7835a4bd1ac7af112bc47a257531df3f48ba843e121888c9918e9598e76a1439e65d2ddf3ac7e1969903ece25a1b5678d0ca9c9771cf43063d349042f6527927f3645c2b5bc32d17010f', 'cbTx': '03000500010000000000000000000000000000000000000000000000000000000000000000ffffffff050218040101ffffffff038d0cb75b030000001976a9148708dff2bf8b31363cb4201d179b4714aa7b54a088acd94e854a030000001976a914f4f68699fb7649bdfa3fb8fe578000d213917a8488acb0bd3111000000001976a914eb747196393894238cb18ebd758b97c3529fae7288ac0000000046020018040000e1cb7a0efab5d02b994a4771530f7cbbbec97354a60e1189d3903837cdc310fba3bb79ae14a2179a5debbdc1dd4497b993f5162ba779a16fc0fc57d593f71fa0', 'deletedMNs': [], 'mnList': [{'nVersion': 1, 'nType': 0, 'proRegTxHash': 'b1ff91bb4247d4883c988d40c9f847b422f20a011ae681ad0852368f3e31d266', 'confirmedHash': '4d6a402ef0eea8ccfb24199f1618708fc34e0461abdd4692b4c23bafbd4e3713', 'service': '127.0.0.1:14125', 'pubKeyOperator': '93ec5f0eee5bfc0a24b7c95c088a60d3765b288bf975888765cd049d21c62215a558af147678162e9f5401cc44d9ed9c', 'votingAddress': 'ybcNcsLwcyVQg7xYKhBfNdsJ349ZMebvS5', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '9c0a7c8a579ab8a3feab270b870a56fa06732a66246da291543ee93d781f5828', 'confirmedHash': '646f457335100a95018c2eb649113d1073455c962c522db363bb433968239e15', 'service': '127.0.0.1:14124', 'pubKeyOperator': '12dae6139d97b43b44b6d6017ee1bfc9c37337d9987d08c0308dca421ba5c2074341b59a9b35a91935e5a8ac83953335', 'votingAddress': 'yerSqmXyuxUZrdt7XKPg34aGyyKzNuVUiw', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': 'cef65784031e9f1e30887474375ea1086088839d012450da1fc030e413bf330a', 'confirmedHash': '0befc211c744b063cca4e02277a0f60728b42c27ace99ff9724afec226bbfd0e', 'service': '127.0.0.1:14123', 'pubKeyOperator': '074729dd7f8ea073f4694550de8c6c5e258c742f6e300067646bedc09c66e53256bc7b40ae835f6fdcc5b5c420aa925a', 'votingAddress': 'yi923TRM2dQLTA9S2zDWtFtrxrm97qZn3t', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '01a1dd6d7de668d3d2e8d225ded648d713c405e98d2b155e294cf2e8d8279a13', 'confirmedHash': '15fe17827cb7815a0e5751be60a54d7e7f37ee17f2bdf8894665ab2a88ebbf3e', 'service': '127.0.0.1:14126', 'pubKeyOperator': '05ec4b528a5bdbdd353e4687f9187caf0399a713590bae6ebff8fc44af3dffeb953c378bd91b7416484ee55d99602498', 'votingAddress': 'yQ4EppPanEhNtnrLv9PnmuYu7FeBnBCANj', 'isValid': True}], 'deletedQuorums': [], 'newQuorums': [{'version': 3, 'llmqType': 100, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'af5b4e78031a9e331a268815e34006e459be897cc6e127b166a6f5ab6673db82bfd42bc58939177fe643fba89d74a0b6', 'quorumVvecHash': 'a861a37614e2104197931ac07d39c91a2cc4a1ae69a8029c94ebbfe19d2cb926', 'quorumSig': '911808c92a4bc2619ac26551f9e8060fa1a9b29e34f10f6707a608c10fd6658eea706f0fbcbbdee0866076d5bb05d7430c4267c97c051d274202230fc54cc625511542ad6d85e93a23f55b92d0b50439b0cf1ff0734849f253e42f9cd3ea7e9f', 'membersSig': '94e8ac60c25554bb16d8707c61c40c2cef15a0eee283e962875ef85eb5a3760de0a4196ef1c02c5f5df08cea0e644b4f13c4529a6f826230a088800db7f34a2feab70959e5932690b6d8ad5276a7eca2fe4bb79abf0618bc0bab30800714eab8'}, {'version': 3, 'llmqType': 102, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 3, 'signers': '07', 'validMembersCount': 3, 'validMembers': '07', 'quorumPublicKey': 'af1ad4c55ab202ab037ebc926692e46236c1ece38a7f54fb14149ce26d14a4adb91f6786d6c37a560a8a82390541af57', 'quorumVvecHash': 'b723ccd68828dbea11ac1ab7951db69ad9682b1bc1d9e9388fa8d7078dd4c18d', 'quorumSig': '8a96a6b8acce6ad81f5f7e643e31e00f6e7407220c9e1764655940ca13ee7432add78b858eac6629d29966b97d294716061f2a6f107cf8131321da26ca718f771a41a912763bd74f4c7cf5859a02a7fe536a93223b58d691484f73e804184862', 'membersSig': 'b073fef22c18faf0ed70e3c5681419f850eac1059c3417fc126275468b6477d06287bf7cdc710c128314ec19a6a5f0961266c6ada6e84466437ec3a966c45aa31709d7af3d8b6edb196e50386d9c501ae5e247b6b850060f324c8c7031a62b90'}, {'version': 4, 'llmqType': 103, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'b877734e0ed98cb7f4baf8fc8539d456eebdd64036c64987690da226ce68207b38669a8a0d91b764235bde95bc41ab16', 'quorumVvecHash': '5f1c8afcd752bfe5befa0e8a244abcdc425ed7f32f51e9711c337aab540b5dd9', 'quorumSig': 'a36e754b87a834f1ca812eb090677029e8e91a2e4e5abbef1c6fcc8762fb74532aec1a9fd106fad64357345cc2817be0056208b0669836f65fb4e875858df025707c64d933afbf8410a2f946cc2428b6ad7465e5e6a03f860856fde1b8839e2e', 'membersSig': '883188df63b21a4dc82a4f9403effd74819d9fcf1620e3ca8bb8d1666f8be65ff3c732f7c6b6f80014c611adb891fd2614a69c9ef9eba8105c90c1c6ae0e3f69dc1529e1834dbb5c44e36e7feff4b927954393c80891e3251f302f322ddec152'}, {'version': 4, 'llmqType': 103, 'quorumHash': '297c60280af8be06a9188b7c5292bd99fee26f98338759f2464fccc70111e18b', 'quorumIndex': 1, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': '9285d97ba5cb48c750f271cc03e1435fe33218760932f6480e6616816f3192d08352179a588609d03f3202e23d327a2c', 'quorumVvecHash': '5bf005cd26d533c89fe164a1f36bad1cb2ac91dc58dbdc478c2fd423711a3882', 'quorumSig': '84a1616edc76a39a0b299ffd5e1a5b35ca8a2a059bf983c3e63116b177c6e9e3e021342faac70a73f6ecaef81e141d8f0a2f711433acd1d9c4725a58f4ffcce12e5085dd3476b41b38dd3f9e1779938f0acd9f33f1c758397c9629f0b7f1d6b5', 'membersSig': 'a493232862a3c89eaea55418d66cf2b943b6ed38fda0193901e06de1258d12da09c028bdf6e87cdd6d20af14bd70c577076042815407cd5e371e4b7bc89a0457659325e085c2bafe57856a86cc6e38431f2f08116762e4ecb82af02e28b0cfad'}], 'merkleRootMNList': 'fb10c3cd373890d389110ea65473c9bebb7c0f5371474a992bd0b5fa0e7acbe1', 'merkleRootQuorums': 'a01ff793d557fcc06fa179a72b16f593b99744ddc1bdeb5d9a17a214ae79bba3', 'quorumsCLSigs': []}, 'mnListDiffAtHMinus3C': {'nVersion': 1, 'baseBlockHash': '000008ca1832a4baf228eb1553c03d3a2c8e02399550dd6ea8d65cec3ef23d2e', 'blockHash': '4d3be11188ed1bb0ab7049b68dd5907106cc72f092f8f1d20b32b99c80012a10', 'cbTxMerkleTree': '06000000043efffa4312a68d2ecca7513b85ac9a06f6c57be827d791f356af2f657ff55c6042d1895271a7baa9b7705201a35351e7411a3b738788a4545aee28995f47b2d53d7a9ff92fe3843e0d22dcf5fdca7b9e8609b046981468f58c636a0d69e7e697181d8915e0fe965c3ce9f1c833ceac88f86f8d7a22e9f4b5987f8b154b4b270a010f', 'cbTx': '03000500010000000000000000000000000000000000000000000000000000000000000000ffffffff050200040101ffffffff038d0cb75b030000001976a9148708dff2bf8b31363cb4201d179b4714aa7b54a088acd94e854a030000001976a914f4f68699fb7649bdfa3fb8fe578000d213917a8488acb0bd3111000000001976a914eb747196393894238cb18ebd758b97c3529fae7288ac0000000046020000040000e1cb7a0efab5d02b994a4771530f7cbbbec97354a60e1189d3903837cdc310fba3bb79ae14a2179a5debbdc1dd4497b993f5162ba779a16fc0fc57d593f71fa0', 'deletedMNs': [], 'mnList': [{'nVersion': 1, 'nType': 0, 'proRegTxHash': 'b1ff91bb4247d4883c988d40c9f847b422f20a011ae681ad0852368f3e31d266', 'confirmedHash': '4d6a402ef0eea8ccfb24199f1618708fc34e0461abdd4692b4c23bafbd4e3713', 'service': '127.0.0.1:14125', 'pubKeyOperator': '93ec5f0eee5bfc0a24b7c95c088a60d3765b288bf975888765cd049d21c62215a558af147678162e9f5401cc44d9ed9c', 'votingAddress': 'ybcNcsLwcyVQg7xYKhBfNdsJ349ZMebvS5', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '9c0a7c8a579ab8a3feab270b870a56fa06732a66246da291543ee93d781f5828', 'confirmedHash': '646f457335100a95018c2eb649113d1073455c962c522db363bb433968239e15', 'service': '127.0.0.1:14124', 'pubKeyOperator': '12dae6139d97b43b44b6d6017ee1bfc9c37337d9987d08c0308dca421ba5c2074341b59a9b35a91935e5a8ac83953335', 'votingAddress': 'yerSqmXyuxUZrdt7XKPg34aGyyKzNuVUiw', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': 'cef65784031e9f1e30887474375ea1086088839d012450da1fc030e413bf330a', 'confirmedHash': '0befc211c744b063cca4e02277a0f60728b42c27ace99ff9724afec226bbfd0e', 'service': '127.0.0.1:14123', 'pubKeyOperator': '074729dd7f8ea073f4694550de8c6c5e258c742f6e300067646bedc09c66e53256bc7b40ae835f6fdcc5b5c420aa925a', 'votingAddress': 'yi923TRM2dQLTA9S2zDWtFtrxrm97qZn3t', 'isValid': True}, {'nVersion': 1, 'nType': 0, 'proRegTxHash': '01a1dd6d7de668d3d2e8d225ded648d713c405e98d2b155e294cf2e8d8279a13', 'confirmedHash': '15fe17827cb7815a0e5751be60a54d7e7f37ee17f2bdf8894665ab2a88ebbf3e', 'service': '127.0.0.1:14126', 'pubKeyOperator': '05ec4b528a5bdbdd353e4687f9187caf0399a713590bae6ebff8fc44af3dffeb953c378bd91b7416484ee55d99602498', 'votingAddress': 'yQ4EppPanEhNtnrLv9PnmuYu7FeBnBCANj', 'isValid': True}], 'deletedQuorums': [], 'newQuorums': [{'version': 3, 'llmqType': 100, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'af5b4e78031a9e331a268815e34006e459be897cc6e127b166a6f5ab6673db82bfd42bc58939177fe643fba89d74a0b6', 'quorumVvecHash': 'a861a37614e2104197931ac07d39c91a2cc4a1ae69a8029c94ebbfe19d2cb926', 'quorumSig': '911808c92a4bc2619ac26551f9e8060fa1a9b29e34f10f6707a608c10fd6658eea706f0fbcbbdee0866076d5bb05d7430c4267c97c051d274202230fc54cc625511542ad6d85e93a23f55b92d0b50439b0cf1ff0734849f253e42f9cd3ea7e9f', 'membersSig': '94e8ac60c25554bb16d8707c61c40c2cef15a0eee283e962875ef85eb5a3760de0a4196ef1c02c5f5df08cea0e644b4f13c4529a6f826230a088800db7f34a2feab70959e5932690b6d8ad5276a7eca2fe4bb79abf0618bc0bab30800714eab8'}, {'version': 3, 'llmqType': 102, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 3, 'signers': '07', 'validMembersCount': 3, 'validMembers': '07', 'quorumPublicKey': 'af1ad4c55ab202ab037ebc926692e46236c1ece38a7f54fb14149ce26d14a4adb91f6786d6c37a560a8a82390541af57', 'quorumVvecHash': 'b723ccd68828dbea11ac1ab7951db69ad9682b1bc1d9e9388fa8d7078dd4c18d', 'quorumSig': '8a96a6b8acce6ad81f5f7e643e31e00f6e7407220c9e1764655940ca13ee7432add78b858eac6629d29966b97d294716061f2a6f107cf8131321da26ca718f771a41a912763bd74f4c7cf5859a02a7fe536a93223b58d691484f73e804184862', 'membersSig': 'b073fef22c18faf0ed70e3c5681419f850eac1059c3417fc126275468b6477d06287bf7cdc710c128314ec19a6a5f0961266c6ada6e84466437ec3a966c45aa31709d7af3d8b6edb196e50386d9c501ae5e247b6b850060f324c8c7031a62b90'}, {'version': 4, 'llmqType': 103, 'quorumHash': '7efe443cd3f6c0faa09cc0faa5f9f09af1f17a27751d529bfb3f83b695965676', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': 'b877734e0ed98cb7f4baf8fc8539d456eebdd64036c64987690da226ce68207b38669a8a0d91b764235bde95bc41ab16', 'quorumVvecHash': '5f1c8afcd752bfe5befa0e8a244abcdc425ed7f32f51e9711c337aab540b5dd9', 'quorumSig': 'a36e754b87a834f1ca812eb090677029e8e91a2e4e5abbef1c6fcc8762fb74532aec1a9fd106fad64357345cc2817be0056208b0669836f65fb4e875858df025707c64d933afbf8410a2f946cc2428b6ad7465e5e6a03f860856fde1b8839e2e', 'membersSig': '883188df63b21a4dc82a4f9403effd74819d9fcf1620e3ca8bb8d1666f8be65ff3c732f7c6b6f80014c611adb891fd2614a69c9ef9eba8105c90c1c6ae0e3f69dc1529e1834dbb5c44e36e7feff4b927954393c80891e3251f302f322ddec152'}, {'version': 4, 'llmqType': 103, 'quorumHash': '297c60280af8be06a9188b7c5292bd99fee26f98338759f2464fccc70111e18b', 'quorumIndex': 1, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': '9285d97ba5cb48c750f271cc03e1435fe33218760932f6480e6616816f3192d08352179a588609d03f3202e23d327a2c', 'quorumVvecHash': '5bf005cd26d533c89fe164a1f36bad1cb2ac91dc58dbdc478c2fd423711a3882', 'quorumSig': '84a1616edc76a39a0b299ffd5e1a5b35ca8a2a059bf983c3e63116b177c6e9e3e021342faac70a73f6ecaef81e141d8f0a2f711433acd1d9c4725a58f4ffcce12e5085dd3476b41b38dd3f9e1779938f0acd9f33f1c758397c9629f0b7f1d6b5', 'membersSig': 'a493232862a3c89eaea55418d66cf2b943b6ed38fda0193901e06de1258d12da09c028bdf6e87cdd6d20af14bd70c577076042815407cd5e371e4b7bc89a0457659325e085c2bafe57856a86cc6e38431f2f08116762e4ecb82af02e28b0cfad'}], 'merkleRootMNList': 'fb10c3cd373890d389110ea65473c9bebb7c0f5371474a992bd0b5fa0e7acbe1', 'merkleRootQuorums': 'a01ff793d557fcc06fa179a72b16f593b99744ddc1bdeb5d9a17a214ae79bba3', 'quorumsCLSigs': []}, 'lastCommitmentPerIndex': [{'version': 4, 'llmqType': 103, 'quorumHash': '0a0edca11eb8f6c3716c396ef96d31a175dc7cb9f1fbc66334d720774989aedf', 'quorumIndex': 0, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': '9731adc67399062095a817c369c977ceedc5f0e8597d72b6d70a4ba1a4a496cf780d0d62e3f038f129998b8a323d20c4', 'quorumVvecHash': '90ab3d4a2ffa7d6eb801032b679efef9974f2f9979c7c2cb3e8ef9b33cbee6f2', 'quorumSig': '906c32ecc9ef25466ce3f2970e9c95fc6f896866ccb45b2a140fccca15d1a3c8801c1b7a6e8de365e211ef87f69b361416d09f03d6f0779aa211aefc7658b3b2a45d990a24577956ff7fdc2307d0a943ff9945bf5fe2ef29ff8cfd42ee4e29ee', 'membersSig': 'af1aebef49703fae9144cee3543b8d79bdd191371b80bfff70d59479c1a1cbe3fb496572abc2bf58c63dce84ecb0409e07c605b1f207d34385eda8bca3277ea21e8408b4081d917eda4b07ebbe1372edd2dfe4ca8e50c0d78ddeae1f131a3d99'}, {'version': 4, 'llmqType': 103, 'quorumHash': '6ea7ea40198c86f773933c1fa086ea054f1b3bc3efa1b78d64a578f6019f9831', 'quorumIndex': 1, 'signersCount': 4, 'signers': '0f', 'validMembersCount': 4, 'validMembers': '0f', 'quorumPublicKey': '98e0e6f79d1697f88867bb7c4f7ef5f07dd39e34daf206f9865179dd1e63ec7d24b20592b664cc86e9278e3613db856d', 'quorumVvecHash': '167be83587b1d056d0767ae711ad3cfe991ce99eb3729466c40d8a68ef5808e2', 'quorumSig': '99ba923647e8fa942cf929969be2c498853236e114cd52805529e43c778c9b6413e6bbc5e3871ee3fff4895f302eff900f0d8f773f36ed739308fdc3a157d0c5fd2caca4a8bf4fb50385489de5cf2e45b2dd5ae4fa64635ae12edcf4038c5ca5', 'membersSig': 'b4a1cc904b7570c448713e0912d77dd550a143d775fbb97750f3d675661af7bb37c11b7ca39650d7ca041bc2b241a7830f39880987834e7a0c160de9d156c2a2cba6773c14985a00521c362750ee7ea27bf0c77ce9abc056aecbd9747dd223f7'}], 'quorumSnapshotList': [], 'mnListDiffList': []}
2024-03-21T12:26:35.093000Z TestFramework (INFO): Testing 5 InstantSend publishers
2024-03-21T12:26:42.353000Z TestFramework (INFO): Stopping nodes
2024-03-21T12:26:43.360000Z TestFramework (INFO): Cleaning up /tmp/dash_func_test__2tlpe0x on exit
2024-03-21T12:26:43.360000Z TestFramework (INFO): Tests successful
```
</details>
## Breaking Changes
None. Fixes crash.
## Checklist:
_Go over all the following points, and put an `x` in all the boxes that apply._
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas **(note: N/A)**
- [x] I have added or updated relevant unit/integration/functional/e2e tests **(note: N/A)**
- [x] I have made corresponding changes to the documentation **(note: N/A)**
- [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_
Top commit has no ACKs.
Tree-SHA512: f94799aeb091dc85a36599f231df5cd00784172320750e2e23dd1c29ce22539340d39c66f7ced9d7a935e73b5db38666e9b800220ed7071a664c5b01b0bc2be1
Additional Information
Breaking Changes
None. Changes are limited to refactoring, no logical changes have been made.
Checklist: