tx · AdDxvAC7WNcFVuxLp3PDUC7KBnDompALb8uC6o2jQg45

3N3HcmfU1kxFj1x7PdZNnGZhGRELxC9gVbr:  -0.01400000 Waves

2021.01.05 13:51 [1339993] smart account 3N3HcmfU1kxFj1x7PdZNnGZhGRELxC9gVbr > SELF 0.00000000 Waves

{ "type": 13, "id": "AdDxvAC7WNcFVuxLp3PDUC7KBnDompALb8uC6o2jQg45", "fee": 1400000, "feeAssetId": null, "timestamp": 1609843960780, "version": 2, "chainId": 84, "sender": "3N3HcmfU1kxFj1x7PdZNnGZhGRELxC9gVbr", "senderPublicKey": "CdPKZLUm4NiopSyscAvon7a9kzDkN2DomZqxEo1ba9ox", "proofs": [ "4cyf4q1ZwRnAWh8w9Z9Wa2CthvSnizyGdMiKebQ3C3Q7fW1SgrHbzZP4yoxtwiAi3iMjeH7GQQ4MRCKsRweFziQc", "3Z6MqEXGm8NRjLBR6yrjhkX8bbAP8wmhLDKnVrEiZB8m6rb5Fyb3vPYxL4sdi3bcCeUXd7Fuk4jyDuZSfpaNgBbf" ], "script": "base64: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", "height": 1339993, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 211fehxZjDrDeB5BfpHzEqVRR6dm8vvFzLiCLYYqHo7a Next: CeX2HXXQdbUxc1UV3KirAMM3MywVyBHT52Q9vqHbuDoq Diff:
OldNewDifferences
99 let paymentBlock = 200
1010 let fundBlock = 300
1111 let paymentFundBlock = 400
12+let upperBlock = 500
1213 match tx {
1314 case w: TransferTransaction =>
1415 let myStatus = getInteger(addressFromPublicKey(digiliraPay), toBase58String(w.sender.bytes))
3738 then throw("Not Allowed")
3839 else if ((isAsset == banned))
3940 then throw("Can not transfer this asset 3")
40- else if (if ((valueOrElse(isAsset, banned) >= paymentBlock))
41+ else if (if (if ((valueOrElse(isAsset, banned) >= paymentBlock))
4142 then (fundBlock >= valueOrElse(isAsset, banned))
4243 else false)
44+ then true
45+ else if ((valueOrElse(isAsset, banned) >= paymentFundBlock))
46+ then (upperBlock >= valueOrElse(isAsset, banned))
47+ else false)
4348 then true
4449 else throw("Can not transfer this asset 4")
4550 else throw("Unfortunately you can only use this token for payments")
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 = 403000
77 let KYCPending = 0
88 let transferBlock = 100
99 let paymentBlock = 200
1010 let fundBlock = 300
1111 let paymentFundBlock = 400
12+let upperBlock = 500
1213 match tx {
1314 case w: TransferTransaction =>
1415 let myStatus = getInteger(addressFromPublicKey(digiliraPay), toBase58String(w.sender.bytes))
1516 let isUser = getInteger(addressFromPublicKey(digiliraPay), toBase58String(addressFromRecipient(w.recipient).bytes))
1617 let feeToken = w.feeAssetId
1718 let feeAmount = w.fee
1819 let asset = value(w.assetId)
1920 let isAsset = getInteger(addressFromPublicKey(digiliraPay), toBase58String(asset))
2021 if (isDefined(isUser))
2122 then if (isDefined(feeToken))
2223 then if ((feeToken == sponsorToken))
2324 then if (isDefined(isAsset))
2425 then if ((isAsset == banned))
2526 then throw("Can not transfer this asset 1")
2627 else if ((valueOrElse(isUser, 0) >= valueOrElse(isAsset, banned)))
2728 then true
2829 else throw("Can not transfer this asset 1")
2930 else true
3031 else if ((feeToken == paymentToken))
3132 then if ((w.recipient == addressFromPublicKey(digiliraPay)))
3233 then if ((myStatus == KYCPending))
3334 then throw("KYC Pending")
3435 else if ((myStatus == banned))
3536 then throw("Account Banned Can't Operate")
3637 else if ((feeAmount > 10))
3738 then throw("Not Allowed")
3839 else if ((isAsset == banned))
3940 then throw("Can not transfer this asset 3")
40- else if (if ((valueOrElse(isAsset, banned) >= paymentBlock))
41+ else if (if (if ((valueOrElse(isAsset, banned) >= paymentBlock))
4142 then (fundBlock >= valueOrElse(isAsset, banned))
4243 else false)
44+ then true
45+ else if ((valueOrElse(isAsset, banned) >= paymentFundBlock))
46+ then (upperBlock >= valueOrElse(isAsset, banned))
47+ else false)
4348 then true
4449 else throw("Can not transfer this asset 4")
4550 else throw("Unfortunately you can only use this token for payments")
4651 else if (isDefined(isAsset))
4752 then if ((isAsset == banned))
4853 then throw("Can not transfer this asset 5")
4954 else if ((valueOrElse(isUser, 0) >= valueOrElse(isAsset, banned)))
5055 then true
5156 else throw("This asset has special requirements 2")
5257 else true
5358 else if (isDefined(isAsset))
5459 then if ((valueOrElse(isAsset, 0) == banned))
5560 then throw("Can not transfer this asset")
5661 else if ((valueOrElse(isUser, 0) >= valueOrElse(isAsset, banned)))
5762 then true
5863 else throw("This asset has special requirements 1")
5964 else true
6065 else if (isDefined(feeToken))
6166 then if ((feeToken == sponsorToken))
6267 then throw("Cannot use this token for none DigiliraPay users transfers.")
6368 else if ((feeToken == paymentToken))
6469 then throw("Unfortunately you can only use this token for payments")
6570 else true
6671 else true
6772 case x: Order|LeaseTransaction|BurnTransaction =>
6873 false
6974 case t: DataTransaction|ExchangeTransaction|SetScriptTransaction =>
7075 sigVerify(t.bodyBytes, t.proofs[1], digiliraPay)
7176 case mtt: MassTransferTransaction =>
7277 false
7378 case _ =>
7479 true
7580 }

github/deemru/w8io/3ef1775 
44.84 ms