tx · E8W4BYzD2nqRAz8PrB6KdhexAA2jTezYVf8Sevv6buMS

3Mt71RiSbWYENDmeyndvwjoJZwUsXfUkR6b:  -0.01400000 Waves

2021.02.09 09:34 [1390294] smart account 3Mt71RiSbWYENDmeyndvwjoJZwUsXfUkR6b > SELF 0.00000000 Waves

{ "type": 13, "id": "E8W4BYzD2nqRAz8PrB6KdhexAA2jTezYVf8Sevv6buMS", "fee": 1400000, "feeAssetId": null, "timestamp": 1612852549007, "version": 2, "chainId": 84, "sender": "3Mt71RiSbWYENDmeyndvwjoJZwUsXfUkR6b", "senderPublicKey": "3BKFQLeo5ExZ5Y1pt9Ftzsno7aRwzD96zoYVHP3tcLgV", "proofs": [ "Xjwwg6Kao6Z6vfY8ovp4XN3B75U4n1vtZVGMvTAkZoqNzF1UnFuHjoU3ymKLLJGddJfrPYKqxR8dm8vxUhZEAc9" ], "script": "base64:AAIDAAAAAAAAAA0IARIHCgUBAQEBCBIAAAAAEAAAAAANbG90dGVyeWFtb3VudAIAAAAHX2Ftb3VudAAAAAASbG90dGVyeXByb2JhYmlsaXR5AgAAAAxfcHJvYmFiaWxpdHkAAAAAGWxvdHRlcnlwcm9iYWJpbGl0eWRlY2ltYWwCAAAAFF9wcm9iYWJpbGl0eV9kZWNpbWFsAAAAAAxsb3R0ZXJ5UHJpY2UCAAAABl9wcmljZQAAAAANbG90dGVyeVByaWNlcwIAAAAPX2xvdHRlcnlfcHJpY2VzAAAAAA5sb3R0ZXJ5QXNzZXRJZAIAAAARX2xvdHRlcnlfYXNzZXRfaWQAAAAADWNvdW50T2ZQcmljZXMCAAAADV9jb3VudF9wcmljZXMAAAAAFGxhc3RIYXNoUmFuZG9tTnVtYmVyAgAAABVsYXN0X3NwaW5fcmFuZG9tX2hhc2gAAAAAE2xhc3RUb2tlblJhbmRvbUhhc2gCAAAAFmxhc3RfdG9rZW5fcmFuZG9tX2hhc2gAAAAACmRBcHBBZGRyZXMCAAAALDNCS0ZRTGVvNUV4WjVZMXB0OUZ0enNubzdhUnd6RDk2em9ZVkhQM3RjTGdWAQAAAApyYW5kb21pemVyAAAAAQAAAANpbnYEAAAACGxhc3RQbGF5BAAAAAckbWF0Y2gwCQAEHAAAAAIFAAAABHRoaXMFAAAAFGxhc3RIYXNoUmFuZG9tTnVtYmVyAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAFzBQAAAAckbWF0Y2gwBQAAAAFzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0AQAAAAxXYXZlc0xvdHRvVjIJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IEAAAABHJhbmQJAADLAAAAAgkAAMsAAAACCQAAywAAAAIJAADLAAAAAgkAAMsAAAACBQAAAAhsYXN0UGxheQgFAAAAA2ludgAAAA10cmFuc2FjdGlvbklkCAUAAAADaW52AAAAD2NhbGxlclB1YmxpY0tleQgFAAAACWxhc3RCbG9jawAAABNnZW5lcmF0aW9uU2lnbmF0dXJlCQABmgAAAAEIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wCQABmgAAAAEIBQAAAAlsYXN0QmxvY2sA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dG9rZW4FAAAADWxvdHRlcnlhbW91bnQDCQAAAAAAAAIFAAAADWN1cnJlbnRBbW91bnQAAAAAAAAAAAAJAAACAAAAAQIAAAAPQW1vdW50IGV4Y2VlZGVkBAAAAAxhY3R1YWxBbW91bnQJAABlAAAAAgUAAAANY3VycmVudEFtb3VudAAAAAAAAAAAAQQAAAAKdG9rZW5QcmljZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACBQAAAAV0b2tlbgUAAAAMbG90dGVyeVByaWNlBAAAAAx0b2tlbkFzc2V0SWQJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAFdG9rZW4FAAAADmxvdHRlcnlBc3NldElkAwkAAAAAAAACBQAAAAxhY3R1YWxBbW91bnQAAAAAAAAAAAAEAAAAEGFjdHVhbExpc3RQcmljZXMEAAAADSRsaXN0NzYxMjc2NjIFAAAACXByaWNlTGlzdAQAAAANJHNpemU3NjEyNzY2MgkAAZAAAAABBQAAAA0kbGlzdDc2MTI3NjYyBAAAAA0kYWNjMDc2MTI3NjYyBQAAAAV0b2tlbgMJAAAAAAAAAgUAAAANJHNpemU3NjEyNzY2MgAAAAAAAAAAAAUAAAANJGFjYzA3NjEyNzY2MgQAAAANJGFjYzE3NjEyNzY2MgkBAAAAF2dlbmVyYXRlTmV3TGlzdE9mUHJpY2VzAAAAAgUAAAANJGFjYzA3NjEyNzY2MgkAAZEAAAACBQAAAA0kbGlzdDc2MTI3NjYyAAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTc2MTI3NjYyAAAAAAAAAAABBQAAAA0kYWNjMTc2MTI3NjYyBAAAAA0kYWNjMjc2MTI3NjYyCQEAAAAXZ2VuZXJhdGVOZXdMaXN0T2ZQcmljZXMAAAACBQAAAA0kYWNjMTc2MTI3NjYyCQABkQAAAAIFAAAADSRsaXN0NzYxMjc2NjIAAAAAAAAAAAEDCQAAAAAAAAIFAAAADSRzaXplNzYxMjc2NjIAAAAAAAAAAAIFAAAADSRhY2MyNzYxMjc2NjIEAAAADSRhY2MzNzYxMjc2NjIJAQAAABdnZW5lcmF0ZU5ld0xpc3RPZlByaWNlcwAAAAIFAAAADSRhY2MyNzYxMjc2NjIJAAGRAAAAAgUAAAANJGxpc3Q3NjEyNzY2MgAAAAAAAAAAAgMJAAAAAAAAAgUAAAANJHNpemU3NjEyNzY2MgAAAAAAAAAAAwUAAAANJGFjYzM3NjEyNzY2MgQAAAANJGFjYzQ3NjEyNzY2MgkBAAAAF2dlbmVyYXRlTmV3TGlzdE9mUHJpY2VzAAAAAgUAAAANJGFjYzM3NjEyNzY2MgkAAZEAAAACBQAAAA0kbGlzdDc2MTI3NjYyAAAAAAAAAAADAwkAAAAAAAACBQAAAA0kc2l6ZTc2MTI3NjYyAAAAAAAAAAAEBQAAAA0kYWNjNDc2MTI3NjYyBAAAAA0kYWNjNTc2MTI3NjYyCQEAAAAXZ2VuZXJhdGVOZXdMaXN0T2ZQcmljZXMAAAACBQAAAA0kYWNjNDc2MTI3NjYyCQABkQAAAAIFAAAADSRsaXN0NzYxMjc2NjIAAAAAAAAAAAQDCQAAAAAAAAIFAAAADSRzaXplNzYxMjc2NjIAAAAAAAAAAAUFAAAADSRhY2M1NzYxMjc2NjIEAAAADSRhY2M2NzYxMjc2NjIJAQAAABdnZW5lcmF0ZU5ld0xpc3RPZlByaWNlcwAAAAIFAAAADSRhY2M1NzYxMjc2NjIJAAGRAAAAAgUAAAANJGxpc3Q3NjEyNzY2MgAAAAAAAAAABQkAAAIAAAABAgAAABJMaXN0IHNpemUgZXhjZWVkIDUEAAAACXdyaXRlU2V0cwkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAApjdXJyZW50S2V5AgAAAA9fd2lubmluZ190b2tlbl8FAAAABXRva2VuCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAACmN1cnJlbnRLZXkCAAAAE193aW5pbm5pbmdfYWRkcmVzc18FAAAACmN1cnJlbnRLZXkJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAFdG9rZW4FAAAADWxvdHRlcnlhbW91bnQFAAAADGFjdHVhbEFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAAV0b2tlbgUAAAANbG90dGVyeVByaWNlcwUAAAAQYWN0dWFsTGlzdFByaWNlcwkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAUbGFzdEhhc2hSYW5kb21OdW1iZXIFAAAACnJhbmROdW1iZXIFAAAAA25pbAMJAAAAAAAAAgUAAAAMdG9rZW5Bc3NldElkAgAAAAAEAAAAC3dpblRyYW5zZmVyCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAKdG9rZW5QcmljZQUAAAAEdW5pdAUAAAADbmlsCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgUAAAAJd3JpdGVTZXRzBQAAAAt3aW5UcmFuc2ZlcgQAAAALd2luVHJhbnNmZXIJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAAp0b2tlblByaWNlBQAAAAR1bml0BQAAAANuaWwJAQAAAAxTY3JpcHRSZXN1bHQAAAACBQAAAAl3cml0ZVNldHMFAAAAC3dpblRyYW5zZmVyBAAAAAl3cml0ZVNldHMJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgUAAAAKY3VycmVudEtleQIAAAAPX3dpbm5pbmdfdG9rZW5fBQAAAAV0b2tlbgkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACBQAAAApjdXJyZW50S2V5AgAAABNfd2luaW5uaW5nX2FkZHJlc3NfBQAAAApjdXJyZW50S2V5CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIFAAAABXRva2VuBQAAAA1sb3R0ZXJ5YW1vdW50BQAAAAxhY3R1YWxBbW91bnQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAFGxhc3RIYXNoUmFuZG9tTnVtYmVyBQAAAApyYW5kTnVtYmVyBQAAAANuaWwDCQAAAAAAAAIFAAAADHRva2VuQXNzZXRJZAIAAAAABAAAAAt3aW5UcmFuc2ZlcgkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAACnRva2VuUHJpY2UFAAAABHVuaXQFAAAAA25pbAkBAAAADFNjcmlwdFJlc3VsdAAAAAIFAAAACXdyaXRlU2V0cwUAAAALd2luVHJhbnNmZXIEAAAAC3dpblRyYW5zZmVyCQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAKdG9rZW5QcmljZQUAAAAEdW5pdAUAAAADbmlsCQEAAAAMU2NyaXB0UmVzdWx0AAAAAgUAAAAJd3JpdGVTZXRzBQAAAAt3aW5UcmFuc2ZlcgAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAByRtYXRjaDAFAAAAAnR4AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAA9EYXRhVHJhbnNhY3Rpb24GAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABRTZXRTY3JpcHRUcmFuc2FjdGlvbgYJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5xwqZUg==", "height": 1390294, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: F2fuYZVgfg1GyxB1kNMmG8v9BAWGmEmjyd4jcmrQxmNy Next: XRgHQdmKy2X4MoDWaFB9PvZ2aJPuTc6YSr37PzLa9V1 Diff:
OldNewDifferences
130130 case _ =>
131131 throw("Match error")
132132 }
133+ let tempVal = getSizePriceArray()
133134 let countTokens = getSizePriceArray()
134- let updateLotteryPool = WriteSet([DataEntry((token + lotteryamount), amount), DataEntry((token + lotteryprobability), probability), DataEntry((token + lotteryPrice), poolprice), DataEntry((token + lotteryPrices), storedTokensValues), DataEntry((token + countOfPrices), 4), DataEntry((token + lotteryprobabilitydecimal), probDecimal), DataEntry((token + lotteryAssetId), assetId), DataEntry((token + lastTokenRandomHash), token)])
135- ScriptResult(updateLotteryPool, TransferSet(nil))
135+ throw(toString(countTokens))
136136 }
137137 }
138138 }
147147 let priceList = getPriceArray()
148148 let randNumber = toInt(randhash)
149149 let winningToken = {
150- let $list66546691 = priceList
151- let $size66546691 = size($list66546691)
152- let $acc066546691 = nil
153- if (($size66546691 == 0))
154- then $acc066546691
150+ let $list67576794 = priceList
151+ let $size67576794 = size($list67576794)
152+ let $acc067576794 = nil
153+ if (($size67576794 == 0))
154+ then $acc067576794
155155 else {
156- let $acc166546691 = procedLottery($acc066546691, $list66546691[0])
157- if (($size66546691 == 1))
158- then $acc166546691
156+ let $acc167576794 = procedLottery($acc067576794, $list67576794[0])
157+ if (($size67576794 == 1))
158+ then $acc167576794
159159 else {
160- let $acc266546691 = procedLottery($acc166546691, $list66546691[1])
161- if (($size66546691 == 2))
162- then $acc266546691
160+ let $acc267576794 = procedLottery($acc167576794, $list67576794[1])
161+ if (($size67576794 == 2))
162+ then $acc267576794
163163 else {
164- let $acc366546691 = procedLottery($acc266546691, $list66546691[2])
165- if (($size66546691 == 3))
166- then $acc366546691
164+ let $acc367576794 = procedLottery($acc267576794, $list67576794[2])
165+ if (($size67576794 == 3))
166+ then $acc367576794
167167 else {
168- let $acc466546691 = procedLottery($acc366546691, $list66546691[3])
169- if (($size66546691 == 4))
170- then $acc466546691
168+ let $acc467576794 = procedLottery($acc367576794, $list67576794[3])
169+ if (($size67576794 == 4))
170+ then $acc467576794
171171 else {
172- let $acc566546691 = procedLottery($acc466546691, $list66546691[4])
173- if (($size66546691 == 5))
174- then $acc566546691
172+ let $acc567576794 = procedLottery($acc467576794, $list67576794[4])
173+ if (($size67576794 == 5))
174+ then $acc567576794
175175 else {
176- let $acc666546691 = procedLottery($acc566546691, $list66546691[5])
176+ let $acc667576794 = procedLottery($acc567576794, $list67576794[5])
177177 throw("List size exceed 5")
178178 }
179179 }
200200 if ((actualAmount == 0))
201201 then {
202202 let actualListPrices = {
203- let $list75097559 = priceList
204- let $size75097559 = size($list75097559)
205- let $acc075097559 = token
206- if (($size75097559 == 0))
207- then $acc075097559
203+ let $list76127662 = priceList
204+ let $size76127662 = size($list76127662)
205+ let $acc076127662 = token
206+ if (($size76127662 == 0))
207+ then $acc076127662
208208 else {
209- let $acc175097559 = generateNewListOfPrices($acc075097559, $list75097559[0])
210- if (($size75097559 == 1))
211- then $acc175097559
209+ let $acc176127662 = generateNewListOfPrices($acc076127662, $list76127662[0])
210+ if (($size76127662 == 1))
211+ then $acc176127662
212212 else {
213- let $acc275097559 = generateNewListOfPrices($acc175097559, $list75097559[1])
214- if (($size75097559 == 2))
215- then $acc275097559
213+ let $acc276127662 = generateNewListOfPrices($acc176127662, $list76127662[1])
214+ if (($size76127662 == 2))
215+ then $acc276127662
216216 else {
217- let $acc375097559 = generateNewListOfPrices($acc275097559, $list75097559[2])
218- if (($size75097559 == 3))
219- then $acc375097559
217+ let $acc376127662 = generateNewListOfPrices($acc276127662, $list76127662[2])
218+ if (($size76127662 == 3))
219+ then $acc376127662
220220 else {
221- let $acc475097559 = generateNewListOfPrices($acc375097559, $list75097559[3])
222- if (($size75097559 == 4))
223- then $acc475097559
221+ let $acc476127662 = generateNewListOfPrices($acc376127662, $list76127662[3])
222+ if (($size76127662 == 4))
223+ then $acc476127662
224224 else {
225- let $acc575097559 = generateNewListOfPrices($acc475097559, $list75097559[4])
226- if (($size75097559 == 5))
227- then $acc575097559
225+ let $acc576127662 = generateNewListOfPrices($acc476127662, $list76127662[4])
226+ if (($size76127662 == 5))
227+ then $acc576127662
228228 else {
229- let $acc675097559 = generateNewListOfPrices($acc575097559, $list75097559[5])
229+ let $acc676127662 = generateNewListOfPrices($acc576127662, $list76127662[5])
230230 throw("List size exceed 5")
231231 }
232232 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let lotteryamount = "_amount"
55
66 let lotteryprobability = "_probability"
77
88 let lotteryprobabilitydecimal = "_probability_decimal"
99
1010 let lotteryPrice = "_price"
1111
1212 let lotteryPrices = "_lottery_prices"
1313
1414 let lotteryAssetId = "_lottery_asset_id"
1515
1616 let countOfPrices = "_count_prices"
1717
1818 let lastHashRandomNumber = "last_spin_random_hash"
1919
2020 let lastTokenRandomHash = "last_token_random_hash"
2121
2222 let dAppAddres = "3BKFQLeo5ExZ5Y1pt9Ftzsno7aRwzD96zoYVHP3tcLgV"
2323
2424 func randomizer (inv) = {
2525 let lastPlay = match getBinary(this, lastHashRandomNumber) {
2626 case s: ByteVector =>
2727 s
2828 case _: Unit =>
2929 base58'2ee4oFDYriWJ9EMeR'
3030 case _ =>
3131 throw("Match error")
3232 }
3333 let rand = (((((lastPlay + inv.transactionId) + inv.callerPublicKey) + lastBlock.generationSignature) + toBytes(lastBlock.timestamp)) + toBytes(lastBlock.height))
3434 sha256(rand)
3535 }
3636
3737
3838 func generatorRandomHash (inv) = {
3939 let lastHashForToken = match getBinary(this, lastTokenRandomHash) {
4040 case s: ByteVector =>
4141 s
4242 case _: Unit =>
4343 base58'4dD7osCQzvuXJdTiGfKvTwnKT'
4444 case _ =>
4545 throw("Match error")
4646 }
4747 let rand = (((((lastHashForToken + inv.transactionId) + inv.callerPublicKey) + lastBlock.generationSignature) + toBytes(lastBlock.timestamp)) + toBytes(lastBlock.height))
4848 sha256(rand)
4949 }
5050
5151
5252 func getSizePriceArray () = {
5353 let tempPrices = getStringValue(this, lotteryPrices)
5454 let trimPrices = take(tempPrices, (size(tempPrices) - 1))
5555 let pricesArray = split(trimPrices, ",")
5656 let listSize = size(pricesArray)
5757 listSize
5858 }
5959
6060
6161 func getPriceArray () = {
6262 let tempPrices = getStringValue(this, lotteryPrices)
6363 let trimPrices = take(tempPrices, (size(tempPrices) - 1))
6464 let newArray = split(trimPrices, ",")
6565 newArray
6666 }
6767
6868
6969 func generateNewListOfPrices (token,val) = {
7070 let indexOfComma = indexOf(token, ",")
7171 if ((indexOfComma == unit))
7272 then (val + ",")
7373 else ((token + val) + ",")
7474 }
7575
7676
7777 func procedLottery (win,token) = {
7878 let tokenProbability = getIntegerValue(this, (token + lotteryprobability))
7979 let tokenProbabilityDecimal = getIntegerValue(this, (token + lotteryprobabilitydecimal))
8080 let probabilityValue = (tokenProbabilityDecimal * 1000)
8181 let hash = (tokenProbabilityDecimal % probabilityValue)
8282 let sizeOfWin = size(win)
8383 if ((sizeOfWin == 1))
8484 then {
8585 let randomNumber = win[0]
8686 if ((probabilityValue > hash))
8787 then {
8888 let newList = token :: win
8989 newList
9090 }
9191 else win
9292 }
9393 else win
9494 }
9595
9696
9797 @Callable(i)
9898 func updateprobability (probability,amount,poolprice,probDecimal,assetId) = {
9999 let token = toBase64String(generatorRandomHash(i))
100100 let paymentIsDefined = if (!(isDefined(i.payment)))
101101 then false
102102 else true
103103 let lotteryAssetTN = if ((assetId == ""))
104104 then true
105105 else false
106106 if ((paymentIsDefined == true))
107107 then throw(toString(lotteryAssetTN))
108108 else {
109109 let tnBalance = if (lotteryAssetTN)
110110 then wavesBalance(this)
111111 else assetBalance(this, fromBase64String(assetId))
112112 let totalRequiredAmount = (amount * poolprice)
113113 if ((totalRequiredAmount > tnBalance))
114114 then throw("Not enough Asset Amount")
115115 else {
116116 let tempValue = match getString(this, lotteryPrices) {
117117 case a: String =>
118118 a
119119 case _: Unit =>
120120 ""
121121 case _ =>
122122 throw("Match error")
123123 }
124124 let containKey = indexOf(tempValue, token)
125125 let storedTokensValues = match containKey {
126126 case _: Unit =>
127127 ((tempValue + token) + ",")
128128 case x: Int =>
129129 throw("Token is duplicated")
130130 case _ =>
131131 throw("Match error")
132132 }
133+ let tempVal = getSizePriceArray()
133134 let countTokens = getSizePriceArray()
134- let updateLotteryPool = WriteSet([DataEntry((token + lotteryamount), amount), DataEntry((token + lotteryprobability), probability), DataEntry((token + lotteryPrice), poolprice), DataEntry((token + lotteryPrices), storedTokensValues), DataEntry((token + countOfPrices), 4), DataEntry((token + lotteryprobabilitydecimal), probDecimal), DataEntry((token + lotteryAssetId), assetId), DataEntry((token + lastTokenRandomHash), token)])
135- ScriptResult(updateLotteryPool, TransferSet(nil))
135+ throw(toString(countTokens))
136136 }
137137 }
138138 }
139139
140140
141141
142142 @Callable(i)
143143 func startlotto () = {
144144 let currentKey = toBase58String(i.caller.bytes)
145145 let randhash = randomizer(i)
146146 let sizeTempPrice = getSizePriceArray()
147147 let priceList = getPriceArray()
148148 let randNumber = toInt(randhash)
149149 let winningToken = {
150- let $list66546691 = priceList
151- let $size66546691 = size($list66546691)
152- let $acc066546691 = nil
153- if (($size66546691 == 0))
154- then $acc066546691
150+ let $list67576794 = priceList
151+ let $size67576794 = size($list67576794)
152+ let $acc067576794 = nil
153+ if (($size67576794 == 0))
154+ then $acc067576794
155155 else {
156- let $acc166546691 = procedLottery($acc066546691, $list66546691[0])
157- if (($size66546691 == 1))
158- then $acc166546691
156+ let $acc167576794 = procedLottery($acc067576794, $list67576794[0])
157+ if (($size67576794 == 1))
158+ then $acc167576794
159159 else {
160- let $acc266546691 = procedLottery($acc166546691, $list66546691[1])
161- if (($size66546691 == 2))
162- then $acc266546691
160+ let $acc267576794 = procedLottery($acc167576794, $list67576794[1])
161+ if (($size67576794 == 2))
162+ then $acc267576794
163163 else {
164- let $acc366546691 = procedLottery($acc266546691, $list66546691[2])
165- if (($size66546691 == 3))
166- then $acc366546691
164+ let $acc367576794 = procedLottery($acc267576794, $list67576794[2])
165+ if (($size67576794 == 3))
166+ then $acc367576794
167167 else {
168- let $acc466546691 = procedLottery($acc366546691, $list66546691[3])
169- if (($size66546691 == 4))
170- then $acc466546691
168+ let $acc467576794 = procedLottery($acc367576794, $list67576794[3])
169+ if (($size67576794 == 4))
170+ then $acc467576794
171171 else {
172- let $acc566546691 = procedLottery($acc466546691, $list66546691[4])
173- if (($size66546691 == 5))
174- then $acc566546691
172+ let $acc567576794 = procedLottery($acc467576794, $list67576794[4])
173+ if (($size67576794 == 5))
174+ then $acc567576794
175175 else {
176- let $acc666546691 = procedLottery($acc566546691, $list66546691[5])
176+ let $acc667576794 = procedLottery($acc567576794, $list67576794[5])
177177 throw("List size exceed 5")
178178 }
179179 }
180180 }
181181 }
182182 }
183183 }
184184 }
185185 let sizeOfWinPrices = size(winningToken)
186186 if ((sizeOfWinPrices == 1))
187187 then {
188188 let writeSets = WriteSet(nil)
189189 ScriptResult(writeSets, TransferSet(nil))
190190 }
191191 else {
192192 let token = winningToken[1]
193193 let currentAmount = getIntegerValue(this, (token + lotteryamount))
194194 if ((currentAmount == 0))
195195 then throw("Amount exceeded")
196196 else {
197197 let actualAmount = (currentAmount - 1)
198198 let tokenPrice = getIntegerValue(this, (token + lotteryPrice))
199199 let tokenAssetId = getStringValue(this, (token + lotteryAssetId))
200200 if ((actualAmount == 0))
201201 then {
202202 let actualListPrices = {
203- let $list75097559 = priceList
204- let $size75097559 = size($list75097559)
205- let $acc075097559 = token
206- if (($size75097559 == 0))
207- then $acc075097559
203+ let $list76127662 = priceList
204+ let $size76127662 = size($list76127662)
205+ let $acc076127662 = token
206+ if (($size76127662 == 0))
207+ then $acc076127662
208208 else {
209- let $acc175097559 = generateNewListOfPrices($acc075097559, $list75097559[0])
210- if (($size75097559 == 1))
211- then $acc175097559
209+ let $acc176127662 = generateNewListOfPrices($acc076127662, $list76127662[0])
210+ if (($size76127662 == 1))
211+ then $acc176127662
212212 else {
213- let $acc275097559 = generateNewListOfPrices($acc175097559, $list75097559[1])
214- if (($size75097559 == 2))
215- then $acc275097559
213+ let $acc276127662 = generateNewListOfPrices($acc176127662, $list76127662[1])
214+ if (($size76127662 == 2))
215+ then $acc276127662
216216 else {
217- let $acc375097559 = generateNewListOfPrices($acc275097559, $list75097559[2])
218- if (($size75097559 == 3))
219- then $acc375097559
217+ let $acc376127662 = generateNewListOfPrices($acc276127662, $list76127662[2])
218+ if (($size76127662 == 3))
219+ then $acc376127662
220220 else {
221- let $acc475097559 = generateNewListOfPrices($acc375097559, $list75097559[3])
222- if (($size75097559 == 4))
223- then $acc475097559
221+ let $acc476127662 = generateNewListOfPrices($acc376127662, $list76127662[3])
222+ if (($size76127662 == 4))
223+ then $acc476127662
224224 else {
225- let $acc575097559 = generateNewListOfPrices($acc475097559, $list75097559[4])
226- if (($size75097559 == 5))
227- then $acc575097559
225+ let $acc576127662 = generateNewListOfPrices($acc476127662, $list76127662[4])
226+ if (($size76127662 == 5))
227+ then $acc576127662
228228 else {
229- let $acc675097559 = generateNewListOfPrices($acc575097559, $list75097559[5])
229+ let $acc676127662 = generateNewListOfPrices($acc576127662, $list76127662[5])
230230 throw("List size exceed 5")
231231 }
232232 }
233233 }
234234 }
235235 }
236236 }
237237 }
238238 let writeSets = WriteSet([DataEntry((currentKey + "_winning_token_"), token), DataEntry((currentKey + "_wininning_address_"), currentKey), DataEntry((token + lotteryamount), actualAmount), DataEntry((token + lotteryPrices), actualListPrices), DataEntry(lastHashRandomNumber, randNumber)])
239239 if ((tokenAssetId == ""))
240240 then {
241241 let winTransfer = TransferSet([ScriptTransfer(i.caller, tokenPrice, unit)])
242242 ScriptResult(writeSets, winTransfer)
243243 }
244244 else {
245245 let winTransfer = TransferSet([ScriptTransfer(i.caller, tokenPrice, unit)])
246246 ScriptResult(writeSets, winTransfer)
247247 }
248248 }
249249 else {
250250 let writeSets = WriteSet([DataEntry((currentKey + "_winning_token_"), token), DataEntry((currentKey + "_wininning_address_"), currentKey), DataEntry((token + lotteryamount), actualAmount), DataEntry(lastHashRandomNumber, randNumber)])
251251 if ((tokenAssetId == ""))
252252 then {
253253 let winTransfer = TransferSet([ScriptTransfer(i.caller, tokenPrice, unit)])
254254 ScriptResult(writeSets, winTransfer)
255255 }
256256 else {
257257 let winTransfer = TransferSet([ScriptTransfer(i.caller, tokenPrice, unit)])
258258 ScriptResult(writeSets, winTransfer)
259259 }
260260 }
261261 }
262262 }
263263 }
264264
265265
266266 @Verifier(tx)
267267 func verify () = match tx {
268268 case _: DataTransaction =>
269269 true
270270 case _: SetScriptTransaction =>
271271 true
272272 case _ =>
273273 sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
274274 }
275275

github/deemru/w8io/026f985 
75.95 ms