tx · J7qN6ppeivoy69zYzA2CctenKKyHqa4QTLNztqjunD6D

3P4AdC9J6MzTEi2LL9xgQN8EimMnbk4d6Nt:  -0.00300000 Waves

2023.09.30 10:08 [3843648] smart account 3P4AdC9J6MzTEi2LL9xgQN8EimMnbk4d6Nt > SELF 0.00000000 Waves

{ "type": 13, "id": "J7qN6ppeivoy69zYzA2CctenKKyHqa4QTLNztqjunD6D", "fee": 300000, "feeAssetId": null, "timestamp": 1696057759193, "version": 2, "chainId": 87, "sender": "3P4AdC9J6MzTEi2LL9xgQN8EimMnbk4d6Nt", "senderPublicKey": "33BMe2b9KpjJyCQXAKa3DKHqSBjB7q2mEJoiP17cRLAN", "proofs": [ "5CKfbKgf9GtsgyhchcET1CmH7smrTLuBG54PnKGdTX9mkE1x1GW4t4ST38LfCHGGtmsTGo6bbWGvpw35KD5hQLw2" ], "script": "base64:BgIKCAISABIAEgASAAoAAmQ4AIDC1y8AA2QxNgkAaAIFAmQ4BQJkOAAKbWFpbndhbGxldAkBB0FkZHJlc3MBARoBV+lmISrSBuDcForrCFqX1J+dYqN/98JaTAAHdXNkdGVyYwEghNp6sggDP07Ru8qO7ouTvMmC3Qtd+geWqNQj+agP/7kBDXRyeUdldEludGVnZXIBA2tleQQHJG1hdGNoMAkAmggCBQR0aGlzBQNrZXkDCQABAgUHJG1hdGNoMAIDSW50BAFiBQckbWF0Y2gwBQFiAAAAB1BMX01haW4JAQdBZGRyZXNzAQEaAVcglFxKrc/0SDk7iECzv9vujFCgp2rP2ugAB1BMX0RlZmkJAQdBZGRyZXNzAQEaAVcZCzuPP83F9QBSQ7jrpozIrL8UOTE+JL4ABlBMX0xvdwkBB0FkZHJlc3MBARoBV65gFNJmcAzwP9x0xdJ05hq+qeBSweoLkAAHYWRkcmVzcwkApQgBCQEHQWRkcmVzcwEBGgFXGIkbJG0v4kSlsrku0GQjUC4p33Iw2jJZAQhQTF92YWx1ZQILZEFwcEFkZHJlc3MFYXNzZXQJAGsDCQERQGV4dHJOYXRpdmUoMTA1MCkCBQtkQXBwQWRkcmVzcwkArAICCQCsAgIFB2FkZHJlc3MCCl9zdXBwbGllZF8JANgEAQUFYXNzZXQJARFAZXh0ck5hdGl2ZSgxMDUwKQIFC2RBcHBBZGRyZXNzCQCsAgIJANgEAQUFYXNzZXQCBl9zUmF0ZQUDZDE2BAFpAQtEZXBvc2l0VVNEVAAEA3BtdAkBBXZhbHVlAQkAkQMCCAUBaQhwYXltZW50cwAABAxzdXBwbHlhbW91bnQJAGkCCAUDcG10BmFtb3VudAADAwkBAiE9AggFA3BtdAdhc3NldElkBQd1c2R0ZXJjCQACAQIcYXR0YWNoIFVTRFQtRVJDMjAgdG9rZW4gb25seQQSU3VwcGx5VVNEVE1haW5Qb29sCQD8BwQJAQdBZGRyZXNzAQEaAVcglFxKrc/0SDk7iECzv9vujFCgp2rP2ugCBnN1cHBseQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQd1c2R0ZXJjBQxzdXBwbHlhbW91bnQFA25pbAMJAAACBRJTdXBwbHlVU0RUTWFpblBvb2wFElN1cHBseVVTRFRNYWluUG9vbAQXU3VwcGx5VVNEVFdhdmVzRGVmaVBvb2wJAPwHBAkBB0FkZHJlc3MBARoBVxkLO48/zcX1AFJDuOumjMisvxQ5MT4kvgIGc3VwcGx5BQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB3VzZHRlcmMFDHN1cHBseWFtb3VudAUDbmlsAwkAAAIFF1N1cHBseVVTRFRXYXZlc0RlZmlQb29sBRdTdXBwbHlVU0RUV2F2ZXNEZWZpUG9vbAQQU3VwcGx5VVNEVExvd0NhcAkA/AcECQEHQWRkcmVzcwEBGgFXrmAU0mZwDPA/3HTF0nTmGr6p4FLB6guQAgZzdXBwbHkFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHdXNkdGVyYwUMc3VwcGx5YW1vdW50BQNuaWwDCQAAAgUQU3VwcGx5VVNEVExvd0NhcAUQU3VwcGx5VVNEVExvd0NhcAkAzAgCCQEMSW50ZWdlckVudHJ5AgIXdG90YWwgVVNEVCBkZXBvc2l0ZWQgUEwJAGQCCAUDcG10BmFtb3VudAkBC3ZhbHVlT3JFbHNlAgkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwIXdG90YWwgVVNEVCBkZXBvc2l0ZWQgUEwAAAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBEXdpdGhkcmF3VVNEVF9NYWluAAMDCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAQIhPQIIBQFpBmNhbGxlcgUKbWFpbndhbGxldAcJAAIBAglubyBhY2Nlc3MEEndpdGhkcmF3YW1vdW50TWFpbgkAZQIJAQhQTF92YWx1ZQIFB1BMX01haW4FB3VzZHRlcmMJAGkCCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAhd0b3RhbCBVU0RUIGRlcG9zaXRlZCBQTAADBAl3aXRoZHJhd00JAPwHBAUHUExfTWFpbgIId2l0aGRyYXcJAMwIAgkA2AQBBQd1c2R0ZXJjCQDMCAIFEndpdGhkcmF3YW1vdW50TWFpbgUDbmlsBQNuaWwDCQAAAgUJd2l0aGRyYXdNBQl3aXRoZHJhd00JAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUKbWFpbndhbGxldAUSd2l0aGRyYXdhbW91bnRNYWluBQd1c2R0ZXJjBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQERd2l0aGRyYXdVU0RUX0RlZmkAAwMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkBAiE9AggFAWkGY2FsbGVyBQptYWlud2FsbGV0BwkAAgECCW5vIGFjY2VzcwQSd2l0aGRyYXdhbW91bnREZWZpCQBlAgkBCFBMX3ZhbHVlAgUHUExfRGVmaQUHdXNkdGVyYwkAaQIJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMCF3RvdGFsIFVTRFQgZGVwb3NpdGVkIFBMAAMECXdpdGhkcmF3RAkA/AcEBQdQTF9EZWZpAgh3aXRoZHJhdwkAzAgCCQDYBAEFB3VzZHRlcmMJAMwIAgUSd2l0aGRyYXdhbW91bnREZWZpBQNuaWwFA25pbAMJAAACBQl3aXRoZHJhd0QFCXdpdGhkcmF3RAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQptYWlud2FsbGV0BRJ3aXRoZHJhd2Ftb3VudERlZmkFB3VzZHRlcmMFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpARB3aXRoZHJhd1VTRFRfTG93AAMDCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAQIhPQIIBQFpBmNhbGxlcgUKbWFpbndhbGxldAcJAAIBAglubyBhY2Nlc3MEEXdpdGhkcmF3YW1vdW50TG93CQBlAgkBCFBMX3ZhbHVlAgUGUExfTG93BQd1c2R0ZXJjCQBpAgkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwIXdG90YWwgVVNEVCBkZXBvc2l0ZWQgUEwAAwQJd2l0aGRyYXdMCQD8BwQFBlBMX0xvdwIId2l0aGRyYXcJAMwIAgkA2AQBBQd1c2R0ZXJjCQDMCAIFEXdpdGhkcmF3YW1vdW50TG93BQNuaWwFA25pbAMJAAACBQl3aXRoZHJhd0wFCXdpdGhkcmF3TAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQptYWlud2FsbGV0BRF3aXRoZHJhd2Ftb3VudExvdwUHdXNkdGVyYwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAJZJtj0=", "height": 3843648, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 8m6jHE11Fsm1Noc7Dou6eM5BVF8bkdmALpKrXBa8yzTD Next: ATu5wjcXAZXQvztbRvDxHnLpKQBXehh7azLduAUNtWos Full:
OldNewDifferences
1-{-# STDLIB_VERSION 5 #-}
1+{-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4+let d8 = 100000000
5+
6+let d16 = (d8 * d8)
7+
8+let mainwallet = Address(base58'3PPCzX2doZ7agBNuGSKqjrbdXgGEtE7CpQ3')
9+
10+let usdterc = base58'9wc3LXNA4TEBsXyKtoLE9mrbDD7WMHXvXrCjZvabLAsi'
11+
12+func tryGetInteger (key) = match getInteger(this, key) {
13+ case b: Int =>
14+ b
15+ case _ =>
16+ 0
17+}
18+
19+
20+let PL_Main = Address(base58'3P4uA5etnZi4AmBabKinq2bMiWU8KcnHZdH')
21+
22+let PL_Defi = Address(base58'3P4DK5VzDwL3vfc5ahUEhtoe5ByZNyacJ3X')
23+
24+let PL_Low = Address(base58'3PHpuQUPVUoR3AYzFeJzeWJfYLsLTmWssVH')
25+
26+let address = toString(Address(base58'3P4AdC9J6MzTEi2LL9xgQN8EimMnbk4d6Nt'))
27+
28+func PL_value (dAppAddress,asset) = fraction(getIntegerValue(dAppAddress, ((address + "_supplied_") + toBase58String(asset))), getIntegerValue(dAppAddress, (toBase58String(asset) + "_sRate")), d16)
429
530
631 @Callable(i)
7-func sum () = {
8- let sumStore = "wavelets_per_block_sum"
9- let sum = getIntegerValue(Address(base58'3PEwRcYNAUtoFvKpBhKoiwajnZfdoDR6h4h'), sumStore)
10-[IntegerEntry(sumStore, sum)]
32+func DepositUSDT () = {
33+ let pmt = value(i.payments[0])
34+ let supplyamount = (pmt.amount / 3)
35+ if ((pmt.assetId != usdterc))
36+ then throw("attach USDT-ERC20 token only")
37+ else {
38+ let SupplyUSDTMainPool = invoke(Address(base58'3P4uA5etnZi4AmBabKinq2bMiWU8KcnHZdH'), "supply", nil, [AttachedPayment(usdterc, supplyamount)])
39+ if ((SupplyUSDTMainPool == SupplyUSDTMainPool))
40+ then {
41+ let SupplyUSDTWavesDefiPool = invoke(Address(base58'3P4DK5VzDwL3vfc5ahUEhtoe5ByZNyacJ3X'), "supply", nil, [AttachedPayment(usdterc, supplyamount)])
42+ if ((SupplyUSDTWavesDefiPool == SupplyUSDTWavesDefiPool))
43+ then {
44+ let SupplyUSDTLowCap = invoke(Address(base58'3PHpuQUPVUoR3AYzFeJzeWJfYLsLTmWssVH'), "supply", nil, [AttachedPayment(usdterc, supplyamount)])
45+ if ((SupplyUSDTLowCap == SupplyUSDTLowCap))
46+ then [IntegerEntry("total USDT deposited PL", (pmt.amount + valueOrElse(getIntegerValue(this, "total USDT deposited PL"), 0)))]
47+ else throw("Strict value is not equal to itself.")
48+ }
49+ else throw("Strict value is not equal to itself.")
50+ }
51+ else throw("Strict value is not equal to itself.")
52+ }
1153 }
54+
55+
56+
57+@Callable(i)
58+func withdrawUSDT_Main () = if (if ((i.caller != this))
59+ then (i.caller != mainwallet)
60+ else false)
61+ then throw("no access")
62+ else {
63+ let withdrawamountMain = (PL_value(PL_Main, usdterc) - (getIntegerValue(this, "total USDT deposited PL") / 3))
64+ let withdrawM = invoke(PL_Main, "withdraw", [toBase58String(usdterc), withdrawamountMain], nil)
65+ if ((withdrawM == withdrawM))
66+ then [ScriptTransfer(mainwallet, withdrawamountMain, usdterc)]
67+ else throw("Strict value is not equal to itself.")
68+ }
69+
70+
71+
72+@Callable(i)
73+func withdrawUSDT_Defi () = if (if ((i.caller != this))
74+ then (i.caller != mainwallet)
75+ else false)
76+ then throw("no access")
77+ else {
78+ let withdrawamountDefi = (PL_value(PL_Defi, usdterc) - (getIntegerValue(this, "total USDT deposited PL") / 3))
79+ let withdrawD = invoke(PL_Defi, "withdraw", [toBase58String(usdterc), withdrawamountDefi], nil)
80+ if ((withdrawD == withdrawD))
81+ then [ScriptTransfer(mainwallet, withdrawamountDefi, usdterc)]
82+ else throw("Strict value is not equal to itself.")
83+ }
84+
85+
86+
87+@Callable(i)
88+func withdrawUSDT_Low () = if (if ((i.caller != this))
89+ then (i.caller != mainwallet)
90+ else false)
91+ then throw("no access")
92+ else {
93+ let withdrawamountLow = (PL_value(PL_Low, usdterc) - (getIntegerValue(this, "total USDT deposited PL") / 3))
94+ let withdrawL = invoke(PL_Low, "withdraw", [toBase58String(usdterc), withdrawamountLow], nil)
95+ if ((withdrawL == withdrawL))
96+ then [ScriptTransfer(mainwallet, withdrawamountLow, usdterc)]
97+ else throw("Strict value is not equal to itself.")
98+ }
1299
13100

github/deemru/w8io/873ac7e 
46.96 ms