tx · 9iQF6Mh8F6J58wWRqmJbAtQvC7yTAfch4zvRRPQnF2jv

3P6VEUyoBE1qdNuhUzbnFRLThuoe1pzS4B2:  -0.01400000 Waves

2020.10.19 01:27 [2290314] smart account 3P6VEUyoBE1qdNuhUzbnFRLThuoe1pzS4B2 > SELF 0.00000000 Waves

{ "type": 13, "id": "9iQF6Mh8F6J58wWRqmJbAtQvC7yTAfch4zvRRPQnF2jv", "fee": 1400000, "feeAssetId": null, "timestamp": 1603060090574, "version": 2, "chainId": 87, "sender": "3P6VEUyoBE1qdNuhUzbnFRLThuoe1pzS4B2", "senderPublicKey": "3o7qJCobCVuW81YsLvWLKA9vbEdKavWEdatMWHcV74P3", "proofs": [ "2jLaHB9JRqnwEbC7nVqmQhsq7xhz3BXDe9ZX7R7i6MkbEKj6wQyJrVtGiJSpra1pcdpggAHjWoKabvqufxVmhjnj", "g47isXQPUPGSmMX8psUdPphZhqXVSR3Xq7KrHCDWkU8ghUNvygj36Cma4nxeeGmPZFWZEpKwoUVrFygDtKbaFkF" ], "script": "base64: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", "height": 2290314, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Cud4SLvUJdanBLbUF9icTH8xUfx7NzBMFwLFvxRVZcQQ Next: 878iEYG6DjuoCoa5tTiHLsjdiJZNyv9cQxvJw5LCeZNk Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
3-let scriptVersion = "v1.01-beta_20201004"
3+let scriptVersion = "v1.02-final_20201019"
44 let maxFunds = (10000 * 100000)
55 let adminPublicKey = base58'JDYJq5RKnSXKLYUQfL89zWPdM3QH5hW8JUTpjnTYV95k'
66 let mmbotPublicKey = base58'62KBavoHK4TtCYmURFVeNC8j3gL8Jo7WwcrweoBLWofc'
2626 let isValidAdmin = if (isValidOwner)
2727 then true
2828 else sigVerify_8Kb(tx.bodyBytes, tx.proofs[1], adminPublicKey)
29-let isValidGuarantors = ((((((if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[1], guarantors[0]))
29+let validGuarantors = (((((if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[1], guarantors[0]))
3030 then 1
3131 else 0) + (if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[2], guarantors[1]))
3232 then 1
3636 then 1
3737 else 0)) + (if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[5], guarantors[4]))
3838 then 1
39- else 0)) >= minSignatures)
39+ else 0))
40+let isValidGuarantors = (validGuarantors >= minSignatures)
4041 let maxSendAmount = max([0, (assetBalance(this, fmmtAsset) - maxFunds)])
4142 match tx {
42- case b: BurnTransaction =>
43- if (if (isValidOwner)
44- then (b.assetId != xfeeAsset)
45- else false)
46- then !(containsElement(fixedAssets, b.assetId))
47- else false
4843 case o: Order =>
4944 if (if (if (isValidMMBot)
5045 then if (if (if ((o.orderType == Buy))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
3-let scriptVersion = "v1.01-beta_20201004"
3+let scriptVersion = "v1.02-final_20201019"
44 let maxFunds = (10000 * 100000)
55 let adminPublicKey = base58'JDYJq5RKnSXKLYUQfL89zWPdM3QH5hW8JUTpjnTYV95k'
66 let mmbotPublicKey = base58'62KBavoHK4TtCYmURFVeNC8j3gL8Jo7WwcrweoBLWofc'
77 let wxchgPublicKey = base58'9cpfKN9suPNvfeUNphzxXMjcnn974eme8ZhWUjaktzU5'
88 let guarantors = ([valueOrElse(getBinary(this, "guarantor1"), base58''), valueOrElse(getBinary(this, "guarantor2"), base58''), valueOrElse(getBinary(this, "guarantor3"), base58''), valueOrElse(getBinary(this, "guarantor4"), base58''), valueOrElse(getBinary(this, "guarantor5"), base58'')] :+ base58'')
99 let actualSize = value(indexOf(guarantors, base58''))
1010 let minSignatures = ((actualSize / 2) + (actualSize % 2))
1111 let btcAsset = base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS'
1212 let ethAsset = base58'474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu'
1313 let usdtAsset = base58'34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ'
1414 let fmmtAsset = base58'7sqT7HvCVtcrCTQV72FM5so65wjzM164rzoqDZRsRXg7'
1515 let xfeeAsset = base58'5EMfVQiB8NF4HuhaXrZzDM637whWuVBsduq59ZaCSNqk'
1616 let fixedAssets = ([btcAsset, ethAsset, usdtAsset, fmmtAsset] :+ unit)
1717 let admin = Address(base58'3PLRw83NCgHKKFfeJi8XWZ4fypqJJxm2x2x')
1818 let fteam = Address(base58'3P3TMgAUVtJKWHxQMdt8Ao6A1qnRyVmCSr2')
1919 let fsale = Address(base58'3P6VEUyoBE1qdNuhUzbnFRLThuoe1pzS4B2')
2020 let fdapp = Address(base58'3PFRxT9CXG81Evr8MeVJGnQSjFP6cq1SHWL')
2121 let fcold = Address(base58'3PDUqa5qmnhPJfKPnBzUd5PisA42iawV6W7')
2222 let isValidOwner = sigVerify_8Kb(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
2323 let isValidMMBot = if (isValidOwner)
2424 then true
2525 else sigVerify_8Kb(tx.bodyBytes, tx.proofs[1], mmbotPublicKey)
2626 let isValidAdmin = if (isValidOwner)
2727 then true
2828 else sigVerify_8Kb(tx.bodyBytes, tx.proofs[1], adminPublicKey)
29-let isValidGuarantors = ((((((if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[1], guarantors[0]))
29+let validGuarantors = (((((if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[1], guarantors[0]))
3030 then 1
3131 else 0) + (if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[2], guarantors[1]))
3232 then 1
3333 else 0)) + (if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[3], guarantors[2]))
3434 then 1
3535 else 0)) + (if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[4], guarantors[3]))
3636 then 1
3737 else 0)) + (if (sigVerify_8Kb(tx.bodyBytes, tx.proofs[5], guarantors[4]))
3838 then 1
39- else 0)) >= minSignatures)
39+ else 0))
40+let isValidGuarantors = (validGuarantors >= minSignatures)
4041 let maxSendAmount = max([0, (assetBalance(this, fmmtAsset) - maxFunds)])
4142 match tx {
42- case b: BurnTransaction =>
43- if (if (isValidOwner)
44- then (b.assetId != xfeeAsset)
45- else false)
46- then !(containsElement(fixedAssets, b.assetId))
47- else false
4843 case o: Order =>
4944 if (if (if (isValidMMBot)
5045 then if (if (if ((o.orderType == Buy))
5146 then (o.assetPair.priceAsset != xfeeAsset)
5247 else false)
5348 then containsElement(fixedAssets, o.assetPair.amountAsset)
5449 else false)
5550 then true
5651 else if (if ((o.orderType == Sell))
5752 then (o.assetPair.amountAsset != xfeeAsset)
5853 else false)
5954 then containsElement(fixedAssets, o.assetPair.priceAsset)
6055 else false
6156 else false)
6257 then !(isDefined(o.matcherFeeAssetId))
6358 else false)
6459 then (o.matcherPublicKey == wxchgPublicKey)
6560 else false
6661 case t: TransferTransaction =>
6762 if (if (if (isValidOwner)
6863 then !(containsElement(fixedAssets, t.assetId))
6964 else false)
7065 then !(containsElement(fixedAssets, t.feeAssetId))
7166 else false)
7267 then true
7368 else if (if (if (isValidAdmin)
7469 then (t.assetId == fmmtAsset)
7570 else false)
7671 then (maxSendAmount >= t.amount)
7772 else false)
7873 then (addressFromRecipient(t.recipient) == fcold)
7974 else false
8075 case _: SetScriptTransaction|DataTransaction =>
8176 if (isValidAdmin)
8277 then isValidGuarantors
8378 else false
8479 case _ =>
8580 false
8681 }

github/deemru/w8io/3ef1775 
34.10 ms