31    add(sfSignerEntry.jsonName,
 
   32        sfSignerEntry.getCode(),
 
   34            {sfAccount, soeREQUIRED},
 
   35            {sfSignerWeight, soeREQUIRED},
 
   36            {sfWalletLocator, soeOPTIONAL},
 
   39    add(sfSigner.jsonName,
 
   42            {sfAccount, soeREQUIRED},
 
   43            {sfSigningPubKey, soeREQUIRED},
 
   44            {sfTxnSignature, soeREQUIRED},
 
   47    add(sfMajority.jsonName,
 
   50            {sfAmendment, soeREQUIRED},
 
   51            {sfCloseTime, soeREQUIRED},
 
   54    add(sfDisabledValidator.jsonName,
 
   55        sfDisabledValidator.getCode(),
 
   57            {sfPublicKey, soeREQUIRED},
 
   58            {sfFirstLedgerSequence, soeREQUIRED},
 
   61    add(sfNFToken.jsonName,
 
   64            {sfNFTokenID, soeREQUIRED},
 
   68    add(sfVoteEntry.jsonName,
 
   69        sfVoteEntry.getCode(),
 
   71            {sfAccount, soeREQUIRED},
 
   72            {sfTradingFee, soeDEFAULT},
 
   73            {sfVoteWeight, soeREQUIRED},
 
   76    add(sfAuctionSlot.jsonName,
 
   77        sfAuctionSlot.getCode(),
 
   78        {{sfAccount, soeREQUIRED},
 
   79         {sfExpiration, soeREQUIRED},
 
   80         {sfDiscountedFee, soeDEFAULT},
 
   81         {sfPrice, soeREQUIRED},
 
   82         {sfAuthAccounts, soeOPTIONAL}});
 
   84    add(sfXChainClaimAttestationCollectionElement.jsonName,
 
   85        sfXChainClaimAttestationCollectionElement.getCode(),
 
   87            {sfAttestationSignerAccount, soeREQUIRED},
 
   88            {sfPublicKey, soeREQUIRED},
 
   89            {sfSignature, soeREQUIRED},
 
   90            {sfAmount, soeREQUIRED},
 
   91            {sfAccount, soeREQUIRED},
 
   92            {sfAttestationRewardAccount, soeREQUIRED},
 
   93            {sfWasLockingChainSend, soeREQUIRED},
 
   94            {sfXChainClaimID, soeREQUIRED},
 
   95            {sfDestination, soeOPTIONAL},
 
   98    add(sfXChainCreateAccountAttestationCollectionElement.jsonName,
 
   99        sfXChainCreateAccountAttestationCollectionElement.getCode(),
 
  101            {sfAttestationSignerAccount, soeREQUIRED},
 
  102            {sfPublicKey, soeREQUIRED},
 
  103            {sfSignature, soeREQUIRED},
 
  104            {sfAmount, soeREQUIRED},
 
  105            {sfAccount, soeREQUIRED},
 
  106            {sfAttestationRewardAccount, soeREQUIRED},
 
  107            {sfWasLockingChainSend, soeREQUIRED},
 
  108            {sfXChainAccountCreateCount, soeREQUIRED},
 
  109            {sfDestination, soeREQUIRED},
 
  110            {sfSignatureReward, soeREQUIRED},
 
  113    add(sfXChainClaimProofSig.jsonName,
 
  114        sfXChainClaimProofSig.getCode(),
 
  116            {sfAttestationSignerAccount, soeREQUIRED},
 
  117            {sfPublicKey, soeREQUIRED},
 
  118            {sfAmount, soeREQUIRED},
 
  119            {sfAttestationRewardAccount, soeREQUIRED},
 
  120            {sfWasLockingChainSend, soeREQUIRED},
 
  121            {sfDestination, soeOPTIONAL},
 
  124    add(sfXChainCreateAccountProofSig.jsonName,
 
  125        sfXChainCreateAccountProofSig.getCode(),
 
  127            {sfAttestationSignerAccount, soeREQUIRED},
 
  128            {sfPublicKey, soeREQUIRED},
 
  129            {sfAmount, soeREQUIRED},
 
  130            {sfSignatureReward, soeREQUIRED},
 
  131            {sfAttestationRewardAccount, soeREQUIRED},
 
  132            {sfWasLockingChainSend, soeREQUIRED},
 
  133            {sfDestination, soeREQUIRED},
 
  136    add(sfAuthAccount.jsonName,
 
  137        sfAuthAccount.getCode(),
 
  139            {sfAccount, soeREQUIRED},
 
  142    add(sfPriceData.jsonName,
 
  143        sfPriceData.getCode(),
 
  145            {sfBaseAsset, soeREQUIRED},
 
  146            {sfQuoteAsset, soeREQUIRED},
 
  147            {sfAssetPrice, soeOPTIONAL},
 
  148            {sfScale, soeDEFAULT},
 
  151    add(sfCredential.jsonName,
 
  152        sfCredential.getCode(),
 
  154            {sfIssuer, soeREQUIRED},
 
  155            {sfCredentialType, soeREQUIRED},
 
  158    add(sfPermission.jsonName.c_str(),
 
  159        sfPermission.getCode(),
 
  160        {{sfPermissionValue, soeREQUIRED}});
 
  162    add(sfBatchSigner.jsonName.c_str(),
 
  163        sfBatchSigner.getCode(),
 
  164        {{sfAccount, soeREQUIRED},
 
  165         {sfSigningPubKey, soeOPTIONAL},
 
  166         {sfTxnSignature, soeOPTIONAL},
 
  167         {sfSigners, soeOPTIONAL}});
 
  172            {sfBookDirectory, soeREQUIRED},
 
  173            {sfBookNode, soeREQUIRED},