From b22297c25e71bbee318e779281904090d2cb79d7 Mon Sep 17 00:00:00 2001 From: Jason Elie Bou Kheir <5115126+jasonboukheir@users.noreply.github.com> Date: Sun, 3 Oct 2021 02:56:44 -0700 Subject: [PATCH] feat(indexer): :sparkles: implement `LogicSig` json fields --- .../Signatures/ISignature.cs | 6 -- .../Signatures/ISignature.cs.meta | 11 --- .../Signatures/LogicSignature.cs | 6 -- .../Signatures/LogicSignature.cs.meta | 11 --- .../Signatures/MultiSignature.cs | 6 -- .../Signatures/MultiSignature.cs.meta | 11 --- .../Signatures/Signature.cs | 6 -- .../Signatures/Signature.cs.meta | 11 --- .../AlgoApi/AlgoApiFormatterLookup.gen.cs | 84 ++++++++++++++++++- .../Models/Transaction/Signature/LogicSig.cs | 9 +- 10 files changed, 85 insertions(+), 76 deletions(-) delete mode 100644 Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/ISignature.cs delete mode 100644 Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/ISignature.cs.meta delete mode 100644 Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/LogicSignature.cs delete mode 100644 Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/LogicSignature.cs.meta delete mode 100644 Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/MultiSignature.cs delete mode 100644 Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/MultiSignature.cs.meta delete mode 100644 Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/Signature.cs delete mode 100644 Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/Signature.cs.meta diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/ISignature.cs b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/ISignature.cs deleted file mode 100644 index 9f0fd1978..000000000 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/ISignature.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace AlgoSdk.Crypto -{ - public interface ISignature - { - } -} diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/ISignature.cs.meta b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/ISignature.cs.meta deleted file mode 100644 index f2ac63e3b..000000000 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/ISignature.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 6c7929de47aff014594f6540d6e3bd7d -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/LogicSignature.cs b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/LogicSignature.cs deleted file mode 100644 index 898911d5b..000000000 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/LogicSignature.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace AlgoSdk.Crypto -{ - public struct LogicSignature : ISignature - { - } -} diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/LogicSignature.cs.meta b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/LogicSignature.cs.meta deleted file mode 100644 index 573946fe8..000000000 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/LogicSignature.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: f650c0c5f57f90d4d8ba466fa1b6ad13 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/MultiSignature.cs b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/MultiSignature.cs deleted file mode 100644 index f5e88b17b..000000000 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/MultiSignature.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace AlgoSdk.Crypto -{ - public struct MultiSignature : ISignature - { - } -} diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/MultiSignature.cs.meta b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/MultiSignature.cs.meta deleted file mode 100644 index 01a9278d4..000000000 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/MultiSignature.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 31a5ba6da6ac8fa47bb0e9059a1da669 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/Signature.cs b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/Signature.cs deleted file mode 100644 index 665b70d4f..000000000 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/Signature.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace AlgoSdk.Crypto -{ - public struct Signature : ISignature - { - } -} diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/Signature.cs.meta b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/Signature.cs.meta deleted file mode 100644 index ec4d3e557..000000000 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk.Crypto/Signatures/Signature.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: fed02cb588f4ee742832272ec94fc23f -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk/AlgoApi/AlgoApiFormatterLookup.gen.cs b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk/AlgoApi/AlgoApiFormatterLookup.gen.cs index 3c716bebf..0d55b6281 100644 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk/AlgoApi/AlgoApiFormatterLookup.gen.cs +++ b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk/AlgoApi/AlgoApiFormatterLookup.gen.cs @@ -10,13 +10,91 @@ namespace AlgoSdk { - - + + public sealed partial class AlgoApiFormatterLookup { - + private static void EnsureLookupInitialized() { + AlgoSdk.AlgoApiFormatterLookup.InitLookup(); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Account), new AlgoSdk.AlgoApiObjectFormatter().Assign("address", null, (AlgoSdk.Account x) => x.Address, (ref AlgoSdk.Account x, AlgoSdk.Address value) => x.Address = value, false).Assign("amount", null, (AlgoSdk.Account x) => x.Amount, (ref AlgoSdk.Account x, System.UInt64 value) => x.Amount = value, false).Assign("amount-without-pending-rewards", null, (AlgoSdk.Account x) => x.AmountWithoutPendingRewards, (ref AlgoSdk.Account x, System.UInt64 value) => x.AmountWithoutPendingRewards = value, false).Assign("apps-local-state", null, (AlgoSdk.Account x) => x.ApplicationsLocalState, (ref AlgoSdk.Account x, AlgoSdk.ApplicationLocalState[] value) => x.ApplicationsLocalState = value, AlgoSdk.ArrayComparer.Instance, false).Assign("apps-total-extra-pages", null, (AlgoSdk.Account x) => x.ApplicationsTotalExtraPages, (ref AlgoSdk.Account x, AlgoSdk.Optional value) => x.ApplicationsTotalExtraPages = value, false).Assign("apps-total-schema", null, (AlgoSdk.Account x) => x.ApplicationsTotalSchema, (ref AlgoSdk.Account x, AlgoSdk.Optional value) => x.ApplicationsTotalSchema = value, false).Assign("assets", null, (AlgoSdk.Account x) => x.Assets, (ref AlgoSdk.Account x, AlgoSdk.AssetHolding[] value) => x.Assets = value, AlgoSdk.ArrayComparer.Instance, false).Assign("auth-addr", null, (AlgoSdk.Account x) => x.AuthAddress, (ref AlgoSdk.Account x, AlgoSdk.Optional value) => x.AuthAddress = value, false).Assign("created-apps", null, (AlgoSdk.Account x) => x.CreatedApplications, (ref AlgoSdk.Account x, AlgoSdk.Application[] value) => x.CreatedApplications = value, AlgoSdk.ArrayComparer.Instance, false).Assign("created-assets", null, (AlgoSdk.Account x) => x.CreatedAssets, (ref AlgoSdk.Account x, AlgoSdk.Asset[] value) => x.CreatedAssets = value, AlgoSdk.ArrayComparer.Instance, false).Assign("participation", null, (AlgoSdk.Account x) => x.Participation, (ref AlgoSdk.Account x, AlgoSdk.Optional value) => x.Participation = value, false).Assign("pending-rewards", null, (AlgoSdk.Account x) => x.PendingRewards, (ref AlgoSdk.Account x, System.UInt64 value) => x.PendingRewards = value, false).Assign("reward-base", null, (AlgoSdk.Account x) => x.RewardBase, (ref AlgoSdk.Account x, AlgoSdk.Optional value) => x.RewardBase = value, false).Assign("rewards", null, (AlgoSdk.Account x) => x.Rewards, (ref AlgoSdk.Account x, System.UInt64 value) => x.Rewards = value, false).Assign("round", null, (AlgoSdk.Account x) => x.Round, (ref AlgoSdk.Account x, System.UInt64 value) => x.Round = value, false).Assign("sig-type", null, (AlgoSdk.Account x) => x.SignatureType, (ref AlgoSdk.Account x, AlgoSdk.SignatureType value) => x.SignatureType = value, AlgoSdk.SignatureTypeComparer.Instance, false).Assign("status", null, (AlgoSdk.Account x) => x.Status, (ref AlgoSdk.Account x, Unity.Collections.FixedString32Bytes value) => x.Status = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.ApplicationLocalState[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.AssetHolding[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Application[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Asset[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.AccountParticipation), new AlgoSdk.AlgoApiObjectFormatter().Assign("selection-participation-key", null, (AlgoSdk.AccountParticipation x) => x.SelectionParticipationKey, (ref AlgoSdk.AccountParticipation x, Unity.Collections.FixedString128Bytes value) => x.SelectionParticipationKey = value, false).Assign("vote-first-valid", null, (AlgoSdk.AccountParticipation x) => x.VoteFirstValid, (ref AlgoSdk.AccountParticipation x, System.UInt64 value) => x.VoteFirstValid = value, false).Assign("vote-key-dilution", null, (AlgoSdk.AccountParticipation x) => x.VoteKeyDilution, (ref AlgoSdk.AccountParticipation x, System.UInt64 value) => x.VoteKeyDilution = value, false).Assign("vote-last-valid", null, (AlgoSdk.AccountParticipation x) => x.VoteLastValid, (ref AlgoSdk.AccountParticipation x, System.UInt64 value) => x.VoteLastValid = value, false).Assign("vote-participation-key", null, (AlgoSdk.AccountParticipation x) => x.VoteParticipationKey, (ref AlgoSdk.AccountParticipation x, Unity.Collections.FixedString128Bytes value) => x.VoteParticipationKey = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.AccountStateDelta), new AlgoSdk.AlgoApiObjectFormatter().Assign("address", null, (AlgoSdk.AccountStateDelta x) => x.Address, (ref AlgoSdk.AccountStateDelta x, AlgoSdk.Address value) => x.Address = value, false).Assign("delta", null, (AlgoSdk.AccountStateDelta x) => x.Delta, (ref AlgoSdk.AccountStateDelta x, AlgoSdk.EvalDeltaKeyValue[] value) => x.Delta = value, AlgoSdk.ArrayComparer.Instance, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.EvalDeltaKeyValue[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Application), new AlgoSdk.AlgoApiObjectFormatter().Assign("created-at-round", null, (AlgoSdk.Application x) => x.CreatedAtRound, (ref AlgoSdk.Application x, AlgoSdk.Optional value) => x.CreatedAtRound = value, false).Assign("deleted", null, (AlgoSdk.Application x) => x.Deleted, (ref AlgoSdk.Application x, AlgoSdk.Optional value) => x.Deleted = value, false).Assign("deleted-at-round", null, (AlgoSdk.Application x) => x.DeletedAtRound, (ref AlgoSdk.Application x, AlgoSdk.Optional value) => x.DeletedAtRound = value, false).Assign("id", null, (AlgoSdk.Application x) => x.Id, (ref AlgoSdk.Application x, System.UInt64 value) => x.Id = value, false).Assign("params", null, (AlgoSdk.Application x) => x.Params, (ref AlgoSdk.Application x, AlgoSdk.ApplicationParams value) => x.Params = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.ApplicationLocalState), new AlgoSdk.AlgoApiObjectFormatter().Assign("closed-out-at-round", null, (AlgoSdk.ApplicationLocalState x) => x.ClosedOutAtRound, (ref AlgoSdk.ApplicationLocalState x, AlgoSdk.Optional value) => x.ClosedOutAtRound = value, false).Assign("deleted", null, (AlgoSdk.ApplicationLocalState x) => x.Deleted, (ref AlgoSdk.ApplicationLocalState x, AlgoSdk.Optional value) => x.Deleted = value, false).Assign("id", null, (AlgoSdk.ApplicationLocalState x) => x.Id, (ref AlgoSdk.ApplicationLocalState x, System.UInt64 value) => x.Id = value, false).Assign("key-value", null, (AlgoSdk.ApplicationLocalState x) => x.KeyValues, (ref AlgoSdk.ApplicationLocalState x, AlgoSdk.TealKeyValue[] value) => x.KeyValues = value, AlgoSdk.ArrayComparer.Instance, false).Assign("opted-in-at-round", null, (AlgoSdk.ApplicationLocalState x) => x.OptedInAtRound, (ref AlgoSdk.ApplicationLocalState x, AlgoSdk.Optional value) => x.OptedInAtRound = value, false).Assign("schema", null, (AlgoSdk.ApplicationLocalState x) => x.Schema, (ref AlgoSdk.ApplicationLocalState x, AlgoSdk.StateSchema value) => x.Schema = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TealKeyValue[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.ApplicationParams), new AlgoSdk.AlgoApiObjectFormatter().Assign("approval-program", null, (AlgoSdk.ApplicationParams x) => x.ApprovalProgram, (ref AlgoSdk.ApplicationParams x, System.Byte[] value) => x.ApprovalProgram = value, AlgoSdk.ArrayComparer.Instance, false).Assign("clear-state-program", null, (AlgoSdk.ApplicationParams x) => x.ClearStateProgram, (ref AlgoSdk.ApplicationParams x, System.Byte[] value) => x.ClearStateProgram = value, AlgoSdk.ArrayComparer.Instance, false).Assign("creator", null, (AlgoSdk.ApplicationParams x) => x.Creator, (ref AlgoSdk.ApplicationParams x, AlgoSdk.Address value) => x.Creator = value, false).Assign("extra-program-pages", null, (AlgoSdk.ApplicationParams x) => x.ExtraProgramPages, (ref AlgoSdk.ApplicationParams x, AlgoSdk.Optional value) => x.ExtraProgramPages = value, false).Assign("global-state", null, (AlgoSdk.ApplicationParams x) => x.GlobalState, (ref AlgoSdk.ApplicationParams x, AlgoSdk.TealKeyValue[] value) => x.GlobalState = value, AlgoSdk.ArrayComparer.Instance, false).Assign("global-state-schema", null, (AlgoSdk.ApplicationParams x) => x.GlobalStateSchema, (ref AlgoSdk.ApplicationParams x, AlgoSdk.Optional value) => x.GlobalStateSchema = value, false).Assign("local-state-schema", null, (AlgoSdk.ApplicationParams x) => x.LocalStateSchema, (ref AlgoSdk.ApplicationParams x, AlgoSdk.Optional value) => x.LocalStateSchema = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(byte[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Asset), new AlgoSdk.AlgoApiObjectFormatter().Assign("created-at-round", null, (AlgoSdk.Asset x) => x.CreatedAtRound, (ref AlgoSdk.Asset x, AlgoSdk.Optional value) => x.CreatedAtRound = value, false).Assign("deleted", null, (AlgoSdk.Asset x) => x.Deleted, (ref AlgoSdk.Asset x, AlgoSdk.Optional value) => x.Deleted = value, false).Assign("destroyed-at-round", null, (AlgoSdk.Asset x) => x.DestroyedAtRound, (ref AlgoSdk.Asset x, AlgoSdk.Optional value) => x.DestroyedAtRound = value, false).Assign("index", null, (AlgoSdk.Asset x) => x.Index, (ref AlgoSdk.Asset x, System.UInt64 value) => x.Index = value, false).Assign("params", null, (AlgoSdk.Asset x) => x.Params, (ref AlgoSdk.Asset x, AlgoSdk.AssetParams value) => x.Params = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.AssetHolding), new AlgoSdk.AlgoApiObjectFormatter().Assign("amount", null, (AlgoSdk.AssetHolding x) => x.Amount, (ref AlgoSdk.AssetHolding x, System.UInt64 value) => x.Amount = value, false).Assign("asset-id", null, (AlgoSdk.AssetHolding x) => x.AssetId, (ref AlgoSdk.AssetHolding x, System.UInt64 value) => x.AssetId = value, false).Assign("creator", null, (AlgoSdk.AssetHolding x) => x.Creator, (ref AlgoSdk.AssetHolding x, AlgoSdk.Address value) => x.Creator = value, false).Assign("deleted", null, (AlgoSdk.AssetHolding x) => x.Deleted, (ref AlgoSdk.AssetHolding x, AlgoSdk.Optional value) => x.Deleted = value, false).Assign("is-frozen", null, (AlgoSdk.AssetHolding x) => x.IsFrozen, (ref AlgoSdk.AssetHolding x, System.Boolean value) => x.IsFrozen = value, false).Assign("opted-in-at-round", null, (AlgoSdk.AssetHolding x) => x.OptedInAtRound, (ref AlgoSdk.AssetHolding x, AlgoSdk.Optional value) => x.OptedInAtRound = value, false).Assign("opted-out-at-round", null, (AlgoSdk.AssetHolding x) => x.OptedOutAtRound, (ref AlgoSdk.AssetHolding x, AlgoSdk.Optional value) => x.OptedOutAtRound = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.AssetParams), new AlgoSdk.AlgoApiObjectFormatter().Assign("clawback", null, (AlgoSdk.AssetParams x) => x.Clawback, (ref AlgoSdk.AssetParams x, AlgoSdk.Address value) => x.Clawback = value, false).Assign("creator", null, (AlgoSdk.AssetParams x) => x.Creator, (ref AlgoSdk.AssetParams x, AlgoSdk.Address value) => x.Creator = value, false).Assign("decimals", null, (AlgoSdk.AssetParams x) => x.Decimals, (ref AlgoSdk.AssetParams x, System.UInt64 value) => x.Decimals = value, false).Assign("default-frozen", null, (AlgoSdk.AssetParams x) => x.DefaultFrozen, (ref AlgoSdk.AssetParams x, AlgoSdk.Optional value) => x.DefaultFrozen = value, false).Assign("freeze", null, (AlgoSdk.AssetParams x) => x.Freeze, (ref AlgoSdk.AssetParams x, AlgoSdk.Address value) => x.Freeze = value, false).Assign("manager", null, (AlgoSdk.AssetParams x) => x.Manager, (ref AlgoSdk.AssetParams x, AlgoSdk.Address value) => x.Manager = value, false).Assign("metadata-hash", null, (AlgoSdk.AssetParams x) => x.MetadataHash, (ref AlgoSdk.AssetParams x, Unity.Collections.FixedString128Bytes value) => x.MetadataHash = value, false).Assign("name", null, (AlgoSdk.AssetParams x) => x.Name, (ref AlgoSdk.AssetParams x, Unity.Collections.FixedString64Bytes value) => x.Name = value, false).Assign("name-b64", null, (AlgoSdk.AssetParams x) => x.NameBase64, (ref AlgoSdk.AssetParams x, Unity.Collections.FixedString128Bytes value) => x.NameBase64 = value, false).Assign("reserve", null, (AlgoSdk.AssetParams x) => x.Reserve, (ref AlgoSdk.AssetParams x, AlgoSdk.Address value) => x.Reserve = value, false).Assign("total", null, (AlgoSdk.AssetParams x) => x.Total, (ref AlgoSdk.AssetParams x, System.UInt64 value) => x.Total = value, false).Assign("unit-name", null, (AlgoSdk.AssetParams x) => x.UnitName, (ref AlgoSdk.AssetParams x, Unity.Collections.FixedString64Bytes value) => x.UnitName = value, false).Assign("unit-name-b64", null, (AlgoSdk.AssetParams x) => x.UnitNameBase64, (ref AlgoSdk.AssetParams x, Unity.Collections.FixedString128Bytes value) => x.UnitNameBase64 = value, false).Assign("url", null, (AlgoSdk.AssetParams x) => x.Url, (ref AlgoSdk.AssetParams x, Unity.Collections.FixedString512Bytes value) => x.Url = value, false).Assign("url-b64", null, (AlgoSdk.AssetParams x) => x.UrlBase64, (ref AlgoSdk.AssetParams x, Unity.Collections.FixedString512Bytes value) => x.UrlBase64 = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.BlockResponse), new AlgoSdk.AlgoApiObjectFormatter().Assign("block", "block", (AlgoSdk.BlockResponse x) => x.BlockHeader, (ref AlgoSdk.BlockResponse x, AlgoSdk.Block value) => x.BlockHeader = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.BlockRewards), new AlgoSdk.AlgoApiObjectFormatter().Assign("fee-sink", null, (AlgoSdk.BlockRewards x) => x.FeeSink, (ref AlgoSdk.BlockRewards x, Unity.Collections.FixedString128Bytes value) => x.FeeSink = value, false).Assign("rewards-calculation-round", null, (AlgoSdk.BlockRewards x) => x.RewardsCalculationRound, (ref AlgoSdk.BlockRewards x, System.UInt64 value) => x.RewardsCalculationRound = value, false).Assign("rewards-level", null, (AlgoSdk.BlockRewards x) => x.RewardsLevel, (ref AlgoSdk.BlockRewards x, System.UInt64 value) => x.RewardsLevel = value, false).Assign("rewards-pool", null, (AlgoSdk.BlockRewards x) => x.RewardsPool, (ref AlgoSdk.BlockRewards x, Unity.Collections.FixedString128Bytes value) => x.RewardsPool = value, false).Assign("rewards-rate", null, (AlgoSdk.BlockRewards x) => x.RewardsRate, (ref AlgoSdk.BlockRewards x, System.UInt64 value) => x.RewardsRate = value, false).Assign("rewards-residue", null, (AlgoSdk.BlockRewards x) => x.RewardsResidue, (ref AlgoSdk.BlockRewards x, System.UInt64 value) => x.RewardsResidue = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.BlockTransaction), new AlgoSdk.AlgoApiObjectFormatter().Assign("sig", "sig", (AlgoSdk.BlockTransaction x) => x.Sig, (ref AlgoSdk.BlockTransaction x, AlgoSdk.Sig value) => x.Sig = value, false).Assign("msig", "msig", (AlgoSdk.BlockTransaction x) => x.MultiSig, (ref AlgoSdk.BlockTransaction x, AlgoSdk.MultiSig value) => x.MultiSig = value, false).Assign("lsig", "lsig", (AlgoSdk.BlockTransaction x) => x.LogicSig, (ref AlgoSdk.BlockTransaction x, AlgoSdk.LogicSig value) => x.LogicSig = value, false).Assign("txn", "txn", (AlgoSdk.BlockTransaction x) => x.Transaction, (ref AlgoSdk.BlockTransaction x, AlgoSdk.Transaction value) => x.Transaction = value, false).Assign("hgi", "hgi", (AlgoSdk.BlockTransaction x) => x.Hgi, (ref AlgoSdk.BlockTransaction x, AlgoSdk.Optional value) => x.Hgi = value, false).Assign("rr", "rr", (AlgoSdk.BlockTransaction x) => x.Rr, (ref AlgoSdk.BlockTransaction x, System.UInt64 value) => x.Rr = value, false).Assign("rs", "rs", (AlgoSdk.BlockTransaction x) => x.Rs, (ref AlgoSdk.BlockTransaction x, System.UInt64 value) => x.Rs = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.BlockUpgradeState), new AlgoSdk.AlgoApiObjectFormatter().Assign("current-protocol", null, (AlgoSdk.BlockUpgradeState x) => x.CurrentProtocol, (ref AlgoSdk.BlockUpgradeState x, Unity.Collections.FixedString128Bytes value) => x.CurrentProtocol = value, false).Assign("next-protocol", null, (AlgoSdk.BlockUpgradeState x) => x.NextProtocol, (ref AlgoSdk.BlockUpgradeState x, Unity.Collections.FixedString128Bytes value) => x.NextProtocol = value, false).Assign("next-protocol-approvals", null, (AlgoSdk.BlockUpgradeState x) => x.NextProtocolApprovals, (ref AlgoSdk.BlockUpgradeState x, AlgoSdk.Optional value) => x.NextProtocolApprovals = value, false).Assign("next-protocol-switch-on", null, (AlgoSdk.BlockUpgradeState x) => x.NextProtocolSwitchOn, (ref AlgoSdk.BlockUpgradeState x, AlgoSdk.Optional value) => x.NextProtocolSwitchOn = value, false).Assign("next-protocol-vote-before", null, (AlgoSdk.BlockUpgradeState x) => x.NextProtocolVoteBefore, (ref AlgoSdk.BlockUpgradeState x, AlgoSdk.Optional value) => x.NextProtocolVoteBefore = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.BuildVersion), new AlgoSdk.AlgoApiObjectFormatter().Assign("branch", null, (AlgoSdk.BuildVersion x) => x.Branch, (ref AlgoSdk.BuildVersion x, Unity.Collections.FixedString64Bytes value) => x.Branch = value, false).Assign("build_number", null, (AlgoSdk.BuildVersion x) => x.BuildNumber, (ref AlgoSdk.BuildVersion x, System.UInt64 value) => x.BuildNumber = value, false).Assign("channel", null, (AlgoSdk.BuildVersion x) => x.Channel, (ref AlgoSdk.BuildVersion x, Unity.Collections.FixedString64Bytes value) => x.Channel = value, false).Assign("commit_hash", null, (AlgoSdk.BuildVersion x) => x.CommitHash, (ref AlgoSdk.BuildVersion x, Unity.Collections.FixedString128Bytes value) => x.CommitHash = value, false).Assign("major", null, (AlgoSdk.BuildVersion x) => x.Major, (ref AlgoSdk.BuildVersion x, System.UInt64 value) => x.Major = value, false).Assign("minor", null, (AlgoSdk.BuildVersion x) => x.Minor, (ref AlgoSdk.BuildVersion x, System.UInt64 value) => x.Minor = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.CatchupMessage), new AlgoSdk.AlgoApiObjectFormatter().Assign("catchup-message", null, (AlgoSdk.CatchupMessage x) => x.Message, (ref AlgoSdk.CatchupMessage x, Unity.Collections.FixedString512Bytes value) => x.Message = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.DryrunRequest), new AlgoSdk.AlgoApiObjectFormatter().Assign("accounts", null, (AlgoSdk.DryrunRequest x) => x.Accounts, (ref AlgoSdk.DryrunRequest x, AlgoSdk.Account[] value) => x.Accounts = value, AlgoSdk.ArrayComparer.Instance, false).Assign("apps", null, (AlgoSdk.DryrunRequest x) => x.Applications, (ref AlgoSdk.DryrunRequest x, AlgoSdk.Application[] value) => x.Applications = value, AlgoSdk.ArrayComparer.Instance, false).Assign("latest-timestamp", null, (AlgoSdk.DryrunRequest x) => x.LatestTimestamp, (ref AlgoSdk.DryrunRequest x, System.UInt64 value) => x.LatestTimestamp = value, false).Assign("protocol-version", null, (AlgoSdk.DryrunRequest x) => x.ProtocolVersion, (ref AlgoSdk.DryrunRequest x, Unity.Collections.FixedString64Bytes value) => x.ProtocolVersion = value, false).Assign("round", null, (AlgoSdk.DryrunRequest x) => x.Round, (ref AlgoSdk.DryrunRequest x, System.UInt64 value) => x.Round = value, false).Assign("sources", null, (AlgoSdk.DryrunRequest x) => x.Sources, (ref AlgoSdk.DryrunRequest x, AlgoSdk.DryrunSource[] value) => x.Sources = value, AlgoSdk.ArrayComparer.Instance, false).Assign("txns", null, (AlgoSdk.DryrunRequest x) => x.Transactions, (ref AlgoSdk.DryrunRequest x, AlgoSdk.Transaction[] value) => x.Transactions = value, AlgoSdk.ArrayComparer.Instance, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Account[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.DryrunSource[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Transaction[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.DryrunResults), new AlgoSdk.AlgoApiObjectFormatter().Assign("error", null, (AlgoSdk.DryrunResults x) => x.Error, (ref AlgoSdk.DryrunResults x, System.String value) => x.Error = value, false).Assign("protocol-version", null, (AlgoSdk.DryrunResults x) => x.ProtocolVersion, (ref AlgoSdk.DryrunResults x, Unity.Collections.FixedString128Bytes value) => x.ProtocolVersion = value, false).Assign("txns", null, (AlgoSdk.DryrunResults x) => x.Txns, (ref AlgoSdk.DryrunResults x, AlgoSdk.DryrunTxnResult[] value) => x.Txns = value, AlgoSdk.ArrayComparer.Instance, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.DryrunTxnResult[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.DryrunSource), new AlgoSdk.AlgoApiObjectFormatter().Assign("app-index", null, (AlgoSdk.DryrunSource x) => x.AppIndex, (ref AlgoSdk.DryrunSource x, System.UInt64 value) => x.AppIndex = value, false).Assign("field-name", null, (AlgoSdk.DryrunSource x) => x.FieldName, (ref AlgoSdk.DryrunSource x, Unity.Collections.FixedString32Bytes value) => x.FieldName = value, false).Assign("source", null, (AlgoSdk.DryrunSource x) => x.Source, (ref AlgoSdk.DryrunSource x, System.String value) => x.Source = value, false).Assign("txn-index", null, (AlgoSdk.DryrunSource x) => x.TransactionIndex, (ref AlgoSdk.DryrunSource x, System.UInt64 value) => x.TransactionIndex = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.DryrunState), new AlgoSdk.AlgoApiObjectFormatter().Assign("error", null, (AlgoSdk.DryrunState x) => x.Error, (ref AlgoSdk.DryrunState x, Unity.Collections.FixedString128Bytes value) => x.Error = value, false).Assign("line", null, (AlgoSdk.DryrunState x) => x.Line, (ref AlgoSdk.DryrunState x, System.UInt64 value) => x.Line = value, false).Assign("pc", null, (AlgoSdk.DryrunState x) => x.ProgramCounter, (ref AlgoSdk.DryrunState x, System.UInt64 value) => x.ProgramCounter = value, false).Assign("scratch", null, (AlgoSdk.DryrunState x) => x.Scratch, (ref AlgoSdk.DryrunState x, AlgoSdk.TealValue[] value) => x.Scratch = value, AlgoSdk.ArrayComparer.Instance, false).Assign("stack", null, (AlgoSdk.DryrunState x) => x.Stack, (ref AlgoSdk.DryrunState x, AlgoSdk.TealValue[] value) => x.Stack = value, AlgoSdk.ArrayComparer.Instance, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TealValue[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.DryrunTxnResult), new AlgoSdk.AlgoApiObjectFormatter().Assign("app-call-messages", null, (AlgoSdk.DryrunTxnResult x) => x.AppCallMessages, (ref AlgoSdk.DryrunTxnResult x, Unity.Collections.FixedString128Bytes[] value) => x.AppCallMessages = value, AlgoSdk.ArrayComparer.Instance, false).Assign("app-call-trace", null, (AlgoSdk.DryrunTxnResult x) => x.AppCallTrace, (ref AlgoSdk.DryrunTxnResult x, AlgoSdk.DryrunState[] value) => x.AppCallTrace = value, AlgoSdk.ArrayComparer.Instance, false).Assign("disassembly", null, (AlgoSdk.DryrunTxnResult x) => x.Disassembly, (ref AlgoSdk.DryrunTxnResult x, Unity.Collections.FixedString128Bytes[] value) => x.Disassembly = value, AlgoSdk.ArrayComparer.Instance, false).Assign("global-delta", null, (AlgoSdk.DryrunTxnResult x) => x.GlobalDelta, (ref AlgoSdk.DryrunTxnResult x, AlgoSdk.EvalDeltaKeyValue[] value) => x.GlobalDelta = value, AlgoSdk.ArrayComparer.Instance, false).Assign("local-deltas", null, (AlgoSdk.DryrunTxnResult x) => x.LocalDeltas, (ref AlgoSdk.DryrunTxnResult x, AlgoSdk.AccountStateDelta[] value) => x.LocalDeltas = value, AlgoSdk.ArrayComparer.Instance, false).Assign("logic-sig-messages", null, (AlgoSdk.DryrunTxnResult x) => x.LogicSigMessages, (ref AlgoSdk.DryrunTxnResult x, Unity.Collections.FixedString128Bytes[] value) => x.LogicSigMessages = value, AlgoSdk.ArrayComparer.Instance, false).Assign("logic-sig-trace", null, (AlgoSdk.DryrunTxnResult x) => x.LogicSigTrace, (ref AlgoSdk.DryrunTxnResult x, AlgoSdk.DryrunState[] value) => x.LogicSigTrace = value, AlgoSdk.ArrayComparer.Instance, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(Unity.Collections.FixedString128Bytes[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.DryrunState[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.AccountStateDelta[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.ErrorResponse), new AlgoSdk.AlgoApiObjectFormatter().Assign("data", "data", (AlgoSdk.ErrorResponse x) => x.Data, (ref AlgoSdk.ErrorResponse x, System.String value) => x.Data = value, false).Assign("message", "message", (AlgoSdk.ErrorResponse x) => x.Message, (ref AlgoSdk.ErrorResponse x, System.String value) => x.Message = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.EvalDelta), new AlgoSdk.AlgoApiObjectFormatter().Assign("action", "at", (AlgoSdk.EvalDelta x) => x.Action, (ref AlgoSdk.EvalDelta x, AlgoSdk.EvalDeltaAction value) => x.Action = value, AlgoSdk.EvalDeltaActionComparer.Instance, false).Assign("bytes", "bs", (AlgoSdk.EvalDelta x) => x.Bytes, (ref AlgoSdk.EvalDelta x, AlgoSdk.TealBytes value) => x.Bytes = value, false).Assign("uint", "ui", (AlgoSdk.EvalDelta x) => x.UInt, (ref AlgoSdk.EvalDelta x, System.UInt64 value) => x.UInt = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.EvalDeltaKeyValue), new AlgoSdk.AlgoApiObjectFormatter().Assign("key", "key", (AlgoSdk.EvalDeltaKeyValue x) => x.Key, (ref AlgoSdk.EvalDeltaKeyValue x, Unity.Collections.FixedString64Bytes value) => x.Key = value, false).Assign("value", "value", (AlgoSdk.EvalDeltaKeyValue x) => x.Value, (ref AlgoSdk.EvalDeltaKeyValue x, AlgoSdk.EvalDelta value) => x.Value = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.LedgerSupply), new AlgoSdk.AlgoApiObjectFormatter().Assign("current_round", null, (AlgoSdk.LedgerSupply x) => x.Round, (ref AlgoSdk.LedgerSupply x, System.UInt64 value) => x.Round = value, false).Assign("online-money", null, (AlgoSdk.LedgerSupply x) => x.OnlineMoney, (ref AlgoSdk.LedgerSupply x, System.UInt64 value) => x.OnlineMoney = value, false).Assign("total-money", null, (AlgoSdk.LedgerSupply x) => x.TotalMoney, (ref AlgoSdk.LedgerSupply x, System.UInt64 value) => x.TotalMoney = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.LogicSig), new AlgoSdk.AlgoApiObjectFormatter().Assign(null, "l", (AlgoSdk.LogicSig x) => x.Program, (ref AlgoSdk.LogicSig x, System.Byte[] value) => x.Program = value, AlgoSdk.ArrayComparer.Instance, false).Assign(null, "arg", (AlgoSdk.LogicSig x) => x.Args, (ref AlgoSdk.LogicSig x, Unity.Collections.FixedList128Bytes[] value) => x.Args = value, AlgoSdk.ArrayComparer>.Instance, false).Assign(null, "sig", (AlgoSdk.LogicSig x) => x.Sig, (ref AlgoSdk.LogicSig x, AlgoSdk.Sig value) => x.Sig = value, false).Assign(null, "msig", (AlgoSdk.LogicSig x) => x.MultiSig, (ref AlgoSdk.LogicSig x, AlgoSdk.MultiSig value) => x.MultiSig = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(Unity.Collections.FixedList128Bytes[]), new AlgoSdk.Formatters.ArrayFormatter>()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.MerkleProof), new AlgoSdk.AlgoApiObjectFormatter().Assign("idx", null, (AlgoSdk.MerkleProof x) => x.TransactionIndex, (ref AlgoSdk.MerkleProof x, System.UInt64 value) => x.TransactionIndex = value, false).Assign("proof", null, (AlgoSdk.MerkleProof x) => x.Proof, (ref AlgoSdk.MerkleProof x, System.String value) => x.Proof = value, false).Assign("stibhash", null, (AlgoSdk.MerkleProof x) => x.SignedTransactionHash, (ref AlgoSdk.MerkleProof x, System.String value) => x.SignedTransactionHash = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.MiniAssetHolding), new AlgoSdk.AlgoApiObjectFormatter().Assign("address", null, (AlgoSdk.MiniAssetHolding x) => x.Address, (ref AlgoSdk.MiniAssetHolding x, AlgoSdk.Address value) => x.Address = value, false).Assign("amount", null, (AlgoSdk.MiniAssetHolding x) => x.Amount, (ref AlgoSdk.MiniAssetHolding x, System.UInt64 value) => x.Amount = value, false).Assign("deleted", null, (AlgoSdk.MiniAssetHolding x) => x.Deleted, (ref AlgoSdk.MiniAssetHolding x, AlgoSdk.Optional value) => x.Deleted = value, false).Assign("is-frozen", null, (AlgoSdk.MiniAssetHolding x) => x.IsFrozen, (ref AlgoSdk.MiniAssetHolding x, AlgoSdk.Optional value) => x.IsFrozen = value, false).Assign("opted-in-at-round", null, (AlgoSdk.MiniAssetHolding x) => x.OptedInAtRound, (ref AlgoSdk.MiniAssetHolding x, AlgoSdk.Optional value) => x.OptedInAtRound = value, false).Assign("opted-out-at-round", null, (AlgoSdk.MiniAssetHolding x) => x.OptedOutAtRound, (ref AlgoSdk.MiniAssetHolding x, AlgoSdk.Optional value) => x.OptedOutAtRound = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Transaction.ApplicationCall.Params), new AlgoSdk.AlgoApiObjectFormatter().Assign("application-id", "apid", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.ApplicationId, (ref AlgoSdk.Transaction.ApplicationCall.Params x, System.UInt64 value) => x.ApplicationId = value, false).Assign("on-completion", "on-completion", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.OnComplete, (ref AlgoSdk.Transaction.ApplicationCall.Params x, System.UInt64 value) => x.OnComplete = value, false).Assign("accounts", "apat", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.Accounts, (ref AlgoSdk.Transaction.ApplicationCall.Params x, AlgoSdk.Address[] value) => x.Accounts = value, AlgoSdk.ArrayComparer.Instance, false).Assign("approval-program", "apap", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.ApprovalProgram, (ref AlgoSdk.Transaction.ApplicationCall.Params x, System.Byte[] value) => x.ApprovalProgram = value, AlgoSdk.ArrayComparer.Instance, false).Assign("application-args", "apaa", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.AppArguments, (ref AlgoSdk.Transaction.ApplicationCall.Params x, System.Byte[] value) => x.AppArguments = value, AlgoSdk.ArrayComparer.Instance, false).Assign("clear-state-program", "apsu", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.ClearStateProgram, (ref AlgoSdk.Transaction.ApplicationCall.Params x, System.Byte[] value) => x.ClearStateProgram = value, AlgoSdk.ArrayComparer.Instance, false).Assign("foreign-apps", "apfa", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.ForeignApps, (ref AlgoSdk.Transaction.ApplicationCall.Params x, AlgoSdk.Address[] value) => x.ForeignApps = value, AlgoSdk.ArrayComparer.Instance, false).Assign("foreign-assets", "apas", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.ForeignAssets, (ref AlgoSdk.Transaction.ApplicationCall.Params x, AlgoSdk.Address[] value) => x.ForeignAssets = value, AlgoSdk.ArrayComparer.Instance, false).Assign("global-state-schema", "global-state-schema", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.GlobalStateSchema, (ref AlgoSdk.Transaction.ApplicationCall.Params x, AlgoSdk.Optional value) => x.GlobalStateSchema = value, false).Assign("local-state-schema", "local-state-schema", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.LocalStateSchema, (ref AlgoSdk.Transaction.ApplicationCall.Params x, AlgoSdk.Optional value) => x.LocalStateSchema = value, false).Assign("extra-program-pages", "epp", (AlgoSdk.Transaction.ApplicationCall.Params x) => x.ExtraProgramPages, (ref AlgoSdk.Transaction.ApplicationCall.Params x, AlgoSdk.Optional value) => x.ExtraProgramPages = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Address[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Transaction.AssetConfiguration.Params), new AlgoSdk.AlgoApiObjectFormatter().Assign("asset-id", "xaid", (AlgoSdk.Transaction.AssetConfiguration.Params x) => x.ConfigAsset, (ref AlgoSdk.Transaction.AssetConfiguration.Params x, System.UInt64 value) => x.ConfigAsset = value, false).Assign("params", "params", (AlgoSdk.Transaction.AssetConfiguration.Params x) => x.AssetParams, (ref AlgoSdk.Transaction.AssetConfiguration.Params x, AlgoSdk.AssetParams value) => x.AssetParams = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Transaction.Payment.Params), new AlgoSdk.AlgoApiObjectFormatter().Assign("receiver", "rcv", (AlgoSdk.Transaction.Payment.Params x) => x.Receiver, (ref AlgoSdk.Transaction.Payment.Params x, AlgoSdk.Address value) => x.Receiver = value, false).Assign("amount", "amt", (AlgoSdk.Transaction.Payment.Params x) => x.Amount, (ref AlgoSdk.Transaction.Payment.Params x, System.UInt64 value) => x.Amount = value, false).Assign("close-remainder-to", "close", (AlgoSdk.Transaction.Payment.Params x) => x.CloseRemainderTo, (ref AlgoSdk.Transaction.Payment.Params x, AlgoSdk.Address value) => x.CloseRemainderTo = value, false).Assign("close-amount", "close-amount", (AlgoSdk.Transaction.Payment.Params x) => x.CloseAmount, (ref AlgoSdk.Transaction.Payment.Params x, AlgoSdk.Optional value) => x.CloseAmount = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.PendingTransaction), new AlgoSdk.AlgoApiObjectFormatter().Assign("application-index", null, (AlgoSdk.PendingTransaction x) => x.ApplicationIndex, (ref AlgoSdk.PendingTransaction x, System.UInt64 value) => x.ApplicationIndex = value, false).Assign("asset-closing-amount", null, (AlgoSdk.PendingTransaction x) => x.AssetClosingAmount, (ref AlgoSdk.PendingTransaction x, System.UInt64 value) => x.AssetClosingAmount = value, false).Assign("asset-index", null, (AlgoSdk.PendingTransaction x) => x.AssetIndex, (ref AlgoSdk.PendingTransaction x, System.UInt64 value) => x.AssetIndex = value, false).Assign("close-rewards", null, (AlgoSdk.PendingTransaction x) => x.CloseRewards, (ref AlgoSdk.PendingTransaction x, System.UInt64 value) => x.CloseRewards = value, false).Assign("closing-amount", null, (AlgoSdk.PendingTransaction x) => x.ClosingAmount, (ref AlgoSdk.PendingTransaction x, System.UInt64 value) => x.ClosingAmount = value, false).Assign("confirmed-round", null, (AlgoSdk.PendingTransaction x) => x.ConfirmedRound, (ref AlgoSdk.PendingTransaction x, System.UInt64 value) => x.ConfirmedRound = value, false).Assign("global-state-delta", null, (AlgoSdk.PendingTransaction x) => x.GlobalStateDelta, (ref AlgoSdk.PendingTransaction x, AlgoSdk.EvalDeltaKeyValue[] value) => x.GlobalStateDelta = value, AlgoSdk.ArrayComparer.Instance, false).Assign("local-state-delta", null, (AlgoSdk.PendingTransaction x) => x.LocalStateDelta, (ref AlgoSdk.PendingTransaction x, AlgoSdk.AccountStateDelta[] value) => x.LocalStateDelta = value, AlgoSdk.ArrayComparer.Instance, false).Assign("pool-error", null, (AlgoSdk.PendingTransaction x) => x.PoolError, (ref AlgoSdk.PendingTransaction x, Unity.Collections.FixedString128Bytes value) => x.PoolError = value, false).Assign("receiver-rewards", null, (AlgoSdk.PendingTransaction x) => x.ReceiverRewards, (ref AlgoSdk.PendingTransaction x, System.UInt64 value) => x.ReceiverRewards = value, false).Assign("sender-rewards", null, (AlgoSdk.PendingTransaction x) => x.SenderRewards, (ref AlgoSdk.PendingTransaction x, System.UInt64 value) => x.SenderRewards = value, false).Assign("txn", null, (AlgoSdk.PendingTransaction x) => x.Transaction, (ref AlgoSdk.PendingTransaction x, AlgoSdk.SignedTransaction value) => x.Transaction = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.PendingTransactions), new AlgoSdk.AlgoApiObjectFormatter().Assign("top-transactions", null, (AlgoSdk.PendingTransactions x) => x.TopTransactions, (ref AlgoSdk.PendingTransactions x, AlgoSdk.PendingTransaction[] value) => x.TopTransactions = value, AlgoSdk.ArrayComparer.Instance, false).Assign("total-transactions", null, (AlgoSdk.PendingTransactions x) => x.TotalTransactions, (ref AlgoSdk.PendingTransactions x, System.UInt64 value) => x.TotalTransactions = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.PendingTransaction[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.SignedTransaction), new AlgoSdk.AlgoApiObjectFormatter().Assign("sig", "sig", (AlgoSdk.SignedTransaction x) => x.Sig, (ref AlgoSdk.SignedTransaction x, AlgoSdk.Sig value) => x.Sig = value, false).Assign("msig", "msig", (AlgoSdk.SignedTransaction x) => x.MultiSig, (ref AlgoSdk.SignedTransaction x, AlgoSdk.MultiSig value) => x.MultiSig = value, false).Assign("lsig", "lsig", (AlgoSdk.SignedTransaction x) => x.LogicSig, (ref AlgoSdk.SignedTransaction x, AlgoSdk.LogicSig value) => x.LogicSig = value, false).Assign("txn", "txn", (AlgoSdk.SignedTransaction x) => x.Transaction, (ref AlgoSdk.SignedTransaction x, AlgoSdk.Transaction value) => x.Transaction = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.StateSchema), new AlgoSdk.AlgoApiObjectFormatter().Assign("num-byte-slice", "nbs", (AlgoSdk.StateSchema x) => x.NumByteSlices, (ref AlgoSdk.StateSchema x, System.UInt64 value) => x.NumByteSlices = value, false).Assign("num-uint", "nui", (AlgoSdk.StateSchema x) => x.NumUints, (ref AlgoSdk.StateSchema x, System.UInt64 value) => x.NumUints = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Status), new AlgoSdk.AlgoApiObjectFormatter().Assign("catchpoint", null, (AlgoSdk.Status x) => x.Catchpoint, (ref AlgoSdk.Status x, System.String value) => x.Catchpoint = value, false).Assign("catchpoint-acquired-blocks", null, (AlgoSdk.Status x) => x.CatchpointAcquiredBlocks, (ref AlgoSdk.Status x, System.UInt64 value) => x.CatchpointAcquiredBlocks = value, false).Assign("catchpoint-processed-accounts", null, (AlgoSdk.Status x) => x.CatchpointProcessedAmounts, (ref AlgoSdk.Status x, System.UInt64 value) => x.CatchpointProcessedAmounts = value, false).Assign("catchpoint-total-accounts", null, (AlgoSdk.Status x) => x.CatchpointTotalAccounts, (ref AlgoSdk.Status x, System.UInt64 value) => x.CatchpointTotalAccounts = value, false).Assign("catchpoint-total-blocks", null, (AlgoSdk.Status x) => x.CatchpointTotalBlocks, (ref AlgoSdk.Status x, System.UInt64 value) => x.CatchpointTotalBlocks = value, false).Assign("catchpoint-verified-accounts", null, (AlgoSdk.Status x) => x.CatchpointVerifiedAccounts, (ref AlgoSdk.Status x, System.UInt64 value) => x.CatchpointVerifiedAccounts = value, false).Assign("catchup-time", null, (AlgoSdk.Status x) => x.CatchupTime, (ref AlgoSdk.Status x, System.UInt64 value) => x.CatchupTime = value, false).Assign("last-catchpoint", null, (AlgoSdk.Status x) => x.LastCatchpoint, (ref AlgoSdk.Status x, System.String value) => x.LastCatchpoint = value, false).Assign("last-round", null, (AlgoSdk.Status x) => x.LastRound, (ref AlgoSdk.Status x, System.UInt64 value) => x.LastRound = value, false).Assign("last-version", null, (AlgoSdk.Status x) => x.LastVersion, (ref AlgoSdk.Status x, System.String value) => x.LastVersion = value, false).Assign("next-version", null, (AlgoSdk.Status x) => x.NextVersion, (ref AlgoSdk.Status x, System.String value) => x.NextVersion = value, false).Assign("next-version-round", null, (AlgoSdk.Status x) => x.NextVersionRound, (ref AlgoSdk.Status x, System.UInt64 value) => x.NextVersionRound = value, false).Assign("next-version-supported", null, (AlgoSdk.Status x) => x.NextVersionSupported, (ref AlgoSdk.Status x, System.Boolean value) => x.NextVersionSupported = value, false).Assign("stopped-at-unsupported-round", null, (AlgoSdk.Status x) => x.StoppedAtUnsupportedRound, (ref AlgoSdk.Status x, System.Boolean value) => x.StoppedAtUnsupportedRound = value, false).Assign("time-since-last-round", null, (AlgoSdk.Status x) => x.TimeSinceLastRound, (ref AlgoSdk.Status x, System.UInt64 value) => x.TimeSinceLastRound = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TealCompilationResult), new AlgoSdk.AlgoApiObjectFormatter().Assign("hash", null, (AlgoSdk.TealCompilationResult x) => x.Hash, (ref AlgoSdk.TealCompilationResult x, AlgoSdk.Crypto.Sha512_256_Hash value) => x.Hash = value, false).Assign("result", null, (AlgoSdk.TealCompilationResult x) => x.BytesBase64, (ref AlgoSdk.TealCompilationResult x, System.String value) => x.BytesBase64 = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TealKeyValue), new AlgoSdk.AlgoApiObjectFormatter().Assign("key", "key", (AlgoSdk.TealKeyValue x) => x.Key, (ref AlgoSdk.TealKeyValue x, Unity.Collections.FixedString128Bytes value) => x.Key = value, false).Assign("value", "value", (AlgoSdk.TealKeyValue x) => x.Value, (ref AlgoSdk.TealKeyValue x, AlgoSdk.TealValue value) => x.Value = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Transaction), new AlgoSdk.AlgoApiObjectFormatter().Assign(null, "apid", (AlgoSdk.Transaction x) => x.ApplicationId, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.ApplicationId = value, false).Assign(null, "apan", (AlgoSdk.Transaction x) => x.OnComplete, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.OnComplete = value, false).Assign(null, "apat", (AlgoSdk.Transaction x) => x.Accounts, (ref AlgoSdk.Transaction x, AlgoSdk.Address[] value) => x.Accounts = value, AlgoSdk.ArrayComparer.Instance, false).Assign(null, "apap", (AlgoSdk.Transaction x) => x.ApprovalProgram, (ref AlgoSdk.Transaction x, System.Byte[] value) => x.ApprovalProgram = value, AlgoSdk.ArrayComparer.Instance, false).Assign(null, "apaa", (AlgoSdk.Transaction x) => x.AppArguments, (ref AlgoSdk.Transaction x, System.Byte[] value) => x.AppArguments = value, AlgoSdk.ArrayComparer.Instance, false).Assign(null, "apsu", (AlgoSdk.Transaction x) => x.ClearStateProgram, (ref AlgoSdk.Transaction x, System.Byte[] value) => x.ClearStateProgram = value, AlgoSdk.ArrayComparer.Instance, false).Assign(null, "apfa", (AlgoSdk.Transaction x) => x.ForeignApps, (ref AlgoSdk.Transaction x, AlgoSdk.Address[] value) => x.ForeignApps = value, AlgoSdk.ArrayComparer.Instance, false).Assign(null, "apas", (AlgoSdk.Transaction x) => x.ForeignAssets, (ref AlgoSdk.Transaction x, AlgoSdk.Address[] value) => x.ForeignAssets = value, AlgoSdk.ArrayComparer.Instance, false).Assign(null, "apgs", (AlgoSdk.Transaction x) => x.GlobalStateSchema, (ref AlgoSdk.Transaction x, AlgoSdk.Optional value) => x.GlobalStateSchema = value, false).Assign(null, "apls", (AlgoSdk.Transaction x) => x.LocalStateSchema, (ref AlgoSdk.Transaction x, AlgoSdk.Optional value) => x.LocalStateSchema = value, false).Assign(null, "apep", (AlgoSdk.Transaction x) => x.ExtraProgramPages, (ref AlgoSdk.Transaction x, AlgoSdk.Optional value) => x.ExtraProgramPages = value, false).Assign(null, "caid", (AlgoSdk.Transaction x) => x.ConfigAsset, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.ConfigAsset = value, false).Assign(null, "apar", (AlgoSdk.Transaction x) => x.AssetParams, (ref AlgoSdk.Transaction x, AlgoSdk.AssetParams value) => x.AssetParams = value, false).Assign(null, "fadd", (AlgoSdk.Transaction x) => x.FreezeAccount, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.FreezeAccount = value, false).Assign(null, "faid", (AlgoSdk.Transaction x) => x.FreezeAsset, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.FreezeAsset = value, false).Assign(null, "afrz", (AlgoSdk.Transaction x) => x.AssetFrozen, (ref AlgoSdk.Transaction x, AlgoSdk.Optional value) => x.AssetFrozen = value, false).Assign(null, "xaid", (AlgoSdk.Transaction x) => x.XferAsset, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.XferAsset = value, false).Assign(null, "aamt", (AlgoSdk.Transaction x) => x.AssetAmount, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.AssetAmount = value, false).Assign(null, "asnd", (AlgoSdk.Transaction x) => x.AssetSender, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.AssetSender = value, false).Assign(null, "arcv", (AlgoSdk.Transaction x) => x.AssetReceiver, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.AssetReceiver = value, false).Assign(null, "aclose", (AlgoSdk.Transaction x) => x.AssetCloseTo, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.AssetCloseTo = value, false).Assign("fee", "fee", (AlgoSdk.Transaction x) => x.Fee, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.Fee = value, false).Assign("first-valid", "fv", (AlgoSdk.Transaction x) => x.FirstValidRound, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.FirstValidRound = value, false).Assign("genesis-hash", "gh", (AlgoSdk.Transaction x) => x.GenesisHash, (ref AlgoSdk.Transaction x, AlgoSdk.GenesisHash value) => x.GenesisHash = value, false).Assign("last-valid", "lv", (AlgoSdk.Transaction x) => x.LastValidRound, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.LastValidRound = value, false).Assign("sender", "snd", (AlgoSdk.Transaction x) => x.Sender, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.Sender = value, false).Assign("tx-type", "type", (AlgoSdk.Transaction x) => x.TransactionType, (ref AlgoSdk.Transaction x, AlgoSdk.TransactionType value) => x.TransactionType = value, AlgoSdk.TransactionTypeComparer.Instance, false).Assign("genesis-id", "gen", (AlgoSdk.Transaction x) => x.GenesisId, (ref AlgoSdk.Transaction x, Unity.Collections.FixedString32Bytes value) => x.GenesisId = value, false).Assign("group", "grp", (AlgoSdk.Transaction x) => x.Group, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.Group = value, false).Assign("lease", "lx", (AlgoSdk.Transaction x) => x.Lease, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.Lease = value, false).Assign("note", "note", (AlgoSdk.Transaction x) => x.Note, (ref AlgoSdk.Transaction x, System.Byte[] value) => x.Note = value, AlgoSdk.ArrayComparer.Instance, false).Assign("rekey-to", "rekey", (AlgoSdk.Transaction x) => x.RekeyTo, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.RekeyTo = value, false).Assign("id", "id", (AlgoSdk.Transaction x) => x.Id, (ref AlgoSdk.Transaction x, AlgoSdk.TransactionId value) => x.Id = value, false).Assign("auth-addr", "sgnr", (AlgoSdk.Transaction x) => x.AuthAddress, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.AuthAddress = value, false).Assign("close-rewards", "rc", (AlgoSdk.Transaction x) => x.CloseRewards, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.CloseRewards = value, false).Assign("closing-amount", "ca", (AlgoSdk.Transaction x) => x.ClosingAmount, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.ClosingAmount = value, false).Assign("confirmed-round", null, (AlgoSdk.Transaction x) => x.ConfirmedRound, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.ConfirmedRound = value, false).Assign("created-application-index", null, (AlgoSdk.Transaction x) => x.CreatedApplicationIndex, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.CreatedApplicationIndex = value, false).Assign("created-asset-index", null, (AlgoSdk.Transaction x) => x.CreatedAssetIndex, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.CreatedAssetIndex = value, false).Assign("intra-round-offset", null, (AlgoSdk.Transaction x) => x.IntraRoundOffset, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.IntraRoundOffset = value, false).Assign("global-state-delta", "gd", (AlgoSdk.Transaction x) => x.GlobalStateDelta, (ref AlgoSdk.Transaction x, AlgoSdk.EvalDeltaKeyValue[] value) => x.GlobalStateDelta = value, AlgoSdk.ArrayComparer.Instance, false).Assign("local-state-delta", "ld", (AlgoSdk.Transaction x) => x.LocalStateDelta, (ref AlgoSdk.Transaction x, AlgoSdk.AccountStateDelta[] value) => x.LocalStateDelta = value, AlgoSdk.ArrayComparer.Instance, false).Assign("receiver-rewards", "rr", (AlgoSdk.Transaction x) => x.ReceiverRewards, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.ReceiverRewards = value, false).Assign("round-time", null, (AlgoSdk.Transaction x) => x.RoundTime, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.RoundTime = value, false).Assign("sender-rewards", "rs", (AlgoSdk.Transaction x) => x.SenderRewards, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.SenderRewards = value, false).Assign("on-completion", "apan", (AlgoSdk.Transaction x) => x.OnCompletion, (ref AlgoSdk.Transaction x, AlgoSdk.OnCompletion value) => x.OnCompletion = value, AlgoSdk.OnCompletionComparer.Instance, false).Assign(null, "votekey", (AlgoSdk.Transaction x) => x.VotePk, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.VotePk = value, false).Assign(null, "selkey", (AlgoSdk.Transaction x) => x.SelectionPk, (ref AlgoSdk.Transaction x, AlgoSdk.VrfPubkey value) => x.SelectionPk = value, false).Assign(null, "votefst", (AlgoSdk.Transaction x) => x.VoteFirst, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.VoteFirst = value, false).Assign(null, "votelst", (AlgoSdk.Transaction x) => x.VoteLast, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.VoteLast = value, false).Assign(null, "votekd", (AlgoSdk.Transaction x) => x.VoteKeyDilution, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.VoteKeyDilution = value, false).Assign(null, "nonpart", (AlgoSdk.Transaction x) => x.NonParticipation, (ref AlgoSdk.Transaction x, AlgoSdk.Optional value) => x.NonParticipation = value, false).Assign(null, "rcv", (AlgoSdk.Transaction x) => x.Receiver, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.Receiver = value, false).Assign(null, "amt", (AlgoSdk.Transaction x) => x.Amount, (ref AlgoSdk.Transaction x, System.UInt64 value) => x.Amount = value, false).Assign(null, "close", (AlgoSdk.Transaction x) => x.CloseRemainderTo, (ref AlgoSdk.Transaction x, AlgoSdk.Address value) => x.CloseRemainderTo = value, false).Assign("payment-transaction", null, (AlgoSdk.Transaction x) => x.PaymentParams, (ref AlgoSdk.Transaction x, AlgoSdk.Transaction.Payment.Params value) => x.PaymentParams = value, false).Assign("asset-config-transaction", null, (AlgoSdk.Transaction x) => x.AssetConfigurationParams, (ref AlgoSdk.Transaction x, AlgoSdk.Transaction.AssetConfiguration.Params value) => x.AssetConfigurationParams = value, false).Assign("asset-transfer-transaction", null, (AlgoSdk.Transaction x) => x.AssetTransferParams, (ref AlgoSdk.Transaction x, AlgoSdk.Transaction.AssetTransfer.Params value) => x.AssetTransferParams = value, false).Assign("asset-freeze-transaction", null, (AlgoSdk.Transaction x) => x.AssetFreezeParams, (ref AlgoSdk.Transaction x, AlgoSdk.Transaction.AssetFreeze.Params value) => x.AssetFreezeParams = value, false).Assign("application-transaction", null, (AlgoSdk.Transaction x) => x.ApplicationCallParams, (ref AlgoSdk.Transaction x, AlgoSdk.Transaction.ApplicationCall.Params value) => x.ApplicationCallParams = value, false).Assign("keyreg-transaction", null, (AlgoSdk.Transaction x) => x.KeyRegistrationParams, (ref AlgoSdk.Transaction x, AlgoSdk.Transaction.KeyRegistration.Params value) => x.KeyRegistrationParams = value, false).Assign("signature", null, (AlgoSdk.Transaction x) => x.Signature, (ref AlgoSdk.Transaction x, AlgoSdk.TransactionSignature value) => x.Signature = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TransactionParams), new AlgoSdk.AlgoApiObjectFormatter().Assign("consensus-version", null, (AlgoSdk.TransactionParams x) => x.ConsensusVersion, (ref AlgoSdk.TransactionParams x, Unity.Collections.FixedString128Bytes value) => x.ConsensusVersion = value, false).Assign("fee", null, (AlgoSdk.TransactionParams x) => x.Fee, (ref AlgoSdk.TransactionParams x, System.UInt64 value) => x.Fee = value, false).Assign("genesis-hash", null, (AlgoSdk.TransactionParams x) => x.GenesisHash, (ref AlgoSdk.TransactionParams x, AlgoSdk.GenesisHash value) => x.GenesisHash = value, false).Assign("genesis-id", null, (AlgoSdk.TransactionParams x) => x.GenesisId, (ref AlgoSdk.TransactionParams x, Unity.Collections.FixedString32Bytes value) => x.GenesisId = value, false).Assign("last-round", null, (AlgoSdk.TransactionParams x) => x.LastRound, (ref AlgoSdk.TransactionParams x, System.UInt64 value) => x.LastRound = value, false).Assign("min-fee", null, (AlgoSdk.TransactionParams x) => x.MinFee, (ref AlgoSdk.TransactionParams x, System.UInt64 value) => x.MinFee = value, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Version), new AlgoSdk.AlgoApiObjectFormatter().Assign("build", null, (AlgoSdk.Version x) => x.Build, (ref AlgoSdk.Version x, AlgoSdk.BuildVersion value) => x.Build = value, false).Assign("genesis_hash_b64", null, (AlgoSdk.Version x) => x.GenesisHashBase64, (ref AlgoSdk.Version x, Unity.Collections.FixedString64Bytes value) => x.GenesisHashBase64 = value, false).Assign("genesis_id", null, (AlgoSdk.Version x) => x.GenesisId, (ref AlgoSdk.Version x, Unity.Collections.FixedString32Bytes value) => x.GenesisId = value, false).Assign("versions", null, (AlgoSdk.Version x) => x.Versions, (ref AlgoSdk.Version x, Unity.Collections.FixedString32Bytes[] value) => x.Versions = value, AlgoSdk.ArrayComparer.Instance, false)); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(Unity.Collections.FixedString32Bytes[]), new AlgoSdk.Formatters.ArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Address), new AlgoSdk.Formatters.AddressFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.AlgoApiObject), new AlgoSdk.AlgoApiObjectFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.EvalDeltaAction), new AlgoSdk.Formatters.EnumFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.GenesisHash), new AlgoSdk.Formatters.GenesisHashFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.OnCompletion), new AlgoSdk.Formatters.OnCompletionFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Optional), new AlgoSdk.Formatters.OptionalFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Optional), new AlgoSdk.Formatters.OptionalFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Optional), new AlgoSdk.Formatters.OptionalFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Optional), new AlgoSdk.Formatters.OptionalFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Optional), new AlgoSdk.Formatters.OptionalFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.Sig), new AlgoSdk.Formatters.ByteArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.SignatureType), new AlgoSdk.Formatters.EnumFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TealBytes), new AlgoSdk.Formatters.ByteArrayFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TealValue), new AlgoSdk.MsgPack.Formatters.TealValueFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TealValueType), new AlgoSdk.Formatters.EnumFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TransactionId), new AlgoSdk.Formatters.TransactionIdFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.TransactionType), new AlgoSdk.Formatters.TransactionTypeFormatter()); + AlgoSdk.AlgoApiFormatterLookup.AddFormatter(typeof(AlgoSdk.VrfPubkey), new AlgoSdk.Formatters.ByteArrayFormatter()); } } } diff --git a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk/AlgoApi/Models/Transaction/Signature/LogicSig.cs b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk/AlgoApi/Models/Transaction/Signature/LogicSig.cs index e777e4e94..2d65e8c1c 100644 --- a/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk/AlgoApi/Models/Transaction/Signature/LogicSig.cs +++ b/Packages/com.careboo.unity-algorand-sdk/CareBoo.AlgoSdk/AlgoApi/Models/Transaction/Signature/LogicSig.cs @@ -10,16 +10,16 @@ public struct LogicSig : ISignature , IEquatable { - [AlgoApiField(null, "l")] + [AlgoApiField("logicsig", "l")] public byte[] Program; - [AlgoApiField(null, "arg")] + [AlgoApiField("args", "arg")] public FixedList128Bytes[] Args; - [AlgoApiField(null, "sig")] + [AlgoApiField("signature", "sig")] public Sig Sig; - [AlgoApiField(null, "msig")] + [AlgoApiField("multisig-signature", "msig")] public MultiSig MultiSig; public bool Equals(LogicSig other) @@ -33,7 +33,6 @@ public bool Equals(LogicSig other) public bool IsValid(Address sender) { - using var programByteArray = new NativeByteArray(Program, Allocator.Temp); return Sig.Verify(programByteArray, sender) || MultiSig.Verify(programByteArray, sender)