T5 state diff at 8813651 #1548

Closed
opened 2025-12-28 17:16:48 +00:00 by sami · 5 comments
Owner

Originally created by @AnnaShaleva on GitHub (Aug 25, 2025).

Originally assigned to: @AnnaShaleva on GitHub.

anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ go run ./scripts/compare-states/compare-states.go --ignore-height http://seed1t5.neo.org:20332 https://rpc.t5.n3.nspcc.ru:20331
at 0: 62fd8ff9b0543aea352257db5b00bbb01d1bc0d2cc665e1f24cf5de0d16ebc7b vs 62fd8ff9b0543aea352257db5b00bbb01d1bc0d2cc665e1f24cf5de0d16ebc7b
at 8897036: 3d877737d4541b66f007e30eceb5449a358953f75f92fc9a52317e26f88fad3c vs 12d8d2646df684888f35afabecd28863df18da9df3a14b9fd0d5772375aa21c7
at 4448518: 303abb76960f70d07b98c5b96df904b63dc05a8c80f4fd70dc8b8e569ba4c99e vs 303abb76960f70d07b98c5b96df904b63dc05a8c80f4fd70dc8b8e569ba4c99e
at 6672777: 5e27b97865697a5d099c6b95ac6b219cad92a696129ac1dbd1d868eee1a8f456 vs 5e27b97865697a5d099c6b95ac6b219cad92a696129ac1dbd1d868eee1a8f456
at 7784906: e804ca6e8d71b967ab1235ebda5e81bfeca254bd46310e33e52bb188eb3b973f vs e804ca6e8d71b967ab1235ebda5e81bfeca254bd46310e33e52bb188eb3b973f
at 8340971: 3a8dc7b77842ff7e524320e52c300e9fc6147362e146a6489ccf7a825316dd2a vs 3a8dc7b77842ff7e524320e52c300e9fc6147362e146a6489ccf7a825316dd2a
at 8619003: de9f010e5a18739ed53e457ac11543e4aa4a1ec9b454a52cb933f924974e9ce1 vs de9f010e5a18739ed53e457ac11543e4aa4a1ec9b454a52cb933f924974e9ce1
at 8758019: 8e39dc2480ea4104c47714cc2d4434120331d81cf5fbfc0e27d4e9f240c72047 vs 8e39dc2480ea4104c47714cc2d4434120331d81cf5fbfc0e27d4e9f240c72047
at 8827527: 2ebf7aca2674264ba86332a133fca795d17d4dc296239018fd9c6555d5e2c7df vs 584140b1bbcfcbf5797d1e3a6d231f5cde5808f4c459b921d51e96cd19d69420
at 8792773: 9c19d8f02eb22d8de7ef2422788ab903dedb512f06bf61726878c1ebc999e3c8 vs 9c19d8f02eb22d8de7ef2422788ab903dedb512f06bf61726878c1ebc999e3c8
at 8810150: f56b195371bd8bd8f70e3aa6935e5fb38266c0d09b024ce2094c24b216adcd79 vs f56b195371bd8bd8f70e3aa6935e5fb38266c0d09b024ce2094c24b216adcd79
at 8818838: cfbc3349546c21c4ad5b6dbb5b88737b0ae02040a6fec8f2ce7e146e7a58a269 vs e3281dd9f8064fd41db3d6a00d23693df1109de935fedbdfcd51c188dd0ea516
at 8814494: 53e517d06f31edfbd58194af015a312e3238160c5f61f1318dfddc99a7e4165c vs ed3dedcca380c2bdae5c45bc088f2bfc1d3ec6c0b8d4a41b01b3dea8b7f77051
at 8812322: f687b95d7bd757ecf4bee49486478f59bd0b1f0d6a56d209155f8e0df76dfc0a vs f687b95d7bd757ecf4bee49486478f59bd0b1f0d6a56d209155f8e0df76dfc0a
at 8813408: 1c41b261616fc09f01e2b9e35002de8eef15a7f4ef79706559a4e32288ea0df1 vs 1c41b261616fc09f01e2b9e35002de8eef15a7f4ef79706559a4e32288ea0df1
at 8813951: cd1045ef82b7d12a7fa4172ce5ab786107d69a1c49872e7e11fadcaea79cbc7e vs 5d00a08a4602bb36998ccc6a3e4634b7426d494fbc6ddf5c89ac8c837ff5cf0c
at 8813679: 2e03107373f1662b21069758e82614a613ad9cca8498c7e669874da5ce39a859 vs 6e6eadeefa1ea19eeb328f1420725e1655116520a83a3a6b3bf9c738c8cc3a1f
at 8813543: 214cfeeae6df2842c0a03314ca09119f4fa959fb5b4ae220ba9ef7b45d066bb3 vs 214cfeeae6df2842c0a03314ca09119f4fa959fb5b4ae220ba9ef7b45d066bb3
at 8813611: 7b2b905b1f213f3ccbcdd32bc7865d167b317ad4be8762854fc15929cb172fff vs 7b2b905b1f213f3ccbcdd32bc7865d167b317ad4be8762854fc15929cb172fff
at 8813645: 836340b006f9fb3249d9dca20d164f4576bcce402c1db1e82af4481af94f8e8f vs 836340b006f9fb3249d9dca20d164f4576bcce402c1db1e82af4481af94f8e8f
at 8813662: 2865f706ffd87656a9a81b6f41139536ffa6a9b535052ee83991ea2e6fd44b0c vs 1d4a7a0a2159b2cc6d833b4600a39f8366c224e19cb04c1f95f07ec37b583ca8
at 8813653: 22def6d549e2a8fb5714aa2dd1ef027c45fb423ce4ba17f2ed177ab8580ddffd vs da68937b1569742c384f908b7c5fc5e73ec326bf8b3b6b96620724dca2f95be6
at 8813649: f11b4e28305852f02d6f6d3f12302a13f972325b1677886d21bd0b5952e45e6b vs f11b4e28305852f02d6f6d3f12302a13f972325b1677886d21bd0b5952e45e6b
at 8813651: 904ffcb06dedff4ee7d06fe6db6ef346cecbc81453766bac33f5370028b27e19 vs dfc136e66bc0766e5e95cbe9dbeaa625ea532b93031c73ecd9d77175da10f0be
at 8813650: 55ef967186aaa9777847d5e744f55225458bd4fd4e692dbe7d775057cf3d48c4 vs 55ef967186aaa9777847d5e744f55225458bd4fd4e692dbe7d775057cf3d48c4
state differs at 8813651, block 657bb423ba23c45e045211a965c903cbf4f75317a63b161d46debdcdf8d8aea1
block 657bb423ba23c45e045211a965c903cbf4f75317a63b161d46debdcdf8d8aea1:
--- http://seed1t5.neo.org:20332
+++ https://rpc.t5.n3.nspcc.ru:20331
@@ -1,2 +1,2 @@
-(*result.ApplicationLog)(0xc00014e2c0)({
+(*result.ApplicationLog)(0xc0005a4340)({
  Container: (util.Uint256) (len=32 cap=32) a1aed8f8cdbdde461d163ba61753f7f4cb03c965a91152045ec423ba23b47b65,
@@ -14,3 +14,3 @@
      Name: (string) (len=8) "Transfer",
-     Item: (*stackitem.Array)(0xc0001469f0)(Array)
+     Item: (*stackitem.Array)(0xc000590570)(Array)
     },
@@ -19,3 +19,3 @@
      Name: (string) (len=8) "Transfer",
-     Item: (*stackitem.Array)(0xc000146c30)(Array)
+     Item: (*stackitem.Array)(0xc0005907b0)(Array)
     }
@@ -35,3 +35,3 @@
      Name: (string) (len=8) "Transfer",
-     Item: (*stackitem.Array)(0xc000146ed0)(Array)
+     Item: (*stackitem.Array)(0xc000590a50)(Array)
     }

transaction 58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f:
--- http://seed1t5.neo.org:20332
+++ https://rpc.t5.n3.nspcc.ru:20331
@@ -1,2 +1,2 @@
-(*result.ApplicationLog)(0xc00014e500)({
+(*result.ApplicationLog)(0xc0005a4440)({
  Container: (util.Uint256) (len=32 cap=32) 4f1fd785da23831a2c10f9f1b07e355394ff3fc89269bad684a5c64c633a5258,
@@ -6,9 +6,15 @@
    Trigger: (trigger.Type) Application,
-   VMState: (vmstate.State) FAULT,
-   GasConsumed: (int64) 359098,
-   Stack: ([]stackitem.Item) {
+   VMState: (vmstate.State) HALT,
+   GasConsumed: (int64) 20497873,
+   Stack: ([]stackitem.Item) (len=1 cap=1) {
+    (stackitem.Null) Null
    },
-   Events: ([]state.NotificationEvent) {
+   Events: ([]state.NotificationEvent) (len=1 cap=1) {
+    (state.NotificationEvent) {
+     ScriptHash: (util.Uint160) (len=20 cap=20) fda3fa4346ea532a258fc497ddaddb6437c9fdff,
+     Name: (string) (len=6) "Update",
+     Item: (*stackitem.Array)(0xc00023e090)(Array)
+    }
    },
-   FaultException: (string) (len=79) "Unable to translate bytes [B2] at index 36 from specified code page to Unicode.",
+   FaultException: (string) "",
    Invocations: ([]state.ContractInvocation) <nil>

different state found
exit status 1
Originally created by @AnnaShaleva on GitHub (Aug 25, 2025). Originally assigned to: @AnnaShaleva on GitHub. ``` anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ go run ./scripts/compare-states/compare-states.go --ignore-height http://seed1t5.neo.org:20332 https://rpc.t5.n3.nspcc.ru:20331 at 0: 62fd8ff9b0543aea352257db5b00bbb01d1bc0d2cc665e1f24cf5de0d16ebc7b vs 62fd8ff9b0543aea352257db5b00bbb01d1bc0d2cc665e1f24cf5de0d16ebc7b at 8897036: 3d877737d4541b66f007e30eceb5449a358953f75f92fc9a52317e26f88fad3c vs 12d8d2646df684888f35afabecd28863df18da9df3a14b9fd0d5772375aa21c7 at 4448518: 303abb76960f70d07b98c5b96df904b63dc05a8c80f4fd70dc8b8e569ba4c99e vs 303abb76960f70d07b98c5b96df904b63dc05a8c80f4fd70dc8b8e569ba4c99e at 6672777: 5e27b97865697a5d099c6b95ac6b219cad92a696129ac1dbd1d868eee1a8f456 vs 5e27b97865697a5d099c6b95ac6b219cad92a696129ac1dbd1d868eee1a8f456 at 7784906: e804ca6e8d71b967ab1235ebda5e81bfeca254bd46310e33e52bb188eb3b973f vs e804ca6e8d71b967ab1235ebda5e81bfeca254bd46310e33e52bb188eb3b973f at 8340971: 3a8dc7b77842ff7e524320e52c300e9fc6147362e146a6489ccf7a825316dd2a vs 3a8dc7b77842ff7e524320e52c300e9fc6147362e146a6489ccf7a825316dd2a at 8619003: de9f010e5a18739ed53e457ac11543e4aa4a1ec9b454a52cb933f924974e9ce1 vs de9f010e5a18739ed53e457ac11543e4aa4a1ec9b454a52cb933f924974e9ce1 at 8758019: 8e39dc2480ea4104c47714cc2d4434120331d81cf5fbfc0e27d4e9f240c72047 vs 8e39dc2480ea4104c47714cc2d4434120331d81cf5fbfc0e27d4e9f240c72047 at 8827527: 2ebf7aca2674264ba86332a133fca795d17d4dc296239018fd9c6555d5e2c7df vs 584140b1bbcfcbf5797d1e3a6d231f5cde5808f4c459b921d51e96cd19d69420 at 8792773: 9c19d8f02eb22d8de7ef2422788ab903dedb512f06bf61726878c1ebc999e3c8 vs 9c19d8f02eb22d8de7ef2422788ab903dedb512f06bf61726878c1ebc999e3c8 at 8810150: f56b195371bd8bd8f70e3aa6935e5fb38266c0d09b024ce2094c24b216adcd79 vs f56b195371bd8bd8f70e3aa6935e5fb38266c0d09b024ce2094c24b216adcd79 at 8818838: cfbc3349546c21c4ad5b6dbb5b88737b0ae02040a6fec8f2ce7e146e7a58a269 vs e3281dd9f8064fd41db3d6a00d23693df1109de935fedbdfcd51c188dd0ea516 at 8814494: 53e517d06f31edfbd58194af015a312e3238160c5f61f1318dfddc99a7e4165c vs ed3dedcca380c2bdae5c45bc088f2bfc1d3ec6c0b8d4a41b01b3dea8b7f77051 at 8812322: f687b95d7bd757ecf4bee49486478f59bd0b1f0d6a56d209155f8e0df76dfc0a vs f687b95d7bd757ecf4bee49486478f59bd0b1f0d6a56d209155f8e0df76dfc0a at 8813408: 1c41b261616fc09f01e2b9e35002de8eef15a7f4ef79706559a4e32288ea0df1 vs 1c41b261616fc09f01e2b9e35002de8eef15a7f4ef79706559a4e32288ea0df1 at 8813951: cd1045ef82b7d12a7fa4172ce5ab786107d69a1c49872e7e11fadcaea79cbc7e vs 5d00a08a4602bb36998ccc6a3e4634b7426d494fbc6ddf5c89ac8c837ff5cf0c at 8813679: 2e03107373f1662b21069758e82614a613ad9cca8498c7e669874da5ce39a859 vs 6e6eadeefa1ea19eeb328f1420725e1655116520a83a3a6b3bf9c738c8cc3a1f at 8813543: 214cfeeae6df2842c0a03314ca09119f4fa959fb5b4ae220ba9ef7b45d066bb3 vs 214cfeeae6df2842c0a03314ca09119f4fa959fb5b4ae220ba9ef7b45d066bb3 at 8813611: 7b2b905b1f213f3ccbcdd32bc7865d167b317ad4be8762854fc15929cb172fff vs 7b2b905b1f213f3ccbcdd32bc7865d167b317ad4be8762854fc15929cb172fff at 8813645: 836340b006f9fb3249d9dca20d164f4576bcce402c1db1e82af4481af94f8e8f vs 836340b006f9fb3249d9dca20d164f4576bcce402c1db1e82af4481af94f8e8f at 8813662: 2865f706ffd87656a9a81b6f41139536ffa6a9b535052ee83991ea2e6fd44b0c vs 1d4a7a0a2159b2cc6d833b4600a39f8366c224e19cb04c1f95f07ec37b583ca8 at 8813653: 22def6d549e2a8fb5714aa2dd1ef027c45fb423ce4ba17f2ed177ab8580ddffd vs da68937b1569742c384f908b7c5fc5e73ec326bf8b3b6b96620724dca2f95be6 at 8813649: f11b4e28305852f02d6f6d3f12302a13f972325b1677886d21bd0b5952e45e6b vs f11b4e28305852f02d6f6d3f12302a13f972325b1677886d21bd0b5952e45e6b at 8813651: 904ffcb06dedff4ee7d06fe6db6ef346cecbc81453766bac33f5370028b27e19 vs dfc136e66bc0766e5e95cbe9dbeaa625ea532b93031c73ecd9d77175da10f0be at 8813650: 55ef967186aaa9777847d5e744f55225458bd4fd4e692dbe7d775057cf3d48c4 vs 55ef967186aaa9777847d5e744f55225458bd4fd4e692dbe7d775057cf3d48c4 state differs at 8813651, block 657bb423ba23c45e045211a965c903cbf4f75317a63b161d46debdcdf8d8aea1 block 657bb423ba23c45e045211a965c903cbf4f75317a63b161d46debdcdf8d8aea1: --- http://seed1t5.neo.org:20332 +++ https://rpc.t5.n3.nspcc.ru:20331 @@ -1,2 +1,2 @@ -(*result.ApplicationLog)(0xc00014e2c0)({ +(*result.ApplicationLog)(0xc0005a4340)({ Container: (util.Uint256) (len=32 cap=32) a1aed8f8cdbdde461d163ba61753f7f4cb03c965a91152045ec423ba23b47b65, @@ -14,3 +14,3 @@ Name: (string) (len=8) "Transfer", - Item: (*stackitem.Array)(0xc0001469f0)(Array) + Item: (*stackitem.Array)(0xc000590570)(Array) }, @@ -19,3 +19,3 @@ Name: (string) (len=8) "Transfer", - Item: (*stackitem.Array)(0xc000146c30)(Array) + Item: (*stackitem.Array)(0xc0005907b0)(Array) } @@ -35,3 +35,3 @@ Name: (string) (len=8) "Transfer", - Item: (*stackitem.Array)(0xc000146ed0)(Array) + Item: (*stackitem.Array)(0xc000590a50)(Array) } transaction 58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f: --- http://seed1t5.neo.org:20332 +++ https://rpc.t5.n3.nspcc.ru:20331 @@ -1,2 +1,2 @@ -(*result.ApplicationLog)(0xc00014e500)({ +(*result.ApplicationLog)(0xc0005a4440)({ Container: (util.Uint256) (len=32 cap=32) 4f1fd785da23831a2c10f9f1b07e355394ff3fc89269bad684a5c64c633a5258, @@ -6,9 +6,15 @@ Trigger: (trigger.Type) Application, - VMState: (vmstate.State) FAULT, - GasConsumed: (int64) 359098, - Stack: ([]stackitem.Item) { + VMState: (vmstate.State) HALT, + GasConsumed: (int64) 20497873, + Stack: ([]stackitem.Item) (len=1 cap=1) { + (stackitem.Null) Null }, - Events: ([]state.NotificationEvent) { + Events: ([]state.NotificationEvent) (len=1 cap=1) { + (state.NotificationEvent) { + ScriptHash: (util.Uint160) (len=20 cap=20) fda3fa4346ea532a258fc497ddaddb6437c9fdff, + Name: (string) (len=6) "Update", + Item: (*stackitem.Array)(0xc00023e090)(Array) + } }, - FaultException: (string) (len=79) "Unable to translate bytes [B2] at index 36 from specified code page to Unicode.", + FaultException: (string) "", Invocations: ([]state.ContractInvocation) <nil> different state found exit status 1 ```
sami 2025-12-28 17:16:48 +00:00
  • closed this issue
  • added the
    bug
    S4
    I4
    U0
    labels
Author
Owner

@AnnaShaleva commented on GitHub (Aug 25, 2025):

OK, what I have for now: the problem is in transaction that updates fusd-lp-staking contract 0x4de738069f9e9c448f547e59a46e5c1dc6e6eb9f (one of Flamingo contracts).

Go node updates contract successfully:

anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ curl -d '{ "jsonrpc": "2.0", "id": 1, "method": "getapplicationlog", "params": ["0x58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f"] }' https://rpc.t5.n3.nspcc.ru:20331 | json_pp
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   591  100   449  100   142   2338    739 --:--:-- --:--:-- --:--:--  3078
{
   "id" : 1,
   "jsonrpc" : "2.0",
   "result" : {
      "executions" : [
         {
            "exception" : null,
            "gasconsumed" : "20497873",
            "invocations" : null,
            "notifications" : [
               {
                  "contract" : "0xfffdc93764dbaddd97c48f252a53ea4643faa3fd",
                  "eventname" : "Update",
                  "state" : {
                     "type" : "Array",
                     "value" : [
                        {
                           "type" : "ByteString",
                           "value" : "n+vmxh1cbqRZflSPRJyenwY4500="
                        }
                     ]
                  }
               }
            ],
            "stack" : [
               {
                  "type" : "Any"
               }
            ],
            "trigger" : "Application",
            "vmstate" : "HALT"
         }
      ],
      "txid" : "0x58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f"
   }
}

Whereas C# node FAULTs the transaction:

anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ curl -d '{ "jsonrpc": "2.0", "id": 1, "method": "getapplicationlog", "params": ["0x58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f"] }' http://seed1t5.neo.org:20332 | json_pp
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   459    0   317  100   142    529    237 --:--:-- --:--:-- --:--:--   766
{
   "id" : 1,
   "jsonrpc" : "2.0",
   "result" : {
      "executions" : [
         {
            "exception" : "Unable to translate bytes [B2] at index 36 from specified code page to Unicode.",
            "gasconsumed" : "359098",
            "notifications" : [],
            "stack" : [],
            "trigger" : "Application",
            "vmstate" : "FAULT"
         }
      ],
      "txid" : "0x58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f"
   }
}

It looks like the problem is related to serialization/deserialization issue, but this time it differs from the set of issues cauesed by improper charaters escaping like https://github.com/nspcc-dev/neo-go/issues/3224. [B2] might refer to SUPERSCRIPT TWO' (U+00B2) symbol. There's no such symbols in NEF or manifest, and it's known that C# node properly deserializes both NEF and manifest from bytes (proven by unit-test):

        [TestMethod]
        public void TestManifestInvalid()
        {
            var mHex = "7b226e616d65223a22667573642d6c702d7374616b696e67222c2267726f757073223a5b5d2c226665617475726573223a7b7d2c22737570706f727465647374616e6461726473223a5b5d2c22616269223a7b226d6574686f6473223a5b7b226e616d65223a226765745374616b696e6752656f637264222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a224172726179222c226f6666736574223a302c2273616665223a747275657d2c7b226e616d65223a226765745374616b696e67416d6f756e74222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a3332362c2273616665223a747275657d2c7b226e616d65223a226765744c6974746c6553222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a3338372c2273616665223a747275657d2c7b226e616d65223a2267657455696e74537461636b50726f666974222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a3434322c2273616665223a747275657d2c7b226e616d65223a2267657455696e745350726f666974222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a3635322c2273616665223a747275657d2c7b226e616d65223a226f6e4e455031375061796d656e74222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d222c2274797065223a2248617368313630227d2c7b226e616d65223a22616d6f756e74222c2274797065223a22496e7465676572227d2c7b226e616d65223a2264617461222c2274797065223a22416e79227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a3735372c2273616665223a66616c73657d2c7b226e616d65223a226765744c505374616b6546726f6d4c656e64436f6e7472616374222c22706172616d6574657273223a5b7b226e616d65223a2262656e69666163746f7241646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333835362c2273616665223a747275657d2c7b226e616d65223a2267657446726f7a656e42616c616e6365222c22706172616d6574657273223a5b7b226e616d65223a2262656e69666163746f7241646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333836362c2273616665223a747275657d2c7b226e616d65223a226765744c5041646a7573746d656e74222c22706172616d6574657273223a5b7b226e616d65223a2262656e69666163746f7241646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333837392c2273616665223a747275657d2c7b226e616d65223a2272656c656173654c50222c22706172616d6574657273223a5b7b226e616d65223a2262656e69666163746f7241646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a22616d6f756e74222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a333839322c2273616665223a66616c73657d2c7b226e616d65223a22726566756e64222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a22616d6f756e74222c2274797065223a22496e7465676572227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a353236372c2273616665223a66616c73657d2c7b226e616d65223a226261746368436c61696d222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a353734392c2273616665223a66616c73657d2c7b226e616d65223a22636c61696d464c4d222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a363337302c2273616665223a66616c73657d2c7b226e616d65223a22636865636b464c4d222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a363432392c2273616665223a66616c73657d2c7b226e616d65223a22736574464c4d41646472657373222c22706172616d6574657273223a5b7b226e616d65223a22666c6d222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a363531352c2273616665223a66616c73657d2c7b226e616d65223a22676574464c4d41646472657373222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a363737392c2273616665223a747275657d2c7b226e616d65223a226765745669727475616c46555344426f72726f776564222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a2275736572222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a323139362c2273616665223a747275657d2c7b226e616d65223a2267657453222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a323530302c2273616665223a747275657d2c7b226e616d65223a227365745374616b65526577617264526174696f222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d2c7b226e616d65223a22726174696f222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a363738372c2273616665223a66616c73657d2c7b226e616d65223a226765745374616b65526577617264526174696f222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333133392c2273616665223a747275657d2c7b226e616d65223a22736574465553445661756c7441646472657373222c22706172616d6574657273223a5b7b226e616d65223a227661756c74222c2274797065223a2248617368313630227d2c7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a363937342c2273616665223a66616c73657d2c7b226e616d65223a22676574465553445661756c7441646472657373222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a323331322c2273616665223a747275657d2c7b226e616d65223a226765744f776e6572222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a363633302c2273616665223a747275657d2c7b226e616d65223a227365744f776e6572222c22706172616d6574657273223a5b7b226e616d65223a226f776e6572222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373238332c2273616665223a66616c73657d2c7b226e616d65223a22616464417574686f72222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373432382c2273616665223a66616c73657d2c7b226e616d65223a226973417574686f72222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373134382c2273616665223a747275657d2c7b226e616d65223a22676574417574686f72436f756e74222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a373537342c2273616665223a747275657d2c7b226e616d65223a22676574416c6c417574686f72222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a224172726179222c226f6666736574223a373632332c2273616665223a747275657d2c7b226e616d65223a2272656d6f7665417574686f72222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373733382c2273616665223a66616c73657d2c7b226e616d65223a22736574536563757269747946756e64222c22706172616d6574657273223a5b7b226e616d65223a22736563757269747946756e64222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373932382c2273616665223a66616c73657d2c7b226e616d65223a22676574536563757269747946756e64222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a323131322c2273616665223a747275657d2c7b226e616d65223a22736574466c6f636b73222c22706172616d6574657273223a5b7b226e616d65223a22666c6f636b73222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a383135392c2273616665223a66616c73657d2c7b226e616d65223a22676574466c6f636b73222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a323036312c2273616665223a747275657d2c7b226e616d65223a227365744c656e64436f6e7472616374222c22706172616d6574657273223a5b7b226e616d65223a226c656e64436f6e7472616374222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a383332302c2273616665223a66616c73657d2c7b226e616d65223a226765744c656e64436f6e7472616374222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a313739322c2273616665223a747275657d2c7b226e616d65223a227365744c50436f6e666967222c22706172616d6574657273223a5b7b226e616d65223a226c7041646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a2278222c2274797065223a22496e7465676572227d2c7b226e616d65223a2279222c2274797065223a22496e7465676572227d2c7b226e616d65223a227a222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a383530342c2273616665223a66616c73657d2c7b226e616d65223a226765744c50436f6e666967222c22706172616d6574657273223a5b7b226e616d65223a226c7041646472657373222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22416e79222c226f6666736574223a383937332c2273616665223a747275657d2c7b226e616d65223a22757064617465222c22706172616d6574657273223a5b7b226e616d65223a226e656646696c65222c2274797065223a22427974654172726179227d2c7b226e616d65223a226d616e6966657374222c2274797065223a22537472696e67227d2c7b226e616d65223a2264617461222c2274797065223a22416e79227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a383938352c2273616665223a66616c73657d2c7b226e616d65223a226973506175736564222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a363231352c2273616665223a747275657d2c7b226e616d65223a2269735374616b696e67506175736564222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a313636332c2273616665223a747275657d2c7b226e616d65223a226973526566756e64506175736564222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a353636322c2273616665223a747275657d2c7b226e616d65223a227061757365222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393035372c2273616665223a66616c73657d2c7b226e616d65223a22756e5061757365222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393139302c2273616665223a66616c73657d2c7b226e616d65223a2270617573655374616b696e67222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393239312c2273616665223a66616c73657d2c7b226e616d65223a22756e50617573655374616b696e67222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393434342c2273616665223a66616c73657d2c7b226e616d65223a227061757365526566756e64222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393535392c2273616665223a66616c73657d2c7b226e616d65223a22756e5061757365526566756e64222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393731302c2273616665223a66616c73657d2c7b226e616d65223a22626174636853657450657263656e7461676542794173736574222c22706172616d6574657273223a5b7b226e616d65223a2275736572222c2274797065223a2248617368313630227d2c7b226e616d65223a22617373657473222c2274797065223a224172726179227d2c7b226e616d65223a226e657750657263656e7473222c2274797065223a224172726179227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a393832332c2273616665223a66616c73657d2c7b226e616d65223a2273657450657263656e7461676542794173736574222c22706172616d6574657273223a5b7b226e616d65223a2275736572222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a226e657750657263656e74222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a31303234302c2273616665223a66616c73657d2c7b226e616d65223a2267657450657263656e74616765436f6e666967222c22706172616d6574657273223a5b7b226e616d65223a2275736572222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a224d6170222c226f6666736574223a323339352c2273616665223a747275657d2c7b226e616d65223a2267657450657263656e7461676542794173736574222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a2275736572222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a323337322c2273616665223a747275657d2c7b226e616d65223a22676574486973746f727955696e745350726f66697453756d222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d2c7b226e616d65223a2274696d657374616d70222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a323934302c2273616665223a66616c73657d2c7b226e616d65223a2267657443757272656e74546f74616c416d6f756e74222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333233362c2273616665223a747275657d2c7b226e616d65223a2273657443757272656e745368617265416d6f756e74222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d2c7b226e616d65223a22616d6f756e74222c2274797065223a22496e7465676572227d2c7b226e616d65223a2261646d696e41646472657373222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a31303332342c2273616665223a66616c73657d2c7b226e616d65223a2267657443757272656e745368617265416d6f756e74222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333033332c2273616665223a747275657d2c7b226e616d65223a226973496e57686974654c697374222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a3437392c2273616665223a747275657d2c7b226e616d65223a226765744173736574436f756e74222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a31303437392c2273616665223a747275657d2c7b226e616d65223a22676574416c6c4173736574222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a224172726179222c226f6666736574223a353832332c2273616665223a747275657d2c7b226e616d65223a226164644173736574222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a31303438372c2273616665223a66616c73657d2c7b226e616d65223a2272656d6f76654173736574222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a31303635322c2273616665223a66616c73657d2c7b226e616d65223a225f696e697469616c697a65222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a31303832362c2273616665223a66616c73657d5d2c226576656e7473223a5b7b226e616d65223a2255706461746553222c22706172616d6574657273223a5b7b226e616d65223a2270726573222c2274797065223a22496e7465676572227d2c7b226e616d65223a2263757273222c2274797065223a22496e7465676572227d2c7b226e616d65223a2270726553222c2274797065223a22496e7465676572227d2c7b226e616d65223a2263757253222c2274797065223a22496e7465676572227d5d7d2c7b226e616d65223a224f6e53657450657263656e74616765222c22706172616d6574657273223a5b7b226e616d65223a2275736572222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a226e657750657263656e74222c2274797065223a22496e7465676572227d5d7d5d7d2c227065726d697373696f6e73223a5b7b22636f6e7472616374223a222a222c226d6574686f6473223a222a227d5d2c22747275737473223a5b5d2c226578747261223a7b22417574686f72223a22222c22456d61696c223a22222c224465736372697074696f6e223a22227d7d";
            var mBytes = mHex.HexToBytes();
            var manifestNew = ContractManifest.Parse(mBytes);
            Assert.IsTrue(manifestNew.IsValid(Neo.VM.ExecutionEngineLimits.Default, null));
            var nHex = "4e4546334e656f2e436f6d70696c65722e43536861727020332e372e342b63373563323961383762396130353632623238373033363138303435363338336437302e2e2e000004c0ef39cee0e4e925c6c2a06a79e1440dd86fceac0b646573657269616c697a650100010fc0ef39cee0e4e925c6c2a06a79e1440dd86fceac0973657269616c697a650100010fc0ef39cee0e4e925c6c2a06a79e1440dd86fceac11626173653538436865636b456e636f64650100010ffda3fa4346ea532a258fc497ddaddb6437c9fdff067570646174650300000f0000fd582b570002797812c011db20342d0c1f4765745374616b696e67416d6f756e743a20696e76616c6420706172616d73e179783455220240e140570402794a70ca711072222d686ace736b4ad92850ca0014b3abaa260711db20220d78240710db2022056b10b3260710db20220e6a9c726a6930d311db202202404ad92850ca0014b3ab4010b34057040279db3078db308b705841f6b46be212c0716869c145538b5041925de831726a736b0b97265cc54a10cf4a0bcf4a10cf4a0bcf4a10cf4a10cf4a34664a1010d04a110c140000000000000000000000000000000000000000d04a1210d04a130c140000000000000000000000000000000000000000d04a1410d04a1510d022086a3700002202408b40db304012c04041f6b46be240c145538b5041925de83140570001400c1400000000000000000000000000000000000000004037000040570002797812c011db2035e7feffff0c1f4765745374616b696e67416d6f756e743a20696e76616c6420706172616d73e17978350cffffff12ce220240570002797812c011db2035aafeffff0c194765744c6974746c65533a20696e76616c6420706172616d73e1797835d5feffff15ce2202405700017811c011db203574feffffaa260711db20220678340eaa26051022077834712202405700017811c011db20354ffeffff0c1c4973496e57686974654c6973743a20696e76616c6420706172616d73e17834052202405701015941f6b46be212c0707868c145538b5041925de8314ad826044510db2111972202404ad826044510db2140c145538b5041925de831405700017834052202405702015a41f6b46be212c0707868c145538b5041925de83171690b9726051022167868c145538b5041925de8314ad826044510db212202405700017811c011db2035a2fdffffaa260711db20220978353cffffffaa26051022077834052202405700017834052202405702015b41f6b46be212c0707868c145538b5041925de83171690b9726051022167868c145538b5041925de8314ad826044510db212202405711034139536e3c703581030000aa0c1f4f6e4e455031375061796d656e743a2049735374616b696e67506175736564e16835b8feffff240710db20220e687812c011db2035fdfcffff240710db202209783575030000aa240710db2022057910b70c1d4f6e4e455031375061796d656e743a20696e76616c6420706172616d73e135620300007169356d0300000c174f6e4e455031375061796d656e743a2054696d656f7574e1107278356003000097274d020000796878358a0300009e4a8145790064b80c1c4f6e4e455031375061796d656e743a20616d6f756e74203c20313030e1790064a273796b9f4a81456b6878357c0300007a746835d603000075796d10cea00064a176796d11cea00064a17707796f079f6e9f770835fc03000077093528040000770a686f093563fcffff770b6f0b15ce6f076f0b12ce9e6f09683542040000770c686f0a3544fcffff770d6f0d15ce6f086f0d12ce9e6f0a683523040000770e686c3526fcffff770f6f0f15ce6e6f0f12ce9e6c6835070400007710696835b90500006f0b13ce0c14000000000000000000000000000000000000000098240710db20221d6f0b11ce0c14000000000000000000000000000000000000000098261c686f0b15ce6f0b12ce6f0b10ce35410800006f0b14ce9e4a72456f0c6a69686f076f0b12ce9e6f0935630800006f07686f0935bf080000104a72456f0d13ce0c14000000000000000000000000000000000000000098240710db20221d6f0d11ce0c14000000000000000000000000000000000000000098261c686f0d15ce6f0d12ce6f0d10ce35c70700006f0d14ce9e4a72456f0e6a69686f086f0d12ce9e6f0a35e90700006f08686f0a3545080000104a72456f0f13ce0c14000000000000000000000000000000000000000098240710db20221d6f0f11ce0c14000000000000000000000000000000000000000098261c686f0f15ce6f0f12ce6f0f10ce354d0700006f0f14ce9e4a72456f106a69686e6f0f12ce9e6c35710700006e686c35cf07000079686c3590080000238a00000068783590faffff736b15ce796b12ce9e7868357402000074696835270400006b13ce0c14000000000000000000000000000000000000000098240710db20221c6b11ce0c140000000000000000000000000000000000000000982620686b15ce6b12ce6b10ce35b40600006b14ce9e4a7245796b12ce9e4a81456c6a6968797835d7060000404139536e3c4034052202405701005c41f6b46be212c0700c1250617573655374616b696e6750726566697868c145538b5041925de8314ad826044510db2111972202405700017841dbfea87497260711db20220710db2022024041dbfea8744041b7c3880301e803a122024041b7c3880340570001785db8260911db202209220710db2022024034052202405701005e41f6b46be212c0700c0c6c656e64436f6e747261637468c145538b5041925de8314ad824094aca001428033a2202405702025f0741f6b46be212c07079db3078db308b716968c145538b5041925de8314ad826044510db212202405702037a10b80c284c5041646a7573746d656e7453746f726167653a20616d6f756e74206d757374206265203e3d2030e15f07419bf667ce12c07079db3078db308b717a6968c145538b5041e63f188440419bf667ce40c145538b5041e63f1884405703015f0841f6b46be212c0707868c145538b5041925de8317169726a0b97aa0c1d4c50436f6e66696753746f726167653a2064617461206973206e756c6ce16937000022024034052202405701005f0941f6b46be212c0700c06666c6f636b7368c145538b5041925de8314ad824094aca001428033a22024034052202405701005f0a41f6b46be212c0700c0c736563757269747946756e6468c145538b5041925de8314ad824094aca001428033a22024057020479783416707a68a068a0a471697b78350c010000692202405706027911c01f0c106765745661756c7442616c616e636573345b41627d5b52701071684a72ca73107422156a6cce75696d14ce9e6d15ce9f4a71456c9c746c6b30eb7978346b726910b52606104a71456a10b80c0e696e76616c696420706172616d73e1696aa00064a122024041627d5b524034052202405701005f0b41f6b46be212c0700c0f465553445661756c7450726566697868c145538b5041925de8314ad824094aca001428033a220240570102793413706878cb26096878ce22072205102202405700017834052202405703015f0c41f6b46be212c0707868c145538b5041925de8317169726a0b972605c8220669370000220240c840cb40ce40a4405702037834297068799f7a9e7169783460c24a79cf4a7acf4a68cf4a69cf0c07557064617465534195016f61405700017834052202405702015f0d41f6b46be212c0707868c145538b5041925de83171690b9726051022167868c145538b5041925de8314ad826044510db2122024057000279783403405701025f0d419bf667ce12c070797868c145538b5041e63f188440c145538b5041e63f18844057070279783455783576010000783597010000706835fa010000a00064a17168699f7278354c02000073783565ffffff74107510766b10982608696ba14a75456c109826086a6ca14a76456d7835480200006e78356302000040570502783441706879b82606223822367835acf7ffff716979689fa0726a687834759e7978344d7835fef7ffff736b79689fa0746c687835b70000009e7978358c000000405700017834052202405701015f0e41f6b46be212c0707868c145538b5041925de8314ad826044510db212202405702035f0f419bf667ce12c07078db3079db308b717a6968c145538b5041e63f188440570002797834052202405702025f0f41f6b46be212c07078db3079db308b716968c145538b5041925de8314ad826044510db212202405702035f10419bf667ce12c07078db3079db308b717a6968c145538b5041e63f188440570002797834052202405702025f1041f6b46be212c07078db3079db308b716968c145538b5041925de8314ad826044510db212202405700013524fbffff783403405701025f0e419bf667ce12c070797868c145538b5041e63f1884405700017811c011db203555f4ffff0c2447657443757272656e745368617265416d6f756e743a20696e76616c6420706172616d73e17835d0f5ffff26077834082205102202405701015f1141f6b46be212c0707868c145538b5041925de8314ad826044510db2122024034052202405702005f1241f6b46be212c0700c105374616b65526577617264526174696f68c145538b5041925de83171690b972606001422270c105374616b65526577617264526174696f68c145538b5041925de8314ad826044510db2122024057030141dbfea874706811c07169150c0962616c616e63654f667841627d5b52726a22024057000279783403405701025a419bf667ce12c070797868c145538b5041e63f18844057000279783403405701025b419bf667ce12c070797868c145538b5041e63f188440570604787b3511feffff7035c1f9ffff7b3505feffff7169689f79a072787b3550feffff7335a7f9ffff7b3544feffff746c6b9f7aa0756d6a9e2202405703067adb3078db308b7058419bf667ce12c071c54a10cf4a0bcf4a10cf4a0bcf4a10cf4a10cf4a35b5f3ffff4a107bd04a1178d04a1279d04a137ad04a147cd04a157dd0726a3701006869c145538b5041e63f188440c145538b5041e63f188440370100405701037a10b80c2f46726f7a656e42616c616e636553746f72616765746f726167653a20616d6f756e74206d757374206265203e3d2030e17978340b70687a9e7978342f405702025f1341f6b46be212c07079db3078db308b716968c145538b5041925de8314ad826044510db212202405702037a10b80c2f46726f7a656e42616c616e636553746f72616765746f726167653a20616d6f756e74206d757374206265203e3d2030e15f13419bf667ce12c07079db3078db308b717a6968c145538b5041e63f1884405701037a10b70c324c505374616b6546726f6d4c656e64436f6e747261637453746f726167653a20616d6f756e74206d757374206265203e2030e17978340b70687a9e7978342f405702025f1441f6b46be212c07079db3078db308b716968c145538b5041925de8314ad826044510db212202405702035f14419bf667ce12c07079db3078db308b717a6968c145538b5041e63f188440570002797834ac220240570002797835d6feffff2202405700027978350cf8ffff2202405715035f15d826210b0b12c04a5f16cf0c0952656c656173654c5001ff00124d35a703000067155f1535cf030000359ef7ffff70797812c011db2035c8f0ffff0c1852656c656173654c503a20696e76616c6420706172616d73e17a10b70c1d52656c656173654c503a20616d6f756e74206d757374206265203e2030e16841f827ec8c0c1a52656c656173654c503a20696e76616c6964207769746e657373e1797835eafeffff7179783559f7ffff727a696a9eb60c3e52656c656173654c503a20616d6f756e74203e206c705374616b6546726f6d4c656e64436f6e7472616374202b2061646a7573746d656e74416d6f756e74e17a737a69b526277a0064a2109726057a220b7a0064a1119e0064a04a82457a4a73457a7978351d030000221c694a8245696a9e4a73451079783500f7ffff7a79783501030000359cf7ffff7435c9f7ffff7541dbfea87476793542f7ffff77077a6f0710cea00064a177087a6f0711cea00064a177097a6f099f6f089f770a796c35d9efffff770b6f0b15ce6f0b12ce6f099f6c7935b9f7ffff770c796d35bcefffff770d6f0d15ce6f0d12ce6f0a9f6d79359cf7ffff770e7978359fefffff770f6f0f15ce6f0f12ce6f089f7879357ff7ffff771035d8f5ffff77116f11793529f9ffff1077126f0b13ce0c14000000000000000000000000000000000000000098240710db20221d6f0b11ce0c14000000000000000000000000000000000000000098261d796f0b15ce6f0b12ce6f0b10ce35aefbffff6f0b14ce9e4a7712456f0c6f126f11796f0b12ce6f099f6c35cefbffff6f09796c356c020000104a7712456f0d13ce0c14000000000000000000000000000000000000000098240710db20221d6f0d11ce0c14000000000000000000000000000000000000000098261d796f0d15ce6f0d12ce6f0d10ce3532fbffff6f0d14ce9e4a7712456f0e6f126f11796f0d12ce6f0a9f6d3552fbffff6f0a796d35f0010000104a7712456f0f13ce0c14000000000000000000000000000000000000000098240710db20221d6f0f11ce0c14000000000000000000000000000000000000000098261d796f0f15ce6f0f12ce6f0f10ce35b6faffff6f0f14ce9e4a7712456f106f126f11796f0f12ce6f089f7835d6faffff6f08797835740100000b6b686e14c077133b3f006f131f0c087472616e736665727941627d5b5277146f140c1c52656c656173654c503a207472616e73666572206661696c65642c20db30db28e13d2c771410db200c1c52656c656173654c503a207472616e73666572206661696c65642c20db30db28e13d025f15357f0100004057000378341f7a4a781151d045419bf667ce7911884e1051d05012c04a781051d045405700014011884e1051d05012c0405701017811ce7810cec145538b5041925de83170680b970c0f416c726561647920656e7465726564e1117811ce7810cec145538b5041e63f18844041f827ec8c405701037a10b70c324c505374616b6546726f6d4c656e64436f6e747261637453746f726167653a20616d6f756e74206d757374206265203e2030e179783517fbffff70687ab80c304c505374616b6546726f6d4c656e64436f6e747261637453746f726167653a2062616c616e6365203c20616d6f756e74e1687a9f79783502fbffff405701037a10b80c2f46726f7a656e42616c616e636553746f72616765746f726167653a20616d6f756e74206d757374206265203e3d2030e1797835caf9ffff70687ab80c2c46726f7a656e42616c616e636553746f72616765746f726167653a2062616c616e6365203c20616d6f756e74e1687a9f797835b9f9ffff40db2840db30405700017811ce7810cec145538b50412f58c5ed40c145538b50412f58c5ed40570803412d510830706810ce3542010000aa0c0a52652d656e7465726564e16810ce35500100003564010000260711db2022097841f827ec8caa26126810ce358901000010db20230001000035faf1ffff717a78359eebffff727a783506f9ffff736a12ce6b9f79b5260711db2022086a11ce7897aa260711db2022086a13ce7a97aa26126810ce354001000010db2023b70000001088797841dbfea87414c0743b39006c1f0c087472616e736665727a41627d5b52756d0c19526566756e643a207472616e73666572206661696c65642c20db30db28e13d287510db200c19526566756e643a207472616e73666572206661696c65642c20db30db28e13d026a12ce799f756a15ce6d787a35daf2ffff76697a358df4ffff7a6a15ce6a12ce6a10ce3557f7ffff6a14ce9e77076e6f07697a6d783582f7ffff6810ce358b00000011db20220240412d51083040570201785f17419bf667ce12c0c145538b5041925de831706871690b97aa22024012c04057000111785f17419bf667ce12c0c145538b5041e63f18844034052202405701005f1841f6b46be212c0700c115061757365526566756e6450726566697868c145538b5041925de8314ad826044510db2111972202405701015f17419bf667ce12c0707868c145538b50412f58c5ed40570501412d510830706810ce3560ffffffaa0c0a52652d656e7465726564e16810ce356effffff34234a71ca7210732211696bce746c7835c4000000456b9c736b6a30ef6810ce349f4057010034097068343e2202405703005941f6b46be212c0701068c14541df30b89a71107269419c08ed9c26096a4a9c724522f36a220240c14541df30b89a40419c08ed9c405704015941f6b46be212c0701368c14541df30b89a71784a10030000000001000000bb24033ac40072107369419c08ed9c26316941f354bf1d4a6a6b51d0456b4a9c4a102e04220e4a03ffffffff00000000320c03ffffffff0000000091734522cb6a22024041f354bf1d4057060279783510e9ffff706811ce7897aa260a10db2023c0000000797812c011db2035a5e8ffff0c17436c61696d464c4d3a20696e76616c6420706172616d73e141dbfea874713522efffff72358a000000260711db2022097841f827ec8caa260711db2022096a35a6000000aa260710db2022636815ce6812ce7879358cf0ffff736a79353ff2ffff796815ce6812ce6810ce3509f5ffff746814ce6c9e756b106a6813ce6812ce783530f5ffff6d1098261f696d78346d0c15436c61696d464c4d3a206d696e74206661696c6564e111db2022024034052202405701005f1941f6b46be212c0700c0b506175736550726566697868c145538b5041925de8314ad826044510db211197220240570001785f1ab8260911db202209220710db2022024057020379787a13c070341471681f0c046d696e746941627d5b522202405701005f1b41f6b46be212c0700c09464c4d50726566697868c145538b5041925de8314ad824094aca001428033a220240570202412d510830706810ce35f3fcffffaa0c0a52652d656e7465726564e16810ce3501fdffff79783565feffff716810ce3547fdffff69220240570302797812c011db203510e7ffff0c17436865636b464c4d3a20696e76616c6420706172616d73e17978353de7ffff70358bedffff7935e0f0ffff796815ce6812ce6810ce35aaf3ffff716814ce699e726a220240570001347041f827ec8c0c22536574464c4d416464726573733a20436865636b5769746e657373206661696c6564e1784ad92850ca0014b3ab240710db2022067810b3aa0c1d536574464c4d416464726573733a20616464726573732076616c69642ddb30788bdb28e178346d11db2022024034052202405703005f1c41f6b46be212c0700c056f776e657268c145538b5041925de831db307169726a0b9726085f1d2221221f69ca00149826085f1d2214221269db284ad824094aca001428033a220240db3040db284ad824094aca001428033a408b405701015f1b419bf667ce12c070780c09464c4d50726566697868c145538b5041e63f188440c145538b5041e63f1884403536feffff2202405700023560ffffff78970c225365745374616b65526577617264526174696f3a20696e76616c6964206f776e6572e17841f827ec8c0c285365745374616b65526577617264526174696f3a20436865636b5769746e657373206661696c6564e17910b8240710db202206790064b60c1a5365745374616b65526577617264526174696f3a20726174696fe1793403405701015f12419bf667ce12c070780c105374616b65526577617264526174696f68c145538b5041e63f1884405700027941f827ec8c0c31536574465553445661756c74416464726573733a20436865636b5769746e657373206661696c65642c20617574686f722ddb30798bdb28e179346a0c20536574465553445661756c74416464726573733a206e6f7420617574686f722ddb30798bdb28e1784ad92850ca0014b3ab0c23536574465553445661756c74416464726573733a20616464726573732076616c69642ddb30788bdb28e178346411db202202405700017811c011db203542e4ffff0c194973417574686f723a20696e76616c696420617574686f722ddb30788bdb28e17834052202405701015f1e41f6b46be212c0707868c145538b5041925de8314ad826044510db2111972202405701015f0b419bf667ce12c070780c0f465553445661756c7450726566697868c145538b5041e63f1884405700013570fdffff41f827ec8c0c255365744f776e65723a20436865636b5769746e657373206661696c65642c206f776e65722ddb30788bdb28e17811c011db203583e3ffff0c185365744f776e65723a20696e76616c6964206f776e65722ddb30788bdb28e178340811db202202405701015f1c419bf667ce12c070780c056f776e657268c145538b5041e63f18844057000135dffcffff41f827ec8c0c26416464417574686f723a20436865636b5769746e657373206661696c65642c206f776e65722ddb3035abfcffff8bdb28e17811c011db2035ede2ffff0c1a416464417574686f723a20696e76616c696420617574686f722ddb30788bdb28e178340811db202202405701015f1e419bf667ce12c070117868c145538b5041e63f18844034052202405703005f1e41f6b46be212c0701068c14541df30b89a71107269419c08ed9c26096a4a9c724522f36a22024057010034cc706834052202405704015f1e41f6b46be212c0701368c14541df30b89a71784a10030000000001000000bb24033ac40072107369419c08ed9c26316941f354bf1d4a6a6b51d0456b4a9c4a102e04220e4a03ffffffff00000000320c03ffffffff0000000091734522cb6a22024057000135a9fbffff41f827ec8c0c2952656d6f7665417574686f723a20436865636b5769746e657373206661696c65642c206f776e65722ddb303572fbffff8bdb28e17811c011db2035b4e1ffff0c1d52656d6f7665417574686f723a20696e76616c696420617574686f722ddb30788bdb28e1783573fdffff0c1852656d6f7665417574686f723a206e6f7420617574686f72db30788bdb28e178340811db202202405701015f1e419bf667ce12c0707868c145538b50412f58c5ed4057000135ebfaffff41f827ec8c0c2d536574536563757269747946756e643a20436865636b5769746e657373206661696c65642c206f776e65723a2035b2faffff344a8bdb28e17811c011db2035f2e0ffff0c27536574536563757269747946756e643a20696e76616c696420736563757269747946756e643a2078340f8bdb28e178343c11db20220240570001414c4992dc78340522024057010211884a1079d07068788b4a704568db2837020022024037020040db2840414c4992dc405701015f0a419bf667ce12c070780c0c736563757269747946756e6468c145538b5041e63f1884405700013504faffff41f827ec8c0c27536574466c6f636b733a20436865636b5769746e657373206661696c65642c206f776e65723a2035d1f9ffff3569ffffff8bdb28e17811c011db20350ee0ffff0c1b536574466c6f636b733a20696e76616c696420666c6f636b733a20783537ffffff8bdb28e178340811db202202405701015f09419bf667ce12c070780c06666c6f636b7368c145538b5041e63f1884405700013563f9ffff41f827ec8c0c2d5365744c656e64436f6e74726163743a20436865636b5769746e657373206661696c65642c206f776e65723a20352af9ffff35c2feffff8bdb28e17811c011db203567dfffff0c275365744c656e64436f6e74726163743a20696e76616c6964206c656e64436f6e74726163743a20783584feffff8bdb28e178340811db202202405701015e419bf667ce12c070780c0c6c656e64436f6e747261637468c145538b5041e63f18844057000435abf8ffff41f827ec8c0c295365744c50436f6e6669673a20436865636b5769746e657373206661696c65642c206f776e65723a203576f8ffff350efeffff8bdb28e17811c011db2035b3deffff0c205365744c50436f6e6669673a20696e76616c6964206c70416464726573733a207835d7fdffff8bdb28e17b7a7978340811db202202405702047910b8240710db2022057a10b8240710db2022057b10b80c5c4c50436f6e66696753746f726167653a2062656e69666163746f7250657263656e746167652c20666c6f636b7350657263656e746167652c20736563757269747946756e6450657263656e74616765206d757374206265203e3d2030e1797a9e7b9e0064970c584c50436f6e66696753746f726167653a2062656e69666163746f7250657263656e74616765202b20666c6f636b7350657263656e74616765202b20736563757269747946756e6450657263656e7461676520213d20313030e15f08419bf667ce12c0707868c145538b5041925de83171690b970c294c50436f6e66696753746f726167653a206c704164647265737320616c726561647920657869737473e110101013c04a34204a1079d04a117ad04a127bd071693701007868c145538b5041e63f188440570001405700017835b5e4ffff22024057000335caf6ffff41f827ec8c0c235570646174653a20436865636b5769746e657373206661696c65642c206f776e65722ddb303599f6ffff8bdb28e17a797837030040370300405700017841f827ec8c0c2350617573653a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e1783555f8ffff0c1150617573653a206e6f7420617574686f72db30788bdb28e111340811db202202405701015f19419bf667ce12c070780c0b506175736550726566697868c145538b5041e63f1884405700017841f827ec8c0c25556e70617573653a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e17835cef7ffff0c13556e70617573653a206e6f7420617574686f72db30788bdb28e110357fffffff11db202202405700017841f827ec8c0c2a50617573655374616b696e673a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e1783564f7ffff0c1850617573655374616b696e673a206e6f7420617574686f72db30788bdb28e111340811db202202405701015c419bf667ce12c070780c1250617573655374616b696e6750726566697868c145538b5041e63f1884405700017841f827ec8c0c2c556e50617573655374616b696e673a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e17835c9f6ffff0c1a556e50617573655374616b696e673a206e6f7420617574686f72db30788bdb28e110356bffffff11db202202405700017841f827ec8c0c295061757365526566756e643a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e1783559f6ffff0c175061757365526566756e643a206e6f7420617574686f72db30788bdb28e111340811db202202405701015f18419bf667ce12c070780c115061757365526566756e6450726566697868c145538b5041e63f1884405700017841f827ec8c0c2b556e5061757365526566756e643a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e17835c0f5ffff0c19556e5061757365526566756e643a206e6f7420617574686f72db30788bdb28e110356dffffff11db202202405702037841f827ec8c0c114e6f20617574686f72697a6174696f6e2ee179ca7aca970c0e706172616d7320696e76616c6964e110701071222f7a69ce7969ce78345a4a7045694a9c4a102e04220e4a03ffffffff00000000320c03ffffffff000000009171456979cab524cf680064b60c2053657450657263656e74616765436f6e6669673a206f7574206f662031303025e1783582efffff405704037a10b80c0f70657263656e7420696e76616c6964e1790c14000000000000000000000000000000000000000098240710db2022087935aedaffff0c0d617373657420696e76616c6964e1783514e2ffff706879cb26076879ce22031071680c140000000000000000000000000000000000000000cb261c680c140000000000000000000000000000000000000000ce220310726a699f7a9e736b4a0c1400000000000000000000000000000000000000006853d0457a4a796853d04568783428c24a78cf4a79cf4a7acf0c0f4f6e53657450657263656e746167654195016f616b220240d0405701025f0c419bf667ce12c070793701007868c145538b5041e63f1884405701037841f827ec8c0c114e6f20617574686f72697a6174696f6e2ee17a797835d9feffff70680064b60c2053657450657263656e74616765436f6e6669673a206f7574206f662031303025e1783527eeffff405700037a7812c011db2035d9d7ffff0c2453657443757272656e745368617265416d6f756e743a20696e76616c6420706172616d73e1783554d9ffff240710db2022087a3554f3ffff240710db2022087a41f827ec8c26247910b82618797834213524deffff783579e1ffff11db202210220710db202209220710db202202405701025f11419bf667ce12c070797868c145538b5041e63f18844035dcedffff220240570002797812c011db203536d7ffff0c1741646441737365743a20696e76616c6420706172616d73e17941f827ec8c0c2641646441737365743a20436865636b5769746e657373206661696c65642c20617574686f722ddb30798bdb28e1793596f2ffff0c1541646441737365743a206e6f7420617574686f722ddb30798bdb28e178340811db2022024057010159419bf667ce12c070117868c145538b5041e63f1884405700027941f827ec8c0c2952656d6f766541737365743a20436865636b5769746e657373206661696c65642c20617574686f722ddb30798bdb28e1793514f2ffff0c1852656d6f766541737365743a206e6f7420617574686f722ddb30798bdb28e17835e0d7ffff0c1b52656d6f766541737365743a206e6f742077686974656c6973742ddb30788bdb28e178340811db2022024057010159419bf667ce12c0707868c145538b50412f58c5ed4056200c02a001db30600c020401db30610c020102db30620c02a301db30630c020901db306403000064a7b3b6e00d671f0220116f5f6502d06d715f671a0c146699d5f148a50636adf041ca692c07407bcb03fa671d0c02aa01db30660c02aa05db3067070c02aa02db3067080c02a901db3067090c02a801db30670a0c020702db30670b0c02a501db30670c0c02a601db30670d0c020101db30670e0c020201db30670f0c02a401db3067100c020601db3067110c02a701db3067120c02aa03db3067130c02aa04db3067140c07656e746572656467170c020902db3067180c020903db3067190c020701db30671b0c020302db30671c0c020301db30671e0a2be9ffff0adee7ffff12c0671640848ef6c7";
            var nBytes = nHex.HexToBytes();
            var ne = nBytes.AsSerializable<NefFile>();
            Assert.IsFalse(ne == null);
        }

So I suspect that the root reason is a call to StdLib's serialize/deserialize methods that are used by this contract (it's reflected in the tokens section of the NEF file):

   "tokens" : [
      {
         "callflags" : "All",
         "hash" : "0xacce6fd80d44e1796aa0c2c625e9e4e0ce39efc0",
         "hasreturnvalue" : true,
         "method" : "deserialize",
         "paramcount" : 1
      },
      {
         "callflags" : "All",
         "hash" : "0xacce6fd80d44e1796aa0c2c625e9e4e0ce39efc0",
         "hasreturnvalue" : true,
         "method" : "serialize",
         "paramcount" : 1
      },
      {
         "callflags" : "All",
         "hash" : "0xacce6fd80d44e1796aa0c2c625e9e4e0ce39efc0",
         "hasreturnvalue" : true,
         "method" : "base58CheckEncode",
         "paramcount" : 1
      },
      {
         "callflags" : "All",
         "hash" : "0xfffdc93764dbaddd97c48f252a53ea4643faa3fd",
         "hasreturnvalue" : false,
         "method" : "update",
         "paramcount" : 3
      }
   ]

The update method itself is not that simple, it has a set of nested calls:

8985     INITSLOT      0 local, 3 arg
8988     CALL_L        6630 (-2358/caf6ffff)
8993     SYSCALL       System.Runtime.CheckWitness (f827ec8c)
8998     PUSHDATA1     5570646174653a20436865636b5769746e657373206661696c65642c206f776e65722d ("Update: CheckWitness failed, owner-")
9035     CONVERT       Buffer (30)
9037     CALL_L        6630 (-2407/99f6ffff)
9042     CAT           
9043     CONVERT       ByteString (28)
9045     ASSERTMSG     
9046     LDARG2        
9047     LDARG1        
9048     LDARG0        
9049     CALLT         0300 ("\x03\x00")
9052     RET
9053     CALLT         0300 ("\x03\x00")
9056     RET

There are CALLT instructions calling update method of native Management in the end, and the most suspicions one is CALL_L 6630 instruction that calls the following method:

6630     CALL          6635 (5/05)
6632     JMP           6634 (2/02)
6634     RET           
6635     INITSLOT      3 local, 0 arg
6638     LDSFLD        28 (1c)
6640     SYSCALL       System.Storage.GetReadOnlyContext (f6b46be2)
6645     PUSH2         
6646     PACK          
6647     STLOC0        
6648     PUSHDATA1     6f776e6572 ("owner")
6655     LDLOC0        
6656     UNPACK        
6657     DROP          
6658     REVERSE3      
6659     CAT           
6660     SWAP          
6661     SYSCALL       System.Storage.Get (925de831)
6666     CONVERT       Buffer (30)
6668     STLOC1        
6669     LDLOC1        
6670     STLOC2        
6671     LDLOC2        
6672     PUSHNULL      
6673     EQUAL         
6674     JMPIFNOT      6682 (8/08)
6676     LDSFLD        29 (1d)
6678     JMP           6711 (33/21)
6680     JMP           6711 (31/1f)
6682     LDLOC1        
6683     SIZE          
6684     PUSHINT8      20 (14)
6686     NOTEQUAL      
6687     JMPIFNOT      6695 (8/08)
6689     LDSFLD        29 (1d)
6691     JMP           6711 (20/14)
6693     JMP           6711 (18/12)
6695     LDLOC1        
6696     CONVERT       ByteString (28)
6698     DUP           
6699     ISNULL        
6700     JMPIF         6709 (9/09)
6702     DUP           
6703     SIZE          
6704     PUSHINT8      20 (14)
6706     JMPEQ         6709 (3/03)
6708     THROW         
6709     JMP           6711 (2/02)
6711     RET
6712     CONVERT       Buffer (30)
6714     RET           
6715     CONVERT       ByteString (28)
6717     DUP           
6718     ISNULL        
6719     JMPIF         6728 (9/09)
6721     DUP           
6722     SIZE          
6723     PUSHINT8      20 (14)
6725     JMPEQ         6728 (3/03)
6727     THROW         
6728     RET           
6729     CAT           
6730     RET

So I'm still investigating the contract code and C# node code.

@AnnaShaleva commented on GitHub (Aug 25, 2025): OK, what I have for now: the problem is in transaction that updates `fusd-lp-staking` contract `0x4de738069f9e9c448f547e59a46e5c1dc6e6eb9f` (one of Flamingo contracts). Go node updates contract successfully: ``` anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ curl -d '{ "jsonrpc": "2.0", "id": 1, "method": "getapplicationlog", "params": ["0x58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f"] }' https://rpc.t5.n3.nspcc.ru:20331 | json_pp % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 591 100 449 100 142 2338 739 --:--:-- --:--:-- --:--:-- 3078 { "id" : 1, "jsonrpc" : "2.0", "result" : { "executions" : [ { "exception" : null, "gasconsumed" : "20497873", "invocations" : null, "notifications" : [ { "contract" : "0xfffdc93764dbaddd97c48f252a53ea4643faa3fd", "eventname" : "Update", "state" : { "type" : "Array", "value" : [ { "type" : "ByteString", "value" : "n+vmxh1cbqRZflSPRJyenwY4500=" } ] } } ], "stack" : [ { "type" : "Any" } ], "trigger" : "Application", "vmstate" : "HALT" } ], "txid" : "0x58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f" } } ``` Whereas C# node FAULTs the transaction: ``` anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ curl -d '{ "jsonrpc": "2.0", "id": 1, "method": "getapplicationlog", "params": ["0x58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f"] }' http://seed1t5.neo.org:20332 | json_pp % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 459 0 317 100 142 529 237 --:--:-- --:--:-- --:--:-- 766 { "id" : 1, "jsonrpc" : "2.0", "result" : { "executions" : [ { "exception" : "Unable to translate bytes [B2] at index 36 from specified code page to Unicode.", "gasconsumed" : "359098", "notifications" : [], "stack" : [], "trigger" : "Application", "vmstate" : "FAULT" } ], "txid" : "0x58523a634cc6a584d6ba6992c83fff9453357eb0f1f9102c1a8323da85d71f4f" } } ``` It looks like the problem is related to serialization/deserialization issue, but this time it differs from the set of issues cauesed by improper charaters escaping like https://github.com/nspcc-dev/neo-go/issues/3224. `[B2]` might refer to [SUPERSCRIPT TWO' (U+00B2)](https://www.fileformat.info/info/unicode/char/b2/index.htm) symbol. There's no such symbols in NEF or manifest, and it's known that C# node properly deserializes both NEF and manifest from bytes (proven by unit-test): ``` [TestMethod] public void TestManifestInvalid() { var mHex = "7b226e616d65223a22667573642d6c702d7374616b696e67222c2267726f757073223a5b5d2c226665617475726573223a7b7d2c22737570706f727465647374616e6461726473223a5b5d2c22616269223a7b226d6574686f6473223a5b7b226e616d65223a226765745374616b696e6752656f637264222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a224172726179222c226f6666736574223a302c2273616665223a747275657d2c7b226e616d65223a226765745374616b696e67416d6f756e74222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a3332362c2273616665223a747275657d2c7b226e616d65223a226765744c6974746c6553222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a3338372c2273616665223a747275657d2c7b226e616d65223a2267657455696e74537461636b50726f666974222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a3434322c2273616665223a747275657d2c7b226e616d65223a2267657455696e745350726f666974222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a3635322c2273616665223a747275657d2c7b226e616d65223a226f6e4e455031375061796d656e74222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d222c2274797065223a2248617368313630227d2c7b226e616d65223a22616d6f756e74222c2274797065223a22496e7465676572227d2c7b226e616d65223a2264617461222c2274797065223a22416e79227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a3735372c2273616665223a66616c73657d2c7b226e616d65223a226765744c505374616b6546726f6d4c656e64436f6e7472616374222c22706172616d6574657273223a5b7b226e616d65223a2262656e69666163746f7241646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333835362c2273616665223a747275657d2c7b226e616d65223a2267657446726f7a656e42616c616e6365222c22706172616d6574657273223a5b7b226e616d65223a2262656e69666163746f7241646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333836362c2273616665223a747275657d2c7b226e616d65223a226765744c5041646a7573746d656e74222c22706172616d6574657273223a5b7b226e616d65223a2262656e69666163746f7241646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333837392c2273616665223a747275657d2c7b226e616d65223a2272656c656173654c50222c22706172616d6574657273223a5b7b226e616d65223a2262656e69666163746f7241646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a22616d6f756e74222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a333839322c2273616665223a66616c73657d2c7b226e616d65223a22726566756e64222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a22616d6f756e74222c2274797065223a22496e7465676572227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a353236372c2273616665223a66616c73657d2c7b226e616d65223a226261746368436c61696d222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a353734392c2273616665223a66616c73657d2c7b226e616d65223a22636c61696d464c4d222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a363337302c2273616665223a66616c73657d2c7b226e616d65223a22636865636b464c4d222c22706172616d6574657273223a5b7b226e616d65223a2266726f6d41646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a363432392c2273616665223a66616c73657d2c7b226e616d65223a22736574464c4d41646472657373222c22706172616d6574657273223a5b7b226e616d65223a22666c6d222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a363531352c2273616665223a66616c73657d2c7b226e616d65223a22676574464c4d41646472657373222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a363737392c2273616665223a747275657d2c7b226e616d65223a226765745669727475616c46555344426f72726f776564222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a2275736572222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a323139362c2273616665223a747275657d2c7b226e616d65223a2267657453222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a323530302c2273616665223a747275657d2c7b226e616d65223a227365745374616b65526577617264526174696f222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d2c7b226e616d65223a22726174696f222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a363738372c2273616665223a66616c73657d2c7b226e616d65223a226765745374616b65526577617264526174696f222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333133392c2273616665223a747275657d2c7b226e616d65223a22736574465553445661756c7441646472657373222c22706172616d6574657273223a5b7b226e616d65223a227661756c74222c2274797065223a2248617368313630227d2c7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a363937342c2273616665223a66616c73657d2c7b226e616d65223a22676574465553445661756c7441646472657373222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a323331322c2273616665223a747275657d2c7b226e616d65223a226765744f776e6572222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a363633302c2273616665223a747275657d2c7b226e616d65223a227365744f776e6572222c22706172616d6574657273223a5b7b226e616d65223a226f776e6572222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373238332c2273616665223a66616c73657d2c7b226e616d65223a22616464417574686f72222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373432382c2273616665223a66616c73657d2c7b226e616d65223a226973417574686f72222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373134382c2273616665223a747275657d2c7b226e616d65223a22676574417574686f72436f756e74222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a373537342c2273616665223a747275657d2c7b226e616d65223a22676574416c6c417574686f72222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a224172726179222c226f6666736574223a373632332c2273616665223a747275657d2c7b226e616d65223a2272656d6f7665417574686f72222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373733382c2273616665223a66616c73657d2c7b226e616d65223a22736574536563757269747946756e64222c22706172616d6574657273223a5b7b226e616d65223a22736563757269747946756e64222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a373932382c2273616665223a66616c73657d2c7b226e616d65223a22676574536563757269747946756e64222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a323131322c2273616665223a747275657d2c7b226e616d65223a22736574466c6f636b73222c22706172616d6574657273223a5b7b226e616d65223a22666c6f636b73222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a383135392c2273616665223a66616c73657d2c7b226e616d65223a22676574466c6f636b73222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a323036312c2273616665223a747275657d2c7b226e616d65223a227365744c656e64436f6e7472616374222c22706172616d6574657273223a5b7b226e616d65223a226c656e64436f6e7472616374222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a383332302c2273616665223a66616c73657d2c7b226e616d65223a226765744c656e64436f6e7472616374222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a2248617368313630222c226f6666736574223a313739322c2273616665223a747275657d2c7b226e616d65223a227365744c50436f6e666967222c22706172616d6574657273223a5b7b226e616d65223a226c7041646472657373222c2274797065223a2248617368313630227d2c7b226e616d65223a2278222c2274797065223a22496e7465676572227d2c7b226e616d65223a2279222c2274797065223a22496e7465676572227d2c7b226e616d65223a227a222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a383530342c2273616665223a66616c73657d2c7b226e616d65223a226765744c50436f6e666967222c22706172616d6574657273223a5b7b226e616d65223a226c7041646472657373222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22416e79222c226f6666736574223a383937332c2273616665223a747275657d2c7b226e616d65223a22757064617465222c22706172616d6574657273223a5b7b226e616d65223a226e656646696c65222c2274797065223a22427974654172726179227d2c7b226e616d65223a226d616e6966657374222c2274797065223a22537472696e67227d2c7b226e616d65223a2264617461222c2274797065223a22416e79227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a383938352c2273616665223a66616c73657d2c7b226e616d65223a226973506175736564222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a363231352c2273616665223a747275657d2c7b226e616d65223a2269735374616b696e67506175736564222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a313636332c2273616665223a747275657d2c7b226e616d65223a226973526566756e64506175736564222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a353636322c2273616665223a747275657d2c7b226e616d65223a227061757365222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393035372c2273616665223a66616c73657d2c7b226e616d65223a22756e5061757365222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393139302c2273616665223a66616c73657d2c7b226e616d65223a2270617573655374616b696e67222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393239312c2273616665223a66616c73657d2c7b226e616d65223a22756e50617573655374616b696e67222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393434342c2273616665223a66616c73657d2c7b226e616d65223a227061757365526566756e64222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393535392c2273616665223a66616c73657d2c7b226e616d65223a22756e5061757365526566756e64222c22706172616d6574657273223a5b7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a393731302c2273616665223a66616c73657d2c7b226e616d65223a22626174636853657450657263656e7461676542794173736574222c22706172616d6574657273223a5b7b226e616d65223a2275736572222c2274797065223a2248617368313630227d2c7b226e616d65223a22617373657473222c2274797065223a224172726179227d2c7b226e616d65223a226e657750657263656e7473222c2274797065223a224172726179227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a393832332c2273616665223a66616c73657d2c7b226e616d65223a2273657450657263656e7461676542794173736574222c22706172616d6574657273223a5b7b226e616d65223a2275736572222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a226e657750657263656e74222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a31303234302c2273616665223a66616c73657d2c7b226e616d65223a2267657450657263656e74616765436f6e666967222c22706172616d6574657273223a5b7b226e616d65223a2275736572222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a224d6170222c226f6666736574223a323339352c2273616665223a747275657d2c7b226e616d65223a2267657450657263656e7461676542794173736574222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a2275736572222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a323337322c2273616665223a747275657d2c7b226e616d65223a22676574486973746f727955696e745350726f66697453756d222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d2c7b226e616d65223a2274696d657374616d70222c2274797065223a22496e7465676572227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a323934302c2273616665223a66616c73657d2c7b226e616d65223a2267657443757272656e74546f74616c416d6f756e74222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333233362c2273616665223a747275657d2c7b226e616d65223a2273657443757272656e745368617265416d6f756e74222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d2c7b226e616d65223a22616d6f756e74222c2274797065223a22496e7465676572227d2c7b226e616d65223a2261646d696e41646472657373222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a31303332342c2273616665223a66616c73657d2c7b226e616d65223a2267657443757272656e745368617265416d6f756e74222c22706172616d6574657273223a5b7b226e616d65223a2261737365744964222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a333033332c2273616665223a747275657d2c7b226e616d65223a226973496e57686974654c697374222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a3437392c2273616665223a747275657d2c7b226e616d65223a226765744173736574436f756e74222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22496e7465676572222c226f6666736574223a31303437392c2273616665223a747275657d2c7b226e616d65223a22676574416c6c4173736574222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a224172726179222c226f6666736574223a353832332c2273616665223a747275657d2c7b226e616d65223a226164644173736574222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a31303438372c2273616665223a66616c73657d2c7b226e616d65223a2272656d6f76654173736574222c22706172616d6574657273223a5b7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a22617574686f72222c2274797065223a2248617368313630227d5d2c2272657475726e74797065223a22426f6f6c65616e222c226f6666736574223a31303635322c2273616665223a66616c73657d2c7b226e616d65223a225f696e697469616c697a65222c22706172616d6574657273223a5b5d2c2272657475726e74797065223a22566f6964222c226f6666736574223a31303832362c2273616665223a66616c73657d5d2c226576656e7473223a5b7b226e616d65223a2255706461746553222c22706172616d6574657273223a5b7b226e616d65223a2270726573222c2274797065223a22496e7465676572227d2c7b226e616d65223a2263757273222c2274797065223a22496e7465676572227d2c7b226e616d65223a2270726553222c2274797065223a22496e7465676572227d2c7b226e616d65223a2263757253222c2274797065223a22496e7465676572227d5d7d2c7b226e616d65223a224f6e53657450657263656e74616765222c22706172616d6574657273223a5b7b226e616d65223a2275736572222c2274797065223a2248617368313630227d2c7b226e616d65223a226173736574222c2274797065223a2248617368313630227d2c7b226e616d65223a226e657750657263656e74222c2274797065223a22496e7465676572227d5d7d5d7d2c227065726d697373696f6e73223a5b7b22636f6e7472616374223a222a222c226d6574686f6473223a222a227d5d2c22747275737473223a5b5d2c226578747261223a7b22417574686f72223a22222c22456d61696c223a22222c224465736372697074696f6e223a22227d7d"; var mBytes = mHex.HexToBytes(); var manifestNew = ContractManifest.Parse(mBytes); Assert.IsTrue(manifestNew.IsValid(Neo.VM.ExecutionEngineLimits.Default, null)); var nHex = "4e4546334e656f2e436f6d70696c65722e43536861727020332e372e342b63373563323961383762396130353632623238373033363138303435363338336437302e2e2e000004c0ef39cee0e4e925c6c2a06a79e1440dd86fceac0b646573657269616c697a650100010fc0ef39cee0e4e925c6c2a06a79e1440dd86fceac0973657269616c697a650100010fc0ef39cee0e4e925c6c2a06a79e1440dd86fceac11626173653538436865636b456e636f64650100010ffda3fa4346ea532a258fc497ddaddb6437c9fdff067570646174650300000f0000fd582b570002797812c011db20342d0c1f4765745374616b696e67416d6f756e743a20696e76616c6420706172616d73e179783455220240e140570402794a70ca711072222d686ace736b4ad92850ca0014b3abaa260711db20220d78240710db2022056b10b3260710db20220e6a9c726a6930d311db202202404ad92850ca0014b3ab4010b34057040279db3078db308b705841f6b46be212c0716869c145538b5041925de831726a736b0b97265cc54a10cf4a0bcf4a10cf4a0bcf4a10cf4a10cf4a34664a1010d04a110c140000000000000000000000000000000000000000d04a1210d04a130c140000000000000000000000000000000000000000d04a1410d04a1510d022086a3700002202408b40db304012c04041f6b46be240c145538b5041925de83140570001400c1400000000000000000000000000000000000000004037000040570002797812c011db2035e7feffff0c1f4765745374616b696e67416d6f756e743a20696e76616c6420706172616d73e17978350cffffff12ce220240570002797812c011db2035aafeffff0c194765744c6974746c65533a20696e76616c6420706172616d73e1797835d5feffff15ce2202405700017811c011db203574feffffaa260711db20220678340eaa26051022077834712202405700017811c011db20354ffeffff0c1c4973496e57686974654c6973743a20696e76616c6420706172616d73e17834052202405701015941f6b46be212c0707868c145538b5041925de8314ad826044510db2111972202404ad826044510db2140c145538b5041925de831405700017834052202405702015a41f6b46be212c0707868c145538b5041925de83171690b9726051022167868c145538b5041925de8314ad826044510db212202405700017811c011db2035a2fdffffaa260711db20220978353cffffffaa26051022077834052202405700017834052202405702015b41f6b46be212c0707868c145538b5041925de83171690b9726051022167868c145538b5041925de8314ad826044510db212202405711034139536e3c703581030000aa0c1f4f6e4e455031375061796d656e743a2049735374616b696e67506175736564e16835b8feffff240710db20220e687812c011db2035fdfcffff240710db202209783575030000aa240710db2022057910b70c1d4f6e4e455031375061796d656e743a20696e76616c6420706172616d73e135620300007169356d0300000c174f6e4e455031375061796d656e743a2054696d656f7574e1107278356003000097274d020000796878358a0300009e4a8145790064b80c1c4f6e4e455031375061796d656e743a20616d6f756e74203c20313030e1790064a273796b9f4a81456b6878357c0300007a746835d603000075796d10cea00064a176796d11cea00064a17707796f079f6e9f770835fc03000077093528040000770a686f093563fcffff770b6f0b15ce6f076f0b12ce9e6f09683542040000770c686f0a3544fcffff770d6f0d15ce6f086f0d12ce9e6f0a683523040000770e686c3526fcffff770f6f0f15ce6e6f0f12ce9e6c6835070400007710696835b90500006f0b13ce0c14000000000000000000000000000000000000000098240710db20221d6f0b11ce0c14000000000000000000000000000000000000000098261c686f0b15ce6f0b12ce6f0b10ce35410800006f0b14ce9e4a72456f0c6a69686f076f0b12ce9e6f0935630800006f07686f0935bf080000104a72456f0d13ce0c14000000000000000000000000000000000000000098240710db20221d6f0d11ce0c14000000000000000000000000000000000000000098261c686f0d15ce6f0d12ce6f0d10ce35c70700006f0d14ce9e4a72456f0e6a69686f086f0d12ce9e6f0a35e90700006f08686f0a3545080000104a72456f0f13ce0c14000000000000000000000000000000000000000098240710db20221d6f0f11ce0c14000000000000000000000000000000000000000098261c686f0f15ce6f0f12ce6f0f10ce354d0700006f0f14ce9e4a72456f106a69686e6f0f12ce9e6c35710700006e686c35cf07000079686c3590080000238a00000068783590faffff736b15ce796b12ce9e7868357402000074696835270400006b13ce0c14000000000000000000000000000000000000000098240710db20221c6b11ce0c140000000000000000000000000000000000000000982620686b15ce6b12ce6b10ce35b40600006b14ce9e4a7245796b12ce9e4a81456c6a6968797835d7060000404139536e3c4034052202405701005c41f6b46be212c0700c1250617573655374616b696e6750726566697868c145538b5041925de8314ad826044510db2111972202405700017841dbfea87497260711db20220710db2022024041dbfea8744041b7c3880301e803a122024041b7c3880340570001785db8260911db202209220710db2022024034052202405701005e41f6b46be212c0700c0c6c656e64436f6e747261637468c145538b5041925de8314ad824094aca001428033a2202405702025f0741f6b46be212c07079db3078db308b716968c145538b5041925de8314ad826044510db212202405702037a10b80c284c5041646a7573746d656e7453746f726167653a20616d6f756e74206d757374206265203e3d2030e15f07419bf667ce12c07079db3078db308b717a6968c145538b5041e63f188440419bf667ce40c145538b5041e63f1884405703015f0841f6b46be212c0707868c145538b5041925de8317169726a0b97aa0c1d4c50436f6e66696753746f726167653a2064617461206973206e756c6ce16937000022024034052202405701005f0941f6b46be212c0700c06666c6f636b7368c145538b5041925de8314ad824094aca001428033a22024034052202405701005f0a41f6b46be212c0700c0c736563757269747946756e6468c145538b5041925de8314ad824094aca001428033a22024057020479783416707a68a068a0a471697b78350c010000692202405706027911c01f0c106765745661756c7442616c616e636573345b41627d5b52701071684a72ca73107422156a6cce75696d14ce9e6d15ce9f4a71456c9c746c6b30eb7978346b726910b52606104a71456a10b80c0e696e76616c696420706172616d73e1696aa00064a122024041627d5b524034052202405701005f0b41f6b46be212c0700c0f465553445661756c7450726566697868c145538b5041925de8314ad824094aca001428033a220240570102793413706878cb26096878ce22072205102202405700017834052202405703015f0c41f6b46be212c0707868c145538b5041925de8317169726a0b972605c8220669370000220240c840cb40ce40a4405702037834297068799f7a9e7169783460c24a79cf4a7acf4a68cf4a69cf0c07557064617465534195016f61405700017834052202405702015f0d41f6b46be212c0707868c145538b5041925de83171690b9726051022167868c145538b5041925de8314ad826044510db2122024057000279783403405701025f0d419bf667ce12c070797868c145538b5041e63f188440c145538b5041e63f18844057070279783455783576010000783597010000706835fa010000a00064a17168699f7278354c02000073783565ffffff74107510766b10982608696ba14a75456c109826086a6ca14a76456d7835480200006e78356302000040570502783441706879b82606223822367835acf7ffff716979689fa0726a687834759e7978344d7835fef7ffff736b79689fa0746c687835b70000009e7978358c000000405700017834052202405701015f0e41f6b46be212c0707868c145538b5041925de8314ad826044510db212202405702035f0f419bf667ce12c07078db3079db308b717a6968c145538b5041e63f188440570002797834052202405702025f0f41f6b46be212c07078db3079db308b716968c145538b5041925de8314ad826044510db212202405702035f10419bf667ce12c07078db3079db308b717a6968c145538b5041e63f188440570002797834052202405702025f1041f6b46be212c07078db3079db308b716968c145538b5041925de8314ad826044510db212202405700013524fbffff783403405701025f0e419bf667ce12c070797868c145538b5041e63f1884405700017811c011db203555f4ffff0c2447657443757272656e745368617265416d6f756e743a20696e76616c6420706172616d73e17835d0f5ffff26077834082205102202405701015f1141f6b46be212c0707868c145538b5041925de8314ad826044510db2122024034052202405702005f1241f6b46be212c0700c105374616b65526577617264526174696f68c145538b5041925de83171690b972606001422270c105374616b65526577617264526174696f68c145538b5041925de8314ad826044510db2122024057030141dbfea874706811c07169150c0962616c616e63654f667841627d5b52726a22024057000279783403405701025a419bf667ce12c070797868c145538b5041e63f18844057000279783403405701025b419bf667ce12c070797868c145538b5041e63f188440570604787b3511feffff7035c1f9ffff7b3505feffff7169689f79a072787b3550feffff7335a7f9ffff7b3544feffff746c6b9f7aa0756d6a9e2202405703067adb3078db308b7058419bf667ce12c071c54a10cf4a0bcf4a10cf4a0bcf4a10cf4a10cf4a35b5f3ffff4a107bd04a1178d04a1279d04a137ad04a147cd04a157dd0726a3701006869c145538b5041e63f188440c145538b5041e63f188440370100405701037a10b80c2f46726f7a656e42616c616e636553746f72616765746f726167653a20616d6f756e74206d757374206265203e3d2030e17978340b70687a9e7978342f405702025f1341f6b46be212c07079db3078db308b716968c145538b5041925de8314ad826044510db212202405702037a10b80c2f46726f7a656e42616c616e636553746f72616765746f726167653a20616d6f756e74206d757374206265203e3d2030e15f13419bf667ce12c07079db3078db308b717a6968c145538b5041e63f1884405701037a10b70c324c505374616b6546726f6d4c656e64436f6e747261637453746f726167653a20616d6f756e74206d757374206265203e2030e17978340b70687a9e7978342f405702025f1441f6b46be212c07079db3078db308b716968c145538b5041925de8314ad826044510db212202405702035f14419bf667ce12c07079db3078db308b717a6968c145538b5041e63f188440570002797834ac220240570002797835d6feffff2202405700027978350cf8ffff2202405715035f15d826210b0b12c04a5f16cf0c0952656c656173654c5001ff00124d35a703000067155f1535cf030000359ef7ffff70797812c011db2035c8f0ffff0c1852656c656173654c503a20696e76616c6420706172616d73e17a10b70c1d52656c656173654c503a20616d6f756e74206d757374206265203e2030e16841f827ec8c0c1a52656c656173654c503a20696e76616c6964207769746e657373e1797835eafeffff7179783559f7ffff727a696a9eb60c3e52656c656173654c503a20616d6f756e74203e206c705374616b6546726f6d4c656e64436f6e7472616374202b2061646a7573746d656e74416d6f756e74e17a737a69b526277a0064a2109726057a220b7a0064a1119e0064a04a82457a4a73457a7978351d030000221c694a8245696a9e4a73451079783500f7ffff7a79783501030000359cf7ffff7435c9f7ffff7541dbfea87476793542f7ffff77077a6f0710cea00064a177087a6f0711cea00064a177097a6f099f6f089f770a796c35d9efffff770b6f0b15ce6f0b12ce6f099f6c7935b9f7ffff770c796d35bcefffff770d6f0d15ce6f0d12ce6f0a9f6d79359cf7ffff770e7978359fefffff770f6f0f15ce6f0f12ce6f089f7879357ff7ffff771035d8f5ffff77116f11793529f9ffff1077126f0b13ce0c14000000000000000000000000000000000000000098240710db20221d6f0b11ce0c14000000000000000000000000000000000000000098261d796f0b15ce6f0b12ce6f0b10ce35aefbffff6f0b14ce9e4a7712456f0c6f126f11796f0b12ce6f099f6c35cefbffff6f09796c356c020000104a7712456f0d13ce0c14000000000000000000000000000000000000000098240710db20221d6f0d11ce0c14000000000000000000000000000000000000000098261d796f0d15ce6f0d12ce6f0d10ce3532fbffff6f0d14ce9e4a7712456f0e6f126f11796f0d12ce6f0a9f6d3552fbffff6f0a796d35f0010000104a7712456f0f13ce0c14000000000000000000000000000000000000000098240710db20221d6f0f11ce0c14000000000000000000000000000000000000000098261d796f0f15ce6f0f12ce6f0f10ce35b6faffff6f0f14ce9e4a7712456f106f126f11796f0f12ce6f089f7835d6faffff6f08797835740100000b6b686e14c077133b3f006f131f0c087472616e736665727941627d5b5277146f140c1c52656c656173654c503a207472616e73666572206661696c65642c20db30db28e13d2c771410db200c1c52656c656173654c503a207472616e73666572206661696c65642c20db30db28e13d025f15357f0100004057000378341f7a4a781151d045419bf667ce7911884e1051d05012c04a781051d045405700014011884e1051d05012c0405701017811ce7810cec145538b5041925de83170680b970c0f416c726561647920656e7465726564e1117811ce7810cec145538b5041e63f18844041f827ec8c405701037a10b70c324c505374616b6546726f6d4c656e64436f6e747261637453746f726167653a20616d6f756e74206d757374206265203e2030e179783517fbffff70687ab80c304c505374616b6546726f6d4c656e64436f6e747261637453746f726167653a2062616c616e6365203c20616d6f756e74e1687a9f79783502fbffff405701037a10b80c2f46726f7a656e42616c616e636553746f72616765746f726167653a20616d6f756e74206d757374206265203e3d2030e1797835caf9ffff70687ab80c2c46726f7a656e42616c616e636553746f72616765746f726167653a2062616c616e6365203c20616d6f756e74e1687a9f797835b9f9ffff40db2840db30405700017811ce7810cec145538b50412f58c5ed40c145538b50412f58c5ed40570803412d510830706810ce3542010000aa0c0a52652d656e7465726564e16810ce35500100003564010000260711db2022097841f827ec8caa26126810ce358901000010db20230001000035faf1ffff717a78359eebffff727a783506f9ffff736a12ce6b9f79b5260711db2022086a11ce7897aa260711db2022086a13ce7a97aa26126810ce354001000010db2023b70000001088797841dbfea87414c0743b39006c1f0c087472616e736665727a41627d5b52756d0c19526566756e643a207472616e73666572206661696c65642c20db30db28e13d287510db200c19526566756e643a207472616e73666572206661696c65642c20db30db28e13d026a12ce799f756a15ce6d787a35daf2ffff76697a358df4ffff7a6a15ce6a12ce6a10ce3557f7ffff6a14ce9e77076e6f07697a6d783582f7ffff6810ce358b00000011db20220240412d51083040570201785f17419bf667ce12c0c145538b5041925de831706871690b97aa22024012c04057000111785f17419bf667ce12c0c145538b5041e63f18844034052202405701005f1841f6b46be212c0700c115061757365526566756e6450726566697868c145538b5041925de8314ad826044510db2111972202405701015f17419bf667ce12c0707868c145538b50412f58c5ed40570501412d510830706810ce3560ffffffaa0c0a52652d656e7465726564e16810ce356effffff34234a71ca7210732211696bce746c7835c4000000456b9c736b6a30ef6810ce349f4057010034097068343e2202405703005941f6b46be212c0701068c14541df30b89a71107269419c08ed9c26096a4a9c724522f36a220240c14541df30b89a40419c08ed9c405704015941f6b46be212c0701368c14541df30b89a71784a10030000000001000000bb24033ac40072107369419c08ed9c26316941f354bf1d4a6a6b51d0456b4a9c4a102e04220e4a03ffffffff00000000320c03ffffffff0000000091734522cb6a22024041f354bf1d4057060279783510e9ffff706811ce7897aa260a10db2023c0000000797812c011db2035a5e8ffff0c17436c61696d464c4d3a20696e76616c6420706172616d73e141dbfea874713522efffff72358a000000260711db2022097841f827ec8caa260711db2022096a35a6000000aa260710db2022636815ce6812ce7879358cf0ffff736a79353ff2ffff796815ce6812ce6810ce3509f5ffff746814ce6c9e756b106a6813ce6812ce783530f5ffff6d1098261f696d78346d0c15436c61696d464c4d3a206d696e74206661696c6564e111db2022024034052202405701005f1941f6b46be212c0700c0b506175736550726566697868c145538b5041925de8314ad826044510db211197220240570001785f1ab8260911db202209220710db2022024057020379787a13c070341471681f0c046d696e746941627d5b522202405701005f1b41f6b46be212c0700c09464c4d50726566697868c145538b5041925de8314ad824094aca001428033a220240570202412d510830706810ce35f3fcffffaa0c0a52652d656e7465726564e16810ce3501fdffff79783565feffff716810ce3547fdffff69220240570302797812c011db203510e7ffff0c17436865636b464c4d3a20696e76616c6420706172616d73e17978353de7ffff70358bedffff7935e0f0ffff796815ce6812ce6810ce35aaf3ffff716814ce699e726a220240570001347041f827ec8c0c22536574464c4d416464726573733a20436865636b5769746e657373206661696c6564e1784ad92850ca0014b3ab240710db2022067810b3aa0c1d536574464c4d416464726573733a20616464726573732076616c69642ddb30788bdb28e178346d11db2022024034052202405703005f1c41f6b46be212c0700c056f776e657268c145538b5041925de831db307169726a0b9726085f1d2221221f69ca00149826085f1d2214221269db284ad824094aca001428033a220240db3040db284ad824094aca001428033a408b405701015f1b419bf667ce12c070780c09464c4d50726566697868c145538b5041e63f188440c145538b5041e63f1884403536feffff2202405700023560ffffff78970c225365745374616b65526577617264526174696f3a20696e76616c6964206f776e6572e17841f827ec8c0c285365745374616b65526577617264526174696f3a20436865636b5769746e657373206661696c6564e17910b8240710db202206790064b60c1a5365745374616b65526577617264526174696f3a20726174696fe1793403405701015f12419bf667ce12c070780c105374616b65526577617264526174696f68c145538b5041e63f1884405700027941f827ec8c0c31536574465553445661756c74416464726573733a20436865636b5769746e657373206661696c65642c20617574686f722ddb30798bdb28e179346a0c20536574465553445661756c74416464726573733a206e6f7420617574686f722ddb30798bdb28e1784ad92850ca0014b3ab0c23536574465553445661756c74416464726573733a20616464726573732076616c69642ddb30788bdb28e178346411db202202405700017811c011db203542e4ffff0c194973417574686f723a20696e76616c696420617574686f722ddb30788bdb28e17834052202405701015f1e41f6b46be212c0707868c145538b5041925de8314ad826044510db2111972202405701015f0b419bf667ce12c070780c0f465553445661756c7450726566697868c145538b5041e63f1884405700013570fdffff41f827ec8c0c255365744f776e65723a20436865636b5769746e657373206661696c65642c206f776e65722ddb30788bdb28e17811c011db203583e3ffff0c185365744f776e65723a20696e76616c6964206f776e65722ddb30788bdb28e178340811db202202405701015f1c419bf667ce12c070780c056f776e657268c145538b5041e63f18844057000135dffcffff41f827ec8c0c26416464417574686f723a20436865636b5769746e657373206661696c65642c206f776e65722ddb3035abfcffff8bdb28e17811c011db2035ede2ffff0c1a416464417574686f723a20696e76616c696420617574686f722ddb30788bdb28e178340811db202202405701015f1e419bf667ce12c070117868c145538b5041e63f18844034052202405703005f1e41f6b46be212c0701068c14541df30b89a71107269419c08ed9c26096a4a9c724522f36a22024057010034cc706834052202405704015f1e41f6b46be212c0701368c14541df30b89a71784a10030000000001000000bb24033ac40072107369419c08ed9c26316941f354bf1d4a6a6b51d0456b4a9c4a102e04220e4a03ffffffff00000000320c03ffffffff0000000091734522cb6a22024057000135a9fbffff41f827ec8c0c2952656d6f7665417574686f723a20436865636b5769746e657373206661696c65642c206f776e65722ddb303572fbffff8bdb28e17811c011db2035b4e1ffff0c1d52656d6f7665417574686f723a20696e76616c696420617574686f722ddb30788bdb28e1783573fdffff0c1852656d6f7665417574686f723a206e6f7420617574686f72db30788bdb28e178340811db202202405701015f1e419bf667ce12c0707868c145538b50412f58c5ed4057000135ebfaffff41f827ec8c0c2d536574536563757269747946756e643a20436865636b5769746e657373206661696c65642c206f776e65723a2035b2faffff344a8bdb28e17811c011db2035f2e0ffff0c27536574536563757269747946756e643a20696e76616c696420736563757269747946756e643a2078340f8bdb28e178343c11db20220240570001414c4992dc78340522024057010211884a1079d07068788b4a704568db2837020022024037020040db2840414c4992dc405701015f0a419bf667ce12c070780c0c736563757269747946756e6468c145538b5041e63f1884405700013504faffff41f827ec8c0c27536574466c6f636b733a20436865636b5769746e657373206661696c65642c206f776e65723a2035d1f9ffff3569ffffff8bdb28e17811c011db20350ee0ffff0c1b536574466c6f636b733a20696e76616c696420666c6f636b733a20783537ffffff8bdb28e178340811db202202405701015f09419bf667ce12c070780c06666c6f636b7368c145538b5041e63f1884405700013563f9ffff41f827ec8c0c2d5365744c656e64436f6e74726163743a20436865636b5769746e657373206661696c65642c206f776e65723a20352af9ffff35c2feffff8bdb28e17811c011db203567dfffff0c275365744c656e64436f6e74726163743a20696e76616c6964206c656e64436f6e74726163743a20783584feffff8bdb28e178340811db202202405701015e419bf667ce12c070780c0c6c656e64436f6e747261637468c145538b5041e63f18844057000435abf8ffff41f827ec8c0c295365744c50436f6e6669673a20436865636b5769746e657373206661696c65642c206f776e65723a203576f8ffff350efeffff8bdb28e17811c011db2035b3deffff0c205365744c50436f6e6669673a20696e76616c6964206c70416464726573733a207835d7fdffff8bdb28e17b7a7978340811db202202405702047910b8240710db2022057a10b8240710db2022057b10b80c5c4c50436f6e66696753746f726167653a2062656e69666163746f7250657263656e746167652c20666c6f636b7350657263656e746167652c20736563757269747946756e6450657263656e74616765206d757374206265203e3d2030e1797a9e7b9e0064970c584c50436f6e66696753746f726167653a2062656e69666163746f7250657263656e74616765202b20666c6f636b7350657263656e74616765202b20736563757269747946756e6450657263656e7461676520213d20313030e15f08419bf667ce12c0707868c145538b5041925de83171690b970c294c50436f6e66696753746f726167653a206c704164647265737320616c726561647920657869737473e110101013c04a34204a1079d04a117ad04a127bd071693701007868c145538b5041e63f188440570001405700017835b5e4ffff22024057000335caf6ffff41f827ec8c0c235570646174653a20436865636b5769746e657373206661696c65642c206f776e65722ddb303599f6ffff8bdb28e17a797837030040370300405700017841f827ec8c0c2350617573653a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e1783555f8ffff0c1150617573653a206e6f7420617574686f72db30788bdb28e111340811db202202405701015f19419bf667ce12c070780c0b506175736550726566697868c145538b5041e63f1884405700017841f827ec8c0c25556e70617573653a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e17835cef7ffff0c13556e70617573653a206e6f7420617574686f72db30788bdb28e110357fffffff11db202202405700017841f827ec8c0c2a50617573655374616b696e673a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e1783564f7ffff0c1850617573655374616b696e673a206e6f7420617574686f72db30788bdb28e111340811db202202405701015c419bf667ce12c070780c1250617573655374616b696e6750726566697868c145538b5041e63f1884405700017841f827ec8c0c2c556e50617573655374616b696e673a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e17835c9f6ffff0c1a556e50617573655374616b696e673a206e6f7420617574686f72db30788bdb28e110356bffffff11db202202405700017841f827ec8c0c295061757365526566756e643a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e1783559f6ffff0c175061757365526566756e643a206e6f7420617574686f72db30788bdb28e111340811db202202405701015f18419bf667ce12c070780c115061757365526566756e6450726566697868c145538b5041e63f1884405700017841f827ec8c0c2b556e5061757365526566756e643a20436865636b5769746e657373206661696c65642c20617574686f722ddb30788bdb28e17835c0f5ffff0c19556e5061757365526566756e643a206e6f7420617574686f72db30788bdb28e110356dffffff11db202202405702037841f827ec8c0c114e6f20617574686f72697a6174696f6e2ee179ca7aca970c0e706172616d7320696e76616c6964e110701071222f7a69ce7969ce78345a4a7045694a9c4a102e04220e4a03ffffffff00000000320c03ffffffff000000009171456979cab524cf680064b60c2053657450657263656e74616765436f6e6669673a206f7574206f662031303025e1783582efffff405704037a10b80c0f70657263656e7420696e76616c6964e1790c14000000000000000000000000000000000000000098240710db2022087935aedaffff0c0d617373657420696e76616c6964e1783514e2ffff706879cb26076879ce22031071680c140000000000000000000000000000000000000000cb261c680c140000000000000000000000000000000000000000ce220310726a699f7a9e736b4a0c1400000000000000000000000000000000000000006853d0457a4a796853d04568783428c24a78cf4a79cf4a7acf0c0f4f6e53657450657263656e746167654195016f616b220240d0405701025f0c419bf667ce12c070793701007868c145538b5041e63f1884405701037841f827ec8c0c114e6f20617574686f72697a6174696f6e2ee17a797835d9feffff70680064b60c2053657450657263656e74616765436f6e6669673a206f7574206f662031303025e1783527eeffff405700037a7812c011db2035d9d7ffff0c2453657443757272656e745368617265416d6f756e743a20696e76616c6420706172616d73e1783554d9ffff240710db2022087a3554f3ffff240710db2022087a41f827ec8c26247910b82618797834213524deffff783579e1ffff11db202210220710db202209220710db202202405701025f11419bf667ce12c070797868c145538b5041e63f18844035dcedffff220240570002797812c011db203536d7ffff0c1741646441737365743a20696e76616c6420706172616d73e17941f827ec8c0c2641646441737365743a20436865636b5769746e657373206661696c65642c20617574686f722ddb30798bdb28e1793596f2ffff0c1541646441737365743a206e6f7420617574686f722ddb30798bdb28e178340811db2022024057010159419bf667ce12c070117868c145538b5041e63f1884405700027941f827ec8c0c2952656d6f766541737365743a20436865636b5769746e657373206661696c65642c20617574686f722ddb30798bdb28e1793514f2ffff0c1852656d6f766541737365743a206e6f7420617574686f722ddb30798bdb28e17835e0d7ffff0c1b52656d6f766541737365743a206e6f742077686974656c6973742ddb30788bdb28e178340811db2022024057010159419bf667ce12c0707868c145538b50412f58c5ed4056200c02a001db30600c020401db30610c020102db30620c02a301db30630c020901db306403000064a7b3b6e00d671f0220116f5f6502d06d715f671a0c146699d5f148a50636adf041ca692c07407bcb03fa671d0c02aa01db30660c02aa05db3067070c02aa02db3067080c02a901db3067090c02a801db30670a0c020702db30670b0c02a501db30670c0c02a601db30670d0c020101db30670e0c020201db30670f0c02a401db3067100c020601db3067110c02a701db3067120c02aa03db3067130c02aa04db3067140c07656e746572656467170c020902db3067180c020903db3067190c020701db30671b0c020302db30671c0c020301db30671e0a2be9ffff0adee7ffff12c0671640848ef6c7"; var nBytes = nHex.HexToBytes(); var ne = nBytes.AsSerializable<NefFile>(); Assert.IsFalse(ne == null); } ``` So I suspect that the root reason is a call to StdLib's serialize/deserialize methods that are used by this contract (it's reflected in the `tokens` section of the NEF file): ``` "tokens" : [ { "callflags" : "All", "hash" : "0xacce6fd80d44e1796aa0c2c625e9e4e0ce39efc0", "hasreturnvalue" : true, "method" : "deserialize", "paramcount" : 1 }, { "callflags" : "All", "hash" : "0xacce6fd80d44e1796aa0c2c625e9e4e0ce39efc0", "hasreturnvalue" : true, "method" : "serialize", "paramcount" : 1 }, { "callflags" : "All", "hash" : "0xacce6fd80d44e1796aa0c2c625e9e4e0ce39efc0", "hasreturnvalue" : true, "method" : "base58CheckEncode", "paramcount" : 1 }, { "callflags" : "All", "hash" : "0xfffdc93764dbaddd97c48f252a53ea4643faa3fd", "hasreturnvalue" : false, "method" : "update", "paramcount" : 3 } ] ``` The `update` method itself is not that simple, it has a set of nested calls: ``` 8985 INITSLOT 0 local, 3 arg 8988 CALL_L 6630 (-2358/caf6ffff) 8993 SYSCALL System.Runtime.CheckWitness (f827ec8c) 8998 PUSHDATA1 5570646174653a20436865636b5769746e657373206661696c65642c206f776e65722d ("Update: CheckWitness failed, owner-") 9035 CONVERT Buffer (30) 9037 CALL_L 6630 (-2407/99f6ffff) 9042 CAT 9043 CONVERT ByteString (28) 9045 ASSERTMSG 9046 LDARG2 9047 LDARG1 9048 LDARG0 9049 CALLT 0300 ("\x03\x00") 9052 RET 9053 CALLT 0300 ("\x03\x00") 9056 RET ``` There are CALLT instructions calling `update` method of native Management in the end, and the most suspicions one is `CALL_L 6630` instruction that calls the following method: ``` 6630 CALL 6635 (5/05) 6632 JMP 6634 (2/02) 6634 RET 6635 INITSLOT 3 local, 0 arg 6638 LDSFLD 28 (1c) 6640 SYSCALL System.Storage.GetReadOnlyContext (f6b46be2) 6645 PUSH2 6646 PACK 6647 STLOC0 6648 PUSHDATA1 6f776e6572 ("owner") 6655 LDLOC0 6656 UNPACK 6657 DROP 6658 REVERSE3 6659 CAT 6660 SWAP 6661 SYSCALL System.Storage.Get (925de831) 6666 CONVERT Buffer (30) 6668 STLOC1 6669 LDLOC1 6670 STLOC2 6671 LDLOC2 6672 PUSHNULL 6673 EQUAL 6674 JMPIFNOT 6682 (8/08) 6676 LDSFLD 29 (1d) 6678 JMP 6711 (33/21) 6680 JMP 6711 (31/1f) 6682 LDLOC1 6683 SIZE 6684 PUSHINT8 20 (14) 6686 NOTEQUAL 6687 JMPIFNOT 6695 (8/08) 6689 LDSFLD 29 (1d) 6691 JMP 6711 (20/14) 6693 JMP 6711 (18/12) 6695 LDLOC1 6696 CONVERT ByteString (28) 6698 DUP 6699 ISNULL 6700 JMPIF 6709 (9/09) 6702 DUP 6703 SIZE 6704 PUSHINT8 20 (14) 6706 JMPEQ 6709 (3/03) 6708 THROW 6709 JMP 6711 (2/02) 6711 RET 6712 CONVERT Buffer (30) 6714 RET 6715 CONVERT ByteString (28) 6717 DUP 6718 ISNULL 6719 JMPIF 6728 (9/09) 6721 DUP 6722 SIZE 6723 PUSHINT8 20 (14) 6725 JMPEQ 6728 (3/03) 6727 THROW 6728 RET 6729 CAT 6730 RET ``` So I'm still investigating the contract code and C# node code.
Author
Owner

@AnnaShaleva commented on GitHub (Aug 27, 2025):

The problem is in ASSERTMSG instruction handler at 9032 offset. In particular, the problem is in the way how the exception message is converted to a byteslice(Go)/string(C#) at this line:
nspcc-dev/neo-go@875b15b459/pkg/vm/vm.go (L1650)
The reference line is:
neo-project/neo@9b9be47357/src/Neo.VM/JumpTable/JumpTable.Types.cs (L92)

@AnnaShaleva commented on GitHub (Aug 27, 2025): The problem is in `ASSERTMSG` instruction handler at `9032` offset. In particular, the problem is in the way how the exception message is converted to a byteslice(Go)/string(C#) at this line: https://github.com/nspcc-dev/neo-go/blob/875b15b4598c68cefb1f26a8207fe3f88dd723fb/pkg/vm/vm.go#L1650 The reference line is: https://github.com/neo-project/neo/blob/9b9be47357e9065de524005755212ed54c3f6a11/src/Neo.VM/JumpTable/JumpTable.Types.cs#L92
Author
Owner

@AnnaShaleva commented on GitHub (Aug 27, 2025):

C# node enforces strict UTF-8 check for exception message whereas Go node uses raw bytes:
neo-project/neo@9b9be47357/src/Neo.VM/Types/StackItem.cs (L180-L183)

@AnnaShaleva commented on GitHub (Aug 27, 2025): C# node enforces strict UTF-8 check for exception message whereas Go node uses raw bytes: https://github.com/neo-project/neo/blob/9b9be47357e9065de524005755212ed54c3f6a11/src/Neo.VM/Types/StackItem.cs#L180-L183
Author
Owner

@AnnaShaleva commented on GitHub (Aug 27, 2025):

The message itself is a ByteString stackitem with the following value (in hex, raw byte and string representation):

5570646174653a20436865636b5769746e657373206661696c65642c206f776e65722d11b224c06ccbb449f7e645a66a2fd9e3a5e88862
[85 112 100 97 116 101 58 32 67 104 101 99 107 87 105 116 110 101 115 115 32 102 97 105 108 101 100 44 32 111 119 110 101 114 45 17 178 36 192 108 203 180 73 247 230 69 166 106 47 217 227 165 232 136 98]
Update: CheckWitness failed, owner-�$�l˴I��E�j/���b

So it's not a valid UTF-8 string due to raw Uint160 bytes placed in the end of this message, C# node behaviour is correct.

@AnnaShaleva commented on GitHub (Aug 27, 2025): The message itself is a `ByteString` stackitem with the following value (in hex, raw byte and string representation): ``` 5570646174653a20436865636b5769746e657373206661696c65642c206f776e65722d11b224c06ccbb449f7e645a66a2fd9e3a5e88862 [85 112 100 97 116 101 58 32 67 104 101 99 107 87 105 116 110 101 115 115 32 102 97 105 108 101 100 44 32 111 119 110 101 114 45 17 178 36 192 108 203 180 73 247 230 69 166 106 47 217 227 165 232 136 98] Update: CheckWitness failed, owner-�$�l˴I��E�j/���b ``` So it's not a valid UTF-8 string due to raw Uint160 bytes placed in the end of this message, C# node behaviour is correct.
Author
Owner

@AnnaShaleva commented on GitHub (Aug 27, 2025):

Just for the record, the replacement that was used in the contract as a workaround to avoid FAULTed update execution:

public static void Update(ByteString nefFile, string manifest, object data)
{
-    ExecutionEngine.Assert(Runtime.CheckWitness(GetOwner()), "Update: CheckWitness failed, owner-".ToByteArray().Concat(GetOwner()).ToByteString());
+    ExecutionEngine.Assert(Runtime.CheckWitness(GetOwner()), "Update: CheckWitness failed");
    ContractManagement.Update(nefFile, manifest, data);
}
@AnnaShaleva commented on GitHub (Aug 27, 2025): Just for the record, the replacement that was used in the contract as a workaround to avoid FAULTed `update` execution: ```diff public static void Update(ByteString nefFile, string manifest, object data) { - ExecutionEngine.Assert(Runtime.CheckWitness(GetOwner()), "Update: CheckWitness failed, owner-".ToByteArray().Concat(GetOwner()).ToByteString()); + ExecutionEngine.Assert(Runtime.CheckWitness(GetOwner()), "Update: CheckWitness failed"); ContractManagement.Update(nefFile, manifest, data); } ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nspcc-dev/neo-go#1548
No description provided.