tx · DVgfi9FY8WTjBpSSUj1po8pouLzGhkwwmZuMsEq667eH

3N3HcmfU1kxFj1x7PdZNnGZhGRELxC9gVbr:  -0.01400000 Waves

2021.01.05 12:20 [1339898] smart account 3N3HcmfU1kxFj1x7PdZNnGZhGRELxC9gVbr > SELF 0.00000000 Waves

{ "type": 13, "id": "DVgfi9FY8WTjBpSSUj1po8pouLzGhkwwmZuMsEq667eH", "fee": 1400000, "feeAssetId": null, "timestamp": 1609838460910, "version": 2, "chainId": 84, "sender": "3N3HcmfU1kxFj1x7PdZNnGZhGRELxC9gVbr", "senderPublicKey": "CdPKZLUm4NiopSyscAvon7a9kzDkN2DomZqxEo1ba9ox", "proofs": [ "4JrHkHLZZywgZHUp3RV2Goz8h2MrVgfkUqECfemGb2QgZePd4uYQdKHdcLfMZo3SFygGUzDvYzhcQy2NCEB4wc5E", "3aFmR5J8SWruLx1zsUDn6fivVwZJUZ7nS3nTfnTzBEoSKGnRfLbbo7GM29Q8jJPKtJ6nPNBdDcisZhdjKm2TuoAX" ], "script": "base64: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", "height": 1339898, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CfnYNEEdhnnGnQaogJ1vBbhPf9vadJP5Dv2eBPBT48LF Next: HWYzHZw7MKndDVASQYbP3WdfMrSZqiP8qtCVU3UqUbhj Diff:
OldNewDifferences
2424 else true
2525 else throw(toBase58String(asset))
2626 else if ((feeToken == paymentToken))
27- then throw("cant use payment token")
27+ then if ((w.recipient == addressFromPublicKey(digiliraPay)))
28+ then if ((myStatus == KYCPending))
29+ then throw("KYC Pending")
30+ else if ((myStatus == banned))
31+ then throw("Account Banned")
32+ else if ((feeAmount > 10))
33+ then throw("Not Allowed")
34+ else true
35+ else throw("Unfortunately you can only use this token for payments")
2836 else if (isDefined(isAsset))
2937 then if ((isAsset == banned))
3038 then throw("Can not transfer this asset")
4351 then if ((feeToken == sponsorToken))
4452 then throw("Cannot use this token for none DigiliraPay users transfers.")
4553 else if ((feeToken == paymentToken))
46- then if ((w.recipient == addressFromPublicKey(digiliraPay)))
47- then if ((myStatus == KYCPending))
48- then throw("KYC Pending")
49- else if ((myStatus == banned))
50- then throw("Account Banned")
51- else if ((feeAmount > 10))
52- then throw("Not Allowed")
53- else true
54- else throw("Unfortunately you can only use this token for payments")
54+ then throw("Unfortunately you can only use this token for payments")
5555 else true
5656 else true
5757 case x: Order|LeaseTransaction|BurnTransaction =>
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
33 let digiliraPay = base58'57EFni8M1XesEurFh3c4jnpLExP2PCPd5TRrwMjePAT4'
44 let sponsorToken = base58'7GnHzTaDe3YbDiCD9rueHiSfPB7hdanPpN4Ab79fJGtD'
55 let paymentToken = base58'FLsa9hfu1jvXC6jhDP2x6DHHQHK2qiKPtS7D74ZFNsE1'
66 let banned = 403
77 let KYCPending = 0
88 match tx {
99 case w: TransferTransaction =>
1010 let myStatus = getInteger(addressFromPublicKey(digiliraPay), toBase58String(w.sender.bytes))
1111 let isUser = getInteger(addressFromPublicKey(digiliraPay), toBase58String(addressFromRecipient(w.recipient).bytes))
1212 let feeToken = w.feeAssetId
1313 let feeAmount = w.fee
1414 let asset = value(w.assetId)
1515 let isAsset = getInteger(addressFromPublicKey(digiliraPay), toBase58String(asset))
1616 if (isDefined(isUser))
1717 then if (isDefined(feeToken))
1818 then if ((feeToken == sponsorToken))
1919 then if (isDefined(isAsset))
2020 then if ((isAsset == banned))
2121 then throw("Can not transfer this asset")
2222 else if ((valueOrElse(isUser, 0) >= valueOrElse(isAsset, banned)))
2323 then true
2424 else true
2525 else throw(toBase58String(asset))
2626 else if ((feeToken == paymentToken))
27- then throw("cant use payment token")
27+ then if ((w.recipient == addressFromPublicKey(digiliraPay)))
28+ then if ((myStatus == KYCPending))
29+ then throw("KYC Pending")
30+ else if ((myStatus == banned))
31+ then throw("Account Banned")
32+ else if ((feeAmount > 10))
33+ then throw("Not Allowed")
34+ else true
35+ else throw("Unfortunately you can only use this token for payments")
2836 else if (isDefined(isAsset))
2937 then if ((isAsset == banned))
3038 then throw("Can not transfer this asset")
3139 else if ((valueOrElse(isUser, 0) >= valueOrElse(isAsset, banned)))
3240 then true
3341 else throw("This asset has special requirements")
3442 else true
3543 else if (isDefined(isAsset))
3644 then if ((valueOrElse(isAsset, 0) == banned))
3745 then throw("Can not transfer this asset")
3846 else if ((valueOrElse(isUser, 0) >= valueOrElse(isAsset, banned)))
3947 then true
4048 else throw("This asset has special requirements")
4149 else true
4250 else if (isDefined(feeToken))
4351 then if ((feeToken == sponsorToken))
4452 then throw("Cannot use this token for none DigiliraPay users transfers.")
4553 else if ((feeToken == paymentToken))
46- then if ((w.recipient == addressFromPublicKey(digiliraPay)))
47- then if ((myStatus == KYCPending))
48- then throw("KYC Pending")
49- else if ((myStatus == banned))
50- then throw("Account Banned")
51- else if ((feeAmount > 10))
52- then throw("Not Allowed")
53- else true
54- else throw("Unfortunately you can only use this token for payments")
54+ then throw("Unfortunately you can only use this token for payments")
5555 else true
5656 else true
5757 case x: Order|LeaseTransaction|BurnTransaction =>
5858 false
5959 case t: DataTransaction|ExchangeTransaction|SetScriptTransaction =>
6060 sigVerify(t.bodyBytes, t.proofs[1], digiliraPay)
6161 case mtt: MassTransferTransaction =>
6262 false
6363 case _ =>
6464 true
6565 }

github/deemru/w8io/3ef1775 
37.89 ms