tx · 7gwCjBecAVxf5RQScBGuezGiTAQqhWd4LExtpjx4fPcS

3N8AfuCywsTjJgFTnEzY6AVQwaB84sQTKRE:  -0.03700000 Waves

2023.05.15 12:58 [2578921] smart account 3N8AfuCywsTjJgFTnEzY6AVQwaB84sQTKRE > SELF 0.00000000 Waves

{ "type": 13, "id": "7gwCjBecAVxf5RQScBGuezGiTAQqhWd4LExtpjx4fPcS", "fee": 3700000, "feeAssetId": null, "timestamp": 1684144721162, "version": 2, "chainId": 84, "sender": "3N8AfuCywsTjJgFTnEzY6AVQwaB84sQTKRE", "senderPublicKey": "2xKeXbdM9foVwuYZuNRHgp8YW7g3LowcCAg4pp6yu2Es", "proofs": [ "4yXD9T9x1Pt8bSbWPDYFcjq6yD6a9muH1mVkAB8issp8pRpJYtmvaoboCm7MdTetLCJerzninNXfYqSnsRtCcAYr" ], "script": "base64:BgIPCAISAwoBCBIGCgQEBAQIDQANa19pbml0aWFsaXplZAINa19pbml0aWFsaXplZAAUa19jb29yZGluYXRvckFkZHJlc3MCFGtfY29vcmRpbmF0b3JBZGRyZXNzABFrX3N0YWtpbmdfYWRkcmVzcwIRa19zdGFraW5nX2FkZHJlc3MAEWtfZmFybWluZ19hZGRyZXNzAhFrX2Zhcm1pbmdfYWRkcmVzcwAPa192YXVsdF9hZGRyZXNzAg9rX3ZhdWx0X2FkZHJlc3MAD2tfYWRtaW5fYWRkcmVzcwIPa19hZG1pbl9hZGRyZXNzAQlzdHJUb0xpc3QBBF9zdHIDCQAAAgUEX3N0cgIABQNuaWwJALUJAgUEX3N0cgIBLAELY29vcmRpbmF0b3IACQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIFBHRoaXMFFGtfY29vcmRpbmF0b3JBZGRyZXNzAhZDb29yZGluYXRvciBub3Qgc2V0IEhDAhtDb29yZGluYXRvciBhZGRyZXNzIGludmFsaWQBDGFkbWluQWRkcmVzcwAJAKYIAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIJAQtjb29yZGluYXRvcgAFD2tfYWRtaW5fYWRkcmVzcwIVQWRtaW4gYWRkcmVzcyBub3Qgc2V0AQ5zdGFraW5nQWRkcmVzcwAJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkApggBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgkBC2Nvb3JkaW5hdG9yAAURa19zdGFraW5nX2FkZHJlc3MCF1N0YWtpbmcgYWRkcmVzcyBub3Qgc2V0AhdTdGFraW5nIGFkZHJlc3MgaW52YWxpZAEOZmFybWluZ0FkZHJlc3MACQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIJAQtjb29yZGluYXRvcgAFEWtfZmFybWluZ19hZGRyZXNzAhdGYXJtaW5nIGFkZHJlc3Mgbm90IHNldAIXRmFybWluZyBhZGRyZXNzIGludmFsaWQBDHZhdWx0QWRkcmVzcwAJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkApggBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgkBC2Nvb3JkaW5hdG9yAAUPa192YXVsdF9hZGRyZXNzAhVWYXVsdCBhZGRyZXNzIG5vdCBzZXQCFVZhdWx0IGFkZHJlc3MgaW52YWxpZAELaW5pdGlhbGl6ZWQACQELdmFsdWVPckVsc2UCCQCbCAIFBHRoaXMFDWtfaW5pdGlhbGl6ZWQHAgFpAQppbml0aWFsaXplAQxfY29vcmRpbmF0b3IDAwkBC2luaXRpYWxpemVkAAYJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkAAgECFFVuYWJsZSB0byBpbml0aWFsaXplCQDMCAIJAQtTdHJpbmdFbnRyeQIFFGtfY29vcmRpbmF0b3JBZGRyZXNzCQClCAEJARFAZXh0ck5hdGl2ZSgxMDYyKQEFDF9jb29yZGluYXRvcgkAzAgCCQEMQm9vbGVhbkVudHJ5AgUNa19pbml0aWFsaXplZAYFA25pbAFpARNwZXJmb3JtSG91c2VrZWVwaW5nBAZfdmF1bHQIX2Zhcm1pbmcIX3N0YWtpbmcLX3BheUZ1bmRpbmcEE2RvQWNrUmV3YXJkc1N0YWtpbmcDBQhfc3Rha2luZwkA/AcECQEOc3Rha2luZ0FkZHJlc3MAAgphY2tSZXdhcmRzBQNuaWwFA25pbAUDbmlsAwkAAAIFE2RvQWNrUmV3YXJkc1N0YWtpbmcFE2RvQWNrUmV3YXJkc1N0YWtpbmcEE2RvQWNrUmV3YXJkc0Zhcm1pbmcDBQhfZmFybWluZwkA/AcECQEOZmFybWluZ0FkZHJlc3MAAgphY2tSZXdhcmRzBQNuaWwFA25pbAUDbmlsAwkAAAIFE2RvQWNrUmV3YXJkc0Zhcm1pbmcFE2RvQWNrUmV3YXJkc0Zhcm1pbmcEEWRvQWNrUmV3YXJkc1ZhdWx0AwUGX3ZhdWx0CQD8BwQJAQx2YXVsdEFkZHJlc3MAAgphY2tSZXdhcmRzBQNuaWwFA25pbAUDbmlsAwkAAAIFEWRvQWNrUmV3YXJkc1ZhdWx0BRFkb0Fja1Jld2FyZHNWYXVsdAQEYW1tcwkBCXN0clRvTGlzdAEFC19wYXlGdW5kaW5nCgEHY29tcHV0ZQIEX2FjYwhfYW1tRGF0YQQFcGFydHMJALUJAgUIX2FtbURhdGECAUAEA2FtbQkAkQMCBQVwYXJ0cwAABAtwcmljZVVwZGF0ZQMJAGYCCQCQAwEFBXBhcnRzAAEJAJEDAgUFcGFydHMAAQIABAxkb1BheUZ1bmRpbmcJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQUDYW1tAgpwYXlGdW5kaW5nCQDMCAIFC3ByaWNlVXBkYXRlBQNuaWwFA25pbAMJAAACBQxkb1BheUZ1bmRpbmcFDGRvUGF5RnVuZGluZwUEX2FjYwkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgoAAiRsBQRhbW1zCgACJHMJAJADAQUCJGwKAAUkYWNjMAUDbmlsCgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQdjb21wdXRlAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhRMaXN0IHNpemUgZXhjZWVkcyAyMAkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BAnR4AQZ2ZXJpZnkABA5jb29yZGluYXRvclN0cgkAnQgCBQR0aGlzBRRrX2Nvb3JkaW5hdG9yQWRkcmVzcwMJAQlpc0RlZmluZWQBBQ5jb29yZGluYXRvclN0cgQFYWRtaW4JAJ0IAgkBEUBleHRyTmF0aXZlKDEwNjIpAQkBBXZhbHVlAQUOY29vcmRpbmF0b3JTdHIFD2tfYWRtaW5fYWRkcmVzcwMJAQlpc0RlZmluZWQBBQVhZG1pbgkBC3ZhbHVlT3JFbHNlAgkAmwgCCQERQGV4dHJOYXRpdmUoMTA2MikBCQEFdmFsdWUBBQVhZG1pbgkArAICCQCsAgIJAKwCAgIHc3RhdHVzXwkApQgBBQR0aGlzAgFfCQDYBAEIBQJ0eAJpZAcJAAIBAi51bmFibGUgdG8gdmVyaWZ5OiBhZG1pbiBub3Qgc2V0IGluIGNvb3JkaW5hdG9yCQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V5xvfUZg==", "height": 2578921, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 3bxs3NaozKasSL6Tkpo8fvbPTEHdRgXuDyBvp5nZYsaA Next: Er6aUrhwNWD4f43kKfFk5tdnobJTKhmK7XDdS3vcmp5T Diff:
OldNewDifferences
6464 then {
6565 let x = g(t)
6666 func y (z,A) = {
67- let B = invoke(addressFromStringValue(A), "payFunding", nil, nil)
68- if ((B == B))
67+ let B = split(A, "@")
68+ let C = B[0]
69+ let D = if ((size(B) > 1))
70+ then B[1]
71+ else ""
72+ let E = invoke(addressFromStringValue(C), "payFunding", [D], nil)
73+ if ((E == E))
6974 then z
7075 else throw("Strict value is not equal to itself.")
7176 }
7277
73- let C = x
74- let D = size(C)
75- let E = nil
76- func F (G,H) = if ((H >= D))
77- then G
78- else y(G, C[H])
78+ let F = x
79+ let G = size(F)
80+ let H = nil
81+ func I (J,K) = if ((K >= G))
82+ then J
83+ else y(J, F[K])
7984
80- func I (G,H) = if ((H >= D))
81- then G
85+ func L (J,K) = if ((K >= G))
86+ then J
8287 else throw("List size exceeds 20")
8388
84- I(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(E, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
89+ L(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(H, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
8590 }
8691 else throw("Strict value is not equal to itself.")
8792 }
9196 }
9297
9398
94-@Verifier(J)
95-func K () = {
96- let L = getString(this, b)
97- if (isDefined(L))
99+@Verifier(M)
100+func N () = {
101+ let O = getString(this, b)
102+ if (isDefined(O))
98103 then {
99- let M = getString(addressFromStringValue(value(L)), f)
100- if (isDefined(M))
101- then valueOrElse(getBoolean(addressFromStringValue(value(M)), ((("status_" + toString(this)) + "_") + toBase58String(J.id))), false)
104+ let P = getString(addressFromStringValue(value(O)), f)
105+ if (isDefined(P))
106+ then valueOrElse(getBoolean(addressFromStringValue(value(P)), ((("status_" + toString(this)) + "_") + toBase58String(M.id))), false)
102107 else throw("unable to verify: admin not set in coordinator")
103108 }
104- else sigVerify(J.bodyBytes, J.proofs[0], J.senderPublicKey)
109+ else sigVerify(M.bodyBytes, M.proofs[0], M.senderPublicKey)
105110 }
106111
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "k_initialized"
55
66 let b = "k_coordinatorAddress"
77
88 let c = "k_staking_address"
99
1010 let d = "k_farming_address"
1111
1212 let e = "k_vault_address"
1313
1414 let f = "k_admin_address"
1515
1616 func g (h) = if ((h == ""))
1717 then nil
1818 else split(h, ",")
1919
2020
2121 func i () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(this, b), "Coordinator not set HC")), "Coordinator address invalid")
2222
2323
2424 func j () = addressFromString(valueOrErrorMessage(getString(i(), f), "Admin address not set"))
2525
2626
2727 func k () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(i(), c), "Staking address not set")), "Staking address invalid")
2828
2929
3030 func l () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(i(), d), "Farming address not set")), "Farming address invalid")
3131
3232
3333 func m () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(i(), e), "Vault address not set")), "Vault address invalid")
3434
3535
3636 func n () = valueOrElse(getBoolean(this, a), false)
3737
3838
3939 @Callable(o)
4040 func initialize (p) = if (if (n())
4141 then true
4242 else (o.caller != this))
4343 then throw("Unable to initialize")
4444 else [StringEntry(b, toString(addressFromStringValue(p))), BooleanEntry(a, true)]
4545
4646
4747
4848 @Callable(o)
4949 func performHousekeeping (q,r,s,t) = {
5050 let u = if (s)
5151 then invoke(k(), "ackRewards", nil, nil)
5252 else nil
5353 if ((u == u))
5454 then {
5555 let v = if (r)
5656 then invoke(l(), "ackRewards", nil, nil)
5757 else nil
5858 if ((v == v))
5959 then {
6060 let w = if (q)
6161 then invoke(m(), "ackRewards", nil, nil)
6262 else nil
6363 if ((w == w))
6464 then {
6565 let x = g(t)
6666 func y (z,A) = {
67- let B = invoke(addressFromStringValue(A), "payFunding", nil, nil)
68- if ((B == B))
67+ let B = split(A, "@")
68+ let C = B[0]
69+ let D = if ((size(B) > 1))
70+ then B[1]
71+ else ""
72+ let E = invoke(addressFromStringValue(C), "payFunding", [D], nil)
73+ if ((E == E))
6974 then z
7075 else throw("Strict value is not equal to itself.")
7176 }
7277
73- let C = x
74- let D = size(C)
75- let E = nil
76- func F (G,H) = if ((H >= D))
77- then G
78- else y(G, C[H])
78+ let F = x
79+ let G = size(F)
80+ let H = nil
81+ func I (J,K) = if ((K >= G))
82+ then J
83+ else y(J, F[K])
7984
80- func I (G,H) = if ((H >= D))
81- then G
85+ func L (J,K) = if ((K >= G))
86+ then J
8287 else throw("List size exceeds 20")
8388
84- I(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(F(E, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
89+ L(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(I(H, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
8590 }
8691 else throw("Strict value is not equal to itself.")
8792 }
8893 else throw("Strict value is not equal to itself.")
8994 }
9095 else throw("Strict value is not equal to itself.")
9196 }
9297
9398
94-@Verifier(J)
95-func K () = {
96- let L = getString(this, b)
97- if (isDefined(L))
99+@Verifier(M)
100+func N () = {
101+ let O = getString(this, b)
102+ if (isDefined(O))
98103 then {
99- let M = getString(addressFromStringValue(value(L)), f)
100- if (isDefined(M))
101- then valueOrElse(getBoolean(addressFromStringValue(value(M)), ((("status_" + toString(this)) + "_") + toBase58String(J.id))), false)
104+ let P = getString(addressFromStringValue(value(O)), f)
105+ if (isDefined(P))
106+ then valueOrElse(getBoolean(addressFromStringValue(value(P)), ((("status_" + toString(this)) + "_") + toBase58String(M.id))), false)
102107 else throw("unable to verify: admin not set in coordinator")
103108 }
104- else sigVerify(J.bodyBytes, J.proofs[0], J.senderPublicKey)
109+ else sigVerify(M.bodyBytes, M.proofs[0], M.senderPublicKey)
105110 }
106111

github/deemru/w8io/169f3d6 
52.41 ms