diff --git a/src/Solnet.Examples/TokenSwapExample.cs b/src/Solnet.Examples/TokenSwapExample.cs
index 65c2ade4..f506a9c6 100644
--- a/src/Solnet.Examples/TokenSwapExample.cs
+++ b/src/Solnet.Examples/TokenSwapExample.cs
@@ -213,8 +213,8 @@ public void Run()
.AddInstruction(SystemProgram.CreateAccount(
wallet.Account,
swap,
- RpcClient.GetMinimumBalanceForRentExemption((long)TokenSwapProgram.TokenSwapAccountDataSize).Result,
- TokenSwapProgram.TokenSwapAccountDataSize,
+ RpcClient.GetMinimumBalanceForRentExemption((long)TokenSwapProgram.TokenSwapDataLength).Result,
+ TokenSwapProgram.TokenSwapDataLength,
program.ProgramIdKey
))
.AddInstruction(program.Initialize(
diff --git a/src/Solnet.Programs/TokenSwap/TokenSwapProgram.cs b/src/Solnet.Programs/TokenSwap/TokenSwapProgram.cs
index b5a8ff3c..ddf2fef0 100644
--- a/src/Solnet.Programs/TokenSwap/TokenSwapProgram.cs
+++ b/src/Solnet.Programs/TokenSwap/TokenSwapProgram.cs
@@ -41,7 +41,12 @@ public class TokenSwapProgram : BaseProgram
/// Token Swap account layout size.
///
public static readonly ulong TokenSwapAccountDataSize = 323;
-
+
+ ///
+ /// Token Swap data length. // 1 (for the SwapVersion enum) + 323 (TokenSwapAccountDataSize)
+ ///
+ public static readonly ulong TokenSwapDataLength = 1 + TokenSwapAccountDataSize;
+
///
/// Create a token swap program instance with the standard programid and program name
///
diff --git a/src/Solnet.Programs/TokenSwap/TokenSwapProgramData.cs b/src/Solnet.Programs/TokenSwap/TokenSwapProgramData.cs
index 1ee258ee..2fa9df36 100644
--- a/src/Solnet.Programs/TokenSwap/TokenSwapProgramData.cs
+++ b/src/Solnet.Programs/TokenSwap/TokenSwapProgramData.cs
@@ -148,7 +148,7 @@ internal static void DecodeInitializeData(DecodedInstruction decodedInstruction,
decodedInstruction.Values.Add("Owner Withraw Fee Denominator", data.GetU64(42));
decodedInstruction.Values.Add("Host Fee Numerator", data.GetU64(50));
decodedInstruction.Values.Add("Host Fee Denominator", data.GetU64(58));
- decodedInstruction.Values.Add("Curve Type", data.GetU64(59));
+ decodedInstruction.Values.Add("Curve Type", data.GetU8(66));
//nothing to show for calculator unless hardcoding the switch stmt
}