tx · 8TrjV8hGqxHTVBwHbo5pwSt1YvQNjp91xoQfM68q36xB

3P5gMJGTcY7yB9zX1rKtTPiAbMdkwAzeJ5X:  -0.00600000 Waves

2022.11.13 12:50 [3380590] smart account 3P5gMJGTcY7yB9zX1rKtTPiAbMdkwAzeJ5X > SELF 0.00000000 Waves

{ "type": 13, "id": "8TrjV8hGqxHTVBwHbo5pwSt1YvQNjp91xoQfM68q36xB", "fee": 600000, "feeAssetId": null, "timestamp": 1668333033852, "version": 1, "sender": "3P5gMJGTcY7yB9zX1rKtTPiAbMdkwAzeJ5X", "senderPublicKey": "7hwdBdz6VKiLbFSmNoQgEfd9mnherhhcUr6hx3zwC2sv", "proofs": [ "36fcec3CYeQLQ2HuXgjiAU69AqXpZer7BJ2otdmbYwfYRapkJgnJ6Qsc8F7HXeUQ6zeQ7HEGZvTEfL52c2EK3jZJ" ], "script": "base64:BgILCAISAwoBARIAEgAJAARVU0RDASBSM9nhl4gm5eIfwv3qiDS4h3ajjLGD78hgHH4KElQmJQAEVVNEVAEgHpQHE1J2oSWV/chhqIJfEH/fOk8pu/yaRj9a/TZPn5EABFVTRE4BILYmKcME9c5TkaQOS3UkL2SMUbH6369UKb1I0h0qsqrRABB2aXJlc1VzZGNBZGRyZXNzARoBV5yR1utW32Oxv3/kjTMk5Byo4/hA5zvtAwAQdmlyZXNVc2R0QWRkcmVzcwEaAVeMM36J//6U2h3+7DremwQmEvPBX8RtDgwABnVzZGNMcAEg1oaacWthwTdC30x+4yrVGXT/80n5kiC/TDA74pgCkbEAD2RlbGVnYXRlQWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1A1cGg0TERKd1hvdWFaUGpucUdUTnRvZ2JtNFoxZHk3ZFkACXZpcmVzTWFpbgkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1BBWnY5dGdLMVBYN2RLUjdiNGtjaHE1cWRwVVMzRzVzWVQAD3Zlc3RpbmdDb250cmFjdAkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1BDYnZQVlFmU3ZWdTg4aXA4Rm01WWp3SmhqRVlrMVR4aGsDAWkBAWIBBmFtb3VudAMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkAAgECDUFjY2VzcyBEZW5pZWQEA2ludgkA/AcEBQl2aXJlc01haW4CE3JlcGxlbmlzaFdpdGhBdG9rZW4FA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUGdXNkY0xwBQZhbW91bnQFA25pbAMJAAACBQNpbnYFA2ludgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBAWEAAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQINQWNjZXNzIERlbmllZAQJbHBCYWxhbmNlCQDwBwIFBHRoaXMFBnVzZGNMcAQSdHJ1bmNhdGVkTHBCYWxhbmNlAwkAZgIAgOWadwUJbHBCYWxhbmNlBQlscEJhbGFuY2UAgOWadwQDaW52CQD8BwQFCXZpcmVzTWFpbgITcmVwbGVuaXNoV2l0aEF0b2tlbgUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQZ1c2RjTHAFEnRydW5jYXRlZExwQmFsYW5jZQUDbmlsAwkAAAIFA2ludgUDaW52BQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEFY2xhaW0AAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQINQWNjZXNzIERlbmllZAQLdXNkbkluaXRpYWwJAPAHAgUEdGhpcwUEVVNETgMJAAACBQt1c2RuSW5pdGlhbAULdXNkbkluaXRpYWwEA2ludgkA/AcEBQ92ZXN0aW5nQ29udHJhY3QCFXdpdGhkcmF3VmVzdGVkQWxsVVNETgkAzAgCBwkAzAgCBgUDbmlsBQNuaWwDCQAAAgUDaW52BQNpbnYECXVzZG5GaW5hbAkA8AcCBQR0aGlzBQRVU0ROAwkAAAIFCXVzZG5GaW5hbAUJdXNkbkZpbmFsCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFD2RlbGVnYXRlQWRkcmVzcwUJdXNkbkZpbmFsBQRVU0ROBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BAnR4AQZ2ZXJpZnkABAckbWF0Y2gwBQJ0eAMJAAECBQckbWF0Y2gwAhdJbnZva2VTY3JpcHRUcmFuc2FjdGlvbgQDaW52BQckbWF0Y2gwAwkAAAIJAKQIAQgFA2ludgRkQXBwBQR0aGlzBgkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleQkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleaNmooc=", "chainId": 87, "height": 3380590, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 4brG68q2uRmDiAmxQ4YGxuaqUWec5WyX9SXCzRGF5THs Next: none Diff:
OldNewDifferences
1-{-# STDLIB_VERSION 5 #-}
1+{-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let viresMainAddress = base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'
5-
64 let USDC = base58'6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ'
75
86 let USDT = base58'34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ'
1513
1614 let usdcLp = base58'FSRHtSyXRXQjzQLRtmaqFpBDDCNjY8PU8KNtwoGXVBmr'
1715
18-let meAddress = Address(base58'3P5ph4LDJwXouaZPjnqGTNtogbm4Z1dy7dY')
16+let delegateAddress = addressFromStringValue("3P5ph4LDJwXouaZPjnqGTNtogbm4Z1dy7dY")
1917
20-let adminAddress = Address(base58'3PJYmxMqX78zTwNyBZwwqPQGWYCmSZ1tcMc')
18+let viresMain = addressFromStringValue("3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT")
2119
22-let viresMain = Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT')
20+let vestingContract = addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk")
2321
24-func getAmountFromUserBalance (v) = match v {
25- case x: (Int, Int, Int, Int, Int, Boolean) =>
26- x._2
27- case t =>
28- throw("#err")
29-}
22+@Callable(i)
23+func b (amount) = if ((i.caller != this))
24+ then throw("Access Denied")
25+ else {
26+ let inv = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, amount)])
27+ if ((inv == inv))
28+ then nil
29+ else throw("Strict value is not equal to itself.")
30+ }
31+
3032
3133
3234 @Callable(i)
3436 then throw("Access Denied")
3537 else {
3638 let lpBalance = assetBalance(this, usdcLp)
37- let truncatedLpBalance = if ((100000000 > lpBalance))
39+ let truncatedLpBalance = if ((250000000 > lpBalance))
3840 then lpBalance
39- else 100000000
40- let call = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, truncatedLpBalance)])
41- if ((call == call))
41+ else 250000000
42+ let inv = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, truncatedLpBalance)])
43+ if ((inv == inv))
4244 then nil
4345 else throw("Strict value is not equal to itself.")
4446 }
4648
4749
4850 @Callable(i)
49-func usdn_100 () = if ((i.caller != adminAddress))
50- then throw("only admin can do")
51+func claim () = if ((i.caller != this))
52+ then throw("Access Denied")
5153 else {
52- let usdnAmountOnStart = assetBalance(this, USDN)
53- if ((usdnAmountOnStart == usdnAmountOnStart))
54+ let usdnInitial = assetBalance(this, USDN)
55+ if ((usdnInitial == usdnInitial))
5456 then {
55- let invokeToVesting = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "convertToUSDN", nil, nil)
56- if ((invokeToVesting == invokeToVesting))
57+ let inv = invoke(vestingContract, "withdrawVestedAllUSDN", [false, true], nil)
58+ if ((inv == inv))
5759 then {
58- let inv = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "withdrawVestedAllUSDN", [false, true], nil)
59- if ((inv == inv))
60- then {
61- let usdnAmountAfterWithdraw = assetBalance(this, USDN)
62- if ((usdnAmountAfterWithdraw == usdnAmountAfterWithdraw))
63- then [ScriptTransfer(meAddress, usdnAmountAfterWithdraw, USDN)]
64- else throw("Strict value is not equal to itself.")
65- }
60+ let usdnFinal = assetBalance(this, USDN)
61+ if ((usdnFinal == usdnFinal))
62+ then [ScriptTransfer(delegateAddress, usdnFinal, USDN)]
6663 else throw("Strict value is not equal to itself.")
6764 }
6865 else throw("Strict value is not equal to itself.")
7168 }
7269
7370
71+@Verifier(tx)
72+func verify () = match tx {
73+ case inv: InvokeScriptTransaction =>
74+ if ((addressFromRecipient(inv.dApp) == this))
75+ then true
76+ else sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
77+ case _ =>
78+ sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
79+}
80+
Full:
OldNewDifferences
1-{-# STDLIB_VERSION 5 #-}
1+{-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let viresMainAddress = base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'
5-
64 let USDC = base58'6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ'
75
86 let USDT = base58'34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ'
97
108 let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
119
1210 let viresUsdcAddress = base58'3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S'
1311
1412 let viresUsdtAddress = base58'3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR'
1513
1614 let usdcLp = base58'FSRHtSyXRXQjzQLRtmaqFpBDDCNjY8PU8KNtwoGXVBmr'
1715
18-let meAddress = Address(base58'3P5ph4LDJwXouaZPjnqGTNtogbm4Z1dy7dY')
16+let delegateAddress = addressFromStringValue("3P5ph4LDJwXouaZPjnqGTNtogbm4Z1dy7dY")
1917
20-let adminAddress = Address(base58'3PJYmxMqX78zTwNyBZwwqPQGWYCmSZ1tcMc')
18+let viresMain = addressFromStringValue("3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT")
2119
22-let viresMain = Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT')
20+let vestingContract = addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk")
2321
24-func getAmountFromUserBalance (v) = match v {
25- case x: (Int, Int, Int, Int, Int, Boolean) =>
26- x._2
27- case t =>
28- throw("#err")
29-}
22+@Callable(i)
23+func b (amount) = if ((i.caller != this))
24+ then throw("Access Denied")
25+ else {
26+ let inv = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, amount)])
27+ if ((inv == inv))
28+ then nil
29+ else throw("Strict value is not equal to itself.")
30+ }
31+
3032
3133
3234 @Callable(i)
3335 func a () = if ((i.caller != this))
3436 then throw("Access Denied")
3537 else {
3638 let lpBalance = assetBalance(this, usdcLp)
37- let truncatedLpBalance = if ((100000000 > lpBalance))
39+ let truncatedLpBalance = if ((250000000 > lpBalance))
3840 then lpBalance
39- else 100000000
40- let call = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, truncatedLpBalance)])
41- if ((call == call))
41+ else 250000000
42+ let inv = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, truncatedLpBalance)])
43+ if ((inv == inv))
4244 then nil
4345 else throw("Strict value is not equal to itself.")
4446 }
4547
4648
4749
4850 @Callable(i)
49-func usdn_100 () = if ((i.caller != adminAddress))
50- then throw("only admin can do")
51+func claim () = if ((i.caller != this))
52+ then throw("Access Denied")
5153 else {
52- let usdnAmountOnStart = assetBalance(this, USDN)
53- if ((usdnAmountOnStart == usdnAmountOnStart))
54+ let usdnInitial = assetBalance(this, USDN)
55+ if ((usdnInitial == usdnInitial))
5456 then {
55- let invokeToVesting = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "convertToUSDN", nil, nil)
56- if ((invokeToVesting == invokeToVesting))
57+ let inv = invoke(vestingContract, "withdrawVestedAllUSDN", [false, true], nil)
58+ if ((inv == inv))
5759 then {
58- let inv = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "withdrawVestedAllUSDN", [false, true], nil)
59- if ((inv == inv))
60- then {
61- let usdnAmountAfterWithdraw = assetBalance(this, USDN)
62- if ((usdnAmountAfterWithdraw == usdnAmountAfterWithdraw))
63- then [ScriptTransfer(meAddress, usdnAmountAfterWithdraw, USDN)]
64- else throw("Strict value is not equal to itself.")
65- }
60+ let usdnFinal = assetBalance(this, USDN)
61+ if ((usdnFinal == usdnFinal))
62+ then [ScriptTransfer(delegateAddress, usdnFinal, USDN)]
6663 else throw("Strict value is not equal to itself.")
6764 }
6865 else throw("Strict value is not equal to itself.")
6966 }
7067 else throw("Strict value is not equal to itself.")
7168 }
7269
7370
71+@Verifier(tx)
72+func verify () = match tx {
73+ case inv: InvokeScriptTransaction =>
74+ if ((addressFromRecipient(inv.dApp) == this))
75+ then true
76+ else sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
77+ case _ =>
78+ sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
79+}
80+

github/deemru/w8io/6500d08 
45.47 ms