tx · 6f79t9GZ3KVghiRewfZermAG1kjzkwNxYRQ8hDWZHH9C

3NCpyPuNzUaB7LFS4KBzwzWVnXmjur582oy:  -1.40000000 Waves

2020.10.16 11:58 [1222926] smart asset 3NCpyPuNzUaB7LFS4KBzwzWVnXmjur582oy > SELF 0.00000000 D-WAVES

{ "type": 15, "id": "6f79t9GZ3KVghiRewfZermAG1kjzkwNxYRQ8hDWZHH9C", "fee": 140000000, "feeAssetId": null, "timestamp": 1602838711529, "version": 2, "chainId": 84, "sender": "3NCpyPuNzUaB7LFS4KBzwzWVnXmjur582oy", "senderPublicKey": "57EFni8M1XesEurFh3c4jnpLExP2PCPd5TRrwMjePAT4", "proofs": [ "MEKqy9wU49gS9sRdate8t2AEP1qr8ggY5383CxvHpsLEG2ZJWC4QbRet38dmGaKhZX3PSxMgArtfS4NkNgvuqbA" ], "assetId": "HGoEZAsEQpbA3DJyV9J3X1JCTTBuwUB6PE19g1kUYXsH", "script": "base64:AgQAAAAFYWRtaW4JAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVT7U3zgWylABs9zUfyaAS1l4Zzgbt82QMAEAAAAB2dhdGV3YXkJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVT7U3zgWylABs9zUfyaAS1l4Zzgbt82QMAEAAAABmJhbm5lZAAAAAAAAAABkwQAAAAHS1lDVmVyMQAAAAAAAAAAAQQAAAAHS1lDVmVyMgAAAAAAAAAAAgQAAAAKaXNNZXJjaGFudAAAAAAAAAAABQQAAAAKS1lDUGVuZGluZwAAAAAAAAAAAAQAAAAJbWF4QW1vdW50AAAAAAAF9eEABAAAAAckbWF0Y2gwBQAAAAJ0eAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAATVHJhbnNmZXJUcmFuc2FjdGlvbgQAAAABdAUAAAAHJG1hdGNoMAQAAAAEZGF0YQkABBoAAAACBQAAAAVhZG1pbgkAAlgAAAABCAgFAAAAAXQAAAAGc2VuZGVyAAAABWJ5dGVzBAAAAAZhbW91bnQIBQAAAAF0AAAABmFtb3VudAQAAAAGaXNVc2VyCQAEGgAAAAIFAAAABWFkbWluCQACWAAAAAEICQAEJAAAAAEIBQAAAAF0AAAACXJlY2lwaWVudAAAAAVieXRlcwMJAQAAAAEhAAAAAQkBAAAACWlzRGVmaW5lZAAAAAEFAAAABGRhdGEJAAACAAAAAQIAAABFWW91IGFyZSBub3QgYSByZWdpc3RlcmVkIG1lbWJlci4gWW91IGNhbm5vdCB0cmFuc2ZlciB0aGlzIFNtYXJ0QXNzZXQhAwkAAAAAAAACBQAAAARkYXRhBQAAAApLWUNQZW5kaW5nCQAAAgAAAAECAAAAMEtZQyBQZW5kaW5nLiBZb3UgY2Fubm90IHRyYW5zZmVyIHRoaXMgU21hcnRBc3NldAMJAAAAAAAAAgUAAAAEZGF0YQUAAAAHS1lDVmVyMQMJAAAAAAAAAggFAAAAAXQAAAAJcmVjaXBpZW50BQAAAAdnYXRld2F5BgMDAwkAAAAAAAACBQAAAAZpc1VzZXIFAAAAB0tZQ1ZlcjEGCQAAAAAAAAIFAAAABmlzVXNlcgUAAAAHS1lDVmVyMgYJAAAAAAAAAgUAAAAGaXNVc2VyBQAAAAppc01lcmNoYW50AwkAAGcAAAACBQAAAAltYXhBbW91bnQFAAAABmFtb3VudAYJAAACAAAAAQIAAAA+Q2Fubm90IHRyYW5zZmVyIHBsZWFzZSB2ZXJpZnkgeW91ciBhY291bnQuIEFtb3VudCBpcyB0b28gbXVjaCEDCQAAAAAAAAIFAAAABmlzVXNlcgUAAAAKS1lDUGVuZGluZwkAAAIAAAABAgAAAEtUaGUgcmVjaXBpZW50IGlzIGluIEtZQyBwZW5kaW5nIHN0YXR1cy4gWW91IGNhbm5vdCB0cmFuc2ZlciB0aGlzIFNtYXJ0QXNzZXQDCQAAAAAAAAIFAAAABmlzVXNlcgUAAAAGYmFubmVkCQAAAgAAAAECAAAAPFRoZSByZWNpcGllbnQgaXMgYmFubmVkLiBZb3UgY2Fubm90IHRyYW5zZmVyIHRoaXMgU21hcnRBc3NldAkAAAIAAAABAgAAABRVbmRlZmluZWQgc2l0dWF0aW9uIQMJAAAAAAAAAgUAAAAEZGF0YQUAAAAHS1lDVmVyMgMJAQAAAAlpc0RlZmluZWQAAAABBQAAAAZpc1VzZXIDCQAAAAAAAAIFAAAABmlzVXNlcgUAAAAHS1lDVmVyMQMJAABnAAAAAgUAAAAJbWF4QW1vdW50BQAAAAZhbW91bnQGCQAAAgAAAAECAAAAPkNhbm5vdCB0cmFuc2ZlciBwbGVhc2UgdmVyaWZ5IHlvdXIgYWNvdW50LiBBbW91bnQgaXMgdG9vIG11Y2ghAwkAAAAAAAACBQAAAAZpc1VzZXIFAAAACktZQ1BlbmRpbmcJAAACAAAAAQIAAABLVGhlIHJlY2lwaWVudCBpcyBpbiBLWUMgcGVuZGluZyBzdGF0dXMuIFlvdSBjYW5ub3QgdHJhbnNmZXIgdGhpcyBTbWFydEFzc2V0AwMJAAAAAAAAAgUAAAAGaXNVc2VyBQAAAAdLWUNWZXIyBgkAAAAAAAACBQAAAAZpc1VzZXIFAAAACmlzTWVyY2hhbnQGAwkAAAAAAAACBQAAAAZpc1VzZXIFAAAABmJhbm5lZAkAAAIAAAABAgAAADxUaGUgcmVjaXBpZW50IGlzIGJhbm5lZC4gWW91IGNhbm5vdCB0cmFuc2ZlciB0aGlzIFNtYXJ0QXNzZXQJAAACAAAAAQIAAAAUVW5kZWZpbmVkIHNpdHVhdGlvbiEJAAACAAAAAQIA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AAAAAgUAAAALZmlyc3RBbW91bnQJAABoAAAAAgkAAGkAAAACBQAAAAxzZWNvbmRBbW91bnQAAAAAAAAAA+gFAAAAB3RheFNpemUHBwkAAAIAAAABAgAAAD5DYW5ub3QgdHJhbnNmZXIgcGxlYXNlIHZlcmlmeSB5b3VyIGFjb3VudC4gQW1vdW50IGlzIHRvbyBtdWNoIQMJAAAAAAAAAgUAAAAGaXNVc2VyBQAAAApLWUNQZW5kaW5nCQAAAgAAAAECAAAAS1RoZSByZWNpcGllbnQgaXMgaW4gS1lDIHBlbmRpbmcgc3RhdHVzLiBZb3UgY2Fubm90IHRyYW5zZmVyIHRoaXMgU21hcnRBc3NldAMJAAAAAAAAAgUAAAAGaXNVc2VyBQAAAAZiYW5uZWQJAAACAAAAAQIAAAA8VGhlIHJlY2lwaWVudCBpcyBiYW5uZWQuIFlvdSBjYW5ub3QgdHJhbnNmZXIgdGhpcyBTbWFydEFzc2V0AwkAAAAAAAACBQAAAAZpc1VzZXIFAAAACmlzTWVyY2hhbnQJAAACAAAAAQIAAAAmTWVyY2hhbnRzIGNhbm5vdCByZWNpZXZlIG1hc3MgcGF5bWVudHMJAAACAAAAAQIAAAAUVW5kZWZpbmVkIHNpdHVhdGlvbiEDCQAAAAAAAAIFAAAABGRhdGEFAAAAB0tZQ1ZlcjIDCQEAAAAJaXNEZWZpbmVkAAAAAQUAAAAGaXNVc2VyAwkAAAAAAAACBQAAAAZpc1VzZXIFAAAAB0tZQ1ZlcjEDCQAAZwAAAAIFAAAACW1heEFtb3VudAUAAAAGYW1vdW50BAAAAAckbWF0Y2gxBQAAABBpc3N1ZVRyYW5zYWN0aW9uAwkAAAEAAAACBQAAAAckbWF0Y2gxAgAAABBJc3N1ZVRyYW5zYWN0aW9uBAAAAAdpc3N1ZVR4BQAAAAckbWF0Y2gxBAAAAA1pc3N1ZXJBZGRyZXNzCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABCAUAAAAHaXNzdWVUeAAAAA9zZW5kZXJQdWJsaWNLZXkEAAAAB3RheFNpemUJAQAAAAdleHRyYWN0AAAAAQkABBoAAAACBQAAAA1pc3N1ZXJBZGRyZXNzCQACWAAAAAEFAAAAB2Fzc2V0SWQDCQAAAAAAAAIFAAAADmZpcnN0UmVjaXBpZW50BQAAAA1pc3N1ZXJBZGRyZXNzCQAAZwAAAAIFAAAAC2ZpcnN0QW1vdW50CQAAaAAAAAIJAABpAAAAAgUAAAAMc2Vjb25kQW1vdW50AAAAAAAAAAPoBQAAAAd0YXhTaXplBwcJAAACAAAAAQIAAAA+Q2Fubm90IHRyYW5zZmVyIHBsZWFzZSB2ZXJpZnkgeW91ciBhY291bnQuIEFtb3VudCBpcyB0b28gbXVjaCEDCQAAAAAAAAIFAAAABmlzVXNlcgUAAAAHS1lDVmVyMQkAAAIAAAABAgAAAEtUaGUgcmVjaXBpZW50IGlzIGluIEtZQyBwZW5kaW5nIHN0YXR1cy4gWW91IGNhbm5vdCB0cmFuc2ZlciB0aGlzIFNtYXJ0QXNzZXQDCQAAAAAAAAIFAAAABmlzVXNlcgUAAAAHS1lDVmVyMgQAAAAHJG1hdGNoMQUAAAAQaXNzdWVUcmFuc2FjdGlvbgMJAAABAAAAAgUAAAAHJG1hdGNoMQIAAAAQSXNzdWVUcmFuc2FjdGlvbgQAAAAHaXNzdWVUeAUAAAAHJG1hdGNoMQQAAAANaXNzdWVyQWRkcmVzcwkBAAAAFGFkZHJlc3NGcm9tUHVibGljS2V5AAAAAQgFAAAAB2lzc3VlVHgAAAAPc2VuZGVyUHVibGljS2V5BAAAAAd0YXhTaXplCQEAAAAHZXh0cmFjdAAAAAEJAAQaAAAAAgUAAAANaXNzdWVyQWRkcmVzcwkAAlgAAAABBQAAAAdhc3NldElkAwkAAAAAAAACBQAAAA5maXJzdFJlY2lwaWVudAUAAAANaXNzdWVyQWRkcmVzcwkAAGcAAAACBQAAAAtmaXJzdEFtb3VudAkAAGgAAAACCQAAaQAAAAIFAAAADHNlY29uZEFtb3VudAAAAAAAAAAD6AUAAAAHdGF4U2l6ZQcHAwkAAAAAAAACBQAAAAZpc1VzZXIFAAAABmJhbm5lZAkAAAIAAAABAgAAADxUaGUgcmVjaXBpZW50IGlzIGJhbm5lZC4gWW91IGNhbm5vdCB0cmFuc2ZlciB0aGlzIFNtYXJ0QXNzZXQDCQAAAAAAAAIFAAAABmlzVXNlcgUAAAAKaXNNZXJjaGFudAkAAAIAAAABAgAAACZNZXJjaGFudHMgY2Fubm90IHJlY2lldmUgbWFzcyBwYXltZW50cwkAAAIAAAABAgAAABRVbmRlZmluZWQgc2l0dWF0aW9uIQkAAAIAAAABAgAAADtUaGUgcmVjaXBpZW50IGlzIG5vdCBhdXRob3JpemVkIHRvIHBvc3Nlc3MgdGhpcyBTbWFydEFzc2V0IQMJAAAAAAAAAgUAAAAEZGF0YQUAAAAGYmFubmVkCQAAAgAAAAECAAAAH1lvdXIgYWNvdW50IGhhcyBiZWVuIHN1c3BlbmRlZCEDCQAAAAAAAAIFAAAABGRhdGEFAAAACmlzTWVyY2hhbnQJAAACAAAAAQIAAAAtTWVyY2hhbnQgYWNjb3VudCBjYW5ub3QgcGVyZm9ybSBtYXNzIHRyYW5zZmVyCQAAAgAAAAECAAAAFFVuZGVmaW5lZCBzaXR1YXRpb24hAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABNFeGNoYW5nZVRyYW5zYWN0aW9uBAAAAAJleAUAAAAHJG1hdGNoMAcDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAD0J1cm5UcmFuc2FjdGlvbgQAAAABYgUAAAAHJG1hdGNoMAcDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAGVNldEFzc2V0U2NyaXB0VHJhbnNhY3Rpb24EAAAABnNjcmlwdAUAAAAHJG1hdGNoMAMJAAAAAAAAAggFAAAABnNjcmlwdAAAAAZzZW5kZXIFAAAABWFkbWluBgkAAAIAAAABAgAAABZBZG1pbiBvcGVyYXRpb24gb25seS4uBnbXo2c=", "height": 1222926, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 8yot5eS82mPFgVaG5CdE7Cf3mP812qXyedqWfDpPfyJ9 Next: none Diff:
OldNewDifferences
1212 case t: TransferTransaction =>
1313 let data = getInteger(admin, toBase58String(t.sender.bytes))
1414 let amount = t.amount
15- let assetId = extract(t.assetId)
1615 let isUser = getInteger(admin, toBase58String(addressFromRecipient(t.recipient).bytes))
1716 if (!(isDefined(data)))
1817 then throw("You are not a registered member. You cannot transfer this SmartAsset!")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 2 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
33 let admin = Address(base58'3NCpyPuNzUaB7LFS4KBzwzWVnXmjur582oy')
44 let gateway = Address(base58'3NCpyPuNzUaB7LFS4KBzwzWVnXmjur582oy')
55 let banned = 403
66 let KYCVer1 = 1
77 let KYCVer2 = 2
88 let isMerchant = 5
99 let KYCPending = 0
1010 let maxAmount = 100000000
1111 match tx {
1212 case t: TransferTransaction =>
1313 let data = getInteger(admin, toBase58String(t.sender.bytes))
1414 let amount = t.amount
15- let assetId = extract(t.assetId)
1615 let isUser = getInteger(admin, toBase58String(addressFromRecipient(t.recipient).bytes))
1716 if (!(isDefined(data)))
1817 then throw("You are not a registered member. You cannot transfer this SmartAsset!")
1918 else if ((data == KYCPending))
2019 then throw("KYC Pending. You cannot transfer this SmartAsset")
2120 else if ((data == KYCVer1))
2221 then if ((t.recipient == gateway))
2322 then true
2423 else if (if (if ((isUser == KYCVer1))
2524 then true
2625 else (isUser == KYCVer2))
2726 then true
2827 else (isUser == isMerchant))
2928 then if ((maxAmount >= amount))
3029 then true
3130 else throw("Cannot transfer please verify your acount. Amount is too much!")
3231 else if ((isUser == KYCPending))
3332 then throw("The recipient is in KYC pending status. You cannot transfer this SmartAsset")
3433 else if ((isUser == banned))
3534 then throw("The recipient is banned. You cannot transfer this SmartAsset")
3635 else throw("Undefined situation!")
3736 else if ((data == KYCVer2))
3837 then if (isDefined(isUser))
3938 then if ((isUser == KYCVer1))
4039 then if ((maxAmount >= amount))
4140 then true
4241 else throw("Cannot transfer please verify your acount. Amount is too much!")
4342 else if ((isUser == KYCPending))
4443 then throw("The recipient is in KYC pending status. You cannot transfer this SmartAsset")
4544 else if (if ((isUser == KYCVer2))
4645 then true
4746 else (isUser == isMerchant))
4847 then true
4948 else if ((isUser == banned))
5049 then throw("The recipient is banned. You cannot transfer this SmartAsset")
5150 else throw("Undefined situation!")
5251 else throw("The recipient is not authorized to possess this SmartAsset!")
5352 else if ((data == banned))
5453 then throw("Your acount has been suspended!")
5554 else if ((data == isMerchant))
5655 then if ((t.recipient == gateway))
5756 then true
5857 else throw("Cannot transfer this asset to another account.")
5958 else throw("Undefined situation!")
6059 case mtt: MassTransferTransaction =>
6160 let data = getInteger(admin, toBase58String(mtt.sender.bytes))
6261 let amount = mtt.totalAmount
6362 let assetId = extract(mtt.assetId)
6463 let transferCount = mtt.transferCount
6564 let firstRecipient = mtt.transfers[0].recipient
6665 let secondRecipient = mtt.transfers[1].recipient
6766 let firstAmount = mtt.transfers[0].amount
6867 let secondAmount = mtt.transfers[1].amount
6968 let issueTransaction = transactionById(assetId)
7069 let isUser = getInteger(admin, toBase58String(addressFromRecipient(secondRecipient).bytes))
7170 if (!(isDefined(isUser)))
7271 then false
7372 else if ((transferCount > 2))
7473 then throw("not allowed")
7574 else if (!(isDefined(data)))
7675 then throw("You are not a registered member. You cannot transfer this SmartAsset!")
7776 else if ((data == KYCPending))
7877 then throw("KYC Pending. You cannot transfer this SmartAsset")
7978 else if ((data == KYCVer1))
8079 then if ((firstRecipient != gateway))
8180 then throw("First recipient must be the issuer")
8281 else if (if ((isUser == KYCVer1))
8382 then true
8483 else (isUser == KYCVer2))
8584 then if ((maxAmount >= amount))
8685 then match issueTransaction {
8786 case issueTx: IssueTransaction =>
8887 let issuerAddress = addressFromPublicKey(issueTx.senderPublicKey)
8988 let taxSize = extract(getInteger(issuerAddress, toBase58String(assetId)))
9089 if ((firstRecipient == issuerAddress))
9190 then (firstAmount >= ((secondAmount / 1000) * taxSize))
9291 else false
9392 case _ =>
9493 false
9594 }
9695 else throw("Cannot transfer please verify your acount. Amount is too much!")
9796 else if ((isUser == KYCPending))
9897 then throw("The recipient is in KYC pending status. You cannot transfer this SmartAsset")
9998 else if ((isUser == banned))
10099 then throw("The recipient is banned. You cannot transfer this SmartAsset")
101100 else if ((isUser == isMerchant))
102101 then throw("Merchants cannot recieve mass payments")
103102 else throw("Undefined situation!")
104103 else if ((data == KYCVer2))
105104 then if (isDefined(isUser))
106105 then if ((isUser == KYCVer1))
107106 then if ((maxAmount >= amount))
108107 then match issueTransaction {
109108 case issueTx: IssueTransaction =>
110109 let issuerAddress = addressFromPublicKey(issueTx.senderPublicKey)
111110 let taxSize = extract(getInteger(issuerAddress, toBase58String(assetId)))
112111 if ((firstRecipient == issuerAddress))
113112 then (firstAmount >= ((secondAmount / 1000) * taxSize))
114113 else false
115114 case _ =>
116115 false
117116 }
118117 else throw("Cannot transfer please verify your acount. Amount is too much!")
119118 else if ((isUser == KYCVer1))
120119 then throw("The recipient is in KYC pending status. You cannot transfer this SmartAsset")
121120 else if ((isUser == KYCVer2))
122121 then match issueTransaction {
123122 case issueTx: IssueTransaction =>
124123 let issuerAddress = addressFromPublicKey(issueTx.senderPublicKey)
125124 let taxSize = extract(getInteger(issuerAddress, toBase58String(assetId)))
126125 if ((firstRecipient == issuerAddress))
127126 then (firstAmount >= ((secondAmount / 1000) * taxSize))
128127 else false
129128 case _ =>
130129 false
131130 }
132131 else if ((isUser == banned))
133132 then throw("The recipient is banned. You cannot transfer this SmartAsset")
134133 else if ((isUser == isMerchant))
135134 then throw("Merchants cannot recieve mass payments")
136135 else throw("Undefined situation!")
137136 else throw("The recipient is not authorized to possess this SmartAsset!")
138137 else if ((data == banned))
139138 then throw("Your acount has been suspended!")
140139 else if ((data == isMerchant))
141140 then throw("Merchant account cannot perform mass transfer")
142141 else throw("Undefined situation!")
143142 case ex: ExchangeTransaction =>
144143 false
145144 case b: BurnTransaction =>
146145 false
147146 case script: SetAssetScriptTransaction =>
148147 if ((script.sender == admin))
149148 then true
150149 else throw("Admin operation only..")
151150 case _ =>
152151 true
153152 }

github/deemru/w8io/6500d08 
42.66 ms