From 50e4fd6ab8e8262353b1e98a817241459275709e Mon Sep 17 00:00:00 2001 From: Rob Walworth Date: Thu, 21 Nov 2024 15:46:28 -0500 Subject: [PATCH 1/3] feat: add associateToken rpc method Signed-off-by: Rob Walworth --- src/tck/include/token/TokenService.h | 9 +++ .../token/params/AssociateTokenParams.h | 81 +++++++++++++++++++ src/tck/src/TckServer.cc | 7 +- src/tck/src/main.cc | 1 + src/tck/src/token/TokenService.cc | 38 +++++++++ 5 files changed, 132 insertions(+), 4 deletions(-) create mode 100644 src/tck/include/token/params/AssociateTokenParams.h diff --git a/src/tck/include/token/TokenService.h b/src/tck/include/token/TokenService.h index d0af1b1d0..a8d73e0cf 100644 --- a/src/tck/include/token/TokenService.h +++ b/src/tck/include/token/TokenService.h @@ -27,8 +27,17 @@ namespace Hedera::TCK::TokenService /** * Forward declarations. */ +class AssociateTokenParams; class CreateTokenParams; +/** + * Associate an account with tokens. + * + * @param params The parameters to use to associate the account and tokens. + * @return A JSON response containing the status of the token association. + */ +nlohmann::json associateToken(const AssociateTokenParams& params); + /** * Create a token. * diff --git a/src/tck/include/token/params/AssociateTokenParams.h b/src/tck/include/token/params/AssociateTokenParams.h new file mode 100644 index 000000000..8e67851a9 --- /dev/null +++ b/src/tck/include/token/params/AssociateTokenParams.h @@ -0,0 +1,81 @@ +/*- + * + * Hedera C++ SDK + * + * Copyright (C) 2020 - 2024 Hedera Hashgraph, LLC + * + * Licensed under the Apache License, Version 2.0 (the "License") + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ +#ifndef HIERO_TCK_CPP_ASSOCIATE_TOKEN_PARAMS_H_ +#define HIERO_TCK_CPP_ASSOCIATE_TOKEN_PARAMS_H_ + +#include "common/CommonTransactionParams.h" +#include "json/JsonUtils.h" + +#include +#include +#include +#include + +namespace Hedera::TCK::TokenService +{ +/** + * Struct to hold the arguments for an `associateToken` JSON-RPC method call. + */ +struct AssociateTokenParams +{ + /** + * The ID of the account with which to associate the tokens. + */ + std::optional mAccountId; + + /** + * The IDs of the tokens to associate. + */ + std::optional> mTokenIds; + + /** + * Any parameters common to all transaction types. + */ + std::optional mCommonTxParams; +}; + +} // namespace Hedera::TCK::TokenService + +namespace nlohmann +{ +/** + * JSON serializer template specialization required to convert AssociateTokenParams arguments properly. + */ +template<> +struct [[maybe_unused]] adl_serializer +{ + /** + * Convert a JSON object to a AssociateTokenParams. + * + * @param jsonFrom The JSON object with which to fill the AssociateTokenParams. + * @param params The AssociateTokenParams to fill with the JSON object. + */ + static void from_json(const json& jsonFrom, Hedera::TCK::TokenService::AssociateTokenParams& params) + { + params.mAccountId = Hedera::TCK::getOptionalJsonParameter(jsonFrom, "accountId"); + params.mTokenIds = Hedera::TCK::getOptionalJsonParameter>(jsonFrom, "tokenIds"); + params.mCommonTxParams = + Hedera::TCK::getOptionalJsonParameter(jsonFrom, "commonTransactionParams"); + } +}; + +} // namespace nlohmann + +#endif // HIERO_TCK_CPP_ASSOCIATE_TOKEN_PARAMS_H_ diff --git a/src/tck/src/TckServer.cc b/src/tck/src/TckServer.cc index 4094f79e6..dd6287313 100644 --- a/src/tck/src/TckServer.cc +++ b/src/tck/src/TckServer.cc @@ -18,16 +18,13 @@ * */ #include "TckServer.h" -#include "account/AccountService.h" #include "account/params/CreateAccountParams.h" #include "account/params/DeleteAccountParams.h" #include "account/params/UpdateAccountParams.h" -#include "key/KeyService.h" #include "key/params/GenerateKeyParams.h" -#include "sdk/SdkClient.h" #include "sdk/params/ResetParams.h" #include "sdk/params/SetupParams.h" -#include "token/TokenService.h" +#include "token/params/AssociateTokenParams.h" #include "token/params/CreateTokenParams.h" #include "json/JsonErrorType.h" #include "json/JsonRpcException.h" @@ -366,6 +363,8 @@ template TckServer::MethodHandle TckServer::getHandle( template TckServer::MethodHandle TckServer::getHandle( nlohmann::json (*method)(const SdkClient::SetupParams&)); +template TckServer::MethodHandle TckServer::getHandle( + nlohmann::json (*method)(const TokenService::AssociateTokenParams&)); template TckServer::MethodHandle TckServer::getHandle( nlohmann::json (*method)(const TokenService::CreateTokenParams&)); diff --git a/src/tck/src/main.cc b/src/tck/src/main.cc index 50bb8ee60..0a9af7230 100644 --- a/src/tck/src/main.cc +++ b/src/tck/src/main.cc @@ -46,6 +46,7 @@ int main(int argc, char** argv) tckServer.add("updateAccount", tckServer.getHandle(&AccountService::updateAccount)); // Add the TokenService functions. + tckServer.add("associateToken", tckServer.getHandle(&TokenService::associateToken)); tckServer.add("createToken", tckServer.getHandle(&TokenService::createToken)); // Start listening for requests. diff --git a/src/tck/src/token/TokenService.cc b/src/tck/src/token/TokenService.cc index 1955924a9..a0b521255 100644 --- a/src/tck/src/token/TokenService.cc +++ b/src/tck/src/token/TokenService.cc @@ -20,13 +20,16 @@ #include "token/TokenService.h" #include "key/KeyService.h" #include "sdk/SdkClient.h" +#include "token/params/AssociateTokenParams.h" #include "token/params/CreateTokenParams.h" #include "json/JsonErrorType.h" #include "json/JsonRpcException.h" #include #include +#include #include +#include #include #include #include @@ -38,9 +41,44 @@ #include #include #include +#include namespace Hedera::TCK::TokenService { +//----- +nlohmann::json associateToken(const AssociateTokenParams& params) +{ + TokenAssociateTransaction tokenAssociateTransaction; + tokenAssociateTransaction.setGrpcDeadline(SdkClient::DEFAULT_TCK_REQUEST_TIMEOUT); + + if (params.mAccountId.has_value()) + { + tokenAssociateTransaction.setAccountId(AccountId::fromString(params.mAccountId.value())); + } + + if (params.mTokenIds.has_value()) + { + std::vector tokenIds; + for (const std::string& tokenId : params.mTokenIds.value()) + { + tokenIds.push_back(TokenId::fromString(tokenId)); + } + + tokenAssociateTransaction.setTokenIds(tokenIds); + } + + if (params.mCommonTxParams.has_value()) + { + params.mCommonTxParams->fillOutTransaction(tokenAssociateTransaction, SdkClient::getClient()); + } + + return { + {"status", + gStatusToString.at( + tokenAssociateTransaction.execute(SdkClient::getClient()).getReceipt(SdkClient::getClient()).mStatus)} + }; +} + //----- nlohmann::json createToken(const CreateTokenParams& params) { From ef89605ab5b5a00a5f1bfda2cd1857f925e3eab4 Mon Sep 17 00:00:00 2001 From: Rob Walworth Date: Fri, 22 Nov 2024 15:53:22 -0500 Subject: [PATCH 2/3] refactor: make associate use hiero names Signed-off-by: Rob Walworth --- src/sdk/CMakeLists.txt | 2 +- src/sdk/examples/ConstructClientExample.cc | 4 +- src/sdk/main/include/FeeAssessmentMethod.h | 8 +- src/sdk/main/include/Transaction.h | 7 +- .../main/src/ContractFunctionParameters.cc | 4 +- src/sdk/main/src/RequestType.cc | 444 ++-- src/sdk/main/src/Status.cc | 1878 ++++++++--------- src/sdk/main/src/TokenType.cc | 12 +- src/sdk/main/src/impl/ASN1ECPublicKey.cc | 2 +- .../unit/ECDSAsecp256k1PrivateKeyUnitTests.cc | 14 +- .../tests/unit/ED25519PrivateKeyUnitTests.cc | 6 +- src/sdk/tests/unit/NetworkUnitTests.cc | 4 +- .../unit/TokenMintTransactionUnitTests.cc | 6 +- .../token/params/AssociateTokenParams.h | 34 +- src/tck/src/sdk/SdkClient.cc | 8 +- src/tck/src/token/TokenService.cc | 4 +- 16 files changed, 1210 insertions(+), 1227 deletions(-) diff --git a/src/sdk/CMakeLists.txt b/src/sdk/CMakeLists.txt index 8d501c6f2..9720f90c0 100644 --- a/src/sdk/CMakeLists.txt +++ b/src/sdk/CMakeLists.txt @@ -3,7 +3,7 @@ option(BUILD_EXAMPLES "Build the example builds" OFF) if(BUILD_EXAMPLES) message(STATUS "Including examples in the build.") - add_subdirectory(tests) + add_subdirectory(examples) else() message(STATUS "Examples are not included in the build.") endif() diff --git a/src/sdk/examples/ConstructClientExample.cc b/src/sdk/examples/ConstructClientExample.cc index 3c29416c3..9d0515db7 100644 --- a/src/sdk/examples/ConstructClientExample.cc +++ b/src/sdk/examples/ConstructClientExample.cc @@ -54,8 +54,8 @@ int main(int argc, char** argv) // Create a Client with a custom network. const std::unordered_map network = { - { "2.testnet.hedera.com:50211", AccountId(5ULL) }, - { "3.testnet.hedera.com:50211", AccountId(6ULL) } + {"2.testnet.hedera.com:50211", AccountId(5ULL)}, + { "3.testnet.hedera.com:50211", AccountId(6ULL)} }; Client customClient = Client::forNetwork(network); diff --git a/src/sdk/main/include/FeeAssessmentMethod.h b/src/sdk/main/include/FeeAssessmentMethod.h index 4eeb96915..7670221f1 100644 --- a/src/sdk/main/include/FeeAssessmentMethod.h +++ b/src/sdk/main/include/FeeAssessmentMethod.h @@ -30,16 +30,16 @@ enum class FeeAssessmentMethod * Map of FeeAssessmentMethod to its corresponding string. */ const std::unordered_map gFeeAssessmentMethodToString = { - { FeeAssessmentMethod::INCLUSIVE, "INCLUSIVE" }, - { FeeAssessmentMethod::EXCLUSIVE, "EXCLUSIVE" } + {FeeAssessmentMethod::INCLUSIVE, "INCLUSIVE"}, + { FeeAssessmentMethod::EXCLUSIVE, "EXCLUSIVE"} }; /** * Map of FeeAssessmentMethod string representation to its corresponding enum value. */ [[maybe_unused]] const std::unordered_map gStringToFeeAssessmentMethod = { - { "INCLUSIVE", FeeAssessmentMethod::INCLUSIVE }, - { "EXCLUSIVE", FeeAssessmentMethod::EXCLUSIVE } + {"INCLUSIVE", FeeAssessmentMethod::INCLUSIVE}, + { "EXCLUSIVE", FeeAssessmentMethod::EXCLUSIVE} }; } // namespace Hiero diff --git a/src/sdk/main/include/Transaction.h b/src/sdk/main/include/Transaction.h index c8cb3d671..643ddb885 100644 --- a/src/sdk/main/include/Transaction.h +++ b/src/sdk/main/include/Transaction.h @@ -477,9 +477,10 @@ class Transaction */ [[nodiscard]] typename Executable:: - ExecutionStatus determineStatus(Status status, - const Client& client, - [[maybe_unused]] const proto::TransactionResponse& response) override; + ExecutionStatus + determineStatus(Status status, + const Client& client, + [[maybe_unused]] const proto::TransactionResponse& response) override; /** * Derived from Executable. Perform any needed actions for this Transaction when it is being submitted. diff --git a/src/sdk/main/src/ContractFunctionParameters.cc b/src/sdk/main/src/ContractFunctionParameters.cc index d3319813d..c3a4d5aea 100644 --- a/src/sdk/main/src/ContractFunctionParameters.cc +++ b/src/sdk/main/src/ContractFunctionParameters.cc @@ -49,7 +49,7 @@ const std::vector NEGATIVE_PADDING(31, std::byte(0xFF)); { const std::vector& padding = negative ? NEGATIVE_PADDING : POSITIVE_PADDING; return internal::Utilities::concatenateVectors({ - { padding.cbegin(), padding.cbegin() + getPaddingAmount(bytes) }, + {padding.cbegin(), padding.cbegin() + getPaddingAmount(bytes)}, bytes }); } @@ -63,7 +63,7 @@ const std::vector NEGATIVE_PADDING(31, std::byte(0xFF)); [[nodiscard]] std::vector rightPad(const std::vector& bytes, bool = false) { return internal::Utilities::concatenateVectors({ - bytes, { POSITIVE_PADDING.cbegin(), POSITIVE_PADDING.cbegin() + getPaddingAmount(bytes) } + bytes, {POSITIVE_PADDING.cbegin(), POSITIVE_PADDING.cbegin() + getPaddingAmount(bytes)} }); } diff --git a/src/sdk/main/src/RequestType.cc b/src/sdk/main/src/RequestType.cc index 9cf545994..d0db26dd5 100644 --- a/src/sdk/main/src/RequestType.cc +++ b/src/sdk/main/src/RequestType.cc @@ -7,236 +7,236 @@ namespace Hiero { //----- const std::unordered_map gProtobufHederaFunctionalityToRequestType = { - { proto::HederaFunctionality::NONE, RequestType::NONE }, - { proto::HederaFunctionality::CryptoTransfer, RequestType::CRYPTO_TRANSFER }, - { proto::HederaFunctionality::CryptoUpdate, RequestType::CRYPTO_UPDATE }, - { proto::HederaFunctionality::CryptoDelete, RequestType::CRYPTO_DELETE }, - { proto::HederaFunctionality::CryptoAddLiveHash, RequestType::CRYPTO_ADD_LIVE_HASH }, - { proto::HederaFunctionality::CryptoDeleteLiveHash, RequestType::CRYPTO_DELETE_LIVE_HASH }, - { proto::HederaFunctionality::ContractCall, RequestType::CONTRACT_CALL }, - { proto::HederaFunctionality::ContractCreate, RequestType::CONTRACT_CREATE }, - { proto::HederaFunctionality::ContractUpdate, RequestType::CONTRACT_UPDATE }, - { proto::HederaFunctionality::FileCreate, RequestType::FILE_CREATE }, - { proto::HederaFunctionality::FileAppend, RequestType::FILE_APPEND }, - { proto::HederaFunctionality::FileUpdate, RequestType::FILE_UPDATE }, - { proto::HederaFunctionality::FileDelete, RequestType::FILE_DELETE }, - { proto::HederaFunctionality::CryptoGetAccountBalance, RequestType::CRYPTO_GET_ACCOUNT_BALANCE }, - { proto::HederaFunctionality::CryptoGetAccountRecords, RequestType::CRYPTO_GET_ACCOUNT_RECORDS }, - { proto::HederaFunctionality::CryptoGetInfo, RequestType::CRYPTO_GET_INFO }, - { proto::HederaFunctionality::ContractCallLocal, RequestType::CONTRACT_CALL_LOCAL }, - { proto::HederaFunctionality::ContractGetInfo, RequestType::CONTRACT_GET_INFO }, - { proto::HederaFunctionality::ContractGetBytecode, RequestType::CONTRACT_GET_BYTECODE }, - { proto::HederaFunctionality::GetBySolidityID, RequestType::GET_BY_SOLIDITY_ID }, - { proto::HederaFunctionality::GetByKey, RequestType::GET_BY_KEY }, - { proto::HederaFunctionality::CryptoGetLiveHash, RequestType::CRYPTO_GET_LIVE_HASH }, - { proto::HederaFunctionality::CryptoGetStakers, RequestType::CRYPTO_GET_STAKERS }, - { proto::HederaFunctionality::FileGetContents, RequestType::FILE_GET_CONTENTS }, - { proto::HederaFunctionality::FileGetInfo, RequestType::FILE_GET_INFO }, - { proto::HederaFunctionality::TransactionGetRecord, RequestType::TRANSACTION_GET_RECORD }, - { proto::HederaFunctionality::ContractGetRecords, RequestType::CONTRACT_GET_RECORDS }, - { proto::HederaFunctionality::CryptoCreate, RequestType::CRYPTO_CREATE }, - { proto::HederaFunctionality::SystemDelete, RequestType::SYSTEM_DELETE }, - { proto::HederaFunctionality::SystemUndelete, RequestType::SYSTEM_UNDELETE }, - { proto::HederaFunctionality::ContractDelete, RequestType::CONTRACT_DELETE }, - { proto::HederaFunctionality::Freeze, RequestType::FREEZE }, - { proto::HederaFunctionality::CreateTransactionRecord, RequestType::CREATE_TRANSACTION_RECORD }, - { proto::HederaFunctionality::CryptoAccountAutoRenew, RequestType::CRYPTO_ACCOUNT_AUTO_RENEW }, - { proto::HederaFunctionality::ContractAutoRenew, RequestType::CONTRACT_AUTO_RENEW }, - { proto::HederaFunctionality::GetVersionInfo, RequestType::GET_VERSION_INFO }, - { proto::HederaFunctionality::TransactionGetReceipt, RequestType::TRANSACTION_GET_RECEIPT }, - { proto::HederaFunctionality::ConsensusCreateTopic, RequestType::CONSENSUS_CREATE_TOPIC }, - { proto::HederaFunctionality::ConsensusUpdateTopic, RequestType::CONSENSUS_UPDATE_TOPIC }, - { proto::HederaFunctionality::ConsensusDeleteTopic, RequestType::CONSENSUS_DELETE_TOPIC }, - { proto::HederaFunctionality::ConsensusGetTopicInfo, RequestType::CONSENSUS_GET_TOPIC_INFO }, - { proto::HederaFunctionality::ConsensusSubmitMessage, RequestType::CONSENSUS_SUBMIT_MESSAGE }, - { proto::HederaFunctionality::UncheckedSubmit, RequestType::UNCHECKED_SUBMIT }, - { proto::HederaFunctionality::TokenCreate, RequestType::TOKEN_CREATE }, - { proto::HederaFunctionality::TokenGetInfo, RequestType::TOKEN_GET_INFO }, - { proto::HederaFunctionality::TokenFreezeAccount, RequestType::TOKEN_FREEZE_ACCOUNT }, - { proto::HederaFunctionality::TokenUnfreezeAccount, RequestType::TOKEN_UNFREEZE_ACCOUNT }, - { proto::HederaFunctionality::TokenGrantKycToAccount, RequestType::TOKEN_GRANT_KYC_TO_ACCOUNT }, - { proto::HederaFunctionality::TokenRevokeKycFromAccount, RequestType::TOKEN_REVOKE_KYC_FROM_ACCOUNT }, - { proto::HederaFunctionality::TokenDelete, RequestType::TOKEN_DELETE }, - { proto::HederaFunctionality::TokenUpdate, RequestType::TOKEN_UPDATE }, - { proto::HederaFunctionality::TokenMint, RequestType::TOKEN_MINT }, - { proto::HederaFunctionality::TokenBurn, RequestType::TOKEN_BURN }, - { proto::HederaFunctionality::TokenAccountWipe, RequestType::TOKEN_ACCOUNT_WIPE }, - { proto::HederaFunctionality::TokenAssociateToAccount, RequestType::TOKEN_ASSOCIATE_TO_ACCOUNT }, - { proto::HederaFunctionality::TokenDissociateFromAccount, RequestType::TOKEN_DISSOCIATE_FROM_ACCOUNT }, - { proto::HederaFunctionality::ScheduleCreate, RequestType::SCHEDULE_CREATE }, - { proto::HederaFunctionality::ScheduleDelete, RequestType::SCHEDULE_DELETE }, - { proto::HederaFunctionality::ScheduleSign, RequestType::SCHEDULE_SIGN }, - { proto::HederaFunctionality::ScheduleGetInfo, RequestType::SCHEDULE_GET_INFO }, - { proto::HederaFunctionality::TokenGetAccountNftInfos, RequestType::TOKEN_GET_ACCOUNT_NFT_INFOS }, - { proto::HederaFunctionality::TokenGetNftInfo, RequestType::TOKEN_GET_NFT_INFO }, - { proto::HederaFunctionality::TokenGetNftInfos, RequestType::TOKEN_GET_NFT_INFOS }, - { proto::HederaFunctionality::TokenFeeScheduleUpdate, RequestType::TOKEN_FEE_SCHEDULE_UPDATE }, - { proto::HederaFunctionality::NetworkGetExecutionTime, RequestType::NETWORK_GET_EXECUTION_TIME }, - { proto::HederaFunctionality::TokenPause, RequestType::TOKEN_PAUSE }, - { proto::HederaFunctionality::TokenUnpause, RequestType::TOKEN_UNPAUSE }, - { proto::HederaFunctionality::CryptoApproveAllowance, RequestType::CRYPTO_APPROVE_ALLOWANCE }, - { proto::HederaFunctionality::CryptoDeleteAllowance, RequestType::CRYPTO_DELETE_ALLOWANCE }, - { proto::HederaFunctionality::GetAccountDetails, RequestType::GET_ACCOUNT_DETAILS }, - { proto::HederaFunctionality::EthereumTransaction, RequestType::ETHEREUM_TRANSACTION }, - { proto::HederaFunctionality::NodeStakeUpdate, RequestType::NODE_STAKE_UPDATE }, - { proto::HederaFunctionality::UtilPrng, RequestType::UTIL_PRNG }, - { proto::HederaFunctionality::TokenUpdateNfts, RequestType::TOKEN_UPDATE_NFTS }, + {proto::HederaFunctionality::NONE, RequestType::NONE }, + { proto::HederaFunctionality::CryptoTransfer, RequestType::CRYPTO_TRANSFER }, + { proto::HederaFunctionality::CryptoUpdate, RequestType::CRYPTO_UPDATE }, + { proto::HederaFunctionality::CryptoDelete, RequestType::CRYPTO_DELETE }, + { proto::HederaFunctionality::CryptoAddLiveHash, RequestType::CRYPTO_ADD_LIVE_HASH }, + { proto::HederaFunctionality::CryptoDeleteLiveHash, RequestType::CRYPTO_DELETE_LIVE_HASH }, + { proto::HederaFunctionality::ContractCall, RequestType::CONTRACT_CALL }, + { proto::HederaFunctionality::ContractCreate, RequestType::CONTRACT_CREATE }, + { proto::HederaFunctionality::ContractUpdate, RequestType::CONTRACT_UPDATE }, + { proto::HederaFunctionality::FileCreate, RequestType::FILE_CREATE }, + { proto::HederaFunctionality::FileAppend, RequestType::FILE_APPEND }, + { proto::HederaFunctionality::FileUpdate, RequestType::FILE_UPDATE }, + { proto::HederaFunctionality::FileDelete, RequestType::FILE_DELETE }, + { proto::HederaFunctionality::CryptoGetAccountBalance, RequestType::CRYPTO_GET_ACCOUNT_BALANCE }, + { proto::HederaFunctionality::CryptoGetAccountRecords, RequestType::CRYPTO_GET_ACCOUNT_RECORDS }, + { proto::HederaFunctionality::CryptoGetInfo, RequestType::CRYPTO_GET_INFO }, + { proto::HederaFunctionality::ContractCallLocal, RequestType::CONTRACT_CALL_LOCAL }, + { proto::HederaFunctionality::ContractGetInfo, RequestType::CONTRACT_GET_INFO }, + { proto::HederaFunctionality::ContractGetBytecode, RequestType::CONTRACT_GET_BYTECODE }, + { proto::HederaFunctionality::GetBySolidityID, RequestType::GET_BY_SOLIDITY_ID }, + { proto::HederaFunctionality::GetByKey, RequestType::GET_BY_KEY }, + { proto::HederaFunctionality::CryptoGetLiveHash, RequestType::CRYPTO_GET_LIVE_HASH }, + { proto::HederaFunctionality::CryptoGetStakers, RequestType::CRYPTO_GET_STAKERS }, + { proto::HederaFunctionality::FileGetContents, RequestType::FILE_GET_CONTENTS }, + { proto::HederaFunctionality::FileGetInfo, RequestType::FILE_GET_INFO }, + { proto::HederaFunctionality::TransactionGetRecord, RequestType::TRANSACTION_GET_RECORD }, + { proto::HederaFunctionality::ContractGetRecords, RequestType::CONTRACT_GET_RECORDS }, + { proto::HederaFunctionality::CryptoCreate, RequestType::CRYPTO_CREATE }, + { proto::HederaFunctionality::SystemDelete, RequestType::SYSTEM_DELETE }, + { proto::HederaFunctionality::SystemUndelete, RequestType::SYSTEM_UNDELETE }, + { proto::HederaFunctionality::ContractDelete, RequestType::CONTRACT_DELETE }, + { proto::HederaFunctionality::Freeze, RequestType::FREEZE }, + { proto::HederaFunctionality::CreateTransactionRecord, RequestType::CREATE_TRANSACTION_RECORD }, + { proto::HederaFunctionality::CryptoAccountAutoRenew, RequestType::CRYPTO_ACCOUNT_AUTO_RENEW }, + { proto::HederaFunctionality::ContractAutoRenew, RequestType::CONTRACT_AUTO_RENEW }, + { proto::HederaFunctionality::GetVersionInfo, RequestType::GET_VERSION_INFO }, + { proto::HederaFunctionality::TransactionGetReceipt, RequestType::TRANSACTION_GET_RECEIPT }, + { proto::HederaFunctionality::ConsensusCreateTopic, RequestType::CONSENSUS_CREATE_TOPIC }, + { proto::HederaFunctionality::ConsensusUpdateTopic, RequestType::CONSENSUS_UPDATE_TOPIC }, + { proto::HederaFunctionality::ConsensusDeleteTopic, RequestType::CONSENSUS_DELETE_TOPIC }, + { proto::HederaFunctionality::ConsensusGetTopicInfo, RequestType::CONSENSUS_GET_TOPIC_INFO }, + { proto::HederaFunctionality::ConsensusSubmitMessage, RequestType::CONSENSUS_SUBMIT_MESSAGE }, + { proto::HederaFunctionality::UncheckedSubmit, RequestType::UNCHECKED_SUBMIT }, + { proto::HederaFunctionality::TokenCreate, RequestType::TOKEN_CREATE }, + { proto::HederaFunctionality::TokenGetInfo, RequestType::TOKEN_GET_INFO }, + { proto::HederaFunctionality::TokenFreezeAccount, RequestType::TOKEN_FREEZE_ACCOUNT }, + { proto::HederaFunctionality::TokenUnfreezeAccount, RequestType::TOKEN_UNFREEZE_ACCOUNT }, + { proto::HederaFunctionality::TokenGrantKycToAccount, RequestType::TOKEN_GRANT_KYC_TO_ACCOUNT }, + { proto::HederaFunctionality::TokenRevokeKycFromAccount, RequestType::TOKEN_REVOKE_KYC_FROM_ACCOUNT}, + { proto::HederaFunctionality::TokenDelete, RequestType::TOKEN_DELETE }, + { proto::HederaFunctionality::TokenUpdate, RequestType::TOKEN_UPDATE }, + { proto::HederaFunctionality::TokenMint, RequestType::TOKEN_MINT }, + { proto::HederaFunctionality::TokenBurn, RequestType::TOKEN_BURN }, + { proto::HederaFunctionality::TokenAccountWipe, RequestType::TOKEN_ACCOUNT_WIPE }, + { proto::HederaFunctionality::TokenAssociateToAccount, RequestType::TOKEN_ASSOCIATE_TO_ACCOUNT }, + { proto::HederaFunctionality::TokenDissociateFromAccount, RequestType::TOKEN_DISSOCIATE_FROM_ACCOUNT}, + { proto::HederaFunctionality::ScheduleCreate, RequestType::SCHEDULE_CREATE }, + { proto::HederaFunctionality::ScheduleDelete, RequestType::SCHEDULE_DELETE }, + { proto::HederaFunctionality::ScheduleSign, RequestType::SCHEDULE_SIGN }, + { proto::HederaFunctionality::ScheduleGetInfo, RequestType::SCHEDULE_GET_INFO }, + { proto::HederaFunctionality::TokenGetAccountNftInfos, RequestType::TOKEN_GET_ACCOUNT_NFT_INFOS }, + { proto::HederaFunctionality::TokenGetNftInfo, RequestType::TOKEN_GET_NFT_INFO }, + { proto::HederaFunctionality::TokenGetNftInfos, RequestType::TOKEN_GET_NFT_INFOS }, + { proto::HederaFunctionality::TokenFeeScheduleUpdate, RequestType::TOKEN_FEE_SCHEDULE_UPDATE }, + { proto::HederaFunctionality::NetworkGetExecutionTime, RequestType::NETWORK_GET_EXECUTION_TIME }, + { proto::HederaFunctionality::TokenPause, RequestType::TOKEN_PAUSE }, + { proto::HederaFunctionality::TokenUnpause, RequestType::TOKEN_UNPAUSE }, + { proto::HederaFunctionality::CryptoApproveAllowance, RequestType::CRYPTO_APPROVE_ALLOWANCE }, + { proto::HederaFunctionality::CryptoDeleteAllowance, RequestType::CRYPTO_DELETE_ALLOWANCE }, + { proto::HederaFunctionality::GetAccountDetails, RequestType::GET_ACCOUNT_DETAILS }, + { proto::HederaFunctionality::EthereumTransaction, RequestType::ETHEREUM_TRANSACTION }, + { proto::HederaFunctionality::NodeStakeUpdate, RequestType::NODE_STAKE_UPDATE }, + { proto::HederaFunctionality::UtilPrng, RequestType::UTIL_PRNG }, + { proto::HederaFunctionality::TokenUpdateNfts, RequestType::TOKEN_UPDATE_NFTS }, }; //----- const std::unordered_map gRequestTypeToProtobufHederaFunctionality = { - { RequestType::NONE, proto::HederaFunctionality::NONE }, - { RequestType::CRYPTO_TRANSFER, proto::HederaFunctionality::CryptoTransfer }, - { RequestType::CRYPTO_UPDATE, proto::HederaFunctionality::CryptoUpdate }, - { RequestType::CRYPTO_DELETE, proto::HederaFunctionality::CryptoDelete }, - { RequestType::CRYPTO_ADD_LIVE_HASH, proto::HederaFunctionality::CryptoAddLiveHash }, - { RequestType::CRYPTO_DELETE_LIVE_HASH, proto::HederaFunctionality::CryptoDeleteLiveHash }, - { RequestType::CONTRACT_CALL, proto::HederaFunctionality::ContractCall }, - { RequestType::CONTRACT_CREATE, proto::HederaFunctionality::ContractCreate }, - { RequestType::CONTRACT_UPDATE, proto::HederaFunctionality::ContractUpdate }, - { RequestType::FILE_CREATE, proto::HederaFunctionality::FileCreate }, - { RequestType::FILE_APPEND, proto::HederaFunctionality::FileAppend }, - { RequestType::FILE_UPDATE, proto::HederaFunctionality::FileUpdate }, - { RequestType::FILE_DELETE, proto::HederaFunctionality::FileDelete }, - { RequestType::CRYPTO_GET_ACCOUNT_BALANCE, proto::HederaFunctionality::CryptoGetAccountBalance }, - { RequestType::CRYPTO_GET_ACCOUNT_RECORDS, proto::HederaFunctionality::CryptoGetAccountRecords }, - { RequestType::CRYPTO_GET_INFO, proto::HederaFunctionality::CryptoGetInfo }, - { RequestType::CONTRACT_CALL_LOCAL, proto::HederaFunctionality::ContractCallLocal }, - { RequestType::CONTRACT_GET_INFO, proto::HederaFunctionality::ContractGetInfo }, - { RequestType::CONTRACT_GET_BYTECODE, proto::HederaFunctionality::ContractGetBytecode }, - { RequestType::GET_BY_SOLIDITY_ID, proto::HederaFunctionality::GetBySolidityID }, - { RequestType::GET_BY_KEY, proto::HederaFunctionality::GetByKey }, - { RequestType::CRYPTO_GET_LIVE_HASH, proto::HederaFunctionality::CryptoGetLiveHash }, - { RequestType::CRYPTO_GET_STAKERS, proto::HederaFunctionality::CryptoGetStakers }, - { RequestType::FILE_GET_CONTENTS, proto::HederaFunctionality::FileGetContents }, - { RequestType::FILE_GET_INFO, proto::HederaFunctionality::FileGetInfo }, - { RequestType::TRANSACTION_GET_RECORD, proto::HederaFunctionality::TransactionGetRecord }, - { RequestType::CONTRACT_GET_RECORDS, proto::HederaFunctionality::ContractGetRecords }, - { RequestType::CRYPTO_CREATE, proto::HederaFunctionality::CryptoCreate }, - { RequestType::SYSTEM_DELETE, proto::HederaFunctionality::SystemDelete }, - { RequestType::SYSTEM_UNDELETE, proto::HederaFunctionality::SystemUndelete }, - { RequestType::CONTRACT_DELETE, proto::HederaFunctionality::ContractDelete }, - { RequestType::FREEZE, proto::HederaFunctionality::Freeze }, - { RequestType::CREATE_TRANSACTION_RECORD, proto::HederaFunctionality::CreateTransactionRecord }, - { RequestType::CRYPTO_ACCOUNT_AUTO_RENEW, proto::HederaFunctionality::CryptoAccountAutoRenew }, - { RequestType::CONTRACT_AUTO_RENEW, proto::HederaFunctionality::ContractAutoRenew }, - { RequestType::GET_VERSION_INFO, proto::HederaFunctionality::GetVersionInfo }, - { RequestType::TRANSACTION_GET_RECEIPT, proto::HederaFunctionality::TransactionGetReceipt }, - { RequestType::CONSENSUS_CREATE_TOPIC, proto::HederaFunctionality::ConsensusCreateTopic }, - { RequestType::CONSENSUS_UPDATE_TOPIC, proto::HederaFunctionality::ConsensusUpdateTopic }, - { RequestType::CONSENSUS_DELETE_TOPIC, proto::HederaFunctionality::ConsensusDeleteTopic }, - { RequestType::CONSENSUS_GET_TOPIC_INFO, proto::HederaFunctionality::ConsensusGetTopicInfo }, - { RequestType::CONSENSUS_SUBMIT_MESSAGE, proto::HederaFunctionality::ConsensusSubmitMessage }, - { RequestType::UNCHECKED_SUBMIT, proto::HederaFunctionality::UncheckedSubmit }, - { RequestType::TOKEN_CREATE, proto::HederaFunctionality::TokenCreate }, - { RequestType::TOKEN_GET_INFO, proto::HederaFunctionality::TokenGetInfo }, - { RequestType::TOKEN_FREEZE_ACCOUNT, proto::HederaFunctionality::TokenFreezeAccount }, - { RequestType::TOKEN_UNFREEZE_ACCOUNT, proto::HederaFunctionality::TokenUnfreezeAccount }, - { RequestType::TOKEN_GRANT_KYC_TO_ACCOUNT, proto::HederaFunctionality::TokenGrantKycToAccount }, - { RequestType::TOKEN_REVOKE_KYC_FROM_ACCOUNT, proto::HederaFunctionality::TokenRevokeKycFromAccount }, - { RequestType::TOKEN_DELETE, proto::HederaFunctionality::TokenDelete }, - { RequestType::TOKEN_UPDATE, proto::HederaFunctionality::TokenUpdate }, - { RequestType::TOKEN_MINT, proto::HederaFunctionality::TokenMint }, - { RequestType::TOKEN_BURN, proto::HederaFunctionality::TokenBurn }, - { RequestType::TOKEN_ACCOUNT_WIPE, proto::HederaFunctionality::TokenAccountWipe }, - { RequestType::TOKEN_ASSOCIATE_TO_ACCOUNT, proto::HederaFunctionality::TokenAssociateToAccount }, - { RequestType::TOKEN_DISSOCIATE_FROM_ACCOUNT, proto::HederaFunctionality::TokenDissociateFromAccount }, - { RequestType::SCHEDULE_CREATE, proto::HederaFunctionality::ScheduleCreate }, - { RequestType::SCHEDULE_DELETE, proto::HederaFunctionality::ScheduleDelete }, - { RequestType::SCHEDULE_SIGN, proto::HederaFunctionality::ScheduleSign }, - { RequestType::SCHEDULE_GET_INFO, proto::HederaFunctionality::ScheduleGetInfo }, - { RequestType::TOKEN_GET_ACCOUNT_NFT_INFOS, proto::HederaFunctionality::TokenGetAccountNftInfos }, - { RequestType::TOKEN_GET_NFT_INFO, proto::HederaFunctionality::TokenGetNftInfo }, - { RequestType::TOKEN_GET_NFT_INFOS, proto::HederaFunctionality::TokenGetNftInfos }, - { RequestType::TOKEN_FEE_SCHEDULE_UPDATE, proto::HederaFunctionality::TokenFeeScheduleUpdate }, - { RequestType::NETWORK_GET_EXECUTION_TIME, proto::HederaFunctionality::NetworkGetExecutionTime }, - { RequestType::TOKEN_PAUSE, proto::HederaFunctionality::TokenPause }, - { RequestType::TOKEN_UNPAUSE, proto::HederaFunctionality::TokenUnpause }, - { RequestType::CRYPTO_APPROVE_ALLOWANCE, proto::HederaFunctionality::CryptoApproveAllowance }, - { RequestType::CRYPTO_DELETE_ALLOWANCE, proto::HederaFunctionality::CryptoDeleteAllowance }, - { RequestType::GET_ACCOUNT_DETAILS, proto::HederaFunctionality::GetAccountDetails }, - { RequestType::ETHEREUM_TRANSACTION, proto::HederaFunctionality::EthereumTransaction }, - { RequestType::NODE_STAKE_UPDATE, proto::HederaFunctionality::NodeStakeUpdate }, - { RequestType::UTIL_PRNG, proto::HederaFunctionality::UtilPrng }, - { RequestType::TOKEN_UPDATE_NFTS, proto::HederaFunctionality::TokenUpdateNfts }, + {RequestType::NONE, proto::HederaFunctionality::NONE }, + { RequestType::CRYPTO_TRANSFER, proto::HederaFunctionality::CryptoTransfer }, + { RequestType::CRYPTO_UPDATE, proto::HederaFunctionality::CryptoUpdate }, + { RequestType::CRYPTO_DELETE, proto::HederaFunctionality::CryptoDelete }, + { RequestType::CRYPTO_ADD_LIVE_HASH, proto::HederaFunctionality::CryptoAddLiveHash }, + { RequestType::CRYPTO_DELETE_LIVE_HASH, proto::HederaFunctionality::CryptoDeleteLiveHash }, + { RequestType::CONTRACT_CALL, proto::HederaFunctionality::ContractCall }, + { RequestType::CONTRACT_CREATE, proto::HederaFunctionality::ContractCreate }, + { RequestType::CONTRACT_UPDATE, proto::HederaFunctionality::ContractUpdate }, + { RequestType::FILE_CREATE, proto::HederaFunctionality::FileCreate }, + { RequestType::FILE_APPEND, proto::HederaFunctionality::FileAppend }, + { RequestType::FILE_UPDATE, proto::HederaFunctionality::FileUpdate }, + { RequestType::FILE_DELETE, proto::HederaFunctionality::FileDelete }, + { RequestType::CRYPTO_GET_ACCOUNT_BALANCE, proto::HederaFunctionality::CryptoGetAccountBalance }, + { RequestType::CRYPTO_GET_ACCOUNT_RECORDS, proto::HederaFunctionality::CryptoGetAccountRecords }, + { RequestType::CRYPTO_GET_INFO, proto::HederaFunctionality::CryptoGetInfo }, + { RequestType::CONTRACT_CALL_LOCAL, proto::HederaFunctionality::ContractCallLocal }, + { RequestType::CONTRACT_GET_INFO, proto::HederaFunctionality::ContractGetInfo }, + { RequestType::CONTRACT_GET_BYTECODE, proto::HederaFunctionality::ContractGetBytecode }, + { RequestType::GET_BY_SOLIDITY_ID, proto::HederaFunctionality::GetBySolidityID }, + { RequestType::GET_BY_KEY, proto::HederaFunctionality::GetByKey }, + { RequestType::CRYPTO_GET_LIVE_HASH, proto::HederaFunctionality::CryptoGetLiveHash }, + { RequestType::CRYPTO_GET_STAKERS, proto::HederaFunctionality::CryptoGetStakers }, + { RequestType::FILE_GET_CONTENTS, proto::HederaFunctionality::FileGetContents }, + { RequestType::FILE_GET_INFO, proto::HederaFunctionality::FileGetInfo }, + { RequestType::TRANSACTION_GET_RECORD, proto::HederaFunctionality::TransactionGetRecord }, + { RequestType::CONTRACT_GET_RECORDS, proto::HederaFunctionality::ContractGetRecords }, + { RequestType::CRYPTO_CREATE, proto::HederaFunctionality::CryptoCreate }, + { RequestType::SYSTEM_DELETE, proto::HederaFunctionality::SystemDelete }, + { RequestType::SYSTEM_UNDELETE, proto::HederaFunctionality::SystemUndelete }, + { RequestType::CONTRACT_DELETE, proto::HederaFunctionality::ContractDelete }, + { RequestType::FREEZE, proto::HederaFunctionality::Freeze }, + { RequestType::CREATE_TRANSACTION_RECORD, proto::HederaFunctionality::CreateTransactionRecord }, + { RequestType::CRYPTO_ACCOUNT_AUTO_RENEW, proto::HederaFunctionality::CryptoAccountAutoRenew }, + { RequestType::CONTRACT_AUTO_RENEW, proto::HederaFunctionality::ContractAutoRenew }, + { RequestType::GET_VERSION_INFO, proto::HederaFunctionality::GetVersionInfo }, + { RequestType::TRANSACTION_GET_RECEIPT, proto::HederaFunctionality::TransactionGetReceipt }, + { RequestType::CONSENSUS_CREATE_TOPIC, proto::HederaFunctionality::ConsensusCreateTopic }, + { RequestType::CONSENSUS_UPDATE_TOPIC, proto::HederaFunctionality::ConsensusUpdateTopic }, + { RequestType::CONSENSUS_DELETE_TOPIC, proto::HederaFunctionality::ConsensusDeleteTopic }, + { RequestType::CONSENSUS_GET_TOPIC_INFO, proto::HederaFunctionality::ConsensusGetTopicInfo }, + { RequestType::CONSENSUS_SUBMIT_MESSAGE, proto::HederaFunctionality::ConsensusSubmitMessage }, + { RequestType::UNCHECKED_SUBMIT, proto::HederaFunctionality::UncheckedSubmit }, + { RequestType::TOKEN_CREATE, proto::HederaFunctionality::TokenCreate }, + { RequestType::TOKEN_GET_INFO, proto::HederaFunctionality::TokenGetInfo }, + { RequestType::TOKEN_FREEZE_ACCOUNT, proto::HederaFunctionality::TokenFreezeAccount }, + { RequestType::TOKEN_UNFREEZE_ACCOUNT, proto::HederaFunctionality::TokenUnfreezeAccount }, + { RequestType::TOKEN_GRANT_KYC_TO_ACCOUNT, proto::HederaFunctionality::TokenGrantKycToAccount }, + { RequestType::TOKEN_REVOKE_KYC_FROM_ACCOUNT, proto::HederaFunctionality::TokenRevokeKycFromAccount }, + { RequestType::TOKEN_DELETE, proto::HederaFunctionality::TokenDelete }, + { RequestType::TOKEN_UPDATE, proto::HederaFunctionality::TokenUpdate }, + { RequestType::TOKEN_MINT, proto::HederaFunctionality::TokenMint }, + { RequestType::TOKEN_BURN, proto::HederaFunctionality::TokenBurn }, + { RequestType::TOKEN_ACCOUNT_WIPE, proto::HederaFunctionality::TokenAccountWipe }, + { RequestType::TOKEN_ASSOCIATE_TO_ACCOUNT, proto::HederaFunctionality::TokenAssociateToAccount }, + { RequestType::TOKEN_DISSOCIATE_FROM_ACCOUNT, proto::HederaFunctionality::TokenDissociateFromAccount}, + { RequestType::SCHEDULE_CREATE, proto::HederaFunctionality::ScheduleCreate }, + { RequestType::SCHEDULE_DELETE, proto::HederaFunctionality::ScheduleDelete }, + { RequestType::SCHEDULE_SIGN, proto::HederaFunctionality::ScheduleSign }, + { RequestType::SCHEDULE_GET_INFO, proto::HederaFunctionality::ScheduleGetInfo }, + { RequestType::TOKEN_GET_ACCOUNT_NFT_INFOS, proto::HederaFunctionality::TokenGetAccountNftInfos }, + { RequestType::TOKEN_GET_NFT_INFO, proto::HederaFunctionality::TokenGetNftInfo }, + { RequestType::TOKEN_GET_NFT_INFOS, proto::HederaFunctionality::TokenGetNftInfos }, + { RequestType::TOKEN_FEE_SCHEDULE_UPDATE, proto::HederaFunctionality::TokenFeeScheduleUpdate }, + { RequestType::NETWORK_GET_EXECUTION_TIME, proto::HederaFunctionality::NetworkGetExecutionTime }, + { RequestType::TOKEN_PAUSE, proto::HederaFunctionality::TokenPause }, + { RequestType::TOKEN_UNPAUSE, proto::HederaFunctionality::TokenUnpause }, + { RequestType::CRYPTO_APPROVE_ALLOWANCE, proto::HederaFunctionality::CryptoApproveAllowance }, + { RequestType::CRYPTO_DELETE_ALLOWANCE, proto::HederaFunctionality::CryptoDeleteAllowance }, + { RequestType::GET_ACCOUNT_DETAILS, proto::HederaFunctionality::GetAccountDetails }, + { RequestType::ETHEREUM_TRANSACTION, proto::HederaFunctionality::EthereumTransaction }, + { RequestType::NODE_STAKE_UPDATE, proto::HederaFunctionality::NodeStakeUpdate }, + { RequestType::UTIL_PRNG, proto::HederaFunctionality::UtilPrng }, + { RequestType::TOKEN_UPDATE_NFTS, proto::HederaFunctionality::TokenUpdateNfts }, }; //----- const std::unordered_map gRequestTypeToString = { - { RequestType::NONE, "NONE" }, - { RequestType::CRYPTO_TRANSFER, "CRYPTO_TRANSFER" }, - { RequestType::CRYPTO_UPDATE, "CRYPTO_UPDATE" }, - { RequestType::CRYPTO_DELETE, "CRYPTO_DELETE" }, - { RequestType::CRYPTO_ADD_LIVE_HASH, "CRYPTO_ADD_LIVE_HASH" }, - { RequestType::CRYPTO_DELETE_LIVE_HASH, "CRYPTO_DELETE_LIVE_HASH" }, - { RequestType::CONTRACT_CALL, "CONTRACT_CALL" }, - { RequestType::CONTRACT_CREATE, "CONTRACT_CREATE" }, - { RequestType::CONTRACT_UPDATE, "CONTRACT_UPDATE" }, - { RequestType::FILE_CREATE, "FILE_CREATE" }, - { RequestType::FILE_APPEND, "FILE_APPEND" }, - { RequestType::FILE_UPDATE, "FILE_UPDATE" }, - { RequestType::FILE_DELETE, "FILE_DELETE" }, - { RequestType::CRYPTO_GET_ACCOUNT_BALANCE, "CRYPTO_GET_ACCOUNT_BALANCE" }, - { RequestType::CRYPTO_GET_ACCOUNT_RECORDS, "CRYPTO_GET_ACCOUNT_RECORDS" }, - { RequestType::CRYPTO_GET_INFO, "CRYPTO_GET_INFO" }, - { RequestType::CONTRACT_CALL_LOCAL, "CONTRACT_CALL_LOCAL" }, - { RequestType::CONTRACT_GET_INFO, "CONTRACT_GET_INFO" }, - { RequestType::CONTRACT_GET_BYTECODE, "CONTRACT_GET_BYTECODE" }, - { RequestType::GET_BY_SOLIDITY_ID, "GET_BY_SOLIDITY_ID" }, - { RequestType::GET_BY_KEY, "GET_BY_KEY" }, - { RequestType::CRYPTO_GET_LIVE_HASH, "CRYPTO_GET_LIVE_HASH" }, - { RequestType::CRYPTO_GET_STAKERS, "CRYPTO_GET_STAKERS" }, - { RequestType::FILE_GET_CONTENTS, "FILE_GET_CONTENTS" }, - { RequestType::FILE_GET_INFO, "FILE_GET_INFO" }, - { RequestType::TRANSACTION_GET_RECORD, "TRANSACTION_GET_RECORD" }, - { RequestType::CONTRACT_GET_RECORDS, "CONTRACT_GET_RECORDS" }, - { RequestType::CRYPTO_CREATE, "CRYPTO_CREATE" }, - { RequestType::SYSTEM_DELETE, "SYSTEM_DELETE" }, - { RequestType::SYSTEM_UNDELETE, "SYSTEM_UNDELETE" }, - { RequestType::CONTRACT_DELETE, "CONTRACT_DELETE" }, - { RequestType::FREEZE, "FREEZE" }, - { RequestType::CREATE_TRANSACTION_RECORD, "CREATE_TRANSACTION_RECORD" }, - { RequestType::CRYPTO_ACCOUNT_AUTO_RENEW, "CRYPTO_ACCOUNT_AUTO_RENEW" }, - { RequestType::CONTRACT_AUTO_RENEW, "CONTRACT_AUTO_RENEW" }, - { RequestType::GET_VERSION_INFO, "GET_VERSION_INFO" }, - { RequestType::TRANSACTION_GET_RECEIPT, "TRANSACTION_GET_RECEIPT" }, - { RequestType::CONSENSUS_CREATE_TOPIC, "CONSENSUS_CREATE_TOPIC" }, - { RequestType::CONSENSUS_UPDATE_TOPIC, "CONSENSUS_UPDATE_TOPIC" }, - { RequestType::CONSENSUS_DELETE_TOPIC, "CONSENSUS_DELETE_TOPIC" }, - { RequestType::CONSENSUS_GET_TOPIC_INFO, "CONSENSUS_GET_TOPIC_INFO" }, - { RequestType::CONSENSUS_SUBMIT_MESSAGE, "CONSENSUS_SUBMIT_MESSAGE" }, - { RequestType::UNCHECKED_SUBMIT, "UNCHECKED_SUBMIT" }, - { RequestType::TOKEN_CREATE, "TOKEN_CREATE" }, - { RequestType::TOKEN_GET_INFO, "TOKEN_GET_INFO" }, - { RequestType::TOKEN_FREEZE_ACCOUNT, "TOKEN_FREEZE_ACCOUNT" }, - { RequestType::TOKEN_UNFREEZE_ACCOUNT, "TOKEN_UNFREEZE_ACCOUNT" }, - { RequestType::TOKEN_GRANT_KYC_TO_ACCOUNT, "TOKEN_GRANT_KYC_TO_ACCOUNT" }, - { RequestType::TOKEN_REVOKE_KYC_FROM_ACCOUNT, "TOKEN_REVOKE_KYC_FROM_ACCOUNT" }, - { RequestType::TOKEN_DELETE, "TOKEN_DELETE" }, - { RequestType::TOKEN_UPDATE, "TOKEN_UPDATE" }, - { RequestType::TOKEN_MINT, "TOKEN_MINT" }, - { RequestType::TOKEN_BURN, "TOKEN_BURN" }, - { RequestType::TOKEN_ACCOUNT_WIPE, "TOKEN_ACCOUNT_WIPE" }, - { RequestType::TOKEN_ASSOCIATE_TO_ACCOUNT, "TOKEN_ASSOCIATE_TO_ACCOUNT" }, - { RequestType::TOKEN_DISSOCIATE_FROM_ACCOUNT, "TOKEN_DISSOCIATE_FROM_ACCOUNT" }, - { RequestType::SCHEDULE_CREATE, "SCHEDULE_CREATE" }, - { RequestType::SCHEDULE_DELETE, "SCHEDULE_DELETE" }, - { RequestType::SCHEDULE_SIGN, "SCHEDULE_SIGN" }, - { RequestType::SCHEDULE_GET_INFO, "SCHEDULE_GET_INFO" }, - { RequestType::TOKEN_GET_ACCOUNT_NFT_INFOS, "TOKEN_GET_ACCOUNT_NFT_INFOS" }, - { RequestType::TOKEN_GET_NFT_INFO, "TOKEN_GET_NFT_INFO" }, - { RequestType::TOKEN_GET_NFT_INFOS, "TOKEN_GET_NFT_INFOS" }, - { RequestType::TOKEN_FEE_SCHEDULE_UPDATE, "TOKEN_FEE_SCHEDULE_UPDATE" }, - { RequestType::NETWORK_GET_EXECUTION_TIME, "NETWORK_GET_EXECUTION_TIME" }, - { RequestType::TOKEN_PAUSE, "TOKEN_PAUSE" }, - { RequestType::TOKEN_UNPAUSE, "TOKEN_UNPAUSE" }, - { RequestType::CRYPTO_APPROVE_ALLOWANCE, "CRYPTO_APPROVE_ALLOWANCE" }, - { RequestType::CRYPTO_DELETE_ALLOWANCE, "CRYPTO_DELETE_ALLOWANCE" }, - { RequestType::GET_ACCOUNT_DETAILS, "GET_ACCOUNT_DETAILS" }, - { RequestType::ETHEREUM_TRANSACTION, "ETHEREUM_TRANSACTION" }, - { RequestType::NODE_STAKE_UPDATE, "NODE_STAKE_UPDATE" }, - { RequestType::UTIL_PRNG, "UTIL_PRNG" }, - { RequestType::TOKEN_UPDATE_NFTS, "TOKEN_UPDATE_NFTS" }, + {RequestType::NONE, "NONE" }, + { RequestType::CRYPTO_TRANSFER, "CRYPTO_TRANSFER" }, + { RequestType::CRYPTO_UPDATE, "CRYPTO_UPDATE" }, + { RequestType::CRYPTO_DELETE, "CRYPTO_DELETE" }, + { RequestType::CRYPTO_ADD_LIVE_HASH, "CRYPTO_ADD_LIVE_HASH" }, + { RequestType::CRYPTO_DELETE_LIVE_HASH, "CRYPTO_DELETE_LIVE_HASH" }, + { RequestType::CONTRACT_CALL, "CONTRACT_CALL" }, + { RequestType::CONTRACT_CREATE, "CONTRACT_CREATE" }, + { RequestType::CONTRACT_UPDATE, "CONTRACT_UPDATE" }, + { RequestType::FILE_CREATE, "FILE_CREATE" }, + { RequestType::FILE_APPEND, "FILE_APPEND" }, + { RequestType::FILE_UPDATE, "FILE_UPDATE" }, + { RequestType::FILE_DELETE, "FILE_DELETE" }, + { RequestType::CRYPTO_GET_ACCOUNT_BALANCE, "CRYPTO_GET_ACCOUNT_BALANCE" }, + { RequestType::CRYPTO_GET_ACCOUNT_RECORDS, "CRYPTO_GET_ACCOUNT_RECORDS" }, + { RequestType::CRYPTO_GET_INFO, "CRYPTO_GET_INFO" }, + { RequestType::CONTRACT_CALL_LOCAL, "CONTRACT_CALL_LOCAL" }, + { RequestType::CONTRACT_GET_INFO, "CONTRACT_GET_INFO" }, + { RequestType::CONTRACT_GET_BYTECODE, "CONTRACT_GET_BYTECODE" }, + { RequestType::GET_BY_SOLIDITY_ID, "GET_BY_SOLIDITY_ID" }, + { RequestType::GET_BY_KEY, "GET_BY_KEY" }, + { RequestType::CRYPTO_GET_LIVE_HASH, "CRYPTO_GET_LIVE_HASH" }, + { RequestType::CRYPTO_GET_STAKERS, "CRYPTO_GET_STAKERS" }, + { RequestType::FILE_GET_CONTENTS, "FILE_GET_CONTENTS" }, + { RequestType::FILE_GET_INFO, "FILE_GET_INFO" }, + { RequestType::TRANSACTION_GET_RECORD, "TRANSACTION_GET_RECORD" }, + { RequestType::CONTRACT_GET_RECORDS, "CONTRACT_GET_RECORDS" }, + { RequestType::CRYPTO_CREATE, "CRYPTO_CREATE" }, + { RequestType::SYSTEM_DELETE, "SYSTEM_DELETE" }, + { RequestType::SYSTEM_UNDELETE, "SYSTEM_UNDELETE" }, + { RequestType::CONTRACT_DELETE, "CONTRACT_DELETE" }, + { RequestType::FREEZE, "FREEZE" }, + { RequestType::CREATE_TRANSACTION_RECORD, "CREATE_TRANSACTION_RECORD" }, + { RequestType::CRYPTO_ACCOUNT_AUTO_RENEW, "CRYPTO_ACCOUNT_AUTO_RENEW" }, + { RequestType::CONTRACT_AUTO_RENEW, "CONTRACT_AUTO_RENEW" }, + { RequestType::GET_VERSION_INFO, "GET_VERSION_INFO" }, + { RequestType::TRANSACTION_GET_RECEIPT, "TRANSACTION_GET_RECEIPT" }, + { RequestType::CONSENSUS_CREATE_TOPIC, "CONSENSUS_CREATE_TOPIC" }, + { RequestType::CONSENSUS_UPDATE_TOPIC, "CONSENSUS_UPDATE_TOPIC" }, + { RequestType::CONSENSUS_DELETE_TOPIC, "CONSENSUS_DELETE_TOPIC" }, + { RequestType::CONSENSUS_GET_TOPIC_INFO, "CONSENSUS_GET_TOPIC_INFO" }, + { RequestType::CONSENSUS_SUBMIT_MESSAGE, "CONSENSUS_SUBMIT_MESSAGE" }, + { RequestType::UNCHECKED_SUBMIT, "UNCHECKED_SUBMIT" }, + { RequestType::TOKEN_CREATE, "TOKEN_CREATE" }, + { RequestType::TOKEN_GET_INFO, "TOKEN_GET_INFO" }, + { RequestType::TOKEN_FREEZE_ACCOUNT, "TOKEN_FREEZE_ACCOUNT" }, + { RequestType::TOKEN_UNFREEZE_ACCOUNT, "TOKEN_UNFREEZE_ACCOUNT" }, + { RequestType::TOKEN_GRANT_KYC_TO_ACCOUNT, "TOKEN_GRANT_KYC_TO_ACCOUNT" }, + { RequestType::TOKEN_REVOKE_KYC_FROM_ACCOUNT, "TOKEN_REVOKE_KYC_FROM_ACCOUNT"}, + { RequestType::TOKEN_DELETE, "TOKEN_DELETE" }, + { RequestType::TOKEN_UPDATE, "TOKEN_UPDATE" }, + { RequestType::TOKEN_MINT, "TOKEN_MINT" }, + { RequestType::TOKEN_BURN, "TOKEN_BURN" }, + { RequestType::TOKEN_ACCOUNT_WIPE, "TOKEN_ACCOUNT_WIPE" }, + { RequestType::TOKEN_ASSOCIATE_TO_ACCOUNT, "TOKEN_ASSOCIATE_TO_ACCOUNT" }, + { RequestType::TOKEN_DISSOCIATE_FROM_ACCOUNT, "TOKEN_DISSOCIATE_FROM_ACCOUNT"}, + { RequestType::SCHEDULE_CREATE, "SCHEDULE_CREATE" }, + { RequestType::SCHEDULE_DELETE, "SCHEDULE_DELETE" }, + { RequestType::SCHEDULE_SIGN, "SCHEDULE_SIGN" }, + { RequestType::SCHEDULE_GET_INFO, "SCHEDULE_GET_INFO" }, + { RequestType::TOKEN_GET_ACCOUNT_NFT_INFOS, "TOKEN_GET_ACCOUNT_NFT_INFOS" }, + { RequestType::TOKEN_GET_NFT_INFO, "TOKEN_GET_NFT_INFO" }, + { RequestType::TOKEN_GET_NFT_INFOS, "TOKEN_GET_NFT_INFOS" }, + { RequestType::TOKEN_FEE_SCHEDULE_UPDATE, "TOKEN_FEE_SCHEDULE_UPDATE" }, + { RequestType::NETWORK_GET_EXECUTION_TIME, "NETWORK_GET_EXECUTION_TIME" }, + { RequestType::TOKEN_PAUSE, "TOKEN_PAUSE" }, + { RequestType::TOKEN_UNPAUSE, "TOKEN_UNPAUSE" }, + { RequestType::CRYPTO_APPROVE_ALLOWANCE, "CRYPTO_APPROVE_ALLOWANCE" }, + { RequestType::CRYPTO_DELETE_ALLOWANCE, "CRYPTO_DELETE_ALLOWANCE" }, + { RequestType::GET_ACCOUNT_DETAILS, "GET_ACCOUNT_DETAILS" }, + { RequestType::ETHEREUM_TRANSACTION, "ETHEREUM_TRANSACTION" }, + { RequestType::NODE_STAKE_UPDATE, "NODE_STAKE_UPDATE" }, + { RequestType::UTIL_PRNG, "UTIL_PRNG" }, + { RequestType::TOKEN_UPDATE_NFTS, "TOKEN_UPDATE_NFTS" }, }; } // namespace Hiero diff --git a/src/sdk/main/src/Status.cc b/src/sdk/main/src/Status.cc index 4f6c8ccd8..4856d07a8 100644 --- a/src/sdk/main/src/Status.cc +++ b/src/sdk/main/src/Status.cc @@ -7,1004 +7,1004 @@ namespace Hiero { //----- const std::unordered_map gProtobufResponseCodeToStatus = { - { proto::ResponseCodeEnum::OK, Status::OK }, - { proto::ResponseCodeEnum::INVALID_TRANSACTION, Status::INVALID_TRANSACTION }, - { proto::ResponseCodeEnum::PAYER_ACCOUNT_NOT_FOUND, Status::PAYER_ACCOUNT_NOT_FOUND }, - { proto::ResponseCodeEnum::INVALID_NODE_ACCOUNT, Status::INVALID_NODE_ACCOUNT }, - { proto::ResponseCodeEnum::TRANSACTION_EXPIRED, Status::TRANSACTION_EXPIRED }, - { proto::ResponseCodeEnum::INVALID_TRANSACTION_START, Status::INVALID_TRANSACTION_START }, - { proto::ResponseCodeEnum::INVALID_TRANSACTION_DURATION, Status::INVALID_TRANSACTION_DURATION }, - { proto::ResponseCodeEnum::INVALID_SIGNATURE, Status::INVALID_SIGNATURE }, - { proto::ResponseCodeEnum::MEMO_TOO_LONG, Status::MEMO_TOO_LONG }, - { proto::ResponseCodeEnum::INSUFFICIENT_TX_FEE, Status::INSUFFICIENT_TX_FEE }, - { proto::ResponseCodeEnum::INSUFFICIENT_PAYER_BALANCE, Status::INSUFFICIENT_PAYER_BALANCE }, - { proto::ResponseCodeEnum::DUPLICATE_TRANSACTION, Status::DUPLICATE_TRANSACTION }, - { proto::ResponseCodeEnum::BUSY, Status::BUSY }, - { proto::ResponseCodeEnum::NOT_SUPPORTED, Status::NOT_SUPPORTED }, - { proto::ResponseCodeEnum::INVALID_FILE_ID, Status::INVALID_FILE_ID }, - { proto::ResponseCodeEnum::INVALID_ACCOUNT_ID, Status::INVALID_ACCOUNT_ID }, - { proto::ResponseCodeEnum::INVALID_CONTRACT_ID, Status::INVALID_CONTRACT_ID }, - { proto::ResponseCodeEnum::INVALID_TRANSACTION_ID, Status::INVALID_TRANSACTION_ID }, - { proto::ResponseCodeEnum::RECEIPT_NOT_FOUND, Status::RECEIPT_NOT_FOUND }, - { proto::ResponseCodeEnum::RECORD_NOT_FOUND, Status::RECORD_NOT_FOUND }, - { proto::ResponseCodeEnum::INVALID_SOLIDITY_ID, Status::INVALID_SOLIDITY_ID }, - { proto::ResponseCodeEnum::UNKNOWN, Status::UNKNOWN }, - { proto::ResponseCodeEnum::SUCCESS, Status::SUCCESS }, - { proto::ResponseCodeEnum::FAIL_INVALID, Status::FAIL_INVALID }, - { proto::ResponseCodeEnum::FAIL_FEE, Status::FAIL_FEE }, - { proto::ResponseCodeEnum::FAIL_BALANCE, Status::FAIL_BALANCE }, - { proto::ResponseCodeEnum::KEY_REQUIRED, Status::KEY_REQUIRED }, - { proto::ResponseCodeEnum::BAD_ENCODING, Status::BAD_ENCODING }, - { proto::ResponseCodeEnum::INSUFFICIENT_ACCOUNT_BALANCE, Status::INSUFFICIENT_ACCOUNT_BALANCE }, - { proto::ResponseCodeEnum::INVALID_SOLIDITY_ADDRESS, Status::INVALID_SOLIDITY_ADDRESS }, - { proto::ResponseCodeEnum::INSUFFICIENT_GAS, Status::INSUFFICIENT_GAS }, - { proto::ResponseCodeEnum::CONTRACT_SIZE_LIMIT_EXCEEDED, Status::CONTRACT_SIZE_LIMIT_EXCEEDED }, - { proto::ResponseCodeEnum::LOCAL_CALL_MODIFICATION_EXCEPTION, Status::LOCAL_CALL_MODIFICATION_EXCEPTION }, - { proto::ResponseCodeEnum::CONTRACT_REVERT_EXECUTED, Status::CONTRACT_REVERT_EXECUTED }, - { proto::ResponseCodeEnum::CONTRACT_EXECUTION_EXCEPTION, Status::CONTRACT_EXECUTION_EXCEPTION }, - { proto::ResponseCodeEnum::INVALID_RECEIVING_NODE_ACCOUNT, Status::INVALID_RECEIVING_NODE_ACCOUNT }, - { proto::ResponseCodeEnum::MISSING_QUERY_HEADER, Status::MISSING_QUERY_HEADER }, - { proto::ResponseCodeEnum::ACCOUNT_UPDATE_FAILED, Status::ACCOUNT_UPDATE_FAILED }, - { proto::ResponseCodeEnum::INVALID_KEY_ENCODING, Status::INVALID_KEY_ENCODING }, - { proto::ResponseCodeEnum::NULL_SOLIDITY_ADDRESS, Status::NULL_SOLIDITY_ADDRESS }, - { proto::ResponseCodeEnum::CONTRACT_UPDATE_FAILED, Status::CONTRACT_UPDATE_FAILED }, - { proto::ResponseCodeEnum::INVALID_QUERY_HEADER, Status::INVALID_QUERY_HEADER }, - { proto::ResponseCodeEnum::INVALID_FEE_SUBMITTED, Status::INVALID_FEE_SUBMITTED }, - { proto::ResponseCodeEnum::INVALID_PAYER_SIGNATURE, Status::INVALID_PAYER_SIGNATURE }, - { proto::ResponseCodeEnum::KEY_NOT_PROVIDED, Status::KEY_NOT_PROVIDED }, - { proto::ResponseCodeEnum::INVALID_EXPIRATION_TIME, Status::INVALID_EXPIRATION_TIME }, - { proto::ResponseCodeEnum::NO_WACL_KEY, Status::NO_WACL_KEY }, - { proto::ResponseCodeEnum::FILE_CONTENT_EMPTY, Status::FILE_CONTENT_EMPTY }, - { proto::ResponseCodeEnum::INVALID_ACCOUNT_AMOUNTS, Status::INVALID_ACCOUNT_AMOUNTS }, - { proto::ResponseCodeEnum::EMPTY_TRANSACTION_BODY, Status::EMPTY_TRANSACTION_BODY }, - { proto::ResponseCodeEnum::INVALID_TRANSACTION_BODY, Status::INVALID_TRANSACTION_BODY }, - { proto::ResponseCodeEnum::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY, Status::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY }, - { proto::ResponseCodeEnum::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY, Status::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY }, - { proto::ResponseCodeEnum::EMPTY_LIVE_HASH_BODY, Status::EMPTY_LIVE_HASH_BODY }, - { proto::ResponseCodeEnum::EMPTY_LIVE_HASH, Status::EMPTY_LIVE_HASH }, - { proto::ResponseCodeEnum::EMPTY_LIVE_HASH_KEYS, Status::EMPTY_LIVE_HASH_KEYS }, - { proto::ResponseCodeEnum::INVALID_LIVE_HASH_SIZE, Status::INVALID_LIVE_HASH_SIZE }, - { proto::ResponseCodeEnum::EMPTY_QUERY_BODY, Status::EMPTY_QUERY_BODY }, - { proto::ResponseCodeEnum::EMPTY_LIVE_HASH_QUERY, Status::EMPTY_LIVE_HASH_QUERY }, - { proto::ResponseCodeEnum::LIVE_HASH_NOT_FOUND, Status::LIVE_HASH_NOT_FOUND }, - { proto::ResponseCodeEnum::ACCOUNT_ID_DOES_NOT_EXIST, Status::ACCOUNT_ID_DOES_NOT_EXIST }, - { proto::ResponseCodeEnum::LIVE_HASH_ALREADY_EXISTS, Status::LIVE_HASH_ALREADY_EXISTS }, - { proto::ResponseCodeEnum::INVALID_FILE_WACL, Status::INVALID_FILE_WACL }, - { proto::ResponseCodeEnum::SERIALIZATION_FAILED, Status::SERIALIZATION_FAILED }, - { proto::ResponseCodeEnum::TRANSACTION_OVERSIZE, Status::TRANSACTION_OVERSIZE }, - { proto::ResponseCodeEnum::TRANSACTION_TOO_MANY_LAYERS, Status::TRANSACTION_TOO_MANY_LAYERS }, - { proto::ResponseCodeEnum::CONTRACT_DELETED, Status::CONTRACT_DELETED }, - { proto::ResponseCodeEnum::PLATFORM_NOT_ACTIVE, Status::PLATFORM_NOT_ACTIVE }, - { proto::ResponseCodeEnum::KEY_PREFIX_MISMATCH, Status::KEY_PREFIX_MISMATCH }, - { proto::ResponseCodeEnum::PLATFORM_TRANSACTION_NOT_CREATED, Status::PLATFORM_TRANSACTION_NOT_CREATED }, - { proto::ResponseCodeEnum::INVALID_RENEWAL_PERIOD, Status::INVALID_RENEWAL_PERIOD }, - { proto::ResponseCodeEnum::INVALID_PAYER_ACCOUNT_ID, Status::INVALID_PAYER_ACCOUNT_ID }, - { proto::ResponseCodeEnum::ACCOUNT_DELETED, Status::ACCOUNT_DELETED }, - { proto::ResponseCodeEnum::FILE_DELETED, Status::FILE_DELETED }, - { proto::ResponseCodeEnum::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS, Status::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS }, - { proto::ResponseCodeEnum::SETTING_NEGATIVE_ACCOUNT_BALANCE, Status::SETTING_NEGATIVE_ACCOUNT_BALANCE }, - { proto::ResponseCodeEnum::OBTAINER_REQUIRED, Status::OBTAINER_REQUIRED }, - { proto::ResponseCodeEnum::OBTAINER_SAME_CONTRACT_ID, Status::OBTAINER_SAME_CONTRACT_ID }, - { proto::ResponseCodeEnum::OBTAINER_DOES_NOT_EXIST, Status::OBTAINER_DOES_NOT_EXIST }, - { proto::ResponseCodeEnum::MODIFYING_IMMUTABLE_CONTRACT, Status::MODIFYING_IMMUTABLE_CONTRACT }, - { proto::ResponseCodeEnum::FILE_SYSTEM_EXCEPTION, Status::FILE_SYSTEM_EXCEPTION }, - { proto::ResponseCodeEnum::AUTORENEW_DURATION_NOT_IN_RANGE, Status::AUTORENEW_DURATION_NOT_IN_RANGE }, - { proto::ResponseCodeEnum::ERROR_DECODING_BYTESTRING, Status::ERROR_DECODING_BYTESTRING }, - { proto::ResponseCodeEnum::CONTRACT_FILE_EMPTY, Status::CONTRACT_FILE_EMPTY }, - { proto::ResponseCodeEnum::CONTRACT_BYTECODE_EMPTY, Status::CONTRACT_BYTECODE_EMPTY }, - { proto::ResponseCodeEnum::INVALID_INITIAL_BALANCE, Status::INVALID_INITIAL_BALANCE }, - { proto::ResponseCodeEnum::ACCOUNT_IS_NOT_GENESIS_ACCOUNT, Status::ACCOUNT_IS_NOT_GENESIS_ACCOUNT }, - { proto::ResponseCodeEnum::PAYER_ACCOUNT_UNAUTHORIZED, Status::PAYER_ACCOUNT_UNAUTHORIZED }, - { proto::ResponseCodeEnum::INVALID_FREEZE_TRANSACTION_BODY, Status::INVALID_FREEZE_TRANSACTION_BODY }, - { proto::ResponseCodeEnum::FREEZE_TRANSACTION_BODY_NOT_FOUND, Status::FREEZE_TRANSACTION_BODY_NOT_FOUND }, - { proto::ResponseCodeEnum::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, Status::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED }, - { proto::ResponseCodeEnum::RESULT_SIZE_LIMIT_EXCEEDED, Status::RESULT_SIZE_LIMIT_EXCEEDED }, - { proto::ResponseCodeEnum::NOT_SPECIAL_ACCOUNT, Status::NOT_SPECIAL_ACCOUNT }, - { proto::ResponseCodeEnum::CONTRACT_NEGATIVE_GAS, Status::CONTRACT_NEGATIVE_GAS }, - { proto::ResponseCodeEnum::CONTRACT_NEGATIVE_VALUE, Status::CONTRACT_NEGATIVE_VALUE }, - { proto::ResponseCodeEnum::INVALID_FEE_FILE, Status::INVALID_FEE_FILE }, - { proto::ResponseCodeEnum::INVALID_EXCHANGE_RATE_FILE, Status::INVALID_EXCHANGE_RATE_FILE }, - { proto::ResponseCodeEnum::INSUFFICIENT_LOCAL_CALL_GAS, Status::INSUFFICIENT_LOCAL_CALL_GAS }, - { proto::ResponseCodeEnum::ENTITY_NOT_ALLOWED_TO_DELETE, Status::ENTITY_NOT_ALLOWED_TO_DELETE }, - { proto::ResponseCodeEnum::AUTHORIZATION_FAILED, Status::AUTHORIZATION_FAILED }, - { proto::ResponseCodeEnum::FILE_UPLOADED_PROTO_INVALID, Status::FILE_UPLOADED_PROTO_INVALID }, - { proto::ResponseCodeEnum::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK, Status::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK }, - { proto::ResponseCodeEnum::FEE_SCHEDULE_FILE_PART_UPLOADED, Status::FEE_SCHEDULE_FILE_PART_UPLOADED }, - { proto::ResponseCodeEnum::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED, Status::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED }, - { proto::ResponseCodeEnum::MAX_CONTRACT_STORAGE_EXCEEDED, Status::MAX_CONTRACT_STORAGE_EXCEEDED }, - { proto::ResponseCodeEnum::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT, Status::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT }, - { proto::ResponseCodeEnum::TOTAL_LEDGER_BALANCE_INVALID, Status::TOTAL_LEDGER_BALANCE_INVALID }, - { proto::ResponseCodeEnum::EXPIRATION_REDUCTION_NOT_ALLOWED, Status::EXPIRATION_REDUCTION_NOT_ALLOWED }, - { proto::ResponseCodeEnum::MAX_GAS_LIMIT_EXCEEDED, Status::MAX_GAS_LIMIT_EXCEEDED }, - { proto::ResponseCodeEnum::MAX_FILE_SIZE_EXCEEDED, Status::MAX_FILE_SIZE_EXCEEDED }, - { proto::ResponseCodeEnum::RECEIVER_SIG_REQUIRED, Status::RECEIVER_SIG_REQUIRED }, - { proto::ResponseCodeEnum::INVALID_TOPIC_ID, Status::INVALID_TOPIC_ID }, - { proto::ResponseCodeEnum::INVALID_ADMIN_KEY, Status::INVALID_ADMIN_KEY }, - { proto::ResponseCodeEnum::INVALID_SUBMIT_KEY, Status::INVALID_SUBMIT_KEY }, - { proto::ResponseCodeEnum::UNAUTHORIZED, Status::UNAUTHORIZED }, - { proto::ResponseCodeEnum::INVALID_TOPIC_MESSAGE, Status::INVALID_TOPIC_MESSAGE }, - { proto::ResponseCodeEnum::INVALID_AUTORENEW_ACCOUNT, Status::INVALID_AUTORENEW_ACCOUNT }, - { proto::ResponseCodeEnum::AUTORENEW_ACCOUNT_NOT_ALLOWED, Status::AUTORENEW_ACCOUNT_NOT_ALLOWED }, - { proto::ResponseCodeEnum::TOPIC_EXPIRED, Status::TOPIC_EXPIRED }, - { proto::ResponseCodeEnum::INVALID_CHUNK_NUMBER, Status::INVALID_CHUNK_NUMBER }, - { proto::ResponseCodeEnum::INVALID_CHUNK_TRANSACTION_ID, Status::INVALID_CHUNK_TRANSACTION_ID }, - { proto::ResponseCodeEnum::ACCOUNT_FROZEN_FOR_TOKEN, Status::ACCOUNT_FROZEN_FOR_TOKEN }, - { proto::ResponseCodeEnum::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED, Status::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED }, - { proto::ResponseCodeEnum::INVALID_TOKEN_ID, Status::INVALID_TOKEN_ID }, - { proto::ResponseCodeEnum::INVALID_TOKEN_DECIMALS, Status::INVALID_TOKEN_DECIMALS }, - { proto::ResponseCodeEnum::INVALID_TOKEN_INITIAL_SUPPLY, Status::INVALID_TOKEN_INITIAL_SUPPLY }, - { proto::ResponseCodeEnum::INVALID_TREASURY_ACCOUNT_FOR_TOKEN, Status::INVALID_TREASURY_ACCOUNT_FOR_TOKEN }, - { proto::ResponseCodeEnum::INVALID_TOKEN_SYMBOL, Status::INVALID_TOKEN_SYMBOL }, - { proto::ResponseCodeEnum::TOKEN_HAS_NO_FREEZE_KEY, Status::TOKEN_HAS_NO_FREEZE_KEY }, - { proto::ResponseCodeEnum::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN, Status::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN }, - { proto::ResponseCodeEnum::MISSING_TOKEN_SYMBOL, Status::MISSING_TOKEN_SYMBOL }, - { proto::ResponseCodeEnum::TOKEN_SYMBOL_TOO_LONG, Status::TOKEN_SYMBOL_TOO_LONG }, - { proto::ResponseCodeEnum::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN, Status::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN }, - { proto::ResponseCodeEnum::TOKEN_HAS_NO_KYC_KEY, Status::TOKEN_HAS_NO_KYC_KEY }, - { proto::ResponseCodeEnum::INSUFFICIENT_TOKEN_BALANCE, Status::INSUFFICIENT_TOKEN_BALANCE }, - { proto::ResponseCodeEnum::TOKEN_WAS_DELETED, Status::TOKEN_WAS_DELETED }, - { proto::ResponseCodeEnum::TOKEN_HAS_NO_SUPPLY_KEY, Status::TOKEN_HAS_NO_SUPPLY_KEY }, - { proto::ResponseCodeEnum::TOKEN_HAS_NO_WIPE_KEY, Status::TOKEN_HAS_NO_WIPE_KEY }, - { proto::ResponseCodeEnum::INVALID_TOKEN_MINT_AMOUNT, Status::INVALID_TOKEN_MINT_AMOUNT }, - { proto::ResponseCodeEnum::INVALID_TOKEN_BURN_AMOUNT, Status::INVALID_TOKEN_BURN_AMOUNT }, - { proto::ResponseCodeEnum::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT, Status::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT }, - { proto::ResponseCodeEnum::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT, Status::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT }, - { proto::ResponseCodeEnum::INVALID_KYC_KEY, Status::INVALID_KYC_KEY }, - { proto::ResponseCodeEnum::INVALID_WIPE_KEY, Status::INVALID_WIPE_KEY }, - { proto::ResponseCodeEnum::INVALID_FREEZE_KEY, Status::INVALID_FREEZE_KEY }, - { proto::ResponseCodeEnum::INVALID_SUPPLY_KEY, Status::INVALID_SUPPLY_KEY }, - { proto::ResponseCodeEnum::MISSING_TOKEN_NAME, Status::MISSING_TOKEN_NAME }, - { proto::ResponseCodeEnum::TOKEN_NAME_TOO_LONG, Status::TOKEN_NAME_TOO_LONG }, - { proto::ResponseCodeEnum::INVALID_WIPING_AMOUNT, Status::INVALID_WIPING_AMOUNT }, - { proto::ResponseCodeEnum::TOKEN_IS_IMMUTABLE, Status::TOKEN_IS_IMMUTABLE }, - { proto::ResponseCodeEnum::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT, Status::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT }, + {proto::ResponseCodeEnum::OK, Status::OK }, + { proto::ResponseCodeEnum::INVALID_TRANSACTION, Status::INVALID_TRANSACTION }, + { proto::ResponseCodeEnum::PAYER_ACCOUNT_NOT_FOUND, Status::PAYER_ACCOUNT_NOT_FOUND }, + { proto::ResponseCodeEnum::INVALID_NODE_ACCOUNT, Status::INVALID_NODE_ACCOUNT }, + { proto::ResponseCodeEnum::TRANSACTION_EXPIRED, Status::TRANSACTION_EXPIRED }, + { proto::ResponseCodeEnum::INVALID_TRANSACTION_START, Status::INVALID_TRANSACTION_START }, + { proto::ResponseCodeEnum::INVALID_TRANSACTION_DURATION, Status::INVALID_TRANSACTION_DURATION }, + { proto::ResponseCodeEnum::INVALID_SIGNATURE, Status::INVALID_SIGNATURE }, + { proto::ResponseCodeEnum::MEMO_TOO_LONG, Status::MEMO_TOO_LONG }, + { proto::ResponseCodeEnum::INSUFFICIENT_TX_FEE, Status::INSUFFICIENT_TX_FEE }, + { proto::ResponseCodeEnum::INSUFFICIENT_PAYER_BALANCE, Status::INSUFFICIENT_PAYER_BALANCE }, + { proto::ResponseCodeEnum::DUPLICATE_TRANSACTION, Status::DUPLICATE_TRANSACTION }, + { proto::ResponseCodeEnum::BUSY, Status::BUSY }, + { proto::ResponseCodeEnum::NOT_SUPPORTED, Status::NOT_SUPPORTED }, + { proto::ResponseCodeEnum::INVALID_FILE_ID, Status::INVALID_FILE_ID }, + { proto::ResponseCodeEnum::INVALID_ACCOUNT_ID, Status::INVALID_ACCOUNT_ID }, + { proto::ResponseCodeEnum::INVALID_CONTRACT_ID, Status::INVALID_CONTRACT_ID }, + { proto::ResponseCodeEnum::INVALID_TRANSACTION_ID, Status::INVALID_TRANSACTION_ID }, + { proto::ResponseCodeEnum::RECEIPT_NOT_FOUND, Status::RECEIPT_NOT_FOUND }, + { proto::ResponseCodeEnum::RECORD_NOT_FOUND, Status::RECORD_NOT_FOUND }, + { proto::ResponseCodeEnum::INVALID_SOLIDITY_ID, Status::INVALID_SOLIDITY_ID }, + { proto::ResponseCodeEnum::UNKNOWN, Status::UNKNOWN }, + { proto::ResponseCodeEnum::SUCCESS, Status::SUCCESS }, + { proto::ResponseCodeEnum::FAIL_INVALID, Status::FAIL_INVALID }, + { proto::ResponseCodeEnum::FAIL_FEE, Status::FAIL_FEE }, + { proto::ResponseCodeEnum::FAIL_BALANCE, Status::FAIL_BALANCE }, + { proto::ResponseCodeEnum::KEY_REQUIRED, Status::KEY_REQUIRED }, + { proto::ResponseCodeEnum::BAD_ENCODING, Status::BAD_ENCODING }, + { proto::ResponseCodeEnum::INSUFFICIENT_ACCOUNT_BALANCE, Status::INSUFFICIENT_ACCOUNT_BALANCE }, + { proto::ResponseCodeEnum::INVALID_SOLIDITY_ADDRESS, Status::INVALID_SOLIDITY_ADDRESS }, + { proto::ResponseCodeEnum::INSUFFICIENT_GAS, Status::INSUFFICIENT_GAS }, + { proto::ResponseCodeEnum::CONTRACT_SIZE_LIMIT_EXCEEDED, Status::CONTRACT_SIZE_LIMIT_EXCEEDED }, + { proto::ResponseCodeEnum::LOCAL_CALL_MODIFICATION_EXCEPTION, Status::LOCAL_CALL_MODIFICATION_EXCEPTION }, + { proto::ResponseCodeEnum::CONTRACT_REVERT_EXECUTED, Status::CONTRACT_REVERT_EXECUTED }, + { proto::ResponseCodeEnum::CONTRACT_EXECUTION_EXCEPTION, Status::CONTRACT_EXECUTION_EXCEPTION }, + { proto::ResponseCodeEnum::INVALID_RECEIVING_NODE_ACCOUNT, Status::INVALID_RECEIVING_NODE_ACCOUNT }, + { proto::ResponseCodeEnum::MISSING_QUERY_HEADER, Status::MISSING_QUERY_HEADER }, + { proto::ResponseCodeEnum::ACCOUNT_UPDATE_FAILED, Status::ACCOUNT_UPDATE_FAILED }, + { proto::ResponseCodeEnum::INVALID_KEY_ENCODING, Status::INVALID_KEY_ENCODING }, + { proto::ResponseCodeEnum::NULL_SOLIDITY_ADDRESS, Status::NULL_SOLIDITY_ADDRESS }, + { proto::ResponseCodeEnum::CONTRACT_UPDATE_FAILED, Status::CONTRACT_UPDATE_FAILED }, + { proto::ResponseCodeEnum::INVALID_QUERY_HEADER, Status::INVALID_QUERY_HEADER }, + { proto::ResponseCodeEnum::INVALID_FEE_SUBMITTED, Status::INVALID_FEE_SUBMITTED }, + { proto::ResponseCodeEnum::INVALID_PAYER_SIGNATURE, Status::INVALID_PAYER_SIGNATURE }, + { proto::ResponseCodeEnum::KEY_NOT_PROVIDED, Status::KEY_NOT_PROVIDED }, + { proto::ResponseCodeEnum::INVALID_EXPIRATION_TIME, Status::INVALID_EXPIRATION_TIME }, + { proto::ResponseCodeEnum::NO_WACL_KEY, Status::NO_WACL_KEY }, + { proto::ResponseCodeEnum::FILE_CONTENT_EMPTY, Status::FILE_CONTENT_EMPTY }, + { proto::ResponseCodeEnum::INVALID_ACCOUNT_AMOUNTS, Status::INVALID_ACCOUNT_AMOUNTS }, + { proto::ResponseCodeEnum::EMPTY_TRANSACTION_BODY, Status::EMPTY_TRANSACTION_BODY }, + { proto::ResponseCodeEnum::INVALID_TRANSACTION_BODY, Status::INVALID_TRANSACTION_BODY }, + { proto::ResponseCodeEnum::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY, Status::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY }, + { proto::ResponseCodeEnum::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY, Status::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY}, + { proto::ResponseCodeEnum::EMPTY_LIVE_HASH_BODY, Status::EMPTY_LIVE_HASH_BODY }, + { proto::ResponseCodeEnum::EMPTY_LIVE_HASH, Status::EMPTY_LIVE_HASH }, + { proto::ResponseCodeEnum::EMPTY_LIVE_HASH_KEYS, Status::EMPTY_LIVE_HASH_KEYS }, + { proto::ResponseCodeEnum::INVALID_LIVE_HASH_SIZE, Status::INVALID_LIVE_HASH_SIZE }, + { proto::ResponseCodeEnum::EMPTY_QUERY_BODY, Status::EMPTY_QUERY_BODY }, + { proto::ResponseCodeEnum::EMPTY_LIVE_HASH_QUERY, Status::EMPTY_LIVE_HASH_QUERY }, + { proto::ResponseCodeEnum::LIVE_HASH_NOT_FOUND, Status::LIVE_HASH_NOT_FOUND }, + { proto::ResponseCodeEnum::ACCOUNT_ID_DOES_NOT_EXIST, Status::ACCOUNT_ID_DOES_NOT_EXIST }, + { proto::ResponseCodeEnum::LIVE_HASH_ALREADY_EXISTS, Status::LIVE_HASH_ALREADY_EXISTS }, + { proto::ResponseCodeEnum::INVALID_FILE_WACL, Status::INVALID_FILE_WACL }, + { proto::ResponseCodeEnum::SERIALIZATION_FAILED, Status::SERIALIZATION_FAILED }, + { proto::ResponseCodeEnum::TRANSACTION_OVERSIZE, Status::TRANSACTION_OVERSIZE }, + { proto::ResponseCodeEnum::TRANSACTION_TOO_MANY_LAYERS, Status::TRANSACTION_TOO_MANY_LAYERS }, + { proto::ResponseCodeEnum::CONTRACT_DELETED, Status::CONTRACT_DELETED }, + { proto::ResponseCodeEnum::PLATFORM_NOT_ACTIVE, Status::PLATFORM_NOT_ACTIVE }, + { proto::ResponseCodeEnum::KEY_PREFIX_MISMATCH, Status::KEY_PREFIX_MISMATCH }, + { proto::ResponseCodeEnum::PLATFORM_TRANSACTION_NOT_CREATED, Status::PLATFORM_TRANSACTION_NOT_CREATED }, + { proto::ResponseCodeEnum::INVALID_RENEWAL_PERIOD, Status::INVALID_RENEWAL_PERIOD }, + { proto::ResponseCodeEnum::INVALID_PAYER_ACCOUNT_ID, Status::INVALID_PAYER_ACCOUNT_ID }, + { proto::ResponseCodeEnum::ACCOUNT_DELETED, Status::ACCOUNT_DELETED }, + { proto::ResponseCodeEnum::FILE_DELETED, Status::FILE_DELETED }, + { proto::ResponseCodeEnum::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS, Status::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS }, + { proto::ResponseCodeEnum::SETTING_NEGATIVE_ACCOUNT_BALANCE, Status::SETTING_NEGATIVE_ACCOUNT_BALANCE }, + { proto::ResponseCodeEnum::OBTAINER_REQUIRED, Status::OBTAINER_REQUIRED }, + { proto::ResponseCodeEnum::OBTAINER_SAME_CONTRACT_ID, Status::OBTAINER_SAME_CONTRACT_ID }, + { proto::ResponseCodeEnum::OBTAINER_DOES_NOT_EXIST, Status::OBTAINER_DOES_NOT_EXIST }, + { proto::ResponseCodeEnum::MODIFYING_IMMUTABLE_CONTRACT, Status::MODIFYING_IMMUTABLE_CONTRACT }, + { proto::ResponseCodeEnum::FILE_SYSTEM_EXCEPTION, Status::FILE_SYSTEM_EXCEPTION }, + { proto::ResponseCodeEnum::AUTORENEW_DURATION_NOT_IN_RANGE, Status::AUTORENEW_DURATION_NOT_IN_RANGE }, + { proto::ResponseCodeEnum::ERROR_DECODING_BYTESTRING, Status::ERROR_DECODING_BYTESTRING }, + { proto::ResponseCodeEnum::CONTRACT_FILE_EMPTY, Status::CONTRACT_FILE_EMPTY }, + { proto::ResponseCodeEnum::CONTRACT_BYTECODE_EMPTY, Status::CONTRACT_BYTECODE_EMPTY }, + { proto::ResponseCodeEnum::INVALID_INITIAL_BALANCE, Status::INVALID_INITIAL_BALANCE }, + { proto::ResponseCodeEnum::ACCOUNT_IS_NOT_GENESIS_ACCOUNT, Status::ACCOUNT_IS_NOT_GENESIS_ACCOUNT }, + { proto::ResponseCodeEnum::PAYER_ACCOUNT_UNAUTHORIZED, Status::PAYER_ACCOUNT_UNAUTHORIZED }, + { proto::ResponseCodeEnum::INVALID_FREEZE_TRANSACTION_BODY, Status::INVALID_FREEZE_TRANSACTION_BODY }, + { proto::ResponseCodeEnum::FREEZE_TRANSACTION_BODY_NOT_FOUND, Status::FREEZE_TRANSACTION_BODY_NOT_FOUND }, + { proto::ResponseCodeEnum::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, Status::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED }, + { proto::ResponseCodeEnum::RESULT_SIZE_LIMIT_EXCEEDED, Status::RESULT_SIZE_LIMIT_EXCEEDED }, + { proto::ResponseCodeEnum::NOT_SPECIAL_ACCOUNT, Status::NOT_SPECIAL_ACCOUNT }, + { proto::ResponseCodeEnum::CONTRACT_NEGATIVE_GAS, Status::CONTRACT_NEGATIVE_GAS }, + { proto::ResponseCodeEnum::CONTRACT_NEGATIVE_VALUE, Status::CONTRACT_NEGATIVE_VALUE }, + { proto::ResponseCodeEnum::INVALID_FEE_FILE, Status::INVALID_FEE_FILE }, + { proto::ResponseCodeEnum::INVALID_EXCHANGE_RATE_FILE, Status::INVALID_EXCHANGE_RATE_FILE }, + { proto::ResponseCodeEnum::INSUFFICIENT_LOCAL_CALL_GAS, Status::INSUFFICIENT_LOCAL_CALL_GAS }, + { proto::ResponseCodeEnum::ENTITY_NOT_ALLOWED_TO_DELETE, Status::ENTITY_NOT_ALLOWED_TO_DELETE }, + { proto::ResponseCodeEnum::AUTHORIZATION_FAILED, Status::AUTHORIZATION_FAILED }, + { proto::ResponseCodeEnum::FILE_UPLOADED_PROTO_INVALID, Status::FILE_UPLOADED_PROTO_INVALID }, + { proto::ResponseCodeEnum::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK, Status::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK }, + { proto::ResponseCodeEnum::FEE_SCHEDULE_FILE_PART_UPLOADED, Status::FEE_SCHEDULE_FILE_PART_UPLOADED }, + { proto::ResponseCodeEnum::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED, Status::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED }, + { proto::ResponseCodeEnum::MAX_CONTRACT_STORAGE_EXCEEDED, Status::MAX_CONTRACT_STORAGE_EXCEEDED }, + { proto::ResponseCodeEnum::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT, Status::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT}, + { proto::ResponseCodeEnum::TOTAL_LEDGER_BALANCE_INVALID, Status::TOTAL_LEDGER_BALANCE_INVALID }, + { proto::ResponseCodeEnum::EXPIRATION_REDUCTION_NOT_ALLOWED, Status::EXPIRATION_REDUCTION_NOT_ALLOWED }, + { proto::ResponseCodeEnum::MAX_GAS_LIMIT_EXCEEDED, Status::MAX_GAS_LIMIT_EXCEEDED }, + { proto::ResponseCodeEnum::MAX_FILE_SIZE_EXCEEDED, Status::MAX_FILE_SIZE_EXCEEDED }, + { proto::ResponseCodeEnum::RECEIVER_SIG_REQUIRED, Status::RECEIVER_SIG_REQUIRED }, + { proto::ResponseCodeEnum::INVALID_TOPIC_ID, Status::INVALID_TOPIC_ID }, + { proto::ResponseCodeEnum::INVALID_ADMIN_KEY, Status::INVALID_ADMIN_KEY }, + { proto::ResponseCodeEnum::INVALID_SUBMIT_KEY, Status::INVALID_SUBMIT_KEY }, + { proto::ResponseCodeEnum::UNAUTHORIZED, Status::UNAUTHORIZED }, + { proto::ResponseCodeEnum::INVALID_TOPIC_MESSAGE, Status::INVALID_TOPIC_MESSAGE }, + { proto::ResponseCodeEnum::INVALID_AUTORENEW_ACCOUNT, Status::INVALID_AUTORENEW_ACCOUNT }, + { proto::ResponseCodeEnum::AUTORENEW_ACCOUNT_NOT_ALLOWED, Status::AUTORENEW_ACCOUNT_NOT_ALLOWED }, + { proto::ResponseCodeEnum::TOPIC_EXPIRED, Status::TOPIC_EXPIRED }, + { proto::ResponseCodeEnum::INVALID_CHUNK_NUMBER, Status::INVALID_CHUNK_NUMBER }, + { proto::ResponseCodeEnum::INVALID_CHUNK_TRANSACTION_ID, Status::INVALID_CHUNK_TRANSACTION_ID }, + { proto::ResponseCodeEnum::ACCOUNT_FROZEN_FOR_TOKEN, Status::ACCOUNT_FROZEN_FOR_TOKEN }, + { proto::ResponseCodeEnum::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED, Status::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED }, + { proto::ResponseCodeEnum::INVALID_TOKEN_ID, Status::INVALID_TOKEN_ID }, + { proto::ResponseCodeEnum::INVALID_TOKEN_DECIMALS, Status::INVALID_TOKEN_DECIMALS }, + { proto::ResponseCodeEnum::INVALID_TOKEN_INITIAL_SUPPLY, Status::INVALID_TOKEN_INITIAL_SUPPLY }, + { proto::ResponseCodeEnum::INVALID_TREASURY_ACCOUNT_FOR_TOKEN, Status::INVALID_TREASURY_ACCOUNT_FOR_TOKEN }, + { proto::ResponseCodeEnum::INVALID_TOKEN_SYMBOL, Status::INVALID_TOKEN_SYMBOL }, + { proto::ResponseCodeEnum::TOKEN_HAS_NO_FREEZE_KEY, Status::TOKEN_HAS_NO_FREEZE_KEY }, + { proto::ResponseCodeEnum::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN, Status::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN }, + { proto::ResponseCodeEnum::MISSING_TOKEN_SYMBOL, Status::MISSING_TOKEN_SYMBOL }, + { proto::ResponseCodeEnum::TOKEN_SYMBOL_TOO_LONG, Status::TOKEN_SYMBOL_TOO_LONG }, + { proto::ResponseCodeEnum::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN, Status::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN }, + { proto::ResponseCodeEnum::TOKEN_HAS_NO_KYC_KEY, Status::TOKEN_HAS_NO_KYC_KEY }, + { proto::ResponseCodeEnum::INSUFFICIENT_TOKEN_BALANCE, Status::INSUFFICIENT_TOKEN_BALANCE }, + { proto::ResponseCodeEnum::TOKEN_WAS_DELETED, Status::TOKEN_WAS_DELETED }, + { proto::ResponseCodeEnum::TOKEN_HAS_NO_SUPPLY_KEY, Status::TOKEN_HAS_NO_SUPPLY_KEY }, + { proto::ResponseCodeEnum::TOKEN_HAS_NO_WIPE_KEY, Status::TOKEN_HAS_NO_WIPE_KEY }, + { proto::ResponseCodeEnum::INVALID_TOKEN_MINT_AMOUNT, Status::INVALID_TOKEN_MINT_AMOUNT }, + { proto::ResponseCodeEnum::INVALID_TOKEN_BURN_AMOUNT, Status::INVALID_TOKEN_BURN_AMOUNT }, + { proto::ResponseCodeEnum::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT, Status::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT }, + { proto::ResponseCodeEnum::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT, Status::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT }, + { proto::ResponseCodeEnum::INVALID_KYC_KEY, Status::INVALID_KYC_KEY }, + { proto::ResponseCodeEnum::INVALID_WIPE_KEY, Status::INVALID_WIPE_KEY }, + { proto::ResponseCodeEnum::INVALID_FREEZE_KEY, Status::INVALID_FREEZE_KEY }, + { proto::ResponseCodeEnum::INVALID_SUPPLY_KEY, Status::INVALID_SUPPLY_KEY }, + { proto::ResponseCodeEnum::MISSING_TOKEN_NAME, Status::MISSING_TOKEN_NAME }, + { proto::ResponseCodeEnum::TOKEN_NAME_TOO_LONG, Status::TOKEN_NAME_TOO_LONG }, + { proto::ResponseCodeEnum::INVALID_WIPING_AMOUNT, Status::INVALID_WIPING_AMOUNT }, + { proto::ResponseCodeEnum::TOKEN_IS_IMMUTABLE, Status::TOKEN_IS_IMMUTABLE }, + { proto::ResponseCodeEnum::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT, Status::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT }, { proto::ResponseCodeEnum::TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES, - Status::TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES }, - { proto::ResponseCodeEnum::ACCOUNT_IS_TREASURY, Status::ACCOUNT_IS_TREASURY }, - { proto::ResponseCodeEnum::TOKEN_ID_REPEATED_IN_TOKEN_LIST, Status::TOKEN_ID_REPEATED_IN_TOKEN_LIST }, - { proto::ResponseCodeEnum::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, Status::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED }, - { proto::ResponseCodeEnum::EMPTY_TOKEN_TRANSFER_BODY, Status::EMPTY_TOKEN_TRANSFER_BODY }, - { proto::ResponseCodeEnum::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS, Status::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS }, - { proto::ResponseCodeEnum::INVALID_SCHEDULE_ID, Status::INVALID_SCHEDULE_ID }, - { proto::ResponseCodeEnum::SCHEDULE_IS_IMMUTABLE, Status::SCHEDULE_IS_IMMUTABLE }, - { proto::ResponseCodeEnum::INVALID_SCHEDULE_PAYER_ID, Status::INVALID_SCHEDULE_PAYER_ID }, - { proto::ResponseCodeEnum::INVALID_SCHEDULE_ACCOUNT_ID, Status::INVALID_SCHEDULE_ACCOUNT_ID }, - { proto::ResponseCodeEnum::NO_NEW_VALID_SIGNATURES, Status::NO_NEW_VALID_SIGNATURES }, - { proto::ResponseCodeEnum::UNRESOLVABLE_REQUIRED_SIGNERS, Status::UNRESOLVABLE_REQUIRED_SIGNERS }, - { proto::ResponseCodeEnum::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST, Status::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST }, - { proto::ResponseCodeEnum::SOME_SIGNATURES_WERE_INVALID, Status::SOME_SIGNATURES_WERE_INVALID }, - { proto::ResponseCodeEnum::TRANSACTION_ID_FIELD_NOT_ALLOWED, Status::TRANSACTION_ID_FIELD_NOT_ALLOWED }, - { proto::ResponseCodeEnum::IDENTICAL_SCHEDULE_ALREADY_CREATED, Status::IDENTICAL_SCHEDULE_ALREADY_CREATED }, - { proto::ResponseCodeEnum::INVALID_ZERO_BYTE_IN_STRING, Status::INVALID_ZERO_BYTE_IN_STRING }, - { proto::ResponseCodeEnum::SCHEDULE_ALREADY_DELETED, Status::SCHEDULE_ALREADY_DELETED }, - { proto::ResponseCodeEnum::SCHEDULE_ALREADY_EXECUTED, Status::SCHEDULE_ALREADY_EXECUTED }, - { proto::ResponseCodeEnum::MESSAGE_SIZE_TOO_LARGE, Status::MESSAGE_SIZE_TOO_LARGE }, - { proto::ResponseCodeEnum::OPERATION_REPEATED_IN_BUCKET_GROUPS, Status::OPERATION_REPEATED_IN_BUCKET_GROUPS }, - { proto::ResponseCodeEnum::BUCKET_CAPACITY_OVERFLOW, Status::BUCKET_CAPACITY_OVERFLOW }, + Status::TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES }, + { proto::ResponseCodeEnum::ACCOUNT_IS_TREASURY, Status::ACCOUNT_IS_TREASURY }, + { proto::ResponseCodeEnum::TOKEN_ID_REPEATED_IN_TOKEN_LIST, Status::TOKEN_ID_REPEATED_IN_TOKEN_LIST }, + { proto::ResponseCodeEnum::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, Status::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED}, + { proto::ResponseCodeEnum::EMPTY_TOKEN_TRANSFER_BODY, Status::EMPTY_TOKEN_TRANSFER_BODY }, + { proto::ResponseCodeEnum::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS, Status::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS }, + { proto::ResponseCodeEnum::INVALID_SCHEDULE_ID, Status::INVALID_SCHEDULE_ID }, + { proto::ResponseCodeEnum::SCHEDULE_IS_IMMUTABLE, Status::SCHEDULE_IS_IMMUTABLE }, + { proto::ResponseCodeEnum::INVALID_SCHEDULE_PAYER_ID, Status::INVALID_SCHEDULE_PAYER_ID }, + { proto::ResponseCodeEnum::INVALID_SCHEDULE_ACCOUNT_ID, Status::INVALID_SCHEDULE_ACCOUNT_ID }, + { proto::ResponseCodeEnum::NO_NEW_VALID_SIGNATURES, Status::NO_NEW_VALID_SIGNATURES }, + { proto::ResponseCodeEnum::UNRESOLVABLE_REQUIRED_SIGNERS, Status::UNRESOLVABLE_REQUIRED_SIGNERS }, + { proto::ResponseCodeEnum::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST, Status::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST }, + { proto::ResponseCodeEnum::SOME_SIGNATURES_WERE_INVALID, Status::SOME_SIGNATURES_WERE_INVALID }, + { proto::ResponseCodeEnum::TRANSACTION_ID_FIELD_NOT_ALLOWED, Status::TRANSACTION_ID_FIELD_NOT_ALLOWED }, + { proto::ResponseCodeEnum::IDENTICAL_SCHEDULE_ALREADY_CREATED, Status::IDENTICAL_SCHEDULE_ALREADY_CREATED }, + { proto::ResponseCodeEnum::INVALID_ZERO_BYTE_IN_STRING, Status::INVALID_ZERO_BYTE_IN_STRING }, + { proto::ResponseCodeEnum::SCHEDULE_ALREADY_DELETED, Status::SCHEDULE_ALREADY_DELETED }, + { proto::ResponseCodeEnum::SCHEDULE_ALREADY_EXECUTED, Status::SCHEDULE_ALREADY_EXECUTED }, + { proto::ResponseCodeEnum::MESSAGE_SIZE_TOO_LARGE, Status::MESSAGE_SIZE_TOO_LARGE }, + { proto::ResponseCodeEnum::OPERATION_REPEATED_IN_BUCKET_GROUPS, Status::OPERATION_REPEATED_IN_BUCKET_GROUPS }, + { proto::ResponseCodeEnum::BUCKET_CAPACITY_OVERFLOW, Status::BUCKET_CAPACITY_OVERFLOW }, { proto::ResponseCodeEnum::NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION, - Status::NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION }, - { proto::ResponseCodeEnum::BUCKET_HAS_NO_THROTTLE_GROUPS, Status::BUCKET_HAS_NO_THROTTLE_GROUPS }, - { proto::ResponseCodeEnum::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC, Status::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC }, - { proto::ResponseCodeEnum::SUCCESS_BUT_MISSING_EXPECTED_OPERATION, Status::SUCCESS_BUT_MISSING_EXPECTED_OPERATION }, - { proto::ResponseCodeEnum::UNPARSEABLE_THROTTLE_DEFINITIONS, Status::UNPARSEABLE_THROTTLE_DEFINITIONS }, - { proto::ResponseCodeEnum::INVALID_THROTTLE_DEFINITIONS, Status::INVALID_THROTTLE_DEFINITIONS }, - { proto::ResponseCodeEnum::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL, Status::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL }, - { proto::ResponseCodeEnum::INVALID_TOKEN_MAX_SUPPLY, Status::INVALID_TOKEN_MAX_SUPPLY }, - { proto::ResponseCodeEnum::INVALID_TOKEN_NFT_SERIAL_NUMBER, Status::INVALID_TOKEN_NFT_SERIAL_NUMBER }, - { proto::ResponseCodeEnum::INVALID_NFT_ID, Status::INVALID_NFT_ID }, - { proto::ResponseCodeEnum::METADATA_TOO_LONG, Status::METADATA_TOO_LONG }, - { proto::ResponseCodeEnum::BATCH_SIZE_LIMIT_EXCEEDED, Status::BATCH_SIZE_LIMIT_EXCEEDED }, - { proto::ResponseCodeEnum::INVALID_QUERY_RANGE, Status::INVALID_QUERY_RANGE }, - { proto::ResponseCodeEnum::FRACTION_DIVIDES_BY_ZERO, Status::FRACTION_DIVIDES_BY_ZERO }, - { proto::ResponseCodeEnum::CUSTOM_FEES_LIST_TOO_LONG, Status::CUSTOM_FEES_LIST_TOO_LONG }, - { proto::ResponseCodeEnum::INVALID_CUSTOM_FEE_COLLECTOR, Status::INVALID_CUSTOM_FEE_COLLECTOR }, - { proto::ResponseCodeEnum::INVALID_TOKEN_ID_IN_CUSTOM_FEES, Status::INVALID_TOKEN_ID_IN_CUSTOM_FEES }, - { proto::ResponseCodeEnum::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR, Status::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR }, - { proto::ResponseCodeEnum::TOKEN_MAX_SUPPLY_REACHED, Status::TOKEN_MAX_SUPPLY_REACHED }, - { proto::ResponseCodeEnum::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO, Status::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO }, - { proto::ResponseCodeEnum::CUSTOM_FEE_NOT_FULLY_SPECIFIED, Status::CUSTOM_FEE_NOT_FULLY_SPECIFIED }, - { proto::ResponseCodeEnum::CUSTOM_FEE_MUST_BE_POSITIVE, Status::CUSTOM_FEE_MUST_BE_POSITIVE }, - { proto::ResponseCodeEnum::TOKEN_HAS_NO_FEE_SCHEDULE_KEY, Status::TOKEN_HAS_NO_FEE_SCHEDULE_KEY }, - { proto::ResponseCodeEnum::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE, Status::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE }, - { proto::ResponseCodeEnum::ROYALTY_FRACTION_CANNOT_EXCEED_ONE, Status::ROYALTY_FRACTION_CANNOT_EXCEED_ONE }, + Status::NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION }, + { proto::ResponseCodeEnum::BUCKET_HAS_NO_THROTTLE_GROUPS, Status::BUCKET_HAS_NO_THROTTLE_GROUPS }, + { proto::ResponseCodeEnum::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC, Status::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC }, + { proto::ResponseCodeEnum::SUCCESS_BUT_MISSING_EXPECTED_OPERATION, Status::SUCCESS_BUT_MISSING_EXPECTED_OPERATION }, + { proto::ResponseCodeEnum::UNPARSEABLE_THROTTLE_DEFINITIONS, Status::UNPARSEABLE_THROTTLE_DEFINITIONS }, + { proto::ResponseCodeEnum::INVALID_THROTTLE_DEFINITIONS, Status::INVALID_THROTTLE_DEFINITIONS }, + { proto::ResponseCodeEnum::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL, Status::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL }, + { proto::ResponseCodeEnum::INVALID_TOKEN_MAX_SUPPLY, Status::INVALID_TOKEN_MAX_SUPPLY }, + { proto::ResponseCodeEnum::INVALID_TOKEN_NFT_SERIAL_NUMBER, Status::INVALID_TOKEN_NFT_SERIAL_NUMBER }, + { proto::ResponseCodeEnum::INVALID_NFT_ID, Status::INVALID_NFT_ID }, + { proto::ResponseCodeEnum::METADATA_TOO_LONG, Status::METADATA_TOO_LONG }, + { proto::ResponseCodeEnum::BATCH_SIZE_LIMIT_EXCEEDED, Status::BATCH_SIZE_LIMIT_EXCEEDED }, + { proto::ResponseCodeEnum::INVALID_QUERY_RANGE, Status::INVALID_QUERY_RANGE }, + { proto::ResponseCodeEnum::FRACTION_DIVIDES_BY_ZERO, Status::FRACTION_DIVIDES_BY_ZERO }, + { proto::ResponseCodeEnum::CUSTOM_FEES_LIST_TOO_LONG, Status::CUSTOM_FEES_LIST_TOO_LONG }, + { proto::ResponseCodeEnum::INVALID_CUSTOM_FEE_COLLECTOR, Status::INVALID_CUSTOM_FEE_COLLECTOR }, + { proto::ResponseCodeEnum::INVALID_TOKEN_ID_IN_CUSTOM_FEES, Status::INVALID_TOKEN_ID_IN_CUSTOM_FEES }, + { proto::ResponseCodeEnum::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR, Status::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR }, + { proto::ResponseCodeEnum::TOKEN_MAX_SUPPLY_REACHED, Status::TOKEN_MAX_SUPPLY_REACHED }, + { proto::ResponseCodeEnum::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO, Status::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO }, + { proto::ResponseCodeEnum::CUSTOM_FEE_NOT_FULLY_SPECIFIED, Status::CUSTOM_FEE_NOT_FULLY_SPECIFIED }, + { proto::ResponseCodeEnum::CUSTOM_FEE_MUST_BE_POSITIVE, Status::CUSTOM_FEE_MUST_BE_POSITIVE }, + { proto::ResponseCodeEnum::TOKEN_HAS_NO_FEE_SCHEDULE_KEY, Status::TOKEN_HAS_NO_FEE_SCHEDULE_KEY }, + { proto::ResponseCodeEnum::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE, Status::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE }, + { proto::ResponseCodeEnum::ROYALTY_FRACTION_CANNOT_EXCEED_ONE, Status::ROYALTY_FRACTION_CANNOT_EXCEED_ONE }, { proto::ResponseCodeEnum::FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT, - Status::FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT }, - { proto::ResponseCodeEnum::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES, Status::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES }, + Status::FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT }, + { proto::ResponseCodeEnum::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES, Status::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES }, { proto::ResponseCodeEnum::CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON, - Status::CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON }, + Status::CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON }, { proto::ResponseCodeEnum::CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON, - Status::CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON }, - { proto::ResponseCodeEnum::INVALID_CUSTOM_FEE_SCHEDULE_KEY, Status::INVALID_CUSTOM_FEE_SCHEDULE_KEY }, - { proto::ResponseCodeEnum::INVALID_TOKEN_MINT_METADATA, Status::INVALID_TOKEN_MINT_METADATA }, - { proto::ResponseCodeEnum::INVALID_TOKEN_BURN_METADATA, Status::INVALID_TOKEN_BURN_METADATA }, - { proto::ResponseCodeEnum::CURRENT_TREASURY_STILL_OWNS_NFTS, Status::CURRENT_TREASURY_STILL_OWNS_NFTS }, - { proto::ResponseCodeEnum::ACCOUNT_STILL_OWNS_NFTS, Status::ACCOUNT_STILL_OWNS_NFTS }, - { proto::ResponseCodeEnum::TREASURY_MUST_OWN_BURNED_NFT, Status::TREASURY_MUST_OWN_BURNED_NFT }, - { proto::ResponseCodeEnum::ACCOUNT_DOES_NOT_OWN_WIPED_NFT, Status::ACCOUNT_DOES_NOT_OWN_WIPED_NFT }, + Status::CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON }, + { proto::ResponseCodeEnum::INVALID_CUSTOM_FEE_SCHEDULE_KEY, Status::INVALID_CUSTOM_FEE_SCHEDULE_KEY }, + { proto::ResponseCodeEnum::INVALID_TOKEN_MINT_METADATA, Status::INVALID_TOKEN_MINT_METADATA }, + { proto::ResponseCodeEnum::INVALID_TOKEN_BURN_METADATA, Status::INVALID_TOKEN_BURN_METADATA }, + { proto::ResponseCodeEnum::CURRENT_TREASURY_STILL_OWNS_NFTS, Status::CURRENT_TREASURY_STILL_OWNS_NFTS }, + { proto::ResponseCodeEnum::ACCOUNT_STILL_OWNS_NFTS, Status::ACCOUNT_STILL_OWNS_NFTS }, + { proto::ResponseCodeEnum::TREASURY_MUST_OWN_BURNED_NFT, Status::TREASURY_MUST_OWN_BURNED_NFT }, + { proto::ResponseCodeEnum::ACCOUNT_DOES_NOT_OWN_WIPED_NFT, Status::ACCOUNT_DOES_NOT_OWN_WIPED_NFT }, { proto::ResponseCodeEnum::ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON, - Status::ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON }, + Status::ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON }, { proto::ResponseCodeEnum::MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED, - Status::MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED }, - { proto::ResponseCodeEnum::PAYER_ACCOUNT_DELETED, Status::PAYER_ACCOUNT_DELETED }, + Status::MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED }, + { proto::ResponseCodeEnum::PAYER_ACCOUNT_DELETED, Status::PAYER_ACCOUNT_DELETED }, { proto::ResponseCodeEnum::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH, - Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH }, + Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH }, { proto::ResponseCodeEnum::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS, - Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS }, + Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS }, { proto::ResponseCodeEnum::INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE, - Status::INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE }, - { proto::ResponseCodeEnum::SERIAL_NUMBER_LIMIT_REACHED, Status::SERIAL_NUMBER_LIMIT_REACHED }, + Status::INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE }, + { proto::ResponseCodeEnum::SERIAL_NUMBER_LIMIT_REACHED, Status::SERIAL_NUMBER_LIMIT_REACHED }, { proto::ResponseCodeEnum::CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE, - Status::CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE }, - { proto::ResponseCodeEnum::NO_REMAINING_AUTOMATIC_ASSOCIATIONS, Status::NO_REMAINING_AUTOMATIC_ASSOCIATIONS }, + Status::CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE }, + { proto::ResponseCodeEnum::NO_REMAINING_AUTOMATIC_ASSOCIATIONS, Status::NO_REMAINING_AUTOMATIC_ASSOCIATIONS }, { proto::ResponseCodeEnum::EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT, - Status::EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT }, + Status::EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT }, { proto::ResponseCodeEnum::REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT, - Status::REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT }, - { proto::ResponseCodeEnum::TOKEN_IS_PAUSED, Status::TOKEN_IS_PAUSED }, - { proto::ResponseCodeEnum::TOKEN_HAS_NO_PAUSE_KEY, Status::TOKEN_HAS_NO_PAUSE_KEY }, - { proto::ResponseCodeEnum::INVALID_PAUSE_KEY, Status::INVALID_PAUSE_KEY }, - { proto::ResponseCodeEnum::FREEZE_UPDATE_FILE_DOES_NOT_EXIST, Status::FREEZE_UPDATE_FILE_DOES_NOT_EXIST }, - { proto::ResponseCodeEnum::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH, Status::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH }, - { proto::ResponseCodeEnum::NO_UPGRADE_HAS_BEEN_PREPARED, Status::NO_UPGRADE_HAS_BEEN_PREPARED }, - { proto::ResponseCodeEnum::NO_FREEZE_IS_SCHEDULED, Status::NO_FREEZE_IS_SCHEDULED }, + Status::REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT }, + { proto::ResponseCodeEnum::TOKEN_IS_PAUSED, Status::TOKEN_IS_PAUSED }, + { proto::ResponseCodeEnum::TOKEN_HAS_NO_PAUSE_KEY, Status::TOKEN_HAS_NO_PAUSE_KEY }, + { proto::ResponseCodeEnum::INVALID_PAUSE_KEY, Status::INVALID_PAUSE_KEY }, + { proto::ResponseCodeEnum::FREEZE_UPDATE_FILE_DOES_NOT_EXIST, Status::FREEZE_UPDATE_FILE_DOES_NOT_EXIST }, + { proto::ResponseCodeEnum::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH, Status::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH }, + { proto::ResponseCodeEnum::NO_UPGRADE_HAS_BEEN_PREPARED, Status::NO_UPGRADE_HAS_BEEN_PREPARED }, + { proto::ResponseCodeEnum::NO_FREEZE_IS_SCHEDULED, Status::NO_FREEZE_IS_SCHEDULED }, { proto::ResponseCodeEnum::UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE, - Status::UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE }, - { proto::ResponseCodeEnum::FREEZE_START_TIME_MUST_BE_FUTURE, Status::FREEZE_START_TIME_MUST_BE_FUTURE }, - { proto::ResponseCodeEnum::PREPARED_UPDATE_FILE_IS_IMMUTABLE, Status::PREPARED_UPDATE_FILE_IS_IMMUTABLE }, - { proto::ResponseCodeEnum::FREEZE_ALREADY_SCHEDULED, Status::FREEZE_ALREADY_SCHEDULED }, - { proto::ResponseCodeEnum::FREEZE_UPGRADE_IN_PROGRESS, Status::FREEZE_UPGRADE_IN_PROGRESS }, - { proto::ResponseCodeEnum::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED, Status::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED }, + Status::UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE }, + { proto::ResponseCodeEnum::FREEZE_START_TIME_MUST_BE_FUTURE, Status::FREEZE_START_TIME_MUST_BE_FUTURE }, + { proto::ResponseCodeEnum::PREPARED_UPDATE_FILE_IS_IMMUTABLE, Status::PREPARED_UPDATE_FILE_IS_IMMUTABLE }, + { proto::ResponseCodeEnum::FREEZE_ALREADY_SCHEDULED, Status::FREEZE_ALREADY_SCHEDULED }, + { proto::ResponseCodeEnum::FREEZE_UPGRADE_IN_PROGRESS, Status::FREEZE_UPGRADE_IN_PROGRESS }, + { proto::ResponseCodeEnum::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED, Status::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED }, { proto::ResponseCodeEnum::UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED, - Status::UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED }, - { proto::ResponseCodeEnum::CONSENSUS_GAS_EXHAUSTED, Status::CONSENSUS_GAS_EXHAUSTED }, - { proto::ResponseCodeEnum::REVERTED_SUCCESS, Status::REVERTED_SUCCESS }, + Status::UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED }, + { proto::ResponseCodeEnum::CONSENSUS_GAS_EXHAUSTED, Status::CONSENSUS_GAS_EXHAUSTED }, + { proto::ResponseCodeEnum::REVERTED_SUCCESS, Status::REVERTED_SUCCESS }, { proto::ResponseCodeEnum::MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED, - Status::MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED }, - { proto::ResponseCodeEnum::INVALID_ALIAS_KEY, Status::INVALID_ALIAS_KEY }, - { proto::ResponseCodeEnum::UNEXPECTED_TOKEN_DECIMALS, Status::UNEXPECTED_TOKEN_DECIMALS }, - { proto::ResponseCodeEnum::INVALID_TRANSFER_ACCOUNT_ID, Status::INVALID_TRANSFER_ACCOUNT_ID }, - { proto::ResponseCodeEnum::INVALID_FEE_COLLECTOR_ACCOUNT_ID, Status::INVALID_FEE_COLLECTOR_ACCOUNT_ID }, - { proto::ResponseCodeEnum::ALIAS_IS_IMMUTABLE, Status::ALIAS_IS_IMMUTABLE }, - { proto::ResponseCodeEnum::SPENDER_ACCOUNT_SAME_AS_OWNER, Status::SPENDER_ACCOUNT_SAME_AS_OWNER }, - { proto::ResponseCodeEnum::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY, Status::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY }, - { proto::ResponseCodeEnum::NEGATIVE_ALLOWANCE_AMOUNT, Status::NEGATIVE_ALLOWANCE_AMOUNT }, - { proto::ResponseCodeEnum::SPENDER_DOES_NOT_HAVE_ALLOWANCE, Status::SPENDER_DOES_NOT_HAVE_ALLOWANCE }, - { proto::ResponseCodeEnum::AMOUNT_EXCEEDS_ALLOWANCE, Status::AMOUNT_EXCEEDS_ALLOWANCE }, - { proto::ResponseCodeEnum::MAX_ALLOWANCES_EXCEEDED, Status::MAX_ALLOWANCES_EXCEEDED }, - { proto::ResponseCodeEnum::EMPTY_ALLOWANCES, Status::EMPTY_ALLOWANCES }, - { proto::ResponseCodeEnum::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES, Status::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES }, - { proto::ResponseCodeEnum::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES, Status::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES }, - { proto::ResponseCodeEnum::INVALID_ALLOWANCE_OWNER_ID, Status::INVALID_ALLOWANCE_OWNER_ID }, - { proto::ResponseCodeEnum::INVALID_ALLOWANCE_SPENDER_ID, Status::INVALID_ALLOWANCE_SPENDER_ID }, - { proto::ResponseCodeEnum::INVALID_DELEGATING_SPENDER, Status::INVALID_DELEGATING_SPENDER }, + Status::MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED }, + { proto::ResponseCodeEnum::INVALID_ALIAS_KEY, Status::INVALID_ALIAS_KEY }, + { proto::ResponseCodeEnum::UNEXPECTED_TOKEN_DECIMALS, Status::UNEXPECTED_TOKEN_DECIMALS }, + { proto::ResponseCodeEnum::INVALID_TRANSFER_ACCOUNT_ID, Status::INVALID_TRANSFER_ACCOUNT_ID }, + { proto::ResponseCodeEnum::INVALID_FEE_COLLECTOR_ACCOUNT_ID, Status::INVALID_FEE_COLLECTOR_ACCOUNT_ID }, + { proto::ResponseCodeEnum::ALIAS_IS_IMMUTABLE, Status::ALIAS_IS_IMMUTABLE }, + { proto::ResponseCodeEnum::SPENDER_ACCOUNT_SAME_AS_OWNER, Status::SPENDER_ACCOUNT_SAME_AS_OWNER }, + { proto::ResponseCodeEnum::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY, Status::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY }, + { proto::ResponseCodeEnum::NEGATIVE_ALLOWANCE_AMOUNT, Status::NEGATIVE_ALLOWANCE_AMOUNT }, + { proto::ResponseCodeEnum::SPENDER_DOES_NOT_HAVE_ALLOWANCE, Status::SPENDER_DOES_NOT_HAVE_ALLOWANCE }, + { proto::ResponseCodeEnum::AMOUNT_EXCEEDS_ALLOWANCE, Status::AMOUNT_EXCEEDS_ALLOWANCE }, + { proto::ResponseCodeEnum::MAX_ALLOWANCES_EXCEEDED, Status::MAX_ALLOWANCES_EXCEEDED }, + { proto::ResponseCodeEnum::EMPTY_ALLOWANCES, Status::EMPTY_ALLOWANCES }, + { proto::ResponseCodeEnum::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES, Status::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES }, + { proto::ResponseCodeEnum::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES, Status::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES }, + { proto::ResponseCodeEnum::INVALID_ALLOWANCE_OWNER_ID, Status::INVALID_ALLOWANCE_OWNER_ID }, + { proto::ResponseCodeEnum::INVALID_ALLOWANCE_SPENDER_ID, Status::INVALID_ALLOWANCE_SPENDER_ID }, + { proto::ResponseCodeEnum::INVALID_DELEGATING_SPENDER, Status::INVALID_DELEGATING_SPENDER }, { proto::ResponseCodeEnum::DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL, - Status::DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL }, + Status::DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL }, { proto::ResponseCodeEnum::DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL, - Status::DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL }, + Status::DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL }, { proto::ResponseCodeEnum::SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE, - Status::SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE }, + Status::SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE }, { proto::ResponseCodeEnum::SCHEDULE_EXPIRATION_TIME_MUST_BE_HIGHER_THAN_CONSENSUS_TIME, - Status::SCHEDULE_EXPIRATION_TIME_MUST_BE_HIGHER_THAN_CONSENSUS_TIME }, - { proto::ResponseCodeEnum::SCHEDULE_FUTURE_THROTTLE_EXCEEDED, Status::SCHEDULE_FUTURE_THROTTLE_EXCEEDED }, - { proto::ResponseCodeEnum::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED, Status::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED }, - { proto::ResponseCodeEnum::INVALID_ETHEREUM_TRANSACTION, Status::INVALID_ETHEREUM_TRANSACTION }, - { proto::ResponseCodeEnum::WRONG_CHAIN_ID, Status::WRONG_CHAIN_ID }, - { proto::ResponseCodeEnum::WRONG_NONCE, Status::WRONG_NONCE }, - { proto::ResponseCodeEnum::ACCESS_LIST_UNSUPPORTED, Status::ACCESS_LIST_UNSUPPORTED }, - { proto::ResponseCodeEnum::SCHEDULE_PENDING_EXPIRATION, Status::SCHEDULE_PENDING_EXPIRATION }, - { proto::ResponseCodeEnum::CONTRACT_IS_TOKEN_TREASURY, Status::CONTRACT_IS_TOKEN_TREASURY }, - { proto::ResponseCodeEnum::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES, Status::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES }, - { proto::ResponseCodeEnum::CONTRACT_EXPIRED_AND_PENDING_REMOVAL, Status::CONTRACT_EXPIRED_AND_PENDING_REMOVAL }, - { proto::ResponseCodeEnum::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT, Status::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT }, + Status::SCHEDULE_EXPIRATION_TIME_MUST_BE_HIGHER_THAN_CONSENSUS_TIME }, + { proto::ResponseCodeEnum::SCHEDULE_FUTURE_THROTTLE_EXCEEDED, Status::SCHEDULE_FUTURE_THROTTLE_EXCEEDED }, + { proto::ResponseCodeEnum::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED, Status::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED }, + { proto::ResponseCodeEnum::INVALID_ETHEREUM_TRANSACTION, Status::INVALID_ETHEREUM_TRANSACTION }, + { proto::ResponseCodeEnum::WRONG_CHAIN_ID, Status::WRONG_CHAIN_ID }, + { proto::ResponseCodeEnum::WRONG_NONCE, Status::WRONG_NONCE }, + { proto::ResponseCodeEnum::ACCESS_LIST_UNSUPPORTED, Status::ACCESS_LIST_UNSUPPORTED }, + { proto::ResponseCodeEnum::SCHEDULE_PENDING_EXPIRATION, Status::SCHEDULE_PENDING_EXPIRATION }, + { proto::ResponseCodeEnum::CONTRACT_IS_TOKEN_TREASURY, Status::CONTRACT_IS_TOKEN_TREASURY }, + { proto::ResponseCodeEnum::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES, Status::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES }, + { proto::ResponseCodeEnum::CONTRACT_EXPIRED_AND_PENDING_REMOVAL, Status::CONTRACT_EXPIRED_AND_PENDING_REMOVAL }, + { proto::ResponseCodeEnum::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT, Status::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT }, { proto::ResponseCodeEnum::PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION, - Status::PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION }, - { proto::ResponseCodeEnum::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED, Status::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED }, - { proto::ResponseCodeEnum::SELF_STAKING_IS_NOT_ALLOWED, Status::SELF_STAKING_IS_NOT_ALLOWED }, - { proto::ResponseCodeEnum::INVALID_STAKING_ID, Status::INVALID_STAKING_ID }, - { proto::ResponseCodeEnum::STAKING_NOT_ENABLED, Status::STAKING_NOT_ENABLED }, - { proto::ResponseCodeEnum::INVALID_PRNG_RANGE, Status::INVALID_PRNG_RANGE }, + Status::PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION }, + { proto::ResponseCodeEnum::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED, Status::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED }, + { proto::ResponseCodeEnum::SELF_STAKING_IS_NOT_ALLOWED, Status::SELF_STAKING_IS_NOT_ALLOWED }, + { proto::ResponseCodeEnum::INVALID_STAKING_ID, Status::INVALID_STAKING_ID }, + { proto::ResponseCodeEnum::STAKING_NOT_ENABLED, Status::STAKING_NOT_ENABLED }, + { proto::ResponseCodeEnum::INVALID_PRNG_RANGE, Status::INVALID_PRNG_RANGE }, { proto::ResponseCodeEnum::MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED, - Status::MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED }, + Status::MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED }, { proto::ResponseCodeEnum::INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE, - Status::INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE }, - { proto::ResponseCodeEnum::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT, Status::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT }, - { proto::ResponseCodeEnum::MAX_CHILD_RECORDS_EXCEEDED, Status::MAX_CHILD_RECORDS_EXCEEDED }, - { proto::ResponseCodeEnum::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES, Status::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES }, - { proto::ResponseCodeEnum::TRANSACTION_HAS_UNKNOWN_FIELDS, Status::TRANSACTION_HAS_UNKNOWN_FIELDS }, - { proto::ResponseCodeEnum::ACCOUNT_IS_IMMUTABLE, Status::ACCOUNT_IS_IMMUTABLE }, - { proto::ResponseCodeEnum::ALIAS_ALREADY_ASSIGNED, Status::ALIAS_ALREADY_ASSIGNED }, - { proto::ResponseCodeEnum::INVALID_METADATA_KEY, Status::INVALID_METADATA_KEY }, - { proto::ResponseCodeEnum::MISSING_TOKEN_METADATA, Status::MISSING_TOKEN_METADATA }, - { proto::ResponseCodeEnum::MISSING_SERIAL_NUMBERS, Status::MISSING_SERIAL_NUMBERS }, - { proto::ResponseCodeEnum::INVALID_MAX_AUTO_ASSOCIATIONS, Status::INVALID_MAX_AUTO_ASSOCIATIONS }, - { proto::ResponseCodeEnum::TOKEN_REFERENCE_REPEATED, Status::TOKEN_REFERENCE_REPEATED }, - { proto::ResponseCodeEnum::INVALID_OWNER_ID, Status::INVALID_OWNER_ID }, - { proto::ResponseCodeEnum::EMPTY_TOKEN_REFERENCE_LIST, Status::EMPTY_TOKEN_REFERENCE_LIST }, - { proto::ResponseCodeEnum::EMPTY_PENDING_AIRDROP_ID_LIST, Status::EMPTY_PENDING_AIRDROP_ID_LIST }, - { proto::ResponseCodeEnum::PENDING_AIRDROP_ID_REPEATED, Status::PENDING_AIRDROP_ID_REPEATED }, - { proto::ResponseCodeEnum::PENDING_AIRDROP_ID_LIST_TOO_LONG, Status::PENDING_AIRDROP_ID_LIST_TOO_LONG }, - { proto::ResponseCodeEnum::PENDING_NFT_AIRDROP_ALREADY_EXISTS, Status::PENDING_NFT_AIRDROP_ALREADY_EXISTS }, - { proto::ResponseCodeEnum::ACCOUNT_HAS_PENDING_AIRDROPS, Status::ACCOUNT_HAS_PENDING_AIRDROPS }, - { proto::ResponseCodeEnum::THROTTLED_AT_CONSENSUS, Status::THROTTLED_AT_CONSENSUS }, - { proto::ResponseCodeEnum::INVALID_PENDING_AIRDROP_ID, Status::INVALID_PENDING_AIRDROP_ID }, - { proto::ResponseCodeEnum::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY, Status::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY }, - { proto::ResponseCodeEnum::INVALID_TOKEN_IN_PENDING_AIRDROP, Status::INVALID_TOKEN_IN_PENDING_AIRDROP }, - { proto::ResponseCodeEnum::NODE_DELETED, Status::NODE_DELETED }, - { proto::ResponseCodeEnum::INVALID_NODE_ID, Status::INVALID_NODE_ID }, - { proto::ResponseCodeEnum::INVALID_GOSSIP_ENDPOINT, Status::INVALID_GOSSIP_ENDPOINT }, - { proto::ResponseCodeEnum::INVALID_NODE_ACCOUNT_ID, Status::INVALID_NODE_ACCOUNT_ID }, - { proto::ResponseCodeEnum::INVALID_NODE_DESCRIPTION, Status::INVALID_NODE_DESCRIPTION }, - { proto::ResponseCodeEnum::INVALID_SERVICE_ENDPOINT, Status::INVALID_SERVICE_ENDPOINT }, - { proto::ResponseCodeEnum::INVALID_GOSSIP_CA_CERTIFICATE, Status::INVALID_GOSSIP_CA_CERTIFICATE }, - { proto::ResponseCodeEnum::INVALID_GRPC_CERTIFICATE, Status::INVALID_GRPC_CERTIFICATE }, - { proto::ResponseCodeEnum::MAX_NODES_CREATED, Status::MAX_NODES_CREATED }, - { proto::ResponseCodeEnum::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT, Status::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT }, - { proto::ResponseCodeEnum::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN, Status::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN }, - { proto::ResponseCodeEnum::FQDN_SIZE_TOO_LARGE, Status::FQDN_SIZE_TOO_LARGE }, - { proto::ResponseCodeEnum::INVALID_ENDPOINT, Status::INVALID_ENDPOINT }, - { proto::ResponseCodeEnum::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT, Status::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT } + Status::INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE }, + { proto::ResponseCodeEnum::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT, Status::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT }, + { proto::ResponseCodeEnum::MAX_CHILD_RECORDS_EXCEEDED, Status::MAX_CHILD_RECORDS_EXCEEDED }, + { proto::ResponseCodeEnum::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES, Status::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES }, + { proto::ResponseCodeEnum::TRANSACTION_HAS_UNKNOWN_FIELDS, Status::TRANSACTION_HAS_UNKNOWN_FIELDS }, + { proto::ResponseCodeEnum::ACCOUNT_IS_IMMUTABLE, Status::ACCOUNT_IS_IMMUTABLE }, + { proto::ResponseCodeEnum::ALIAS_ALREADY_ASSIGNED, Status::ALIAS_ALREADY_ASSIGNED }, + { proto::ResponseCodeEnum::INVALID_METADATA_KEY, Status::INVALID_METADATA_KEY }, + { proto::ResponseCodeEnum::MISSING_TOKEN_METADATA, Status::MISSING_TOKEN_METADATA }, + { proto::ResponseCodeEnum::MISSING_SERIAL_NUMBERS, Status::MISSING_SERIAL_NUMBERS }, + { proto::ResponseCodeEnum::INVALID_MAX_AUTO_ASSOCIATIONS, Status::INVALID_MAX_AUTO_ASSOCIATIONS }, + { proto::ResponseCodeEnum::TOKEN_REFERENCE_REPEATED, Status::TOKEN_REFERENCE_REPEATED }, + { proto::ResponseCodeEnum::INVALID_OWNER_ID, Status::INVALID_OWNER_ID }, + { proto::ResponseCodeEnum::EMPTY_TOKEN_REFERENCE_LIST, Status::EMPTY_TOKEN_REFERENCE_LIST }, + { proto::ResponseCodeEnum::EMPTY_PENDING_AIRDROP_ID_LIST, Status::EMPTY_PENDING_AIRDROP_ID_LIST }, + { proto::ResponseCodeEnum::PENDING_AIRDROP_ID_REPEATED, Status::PENDING_AIRDROP_ID_REPEATED }, + { proto::ResponseCodeEnum::PENDING_AIRDROP_ID_LIST_TOO_LONG, Status::PENDING_AIRDROP_ID_LIST_TOO_LONG }, + { proto::ResponseCodeEnum::PENDING_NFT_AIRDROP_ALREADY_EXISTS, Status::PENDING_NFT_AIRDROP_ALREADY_EXISTS }, + { proto::ResponseCodeEnum::ACCOUNT_HAS_PENDING_AIRDROPS, Status::ACCOUNT_HAS_PENDING_AIRDROPS }, + { proto::ResponseCodeEnum::THROTTLED_AT_CONSENSUS, Status::THROTTLED_AT_CONSENSUS }, + { proto::ResponseCodeEnum::INVALID_PENDING_AIRDROP_ID, Status::INVALID_PENDING_AIRDROP_ID }, + { proto::ResponseCodeEnum::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY, Status::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY }, + { proto::ResponseCodeEnum::INVALID_TOKEN_IN_PENDING_AIRDROP, Status::INVALID_TOKEN_IN_PENDING_AIRDROP }, + { proto::ResponseCodeEnum::NODE_DELETED, Status::NODE_DELETED }, + { proto::ResponseCodeEnum::INVALID_NODE_ID, Status::INVALID_NODE_ID }, + { proto::ResponseCodeEnum::INVALID_GOSSIP_ENDPOINT, Status::INVALID_GOSSIP_ENDPOINT }, + { proto::ResponseCodeEnum::INVALID_NODE_ACCOUNT_ID, Status::INVALID_NODE_ACCOUNT_ID }, + { proto::ResponseCodeEnum::INVALID_NODE_DESCRIPTION, Status::INVALID_NODE_DESCRIPTION }, + { proto::ResponseCodeEnum::INVALID_SERVICE_ENDPOINT, Status::INVALID_SERVICE_ENDPOINT }, + { proto::ResponseCodeEnum::INVALID_GOSSIP_CA_CERTIFICATE, Status::INVALID_GOSSIP_CA_CERTIFICATE }, + { proto::ResponseCodeEnum::INVALID_GRPC_CERTIFICATE, Status::INVALID_GRPC_CERTIFICATE }, + { proto::ResponseCodeEnum::MAX_NODES_CREATED, Status::MAX_NODES_CREATED }, + { proto::ResponseCodeEnum::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT, Status::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT}, + { proto::ResponseCodeEnum::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN, Status::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN }, + { proto::ResponseCodeEnum::FQDN_SIZE_TOO_LARGE, Status::FQDN_SIZE_TOO_LARGE }, + { proto::ResponseCodeEnum::INVALID_ENDPOINT, Status::INVALID_ENDPOINT }, + { proto::ResponseCodeEnum::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT, Status::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT } }; //----- const std::unordered_map gStatusToProtobufResponseCode = { - { Status::OK, proto::ResponseCodeEnum::OK }, - { Status::INVALID_TRANSACTION, proto::ResponseCodeEnum::INVALID_TRANSACTION }, - { Status::PAYER_ACCOUNT_NOT_FOUND, proto::ResponseCodeEnum::PAYER_ACCOUNT_NOT_FOUND }, - { Status::INVALID_NODE_ACCOUNT, proto::ResponseCodeEnum::INVALID_NODE_ACCOUNT }, - { Status::TRANSACTION_EXPIRED, proto::ResponseCodeEnum::TRANSACTION_EXPIRED }, - { Status::INVALID_TRANSACTION_START, proto::ResponseCodeEnum::INVALID_TRANSACTION_START }, - { Status::INVALID_TRANSACTION_DURATION, proto::ResponseCodeEnum::INVALID_TRANSACTION_DURATION }, - { Status::INVALID_SIGNATURE, proto::ResponseCodeEnum::INVALID_SIGNATURE }, - { Status::MEMO_TOO_LONG, proto::ResponseCodeEnum::MEMO_TOO_LONG }, - { Status::INSUFFICIENT_TX_FEE, proto::ResponseCodeEnum::INSUFFICIENT_TX_FEE }, - { Status::INSUFFICIENT_PAYER_BALANCE, proto::ResponseCodeEnum::INSUFFICIENT_PAYER_BALANCE }, - { Status::DUPLICATE_TRANSACTION, proto::ResponseCodeEnum::DUPLICATE_TRANSACTION }, - { Status::BUSY, proto::ResponseCodeEnum::BUSY }, - { Status::NOT_SUPPORTED, proto::ResponseCodeEnum::NOT_SUPPORTED }, - { Status::INVALID_FILE_ID, proto::ResponseCodeEnum::INVALID_FILE_ID }, - { Status::INVALID_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_ACCOUNT_ID }, - { Status::INVALID_CONTRACT_ID, proto::ResponseCodeEnum::INVALID_CONTRACT_ID }, - { Status::INVALID_TRANSACTION_ID, proto::ResponseCodeEnum::INVALID_TRANSACTION_ID }, - { Status::RECEIPT_NOT_FOUND, proto::ResponseCodeEnum::RECEIPT_NOT_FOUND }, - { Status::RECORD_NOT_FOUND, proto::ResponseCodeEnum::RECORD_NOT_FOUND }, - { Status::INVALID_SOLIDITY_ID, proto::ResponseCodeEnum::INVALID_SOLIDITY_ID }, - { Status::UNKNOWN, proto::ResponseCodeEnum::UNKNOWN }, - { Status::SUCCESS, proto::ResponseCodeEnum::SUCCESS }, - { Status::FAIL_INVALID, proto::ResponseCodeEnum::FAIL_INVALID }, - { Status::FAIL_FEE, proto::ResponseCodeEnum::FAIL_FEE }, - { Status::FAIL_BALANCE, proto::ResponseCodeEnum::FAIL_BALANCE }, - { Status::KEY_REQUIRED, proto::ResponseCodeEnum::KEY_REQUIRED }, - { Status::BAD_ENCODING, proto::ResponseCodeEnum::BAD_ENCODING }, - { Status::INSUFFICIENT_ACCOUNT_BALANCE, proto::ResponseCodeEnum::INSUFFICIENT_ACCOUNT_BALANCE }, - { Status::INVALID_SOLIDITY_ADDRESS, proto::ResponseCodeEnum::INVALID_SOLIDITY_ADDRESS }, - { Status::INSUFFICIENT_GAS, proto::ResponseCodeEnum::INSUFFICIENT_GAS }, - { Status::CONTRACT_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::CONTRACT_SIZE_LIMIT_EXCEEDED }, - { Status::LOCAL_CALL_MODIFICATION_EXCEPTION, proto::ResponseCodeEnum::LOCAL_CALL_MODIFICATION_EXCEPTION }, - { Status::CONTRACT_REVERT_EXECUTED, proto::ResponseCodeEnum::CONTRACT_REVERT_EXECUTED }, - { Status::CONTRACT_EXECUTION_EXCEPTION, proto::ResponseCodeEnum::CONTRACT_EXECUTION_EXCEPTION }, - { Status::INVALID_RECEIVING_NODE_ACCOUNT, proto::ResponseCodeEnum::INVALID_RECEIVING_NODE_ACCOUNT }, - { Status::MISSING_QUERY_HEADER, proto::ResponseCodeEnum::MISSING_QUERY_HEADER }, - { Status::ACCOUNT_UPDATE_FAILED, proto::ResponseCodeEnum::ACCOUNT_UPDATE_FAILED }, - { Status::INVALID_KEY_ENCODING, proto::ResponseCodeEnum::INVALID_KEY_ENCODING }, - { Status::NULL_SOLIDITY_ADDRESS, proto::ResponseCodeEnum::NULL_SOLIDITY_ADDRESS }, - { Status::CONTRACT_UPDATE_FAILED, proto::ResponseCodeEnum::CONTRACT_UPDATE_FAILED }, - { Status::INVALID_QUERY_HEADER, proto::ResponseCodeEnum::INVALID_QUERY_HEADER }, - { Status::INVALID_FEE_SUBMITTED, proto::ResponseCodeEnum::INVALID_FEE_SUBMITTED }, - { Status::INVALID_PAYER_SIGNATURE, proto::ResponseCodeEnum::INVALID_PAYER_SIGNATURE }, - { Status::KEY_NOT_PROVIDED, proto::ResponseCodeEnum::KEY_NOT_PROVIDED }, - { Status::INVALID_EXPIRATION_TIME, proto::ResponseCodeEnum::INVALID_EXPIRATION_TIME }, - { Status::NO_WACL_KEY, proto::ResponseCodeEnum::NO_WACL_KEY }, - { Status::FILE_CONTENT_EMPTY, proto::ResponseCodeEnum::FILE_CONTENT_EMPTY }, - { Status::INVALID_ACCOUNT_AMOUNTS, proto::ResponseCodeEnum::INVALID_ACCOUNT_AMOUNTS }, - { Status::EMPTY_TRANSACTION_BODY, proto::ResponseCodeEnum::EMPTY_TRANSACTION_BODY }, - { Status::INVALID_TRANSACTION_BODY, proto::ResponseCodeEnum::INVALID_TRANSACTION_BODY }, - { Status::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY, proto::ResponseCodeEnum::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY }, - { Status::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY, proto::ResponseCodeEnum::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY }, - { Status::EMPTY_LIVE_HASH_BODY, proto::ResponseCodeEnum::EMPTY_LIVE_HASH_BODY }, - { Status::EMPTY_LIVE_HASH, proto::ResponseCodeEnum::EMPTY_LIVE_HASH }, - { Status::EMPTY_LIVE_HASH_KEYS, proto::ResponseCodeEnum::EMPTY_LIVE_HASH_KEYS }, - { Status::INVALID_LIVE_HASH_SIZE, proto::ResponseCodeEnum::INVALID_LIVE_HASH_SIZE }, - { Status::EMPTY_QUERY_BODY, proto::ResponseCodeEnum::EMPTY_QUERY_BODY }, - { Status::EMPTY_LIVE_HASH_QUERY, proto::ResponseCodeEnum::EMPTY_LIVE_HASH_QUERY }, - { Status::LIVE_HASH_NOT_FOUND, proto::ResponseCodeEnum::LIVE_HASH_NOT_FOUND }, - { Status::ACCOUNT_ID_DOES_NOT_EXIST, proto::ResponseCodeEnum::ACCOUNT_ID_DOES_NOT_EXIST }, - { Status::LIVE_HASH_ALREADY_EXISTS, proto::ResponseCodeEnum::LIVE_HASH_ALREADY_EXISTS }, - { Status::INVALID_FILE_WACL, proto::ResponseCodeEnum::INVALID_FILE_WACL }, - { Status::SERIALIZATION_FAILED, proto::ResponseCodeEnum::SERIALIZATION_FAILED }, - { Status::TRANSACTION_OVERSIZE, proto::ResponseCodeEnum::TRANSACTION_OVERSIZE }, - { Status::TRANSACTION_TOO_MANY_LAYERS, proto::ResponseCodeEnum::TRANSACTION_TOO_MANY_LAYERS }, - { Status::CONTRACT_DELETED, proto::ResponseCodeEnum::CONTRACT_DELETED }, - { Status::PLATFORM_NOT_ACTIVE, proto::ResponseCodeEnum::PLATFORM_NOT_ACTIVE }, - { Status::KEY_PREFIX_MISMATCH, proto::ResponseCodeEnum::KEY_PREFIX_MISMATCH }, - { Status::PLATFORM_TRANSACTION_NOT_CREATED, proto::ResponseCodeEnum::PLATFORM_TRANSACTION_NOT_CREATED }, - { Status::INVALID_RENEWAL_PERIOD, proto::ResponseCodeEnum::INVALID_RENEWAL_PERIOD }, - { Status::INVALID_PAYER_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_PAYER_ACCOUNT_ID }, - { Status::ACCOUNT_DELETED, proto::ResponseCodeEnum::ACCOUNT_DELETED }, - { Status::FILE_DELETED, proto::ResponseCodeEnum::FILE_DELETED }, - { Status::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS, proto::ResponseCodeEnum::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS }, - { Status::SETTING_NEGATIVE_ACCOUNT_BALANCE, proto::ResponseCodeEnum::SETTING_NEGATIVE_ACCOUNT_BALANCE }, - { Status::OBTAINER_REQUIRED, proto::ResponseCodeEnum::OBTAINER_REQUIRED }, - { Status::OBTAINER_SAME_CONTRACT_ID, proto::ResponseCodeEnum::OBTAINER_SAME_CONTRACT_ID }, - { Status::OBTAINER_DOES_NOT_EXIST, proto::ResponseCodeEnum::OBTAINER_DOES_NOT_EXIST }, - { Status::MODIFYING_IMMUTABLE_CONTRACT, proto::ResponseCodeEnum::MODIFYING_IMMUTABLE_CONTRACT }, - { Status::FILE_SYSTEM_EXCEPTION, proto::ResponseCodeEnum::FILE_SYSTEM_EXCEPTION }, - { Status::AUTORENEW_DURATION_NOT_IN_RANGE, proto::ResponseCodeEnum::AUTORENEW_DURATION_NOT_IN_RANGE }, - { Status::ERROR_DECODING_BYTESTRING, proto::ResponseCodeEnum::ERROR_DECODING_BYTESTRING }, - { Status::CONTRACT_FILE_EMPTY, proto::ResponseCodeEnum::CONTRACT_FILE_EMPTY }, - { Status::CONTRACT_BYTECODE_EMPTY, proto::ResponseCodeEnum::CONTRACT_BYTECODE_EMPTY }, - { Status::INVALID_INITIAL_BALANCE, proto::ResponseCodeEnum::INVALID_INITIAL_BALANCE }, - { Status::ACCOUNT_IS_NOT_GENESIS_ACCOUNT, proto::ResponseCodeEnum::ACCOUNT_IS_NOT_GENESIS_ACCOUNT }, - { Status::PAYER_ACCOUNT_UNAUTHORIZED, proto::ResponseCodeEnum::PAYER_ACCOUNT_UNAUTHORIZED }, - { Status::INVALID_FREEZE_TRANSACTION_BODY, proto::ResponseCodeEnum::INVALID_FREEZE_TRANSACTION_BODY }, - { Status::FREEZE_TRANSACTION_BODY_NOT_FOUND, proto::ResponseCodeEnum::FREEZE_TRANSACTION_BODY_NOT_FOUND }, - { Status::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED }, - { Status::RESULT_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::RESULT_SIZE_LIMIT_EXCEEDED }, - { Status::NOT_SPECIAL_ACCOUNT, proto::ResponseCodeEnum::NOT_SPECIAL_ACCOUNT }, - { Status::CONTRACT_NEGATIVE_GAS, proto::ResponseCodeEnum::CONTRACT_NEGATIVE_GAS }, - { Status::CONTRACT_NEGATIVE_VALUE, proto::ResponseCodeEnum::CONTRACT_NEGATIVE_VALUE }, - { Status::INVALID_FEE_FILE, proto::ResponseCodeEnum::INVALID_FEE_FILE }, - { Status::INVALID_EXCHANGE_RATE_FILE, proto::ResponseCodeEnum::INVALID_EXCHANGE_RATE_FILE }, - { Status::INSUFFICIENT_LOCAL_CALL_GAS, proto::ResponseCodeEnum::INSUFFICIENT_LOCAL_CALL_GAS }, - { Status::ENTITY_NOT_ALLOWED_TO_DELETE, proto::ResponseCodeEnum::ENTITY_NOT_ALLOWED_TO_DELETE }, - { Status::AUTHORIZATION_FAILED, proto::ResponseCodeEnum::AUTHORIZATION_FAILED }, - { Status::FILE_UPLOADED_PROTO_INVALID, proto::ResponseCodeEnum::FILE_UPLOADED_PROTO_INVALID }, - { Status::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK, proto::ResponseCodeEnum::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK }, - { Status::FEE_SCHEDULE_FILE_PART_UPLOADED, proto::ResponseCodeEnum::FEE_SCHEDULE_FILE_PART_UPLOADED }, - { Status::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED }, - { Status::MAX_CONTRACT_STORAGE_EXCEEDED, proto::ResponseCodeEnum::MAX_CONTRACT_STORAGE_EXCEEDED }, - { Status::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT, proto::ResponseCodeEnum::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT }, - { Status::TOTAL_LEDGER_BALANCE_INVALID, proto::ResponseCodeEnum::TOTAL_LEDGER_BALANCE_INVALID }, - { Status::EXPIRATION_REDUCTION_NOT_ALLOWED, proto::ResponseCodeEnum::EXPIRATION_REDUCTION_NOT_ALLOWED }, - { Status::MAX_GAS_LIMIT_EXCEEDED, proto::ResponseCodeEnum::MAX_GAS_LIMIT_EXCEEDED }, - { Status::MAX_FILE_SIZE_EXCEEDED, proto::ResponseCodeEnum::MAX_FILE_SIZE_EXCEEDED }, - { Status::RECEIVER_SIG_REQUIRED, proto::ResponseCodeEnum::RECEIVER_SIG_REQUIRED }, - { Status::INVALID_TOPIC_ID, proto::ResponseCodeEnum::INVALID_TOPIC_ID }, - { Status::INVALID_ADMIN_KEY, proto::ResponseCodeEnum::INVALID_ADMIN_KEY }, - { Status::INVALID_SUBMIT_KEY, proto::ResponseCodeEnum::INVALID_SUBMIT_KEY }, - { Status::UNAUTHORIZED, proto::ResponseCodeEnum::UNAUTHORIZED }, - { Status::INVALID_TOPIC_MESSAGE, proto::ResponseCodeEnum::INVALID_TOPIC_MESSAGE }, - { Status::INVALID_AUTORENEW_ACCOUNT, proto::ResponseCodeEnum::INVALID_AUTORENEW_ACCOUNT }, - { Status::AUTORENEW_ACCOUNT_NOT_ALLOWED, proto::ResponseCodeEnum::AUTORENEW_ACCOUNT_NOT_ALLOWED }, - { Status::TOPIC_EXPIRED, proto::ResponseCodeEnum::TOPIC_EXPIRED }, - { Status::INVALID_CHUNK_NUMBER, proto::ResponseCodeEnum::INVALID_CHUNK_NUMBER }, - { Status::INVALID_CHUNK_TRANSACTION_ID, proto::ResponseCodeEnum::INVALID_CHUNK_TRANSACTION_ID }, - { Status::ACCOUNT_FROZEN_FOR_TOKEN, proto::ResponseCodeEnum::ACCOUNT_FROZEN_FOR_TOKEN }, - { Status::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED, proto::ResponseCodeEnum::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED }, - { Status::INVALID_TOKEN_ID, proto::ResponseCodeEnum::INVALID_TOKEN_ID }, - { Status::INVALID_TOKEN_DECIMALS, proto::ResponseCodeEnum::INVALID_TOKEN_DECIMALS }, - { Status::INVALID_TOKEN_INITIAL_SUPPLY, proto::ResponseCodeEnum::INVALID_TOKEN_INITIAL_SUPPLY }, - { Status::INVALID_TREASURY_ACCOUNT_FOR_TOKEN, proto::ResponseCodeEnum::INVALID_TREASURY_ACCOUNT_FOR_TOKEN }, - { Status::INVALID_TOKEN_SYMBOL, proto::ResponseCodeEnum::INVALID_TOKEN_SYMBOL }, - { Status::TOKEN_HAS_NO_FREEZE_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_FREEZE_KEY }, - { Status::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN, proto::ResponseCodeEnum::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN }, - { Status::MISSING_TOKEN_SYMBOL, proto::ResponseCodeEnum::MISSING_TOKEN_SYMBOL }, - { Status::TOKEN_SYMBOL_TOO_LONG, proto::ResponseCodeEnum::TOKEN_SYMBOL_TOO_LONG }, - { Status::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN, proto::ResponseCodeEnum::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN }, - { Status::TOKEN_HAS_NO_KYC_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_KYC_KEY }, - { Status::INSUFFICIENT_TOKEN_BALANCE, proto::ResponseCodeEnum::INSUFFICIENT_TOKEN_BALANCE }, - { Status::TOKEN_WAS_DELETED, proto::ResponseCodeEnum::TOKEN_WAS_DELETED }, - { Status::TOKEN_HAS_NO_SUPPLY_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_SUPPLY_KEY }, - { Status::TOKEN_HAS_NO_WIPE_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_WIPE_KEY }, - { Status::INVALID_TOKEN_MINT_AMOUNT, proto::ResponseCodeEnum::INVALID_TOKEN_MINT_AMOUNT }, - { Status::INVALID_TOKEN_BURN_AMOUNT, proto::ResponseCodeEnum::INVALID_TOKEN_BURN_AMOUNT }, - { Status::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT, proto::ResponseCodeEnum::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT }, - { Status::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT, proto::ResponseCodeEnum::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT }, - { Status::INVALID_KYC_KEY, proto::ResponseCodeEnum::INVALID_KYC_KEY }, - { Status::INVALID_WIPE_KEY, proto::ResponseCodeEnum::INVALID_WIPE_KEY }, - { Status::INVALID_FREEZE_KEY, proto::ResponseCodeEnum::INVALID_FREEZE_KEY }, - { Status::INVALID_SUPPLY_KEY, proto::ResponseCodeEnum::INVALID_SUPPLY_KEY }, - { Status::MISSING_TOKEN_NAME, proto::ResponseCodeEnum::MISSING_TOKEN_NAME }, - { Status::TOKEN_NAME_TOO_LONG, proto::ResponseCodeEnum::TOKEN_NAME_TOO_LONG }, - { Status::INVALID_WIPING_AMOUNT, proto::ResponseCodeEnum::INVALID_WIPING_AMOUNT }, - { Status::TOKEN_IS_IMMUTABLE, proto::ResponseCodeEnum::TOKEN_IS_IMMUTABLE }, - { Status::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT, proto::ResponseCodeEnum::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT }, + {Status::OK, proto::ResponseCodeEnum::OK }, + { Status::INVALID_TRANSACTION, proto::ResponseCodeEnum::INVALID_TRANSACTION }, + { Status::PAYER_ACCOUNT_NOT_FOUND, proto::ResponseCodeEnum::PAYER_ACCOUNT_NOT_FOUND }, + { Status::INVALID_NODE_ACCOUNT, proto::ResponseCodeEnum::INVALID_NODE_ACCOUNT }, + { Status::TRANSACTION_EXPIRED, proto::ResponseCodeEnum::TRANSACTION_EXPIRED }, + { Status::INVALID_TRANSACTION_START, proto::ResponseCodeEnum::INVALID_TRANSACTION_START }, + { Status::INVALID_TRANSACTION_DURATION, proto::ResponseCodeEnum::INVALID_TRANSACTION_DURATION }, + { Status::INVALID_SIGNATURE, proto::ResponseCodeEnum::INVALID_SIGNATURE }, + { Status::MEMO_TOO_LONG, proto::ResponseCodeEnum::MEMO_TOO_LONG }, + { Status::INSUFFICIENT_TX_FEE, proto::ResponseCodeEnum::INSUFFICIENT_TX_FEE }, + { Status::INSUFFICIENT_PAYER_BALANCE, proto::ResponseCodeEnum::INSUFFICIENT_PAYER_BALANCE }, + { Status::DUPLICATE_TRANSACTION, proto::ResponseCodeEnum::DUPLICATE_TRANSACTION }, + { Status::BUSY, proto::ResponseCodeEnum::BUSY }, + { Status::NOT_SUPPORTED, proto::ResponseCodeEnum::NOT_SUPPORTED }, + { Status::INVALID_FILE_ID, proto::ResponseCodeEnum::INVALID_FILE_ID }, + { Status::INVALID_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_ACCOUNT_ID }, + { Status::INVALID_CONTRACT_ID, proto::ResponseCodeEnum::INVALID_CONTRACT_ID }, + { Status::INVALID_TRANSACTION_ID, proto::ResponseCodeEnum::INVALID_TRANSACTION_ID }, + { Status::RECEIPT_NOT_FOUND, proto::ResponseCodeEnum::RECEIPT_NOT_FOUND }, + { Status::RECORD_NOT_FOUND, proto::ResponseCodeEnum::RECORD_NOT_FOUND }, + { Status::INVALID_SOLIDITY_ID, proto::ResponseCodeEnum::INVALID_SOLIDITY_ID }, + { Status::UNKNOWN, proto::ResponseCodeEnum::UNKNOWN }, + { Status::SUCCESS, proto::ResponseCodeEnum::SUCCESS }, + { Status::FAIL_INVALID, proto::ResponseCodeEnum::FAIL_INVALID }, + { Status::FAIL_FEE, proto::ResponseCodeEnum::FAIL_FEE }, + { Status::FAIL_BALANCE, proto::ResponseCodeEnum::FAIL_BALANCE }, + { Status::KEY_REQUIRED, proto::ResponseCodeEnum::KEY_REQUIRED }, + { Status::BAD_ENCODING, proto::ResponseCodeEnum::BAD_ENCODING }, + { Status::INSUFFICIENT_ACCOUNT_BALANCE, proto::ResponseCodeEnum::INSUFFICIENT_ACCOUNT_BALANCE }, + { Status::INVALID_SOLIDITY_ADDRESS, proto::ResponseCodeEnum::INVALID_SOLIDITY_ADDRESS }, + { Status::INSUFFICIENT_GAS, proto::ResponseCodeEnum::INSUFFICIENT_GAS }, + { Status::CONTRACT_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::CONTRACT_SIZE_LIMIT_EXCEEDED }, + { Status::LOCAL_CALL_MODIFICATION_EXCEPTION, proto::ResponseCodeEnum::LOCAL_CALL_MODIFICATION_EXCEPTION }, + { Status::CONTRACT_REVERT_EXECUTED, proto::ResponseCodeEnum::CONTRACT_REVERT_EXECUTED }, + { Status::CONTRACT_EXECUTION_EXCEPTION, proto::ResponseCodeEnum::CONTRACT_EXECUTION_EXCEPTION }, + { Status::INVALID_RECEIVING_NODE_ACCOUNT, proto::ResponseCodeEnum::INVALID_RECEIVING_NODE_ACCOUNT }, + { Status::MISSING_QUERY_HEADER, proto::ResponseCodeEnum::MISSING_QUERY_HEADER }, + { Status::ACCOUNT_UPDATE_FAILED, proto::ResponseCodeEnum::ACCOUNT_UPDATE_FAILED }, + { Status::INVALID_KEY_ENCODING, proto::ResponseCodeEnum::INVALID_KEY_ENCODING }, + { Status::NULL_SOLIDITY_ADDRESS, proto::ResponseCodeEnum::NULL_SOLIDITY_ADDRESS }, + { Status::CONTRACT_UPDATE_FAILED, proto::ResponseCodeEnum::CONTRACT_UPDATE_FAILED }, + { Status::INVALID_QUERY_HEADER, proto::ResponseCodeEnum::INVALID_QUERY_HEADER }, + { Status::INVALID_FEE_SUBMITTED, proto::ResponseCodeEnum::INVALID_FEE_SUBMITTED }, + { Status::INVALID_PAYER_SIGNATURE, proto::ResponseCodeEnum::INVALID_PAYER_SIGNATURE }, + { Status::KEY_NOT_PROVIDED, proto::ResponseCodeEnum::KEY_NOT_PROVIDED }, + { Status::INVALID_EXPIRATION_TIME, proto::ResponseCodeEnum::INVALID_EXPIRATION_TIME }, + { Status::NO_WACL_KEY, proto::ResponseCodeEnum::NO_WACL_KEY }, + { Status::FILE_CONTENT_EMPTY, proto::ResponseCodeEnum::FILE_CONTENT_EMPTY }, + { Status::INVALID_ACCOUNT_AMOUNTS, proto::ResponseCodeEnum::INVALID_ACCOUNT_AMOUNTS }, + { Status::EMPTY_TRANSACTION_BODY, proto::ResponseCodeEnum::EMPTY_TRANSACTION_BODY }, + { Status::INVALID_TRANSACTION_BODY, proto::ResponseCodeEnum::INVALID_TRANSACTION_BODY }, + { Status::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY, proto::ResponseCodeEnum::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY }, + { Status::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY, proto::ResponseCodeEnum::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY}, + { Status::EMPTY_LIVE_HASH_BODY, proto::ResponseCodeEnum::EMPTY_LIVE_HASH_BODY }, + { Status::EMPTY_LIVE_HASH, proto::ResponseCodeEnum::EMPTY_LIVE_HASH }, + { Status::EMPTY_LIVE_HASH_KEYS, proto::ResponseCodeEnum::EMPTY_LIVE_HASH_KEYS }, + { Status::INVALID_LIVE_HASH_SIZE, proto::ResponseCodeEnum::INVALID_LIVE_HASH_SIZE }, + { Status::EMPTY_QUERY_BODY, proto::ResponseCodeEnum::EMPTY_QUERY_BODY }, + { Status::EMPTY_LIVE_HASH_QUERY, proto::ResponseCodeEnum::EMPTY_LIVE_HASH_QUERY }, + { Status::LIVE_HASH_NOT_FOUND, proto::ResponseCodeEnum::LIVE_HASH_NOT_FOUND }, + { Status::ACCOUNT_ID_DOES_NOT_EXIST, proto::ResponseCodeEnum::ACCOUNT_ID_DOES_NOT_EXIST }, + { Status::LIVE_HASH_ALREADY_EXISTS, proto::ResponseCodeEnum::LIVE_HASH_ALREADY_EXISTS }, + { Status::INVALID_FILE_WACL, proto::ResponseCodeEnum::INVALID_FILE_WACL }, + { Status::SERIALIZATION_FAILED, proto::ResponseCodeEnum::SERIALIZATION_FAILED }, + { Status::TRANSACTION_OVERSIZE, proto::ResponseCodeEnum::TRANSACTION_OVERSIZE }, + { Status::TRANSACTION_TOO_MANY_LAYERS, proto::ResponseCodeEnum::TRANSACTION_TOO_MANY_LAYERS }, + { Status::CONTRACT_DELETED, proto::ResponseCodeEnum::CONTRACT_DELETED }, + { Status::PLATFORM_NOT_ACTIVE, proto::ResponseCodeEnum::PLATFORM_NOT_ACTIVE }, + { Status::KEY_PREFIX_MISMATCH, proto::ResponseCodeEnum::KEY_PREFIX_MISMATCH }, + { Status::PLATFORM_TRANSACTION_NOT_CREATED, proto::ResponseCodeEnum::PLATFORM_TRANSACTION_NOT_CREATED }, + { Status::INVALID_RENEWAL_PERIOD, proto::ResponseCodeEnum::INVALID_RENEWAL_PERIOD }, + { Status::INVALID_PAYER_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_PAYER_ACCOUNT_ID }, + { Status::ACCOUNT_DELETED, proto::ResponseCodeEnum::ACCOUNT_DELETED }, + { Status::FILE_DELETED, proto::ResponseCodeEnum::FILE_DELETED }, + { Status::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS, proto::ResponseCodeEnum::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS }, + { Status::SETTING_NEGATIVE_ACCOUNT_BALANCE, proto::ResponseCodeEnum::SETTING_NEGATIVE_ACCOUNT_BALANCE }, + { Status::OBTAINER_REQUIRED, proto::ResponseCodeEnum::OBTAINER_REQUIRED }, + { Status::OBTAINER_SAME_CONTRACT_ID, proto::ResponseCodeEnum::OBTAINER_SAME_CONTRACT_ID }, + { Status::OBTAINER_DOES_NOT_EXIST, proto::ResponseCodeEnum::OBTAINER_DOES_NOT_EXIST }, + { Status::MODIFYING_IMMUTABLE_CONTRACT, proto::ResponseCodeEnum::MODIFYING_IMMUTABLE_CONTRACT }, + { Status::FILE_SYSTEM_EXCEPTION, proto::ResponseCodeEnum::FILE_SYSTEM_EXCEPTION }, + { Status::AUTORENEW_DURATION_NOT_IN_RANGE, proto::ResponseCodeEnum::AUTORENEW_DURATION_NOT_IN_RANGE }, + { Status::ERROR_DECODING_BYTESTRING, proto::ResponseCodeEnum::ERROR_DECODING_BYTESTRING }, + { Status::CONTRACT_FILE_EMPTY, proto::ResponseCodeEnum::CONTRACT_FILE_EMPTY }, + { Status::CONTRACT_BYTECODE_EMPTY, proto::ResponseCodeEnum::CONTRACT_BYTECODE_EMPTY }, + { Status::INVALID_INITIAL_BALANCE, proto::ResponseCodeEnum::INVALID_INITIAL_BALANCE }, + { Status::ACCOUNT_IS_NOT_GENESIS_ACCOUNT, proto::ResponseCodeEnum::ACCOUNT_IS_NOT_GENESIS_ACCOUNT }, + { Status::PAYER_ACCOUNT_UNAUTHORIZED, proto::ResponseCodeEnum::PAYER_ACCOUNT_UNAUTHORIZED }, + { Status::INVALID_FREEZE_TRANSACTION_BODY, proto::ResponseCodeEnum::INVALID_FREEZE_TRANSACTION_BODY }, + { Status::FREEZE_TRANSACTION_BODY_NOT_FOUND, proto::ResponseCodeEnum::FREEZE_TRANSACTION_BODY_NOT_FOUND }, + { Status::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED }, + { Status::RESULT_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::RESULT_SIZE_LIMIT_EXCEEDED }, + { Status::NOT_SPECIAL_ACCOUNT, proto::ResponseCodeEnum::NOT_SPECIAL_ACCOUNT }, + { Status::CONTRACT_NEGATIVE_GAS, proto::ResponseCodeEnum::CONTRACT_NEGATIVE_GAS }, + { Status::CONTRACT_NEGATIVE_VALUE, proto::ResponseCodeEnum::CONTRACT_NEGATIVE_VALUE }, + { Status::INVALID_FEE_FILE, proto::ResponseCodeEnum::INVALID_FEE_FILE }, + { Status::INVALID_EXCHANGE_RATE_FILE, proto::ResponseCodeEnum::INVALID_EXCHANGE_RATE_FILE }, + { Status::INSUFFICIENT_LOCAL_CALL_GAS, proto::ResponseCodeEnum::INSUFFICIENT_LOCAL_CALL_GAS }, + { Status::ENTITY_NOT_ALLOWED_TO_DELETE, proto::ResponseCodeEnum::ENTITY_NOT_ALLOWED_TO_DELETE }, + { Status::AUTHORIZATION_FAILED, proto::ResponseCodeEnum::AUTHORIZATION_FAILED }, + { Status::FILE_UPLOADED_PROTO_INVALID, proto::ResponseCodeEnum::FILE_UPLOADED_PROTO_INVALID }, + { Status::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK, proto::ResponseCodeEnum::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK }, + { Status::FEE_SCHEDULE_FILE_PART_UPLOADED, proto::ResponseCodeEnum::FEE_SCHEDULE_FILE_PART_UPLOADED }, + { Status::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED }, + { Status::MAX_CONTRACT_STORAGE_EXCEEDED, proto::ResponseCodeEnum::MAX_CONTRACT_STORAGE_EXCEEDED }, + { Status::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT, proto::ResponseCodeEnum::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT}, + { Status::TOTAL_LEDGER_BALANCE_INVALID, proto::ResponseCodeEnum::TOTAL_LEDGER_BALANCE_INVALID }, + { Status::EXPIRATION_REDUCTION_NOT_ALLOWED, proto::ResponseCodeEnum::EXPIRATION_REDUCTION_NOT_ALLOWED }, + { Status::MAX_GAS_LIMIT_EXCEEDED, proto::ResponseCodeEnum::MAX_GAS_LIMIT_EXCEEDED }, + { Status::MAX_FILE_SIZE_EXCEEDED, proto::ResponseCodeEnum::MAX_FILE_SIZE_EXCEEDED }, + { Status::RECEIVER_SIG_REQUIRED, proto::ResponseCodeEnum::RECEIVER_SIG_REQUIRED }, + { Status::INVALID_TOPIC_ID, proto::ResponseCodeEnum::INVALID_TOPIC_ID }, + { Status::INVALID_ADMIN_KEY, proto::ResponseCodeEnum::INVALID_ADMIN_KEY }, + { Status::INVALID_SUBMIT_KEY, proto::ResponseCodeEnum::INVALID_SUBMIT_KEY }, + { Status::UNAUTHORIZED, proto::ResponseCodeEnum::UNAUTHORIZED }, + { Status::INVALID_TOPIC_MESSAGE, proto::ResponseCodeEnum::INVALID_TOPIC_MESSAGE }, + { Status::INVALID_AUTORENEW_ACCOUNT, proto::ResponseCodeEnum::INVALID_AUTORENEW_ACCOUNT }, + { Status::AUTORENEW_ACCOUNT_NOT_ALLOWED, proto::ResponseCodeEnum::AUTORENEW_ACCOUNT_NOT_ALLOWED }, + { Status::TOPIC_EXPIRED, proto::ResponseCodeEnum::TOPIC_EXPIRED }, + { Status::INVALID_CHUNK_NUMBER, proto::ResponseCodeEnum::INVALID_CHUNK_NUMBER }, + { Status::INVALID_CHUNK_TRANSACTION_ID, proto::ResponseCodeEnum::INVALID_CHUNK_TRANSACTION_ID }, + { Status::ACCOUNT_FROZEN_FOR_TOKEN, proto::ResponseCodeEnum::ACCOUNT_FROZEN_FOR_TOKEN }, + { Status::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED, proto::ResponseCodeEnum::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED }, + { Status::INVALID_TOKEN_ID, proto::ResponseCodeEnum::INVALID_TOKEN_ID }, + { Status::INVALID_TOKEN_DECIMALS, proto::ResponseCodeEnum::INVALID_TOKEN_DECIMALS }, + { Status::INVALID_TOKEN_INITIAL_SUPPLY, proto::ResponseCodeEnum::INVALID_TOKEN_INITIAL_SUPPLY }, + { Status::INVALID_TREASURY_ACCOUNT_FOR_TOKEN, proto::ResponseCodeEnum::INVALID_TREASURY_ACCOUNT_FOR_TOKEN }, + { Status::INVALID_TOKEN_SYMBOL, proto::ResponseCodeEnum::INVALID_TOKEN_SYMBOL }, + { Status::TOKEN_HAS_NO_FREEZE_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_FREEZE_KEY }, + { Status::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN, proto::ResponseCodeEnum::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN }, + { Status::MISSING_TOKEN_SYMBOL, proto::ResponseCodeEnum::MISSING_TOKEN_SYMBOL }, + { Status::TOKEN_SYMBOL_TOO_LONG, proto::ResponseCodeEnum::TOKEN_SYMBOL_TOO_LONG }, + { Status::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN, proto::ResponseCodeEnum::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN }, + { Status::TOKEN_HAS_NO_KYC_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_KYC_KEY }, + { Status::INSUFFICIENT_TOKEN_BALANCE, proto::ResponseCodeEnum::INSUFFICIENT_TOKEN_BALANCE }, + { Status::TOKEN_WAS_DELETED, proto::ResponseCodeEnum::TOKEN_WAS_DELETED }, + { Status::TOKEN_HAS_NO_SUPPLY_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_SUPPLY_KEY }, + { Status::TOKEN_HAS_NO_WIPE_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_WIPE_KEY }, + { Status::INVALID_TOKEN_MINT_AMOUNT, proto::ResponseCodeEnum::INVALID_TOKEN_MINT_AMOUNT }, + { Status::INVALID_TOKEN_BURN_AMOUNT, proto::ResponseCodeEnum::INVALID_TOKEN_BURN_AMOUNT }, + { Status::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT, proto::ResponseCodeEnum::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT }, + { Status::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT, proto::ResponseCodeEnum::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT }, + { Status::INVALID_KYC_KEY, proto::ResponseCodeEnum::INVALID_KYC_KEY }, + { Status::INVALID_WIPE_KEY, proto::ResponseCodeEnum::INVALID_WIPE_KEY }, + { Status::INVALID_FREEZE_KEY, proto::ResponseCodeEnum::INVALID_FREEZE_KEY }, + { Status::INVALID_SUPPLY_KEY, proto::ResponseCodeEnum::INVALID_SUPPLY_KEY }, + { Status::MISSING_TOKEN_NAME, proto::ResponseCodeEnum::MISSING_TOKEN_NAME }, + { Status::TOKEN_NAME_TOO_LONG, proto::ResponseCodeEnum::TOKEN_NAME_TOO_LONG }, + { Status::INVALID_WIPING_AMOUNT, proto::ResponseCodeEnum::INVALID_WIPING_AMOUNT }, + { Status::TOKEN_IS_IMMUTABLE, proto::ResponseCodeEnum::TOKEN_IS_IMMUTABLE }, + { Status::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT, proto::ResponseCodeEnum::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT }, { Status::TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES, - proto::ResponseCodeEnum::TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES }, - { Status::ACCOUNT_IS_TREASURY, proto::ResponseCodeEnum::ACCOUNT_IS_TREASURY }, - { Status::TOKEN_ID_REPEATED_IN_TOKEN_LIST, proto::ResponseCodeEnum::TOKEN_ID_REPEATED_IN_TOKEN_LIST }, - { Status::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED }, - { Status::EMPTY_TOKEN_TRANSFER_BODY, proto::ResponseCodeEnum::EMPTY_TOKEN_TRANSFER_BODY }, - { Status::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS, proto::ResponseCodeEnum::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS }, - { Status::INVALID_SCHEDULE_ID, proto::ResponseCodeEnum::INVALID_SCHEDULE_ID }, - { Status::SCHEDULE_IS_IMMUTABLE, proto::ResponseCodeEnum::SCHEDULE_IS_IMMUTABLE }, - { Status::INVALID_SCHEDULE_PAYER_ID, proto::ResponseCodeEnum::INVALID_SCHEDULE_PAYER_ID }, - { Status::INVALID_SCHEDULE_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_SCHEDULE_ACCOUNT_ID }, - { Status::NO_NEW_VALID_SIGNATURES, proto::ResponseCodeEnum::NO_NEW_VALID_SIGNATURES }, - { Status::UNRESOLVABLE_REQUIRED_SIGNERS, proto::ResponseCodeEnum::UNRESOLVABLE_REQUIRED_SIGNERS }, - { Status::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST, proto::ResponseCodeEnum::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST }, - { Status::SOME_SIGNATURES_WERE_INVALID, proto::ResponseCodeEnum::SOME_SIGNATURES_WERE_INVALID }, - { Status::TRANSACTION_ID_FIELD_NOT_ALLOWED, proto::ResponseCodeEnum::TRANSACTION_ID_FIELD_NOT_ALLOWED }, - { Status::IDENTICAL_SCHEDULE_ALREADY_CREATED, proto::ResponseCodeEnum::IDENTICAL_SCHEDULE_ALREADY_CREATED }, - { Status::INVALID_ZERO_BYTE_IN_STRING, proto::ResponseCodeEnum::INVALID_ZERO_BYTE_IN_STRING }, - { Status::SCHEDULE_ALREADY_DELETED, proto::ResponseCodeEnum::SCHEDULE_ALREADY_DELETED }, - { Status::SCHEDULE_ALREADY_EXECUTED, proto::ResponseCodeEnum::SCHEDULE_ALREADY_EXECUTED }, - { Status::MESSAGE_SIZE_TOO_LARGE, proto::ResponseCodeEnum::MESSAGE_SIZE_TOO_LARGE }, - { Status::OPERATION_REPEATED_IN_BUCKET_GROUPS, proto::ResponseCodeEnum::OPERATION_REPEATED_IN_BUCKET_GROUPS }, - { Status::BUCKET_CAPACITY_OVERFLOW, proto::ResponseCodeEnum::BUCKET_CAPACITY_OVERFLOW }, + proto::ResponseCodeEnum::TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES }, + { Status::ACCOUNT_IS_TREASURY, proto::ResponseCodeEnum::ACCOUNT_IS_TREASURY }, + { Status::TOKEN_ID_REPEATED_IN_TOKEN_LIST, proto::ResponseCodeEnum::TOKEN_ID_REPEATED_IN_TOKEN_LIST }, + { Status::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED}, + { Status::EMPTY_TOKEN_TRANSFER_BODY, proto::ResponseCodeEnum::EMPTY_TOKEN_TRANSFER_BODY }, + { Status::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS, proto::ResponseCodeEnum::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS }, + { Status::INVALID_SCHEDULE_ID, proto::ResponseCodeEnum::INVALID_SCHEDULE_ID }, + { Status::SCHEDULE_IS_IMMUTABLE, proto::ResponseCodeEnum::SCHEDULE_IS_IMMUTABLE }, + { Status::INVALID_SCHEDULE_PAYER_ID, proto::ResponseCodeEnum::INVALID_SCHEDULE_PAYER_ID }, + { Status::INVALID_SCHEDULE_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_SCHEDULE_ACCOUNT_ID }, + { Status::NO_NEW_VALID_SIGNATURES, proto::ResponseCodeEnum::NO_NEW_VALID_SIGNATURES }, + { Status::UNRESOLVABLE_REQUIRED_SIGNERS, proto::ResponseCodeEnum::UNRESOLVABLE_REQUIRED_SIGNERS }, + { Status::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST, proto::ResponseCodeEnum::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST }, + { Status::SOME_SIGNATURES_WERE_INVALID, proto::ResponseCodeEnum::SOME_SIGNATURES_WERE_INVALID }, + { Status::TRANSACTION_ID_FIELD_NOT_ALLOWED, proto::ResponseCodeEnum::TRANSACTION_ID_FIELD_NOT_ALLOWED }, + { Status::IDENTICAL_SCHEDULE_ALREADY_CREATED, proto::ResponseCodeEnum::IDENTICAL_SCHEDULE_ALREADY_CREATED }, + { Status::INVALID_ZERO_BYTE_IN_STRING, proto::ResponseCodeEnum::INVALID_ZERO_BYTE_IN_STRING }, + { Status::SCHEDULE_ALREADY_DELETED, proto::ResponseCodeEnum::SCHEDULE_ALREADY_DELETED }, + { Status::SCHEDULE_ALREADY_EXECUTED, proto::ResponseCodeEnum::SCHEDULE_ALREADY_EXECUTED }, + { Status::MESSAGE_SIZE_TOO_LARGE, proto::ResponseCodeEnum::MESSAGE_SIZE_TOO_LARGE }, + { Status::OPERATION_REPEATED_IN_BUCKET_GROUPS, proto::ResponseCodeEnum::OPERATION_REPEATED_IN_BUCKET_GROUPS }, + { Status::BUCKET_CAPACITY_OVERFLOW, proto::ResponseCodeEnum::BUCKET_CAPACITY_OVERFLOW }, { Status::NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION, - proto::ResponseCodeEnum::NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION }, - { Status::BUCKET_HAS_NO_THROTTLE_GROUPS, proto::ResponseCodeEnum::BUCKET_HAS_NO_THROTTLE_GROUPS }, - { Status::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC, proto::ResponseCodeEnum::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC }, - { Status::SUCCESS_BUT_MISSING_EXPECTED_OPERATION, proto::ResponseCodeEnum::SUCCESS_BUT_MISSING_EXPECTED_OPERATION }, - { Status::UNPARSEABLE_THROTTLE_DEFINITIONS, proto::ResponseCodeEnum::UNPARSEABLE_THROTTLE_DEFINITIONS }, - { Status::INVALID_THROTTLE_DEFINITIONS, proto::ResponseCodeEnum::INVALID_THROTTLE_DEFINITIONS }, - { Status::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL, proto::ResponseCodeEnum::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL }, - { Status::INVALID_TOKEN_MAX_SUPPLY, proto::ResponseCodeEnum::INVALID_TOKEN_MAX_SUPPLY }, - { Status::INVALID_TOKEN_NFT_SERIAL_NUMBER, proto::ResponseCodeEnum::INVALID_TOKEN_NFT_SERIAL_NUMBER }, - { Status::INVALID_NFT_ID, proto::ResponseCodeEnum::INVALID_NFT_ID }, - { Status::METADATA_TOO_LONG, proto::ResponseCodeEnum::METADATA_TOO_LONG }, - { Status::BATCH_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::BATCH_SIZE_LIMIT_EXCEEDED }, - { Status::INVALID_QUERY_RANGE, proto::ResponseCodeEnum::INVALID_QUERY_RANGE }, - { Status::FRACTION_DIVIDES_BY_ZERO, proto::ResponseCodeEnum::FRACTION_DIVIDES_BY_ZERO }, - { Status::CUSTOM_FEES_LIST_TOO_LONG, proto::ResponseCodeEnum::CUSTOM_FEES_LIST_TOO_LONG }, - { Status::INVALID_CUSTOM_FEE_COLLECTOR, proto::ResponseCodeEnum::INVALID_CUSTOM_FEE_COLLECTOR }, - { Status::INVALID_TOKEN_ID_IN_CUSTOM_FEES, proto::ResponseCodeEnum::INVALID_TOKEN_ID_IN_CUSTOM_FEES }, - { Status::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR, proto::ResponseCodeEnum::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR }, - { Status::TOKEN_MAX_SUPPLY_REACHED, proto::ResponseCodeEnum::TOKEN_MAX_SUPPLY_REACHED }, - { Status::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO, proto::ResponseCodeEnum::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO }, - { Status::CUSTOM_FEE_NOT_FULLY_SPECIFIED, proto::ResponseCodeEnum::CUSTOM_FEE_NOT_FULLY_SPECIFIED }, - { Status::CUSTOM_FEE_MUST_BE_POSITIVE, proto::ResponseCodeEnum::CUSTOM_FEE_MUST_BE_POSITIVE }, - { Status::TOKEN_HAS_NO_FEE_SCHEDULE_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_FEE_SCHEDULE_KEY }, - { Status::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE, proto::ResponseCodeEnum::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE }, - { Status::ROYALTY_FRACTION_CANNOT_EXCEED_ONE, proto::ResponseCodeEnum::ROYALTY_FRACTION_CANNOT_EXCEED_ONE }, + proto::ResponseCodeEnum::NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION }, + { Status::BUCKET_HAS_NO_THROTTLE_GROUPS, proto::ResponseCodeEnum::BUCKET_HAS_NO_THROTTLE_GROUPS }, + { Status::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC, proto::ResponseCodeEnum::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC }, + { Status::SUCCESS_BUT_MISSING_EXPECTED_OPERATION, proto::ResponseCodeEnum::SUCCESS_BUT_MISSING_EXPECTED_OPERATION }, + { Status::UNPARSEABLE_THROTTLE_DEFINITIONS, proto::ResponseCodeEnum::UNPARSEABLE_THROTTLE_DEFINITIONS }, + { Status::INVALID_THROTTLE_DEFINITIONS, proto::ResponseCodeEnum::INVALID_THROTTLE_DEFINITIONS }, + { Status::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL, proto::ResponseCodeEnum::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL }, + { Status::INVALID_TOKEN_MAX_SUPPLY, proto::ResponseCodeEnum::INVALID_TOKEN_MAX_SUPPLY }, + { Status::INVALID_TOKEN_NFT_SERIAL_NUMBER, proto::ResponseCodeEnum::INVALID_TOKEN_NFT_SERIAL_NUMBER }, + { Status::INVALID_NFT_ID, proto::ResponseCodeEnum::INVALID_NFT_ID }, + { Status::METADATA_TOO_LONG, proto::ResponseCodeEnum::METADATA_TOO_LONG }, + { Status::BATCH_SIZE_LIMIT_EXCEEDED, proto::ResponseCodeEnum::BATCH_SIZE_LIMIT_EXCEEDED }, + { Status::INVALID_QUERY_RANGE, proto::ResponseCodeEnum::INVALID_QUERY_RANGE }, + { Status::FRACTION_DIVIDES_BY_ZERO, proto::ResponseCodeEnum::FRACTION_DIVIDES_BY_ZERO }, + { Status::CUSTOM_FEES_LIST_TOO_LONG, proto::ResponseCodeEnum::CUSTOM_FEES_LIST_TOO_LONG }, + { Status::INVALID_CUSTOM_FEE_COLLECTOR, proto::ResponseCodeEnum::INVALID_CUSTOM_FEE_COLLECTOR }, + { Status::INVALID_TOKEN_ID_IN_CUSTOM_FEES, proto::ResponseCodeEnum::INVALID_TOKEN_ID_IN_CUSTOM_FEES }, + { Status::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR, proto::ResponseCodeEnum::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR }, + { Status::TOKEN_MAX_SUPPLY_REACHED, proto::ResponseCodeEnum::TOKEN_MAX_SUPPLY_REACHED }, + { Status::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO, proto::ResponseCodeEnum::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO }, + { Status::CUSTOM_FEE_NOT_FULLY_SPECIFIED, proto::ResponseCodeEnum::CUSTOM_FEE_NOT_FULLY_SPECIFIED }, + { Status::CUSTOM_FEE_MUST_BE_POSITIVE, proto::ResponseCodeEnum::CUSTOM_FEE_MUST_BE_POSITIVE }, + { Status::TOKEN_HAS_NO_FEE_SCHEDULE_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_FEE_SCHEDULE_KEY }, + { Status::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE, proto::ResponseCodeEnum::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE }, + { Status::ROYALTY_FRACTION_CANNOT_EXCEED_ONE, proto::ResponseCodeEnum::ROYALTY_FRACTION_CANNOT_EXCEED_ONE }, { Status::FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT, - proto::ResponseCodeEnum::FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT }, - { Status::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES, proto::ResponseCodeEnum::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES }, + proto::ResponseCodeEnum::FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT }, + { Status::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES, proto::ResponseCodeEnum::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES }, { Status::CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON, - proto::ResponseCodeEnum::CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON }, + proto::ResponseCodeEnum::CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON }, { Status::CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON, - proto::ResponseCodeEnum::CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON }, - { Status::INVALID_CUSTOM_FEE_SCHEDULE_KEY, proto::ResponseCodeEnum::INVALID_CUSTOM_FEE_SCHEDULE_KEY }, - { Status::INVALID_TOKEN_MINT_METADATA, proto::ResponseCodeEnum::INVALID_TOKEN_MINT_METADATA }, - { Status::INVALID_TOKEN_BURN_METADATA, proto::ResponseCodeEnum::INVALID_TOKEN_BURN_METADATA }, - { Status::CURRENT_TREASURY_STILL_OWNS_NFTS, proto::ResponseCodeEnum::CURRENT_TREASURY_STILL_OWNS_NFTS }, - { Status::ACCOUNT_STILL_OWNS_NFTS, proto::ResponseCodeEnum::ACCOUNT_STILL_OWNS_NFTS }, - { Status::TREASURY_MUST_OWN_BURNED_NFT, proto::ResponseCodeEnum::TREASURY_MUST_OWN_BURNED_NFT }, - { Status::ACCOUNT_DOES_NOT_OWN_WIPED_NFT, proto::ResponseCodeEnum::ACCOUNT_DOES_NOT_OWN_WIPED_NFT }, + proto::ResponseCodeEnum::CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON }, + { Status::INVALID_CUSTOM_FEE_SCHEDULE_KEY, proto::ResponseCodeEnum::INVALID_CUSTOM_FEE_SCHEDULE_KEY }, + { Status::INVALID_TOKEN_MINT_METADATA, proto::ResponseCodeEnum::INVALID_TOKEN_MINT_METADATA }, + { Status::INVALID_TOKEN_BURN_METADATA, proto::ResponseCodeEnum::INVALID_TOKEN_BURN_METADATA }, + { Status::CURRENT_TREASURY_STILL_OWNS_NFTS, proto::ResponseCodeEnum::CURRENT_TREASURY_STILL_OWNS_NFTS }, + { Status::ACCOUNT_STILL_OWNS_NFTS, proto::ResponseCodeEnum::ACCOUNT_STILL_OWNS_NFTS }, + { Status::TREASURY_MUST_OWN_BURNED_NFT, proto::ResponseCodeEnum::TREASURY_MUST_OWN_BURNED_NFT }, + { Status::ACCOUNT_DOES_NOT_OWN_WIPED_NFT, proto::ResponseCodeEnum::ACCOUNT_DOES_NOT_OWN_WIPED_NFT }, { Status::ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON, - proto::ResponseCodeEnum::ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON }, + proto::ResponseCodeEnum::ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON }, { Status::MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED, - proto::ResponseCodeEnum::MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED }, - { Status::PAYER_ACCOUNT_DELETED, proto::ResponseCodeEnum::PAYER_ACCOUNT_DELETED }, + proto::ResponseCodeEnum::MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED }, + { Status::PAYER_ACCOUNT_DELETED, proto::ResponseCodeEnum::PAYER_ACCOUNT_DELETED }, { Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH, - proto::ResponseCodeEnum::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH }, + proto::ResponseCodeEnum::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH }, { Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS, - proto::ResponseCodeEnum::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS }, + proto::ResponseCodeEnum::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS }, { Status::INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE, - proto::ResponseCodeEnum::INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE }, - { Status::SERIAL_NUMBER_LIMIT_REACHED, proto::ResponseCodeEnum::SERIAL_NUMBER_LIMIT_REACHED }, + proto::ResponseCodeEnum::INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE }, + { Status::SERIAL_NUMBER_LIMIT_REACHED, proto::ResponseCodeEnum::SERIAL_NUMBER_LIMIT_REACHED }, { Status::CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE, - proto::ResponseCodeEnum::CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE }, - { Status::NO_REMAINING_AUTOMATIC_ASSOCIATIONS, proto::ResponseCodeEnum::NO_REMAINING_AUTOMATIC_ASSOCIATIONS }, + proto::ResponseCodeEnum::CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE }, + { Status::NO_REMAINING_AUTOMATIC_ASSOCIATIONS, proto::ResponseCodeEnum::NO_REMAINING_AUTOMATIC_ASSOCIATIONS }, { Status::EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT, - proto::ResponseCodeEnum::EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT }, + proto::ResponseCodeEnum::EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT }, { Status::REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT, - proto::ResponseCodeEnum::REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT }, - { Status::TOKEN_IS_PAUSED, proto::ResponseCodeEnum::TOKEN_IS_PAUSED }, - { Status::TOKEN_HAS_NO_PAUSE_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_PAUSE_KEY }, - { Status::INVALID_PAUSE_KEY, proto::ResponseCodeEnum::INVALID_PAUSE_KEY }, - { Status::FREEZE_UPDATE_FILE_DOES_NOT_EXIST, proto::ResponseCodeEnum::FREEZE_UPDATE_FILE_DOES_NOT_EXIST }, - { Status::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH, proto::ResponseCodeEnum::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH }, - { Status::NO_UPGRADE_HAS_BEEN_PREPARED, proto::ResponseCodeEnum::NO_UPGRADE_HAS_BEEN_PREPARED }, - { Status::NO_FREEZE_IS_SCHEDULED, proto::ResponseCodeEnum::NO_FREEZE_IS_SCHEDULED }, + proto::ResponseCodeEnum::REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT }, + { Status::TOKEN_IS_PAUSED, proto::ResponseCodeEnum::TOKEN_IS_PAUSED }, + { Status::TOKEN_HAS_NO_PAUSE_KEY, proto::ResponseCodeEnum::TOKEN_HAS_NO_PAUSE_KEY }, + { Status::INVALID_PAUSE_KEY, proto::ResponseCodeEnum::INVALID_PAUSE_KEY }, + { Status::FREEZE_UPDATE_FILE_DOES_NOT_EXIST, proto::ResponseCodeEnum::FREEZE_UPDATE_FILE_DOES_NOT_EXIST }, + { Status::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH, proto::ResponseCodeEnum::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH }, + { Status::NO_UPGRADE_HAS_BEEN_PREPARED, proto::ResponseCodeEnum::NO_UPGRADE_HAS_BEEN_PREPARED }, + { Status::NO_FREEZE_IS_SCHEDULED, proto::ResponseCodeEnum::NO_FREEZE_IS_SCHEDULED }, { Status::UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE, - proto::ResponseCodeEnum::UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE }, - { Status::FREEZE_START_TIME_MUST_BE_FUTURE, proto::ResponseCodeEnum::FREEZE_START_TIME_MUST_BE_FUTURE }, - { Status::PREPARED_UPDATE_FILE_IS_IMMUTABLE, proto::ResponseCodeEnum::PREPARED_UPDATE_FILE_IS_IMMUTABLE }, - { Status::FREEZE_ALREADY_SCHEDULED, proto::ResponseCodeEnum::FREEZE_ALREADY_SCHEDULED }, - { Status::FREEZE_UPGRADE_IN_PROGRESS, proto::ResponseCodeEnum::FREEZE_UPGRADE_IN_PROGRESS }, - { Status::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED, proto::ResponseCodeEnum::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED }, + proto::ResponseCodeEnum::UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE }, + { Status::FREEZE_START_TIME_MUST_BE_FUTURE, proto::ResponseCodeEnum::FREEZE_START_TIME_MUST_BE_FUTURE }, + { Status::PREPARED_UPDATE_FILE_IS_IMMUTABLE, proto::ResponseCodeEnum::PREPARED_UPDATE_FILE_IS_IMMUTABLE }, + { Status::FREEZE_ALREADY_SCHEDULED, proto::ResponseCodeEnum::FREEZE_ALREADY_SCHEDULED }, + { Status::FREEZE_UPGRADE_IN_PROGRESS, proto::ResponseCodeEnum::FREEZE_UPGRADE_IN_PROGRESS }, + { Status::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED, proto::ResponseCodeEnum::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED }, { Status::UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED, - proto::ResponseCodeEnum::UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED }, - { Status::CONSENSUS_GAS_EXHAUSTED, proto::ResponseCodeEnum::CONSENSUS_GAS_EXHAUSTED }, - { Status::REVERTED_SUCCESS, proto::ResponseCodeEnum::REVERTED_SUCCESS }, + proto::ResponseCodeEnum::UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED }, + { Status::CONSENSUS_GAS_EXHAUSTED, proto::ResponseCodeEnum::CONSENSUS_GAS_EXHAUSTED }, + { Status::REVERTED_SUCCESS, proto::ResponseCodeEnum::REVERTED_SUCCESS }, { Status::MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED, - proto::ResponseCodeEnum::MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED }, - { Status::INVALID_ALIAS_KEY, proto::ResponseCodeEnum::INVALID_ALIAS_KEY }, - { Status::UNEXPECTED_TOKEN_DECIMALS, proto::ResponseCodeEnum::UNEXPECTED_TOKEN_DECIMALS }, - { Status::INVALID_TRANSFER_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_TRANSFER_ACCOUNT_ID }, - { Status::INVALID_FEE_COLLECTOR_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_FEE_COLLECTOR_ACCOUNT_ID }, - { Status::ALIAS_IS_IMMUTABLE, proto::ResponseCodeEnum::ALIAS_IS_IMMUTABLE }, - { Status::SPENDER_ACCOUNT_SAME_AS_OWNER, proto::ResponseCodeEnum::SPENDER_ACCOUNT_SAME_AS_OWNER }, - { Status::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY, proto::ResponseCodeEnum::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY }, - { Status::NEGATIVE_ALLOWANCE_AMOUNT, proto::ResponseCodeEnum::NEGATIVE_ALLOWANCE_AMOUNT }, - { Status::SPENDER_DOES_NOT_HAVE_ALLOWANCE, proto::ResponseCodeEnum::SPENDER_DOES_NOT_HAVE_ALLOWANCE }, - { Status::AMOUNT_EXCEEDS_ALLOWANCE, proto::ResponseCodeEnum::AMOUNT_EXCEEDS_ALLOWANCE }, - { Status::MAX_ALLOWANCES_EXCEEDED, proto::ResponseCodeEnum::MAX_ALLOWANCES_EXCEEDED }, - { Status::EMPTY_ALLOWANCES, proto::ResponseCodeEnum::EMPTY_ALLOWANCES }, - { Status::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES, proto::ResponseCodeEnum::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES }, - { Status::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES, proto::ResponseCodeEnum::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES }, - { Status::INVALID_ALLOWANCE_OWNER_ID, proto::ResponseCodeEnum::INVALID_ALLOWANCE_OWNER_ID }, - { Status::INVALID_ALLOWANCE_SPENDER_ID, proto::ResponseCodeEnum::INVALID_ALLOWANCE_SPENDER_ID }, - { Status::INVALID_DELEGATING_SPENDER, proto::ResponseCodeEnum::INVALID_DELEGATING_SPENDER }, + proto::ResponseCodeEnum::MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED }, + { Status::INVALID_ALIAS_KEY, proto::ResponseCodeEnum::INVALID_ALIAS_KEY }, + { Status::UNEXPECTED_TOKEN_DECIMALS, proto::ResponseCodeEnum::UNEXPECTED_TOKEN_DECIMALS }, + { Status::INVALID_TRANSFER_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_TRANSFER_ACCOUNT_ID }, + { Status::INVALID_FEE_COLLECTOR_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_FEE_COLLECTOR_ACCOUNT_ID }, + { Status::ALIAS_IS_IMMUTABLE, proto::ResponseCodeEnum::ALIAS_IS_IMMUTABLE }, + { Status::SPENDER_ACCOUNT_SAME_AS_OWNER, proto::ResponseCodeEnum::SPENDER_ACCOUNT_SAME_AS_OWNER }, + { Status::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY, proto::ResponseCodeEnum::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY }, + { Status::NEGATIVE_ALLOWANCE_AMOUNT, proto::ResponseCodeEnum::NEGATIVE_ALLOWANCE_AMOUNT }, + { Status::SPENDER_DOES_NOT_HAVE_ALLOWANCE, proto::ResponseCodeEnum::SPENDER_DOES_NOT_HAVE_ALLOWANCE }, + { Status::AMOUNT_EXCEEDS_ALLOWANCE, proto::ResponseCodeEnum::AMOUNT_EXCEEDS_ALLOWANCE }, + { Status::MAX_ALLOWANCES_EXCEEDED, proto::ResponseCodeEnum::MAX_ALLOWANCES_EXCEEDED }, + { Status::EMPTY_ALLOWANCES, proto::ResponseCodeEnum::EMPTY_ALLOWANCES }, + { Status::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES, proto::ResponseCodeEnum::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES }, + { Status::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES, proto::ResponseCodeEnum::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES }, + { Status::INVALID_ALLOWANCE_OWNER_ID, proto::ResponseCodeEnum::INVALID_ALLOWANCE_OWNER_ID }, + { Status::INVALID_ALLOWANCE_SPENDER_ID, proto::ResponseCodeEnum::INVALID_ALLOWANCE_SPENDER_ID }, + { Status::INVALID_DELEGATING_SPENDER, proto::ResponseCodeEnum::INVALID_DELEGATING_SPENDER }, { Status::DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL, - proto::ResponseCodeEnum::DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL }, + proto::ResponseCodeEnum::DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL }, { Status::DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL, - proto::ResponseCodeEnum::DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL }, + proto::ResponseCodeEnum::DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL }, { Status::SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE, - proto::ResponseCodeEnum::SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE }, + proto::ResponseCodeEnum::SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE }, { Status::SCHEDULE_EXPIRATION_TIME_MUST_BE_HIGHER_THAN_CONSENSUS_TIME, - proto::ResponseCodeEnum::SCHEDULE_EXPIRATION_TIME_MUST_BE_HIGHER_THAN_CONSENSUS_TIME }, - { Status::SCHEDULE_FUTURE_THROTTLE_EXCEEDED, proto::ResponseCodeEnum::SCHEDULE_FUTURE_THROTTLE_EXCEEDED }, - { Status::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED, proto::ResponseCodeEnum::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED }, - { Status::INVALID_ETHEREUM_TRANSACTION, proto::ResponseCodeEnum::INVALID_ETHEREUM_TRANSACTION }, - { Status::WRONG_CHAIN_ID, proto::ResponseCodeEnum::WRONG_CHAIN_ID }, - { Status::WRONG_NONCE, proto::ResponseCodeEnum::WRONG_NONCE }, - { Status::ACCESS_LIST_UNSUPPORTED, proto::ResponseCodeEnum::ACCESS_LIST_UNSUPPORTED }, - { Status::SCHEDULE_PENDING_EXPIRATION, proto::ResponseCodeEnum::SCHEDULE_PENDING_EXPIRATION }, - { Status::CONTRACT_IS_TOKEN_TREASURY, proto::ResponseCodeEnum::CONTRACT_IS_TOKEN_TREASURY }, - { Status::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES, proto::ResponseCodeEnum::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES }, - { Status::CONTRACT_EXPIRED_AND_PENDING_REMOVAL, proto::ResponseCodeEnum::CONTRACT_EXPIRED_AND_PENDING_REMOVAL }, - { Status::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT, proto::ResponseCodeEnum::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT }, + proto::ResponseCodeEnum::SCHEDULE_EXPIRATION_TIME_MUST_BE_HIGHER_THAN_CONSENSUS_TIME }, + { Status::SCHEDULE_FUTURE_THROTTLE_EXCEEDED, proto::ResponseCodeEnum::SCHEDULE_FUTURE_THROTTLE_EXCEEDED }, + { Status::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED, proto::ResponseCodeEnum::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED }, + { Status::INVALID_ETHEREUM_TRANSACTION, proto::ResponseCodeEnum::INVALID_ETHEREUM_TRANSACTION }, + { Status::WRONG_CHAIN_ID, proto::ResponseCodeEnum::WRONG_CHAIN_ID }, + { Status::WRONG_NONCE, proto::ResponseCodeEnum::WRONG_NONCE }, + { Status::ACCESS_LIST_UNSUPPORTED, proto::ResponseCodeEnum::ACCESS_LIST_UNSUPPORTED }, + { Status::SCHEDULE_PENDING_EXPIRATION, proto::ResponseCodeEnum::SCHEDULE_PENDING_EXPIRATION }, + { Status::CONTRACT_IS_TOKEN_TREASURY, proto::ResponseCodeEnum::CONTRACT_IS_TOKEN_TREASURY }, + { Status::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES, proto::ResponseCodeEnum::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES }, + { Status::CONTRACT_EXPIRED_AND_PENDING_REMOVAL, proto::ResponseCodeEnum::CONTRACT_EXPIRED_AND_PENDING_REMOVAL }, + { Status::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT, proto::ResponseCodeEnum::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT }, { Status::PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION, - proto::ResponseCodeEnum::PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION }, - { Status::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED, proto::ResponseCodeEnum::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED }, - { Status::SELF_STAKING_IS_NOT_ALLOWED, proto::ResponseCodeEnum::SELF_STAKING_IS_NOT_ALLOWED }, - { Status::INVALID_STAKING_ID, proto::ResponseCodeEnum::INVALID_STAKING_ID }, - { Status::STAKING_NOT_ENABLED, proto::ResponseCodeEnum::STAKING_NOT_ENABLED }, - { Status::INVALID_PRNG_RANGE, proto::ResponseCodeEnum::INVALID_PRNG_RANGE }, + proto::ResponseCodeEnum::PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION }, + { Status::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED, proto::ResponseCodeEnum::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED }, + { Status::SELF_STAKING_IS_NOT_ALLOWED, proto::ResponseCodeEnum::SELF_STAKING_IS_NOT_ALLOWED }, + { Status::INVALID_STAKING_ID, proto::ResponseCodeEnum::INVALID_STAKING_ID }, + { Status::STAKING_NOT_ENABLED, proto::ResponseCodeEnum::STAKING_NOT_ENABLED }, + { Status::INVALID_PRNG_RANGE, proto::ResponseCodeEnum::INVALID_PRNG_RANGE }, { Status::MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED, - proto::ResponseCodeEnum::MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED }, + proto::ResponseCodeEnum::MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED }, { Status::INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE, - proto::ResponseCodeEnum::INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE }, - { Status::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT, proto::ResponseCodeEnum::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT }, - { Status::MAX_CHILD_RECORDS_EXCEEDED, proto::ResponseCodeEnum::MAX_CHILD_RECORDS_EXCEEDED }, - { Status::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES, proto::ResponseCodeEnum::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES }, - { Status::TRANSACTION_HAS_UNKNOWN_FIELDS, proto::ResponseCodeEnum::TRANSACTION_HAS_UNKNOWN_FIELDS }, - { Status::ACCOUNT_IS_IMMUTABLE, proto::ResponseCodeEnum::ACCOUNT_IS_IMMUTABLE }, - { Status::ALIAS_ALREADY_ASSIGNED, proto::ResponseCodeEnum::ALIAS_ALREADY_ASSIGNED }, - { Status::INVALID_METADATA_KEY, proto::ResponseCodeEnum::INVALID_METADATA_KEY }, - { Status::MISSING_TOKEN_METADATA, proto::ResponseCodeEnum::MISSING_TOKEN_METADATA }, - { Status::MISSING_SERIAL_NUMBERS, proto::ResponseCodeEnum::MISSING_SERIAL_NUMBERS }, - { Status::INVALID_MAX_AUTO_ASSOCIATIONS, proto::ResponseCodeEnum::INVALID_MAX_AUTO_ASSOCIATIONS }, - { Status::TOKEN_REFERENCE_REPEATED, proto::ResponseCodeEnum::TOKEN_REFERENCE_REPEATED }, - { Status::INVALID_OWNER_ID, proto::ResponseCodeEnum::INVALID_OWNER_ID }, - { Status::EMPTY_TOKEN_REFERENCE_LIST, proto::ResponseCodeEnum::EMPTY_TOKEN_REFERENCE_LIST }, - { Status::EMPTY_PENDING_AIRDROP_ID_LIST, proto::ResponseCodeEnum::EMPTY_PENDING_AIRDROP_ID_LIST }, - { Status::PENDING_AIRDROP_ID_REPEATED, proto::ResponseCodeEnum::PENDING_AIRDROP_ID_REPEATED }, - { Status::PENDING_AIRDROP_ID_LIST_TOO_LONG, proto::ResponseCodeEnum::PENDING_AIRDROP_ID_LIST_TOO_LONG }, - { Status::PENDING_NFT_AIRDROP_ALREADY_EXISTS, proto::ResponseCodeEnum::PENDING_NFT_AIRDROP_ALREADY_EXISTS }, - { Status::ACCOUNT_HAS_PENDING_AIRDROPS, proto::ResponseCodeEnum::ACCOUNT_HAS_PENDING_AIRDROPS }, - { Status::THROTTLED_AT_CONSENSUS, proto::ResponseCodeEnum::THROTTLED_AT_CONSENSUS }, - { Status::INVALID_PENDING_AIRDROP_ID, proto::ResponseCodeEnum::INVALID_PENDING_AIRDROP_ID }, - { Status::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY, proto::ResponseCodeEnum::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY }, - { Status::INVALID_TOKEN_IN_PENDING_AIRDROP, proto::ResponseCodeEnum::INVALID_TOKEN_IN_PENDING_AIRDROP }, - { Status::NODE_DELETED, proto::ResponseCodeEnum::NODE_DELETED }, - { Status::INVALID_NODE_ID, proto::ResponseCodeEnum::INVALID_NODE_ID }, - { Status::INVALID_GOSSIP_ENDPOINT, proto::ResponseCodeEnum::INVALID_GOSSIP_ENDPOINT }, - { Status::INVALID_NODE_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_NODE_ACCOUNT_ID }, - { Status::INVALID_NODE_DESCRIPTION, proto::ResponseCodeEnum::INVALID_NODE_DESCRIPTION }, - { Status::INVALID_SERVICE_ENDPOINT, proto::ResponseCodeEnum::INVALID_SERVICE_ENDPOINT }, - { Status::INVALID_GOSSIP_CA_CERTIFICATE, proto::ResponseCodeEnum::INVALID_GOSSIP_CA_CERTIFICATE }, - { Status::INVALID_GRPC_CERTIFICATE, proto::ResponseCodeEnum::INVALID_GRPC_CERTIFICATE }, - { Status::MAX_NODES_CREATED, proto::ResponseCodeEnum::MAX_NODES_CREATED }, - { Status::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT, proto::ResponseCodeEnum::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT }, - { Status::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN, proto::ResponseCodeEnum::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN }, - { Status::FQDN_SIZE_TOO_LARGE, proto::ResponseCodeEnum::FQDN_SIZE_TOO_LARGE }, - { Status::INVALID_ENDPOINT, proto::ResponseCodeEnum::INVALID_ENDPOINT }, - { Status::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT, proto::ResponseCodeEnum::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT } + proto::ResponseCodeEnum::INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE }, + { Status::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT, proto::ResponseCodeEnum::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT }, + { Status::MAX_CHILD_RECORDS_EXCEEDED, proto::ResponseCodeEnum::MAX_CHILD_RECORDS_EXCEEDED }, + { Status::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES, proto::ResponseCodeEnum::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES }, + { Status::TRANSACTION_HAS_UNKNOWN_FIELDS, proto::ResponseCodeEnum::TRANSACTION_HAS_UNKNOWN_FIELDS }, + { Status::ACCOUNT_IS_IMMUTABLE, proto::ResponseCodeEnum::ACCOUNT_IS_IMMUTABLE }, + { Status::ALIAS_ALREADY_ASSIGNED, proto::ResponseCodeEnum::ALIAS_ALREADY_ASSIGNED }, + { Status::INVALID_METADATA_KEY, proto::ResponseCodeEnum::INVALID_METADATA_KEY }, + { Status::MISSING_TOKEN_METADATA, proto::ResponseCodeEnum::MISSING_TOKEN_METADATA }, + { Status::MISSING_SERIAL_NUMBERS, proto::ResponseCodeEnum::MISSING_SERIAL_NUMBERS }, + { Status::INVALID_MAX_AUTO_ASSOCIATIONS, proto::ResponseCodeEnum::INVALID_MAX_AUTO_ASSOCIATIONS }, + { Status::TOKEN_REFERENCE_REPEATED, proto::ResponseCodeEnum::TOKEN_REFERENCE_REPEATED }, + { Status::INVALID_OWNER_ID, proto::ResponseCodeEnum::INVALID_OWNER_ID }, + { Status::EMPTY_TOKEN_REFERENCE_LIST, proto::ResponseCodeEnum::EMPTY_TOKEN_REFERENCE_LIST }, + { Status::EMPTY_PENDING_AIRDROP_ID_LIST, proto::ResponseCodeEnum::EMPTY_PENDING_AIRDROP_ID_LIST }, + { Status::PENDING_AIRDROP_ID_REPEATED, proto::ResponseCodeEnum::PENDING_AIRDROP_ID_REPEATED }, + { Status::PENDING_AIRDROP_ID_LIST_TOO_LONG, proto::ResponseCodeEnum::PENDING_AIRDROP_ID_LIST_TOO_LONG }, + { Status::PENDING_NFT_AIRDROP_ALREADY_EXISTS, proto::ResponseCodeEnum::PENDING_NFT_AIRDROP_ALREADY_EXISTS }, + { Status::ACCOUNT_HAS_PENDING_AIRDROPS, proto::ResponseCodeEnum::ACCOUNT_HAS_PENDING_AIRDROPS }, + { Status::THROTTLED_AT_CONSENSUS, proto::ResponseCodeEnum::THROTTLED_AT_CONSENSUS }, + { Status::INVALID_PENDING_AIRDROP_ID, proto::ResponseCodeEnum::INVALID_PENDING_AIRDROP_ID }, + { Status::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY, proto::ResponseCodeEnum::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY }, + { Status::INVALID_TOKEN_IN_PENDING_AIRDROP, proto::ResponseCodeEnum::INVALID_TOKEN_IN_PENDING_AIRDROP }, + { Status::NODE_DELETED, proto::ResponseCodeEnum::NODE_DELETED }, + { Status::INVALID_NODE_ID, proto::ResponseCodeEnum::INVALID_NODE_ID }, + { Status::INVALID_GOSSIP_ENDPOINT, proto::ResponseCodeEnum::INVALID_GOSSIP_ENDPOINT }, + { Status::INVALID_NODE_ACCOUNT_ID, proto::ResponseCodeEnum::INVALID_NODE_ACCOUNT_ID }, + { Status::INVALID_NODE_DESCRIPTION, proto::ResponseCodeEnum::INVALID_NODE_DESCRIPTION }, + { Status::INVALID_SERVICE_ENDPOINT, proto::ResponseCodeEnum::INVALID_SERVICE_ENDPOINT }, + { Status::INVALID_GOSSIP_CA_CERTIFICATE, proto::ResponseCodeEnum::INVALID_GOSSIP_CA_CERTIFICATE }, + { Status::INVALID_GRPC_CERTIFICATE, proto::ResponseCodeEnum::INVALID_GRPC_CERTIFICATE }, + { Status::MAX_NODES_CREATED, proto::ResponseCodeEnum::MAX_NODES_CREATED }, + { Status::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT, proto::ResponseCodeEnum::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT}, + { Status::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN, proto::ResponseCodeEnum::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN }, + { Status::FQDN_SIZE_TOO_LARGE, proto::ResponseCodeEnum::FQDN_SIZE_TOO_LARGE }, + { Status::INVALID_ENDPOINT, proto::ResponseCodeEnum::INVALID_ENDPOINT }, + { Status::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT, proto::ResponseCodeEnum::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT } }; //----- const std::unordered_map gStatusToString = { - { Status::OK, "OK" }, - { Status::INVALID_TRANSACTION, "INVALID_TRANSACTION" }, - { Status::PAYER_ACCOUNT_NOT_FOUND, "PAYER_ACCOUNT_NOT_FOUND" }, - { Status::INVALID_NODE_ACCOUNT, "INVALID_NODE_ACCOUNT" }, - { Status::TRANSACTION_EXPIRED, "TRANSACTION_EXPIRED" }, - { Status::INVALID_TRANSACTION_START, "INVALID_TRANSACTION_START" }, - { Status::INVALID_TRANSACTION_DURATION, "INVALID_TRANSACTION_DURATION" }, - { Status::INVALID_SIGNATURE, "INVALID_SIGNATURE" }, - { Status::MEMO_TOO_LONG, "MEMO_TOO_LONG" }, - { Status::INSUFFICIENT_TX_FEE, "INSUFFICIENT_TX_FEE" }, - { Status::INSUFFICIENT_PAYER_BALANCE, "INSUFFICIENT_PAYER_BALANCE" }, - { Status::DUPLICATE_TRANSACTION, "DUPLICATE_TRANSACTION" }, - { Status::BUSY, "BUSY" }, - { Status::NOT_SUPPORTED, "NOT_SUPPORTED" }, - { Status::INVALID_FILE_ID, "INVALID_FILE_ID" }, - { Status::INVALID_ACCOUNT_ID, "INVALID_ACCOUNT_ID" }, - { Status::INVALID_CONTRACT_ID, "INVALID_CONTRACT_ID" }, - { Status::INVALID_TRANSACTION_ID, "INVALID_TRANSACTION_ID" }, - { Status::RECEIPT_NOT_FOUND, "RECEIPT_NOT_FOUND" }, - { Status::RECORD_NOT_FOUND, "RECORD_NOT_FOUND" }, - { Status::INVALID_SOLIDITY_ID, "INVALID_SOLIDITY_ID" }, - { Status::UNKNOWN, "UNKNOWN" }, - { Status::SUCCESS, "SUCCESS" }, - { Status::FAIL_INVALID, "FAIL_INVALID" }, - { Status::FAIL_FEE, "FAIL_FEE" }, - { Status::FAIL_BALANCE, "FAIL_BALANCE" }, - { Status::KEY_REQUIRED, "KEY_REQUIRED" }, - { Status::BAD_ENCODING, "BAD_ENCODING" }, - { Status::INSUFFICIENT_ACCOUNT_BALANCE, "INSUFFICIENT_ACCOUNT_BALANCE" }, - { Status::INVALID_SOLIDITY_ADDRESS, "INVALID_SOLIDITY_ADDRESS" }, - { Status::INSUFFICIENT_GAS, "INSUFFICIENT_GAS" }, - { Status::CONTRACT_SIZE_LIMIT_EXCEEDED, "CONTRACT_SIZE_LIMIT_EXCEEDED" }, - { Status::LOCAL_CALL_MODIFICATION_EXCEPTION, "LOCAL_CALL_MODIFICATION_EXCEPTION" }, - { Status::CONTRACT_REVERT_EXECUTED, "CONTRACT_REVERT_EXECUTED" }, - { Status::CONTRACT_EXECUTION_EXCEPTION, "CONTRACT_EXECUTION_EXCEPTION" }, - { Status::INVALID_RECEIVING_NODE_ACCOUNT, "INVALID_RECEIVING_NODE_ACCOUNT" }, - { Status::MISSING_QUERY_HEADER, "MISSING_QUERY_HEADER" }, - { Status::ACCOUNT_UPDATE_FAILED, "ACCOUNT_UPDATE_FAILED" }, - { Status::INVALID_KEY_ENCODING, "INVALID_KEY_ENCODING" }, - { Status::NULL_SOLIDITY_ADDRESS, "NULL_SOLIDITY_ADDRESS" }, - { Status::CONTRACT_UPDATE_FAILED, "CONTRACT_UPDATE_FAILED" }, - { Status::INVALID_QUERY_HEADER, "INVALID_QUERY_HEADER" }, - { Status::INVALID_FEE_SUBMITTED, "INVALID_FEE_SUBMITTED" }, - { Status::INVALID_PAYER_SIGNATURE, "INVALID_PAYER_SIGNATURE" }, - { Status::KEY_NOT_PROVIDED, "KEY_NOT_PROVIDED" }, - { Status::INVALID_EXPIRATION_TIME, "INVALID_EXPIRATION_TIME" }, - { Status::NO_WACL_KEY, "NO_WACL_KEY" }, - { Status::FILE_CONTENT_EMPTY, "FILE_CONTENT_EMPTY" }, - { Status::INVALID_ACCOUNT_AMOUNTS, "INVALID_ACCOUNT_AMOUNTS" }, - { Status::EMPTY_TRANSACTION_BODY, "EMPTY_TRANSACTION_BODY" }, - { Status::INVALID_TRANSACTION_BODY, "INVALID_TRANSACTION_BODY" }, - { Status::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY, "INVALID_SIGNATURE_TYPE_MISMATCHING_KEY" }, - { Status::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY, "INVALID_SIGNATURE_COUNT_MISMATCHING_KEY" }, - { Status::EMPTY_LIVE_HASH_BODY, "EMPTY_LIVE_HASH_BODY" }, - { Status::EMPTY_LIVE_HASH, "EMPTY_LIVE_HASH" }, - { Status::EMPTY_LIVE_HASH_KEYS, "EMPTY_LIVE_HASH_KEYS" }, - { Status::INVALID_LIVE_HASH_SIZE, "INVALID_LIVE_HASH_SIZE" }, - { Status::EMPTY_QUERY_BODY, "EMPTY_QUERY_BODY" }, - { Status::EMPTY_LIVE_HASH_QUERY, "EMPTY_LIVE_HASH_QUERY" }, - { Status::LIVE_HASH_NOT_FOUND, "LIVE_HASH_NOT_FOUND" }, - { Status::ACCOUNT_ID_DOES_NOT_EXIST, "ACCOUNT_ID_DOES_NOT_EXIST" }, - { Status::LIVE_HASH_ALREADY_EXISTS, "LIVE_HASH_ALREADY_EXISTS" }, - { Status::INVALID_FILE_WACL, "INVALID_FILE_WACL" }, - { Status::SERIALIZATION_FAILED, "SERIALIZATION_FAILED" }, - { Status::TRANSACTION_OVERSIZE, "TRANSACTION_OVERSIZE" }, - { Status::TRANSACTION_TOO_MANY_LAYERS, "TRANSACTION_TOO_MANY_LAYERS" }, - { Status::CONTRACT_DELETED, "CONTRACT_DELETED" }, - { Status::PLATFORM_NOT_ACTIVE, "PLATFORM_NOT_ACTIVE" }, - { Status::KEY_PREFIX_MISMATCH, "KEY_PREFIX_MISMATCH" }, - { Status::PLATFORM_TRANSACTION_NOT_CREATED, "PLATFORM_TRANSACTION_NOT_CREATED" }, - { Status::INVALID_RENEWAL_PERIOD, "INVALID_RENEWAL_PERIOD" }, - { Status::INVALID_PAYER_ACCOUNT_ID, "INVALID_PAYER_ACCOUNT_ID" }, - { Status::ACCOUNT_DELETED, "ACCOUNT_DELETED" }, - { Status::FILE_DELETED, "FILE_DELETED" }, - { Status::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS, "ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS" }, - { Status::SETTING_NEGATIVE_ACCOUNT_BALANCE, "SETTING_NEGATIVE_ACCOUNT_BALANCE" }, - { Status::OBTAINER_REQUIRED, "OBTAINER_REQUIRED" }, - { Status::OBTAINER_SAME_CONTRACT_ID, "OBTAINER_SAME_CONTRACT_ID" }, - { Status::OBTAINER_DOES_NOT_EXIST, "OBTAINER_DOES_NOT_EXIST" }, - { Status::MODIFYING_IMMUTABLE_CONTRACT, "MODIFYING_IMMUTABLE_CONTRACT" }, - { Status::FILE_SYSTEM_EXCEPTION, "FILE_SYSTEM_EXCEPTION" }, - { Status::AUTORENEW_DURATION_NOT_IN_RANGE, "AUTORENEW_DURATION_NOT_IN_RANGE" }, - { Status::ERROR_DECODING_BYTESTRING, "ERROR_DECODING_BYTESTRING" }, - { Status::CONTRACT_FILE_EMPTY, "CONTRACT_FILE_EMPTY" }, - { Status::CONTRACT_BYTECODE_EMPTY, "CONTRACT_BYTECODE_EMPTY" }, - { Status::INVALID_INITIAL_BALANCE, "INVALID_INITIAL_BALANCE" }, - { Status::ACCOUNT_IS_NOT_GENESIS_ACCOUNT, "ACCOUNT_IS_NOT_GENESIS_ACCOUNT" }, - { Status::PAYER_ACCOUNT_UNAUTHORIZED, "PAYER_ACCOUNT_UNAUTHORIZED" }, - { Status::INVALID_FREEZE_TRANSACTION_BODY, "INVALID_FREEZE_TRANSACTION_BODY" }, - { Status::FREEZE_TRANSACTION_BODY_NOT_FOUND, "FREEZE_TRANSACTION_BODY_NOT_FOUND" }, - { Status::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, "TRANSFER_LIST_SIZE_LIMIT_EXCEEDED" }, - { Status::RESULT_SIZE_LIMIT_EXCEEDED, "RESULT_SIZE_LIMIT_EXCEEDED" }, - { Status::NOT_SPECIAL_ACCOUNT, "NOT_SPECIAL_ACCOUNT" }, - { Status::CONTRACT_NEGATIVE_GAS, "CONTRACT_NEGATIVE_GAS" }, - { Status::CONTRACT_NEGATIVE_VALUE, "CONTRACT_NEGATIVE_VALUE" }, - { Status::INVALID_FEE_FILE, "INVALID_FEE_FILE" }, - { Status::INVALID_EXCHANGE_RATE_FILE, "INVALID_EXCHANGE_RATE_FILE" }, - { Status::INSUFFICIENT_LOCAL_CALL_GAS, "INSUFFICIENT_LOCAL_CALL_GAS" }, - { Status::ENTITY_NOT_ALLOWED_TO_DELETE, "ENTITY_NOT_ALLOWED_TO_DELETE" }, - { Status::AUTHORIZATION_FAILED, "AUTHORIZATION_FAILED" }, - { Status::FILE_UPLOADED_PROTO_INVALID, "FILE_UPLOADED_PROTO_INVALID" }, - { Status::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK, "FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK" }, - { Status::FEE_SCHEDULE_FILE_PART_UPLOADED, "FEE_SCHEDULE_FILE_PART_UPLOADED" }, - { Status::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED, "EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED" }, - { Status::MAX_CONTRACT_STORAGE_EXCEEDED, "MAX_CONTRACT_STORAGE_EXCEEDED" }, - { Status::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT, "TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT" }, - { Status::TOTAL_LEDGER_BALANCE_INVALID, "TOTAL_LEDGER_BALANCE_INVALID" }, - { Status::EXPIRATION_REDUCTION_NOT_ALLOWED, "EXPIRATION_REDUCTION_NOT_ALLOWED" }, - { Status::MAX_GAS_LIMIT_EXCEEDED, "MAX_GAS_LIMIT_EXCEEDED" }, - { Status::MAX_FILE_SIZE_EXCEEDED, "MAX_FILE_SIZE_EXCEEDED" }, - { Status::RECEIVER_SIG_REQUIRED, "RECEIVER_SIG_REQUIRED" }, - { Status::INVALID_TOPIC_ID, "INVALID_TOPIC_ID" }, - { Status::INVALID_ADMIN_KEY, "INVALID_ADMIN_KEY" }, - { Status::INVALID_SUBMIT_KEY, "INVALID_SUBMIT_KEY" }, - { Status::UNAUTHORIZED, "UNAUTHORIZED" }, - { Status::INVALID_TOPIC_MESSAGE, "INVALID_TOPIC_MESSAGE" }, - { Status::INVALID_AUTORENEW_ACCOUNT, "INVALID_AUTORENEW_ACCOUNT" }, - { Status::AUTORENEW_ACCOUNT_NOT_ALLOWED, "AUTORENEW_ACCOUNT_NOT_ALLOWED" }, - { Status::TOPIC_EXPIRED, "TOPIC_EXPIRED" }, - { Status::INVALID_CHUNK_NUMBER, "INVALID_CHUNK_NUMBER" }, - { Status::INVALID_CHUNK_TRANSACTION_ID, "INVALID_CHUNK_TRANSACTION_ID" }, - { Status::ACCOUNT_FROZEN_FOR_TOKEN, "ACCOUNT_FROZEN_FOR_TOKEN" }, - { Status::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED, "TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED" }, - { Status::INVALID_TOKEN_ID, "INVALID_TOKEN_ID" }, - { Status::INVALID_TOKEN_DECIMALS, "INVALID_TOKEN_DECIMALS" }, - { Status::INVALID_TOKEN_INITIAL_SUPPLY, "INVALID_TOKEN_INITIAL_SUPPLY" }, - { Status::INVALID_TREASURY_ACCOUNT_FOR_TOKEN, "INVALID_TREASURY_ACCOUNT_FOR_TOKEN" }, - { Status::INVALID_TOKEN_SYMBOL, "INVALID_TOKEN_SYMBOL" }, - { Status::TOKEN_HAS_NO_FREEZE_KEY, "TOKEN_HAS_NO_FREEZE_KEY" }, - { Status::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN, "TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN" }, - { Status::MISSING_TOKEN_SYMBOL, "MISSING_TOKEN_SYMBOL" }, - { Status::TOKEN_SYMBOL_TOO_LONG, "TOKEN_SYMBOL_TOO_LONG" }, - { Status::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN, "ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN" }, - { Status::TOKEN_HAS_NO_KYC_KEY, "TOKEN_HAS_NO_KYC_KEY" }, - { Status::INSUFFICIENT_TOKEN_BALANCE, "INSUFFICIENT_TOKEN_BALANCE" }, - { Status::TOKEN_WAS_DELETED, "TOKEN_WAS_DELETED" }, - { Status::TOKEN_HAS_NO_SUPPLY_KEY, "TOKEN_HAS_NO_SUPPLY_KEY" }, - { Status::TOKEN_HAS_NO_WIPE_KEY, "TOKEN_HAS_NO_WIPE_KEY" }, - { Status::INVALID_TOKEN_MINT_AMOUNT, "INVALID_TOKEN_MINT_AMOUNT" }, - { Status::INVALID_TOKEN_BURN_AMOUNT, "INVALID_TOKEN_BURN_AMOUNT" }, - { Status::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT, "TOKEN_NOT_ASSOCIATED_TO_ACCOUNT" }, - { Status::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT, "CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT" }, - { Status::INVALID_KYC_KEY, "INVALID_KYC_KEY" }, - { Status::INVALID_WIPE_KEY, "INVALID_WIPE_KEY" }, - { Status::INVALID_FREEZE_KEY, "INVALID_FREEZE_KEY" }, - { Status::INVALID_SUPPLY_KEY, "INVALID_SUPPLY_KEY" }, - { Status::MISSING_TOKEN_NAME, "MISSING_TOKEN_NAME" }, - { Status::TOKEN_NAME_TOO_LONG, "TOKEN_NAME_TOO_LONG" }, - { Status::INVALID_WIPING_AMOUNT, "INVALID_WIPING_AMOUNT" }, - { Status::TOKEN_IS_IMMUTABLE, "TOKEN_IS_IMMUTABLE" }, - { Status::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT, "TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT" }, - { Status::TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES, "TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES" }, - { Status::ACCOUNT_IS_TREASURY, "ACCOUNT_IS_TREASURY" }, - { Status::TOKEN_ID_REPEATED_IN_TOKEN_LIST, "TOKEN_ID_REPEATED_IN_TOKEN_LIST" }, - { Status::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, "TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED" }, - { Status::EMPTY_TOKEN_TRANSFER_BODY, "EMPTY_TOKEN_TRANSFER_BODY" }, - { Status::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS, "EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS" }, - { Status::INVALID_SCHEDULE_ID, "INVALID_SCHEDULE_ID" }, - { Status::SCHEDULE_IS_IMMUTABLE, "SCHEDULE_IS_IMMUTABLE" }, - { Status::INVALID_SCHEDULE_PAYER_ID, "INVALID_SCHEDULE_PAYER_ID" }, - { Status::INVALID_SCHEDULE_ACCOUNT_ID, "INVALID_SCHEDULE_ACCOUNT_ID" }, - { Status::NO_NEW_VALID_SIGNATURES, "NO_NEW_VALID_SIGNATURES" }, - { Status::UNRESOLVABLE_REQUIRED_SIGNERS, "UNRESOLVABLE_REQUIRED_SIGNERS" }, - { Status::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST, "SCHEDULED_TRANSACTION_NOT_IN_WHITELIST" }, - { Status::SOME_SIGNATURES_WERE_INVALID, "SOME_SIGNATURES_WERE_INVALID" }, - { Status::TRANSACTION_ID_FIELD_NOT_ALLOWED, "TRANSACTION_ID_FIELD_NOT_ALLOWED" }, - { Status::IDENTICAL_SCHEDULE_ALREADY_CREATED, "IDENTICAL_SCHEDULE_ALREADY_CREATED" }, - { Status::INVALID_ZERO_BYTE_IN_STRING, "INVALID_ZERO_BYTE_IN_STRING" }, - { Status::SCHEDULE_ALREADY_DELETED, "SCHEDULE_ALREADY_DELETED" }, - { Status::SCHEDULE_ALREADY_EXECUTED, "SCHEDULE_ALREADY_EXECUTED" }, - { Status::MESSAGE_SIZE_TOO_LARGE, "MESSAGE_SIZE_TOO_LARGE" }, - { Status::OPERATION_REPEATED_IN_BUCKET_GROUPS, "OPERATION_REPEATED_IN_BUCKET_GROUPS" }, - { Status::BUCKET_CAPACITY_OVERFLOW, "BUCKET_CAPACITY_OVERFLOW" }, - { Status::NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION, "NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION" }, - { Status::BUCKET_HAS_NO_THROTTLE_GROUPS, "BUCKET_HAS_NO_THROTTLE_GROUPS" }, - { Status::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC, "THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC" }, - { Status::SUCCESS_BUT_MISSING_EXPECTED_OPERATION, "SUCCESS_BUT_MISSING_EXPECTED_OPERATION" }, - { Status::UNPARSEABLE_THROTTLE_DEFINITIONS, "UNPARSEABLE_THROTTLE_DEFINITIONS" }, - { Status::INVALID_THROTTLE_DEFINITIONS, "INVALID_THROTTLE_DEFINITIONS" }, - { Status::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL, "ACCOUNT_EXPIRED_AND_PENDING_REMOVAL" }, - { Status::INVALID_TOKEN_MAX_SUPPLY, "INVALID_TOKEN_MAX_SUPPLY" }, - { Status::INVALID_TOKEN_NFT_SERIAL_NUMBER, "INVALID_TOKEN_NFT_SERIAL_NUMBER" }, - { Status::INVALID_NFT_ID, "INVALID_NFT_ID" }, - { Status::METADATA_TOO_LONG, "METADATA_TOO_LONG" }, - { Status::BATCH_SIZE_LIMIT_EXCEEDED, "BATCH_SIZE_LIMIT_EXCEEDED" }, - { Status::INVALID_QUERY_RANGE, "INVALID_QUERY_RANGE" }, - { Status::FRACTION_DIVIDES_BY_ZERO, "FRACTION_DIVIDES_BY_ZERO" }, - { Status::CUSTOM_FEES_LIST_TOO_LONG, "CUSTOM_FEES_LIST_TOO_LONG" }, - { Status::INVALID_CUSTOM_FEE_COLLECTOR, "INVALID_CUSTOM_FEE_COLLECTOR" }, - { Status::INVALID_TOKEN_ID_IN_CUSTOM_FEES, "INVALID_TOKEN_ID_IN_CUSTOM_FEES" }, - { Status::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR, "TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR" }, - { Status::TOKEN_MAX_SUPPLY_REACHED, "TOKEN_MAX_SUPPLY_REACHED" }, - { Status::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO, "SENDER_DOES_NOT_OWN_NFT_SERIAL_NO" }, - { Status::CUSTOM_FEE_NOT_FULLY_SPECIFIED, "CUSTOM_FEE_NOT_FULLY_SPECIFIED" }, - { Status::CUSTOM_FEE_MUST_BE_POSITIVE, "CUSTOM_FEE_MUST_BE_POSITIVE" }, - { Status::TOKEN_HAS_NO_FEE_SCHEDULE_KEY, "TOKEN_HAS_NO_FEE_SCHEDULE_KEY" }, - { Status::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE, "CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE" }, - { Status::ROYALTY_FRACTION_CANNOT_EXCEED_ONE, "ROYALTY_FRACTION_CANNOT_EXCEED_ONE" }, - { Status::FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT, "FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT" }, - { Status::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES, "CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES" }, - { Status::CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON, "CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON" }, + {Status::OK, "OK" }, + { Status::INVALID_TRANSACTION, "INVALID_TRANSACTION" }, + { Status::PAYER_ACCOUNT_NOT_FOUND, "PAYER_ACCOUNT_NOT_FOUND" }, + { Status::INVALID_NODE_ACCOUNT, "INVALID_NODE_ACCOUNT" }, + { Status::TRANSACTION_EXPIRED, "TRANSACTION_EXPIRED" }, + { Status::INVALID_TRANSACTION_START, "INVALID_TRANSACTION_START" }, + { Status::INVALID_TRANSACTION_DURATION, "INVALID_TRANSACTION_DURATION" }, + { Status::INVALID_SIGNATURE, "INVALID_SIGNATURE" }, + { Status::MEMO_TOO_LONG, "MEMO_TOO_LONG" }, + { Status::INSUFFICIENT_TX_FEE, "INSUFFICIENT_TX_FEE" }, + { Status::INSUFFICIENT_PAYER_BALANCE, "INSUFFICIENT_PAYER_BALANCE" }, + { Status::DUPLICATE_TRANSACTION, "DUPLICATE_TRANSACTION" }, + { Status::BUSY, "BUSY" }, + { Status::NOT_SUPPORTED, "NOT_SUPPORTED" }, + { Status::INVALID_FILE_ID, "INVALID_FILE_ID" }, + { Status::INVALID_ACCOUNT_ID, "INVALID_ACCOUNT_ID" }, + { Status::INVALID_CONTRACT_ID, "INVALID_CONTRACT_ID" }, + { Status::INVALID_TRANSACTION_ID, "INVALID_TRANSACTION_ID" }, + { Status::RECEIPT_NOT_FOUND, "RECEIPT_NOT_FOUND" }, + { Status::RECORD_NOT_FOUND, "RECORD_NOT_FOUND" }, + { Status::INVALID_SOLIDITY_ID, "INVALID_SOLIDITY_ID" }, + { Status::UNKNOWN, "UNKNOWN" }, + { Status::SUCCESS, "SUCCESS" }, + { Status::FAIL_INVALID, "FAIL_INVALID" }, + { Status::FAIL_FEE, "FAIL_FEE" }, + { Status::FAIL_BALANCE, "FAIL_BALANCE" }, + { Status::KEY_REQUIRED, "KEY_REQUIRED" }, + { Status::BAD_ENCODING, "BAD_ENCODING" }, + { Status::INSUFFICIENT_ACCOUNT_BALANCE, "INSUFFICIENT_ACCOUNT_BALANCE" }, + { Status::INVALID_SOLIDITY_ADDRESS, "INVALID_SOLIDITY_ADDRESS" }, + { Status::INSUFFICIENT_GAS, "INSUFFICIENT_GAS" }, + { Status::CONTRACT_SIZE_LIMIT_EXCEEDED, "CONTRACT_SIZE_LIMIT_EXCEEDED" }, + { Status::LOCAL_CALL_MODIFICATION_EXCEPTION, "LOCAL_CALL_MODIFICATION_EXCEPTION" }, + { Status::CONTRACT_REVERT_EXECUTED, "CONTRACT_REVERT_EXECUTED" }, + { Status::CONTRACT_EXECUTION_EXCEPTION, "CONTRACT_EXECUTION_EXCEPTION" }, + { Status::INVALID_RECEIVING_NODE_ACCOUNT, "INVALID_RECEIVING_NODE_ACCOUNT" }, + { Status::MISSING_QUERY_HEADER, "MISSING_QUERY_HEADER" }, + { Status::ACCOUNT_UPDATE_FAILED, "ACCOUNT_UPDATE_FAILED" }, + { Status::INVALID_KEY_ENCODING, "INVALID_KEY_ENCODING" }, + { Status::NULL_SOLIDITY_ADDRESS, "NULL_SOLIDITY_ADDRESS" }, + { Status::CONTRACT_UPDATE_FAILED, "CONTRACT_UPDATE_FAILED" }, + { Status::INVALID_QUERY_HEADER, "INVALID_QUERY_HEADER" }, + { Status::INVALID_FEE_SUBMITTED, "INVALID_FEE_SUBMITTED" }, + { Status::INVALID_PAYER_SIGNATURE, "INVALID_PAYER_SIGNATURE" }, + { Status::KEY_NOT_PROVIDED, "KEY_NOT_PROVIDED" }, + { Status::INVALID_EXPIRATION_TIME, "INVALID_EXPIRATION_TIME" }, + { Status::NO_WACL_KEY, "NO_WACL_KEY" }, + { Status::FILE_CONTENT_EMPTY, "FILE_CONTENT_EMPTY" }, + { Status::INVALID_ACCOUNT_AMOUNTS, "INVALID_ACCOUNT_AMOUNTS" }, + { Status::EMPTY_TRANSACTION_BODY, "EMPTY_TRANSACTION_BODY" }, + { Status::INVALID_TRANSACTION_BODY, "INVALID_TRANSACTION_BODY" }, + { Status::INVALID_SIGNATURE_TYPE_MISMATCHING_KEY, "INVALID_SIGNATURE_TYPE_MISMATCHING_KEY" }, + { Status::INVALID_SIGNATURE_COUNT_MISMATCHING_KEY, "INVALID_SIGNATURE_COUNT_MISMATCHING_KEY" }, + { Status::EMPTY_LIVE_HASH_BODY, "EMPTY_LIVE_HASH_BODY" }, + { Status::EMPTY_LIVE_HASH, "EMPTY_LIVE_HASH" }, + { Status::EMPTY_LIVE_HASH_KEYS, "EMPTY_LIVE_HASH_KEYS" }, + { Status::INVALID_LIVE_HASH_SIZE, "INVALID_LIVE_HASH_SIZE" }, + { Status::EMPTY_QUERY_BODY, "EMPTY_QUERY_BODY" }, + { Status::EMPTY_LIVE_HASH_QUERY, "EMPTY_LIVE_HASH_QUERY" }, + { Status::LIVE_HASH_NOT_FOUND, "LIVE_HASH_NOT_FOUND" }, + { Status::ACCOUNT_ID_DOES_NOT_EXIST, "ACCOUNT_ID_DOES_NOT_EXIST" }, + { Status::LIVE_HASH_ALREADY_EXISTS, "LIVE_HASH_ALREADY_EXISTS" }, + { Status::INVALID_FILE_WACL, "INVALID_FILE_WACL" }, + { Status::SERIALIZATION_FAILED, "SERIALIZATION_FAILED" }, + { Status::TRANSACTION_OVERSIZE, "TRANSACTION_OVERSIZE" }, + { Status::TRANSACTION_TOO_MANY_LAYERS, "TRANSACTION_TOO_MANY_LAYERS" }, + { Status::CONTRACT_DELETED, "CONTRACT_DELETED" }, + { Status::PLATFORM_NOT_ACTIVE, "PLATFORM_NOT_ACTIVE" }, + { Status::KEY_PREFIX_MISMATCH, "KEY_PREFIX_MISMATCH" }, + { Status::PLATFORM_TRANSACTION_NOT_CREATED, "PLATFORM_TRANSACTION_NOT_CREATED" }, + { Status::INVALID_RENEWAL_PERIOD, "INVALID_RENEWAL_PERIOD" }, + { Status::INVALID_PAYER_ACCOUNT_ID, "INVALID_PAYER_ACCOUNT_ID" }, + { Status::ACCOUNT_DELETED, "ACCOUNT_DELETED" }, + { Status::FILE_DELETED, "FILE_DELETED" }, + { Status::ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS, "ACCOUNT_REPEATED_IN_ACCOUNT_AMOUNTS" }, + { Status::SETTING_NEGATIVE_ACCOUNT_BALANCE, "SETTING_NEGATIVE_ACCOUNT_BALANCE" }, + { Status::OBTAINER_REQUIRED, "OBTAINER_REQUIRED" }, + { Status::OBTAINER_SAME_CONTRACT_ID, "OBTAINER_SAME_CONTRACT_ID" }, + { Status::OBTAINER_DOES_NOT_EXIST, "OBTAINER_DOES_NOT_EXIST" }, + { Status::MODIFYING_IMMUTABLE_CONTRACT, "MODIFYING_IMMUTABLE_CONTRACT" }, + { Status::FILE_SYSTEM_EXCEPTION, "FILE_SYSTEM_EXCEPTION" }, + { Status::AUTORENEW_DURATION_NOT_IN_RANGE, "AUTORENEW_DURATION_NOT_IN_RANGE" }, + { Status::ERROR_DECODING_BYTESTRING, "ERROR_DECODING_BYTESTRING" }, + { Status::CONTRACT_FILE_EMPTY, "CONTRACT_FILE_EMPTY" }, + { Status::CONTRACT_BYTECODE_EMPTY, "CONTRACT_BYTECODE_EMPTY" }, + { Status::INVALID_INITIAL_BALANCE, "INVALID_INITIAL_BALANCE" }, + { Status::ACCOUNT_IS_NOT_GENESIS_ACCOUNT, "ACCOUNT_IS_NOT_GENESIS_ACCOUNT" }, + { Status::PAYER_ACCOUNT_UNAUTHORIZED, "PAYER_ACCOUNT_UNAUTHORIZED" }, + { Status::INVALID_FREEZE_TRANSACTION_BODY, "INVALID_FREEZE_TRANSACTION_BODY" }, + { Status::FREEZE_TRANSACTION_BODY_NOT_FOUND, "FREEZE_TRANSACTION_BODY_NOT_FOUND" }, + { Status::TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, "TRANSFER_LIST_SIZE_LIMIT_EXCEEDED" }, + { Status::RESULT_SIZE_LIMIT_EXCEEDED, "RESULT_SIZE_LIMIT_EXCEEDED" }, + { Status::NOT_SPECIAL_ACCOUNT, "NOT_SPECIAL_ACCOUNT" }, + { Status::CONTRACT_NEGATIVE_GAS, "CONTRACT_NEGATIVE_GAS" }, + { Status::CONTRACT_NEGATIVE_VALUE, "CONTRACT_NEGATIVE_VALUE" }, + { Status::INVALID_FEE_FILE, "INVALID_FEE_FILE" }, + { Status::INVALID_EXCHANGE_RATE_FILE, "INVALID_EXCHANGE_RATE_FILE" }, + { Status::INSUFFICIENT_LOCAL_CALL_GAS, "INSUFFICIENT_LOCAL_CALL_GAS" }, + { Status::ENTITY_NOT_ALLOWED_TO_DELETE, "ENTITY_NOT_ALLOWED_TO_DELETE" }, + { Status::AUTHORIZATION_FAILED, "AUTHORIZATION_FAILED" }, + { Status::FILE_UPLOADED_PROTO_INVALID, "FILE_UPLOADED_PROTO_INVALID" }, + { Status::FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK, "FILE_UPLOADED_PROTO_NOT_SAVED_TO_DISK" }, + { Status::FEE_SCHEDULE_FILE_PART_UPLOADED, "FEE_SCHEDULE_FILE_PART_UPLOADED" }, + { Status::EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED, "EXCHANGE_RATE_CHANGE_LIMIT_EXCEEDED" }, + { Status::MAX_CONTRACT_STORAGE_EXCEEDED, "MAX_CONTRACT_STORAGE_EXCEEDED" }, + { Status::TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT, "TRANSFER_ACCOUNT_SAME_AS_DELETE_ACCOUNT" }, + { Status::TOTAL_LEDGER_BALANCE_INVALID, "TOTAL_LEDGER_BALANCE_INVALID" }, + { Status::EXPIRATION_REDUCTION_NOT_ALLOWED, "EXPIRATION_REDUCTION_NOT_ALLOWED" }, + { Status::MAX_GAS_LIMIT_EXCEEDED, "MAX_GAS_LIMIT_EXCEEDED" }, + { Status::MAX_FILE_SIZE_EXCEEDED, "MAX_FILE_SIZE_EXCEEDED" }, + { Status::RECEIVER_SIG_REQUIRED, "RECEIVER_SIG_REQUIRED" }, + { Status::INVALID_TOPIC_ID, "INVALID_TOPIC_ID" }, + { Status::INVALID_ADMIN_KEY, "INVALID_ADMIN_KEY" }, + { Status::INVALID_SUBMIT_KEY, "INVALID_SUBMIT_KEY" }, + { Status::UNAUTHORIZED, "UNAUTHORIZED" }, + { Status::INVALID_TOPIC_MESSAGE, "INVALID_TOPIC_MESSAGE" }, + { Status::INVALID_AUTORENEW_ACCOUNT, "INVALID_AUTORENEW_ACCOUNT" }, + { Status::AUTORENEW_ACCOUNT_NOT_ALLOWED, "AUTORENEW_ACCOUNT_NOT_ALLOWED" }, + { Status::TOPIC_EXPIRED, "TOPIC_EXPIRED" }, + { Status::INVALID_CHUNK_NUMBER, "INVALID_CHUNK_NUMBER" }, + { Status::INVALID_CHUNK_TRANSACTION_ID, "INVALID_CHUNK_TRANSACTION_ID" }, + { Status::ACCOUNT_FROZEN_FOR_TOKEN, "ACCOUNT_FROZEN_FOR_TOKEN" }, + { Status::TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED, "TOKENS_PER_ACCOUNT_LIMIT_EXCEEDED" }, + { Status::INVALID_TOKEN_ID, "INVALID_TOKEN_ID" }, + { Status::INVALID_TOKEN_DECIMALS, "INVALID_TOKEN_DECIMALS" }, + { Status::INVALID_TOKEN_INITIAL_SUPPLY, "INVALID_TOKEN_INITIAL_SUPPLY" }, + { Status::INVALID_TREASURY_ACCOUNT_FOR_TOKEN, "INVALID_TREASURY_ACCOUNT_FOR_TOKEN" }, + { Status::INVALID_TOKEN_SYMBOL, "INVALID_TOKEN_SYMBOL" }, + { Status::TOKEN_HAS_NO_FREEZE_KEY, "TOKEN_HAS_NO_FREEZE_KEY" }, + { Status::TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN, "TRANSFERS_NOT_ZERO_SUM_FOR_TOKEN" }, + { Status::MISSING_TOKEN_SYMBOL, "MISSING_TOKEN_SYMBOL" }, + { Status::TOKEN_SYMBOL_TOO_LONG, "TOKEN_SYMBOL_TOO_LONG" }, + { Status::ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN, "ACCOUNT_KYC_NOT_GRANTED_FOR_TOKEN" }, + { Status::TOKEN_HAS_NO_KYC_KEY, "TOKEN_HAS_NO_KYC_KEY" }, + { Status::INSUFFICIENT_TOKEN_BALANCE, "INSUFFICIENT_TOKEN_BALANCE" }, + { Status::TOKEN_WAS_DELETED, "TOKEN_WAS_DELETED" }, + { Status::TOKEN_HAS_NO_SUPPLY_KEY, "TOKEN_HAS_NO_SUPPLY_KEY" }, + { Status::TOKEN_HAS_NO_WIPE_KEY, "TOKEN_HAS_NO_WIPE_KEY" }, + { Status::INVALID_TOKEN_MINT_AMOUNT, "INVALID_TOKEN_MINT_AMOUNT" }, + { Status::INVALID_TOKEN_BURN_AMOUNT, "INVALID_TOKEN_BURN_AMOUNT" }, + { Status::TOKEN_NOT_ASSOCIATED_TO_ACCOUNT, "TOKEN_NOT_ASSOCIATED_TO_ACCOUNT" }, + { Status::CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT, "CANNOT_WIPE_TOKEN_TREASURY_ACCOUNT" }, + { Status::INVALID_KYC_KEY, "INVALID_KYC_KEY" }, + { Status::INVALID_WIPE_KEY, "INVALID_WIPE_KEY" }, + { Status::INVALID_FREEZE_KEY, "INVALID_FREEZE_KEY" }, + { Status::INVALID_SUPPLY_KEY, "INVALID_SUPPLY_KEY" }, + { Status::MISSING_TOKEN_NAME, "MISSING_TOKEN_NAME" }, + { Status::TOKEN_NAME_TOO_LONG, "TOKEN_NAME_TOO_LONG" }, + { Status::INVALID_WIPING_AMOUNT, "INVALID_WIPING_AMOUNT" }, + { Status::TOKEN_IS_IMMUTABLE, "TOKEN_IS_IMMUTABLE" }, + { Status::TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT, "TOKEN_ALREADY_ASSOCIATED_TO_ACCOUNT" }, + { Status::TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES, "TRANSACTION_REQUIRES_ZERO_TOKEN_BALANCES" }, + { Status::ACCOUNT_IS_TREASURY, "ACCOUNT_IS_TREASURY" }, + { Status::TOKEN_ID_REPEATED_IN_TOKEN_LIST, "TOKEN_ID_REPEATED_IN_TOKEN_LIST" }, + { Status::TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED, "TOKEN_TRANSFER_LIST_SIZE_LIMIT_EXCEEDED" }, + { Status::EMPTY_TOKEN_TRANSFER_BODY, "EMPTY_TOKEN_TRANSFER_BODY" }, + { Status::EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS, "EMPTY_TOKEN_TRANSFER_ACCOUNT_AMOUNTS" }, + { Status::INVALID_SCHEDULE_ID, "INVALID_SCHEDULE_ID" }, + { Status::SCHEDULE_IS_IMMUTABLE, "SCHEDULE_IS_IMMUTABLE" }, + { Status::INVALID_SCHEDULE_PAYER_ID, "INVALID_SCHEDULE_PAYER_ID" }, + { Status::INVALID_SCHEDULE_ACCOUNT_ID, "INVALID_SCHEDULE_ACCOUNT_ID" }, + { Status::NO_NEW_VALID_SIGNATURES, "NO_NEW_VALID_SIGNATURES" }, + { Status::UNRESOLVABLE_REQUIRED_SIGNERS, "UNRESOLVABLE_REQUIRED_SIGNERS" }, + { Status::SCHEDULED_TRANSACTION_NOT_IN_WHITELIST, "SCHEDULED_TRANSACTION_NOT_IN_WHITELIST" }, + { Status::SOME_SIGNATURES_WERE_INVALID, "SOME_SIGNATURES_WERE_INVALID" }, + { Status::TRANSACTION_ID_FIELD_NOT_ALLOWED, "TRANSACTION_ID_FIELD_NOT_ALLOWED" }, + { Status::IDENTICAL_SCHEDULE_ALREADY_CREATED, "IDENTICAL_SCHEDULE_ALREADY_CREATED" }, + { Status::INVALID_ZERO_BYTE_IN_STRING, "INVALID_ZERO_BYTE_IN_STRING" }, + { Status::SCHEDULE_ALREADY_DELETED, "SCHEDULE_ALREADY_DELETED" }, + { Status::SCHEDULE_ALREADY_EXECUTED, "SCHEDULE_ALREADY_EXECUTED" }, + { Status::MESSAGE_SIZE_TOO_LARGE, "MESSAGE_SIZE_TOO_LARGE" }, + { Status::OPERATION_REPEATED_IN_BUCKET_GROUPS, "OPERATION_REPEATED_IN_BUCKET_GROUPS" }, + { Status::BUCKET_CAPACITY_OVERFLOW, "BUCKET_CAPACITY_OVERFLOW" }, + { Status::NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION, "NODE_CAPACITY_NOT_SUFFICIENT_FOR_OPERATION" }, + { Status::BUCKET_HAS_NO_THROTTLE_GROUPS, "BUCKET_HAS_NO_THROTTLE_GROUPS" }, + { Status::THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC, "THROTTLE_GROUP_HAS_ZERO_OPS_PER_SEC" }, + { Status::SUCCESS_BUT_MISSING_EXPECTED_OPERATION, "SUCCESS_BUT_MISSING_EXPECTED_OPERATION" }, + { Status::UNPARSEABLE_THROTTLE_DEFINITIONS, "UNPARSEABLE_THROTTLE_DEFINITIONS" }, + { Status::INVALID_THROTTLE_DEFINITIONS, "INVALID_THROTTLE_DEFINITIONS" }, + { Status::ACCOUNT_EXPIRED_AND_PENDING_REMOVAL, "ACCOUNT_EXPIRED_AND_PENDING_REMOVAL" }, + { Status::INVALID_TOKEN_MAX_SUPPLY, "INVALID_TOKEN_MAX_SUPPLY" }, + { Status::INVALID_TOKEN_NFT_SERIAL_NUMBER, "INVALID_TOKEN_NFT_SERIAL_NUMBER" }, + { Status::INVALID_NFT_ID, "INVALID_NFT_ID" }, + { Status::METADATA_TOO_LONG, "METADATA_TOO_LONG" }, + { Status::BATCH_SIZE_LIMIT_EXCEEDED, "BATCH_SIZE_LIMIT_EXCEEDED" }, + { Status::INVALID_QUERY_RANGE, "INVALID_QUERY_RANGE" }, + { Status::FRACTION_DIVIDES_BY_ZERO, "FRACTION_DIVIDES_BY_ZERO" }, + { Status::CUSTOM_FEES_LIST_TOO_LONG, "CUSTOM_FEES_LIST_TOO_LONG" }, + { Status::INVALID_CUSTOM_FEE_COLLECTOR, "INVALID_CUSTOM_FEE_COLLECTOR" }, + { Status::INVALID_TOKEN_ID_IN_CUSTOM_FEES, "INVALID_TOKEN_ID_IN_CUSTOM_FEES" }, + { Status::TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR, "TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR" }, + { Status::TOKEN_MAX_SUPPLY_REACHED, "TOKEN_MAX_SUPPLY_REACHED" }, + { Status::SENDER_DOES_NOT_OWN_NFT_SERIAL_NO, "SENDER_DOES_NOT_OWN_NFT_SERIAL_NO" }, + { Status::CUSTOM_FEE_NOT_FULLY_SPECIFIED, "CUSTOM_FEE_NOT_FULLY_SPECIFIED" }, + { Status::CUSTOM_FEE_MUST_BE_POSITIVE, "CUSTOM_FEE_MUST_BE_POSITIVE" }, + { Status::TOKEN_HAS_NO_FEE_SCHEDULE_KEY, "TOKEN_HAS_NO_FEE_SCHEDULE_KEY" }, + { Status::CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE, "CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE" }, + { Status::ROYALTY_FRACTION_CANNOT_EXCEED_ONE, "ROYALTY_FRACTION_CANNOT_EXCEED_ONE" }, + { Status::FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT, "FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT" }, + { Status::CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES, "CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES" }, + { Status::CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON, "CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON" }, { Status::CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON, - "CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON" }, - { Status::INVALID_CUSTOM_FEE_SCHEDULE_KEY, "INVALID_CUSTOM_FEE_SCHEDULE_KEY" }, - { Status::INVALID_TOKEN_MINT_METADATA, "INVALID_TOKEN_MINT_METADATA" }, - { Status::INVALID_TOKEN_BURN_METADATA, "INVALID_TOKEN_BURN_METADATA" }, - { Status::CURRENT_TREASURY_STILL_OWNS_NFTS, "CURRENT_TREASURY_STILL_OWNS_NFTS" }, - { Status::ACCOUNT_STILL_OWNS_NFTS, "ACCOUNT_STILL_OWNS_NFTS" }, - { Status::TREASURY_MUST_OWN_BURNED_NFT, "TREASURY_MUST_OWN_BURNED_NFT" }, - { Status::ACCOUNT_DOES_NOT_OWN_WIPED_NFT, "ACCOUNT_DOES_NOT_OWN_WIPED_NFT" }, + "CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON" }, + { Status::INVALID_CUSTOM_FEE_SCHEDULE_KEY, "INVALID_CUSTOM_FEE_SCHEDULE_KEY" }, + { Status::INVALID_TOKEN_MINT_METADATA, "INVALID_TOKEN_MINT_METADATA" }, + { Status::INVALID_TOKEN_BURN_METADATA, "INVALID_TOKEN_BURN_METADATA" }, + { Status::CURRENT_TREASURY_STILL_OWNS_NFTS, "CURRENT_TREASURY_STILL_OWNS_NFTS" }, + { Status::ACCOUNT_STILL_OWNS_NFTS, "ACCOUNT_STILL_OWNS_NFTS" }, + { Status::TREASURY_MUST_OWN_BURNED_NFT, "TREASURY_MUST_OWN_BURNED_NFT" }, + { Status::ACCOUNT_DOES_NOT_OWN_WIPED_NFT, "ACCOUNT_DOES_NOT_OWN_WIPED_NFT" }, { Status::ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON, - "ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON" }, - { Status::MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED, "MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED" }, - { Status::PAYER_ACCOUNT_DELETED, "PAYER_ACCOUNT_DELETED" }, - { Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH, "CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH" }, - { Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS, "CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS" }, - { Status::INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE, "INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE" }, - { Status::SERIAL_NUMBER_LIMIT_REACHED, "SERIAL_NUMBER_LIMIT_REACHED" }, + "ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON" }, + { Status::MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED, "MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED" }, + { Status::PAYER_ACCOUNT_DELETED, "PAYER_ACCOUNT_DELETED" }, + { Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH, "CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH" }, + { Status::CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS, "CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS" }, + { Status::INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE, "INSUFFICIENT_SENDER_ACCOUNT_BALANCE_FOR_CUSTOM_FEE"}, + { Status::SERIAL_NUMBER_LIMIT_REACHED, "SERIAL_NUMBER_LIMIT_REACHED" }, { Status::CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE, - "CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE" }, - { Status::NO_REMAINING_AUTOMATIC_ASSOCIATIONS, "NO_REMAINING_AUTOMATIC_ASSOCIATIONS" }, - { Status::EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT, "EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT" }, + "CUSTOM_ROYALTY_FEE_ONLY_ALLOWED_FOR_NON_FUNGIBLE_UNIQUE" }, + { Status::NO_REMAINING_AUTOMATIC_ASSOCIATIONS, "NO_REMAINING_AUTOMATIC_ASSOCIATIONS" }, + { Status::EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT, "EXISTING_AUTOMATIC_ASSOCIATIONS_EXCEED_GIVEN_LIMIT"}, { Status::REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT, - "REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT" }, - { Status::TOKEN_IS_PAUSED, "TOKEN_IS_PAUSED" }, - { Status::TOKEN_HAS_NO_PAUSE_KEY, "TOKEN_HAS_NO_PAUSE_KEY" }, - { Status::INVALID_PAUSE_KEY, "INVALID_PAUSE_KEY" }, - { Status::FREEZE_UPDATE_FILE_DOES_NOT_EXIST, "FREEZE_UPDATE_FILE_DOES_NOT_EXIST" }, - { Status::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH, "FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH" }, - { Status::NO_UPGRADE_HAS_BEEN_PREPARED, "NO_UPGRADE_HAS_BEEN_PREPARED" }, - { Status::NO_FREEZE_IS_SCHEDULED, "NO_FREEZE_IS_SCHEDULED" }, - { Status::UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE, "UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE" }, - { Status::FREEZE_START_TIME_MUST_BE_FUTURE, "FREEZE_START_TIME_MUST_BE_FUTURE" }, - { Status::PREPARED_UPDATE_FILE_IS_IMMUTABLE, "PREPARED_UPDATE_FILE_IS_IMMUTABLE" }, - { Status::FREEZE_ALREADY_SCHEDULED, "FREEZE_ALREADY_SCHEDULED" }, - { Status::FREEZE_UPGRADE_IN_PROGRESS, "FREEZE_UPGRADE_IN_PROGRESS" }, - { Status::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED, "UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED" }, - { Status::UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED, "UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED" }, - { Status::CONSENSUS_GAS_EXHAUSTED, "CONSENSUS_GAS_EXHAUSTED" }, - { Status::REVERTED_SUCCESS, "REVERTED_SUCCESS" }, - { Status::MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED, "MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED" }, - { Status::INVALID_ALIAS_KEY, "INVALID_ALIAS_KEY" }, - { Status::UNEXPECTED_TOKEN_DECIMALS, "UNEXPECTED_TOKEN_DECIMALS" }, - { Status::INVALID_TRANSFER_ACCOUNT_ID, "INVALID_TRANSFER_ACCOUNT_ID" }, - { Status::INVALID_FEE_COLLECTOR_ACCOUNT_ID, "INVALID_FEE_COLLECTOR_ACCOUNT_ID" }, - { Status::ALIAS_IS_IMMUTABLE, "ALIAS_IS_IMMUTABLE" }, - { Status::SPENDER_ACCOUNT_SAME_AS_OWNER, "SPENDER_ACCOUNT_SAME_AS_OWNER" }, - { Status::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY, "AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY" }, - { Status::NEGATIVE_ALLOWANCE_AMOUNT, "NEGATIVE_ALLOWANCE_AMOUNT" }, - { Status::SPENDER_DOES_NOT_HAVE_ALLOWANCE, "SPENDER_DOES_NOT_HAVE_ALLOWANCE" }, - { Status::AMOUNT_EXCEEDS_ALLOWANCE, "AMOUNT_EXCEEDS_ALLOWANCE" }, - { Status::MAX_ALLOWANCES_EXCEEDED, "MAX_ALLOWANCES_EXCEEDED" }, - { Status::EMPTY_ALLOWANCES, "EMPTY_ALLOWANCES" }, - { Status::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES, "FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES" }, - { Status::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES, "NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES" }, - { Status::INVALID_ALLOWANCE_OWNER_ID, "INVALID_ALLOWANCE_OWNER_ID" }, - { Status::INVALID_ALLOWANCE_SPENDER_ID, "INVALID_ALLOWANCE_SPENDER_ID" }, - { Status::INVALID_DELEGATING_SPENDER, "INVALID_DELEGATING_SPENDER" }, - { Status::DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL, "DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL" }, - { Status::DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL, "DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL" }, - { Status::SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE, "SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE" }, + "REQUESTED_NUM_AUTOMATIC_ASSOCIATIONS_EXCEEDS_ASSOCIATION_LIMIT" }, + { Status::TOKEN_IS_PAUSED, "TOKEN_IS_PAUSED" }, + { Status::TOKEN_HAS_NO_PAUSE_KEY, "TOKEN_HAS_NO_PAUSE_KEY" }, + { Status::INVALID_PAUSE_KEY, "INVALID_PAUSE_KEY" }, + { Status::FREEZE_UPDATE_FILE_DOES_NOT_EXIST, "FREEZE_UPDATE_FILE_DOES_NOT_EXIST" }, + { Status::FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH, "FREEZE_UPDATE_FILE_HASH_DOES_NOT_MATCH" }, + { Status::NO_UPGRADE_HAS_BEEN_PREPARED, "NO_UPGRADE_HAS_BEEN_PREPARED" }, + { Status::NO_FREEZE_IS_SCHEDULED, "NO_FREEZE_IS_SCHEDULED" }, + { Status::UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE, "UPDATE_FILE_HASH_CHANGED_SINCE_PREPARE_UPGRADE" }, + { Status::FREEZE_START_TIME_MUST_BE_FUTURE, "FREEZE_START_TIME_MUST_BE_FUTURE" }, + { Status::PREPARED_UPDATE_FILE_IS_IMMUTABLE, "PREPARED_UPDATE_FILE_IS_IMMUTABLE" }, + { Status::FREEZE_ALREADY_SCHEDULED, "FREEZE_ALREADY_SCHEDULED" }, + { Status::FREEZE_UPGRADE_IN_PROGRESS, "FREEZE_UPGRADE_IN_PROGRESS" }, + { Status::UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED, "UPDATE_FILE_ID_DOES_NOT_MATCH_PREPARED" }, + { Status::UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED, "UPDATE_FILE_HASH_DOES_NOT_MATCH_PREPARED" }, + { Status::CONSENSUS_GAS_EXHAUSTED, "CONSENSUS_GAS_EXHAUSTED" }, + { Status::REVERTED_SUCCESS, "REVERTED_SUCCESS" }, + { Status::MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED, "MAX_STORAGE_IN_PRICE_REGIME_HAS_BEEN_USED" }, + { Status::INVALID_ALIAS_KEY, "INVALID_ALIAS_KEY" }, + { Status::UNEXPECTED_TOKEN_DECIMALS, "UNEXPECTED_TOKEN_DECIMALS" }, + { Status::INVALID_TRANSFER_ACCOUNT_ID, "INVALID_TRANSFER_ACCOUNT_ID" }, + { Status::INVALID_FEE_COLLECTOR_ACCOUNT_ID, "INVALID_FEE_COLLECTOR_ACCOUNT_ID" }, + { Status::ALIAS_IS_IMMUTABLE, "ALIAS_IS_IMMUTABLE" }, + { Status::SPENDER_ACCOUNT_SAME_AS_OWNER, "SPENDER_ACCOUNT_SAME_AS_OWNER" }, + { Status::AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY, "AMOUNT_EXCEEDS_TOKEN_MAX_SUPPLY" }, + { Status::NEGATIVE_ALLOWANCE_AMOUNT, "NEGATIVE_ALLOWANCE_AMOUNT" }, + { Status::SPENDER_DOES_NOT_HAVE_ALLOWANCE, "SPENDER_DOES_NOT_HAVE_ALLOWANCE" }, + { Status::AMOUNT_EXCEEDS_ALLOWANCE, "AMOUNT_EXCEEDS_ALLOWANCE" }, + { Status::MAX_ALLOWANCES_EXCEEDED, "MAX_ALLOWANCES_EXCEEDED" }, + { Status::EMPTY_ALLOWANCES, "EMPTY_ALLOWANCES" }, + { Status::FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES, "FUNGIBLE_TOKEN_IN_NFT_ALLOWANCES" }, + { Status::NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES, "NFT_IN_FUNGIBLE_TOKEN_ALLOWANCES" }, + { Status::INVALID_ALLOWANCE_OWNER_ID, "INVALID_ALLOWANCE_OWNER_ID" }, + { Status::INVALID_ALLOWANCE_SPENDER_ID, "INVALID_ALLOWANCE_SPENDER_ID" }, + { Status::INVALID_DELEGATING_SPENDER, "INVALID_DELEGATING_SPENDER" }, + { Status::DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL, "DELEGATING_SPENDER_CANNOT_GRANT_APPROVE_FOR_ALL" }, + { Status::DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL, "DELEGATING_SPENDER_DOES_NOT_HAVE_APPROVE_FOR_ALL" }, + { Status::SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE, "SCHEDULE_EXPIRATION_TIME_TOO_FAR_IN_FUTURE" }, { Status::SCHEDULE_EXPIRATION_TIME_MUST_BE_HIGHER_THAN_CONSENSUS_TIME, - "SCHEDULE_EXPIRATION_TIME_MUST_BE_HIGHER_THAN_CONSENSUS_TIME" }, - { Status::SCHEDULE_FUTURE_THROTTLE_EXCEEDED, "SCHEDULE_FUTURE_THROTTLE_EXCEEDED" }, - { Status::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED, "SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED" }, - { Status::INVALID_ETHEREUM_TRANSACTION, "INVALID_ETHEREUM_TRANSACTION" }, - { Status::WRONG_CHAIN_ID, "WRONG_CHAIN_ID" }, - { Status::WRONG_NONCE, "WRONG_NONCE" }, - { Status::ACCESS_LIST_UNSUPPORTED, "ACCESS_LIST_UNSUPPORTED" }, - { Status::SCHEDULE_PENDING_EXPIRATION, "SCHEDULE_PENDING_EXPIRATION" }, - { Status::CONTRACT_IS_TOKEN_TREASURY, "CONTRACT_IS_TOKEN_TREASURY" }, - { Status::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES, "CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES" }, - { Status::CONTRACT_EXPIRED_AND_PENDING_REMOVAL, "CONTRACT_EXPIRED_AND_PENDING_REMOVAL" }, - { Status::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT, "CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT" }, - { Status::PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION, "PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION" }, - { Status::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED, "PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED" }, - { Status::SELF_STAKING_IS_NOT_ALLOWED, "SELF_STAKING_IS_NOT_ALLOWED" }, - { Status::INVALID_STAKING_ID, "INVALID_STAKING_ID" }, - { Status::STAKING_NOT_ENABLED, "STAKING_NOT_ENABLED" }, - { Status::INVALID_PRNG_RANGE, "INVALID_PRNG_RANGE" }, - { Status::MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED, "MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED" }, - { Status::INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE, "INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE" }, - { Status::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT, "INSUFFICIENT_BALANCES_FOR_STORAGE_RENT" }, - { Status::MAX_CHILD_RECORDS_EXCEEDED, "MAX_CHILD_RECORDS_EXCEEDED" }, - { Status::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES, "INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES" }, - { Status::TRANSACTION_HAS_UNKNOWN_FIELDS, "TRANSACTION_HAS_UNKNOWN_FIELDS" }, - { Status::ACCOUNT_IS_IMMUTABLE, "ACCOUNT_IS_IMMUTABLE" }, - { Status::ALIAS_ALREADY_ASSIGNED, "ALIAS_ALREADY_ASSIGNED" }, - { Status::INVALID_METADATA_KEY, "INVALID_METADATA_KEY" }, - { Status::MISSING_TOKEN_METADATA, "MISSING_TOKEN_METADATA" }, - { Status::MISSING_SERIAL_NUMBERS, "MISSING_SERIAL_NUMBERS" }, - { Status::INVALID_MAX_AUTO_ASSOCIATIONS, "INVALID_MAX_AUTO_ASSOCIATIONS" }, - { Status::TOKEN_REFERENCE_REPEATED, "TOKEN_REFERENCE_REPEATED" }, - { Status::INVALID_OWNER_ID, "INVALID_OWNER_ID" }, - { Status::EMPTY_TOKEN_REFERENCE_LIST, "EMPTY_TOKEN_REFERENCE_LIST" }, - { Status::EMPTY_PENDING_AIRDROP_ID_LIST, "EMPTY_PENDING_AIRDROP_ID_LIST" }, - { Status::PENDING_AIRDROP_ID_REPEATED, "PENDING_AIRDROP_ID_REPEATED" }, - { Status::PENDING_AIRDROP_ID_LIST_TOO_LONG, "PENDING_AIRDROP_ID_LIST_TOO_LONG" }, - { Status::PENDING_NFT_AIRDROP_ALREADY_EXISTS, "PENDING_NFT_AIRDROP_ALREADY_EXISTS" }, - { Status::ACCOUNT_HAS_PENDING_AIRDROPS, "ACCOUNT_HAS_PENDING_AIRDROPS" }, - { Status::THROTTLED_AT_CONSENSUS, "THROTTLED_AT_CONSENSUS" }, - { Status::INVALID_PENDING_AIRDROP_ID, "INVALID_PENDING_AIRDROP_ID" }, - { Status::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY, "TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY" }, - { Status::INVALID_TOKEN_IN_PENDING_AIRDROP, "INVALID_TOKEN_IN_PENDING_AIRDROP" }, - { Status::NODE_DELETED, "NODE_DELETED" }, - { Status::INVALID_NODE_ID, "INVALID_NODE_ID" }, - { Status::INVALID_GOSSIP_ENDPOINT, "INVALID_GOSSIP_ENDPOINT" }, - { Status::INVALID_NODE_ACCOUNT_ID, "INVALID_NODE_ACCOUNT_ID" }, - { Status::INVALID_NODE_DESCRIPTION, "INVALID_NODE_DESCRIPTION" }, - { Status::INVALID_SERVICE_ENDPOINT, "INVALID_SERVICE_ENDPOINT" }, - { Status::INVALID_GOSSIP_CA_CERTIFICATE, "INVALID_GOSSIP_CA_CERTIFICATE" }, - { Status::INVALID_GRPC_CERTIFICATE, "INVALID_GRPC_CERTIFICATE" }, - { Status::MAX_NODES_CREATED, "MAX_NODES_CREATED" }, - { Status::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT, "IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT" }, - { Status::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN, "GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN" }, - { Status::FQDN_SIZE_TOO_LARGE, "FQDN_SIZE_TOO_LARGE" }, - { Status::INVALID_ENDPOINT, "INVALID_ENDPOINT" }, - { Status::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT, "GOSSIP_ENDPOINTS_EXCEEDED_LIMIT" } + "SCHEDULE_EXPIRATION_TIME_MUST_BE_HIGHER_THAN_CONSENSUS_TIME" }, + { Status::SCHEDULE_FUTURE_THROTTLE_EXCEEDED, "SCHEDULE_FUTURE_THROTTLE_EXCEEDED" }, + { Status::SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED, "SCHEDULE_FUTURE_GAS_LIMIT_EXCEEDED" }, + { Status::INVALID_ETHEREUM_TRANSACTION, "INVALID_ETHEREUM_TRANSACTION" }, + { Status::WRONG_CHAIN_ID, "WRONG_CHAIN_ID" }, + { Status::WRONG_NONCE, "WRONG_NONCE" }, + { Status::ACCESS_LIST_UNSUPPORTED, "ACCESS_LIST_UNSUPPORTED" }, + { Status::SCHEDULE_PENDING_EXPIRATION, "SCHEDULE_PENDING_EXPIRATION" }, + { Status::CONTRACT_IS_TOKEN_TREASURY, "CONTRACT_IS_TOKEN_TREASURY" }, + { Status::CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES, "CONTRACT_HAS_NON_ZERO_TOKEN_BALANCES" }, + { Status::CONTRACT_EXPIRED_AND_PENDING_REMOVAL, "CONTRACT_EXPIRED_AND_PENDING_REMOVAL" }, + { Status::CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT, "CONTRACT_HAS_NO_AUTO_RENEW_ACCOUNT" }, + { Status::PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION, "PERMANENT_REMOVAL_REQUIRES_SYSTEM_INITIATION" }, + { Status::PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED, "PROXY_ACCOUNT_ID_FIELD_IS_DEPRECATED" }, + { Status::SELF_STAKING_IS_NOT_ALLOWED, "SELF_STAKING_IS_NOT_ALLOWED" }, + { Status::INVALID_STAKING_ID, "INVALID_STAKING_ID" }, + { Status::STAKING_NOT_ENABLED, "STAKING_NOT_ENABLED" }, + { Status::INVALID_PRNG_RANGE, "INVALID_PRNG_RANGE" }, + { Status::MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED, "MAX_ENTITIES_IN_PRICE_REGIME_HAVE_BEEN_CREATED" }, + { Status::INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE, "INVALID_FULL_PREFIX_SIGNATURE_FOR_PRECOMPILE" }, + { Status::INSUFFICIENT_BALANCES_FOR_STORAGE_RENT, "INSUFFICIENT_BALANCES_FOR_STORAGE_RENT" }, + { Status::MAX_CHILD_RECORDS_EXCEEDED, "MAX_CHILD_RECORDS_EXCEEDED" }, + { Status::INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES, "INSUFFICIENT_BALANCES_FOR_RENEWAL_FEES" }, + { Status::TRANSACTION_HAS_UNKNOWN_FIELDS, "TRANSACTION_HAS_UNKNOWN_FIELDS" }, + { Status::ACCOUNT_IS_IMMUTABLE, "ACCOUNT_IS_IMMUTABLE" }, + { Status::ALIAS_ALREADY_ASSIGNED, "ALIAS_ALREADY_ASSIGNED" }, + { Status::INVALID_METADATA_KEY, "INVALID_METADATA_KEY" }, + { Status::MISSING_TOKEN_METADATA, "MISSING_TOKEN_METADATA" }, + { Status::MISSING_SERIAL_NUMBERS, "MISSING_SERIAL_NUMBERS" }, + { Status::INVALID_MAX_AUTO_ASSOCIATIONS, "INVALID_MAX_AUTO_ASSOCIATIONS" }, + { Status::TOKEN_REFERENCE_REPEATED, "TOKEN_REFERENCE_REPEATED" }, + { Status::INVALID_OWNER_ID, "INVALID_OWNER_ID" }, + { Status::EMPTY_TOKEN_REFERENCE_LIST, "EMPTY_TOKEN_REFERENCE_LIST" }, + { Status::EMPTY_PENDING_AIRDROP_ID_LIST, "EMPTY_PENDING_AIRDROP_ID_LIST" }, + { Status::PENDING_AIRDROP_ID_REPEATED, "PENDING_AIRDROP_ID_REPEATED" }, + { Status::PENDING_AIRDROP_ID_LIST_TOO_LONG, "PENDING_AIRDROP_ID_LIST_TOO_LONG" }, + { Status::PENDING_NFT_AIRDROP_ALREADY_EXISTS, "PENDING_NFT_AIRDROP_ALREADY_EXISTS" }, + { Status::ACCOUNT_HAS_PENDING_AIRDROPS, "ACCOUNT_HAS_PENDING_AIRDROPS" }, + { Status::THROTTLED_AT_CONSENSUS, "THROTTLED_AT_CONSENSUS" }, + { Status::INVALID_PENDING_AIRDROP_ID, "INVALID_PENDING_AIRDROP_ID" }, + { Status::TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY, "TOKEN_AIRDROP_WITH_FALLBACK_ROYALTY" }, + { Status::INVALID_TOKEN_IN_PENDING_AIRDROP, "INVALID_TOKEN_IN_PENDING_AIRDROP" }, + { Status::NODE_DELETED, "NODE_DELETED" }, + { Status::INVALID_NODE_ID, "INVALID_NODE_ID" }, + { Status::INVALID_GOSSIP_ENDPOINT, "INVALID_GOSSIP_ENDPOINT" }, + { Status::INVALID_NODE_ACCOUNT_ID, "INVALID_NODE_ACCOUNT_ID" }, + { Status::INVALID_NODE_DESCRIPTION, "INVALID_NODE_DESCRIPTION" }, + { Status::INVALID_SERVICE_ENDPOINT, "INVALID_SERVICE_ENDPOINT" }, + { Status::INVALID_GOSSIP_CA_CERTIFICATE, "INVALID_GOSSIP_CA_CERTIFICATE" }, + { Status::INVALID_GRPC_CERTIFICATE, "INVALID_GRPC_CERTIFICATE" }, + { Status::MAX_NODES_CREATED, "MAX_NODES_CREATED" }, + { Status::IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT, "IP_FQDN_CANNOT_BE_SET_FOR_SAME_ENDPOINT" }, + { Status::GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN, "GOSSIP_ENDPOINT_CANNOT_HAVE_FQDN" }, + { Status::FQDN_SIZE_TOO_LARGE, "FQDN_SIZE_TOO_LARGE" }, + { Status::INVALID_ENDPOINT, "INVALID_ENDPOINT" }, + { Status::GOSSIP_ENDPOINTS_EXCEEDED_LIMIT, "GOSSIP_ENDPOINTS_EXCEEDED_LIMIT" } }; } // namespace Hiero \ No newline at end of file diff --git a/src/sdk/main/src/TokenType.cc b/src/sdk/main/src/TokenType.cc index 1fea457ba..6fa28250e 100644 --- a/src/sdk/main/src/TokenType.cc +++ b/src/sdk/main/src/TokenType.cc @@ -7,20 +7,20 @@ namespace Hiero { //----- const std::unordered_map gProtobufTokenTypeToTokenType = { - { proto::TokenType::FUNGIBLE_COMMON, TokenType::FUNGIBLE_COMMON }, - { proto::TokenType::NON_FUNGIBLE_UNIQUE, TokenType::NON_FUNGIBLE_UNIQUE } + {proto::TokenType::FUNGIBLE_COMMON, TokenType::FUNGIBLE_COMMON }, + { proto::TokenType::NON_FUNGIBLE_UNIQUE, TokenType::NON_FUNGIBLE_UNIQUE} }; //----- const std::unordered_map gTokenTypeToProtobufTokenType = { - { TokenType::FUNGIBLE_COMMON, proto::TokenType::FUNGIBLE_COMMON }, - { TokenType::NON_FUNGIBLE_UNIQUE, proto::TokenType::NON_FUNGIBLE_UNIQUE } + {TokenType::FUNGIBLE_COMMON, proto::TokenType::FUNGIBLE_COMMON }, + { TokenType::NON_FUNGIBLE_UNIQUE, proto::TokenType::NON_FUNGIBLE_UNIQUE} }; //----- const std::unordered_map gTokenTypeToString = { - { TokenType::FUNGIBLE_COMMON, "FUNGIBLE_COMMON" }, - { TokenType::NON_FUNGIBLE_UNIQUE, "NON_FUNGIBLE_UNIQUE" } + {TokenType::FUNGIBLE_COMMON, "FUNGIBLE_COMMON" }, + { TokenType::NON_FUNGIBLE_UNIQUE, "NON_FUNGIBLE_UNIQUE"} }; } // namespace Hiero diff --git a/src/sdk/main/src/impl/ASN1ECPublicKey.cc b/src/sdk/main/src/impl/ASN1ECPublicKey.cc index 9577ad536..6df2f27aa 100644 --- a/src/sdk/main/src/impl/ASN1ECPublicKey.cc +++ b/src/sdk/main/src/impl/ASN1ECPublicKey.cc @@ -45,7 +45,7 @@ void ASN1ECPublicKey::populateXYcoords() BN_hex2bn(&yCoordBN, internal::HexConverter::bytesToHex(ecYcoord).c_str()); // if y even pad 0x02 byte else 0x03 ecXcoord = internal::Utilities::concatenateVectors({ - // get x coordinate + // get x coordinate { std::byte(0x00) }, { !BN_is_bit_set(yCoordBN, 0) ? std::byte(0x02) : std::byte(0x03) }, { publicKey.begin() + 2, publicKey.end() - EC_KEY_LENGTH } diff --git a/src/sdk/tests/unit/ECDSAsecp256k1PrivateKeyUnitTests.cc b/src/sdk/tests/unit/ECDSAsecp256k1PrivateKeyUnitTests.cc index 5447f6eab..f7a5c8a83 100644 --- a/src/sdk/tests/unit/ECDSAsecp256k1PrivateKeyUnitTests.cc +++ b/src/sdk/tests/unit/ECDSAsecp256k1PrivateKeyUnitTests.cc @@ -85,24 +85,24 @@ class ECDSAsecp256k1PrivateKeyUnitTests : public ::testing::Test "302e0201010420a6170a6aa6389a5bd3a3a8f9375f57bd91aa7f7d8b8b46ce0b702e000a21a5fea00706052b8104000a"; const std::unordered_map> expectedPrivateKeyPairs{ - { unencryptedUncompressedPEMPrivateKey, + {unencryptedUncompressedPEMPrivateKey, { "6F08FA32A2FA21956BBB6D6DF9E59CC2F901DBCFBA06E00569EC7988EB95EEAA", - "02A9FE4198C781CE453545AF5401B649A37B72B553A56FB7AB4DCDFA2D12CFDB49" } }, + "02A9FE4198C781CE453545AF5401B649A37B72B553A56FB7AB4DCDFA2D12CFDB49" }}, { unencryptedCompressedPEMPrivateKey, { "E1F285C9701DB85ADDFDBCD4ABDDF3CE2B841CE5B71189C4267269009A807F63", - "02444AFA80565AE0AEE104FF9B036E5576043ED0004580CFA0E51630FD6E93D4E8" } }, + "02444AFA80565AE0AEE104FF9B036E5576043ED0004580CFA0E51630FD6E93D4E8" }}, { legacyDERPrivateKey, { "8C2CDC9575FE67493443967D74958FD7808A3787FD3337E99CFEEBBC7566B586", - "028173079D2E996EF6B2D064FC82D5FC7094367211E28422BEC50A2F75C365F5FD" } }, + "028173079D2E996EF6B2D064FC82D5FC7094367211E28422BEC50A2F75C365F5FD" }}, { openSSLCompatibleCompressedDERPrivateKey, { "AC318EA8FF8D991AB2F16172B4738E74DC35A56681199CFB1C0CB2E7CB560FFD", - "036843F5CB338BBB4CDB21B0DA4EA739D910951D6E8A5F703D313EFE31AFE788F4" } }, + "036843F5CB338BBB4CDB21B0DA4EA739D910951D6E8A5F703D313EFE31AFE788F4" }}, { openSSLCompatibleUncompressedDERPrivateKey, { "8927647AD12B29646A1D051DA8453462937BB2C813C6815CAC6C0B720526FFC6", - "03AAAC1C3AC1BEA0245B8E00CE1E2018F9EAB61B6331FBEF7266F2287750A65977" } }, + "03AAAC1C3AC1BEA0245B8E00CE1E2018F9EAB61B6331FBEF7266F2287750A65977" }}, { openSSLCompatibleDERPrivateKeyWithoutPublicKey, { "A6170A6AA6389A5BD3A3A8F9375F57BD91AA7F7D8B8B46CE0B702E000A21A5FE", - "03B69A75A5DDB1C0747E995D47555019E5D8A28003AB5202BD92F534361FB4EC8A" } } + "03B69A75A5DDB1C0747E995D47555019E5D8A28003AB5202BD92F534361FB4EC8A" }} }; }; diff --git a/src/sdk/tests/unit/ED25519PrivateKeyUnitTests.cc b/src/sdk/tests/unit/ED25519PrivateKeyUnitTests.cc index 8f194e0f9..172b75a54 100644 --- a/src/sdk/tests/unit/ED25519PrivateKeyUnitTests.cc +++ b/src/sdk/tests/unit/ED25519PrivateKeyUnitTests.cc @@ -69,12 +69,12 @@ class ED25519PrivateKeyUnitTests : public ::testing::Test "KEY-----"; const std::unordered_map> expectedPrivateKeyPairs{ - { openSSLCompatiblePrivateKey, + {openSSLCompatiblePrivateKey, { "FEB858A4A69600A5EEF2D9C76F7FB84FC0B6627F29E0AB17E160F640C267D404", - "8CCD31B53D1835B467AAC795DAB19B274DD3B37E3DAF12FCEC6BC02BAC87B53D" } }, + "8CCD31B53D1835B467AAC795DAB19B274DD3B37E3DAF12FCEC6BC02BAC87B53D" }}, { unencryptedPemPrivateKey, { "E81B8DA1E012A17B3D8D2DD9D51FD95534BB5311A0A8A2FDFCB00E5CDEE25BE5", - "F7B9AA4A8E4EEE94E4277DFE757D8D7CDE027E7CD5349B7D8E6EE21C9B9395BE" } }, + "F7B9AA4A8E4EEE94E4277DFE757D8D7CDE027E7CD5349B7D8E6EE21C9B9395BE" }}, }; }; diff --git a/src/sdk/tests/unit/NetworkUnitTests.cc b/src/sdk/tests/unit/NetworkUnitTests.cc index f897f0e2e..46e5b2a77 100644 --- a/src/sdk/tests/unit/NetworkUnitTests.cc +++ b/src/sdk/tests/unit/NetworkUnitTests.cc @@ -75,8 +75,8 @@ TEST_F(NetworkUnitTests, ConstructCustomNetwork) { // Given const std::unordered_map testNetwork = { - { "2.testnet.hedera.com:50211", AccountId(5ULL) }, - { "3.testnet.hedera.com:50211", AccountId(6ULL) } + {"2.testnet.hedera.com:50211", AccountId(5ULL)}, + { "3.testnet.hedera.com:50211", AccountId(6ULL)} }; // When diff --git a/src/sdk/tests/unit/TokenMintTransactionUnitTests.cc b/src/sdk/tests/unit/TokenMintTransactionUnitTests.cc index f883670f0..014024171 100644 --- a/src/sdk/tests/unit/TokenMintTransactionUnitTests.cc +++ b/src/sdk/tests/unit/TokenMintTransactionUnitTests.cc @@ -27,9 +27,9 @@ class TokenMintTransactionUnitTests : public ::testing::Test const TokenId mTestTokenId = TokenId(1ULL, 2ULL, 3ULL); const uint64_t mTestAmount = 4ULL; const std::vector> mTestMetadataList = { - { std::byte(0x05), std::byte(0x06), std::byte(0x07) }, - { std::byte(0x08), std::byte(0x09), std::byte(0x0A) }, - { std::byte(0x0B), std::byte(0x0C), std::byte(0x0D) } + {std::byte(0x05), std::byte(0x06), std::byte(0x07)}, + { std::byte(0x08), std::byte(0x09), std::byte(0x0A)}, + { std::byte(0x0B), std::byte(0x0C), std::byte(0x0D)} }; }; diff --git a/src/tck/include/token/params/AssociateTokenParams.h b/src/tck/include/token/params/AssociateTokenParams.h index 8e67851a9..ea7423f0f 100644 --- a/src/tck/include/token/params/AssociateTokenParams.h +++ b/src/tck/include/token/params/AssociateTokenParams.h @@ -1,22 +1,4 @@ -/*- - * - * Hedera C++ SDK - * - * Copyright (C) 2020 - 2024 Hedera Hashgraph, LLC - * - * Licensed under the Apache License, Version 2.0 (the "License") - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ +// SPDX-License-Identifier: Apache-2.0 #ifndef HIERO_TCK_CPP_ASSOCIATE_TOKEN_PARAMS_H_ #define HIERO_TCK_CPP_ASSOCIATE_TOKEN_PARAMS_H_ @@ -28,7 +10,7 @@ #include #include -namespace Hedera::TCK::TokenService +namespace Hiero::TCK::TokenService { /** * Struct to hold the arguments for an `associateToken` JSON-RPC method call. @@ -51,7 +33,7 @@ struct AssociateTokenParams std::optional mCommonTxParams; }; -} // namespace Hedera::TCK::TokenService +} // namespace Hiero::TCK::TokenService namespace nlohmann { @@ -59,7 +41,7 @@ namespace nlohmann * JSON serializer template specialization required to convert AssociateTokenParams arguments properly. */ template<> -struct [[maybe_unused]] adl_serializer +struct [[maybe_unused]] adl_serializer { /** * Convert a JSON object to a AssociateTokenParams. @@ -67,12 +49,12 @@ struct [[maybe_unused]] adl_serializer(jsonFrom, "accountId"); - params.mTokenIds = Hedera::TCK::getOptionalJsonParameter>(jsonFrom, "tokenIds"); + params.mAccountId = Hiero::TCK::getOptionalJsonParameter(jsonFrom, "accountId"); + params.mTokenIds = Hiero::TCK::getOptionalJsonParameter>(jsonFrom, "tokenIds"); params.mCommonTxParams = - Hedera::TCK::getOptionalJsonParameter(jsonFrom, "commonTransactionParams"); + Hiero::TCK::getOptionalJsonParameter(jsonFrom, "commonTransactionParams"); } }; diff --git a/src/tck/src/sdk/SdkClient.cc b/src/tck/src/sdk/SdkClient.cc index 21c6f329c..33f7fe95d 100644 --- a/src/tck/src/sdk/SdkClient.cc +++ b/src/tck/src/sdk/SdkClient.cc @@ -24,7 +24,7 @@ nlohmann::json reset(const ResetParams&) { mClient.close(); return { - { "status", "SUCCESS" } + {"status", "SUCCESS"} }; } @@ -36,7 +36,7 @@ nlohmann::json setup(const SetupParams& params) if (params.nodeIp.has_value() && params.nodeAccountId.has_value() && params.mirrorNetworkIp.has_value()) { mClient = Client::forNetwork({ - { params.nodeIp.value(), AccountId::fromString(params.nodeAccountId.value()) } + {params.nodeIp.value(), AccountId::fromString(params.nodeAccountId.value())} }); mClient.setMirrorNetwork({ params.mirrorNetworkIp.value() }); clientType = "custom"; @@ -52,8 +52,8 @@ nlohmann::json setup(const SetupParams& params) mClient.setRequestTimeout(DEFAULT_TCK_REQUEST_TIMEOUT); return { - { "message", "Successfully setup " + clientType + " client." }, - { "status", "SUCCESS" } + {"message", "Successfully setup " + clientType + " client."}, + { "status", "SUCCESS" } }; } diff --git a/src/tck/src/token/TokenService.cc b/src/tck/src/token/TokenService.cc index 3b31148f3..0844c96f5 100644 --- a/src/tck/src/token/TokenService.cc +++ b/src/tck/src/token/TokenService.cc @@ -207,8 +207,8 @@ nlohmann::json createToken(const CreateTokenParams& params) const TransactionReceipt txReceipt = tokenCreateTransaction.execute(SdkClient::getClient()).getReceipt(SdkClient::getClient()); return { - { "tokenId", txReceipt.mTokenId->toString() }, - { "status", gStatusToString.at(txReceipt.mStatus) } + {"tokenId", txReceipt.mTokenId->toString() }, + { "status", gStatusToString.at(txReceipt.mStatus)} }; } From 8d67ce0cfd6c3e9d43b65dbfeb8a935ef3985713 Mon Sep 17 00:00:00 2001 From: Rob Walworth Date: Mon, 25 Nov 2024 17:09:29 -0500 Subject: [PATCH 3/3] feat(TCK): add dissociateToken tests Signed-off-by: Rob Walworth --- .../main/src/ContractFunctionParameters.cc | 4 +- src/tck/include/token/TokenService.h | 9 +++ .../include/token/params/DeleteTokenParams.h | 2 +- .../token/params/DissociateTokenParams.h | 62 +++++++++++++++++++ src/tck/src/TckServer.cc | 3 + src/tck/src/main.cc | 1 + src/tck/src/token/TokenService.cc | 36 +++++++++++ 7 files changed, 114 insertions(+), 3 deletions(-) create mode 100644 src/tck/include/token/params/DissociateTokenParams.h diff --git a/src/sdk/main/src/ContractFunctionParameters.cc b/src/sdk/main/src/ContractFunctionParameters.cc index d3319813d..c3a4d5aea 100644 --- a/src/sdk/main/src/ContractFunctionParameters.cc +++ b/src/sdk/main/src/ContractFunctionParameters.cc @@ -49,7 +49,7 @@ const std::vector NEGATIVE_PADDING(31, std::byte(0xFF)); { const std::vector& padding = negative ? NEGATIVE_PADDING : POSITIVE_PADDING; return internal::Utilities::concatenateVectors({ - { padding.cbegin(), padding.cbegin() + getPaddingAmount(bytes) }, + {padding.cbegin(), padding.cbegin() + getPaddingAmount(bytes)}, bytes }); } @@ -63,7 +63,7 @@ const std::vector NEGATIVE_PADDING(31, std::byte(0xFF)); [[nodiscard]] std::vector rightPad(const std::vector& bytes, bool = false) { return internal::Utilities::concatenateVectors({ - bytes, { POSITIVE_PADDING.cbegin(), POSITIVE_PADDING.cbegin() + getPaddingAmount(bytes) } + bytes, {POSITIVE_PADDING.cbegin(), POSITIVE_PADDING.cbegin() + getPaddingAmount(bytes)} }); } diff --git a/src/tck/include/token/TokenService.h b/src/tck/include/token/TokenService.h index f1cfc68f8..16aa85d54 100644 --- a/src/tck/include/token/TokenService.h +++ b/src/tck/include/token/TokenService.h @@ -11,6 +11,7 @@ namespace Hiero::TCK::TokenService */ class CreateTokenParams; class DeleteTokenParams; +struct DissociateTokenParams; /** * Create a token. @@ -28,6 +29,14 @@ nlohmann::json createToken(const CreateTokenParams& params); */ nlohmann::json deleteToken(const DeleteTokenParams& params); +/** + * Dissociate an account from tokens. + * + * @param params The parameters to use to dissociate the account. + * @return A JSON response containing the status of the account dissociation. + */ +nlohmann::json dissociateToken(const DissociateTokenParams& params); + } // namespace Hiero::TCK::TokenService #endif // HIERO_TCK_CPP_TOKEN_SERVICE_H_ diff --git a/src/tck/include/token/params/DeleteTokenParams.h b/src/tck/include/token/params/DeleteTokenParams.h index d1ab7ccf6..8f30ae6fb 100644 --- a/src/tck/include/token/params/DeleteTokenParams.h +++ b/src/tck/include/token/params/DeleteTokenParams.h @@ -27,7 +27,7 @@ struct DeleteTokenParams std::optional mCommonTxParams; }; -} // namespace Hedera::TCK::TokenService +} // namespace Hiero::TCK::TokenService namespace nlohmann { diff --git a/src/tck/include/token/params/DissociateTokenParams.h b/src/tck/include/token/params/DissociateTokenParams.h new file mode 100644 index 000000000..2a696d406 --- /dev/null +++ b/src/tck/include/token/params/DissociateTokenParams.h @@ -0,0 +1,62 @@ +// SPDX-License-Identifier: Apache-2.0 +#ifndef HIERO_TCK_CPP_DISSOCIATE_TOKEN_PARAMS_H_ +#define HIERO_TCK_CPP_DISSOCIATE_TOKEN_PARAMS_H_ + +#include "common/CommonTransactionParams.h" +#include "json/JsonUtils.h" + +#include +#include +#include + +namespace Hiero::TCK::TokenService +{ +/** + * Struct to hold the arguments for a `dissociateToken` JSON-RPC method call. + */ +struct DissociateTokenParams +{ + /** + * The ID of the account from which to dissociate the token. + */ + std::optional mAccountId; + + /** + * The IDs of the tokens to dissociate. + */ + std::optional> mTokenIds; + + /** + * Any parameters common to all transaction types. + */ + std::optional mCommonTxParams; +}; + +} // namespace Hiero::TCK::TokenService + +namespace nlohmann +{ +/** + * JSON serializer template specialization required to convert DissociateTokenParams arguments properly. + */ +template<> +struct [[maybe_unused]] adl_serializer +{ + /** + * Convert a JSON object to a DissociateTokenParams. + * + * @param jsonFrom The JSON object with which to fill the DissociateTokenParams. + * @param params The DissociateTokenParams to fill with the JSON object. + */ + static void from_json(const json& jsonFrom, Hiero::TCK::TokenService::DissociateTokenParams& params) + { + params.mAccountId = Hiero::TCK::getOptionalJsonParameter(jsonFrom, "accountId"); + params.mTokenIds = Hiero::TCK::getOptionalJsonParameter>(jsonFrom, "tokenIds"); + params.mCommonTxParams = + Hiero::TCK::getOptionalJsonParameter(jsonFrom, "commonTransactionParams"); + } +}; + +} // namespace nlohmann + +#endif // HIERO_TCK_CPP_DISSOCIATE_TOKEN_PARAMS_H_ diff --git a/src/tck/src/TckServer.cc b/src/tck/src/TckServer.cc index ea2b2b2b5..368061190 100644 --- a/src/tck/src/TckServer.cc +++ b/src/tck/src/TckServer.cc @@ -8,6 +8,7 @@ #include "sdk/params/SetupParams.h" #include "token/params/CreateTokenParams.h" #include "token/params/DeleteTokenParams.h" +#include "token/params/DissociateTokenParams.h" #include "json/JsonErrorType.h" #include "json/JsonRpcException.h" #include "json/JsonUtils.h" @@ -349,5 +350,7 @@ template TckServer::MethodHandle TckServer::getHandle( nlohmann::json (*method)(const TokenService::DeleteTokenParams&)); +template TckServer::MethodHandle TckServer::getHandle( + nlohmann::json (*method)(const TokenService::DissociateTokenParams&)); } // namespace Hiero::TCK diff --git a/src/tck/src/main.cc b/src/tck/src/main.cc index 7ed6d888c..0b502dc7f 100644 --- a/src/tck/src/main.cc +++ b/src/tck/src/main.cc @@ -30,6 +30,7 @@ int main(int argc, char** argv) // Add the TokenService functions. tckServer.add("createToken", tckServer.getHandle(&TokenService::createToken)); tckServer.add("deleteToken", tckServer.getHandle(&TokenService::deleteToken)); + tckServer.add("dissociateToken", tckServer.getHandle(&TokenService::dissociateToken)); // Start listening for requests. tckServer.startServer(); diff --git a/src/tck/src/token/TokenService.cc b/src/tck/src/token/TokenService.cc index 328ab875e..8ea23ae69 100644 --- a/src/tck/src/token/TokenService.cc +++ b/src/tck/src/token/TokenService.cc @@ -4,6 +4,7 @@ #include "sdk/SdkClient.h" #include "token/params/CreateTokenParams.h" #include "token/params/DeleteTokenParams.h" +#include "token/params/DissociateTokenParams.h" #include "json/JsonErrorType.h" #include "json/JsonRpcException.h" @@ -11,6 +12,7 @@ #include #include #include +#include #include #include #include @@ -200,4 +202,38 @@ nlohmann::json deleteToken(const DeleteTokenParams& params) }; } +//----- +nlohmann::json dissociateToken(const DissociateTokenParams& params) +{ + TokenDissociateTransaction tokenDissociateTransaction; + tokenDissociateTransaction.setGrpcDeadline(std::chrono::seconds(SdkClient::DEFAULT_TCK_REQUEST_TIMEOUT)); + + if (params.mAccountId.has_value()) + { + tokenDissociateTransaction.setAccountId(AccountId::fromString(params.mAccountId.value())); + } + + if (params.mTokenIds.has_value()) + { + std::vector tokenIds; + for (const std::string& tokenId : params.mTokenIds.value()) + { + tokenIds.push_back(TokenId::fromString(tokenId)); + } + + tokenDissociateTransaction.setTokenIds(tokenIds); + } + + if (params.mCommonTxParams.has_value()) + { + params.mCommonTxParams->fillOutTransaction(tokenDissociateTransaction, SdkClient::getClient()); + } + + return { + {"status", + gStatusToString.at( + tokenDissociateTransaction.execute(SdkClient::getClient()).getReceipt(SdkClient::getClient()).mStatus)} + }; +} + } // namespace Hiero::TCK::TokenService