tx · 73sDiKhAnMWZzJad56DRe3HxCZMiSzD4YnUouFCXjMbz

3NBKyBecpk6G199CcfRZTNH4hwF3HBoAYvm:  -0.01000000 Waves

2019.03.20 21:48 [544988] smart account 3NBKyBecpk6G199CcfRZTNH4hwF3HBoAYvm > SELF 0.00000000 Waves

{ "type": 13, "id": "73sDiKhAnMWZzJad56DRe3HxCZMiSzD4YnUouFCXjMbz", "fee": 1000000, "feeAssetId": null, "timestamp": 1553107698920, "version": 1, "sender": "3NBKyBecpk6G199CcfRZTNH4hwF3HBoAYvm", "senderPublicKey": "DBbB6jyexVWTDduRui8dTF3iy1SriDLiRzvr7py94J9w", "proofs": [ "3PGuHsz5nYnBBis2EA5E3kLWym3cY1yvnMastyARTNyQ327JtURd4VPEEaiim6fgbbfLAsaD4uR2qBcNd5FidfpT" ], "script": "base64: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", "chainId": 84, "height": 544988, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 2 #-}
2+{-# CONTENT_TYPE EXPRESSION #-}
3+let a = "MaDaMa Labs @daidalos"
4+let sApK = base58'CzeJPTyeyPycMs7HwFZZnDRoPiQ8zukioFvPduMmRSgR'
5+let sA = addressFromPublicKey(sApK)
6+let mA = tx.sender
7+let mApK = tx.senderPublicKey
8+let oW = 100000000
9+let pA = (1 * oW)
10+let wA = (10 * oW)
11+let pTf = (oW / 100)
12+let dTf = (oW / 100)
13+let wTf = (oW / 100)
14+let sP = 0
15+let eP = 24
16+let pP = "_pos"
17+let pH = "_hash"
18+let sL = 50
19+if ((mA != addressFromPublicKey(mApK)))
20+ then throw("INIT: SENDER IS WRONG")
21+ else match tx {
22+ case dT: DataTransaction =>
23+ if (sigVerify(dT.bodyBytes, dT.proofs[0], sApK))
24+ then if (isDefined(getString(dT.data, "_s_mt")))
25+ then {
26+ let sMt = extract(getString(dT.data, "_s_mt"))
27+ let mT = transactionById(fromBase58String(sMt))
28+ match mT {
29+ case mT: MassTransferTransaction =>
30+ if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if (if ((size(dT.data) == 26))
31+ then (mT.sender == mA)
32+ else false)
33+ then (dT.fee == dTf)
34+ else false)
35+ then isDefined(getString(dT.data, "_key00"))
36+ else false)
37+ then isDefined(getString(dT.data, "_key01"))
38+ else false)
39+ then isDefined(getString(dT.data, "_key02"))
40+ else false)
41+ then isDefined(getString(dT.data, "_key03"))
42+ else false)
43+ then isDefined(getString(dT.data, "_key04"))
44+ else false)
45+ then isDefined(getString(dT.data, "_key05"))
46+ else false)
47+ then isDefined(getString(dT.data, "_key06"))
48+ else false)
49+ then isDefined(getString(dT.data, "_key07"))
50+ else false)
51+ then isDefined(getString(dT.data, "_key08"))
52+ else false)
53+ then isDefined(getString(dT.data, "_key09"))
54+ else false)
55+ then isDefined(getString(dT.data, "_key10"))
56+ else false)
57+ then isDefined(getString(dT.data, "_key11"))
58+ else false)
59+ then isDefined(getString(dT.data, "_key12"))
60+ else false)
61+ then isDefined(getString(dT.data, "_key13"))
62+ else false)
63+ then isDefined(getString(dT.data, "_key14"))
64+ else false)
65+ then isDefined(getString(dT.data, "_key15"))
66+ else false)
67+ then isDefined(getString(dT.data, "_key16"))
68+ else false)
69+ then isDefined(getString(dT.data, "_key17"))
70+ else false)
71+ then isDefined(getString(dT.data, "_key18"))
72+ else false)
73+ then isDefined(getString(dT.data, "_key19"))
74+ else false)
75+ then isDefined(getString(dT.data, "_key20"))
76+ else false)
77+ then isDefined(getString(dT.data, "_key21"))
78+ else false)
79+ then isDefined(getString(dT.data, "_key22"))
80+ else false)
81+ then isDefined(getString(dT.data, "_key23"))
82+ else false)
83+ then isDefined(getString(dT.data, "_key24"))
84+ else false
85+ case _ =>
86+ false
87+ }
88+ }
89+ else {
90+ let sHash = getString(dT.data, "_s_hash")
91+ let sPos = getString(dT.data, "_s_pos")
92+ let sKey = getString(dT.data, "_s_key")
93+ if (if (if (if (if (if (if (if (if (if (if ((size(dT.data) == 4))
94+ then (dT.fee == dTf)
95+ else false)
96+ then isDefined(sHash)
97+ else false)
98+ then isDefined(sPos)
99+ else false)
100+ then isDefined(sKey)
101+ else false)
102+ then isDefined(getString(dT.data, extract(sKey)))
103+ else false)
104+ then (takeRight(extract(sHash), 2) == takeRight(extract(sPos), 2))
105+ else false)
106+ then (takeRight(extract(sHash), 2) == takeRight(extract(sKey), 2))
107+ else false)
108+ then (takeRight(extract(sKey), 2) == take(extract(getString(dT.data, extract(sKey))), 2))
109+ else false)
110+ then isDefined(getString(mA, extract(sHash)))
111+ else false)
112+ then isDefined(getString(mA, extract(sPos)))
113+ else false)
114+ then !(isDefined(getString(mA, extract(sKey))))
115+ else false
116+ }
117+ else {
118+ let iPc = isDefined(getInteger(dT.data, pP))
119+ if (!(iPc))
120+ then throw("DT: POS value is not an int")
121+ else {
122+ let iP = extract(getInteger(dT.data, pP))
123+ let vP = if ((iP >= sP))
124+ then (eP >= iP)
125+ else false
126+ if (!(vP))
127+ then throw("DT: POS is not valid")
128+ else {
129+ let iPsT = if ((iP > 9))
130+ then toString(iP)
131+ else ("0" + toString(iP))
132+ let iPs = (pP + iPsT)
133+ let pTi = extract(getString(dT.data, iPs))
134+ let sF = if (if (if (if (if ((size(dT.data) == 3))
135+ then (dT.fee == dTf)
136+ else false)
137+ then iPc
138+ else false)
139+ then isDefined(getString(dT.data, iPs))
140+ else false)
141+ then isDefined(getBoolean(dT.data, pTi))
142+ else false)
143+ then (extract(getBoolean(dT.data, pTi)) == true)
144+ else false
145+ if (!(sF))
146+ then throw("DT: DATA FORMAT is not valid")
147+ else {
148+ let pNu = !(isDefined(getString(mA, iPs)))
149+ if (!(pNu))
150+ then throw("DT: POSISTION alredy used")
151+ else {
152+ let iInU = !(isDefined(getBoolean(mA, pTi)))
153+ if (!(iInU))
154+ then throw("DT: TXID alredy used")
155+ else {
156+ let dTiV = if (if (if (vP)
157+ then sF
158+ else false)
159+ then pNu
160+ else false)
161+ then iInU
162+ else false
163+ let pT = transactionById(fromBase58String(pTi))
164+ match pT {
165+ case pT: TransferTransaction =>
166+ if (if (if (if (if (if (if (if (dTiV)
167+ then (addressFromPublicKey(pT.attachment) == mA)
168+ else false)
169+ then (pT.recipient == sA)
170+ else false)
171+ then (pT.amount >= (pA - pTf))
172+ else false)
173+ then !(isDefined(pT.assetId))
174+ else false)
175+ then !(isDefined(pT.feeAssetId))
176+ else false)
177+ then sigVerify(dT.bodyBytes, dT.proofs[0], pT.senderPublicKey)
178+ else false)
179+ then (pT.sender != mA)
180+ else false)
181+ then (pT.sender != sA)
182+ else false
183+ case _ =>
184+ throw("DT: TRANSACTION type is not a Transfer")
185+ }
186+ }
187+ }
188+ }
189+ }
190+ }
191+ }
192+ case wT: MassTransferTransaction =>
193+ let wTa = wT.attachment
194+ if ((size(wTa) != (sL + 5)))
195+ then throw("MTT: ATTACHMENT SIZE is wrong")
196+ else {
197+ let uB = takeRightBytes(take(wTa, 2), 1)
198+ let tB = take(wTa, 1)
199+ let wB = takeRightBytes(take(wTa, 4), 1)
200+ let unitsInt = if ((uB == toBytes("0")))
201+ then 0
202+ else if ((uB == toBytes("1")))
203+ then 1
204+ else if ((uB == toBytes("2")))
205+ then 2
206+ else if ((uB == toBytes("3")))
207+ then 3
208+ else if ((uB == toBytes("4")))
209+ then 4
210+ else if ((uB == toBytes("5")))
211+ then 5
212+ else if ((uB == toBytes("6")))
213+ then 6
214+ else if ((uB == toBytes("7")))
215+ then 7
216+ else if ((uB == toBytes("8")))
217+ then 8
218+ else if ((uB == toBytes("9")))
219+ then 9
220+ else 0
221+ let tensInt = if ((tB == toBytes("0")))
222+ then 0
223+ else if ((tB == toBytes("1")))
224+ then 10
225+ else if ((tB == toBytes("2")))
226+ then 20
227+ else 0
228+ let posInt = (tensInt + unitsInt)
229+ let vP = if ((posInt >= sP))
230+ then (eP >= posInt)
231+ else false
232+ if (!(vP))
233+ then throw("MTT: POS NUMBER is not valid")
234+ else {
235+ let pS = if ((posInt > 9))
236+ then toString(posInt)
237+ else ("0" + toString(posInt))
238+ let pHd = isDefined(getString(mA, (pH + pS)))
239+ if (!(pHd))
240+ then throw("MTT: POS HASH not found in data")
241+ else {
242+ let psH = extract(getString(mA, (pH + pS)))
243+ let validateAttachment = (sha256(wTa) == fromBase58String(psH))
244+ if (!(validateAttachment))
245+ then throw("MTT: ATTACHMENT HASH is not valid")
246+ else {
247+ let sAc = if ((wT.transfers[0].recipient == sA))
248+ then (size(wT.transfers) == 2)
249+ else false
250+ if (!(sAc))
251+ then throw("MTT: SERVER ADDRESS is wrong")
252+ else {
253+ let iW = (wB == toBytes("1"))
254+ if (!(iW))
255+ then throw("MTT: POS is not winner")
256+ else {
257+ let pTi = extract(getString(mA, (pP + pS)))
258+ let pT = transactionById(fromBase58String(pTi))
259+ match pT {
260+ case pT: TransferTransaction =>
261+ let rItP = (wT.transfers[1].recipient == pT.sender)
262+ if (!(rItP))
263+ then throw("MTT: WINNER RECIPIENT is wrong")
264+ else if (if (if (if (if ((wT.transfers[0].amount == (((wavesBalance(mA) - wA) - wTf) - dTf)))
265+ then (wT.transfers[1].amount == wA)
266+ else false)
267+ then !(isDefined(pT.assetId))
268+ else false)
269+ then !(isDefined(pT.feeAssetId))
270+ else false)
271+ then (wT.fee == wTf)
272+ else false)
273+ then if (sigVerify(wT.bodyBytes, wT.proofs[0], sApK))
274+ then true
275+ else sigVerify(wT.bodyBytes, wT.proofs[0], pT.senderPublicKey)
276+ else false
277+ case _ =>
278+ throw("MTT: TRANSACTION type is not a Transfer")
279+ }
280+ }
281+ }
282+ }
283+ }
284+ }
285+ }
286+ case sT: TransferTransaction =>
287+ let wRc = ((wA + wTf) > wavesBalance(mA))
288+ if (!(wRc))
289+ then throw("TT: WAVES balance is more then win amount")
290+ else {
291+ let sAc = (sT.recipient == sA)
292+ if (!(sAc))
293+ then throw("TT: SERVER ADDRESS is wrong")
294+ else if (sigVerify(sT.bodyBytes, sT.proofs[0], sApK))
295+ then (sT.fee == wTf)
296+ else false
297+ }
298+ case _ =>
299+ sigVerify(tx.bodyBytes, tx.proofs[0], mApK)
300+ }

github/deemru/w8io/873ac7e 
28.83 ms